diff options
author | Treehugger Robot <treehugger-gerrit@google.com> | 2016-11-30 21:00:55 +0000 |
---|---|---|
committer | Gerrit Code Review <noreply-gerritcodereview@google.com> | 2016-11-30 21:00:56 +0000 |
commit | 273adb5257984fb4dd06753329bbd0d4ddc48ebe (patch) | |
tree | 1cbb41ada5dbf3e57c3d8285e58d6e1ecb07296f | |
parent | 1204e3806f5d61a36c647de051a65fcfdf6ddc07 (diff) | |
parent | 622f511f2ff29bb5a115d90a42b2870e75db68f9 (diff) |
Merge "App_process: Clean up sanitized binaries"
-rw-r--r-- | cmds/app_process/Android.mk | 80 |
1 files changed, 45 insertions, 35 deletions
diff --git a/cmds/app_process/Android.mk b/cmds/app_process/Android.mk index e18de8e68620..f4314fb9d6e3 100644 --- a/cmds/app_process/Android.mk +++ b/cmds/app_process/Android.mk @@ -1,38 +1,58 @@ LOCAL_PATH:= $(call my-dir) +app_process_common_shared_libs := \ + libandroid_runtime \ + libbinder \ + libcutils \ + libdl \ + liblog \ + libnativeloader \ + libutils \ + # 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 := \ +app_process_common_shared_libs += \ libwilhelm \ +app_process_common_static_libs := \ + libsigchain \ + +app_process_src_files := \ + app_main.cpp \ + +app_process_cflags := \ + -Wall -Werror -Wunused -Wunreachable-code + +app_process_ldflags_32 := \ + -Wl,--version-script,art/sigchainlib/version-script32.txt -Wl,--export-dynamic +app_process_ldflags_64 := \ + -Wl,--version-script,art/sigchainlib/version-script64.txt -Wl,--export-dynamic + include $(CLEAR_VARS) -LOCAL_SRC_FILES:= \ - app_main.cpp +LOCAL_SRC_FILES:= $(app_process_src_files) -LOCAL_LDFLAGS_32 := -Wl,--version-script,art/sigchainlib/version-script32.txt -Wl,--export-dynamic -LOCAL_LDFLAGS_64 := -Wl,--version-script,art/sigchainlib/version-script64.txt -Wl,--export-dynamic +LOCAL_LDFLAGS_32 := $(app_process_ldflags_32) +LOCAL_LDFLAGS_64 := $(app_process_ldflags_64) -LOCAL_SHARED_LIBRARIES := \ - libdl \ - libcutils \ - libutils \ - liblog \ - libbinder \ - libnativeloader \ - libandroid_runtime \ - $(app_process_common_shared_libs) \ +LOCAL_SHARED_LIBRARIES := $(app_process_common_shared_libs) -LOCAL_WHOLE_STATIC_LIBRARIES := libsigchain +LOCAL_WHOLE_STATIC_LIBRARIES := $(app_process_common_static_libs) 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 +LOCAL_CFLAGS += $(app_process_cflags) + +# In SANITIZE_LITE mode, the main app_process is not sanitized - special +# binaries below do that. +ifeq ($(SANITIZE_LITE),true) +LOCAL_SANITIZE := never +endif include $(BUILD_EXECUTABLE) @@ -41,38 +61,28 @@ include $(BUILD_EXECUTABLE) 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) +# Built when SANITIZE_LITE is enabled. +ifeq ($(SANITIZE_LITE),true) include $(CLEAR_VARS) -LOCAL_SRC_FILES:= \ - app_main.cpp +LOCAL_SRC_FILES:= $(app_process_src_files) -LOCAL_SHARED_LIBRARIES := \ - libcutils \ - libutils \ - liblog \ - libbinder \ - libandroid_runtime \ - $(app_process_common_shared_libs) \ +LOCAL_LDFLAGS_32 := $(app_process_ldflags_32) +LOCAL_LDFLAGS_64 := $(app_process_ldflags_64) -LOCAL_WHOLE_STATIC_LIBRARIES := libsigchain +LOCAL_SHARED_LIBRARIES := $(app_process_common_shared_libs) -LOCAL_LDFLAGS := -ldl -LOCAL_LDFLAGS_32 := -Wl,--version-script,art/sigchainlib/version-script32.txt -Wl,--export-dynamic -LOCAL_LDFLAGS_64 := -Wl,--version-script,art/sigchainlib/version-script64.txt -Wl,--export-dynamic +LOCAL_WHOLE_STATIC_LIBRARIES := $(app_process_common_static_libs) LOCAL_MODULE := app_process__asan LOCAL_MULTILIB := both LOCAL_MODULE_STEM_32 := app_process32 LOCAL_MODULE_STEM_64 := app_process64 - -LOCAL_SANITIZE := address LOCAL_MODULE_PATH := $(TARGET_OUT_EXECUTABLES)/asan -LOCAL_CFLAGS += -Wall -Werror -Wunused -Wunreachable-code +LOCAL_CFLAGS += $(app_process_cflags) include $(BUILD_EXECUTABLE) -endif # ifeq($(TARGET_ARCH),arm) +endif # SANITIZE_LITE |