diff --git a/core/main.mk b/core/main.mk index 96b21320f..712b2c574 100644 --- a/core/main.mk +++ b/core/main.mk @@ -1041,6 +1041,14 @@ define resolve-product-relative-paths $(foreach p,$(1),$(call append-path,$(PRODUCT_OUT),$(p)$(2))))))) endef +# Returns modules included automatically as a result of certain BoardConfig +# variables being set. +define auto-included-modules + $(if $(BOARD_VNDK_VERSION),vndk_package) \ + $(if $(DEVICE_MANIFEST_FILE),device_manifest.xml) \ + +endef + # Lists most of the files a particular product installs, including: # - PRODUCT_PACKAGES, and their LOCAL_REQUIRED_MODULES # - PRODUCT_COPY_FILES @@ -1064,7 +1072,7 @@ define product-installed-files $(if $(filter debug,$(tags_to_install)),$(PRODUCTS.$(_mk).PRODUCT_PACKAGES_DEBUG)) \ $(if $(filter tests,$(tags_to_install)),$(PRODUCTS.$(_mk).PRODUCT_PACKAGES_TESTS)) \ $(if $(filter asan,$(tags_to_install)),$(PRODUCTS.$(_mk).PRODUCT_PACKAGES_DEBUG_ASAN)) \ - $(if $(BOARD_VNDK_VERSION),vndk_package) \ + $(call auto-included-modules) \ ) \ $(eval ### Filter out the overridden packages and executables before doing expansion) \ $(eval _pif_overrides := $(call module-overrides,$(_pif_modules))) \ @@ -1123,6 +1131,9 @@ ifdef FULL_BUILD static_whitelist_patterns := $(TARGET_OUT_FAKE)/% $(HOST_OUT)/% $(SOONG_OUT_DIR)/ndk/% # RROs become REQUIRED by the source module, but are always placed on the vendor partition. static_whitelist_patterns += %__auto_generated_rro.apk + # Auto-included targets are not considered + static_whitelist_patterns += $(call module-installed-files,$(call auto-included-modules)) + ifeq (true,$(BOARD_USES_SYSTEM_OTHER_ODEX)) # Allow system_other odex space optimization. static_whitelist_patterns += \ diff --git a/target/product/base_vendor.mk b/target/product/base_vendor.mk index 49436e547..b9e3e9768 100644 --- a/target/product/base_vendor.mk +++ b/target/product/base_vendor.mk @@ -55,5 +55,4 @@ PRODUCT_PACKAGES += \ # VINTF data for vendor image PRODUCT_PACKAGES += \ - device_manifest.xml \ device_compatibility_matrix.xml \ diff --git a/target/product/generic.mk b/target/product/generic.mk index cc856f4f7..6fe481876 100644 --- a/target/product/generic.mk +++ b/target/product/generic.mk @@ -25,7 +25,4 @@ PRODUCT_BRAND := generic PRODUCT_DEVICE := generic PRODUCT_NAME := generic -_whitelist := \ - device_manifest.xml \ - -$(call enforce-product-packages-exist,$(_whitelist)) +$(call enforce-product-packages-exist,)