1e0e9e9462c8035c1883a0bd16ee62d861c77e550Mike LockwoodLOCAL_PATH:= $(call my-dir) 22764fce3a1119599cd231545b16e6a16286e482dColin Cross 3ad81791641071e8daab0d27e49731975c5efcba6Christopher Ferris# This is a list of libraries that need to be included in order to avoid 4ad81791641071e8daab0d27e49731975c5efcba6Christopher Ferris# bad apps. This prevents a library from having a mismatch when resolving 5ad81791641071e8daab0d27e49731975c5efcba6Christopher Ferris# new/delete from an app shared library. 6ad81791641071e8daab0d27e49731975c5efcba6Christopher Ferris# See b/21032018 for more details. 7ad81791641071e8daab0d27e49731975c5efcba6Christopher Ferrisapp_process_common_shared_libs := \ 8ad81791641071e8daab0d27e49731975c5efcba6Christopher Ferris libwilhelm \ 9ad81791641071e8daab0d27e49731975c5efcba6Christopher Ferris 10e0e9e9462c8035c1883a0bd16ee62d861c77e550Mike Lockwoodinclude $(CLEAR_VARS) 11e0e9e9462c8035c1883a0bd16ee62d861c77e550Mike Lockwood 12e0e9e9462c8035c1883a0bd16ee62d861c77e550Mike LockwoodLOCAL_SRC_FILES:= \ 13cfedceb8c180a2e176154d461659e0c3569dc931Andreas Gampe app_main.cpp 1496e0cfa721925550b1cc39cdfd6084a878e6ffe2Dmitriy Ivanov 1596e0cfa721925550b1cc39cdfd6084a878e6ffe2Dmitriy IvanovLOCAL_LDFLAGS := -Wl,--version-script,art/sigchainlib/version-script.txt -Wl,--export-dynamic 16e0e9e9462c8035c1883a0bd16ee62d861c77e550Mike Lockwood 17e0e9e9462c8035c1883a0bd16ee62d861c77e550Mike LockwoodLOCAL_SHARED_LIBRARIES := \ 18cfedceb8c180a2e176154d461659e0c3569dc931Andreas Gampe libdl \ 19cfedceb8c180a2e176154d461659e0c3569dc931Andreas Gampe libcutils \ 20cfedceb8c180a2e176154d461659e0c3569dc931Andreas Gampe libutils \ 21cfedceb8c180a2e176154d461659e0c3569dc931Andreas Gampe liblog \ 22cfedceb8c180a2e176154d461659e0c3569dc931Andreas Gampe libbinder \ 23b0824979be2653ba300382b52c1b1236fd44f0deDimitry Ivanov libnativeloader \ 24ad81791641071e8daab0d27e49731975c5efcba6Christopher Ferris libandroid_runtime \ 25ad81791641071e8daab0d27e49731975c5efcba6Christopher Ferris $(app_process_common_shared_libs) \ 26e0e9e9462c8035c1883a0bd16ee62d861c77e550Mike Lockwood 275ba317cee071b718a163ab9acf2b6b4f6a337b39Dmitriy IvanovLOCAL_WHOLE_STATIC_LIBRARIES := libsigchain 285ba317cee071b718a163ab9acf2b6b4f6a337b39Dmitriy Ivanov 29e0e9e9462c8035c1883a0bd16ee62d861c77e550Mike LockwoodLOCAL_MODULE:= app_process 30f130f0aaea58358dafbe83ccec2b5163b5bed1fbColin CrossLOCAL_MULTILIB := both 31559484ed6a3ed98980579e35d12543be2835aa35Yongqin LiuLOCAL_MODULE_STEM_32 := app_process32 32f130f0aaea58358dafbe83ccec2b5163b5bed1fbColin CrossLOCAL_MODULE_STEM_64 := app_process64 33cfedceb8c180a2e176154d461659e0c3569dc931Andreas Gampe 34cfedceb8c180a2e176154d461659e0c3569dc931Andreas GampeLOCAL_CFLAGS += -Wall -Werror -Wunused -Wunreachable-code 35cfedceb8c180a2e176154d461659e0c3569dc931Andreas Gampe 362764fce3a1119599cd231545b16e6a16286e482dColin Crossinclude $(BUILD_EXECUTABLE) 372764fce3a1119599cd231545b16e6a16286e482dColin Cross 38559484ed6a3ed98980579e35d12543be2835aa35Yongqin Liu# Create a symlink from app_process to app_process32 or 64 39559484ed6a3ed98980579e35d12543be2835aa35Yongqin Liu# depending on the target configuration. 40559484ed6a3ed98980579e35d12543be2835aa35Yongqin Liuinclude $(BUILD_SYSTEM)/executable_prefer_symlink.mk 41559484ed6a3ed98980579e35d12543be2835aa35Yongqin Liu 42e0e9e9462c8035c1883a0bd16ee62d861c77e550Mike Lockwood# Build a variant of app_process binary linked with ASan runtime. 43e0e9e9462c8035c1883a0bd16ee62d861c77e550Mike Lockwood# ARM-only at the moment. 44e0e9e9462c8035c1883a0bd16ee62d861c77e550Mike Lockwoodifeq ($(TARGET_ARCH),arm) 45e0e9e9462c8035c1883a0bd16ee62d861c77e550Mike Lockwood 46e0e9e9462c8035c1883a0bd16ee62d861c77e550Mike Lockwoodinclude $(CLEAR_VARS) 47e0e9e9462c8035c1883a0bd16ee62d861c77e550Mike Lockwood 48e0e9e9462c8035c1883a0bd16ee62d861c77e550Mike LockwoodLOCAL_SRC_FILES:= \ 49cfedceb8c180a2e176154d461659e0c3569dc931Andreas Gampe app_main.cpp 50e0e9e9462c8035c1883a0bd16ee62d861c77e550Mike Lockwood 51e0e9e9462c8035c1883a0bd16ee62d861c77e550Mike LockwoodLOCAL_SHARED_LIBRARIES := \ 52cfedceb8c180a2e176154d461659e0c3569dc931Andreas Gampe libcutils \ 53cfedceb8c180a2e176154d461659e0c3569dc931Andreas Gampe libutils \ 54cfedceb8c180a2e176154d461659e0c3569dc931Andreas Gampe liblog \ 55cfedceb8c180a2e176154d461659e0c3569dc931Andreas Gampe libbinder \ 56ad81791641071e8daab0d27e49731975c5efcba6Christopher Ferris libandroid_runtime \ 57ad81791641071e8daab0d27e49731975c5efcba6Christopher Ferris $(app_process_common_shared_libs) \ 58e0e9e9462c8035c1883a0bd16ee62d861c77e550Mike Lockwood 595ba317cee071b718a163ab9acf2b6b4f6a337b39Dmitriy IvanovLOCAL_WHOLE_STATIC_LIBRARIES := libsigchain 605ba317cee071b718a163ab9acf2b6b4f6a337b39Dmitriy Ivanov 6196e0cfa721925550b1cc39cdfd6084a878e6ffe2Dmitriy IvanovLOCAL_LDFLAGS := -ldl -Wl,--version-script,art/sigchainlib/version-script.txt -Wl,--export-dynamic 625ba317cee071b718a163ab9acf2b6b4f6a337b39Dmitriy IvanovLOCAL_CPPFLAGS := -std=c++11 6396e0cfa721925550b1cc39cdfd6084a878e6ffe2Dmitriy Ivanov 64e0e9e9462c8035c1883a0bd16ee62d861c77e550Mike LockwoodLOCAL_MODULE := app_process__asan 65e740b17d2400ed0db17d1f7fce4f052bbbf808abEvgenii StepanovLOCAL_MULTILIB := both 66e740b17d2400ed0db17d1f7fce4f052bbbf808abEvgenii StepanovLOCAL_MODULE_STEM_32 := app_process32 67e740b17d2400ed0db17d1f7fce4f052bbbf808abEvgenii StepanovLOCAL_MODULE_STEM_64 := app_process64 68e740b17d2400ed0db17d1f7fce4f052bbbf808abEvgenii Stepanov 69f98dae5675b62275af4c652679dc952476148681Dan AlbertLOCAL_SANITIZE := address 70b9f6b0eec3b1d331e0be352409659292cc0f0b06Dan AlbertLOCAL_CLANG := true 71e740b17d2400ed0db17d1f7fce4f052bbbf808abEvgenii StepanovLOCAL_MODULE_PATH := $(TARGET_OUT_EXECUTABLES)/asan 72e0e9e9462c8035c1883a0bd16ee62d861c77e550Mike Lockwood 73cfedceb8c180a2e176154d461659e0c3569dc931Andreas GampeLOCAL_CFLAGS += -Wall -Werror -Wunused -Wunreachable-code 74cfedceb8c180a2e176154d461659e0c3569dc931Andreas Gampe 75e0e9e9462c8035c1883a0bd16ee62d861c77e550Mike Lockwoodinclude $(BUILD_EXECUTABLE) 76e0e9e9462c8035c1883a0bd16ee62d861c77e550Mike Lockwood 77e0e9e9462c8035c1883a0bd16ee62d861c77e550Mike Lockwoodendif # ifeq($(TARGET_ARCH),arm) 78