From 595d0dbd5bbf18107ee2f18c06b033e3aef9374c Mon Sep 17 00:00:00 2001 From: Tim Murray Date: Wed, 3 Sep 2014 15:01:46 -0700 Subject: [PATCH] Add LOCAL_NO_FPIE. Not all executables should be built with -pie. bug 15814177 Change-Id: I402e8a531866b507ee80a0bf677f9f3551ca7693 --- core/clear_vars.mk | 1 + core/definitions.mk | 1 - core/host_executable.mk | 4 ++++ 3 files changed, 5 insertions(+), 1 deletion(-) diff --git a/core/clear_vars.mk b/core/clear_vars.mk index 93ec226d2..be73c0dc0 100644 --- a/core/clear_vars.mk +++ b/core/clear_vars.mk @@ -151,6 +151,7 @@ LOCAL_MODULE_TARGET_ARCH_WARN:= LOCAL_MODULE_UNSUPPORTED_TARGET_ARCH:= LOCAL_MODULE_UNSUPPORTED_TARGET_ARCH_WARN:= LOCAL_MODULE_HOST_ARCH:= +LOCAL_NO_FPIE := # arch specific variables LOCAL_SRC_FILES_$(TARGET_ARCH):= diff --git a/core/definitions.mk b/core/definitions.mk index 74fa03857..afd033aaf 100644 --- a/core/definitions.mk +++ b/core/definitions.mk @@ -1441,7 +1441,6 @@ $(hide) $(PRIVATE_CXX) \ $($(PRIVATE_2ND_ARCH_VAR_PREFIX)HOST_GLOBAL_LD_DIRS) \ $(if $(PRIVATE_NO_DEFAULT_COMPILER_FLAGS),, \ $(PRIVATE_HOST_GLOBAL_LDFLAGS) \ - $(HOST_FPIE_FLAGS) \ ) \ $(PRIVATE_LDFLAGS) \ -o $@ \ diff --git a/core/host_executable.mk b/core/host_executable.mk index bf3cde1fd..0091f3f73 100644 --- a/core/host_executable.mk +++ b/core/host_executable.mk @@ -13,6 +13,10 @@ endif endif endif +ifeq ($(LOCAL_NO_FPIE),) +LOCAL_LDFLAGS += $(HOST_FPIE_FLAGS) +endif + ifeq ($(my_module_multilib),both) ifeq ($(LOCAL_MODULE_PATH_32)$(LOCAL_MODULE_STEM_32),) $(error $(LOCAL_PATH): LOCAL_MODULE_STEM_32 or LOCAL_MODULE_PATH_32 is required for LOCAL_MULTILIB := both for module $(LOCAL_MODULE))