| LOCAL_PATH:= $(call my-dir) |
| |
| # This is a list of libraries that need to be included in order to avoid |
| # bad apps. This prevents a library from having a mismatch when resolving |
| # new/delete from an app shared library. |
| # See b/21032018 for more details. |
| app_process_common_shared_libs := \ |
| libwilhelm \ |
| |
| include $(CLEAR_VARS) |
| |
| LOCAL_SRC_FILES:= \ |
| app_main.cpp |
| |
| LOCAL_LDFLAGS := -Wl,--version-script,art/sigchainlib/version-script.txt -Wl,--export-dynamic |
| |
| LOCAL_SHARED_LIBRARIES := \ |
| libdl \ |
| libcutils \ |
| libutils \ |
| liblog \ |
| libbinder \ |
| libnativeloader \ |
| libandroid_runtime \ |
| $(app_process_common_shared_libs) \ |
| |
| LOCAL_WHOLE_STATIC_LIBRARIES := libsigchain |
| |
| LOCAL_MODULE:= app_process |
| LOCAL_MULTILIB := both |
| LOCAL_MODULE_STEM_32 := app_process32 |
| LOCAL_MODULE_STEM_64 := app_process64 |
| |
| LOCAL_CFLAGS += -Wall -Werror -Wunused -Wunreachable-code |
| |
| include $(BUILD_EXECUTABLE) |
| |
| # Create a symlink from app_process to app_process32 or 64 |
| # depending on the target configuration. |
| include $(BUILD_SYSTEM)/executable_prefer_symlink.mk |
| |
| # Build a variant of app_process binary linked with ASan runtime. |
| # ARM-only at the moment. |
| ifeq ($(TARGET_ARCH),arm) |
| |
| include $(CLEAR_VARS) |
| |
| LOCAL_SRC_FILES:= \ |
| app_main.cpp |
| |
| LOCAL_SHARED_LIBRARIES := \ |
| libcutils \ |
| libutils \ |
| liblog \ |
| libbinder \ |
| libnativeloader \ |
| libandroid_runtime \ |
| $(app_process_common_shared_libs) \ |
| |
| LOCAL_WHOLE_STATIC_LIBRARIES := libsigchain |
| |
| LOCAL_LDFLAGS := -ldl -Wl,--version-script,art/sigchainlib/version-script.txt -Wl,--export-dynamic |
| LOCAL_CPPFLAGS := -std=c++11 |
| |
| LOCAL_MODULE := app_process__asan |
| LOCAL_MULTILIB := both |
| LOCAL_MODULE_STEM_32 := app_process32 |
| LOCAL_MODULE_STEM_64 := app_process64 |
| |
| LOCAL_SANITIZE := address |
| LOCAL_CLANG := true |
| LOCAL_MODULE_PATH := $(TARGET_OUT_EXECUTABLES)/asan |
| |
| LOCAL_CFLAGS += -Wall -Werror -Wunused -Wunreachable-code |
| |
| include $(BUILD_EXECUTABLE) |
| |
| endif # ifeq($(TARGET_ARCH),arm) |