blob: c5564b1eca0741a9046ef6d2773cfac345cdee8d [file] [log] [blame]
Chih-Hung Hsieh289e8d62018-05-24 15:13:19 -07001#############################################################
2## Set up my_pack_module_relocations
3## Input variables:
4## DISABLE_RELOCATION_PACKER,
5## LOCAL_PACK_MODULE_RELOCATIONS*,
6## *TARGET_PACK_MODULE_RELOCATIONS,
7## LOCAL_MODULE_CLASS, HOST_OS
Colin Cross979f9f92018-06-25 12:33:35 -07008## LOCAL_IS_HOST_MODULE
Chih-Hung Hsieh289e8d62018-05-24 15:13:19 -07009## Output variables:
10## my_pack_module_relocations, if false skip relocation_packer
11#############################################################
12
13my_pack_module_relocations := false
14ifneq ($(DISABLE_RELOCATION_PACKER),true)
15 my_pack_module_relocations := $(firstword \
16 $(LOCAL_PACK_MODULE_RELOCATIONS_$($(my_prefix)$(LOCAL_2ND_ARCH_VAR_PREFIX)ARCH)) \
17 $(LOCAL_PACK_MODULE_RELOCATIONS))
18endif
19
20ifeq ($(my_pack_module_relocations),)
21 my_pack_module_relocations := $($(LOCAL_2ND_ARCH_VAR_PREFIX)TARGET_PACK_MODULE_RELOCATIONS)
22endif
23
24# Do not pack relocations for executables. Because packing results in
25# non-zero p_vaddr which causes kernel to load executables to lower
26# address (starting at 0x8000) http://b/20665974
Colin Cross979f9f92018-06-25 12:33:35 -070027ifeq ($(filter SHARED_LIBRARIES,$(LOCAL_MODULE_CLASS)),)
Chih-Hung Hsieh289e8d62018-05-24 15:13:19 -070028 my_pack_module_relocations := false
29endif
30
Colin Cross979f9f92018-06-25 12:33:35 -070031ifdef LOCAL_IS_HOST_MODULE
32 # Do not pack relocations on host modules
Chih-Hung Hsieh289e8d62018-05-24 15:13:19 -070033 my_pack_module_relocations := false
34endif