Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit b0b8814c authored by Ivan Lozano's avatar Ivan Lozano Committed by android-build-merger
Browse files

Merge "Add support for AArch64 XOM binaries." am: 53ef5006

am: d8857830

Change-Id: I3706356e717f65eca51a8a2baf733f3307feedbd
parents 4558578f d8857830
Loading
Loading
Loading
Loading
+24 −0
Original line number Diff line number Diff line
@@ -73,6 +73,30 @@ else
  my_native_coverage := false
endif

ifeq ($(strip $(ENABLE_XOM)),true)
  ifndef LOCAL_IS_HOST_MODULE
    my_xom := true
    # Disable XOM in excluded paths.
    combined_xom_exclude_paths := $(XOM_EXCLUDE_PATHS) \
                                  $(PRODUCT_XOM_EXCLUDE_PATHS)
    ifneq ($(strip $(foreach dir,$(subst $(comma),$(space),$(combined_xom_exclude_paths)),\
           $(filter $(dir)%,$(LOCAL_PATH)))),)
      my_xom := false
    endif

    # Allow LOCAL_XOM to override the above
    ifdef LOCAL_XOM
      my_xom := $(LOCAL_XOM)
    endif

    ifeq ($(strip $(my_xom)),true)
      ifeq (arm64,$(TARGET_$(LOCAL_2ND_ARCH_VAR_PREFIX)ARCH))
        my_ldflags += -Wl,-execute-only
      endif
    endif
  endif
endif

my_allow_undefined_symbols := $(strip $(LOCAL_ALLOW_UNDEFINED_SYMBOLS))
ifdef SANITIZE_HOST
ifdef LOCAL_IS_HOST_MODULE
+1 −0
Original line number Diff line number Diff line
@@ -302,6 +302,7 @@ LOCAL_VTS_INCLUDES:=
LOCAL_VTS_MODE:=
LOCAL_WARNINGS_ENABLE:=
LOCAL_WHOLE_STATIC_LIBRARIES:=
LOCAL_XOM:=
LOCAL_YACCFLAGS:=
# TODO: deprecate, it does nothing
OVERRIDE_BUILT_MODULE_PATH:=
+1 −0
Original line number Diff line number Diff line
@@ -212,6 +212,7 @@ _product_var_list := \
    PRODUCT_USE_DYNAMIC_PARTITIONS \
    PRODUCT_RETROFIT_DYNAMIC_PARTITIONS \
    PRODUCT_OTA_ENFORCE_VINTF_KERNEL_REQUIREMENTS \
    PRODUCT_XOM_EXCLUDE_PATHS \

define dump-product
$(info ==== $(1) ====)\
+4 −0
Original line number Diff line number Diff line
@@ -501,6 +501,10 @@ PRODUCT_CFI_EXCLUDE_PATHS := \
PRODUCT_CFI_INCLUDE_PATHS := \
    $(strip $(PRODUCTS.$(INTERNAL_PRODUCT).PRODUCT_CFI_INCLUDE_PATHS))

# Whether any paths are excluded from being set XOM when ENABLE_XOM=true
PRODUCT_XOM_EXCLUDE_PATHS := \
    $(strip $(PRODUCTS.$(INTERNAL_PRODUCT).PRODUCT_XOM_EXCLUDE_PATHS))

# which Soong namespaces to export to Make
PRODUCT_SOONG_NAMESPACES := \
    $(strip $(PRODUCTS.$(INTERNAL_PRODUCT).PRODUCT_SOONG_NAMESPACES))
+2 −0
Original line number Diff line number Diff line
@@ -82,6 +82,8 @@ $(call add_json_bool, Safestack, $(filter true,$(USE_SAF
$(call add_json_bool, EnableCFI,                         $(call invert_bool,$(filter false,$(ENABLE_CFI))))
$(call add_json_list, CFIExcludePaths,                   $(CFI_EXCLUDE_PATHS) $(PRODUCT_CFI_EXCLUDE_PATHS))
$(call add_json_list, CFIIncludePaths,                   $(CFI_INCLUDE_PATHS) $(PRODUCT_CFI_INCLUDE_PATHS))
$(call add_json_bool, EnableXOM,                         $(filter true,$(ENABLE_XOM)))
$(call add_json_list, XOMExcludePaths,                   $(XOM_EXCLUDE_PATHS) $(PRODUCT_XOM_EXCLUDE_PATHS))
$(call add_json_list, IntegerOverflowExcludePaths,       $(INTEGER_OVERFLOW_EXCLUDE_PATHS) $(PRODUCT_INTEGER_OVERFLOW_EXCLUDE_PATHS))

$(call add_json_bool, ClangTidy,                         $(filter 1 true,$(WITH_TIDY)))