Optimize: Reduce vendor target build files
Prevent system/% files from being built by BUILDING_SYSTEM_IMAGE
and data/% files from being built by BUILDING_USERDATA_IMAGE
1) Address issue where system/% files were
being built even when
PRODUCT_BUILD_SYSTEM_IMAGE was false.
This change reduces the ninja targets for
aosp_cf_x86_64_phone_vendor-trunk_staging-userdebug
from 140,427 to 57,303
Test:
lunch aosp_cf_x86_64_phone_vendor-trunk_staging-userdebug ; m
2) Resolve issue where data/% files were
being built during "m dist" even if
PRODUCT_BUILD_USERDATA_IMAGE was set to false
Test: Set any module to install at data partition using
LOCAL_MODULE_PATH=$(TARGET_OUT_DATA)/app
lunch aosp_cf_x86_64_phone_vendor-trunk_staging-userdebug ; m dist
Check the contents at out/target/product/vsoc_x86_64 and out/dist
Change-Id: I2a914339231d57598a6f30fc83fd8203d4107a11
diff --git a/core/Makefile b/core/Makefile
index 18ee77d..a25bef6 100644
--- a/core/Makefile
+++ b/core/Makefile
@@ -3416,8 +3416,10 @@
# system image
INSTALLED_FILES_OUTSIDE_IMAGES := $(filter-out $(TARGET_OUT)/%, $(INSTALLED_FILES_OUTSIDE_IMAGES))
+ifdef BUILDING_SYSTEM_IMAGE
INTERNAL_SYSTEMIMAGE_FILES := $(sort $(filter $(TARGET_OUT)/%, \
$(ALL_DEFAULT_INSTALLED_MODULES)))
+endif
# Create symlink /system/vendor to /vendor if necessary.
ifdef BOARD_USES_VENDORIMAGE
@@ -3674,10 +3676,10 @@
# -----------------------------------------------------------------
# data partition image
INSTALLED_FILES_OUTSIDE_IMAGES := $(filter-out $(TARGET_OUT_DATA)/%, $(INSTALLED_FILES_OUTSIDE_IMAGES))
+ifdef BUILDING_USERDATA_IMAGE
INTERNAL_USERDATAIMAGE_FILES := \
$(filter $(TARGET_OUT_DATA)/%,$(ALL_DEFAULT_INSTALLED_MODULES))
-ifdef BUILDING_USERDATA_IMAGE
userdataimage_intermediates := \
$(call intermediates-dir-for,PACKAGING,userdata)
BUILT_USERDATAIMAGE_TARGET := $(PRODUCT_OUT)/userdata.img