Loading core/Makefile +39 −43 Original line number Diff line number Diff line Loading @@ -835,6 +835,7 @@ $(call dist-for-goals, sdk win_sdk sdk_addon, $(INSTALLED_FILES_FILE_ROOT)) # ----------------------------------------------------------------- # the ramdisk ifdef BUILDING_RAMDISK_IMAGE INTERNAL_RAMDISK_FILES := $(filter $(TARGET_RAMDISK_OUT)/%, \ $(ALL_GENERATED_SOURCES) \ $(ALL_DEFAULT_INSTALLED_MODULES)) Loading Loading @@ -863,6 +864,9 @@ ramdisk-nodeps: $(MKBOOTFS) | $(MINIGZIP) @echo "make $@: ignoring dependencies" $(hide) $(MKBOOTFS) -d $(TARGET_OUT) $(TARGET_RAMDISK_OUT) | $(MINIGZIP) > $(INSTALLED_RAMDISK_TARGET) endif # BUILDING_RAMDISK_IMAGE INSTALLED_BOOTIMAGE_TARGET := $(PRODUCT_OUT)/boot.img ifneq ($(strip $(TARGET_NO_KERNEL)),true) Loading Loading @@ -1224,15 +1228,12 @@ otacerts: $(TARGET_OUT_ETC)/security/otacerts.zip INTERNAL_USERIMAGES_EXT_VARIANT := ifeq ($(TARGET_USERIMAGES_USE_EXT2),true) INTERNAL_USERIMAGES_USE_EXT := true INTERNAL_USERIMAGES_EXT_VARIANT := ext2 else ifeq ($(TARGET_USERIMAGES_USE_EXT3),true) INTERNAL_USERIMAGES_USE_EXT := true INTERNAL_USERIMAGES_EXT_VARIANT := ext3 else ifeq ($(TARGET_USERIMAGES_USE_EXT4),true) INTERNAL_USERIMAGES_USE_EXT := true INTERNAL_USERIMAGES_EXT_VARIANT := ext4 endif endif Loading @@ -1249,13 +1250,11 @@ ifneq (true,$(TARGET_USERIMAGES_SPARSE_EXT_DISABLED)) INTERNAL_USERIMAGES_SPARSE_EXT_FLAG := -s endif ifeq ($(INTERNAL_USERIMAGES_USE_EXT),true) INTERNAL_USERIMAGES_DEPS := $(SIMG2IMG) INTERNAL_USERIMAGES_DEPS += $(MKEXTUSERIMG) $(MAKE_EXT4FS) $(E2FSCK) $(TUNE2FS) ifeq ($(TARGET_USERIMAGES_USE_F2FS),true) INTERNAL_USERIMAGES_DEPS += $(MKF2FSUSERIMG) $(MAKE_F2FS) endif endif ifeq ($(BOARD_AVB_ENABLE),true) INTERNAL_USERIMAGES_DEPS += $(AVBTOOL) Loading @@ -1282,9 +1281,7 @@ INTERNAL_USERIMAGES_DEPS += $(SELINUX_FC) INTERNAL_USERIMAGES_DEPS += $(BLK_ALLOC_TO_BASE_FS) ifeq ($(INTERNAL_USERIMAGES_USE_EXT),true) INTERNAL_USERIMAGES_DEPS += $(MKE2FS_CONF) endif ifeq (true,$(PRODUCT_USE_DYNAMIC_PARTITIONS)) Loading Loading @@ -1982,6 +1979,8 @@ $(BUILT_ASSEMBLED_SYSTEM_MANIFEST): $(FULL_SYSTEMIMAGE_DEPS) sed "s/^/-i /" | tr '\n' ' ') -o $@ # ----------------------------------------------------------------- ifdef BUILDING_SYSTEM_IMAGE # installed file list # Depending on anything that $(BUILT_SYSTEMIMAGE) depends on. # We put installed-files.txt ahead of image itself in the dependency graph Loading Loading @@ -2147,6 +2146,8 @@ $(warning Warning: with dexpreopt enabled, you may need a full rebuild.) endif endif endif # BUILDING_SYSTEM_IMAGE .PHONY: sync syncsys sync syncsys: $(INTERNAL_SYSTEMIMAGE_FILES) Loading Loading @@ -2237,16 +2238,16 @@ $(INSTALLED_PLATFORM_ZIP) : $(INTERNAL_SYSTEMIMAGE_FILES) $(pdk_classes_dex) $(p echo "-D $(TARGET_OUT)" >> $@.lst echo "-D $(TARGET_OUT_NOTICE_FILES)" >> $@.lst echo "$(addprefix -f $(TARGET_OUT_UNSTRIPPED)/,$(PDK_SYMBOL_FILES_LIST))" >> $@.lst ifdef BOARD_VENDORIMAGE_FILE_SYSTEM_TYPE ifdef BUILDING_VENDOR_IMAGE echo "-D $(TARGET_OUT_VENDOR)" >> $@.lst endif ifdef BOARD_PRODUCTIMAGE_FILE_SYSTEM_TYPE ifdef BUILDING_PRODUCT_IMAGE echo "-D $(TARGET_OUT_PRODUCT)" >> $@.lst endif ifdef BOARD_PRODUCT_SERVICESIMAGE_FILE_SYSTEM_TYPE ifdef BUILDING_PRODUCT_SERVICES_IMAGE echo "-D $(TARGET_OUT_PRODUCT_SERVICES)" >> $@.lst endif ifdef BOARD_ODMIMAGE_FILE_SYSTEM_TYPE ifdef BUILDING_ODM_IMAGE echo "-D $(TARGET_OUT_ODM)" >> $@.lst endif ifneq ($(PDK_PLATFORM_JAVA_ZIP_CONTENTS),) Loading Loading @@ -2314,15 +2315,7 @@ boottarball-nodeps btnod: $(FS_GET_STATS) \ INTERNAL_USERDATAIMAGE_FILES := \ $(filter $(TARGET_OUT_DATA)/%,$(ALL_DEFAULT_INSTALLED_MODULES)) # Don't build userdata.img if it's extfs but no partition size skip_userdata.img := ifdef INTERNAL_USERIMAGES_EXT_VARIANT ifndef BOARD_USERDATAIMAGE_PARTITION_SIZE skip_userdata.img := true endif endif ifneq ($(skip_userdata.img),true) ifdef BUILDING_USERDATA_IMAGE userdataimage_intermediates := \ $(call intermediates-dir-for,PACKAGING,userdata) BUILT_USERDATAIMAGE_TARGET := $(PRODUCT_OUT)/userdata.img Loading Loading @@ -2351,8 +2344,7 @@ $(INSTALLED_USERDATAIMAGE_TARGET): $(INSTALLED_USERDATAIMAGE_TARGET_DEPS) userdataimage-nodeps: | $(INTERNAL_USERIMAGES_DEPS) $(build-userdataimage-target) endif # not skip_userdata.img skip_userdata.img := endif # BUILDING_USERDATA_IMAGE # ASAN libraries in the system image - build rule. ASAN_OUT_DIRS_FOR_SYSTEM_INSTALL := $(sort $(patsubst $(PRODUCT_OUT)/%,%,\ Loading Loading @@ -2426,7 +2418,7 @@ endif # BOARD_BPT_INPUT_FILES # ----------------------------------------------------------------- # cache partition image ifdef BOARD_CACHEIMAGE_FILE_SYSTEM_TYPE ifdef BUILDING_CACHE_IMAGE INTERNAL_CACHEIMAGE_FILES := \ $(filter $(TARGET_OUT_CACHE)/%,$(ALL_DEFAULT_INSTALLED_MODULES)) Loading Loading @@ -2454,16 +2446,15 @@ $(INSTALLED_CACHEIMAGE_TARGET): $(INTERNAL_USERIMAGES_DEPS) $(INTERNAL_CACHEIMAG cacheimage-nodeps: | $(INTERNAL_USERIMAGES_DEPS) $(build-cacheimage-target) else # BOARD_CACHEIMAGE_FILE_SYSTEM_TYPE else # BUILDING_CACHE_IMAGE # we need to ignore the broken cache link when doing the rsync IGNORE_CACHE_LINK := --exclude=cache endif # BOARD_CACHEIMAGE_FILE_SYSTEM_TYPE endif # BUILDING_CACHE_IMAGE # ----------------------------------------------------------------- # system_other partition image ifdef BUILDING_SYSTEM_OTHER_IMAGE ifeq ($(BOARD_USES_SYSTEM_OTHER_ODEX),true) BOARD_USES_SYSTEM_OTHER := true # Marker file to identify that odex files are installed INSTALLED_SYSTEM_OTHER_ODEX_MARKER := $(TARGET_OUT_SYSTEM_OTHER)/system-other-odex-marker ALL_DEFAULT_INSTALLED_MODULES += $(INSTALLED_SYSTEM_OTHER_ODEX_MARKER) Loading @@ -2471,7 +2462,6 @@ $(INSTALLED_SYSTEM_OTHER_ODEX_MARKER): $(hide) touch $@ endif ifdef BOARD_USES_SYSTEM_OTHER INTERNAL_SYSTEMOTHERIMAGE_FILES := \ $(filter $(TARGET_OUT_SYSTEM_OTHER)/%,\ $(ALL_DEFAULT_INSTALLED_MODULES)\ Loading Loading @@ -2522,12 +2512,12 @@ endif systemotherimage-nodeps: | $(INTERNAL_USERIMAGES_DEPS) $(build-systemotherimage-target) endif # BOARD_USES_SYSTEM_OTHER endif # BUILDING_SYSTEM_OTHER_IMAGE # ----------------------------------------------------------------- # vendor partition image ifdef BOARD_VENDORIMAGE_FILE_SYSTEM_TYPE ifdef BUILDING_VENDOR_IMAGE INTERNAL_VENDORIMAGE_FILES := \ $(filter $(TARGET_OUT_VENDOR)/%,\ $(ALL_DEFAULT_INSTALLED_MODULES)\ Loading Loading @@ -2614,7 +2604,7 @@ endif # ----------------------------------------------------------------- # product partition image ifdef BOARD_PRODUCTIMAGE_FILE_SYSTEM_TYPE ifdef BUILDING_PRODUCT_IMAGE INTERNAL_PRODUCTIMAGE_FILES := \ $(filter $(TARGET_OUT_PRODUCT)/%,\ $(ALL_DEFAULT_INSTALLED_MODULES)\ Loading Loading @@ -2669,7 +2659,7 @@ endif # ----------------------------------------------------------------- # product_services partition image ifdef BOARD_PRODUCT_SERVICESIMAGE_FILE_SYSTEM_TYPE ifdef BUILDING_PRODUCT_SERVICES_IMAGE INTERNAL_PRODUCT_SERVICESIMAGE_FILES := \ $(filter $(TARGET_OUT_PRODUCT_SERVICES)/%,\ $(ALL_DEFAULT_INSTALLED_MODULES)\ Loading Loading @@ -2724,7 +2714,7 @@ endif # ----------------------------------------------------------------- # odm partition image ifdef BOARD_ODMIMAGE_FILE_SYSTEM_TYPE ifdef BUILDING_ODM_IMAGE INTERNAL_ODMIMAGE_FILES := \ $(filter $(TARGET_OUT_ODM)/%,\ $(ALL_DEFAULT_INSTALLED_MODULES)\ Loading Loading @@ -3550,33 +3540,37 @@ endif # BOARD_USES_RECOVERY_AS_BOOT $(hide) $(foreach t,$(INSTALLED_RADIOIMAGE_TARGET),\ mkdir -p $(zip_root)/RADIO; \ cp $(t) $(zip_root)/RADIO/$(notdir $(t));) ifdef BUILDING_SYSTEM_IMAGE @# Contents of the system image $(hide) $(call package_files-copy-root, \ $(SYSTEMIMAGE_SOURCE_DIR),$(zip_root)/SYSTEM) endif ifdef BUILDING_USERDATA_IMAGE @# Contents of the data image $(hide) $(call package_files-copy-root, \ $(TARGET_OUT_DATA),$(zip_root)/DATA) ifdef BOARD_VENDORIMAGE_FILE_SYSTEM_TYPE endif ifdef BUILDING_VENDOR_IMAGE @# Contents of the vendor image $(hide) $(call package_files-copy-root, \ $(TARGET_OUT_VENDOR),$(zip_root)/VENDOR) endif ifdef BOARD_PRODUCTIMAGE_FILE_SYSTEM_TYPE ifdef BUILDING_PRODUCT_IMAGE @# Contents of the product image $(hide) $(call package_files-copy-root, \ $(TARGET_OUT_PRODUCT),$(zip_root)/PRODUCT) endif ifdef BOARD_PRODUCT_SERVICESIMAGE_FILE_SYSTEM_TYPE ifdef BUILDING_PRODUCT_SERVICES_IMAGE @# Contents of the product_services image $(hide) $(call package_files-copy-root, \ $(TARGET_OUT_PRODUCT_SERVICES),$(zip_root)/PRODUCT_SERVICES) endif ifdef BOARD_ODMIMAGE_FILE_SYSTEM_TYPE ifdef BUILDING_ODM_IMAGE @# Contents of the odm image $(hide) $(call package_files-copy-root, \ $(TARGET_OUT_ODM),$(zip_root)/ODM) endif ifdef INSTALLED_SYSTEMOTHERIMAGE_TARGET ifdef BUILDING_SYSTEM_OTHER_IMAGE @# Contents of the system_other image $(hide) $(call package_files-copy-root, \ $(TARGET_OUT_SYSTEM_OTHER),$(zip_root)/SYSTEM_OTHER) Loading Loading @@ -3775,17 +3769,19 @@ endif # BOARD_PREBUILT_DTBOIMAGE echo $(part) >> $(zip_root)/META/pack_radioimages.txt;) @# Run fs_config on all the system, vendor, boot ramdisk, @# and recovery ramdisk files in the zip, and save the output ifdef BUILDING_SYSTEM_IMAGE $(hide) $(call fs_config,$(zip_root)/SYSTEM,system/) > $(zip_root)/META/filesystem_config.txt ifdef BOARD_VENDORIMAGE_FILE_SYSTEM_TYPE endif ifdef BUILDING_VENDOR_IMAGE $(hide) $(call fs_config,$(zip_root)/VENDOR,vendor/) > $(zip_root)/META/vendor_filesystem_config.txt endif ifdef BOARD_PRODUCTIMAGE_FILE_SYSTEM_TYPE ifdef BUILDING_PRODUCT_IMAGE $(hide) $(call fs_config,$(zip_root)/PRODUCT,product/) > $(zip_root)/META/product_filesystem_config.txt endif ifdef BOARD_PRODUCT_SERVICESIMAGE_FILE_SYSTEM_TYPE ifdef BUILDING_PRODUCT_SERVICES_IMAGE $(hide) $(call fs_config,$(zip_root)/PRODUCT_SERVICES,product_services/) > $(zip_root)/META/product_services_filesystem_config.txt endif ifdef BOARD_ODMIMAGE_FILE_SYSTEM_TYPE ifdef BUILDING_ODM_IMAGE $(hide) $(call fs_config,$(zip_root)/ODM,odm/) > $(zip_root)/META/odm_filesystem_config.txt endif @# ROOT always contains the files for the root under normal boot. Loading @@ -3801,7 +3797,7 @@ endif ifneq ($(INSTALLED_RECOVERYIMAGE_TARGET),) $(hide) $(call fs_config,$(zip_root)/RECOVERY/RAMDISK,) > $(zip_root)/META/recovery_filesystem_config.txt endif ifdef INSTALLED_SYSTEMOTHERIMAGE_TARGET ifdef BUILDING_SYSTEM_OTHER_IMAGE $(hide) $(call fs_config,$(zip_root)/SYSTEM_OTHER,system/) > $(zip_root)/META/system_other_filesystem_config.txt endif @# Metadata for compatibility verification. Loading core/config.mk +2 −2 Original line number Diff line number Diff line Loading @@ -1065,11 +1065,11 @@ BOARD_BUILD_RETROFIT_DYNAMIC_PARTITIONS_OTA_PACKAGE := true # AOSP target built without vendor image), don't build the retrofit full OTA package. Because we # won't be able to build meaningful super_* images for retrofitting purpose. ifneq (,$(filter vendor,$(BOARD_SUPER_PARTITION_PARTITION_LIST))) ifndef BOARD_VENDORIMAGE_FILE_SYSTEM_TYPE ifndef BUILDING_VENDOR_IMAGE ifndef BOARD_PREBUILT_VENDORIMAGE BOARD_BUILD_RETROFIT_DYNAMIC_PARTITIONS_OTA_PACKAGE := endif # BOARD_PREBUILT_VENDORIMAGE endif # BOARD_VENDORIMAGE_FILE_SYSTEM_TYPE endif # BUILDING_VENDOR_IMAGE endif # BOARD_SUPER_PARTITION_PARTITION_LIST else # PRODUCT_RETROFIT_DYNAMIC_PARTITIONS Loading core/envsetup.mk +157 −22 Original line number Diff line number Diff line Loading @@ -295,6 +295,75 @@ ifeq ($(BOARD_BUILD_SYSTEM_ROOT_IMAGE),true) TARGET_COPY_OUT_RAMDISK := $(TARGET_COPY_OUT_ROOT) endif ########################################### # Configure whether we're building the system image BUILDING_SYSTEM_IMAGE := true ifeq ($(PRODUCT_BUILD_SYSTEM_IMAGE),) ifndef PRODUCT_USE_DYNAMIC_PARTITION_SIZE ifndef BOARD_SYSTEMIMAGE_PARTITION_SIZE BUILDING_SYSTEM_IMAGE := endif endif else ifeq ($(PRODUCT_BUILD_SYSTEM_IMAGE),false) BUILDING_SYSTEM_IMAGE := endif .KATI_READONLY := BUILDING_SYSTEM_IMAGE # Are we building a system_other image BUILDING_SYSTEM_OTHER_IMAGE := ifeq ($(PRODUCT_BUILD_SYSTEM_OTHER_IMAGE),) ifdef BUILDING_SYSTEM_IMAGE ifeq ($(BOARD_USES_SYSTEM_OTHER_ODEX),true) BUILDING_SYSTEM_OTHER_IMAGE := true endif endif else ifeq ($(PRODUCT_BUILD_SYSTEM_OTHER_IMAGE),true) BUILDING_SYSTEM_OTHER_IMAGE := true ifndef BUILDING_SYSTEM_IMAGE $(error PRODUCT_BUILD_SYSTEM_OTHER_IMAGE = true requires building the system image) endif endif .KATI_READONLY := BUILDING_SYSTEM_OTHER_IMAGE # Are we building a cache image BUILDING_CACHE_IMAGE := ifeq ($(PRODUCT_BUILD_CACHE_IMAGE),) ifdef BOARD_CACHEIMAGE_FILE_SYSTEM_TYPE BUILDING_CACHE_IMAGE := true endif else ifeq ($(PRODUCT_BUILD_CACHE_IMAGE),true) BUILDING_CACHE_IMAGE := true ifndef BOARD_CACHEIMAGE_FILE_SYSTEM_TYPE $(error PRODUCT_BUILD_CACHE_IMAGE set to true, but BOARD_CACHEIMAGE_FILE_SYSTEM_TYPE not defined) endif endif .KATI_READONLY := BUILDING_CACHE_IMAGE # TODO: Add BUILDING_BOOT_IMAGE / BUILDING_RECOVERY_IMAGE # This gets complicated with BOARD_USES_RECOVERY_AS_BOOT, so skipping for now. # Are we building a ramdisk image BUILDING_RAMDISK_IMAGE := true ifeq ($(PRODUCT_BUILD_RAMDISK_IMAGE),) # TODO: Be smarter about this. This probably only needs to happen when one of the follow is true: # BUILDING_BOOT_IMAGE # BUILDING_RECOVERY_IMAGE else ifeq ($(PRODUCT_BUILD_RAMDISK_IMAGE),false) BUILDING_RAMDISK_IMAGE := endif .KATI_READONLY := BUILDING_RAMDISK_IMAGE # Are we building a userdata image BUILDING_USERDATA_IMAGE := ifeq ($(PRODUCT_BUILD_USERDATA_IMAGE),) ifdef BOARD_USERDATAIMAGE_PARTITION_SIZE BUILDING_USERDATA_IMAGE := true endif else ifeq ($(PRODUCT_BUILD_USERDATA_IMAGE),true) BUILDING_USERDATA_IMAGE := true endif .KATI_READONLY := BUILDING_USERDATA_IMAGE ########################################### # Now we can substitute with the real value of TARGET_COPY_OUT_VENDOR ifeq ($(TARGET_COPY_OUT_VENDOR),$(_vendor_path_placeholder)) Loading @@ -316,6 +385,23 @@ BOARD_USES_VENDORIMAGE := true else ifdef BOARD_USES_VENDORIMAGE $(error TARGET_COPY_OUT_VENDOR must be set to 'vendor' to use a vendor image) endif .KATI_READONLY := BOARD_USES_VENDORIMAGE BUILDING_VENDOR_IMAGE := ifeq ($(PRODUCT_BUILD_VENDOR_IMAGE),) ifdef BOARD_VENDORIMAGE_FILE_SYSTEM_TYPE BUILDING_VENDOR_IMAGE := true endif else ifeq ($(PRODUCT_BUILD_VENDOR_IMAGE),true) BUILDING_VENDOR_IMAGE := true ifndef BOARD_VENDORIMAGE_FILE_SYSTEM_TYPE $(error PRODUCT_BUILD_VENDOR_IMAGE set to true, but BOARD_VENDORIMAGE_FILE_SYSTEM_TYPE not defined) endif endif ifdef BOARD_PREBUILT_VENDORIMAGE BUILDING_VENDOR_IMAGE := endif .KATI_READONLY := BUILDING_VENDOR_IMAGE ########################################### # Now we can substitute with the real value of TARGET_COPY_OUT_PRODUCT Loading @@ -338,6 +424,23 @@ BOARD_USES_PRODUCTIMAGE := true else ifdef BOARD_USES_PRODUCTIMAGE $(error TARGET_COPY_OUT_PRODUCT must be set to 'product' to use a product image) endif .KATI_READONLY := BOARD_USES_PRODUCTIMAGE BUILDING_PRODUCT_IMAGE := ifeq ($(PRODUCT_BUILD_PRODUCT_IMAGE),) ifdef BOARD_PRODUCTIMAGE_FILE_SYSTEM_TYPE BUILDING_PRODUCT_IMAGE := true endif else ifeq ($(PRODUCT_BUILD_PRODUCT_IMAGE),true) BUILDING_PRODUCT_IMAGE := true ifndef BOARD_PRODUCTIMAGE_FILE_SYSTEM_TYPE $(error PRODUCT_BUILD_PRODUCT_IMAGE set to true, but BOARD_PRODUCTIMAGE_FILE_SYSTEM_TYPE not defined) endif endif ifdef BOARD_PREBUILT_PRODUCTIMAGE BUILDING_PRODUCT_IMAGE := endif .KATI_READONLY := BUILDING_PRODUCT_IMAGE ########################################### # Now we can substitute with the real value of TARGET_COPY_OUT_PRODUCT_SERVICES Loading @@ -361,6 +464,22 @@ else ifdef BOARD_USES_PRODUCT_SERVICESIMAGE $(error TARGET_COPY_OUT_PRODUCT_SERVICES must be set to 'product_services' to use a product_services image) endif BUILDING_PRODUCT_SERVICES_IMAGE := ifeq ($(PRODUCT_SERVICES_BUILD_PRODUCT_SERVICES_IMAGE),) ifdef BOARD_PRODUCT_SERVICESIMAGE_FILE_SYSTEM_TYPE BUILDING_PRODUCT_SERVICES_IMAGE := true endif else ifeq ($(PRODUCT_BUILD_PRODUCT_SERVICES_IMAGE),true) BUILDING_PRODUCT_SERVICES_IMAGE := true ifndef BOARD_PRODUCT_SERVICESIMAGE_FILE_SYSTEM_TYPE $(error PRODUCT_BUILD_PRODUCT_SERVICES_IMAGE set to true, but BOARD_PRODUCT_SERVICESIMAGE_FILE_SYSTEM_TYPE not defined) endif endif ifdef BOARD_PREBUILT_PRODUCT_SERVICESIMAGE BUILDING_PRODUCT_SERVICES_IMAGE := endif .KATI_READONLY := BUILDING_PRODUCT_SERVICES_IMAGE ########################################### # Now we can substitute with the real value of TARGET_COPY_OUT_ODM ifeq ($(TARGET_COPY_OUT_ODM),$(_odm_path_placeholder)) Loading @@ -383,6 +502,22 @@ else ifdef BOARD_USES_ODMIMAGE $(error TARGET_COPY_OUT_ODM must be set to 'odm' to use an odm image) endif BUILDING_ODM_IMAGE := ifeq ($(ODM_BUILD_ODM_IMAGE),) ifdef BOARD_ODMIMAGE_FILE_SYSTEM_TYPE BUILDING_ODM_IMAGE := true endif else ifeq ($(PRODUCT_BUILD_ODM_IMAGE),true) BUILDING_ODM_IMAGE := true ifndef BOARD_ODMIMAGE_FILE_SYSTEM_TYPE $(error PRODUCT_BUILD_ODM_IMAGE set to true, but BOARD_ODMIMAGE_FILE_SYSTEM_TYPE not defined) endif endif ifdef BOARD_PREBUILT_ODMIMAGE BUILDING_ODM_IMAGE := endif .KATI_READONLY := BUILDING_ODM_IMAGE ########################################### # Ensure that only TARGET_RECOVERY_UPDATER_LIBS *or* AB_OTA_UPDATER is set. TARGET_RECOVERY_UPDATER_LIBS ?= Loading core/product.mk +9 −0 Original line number Diff line number Diff line Loading @@ -216,6 +216,15 @@ _product_var_list := \ PRODUCT_OTA_ENFORCE_VINTF_KERNEL_REQUIREMENTS \ PRODUCT_XOM_EXCLUDE_PATHS \ PRODUCT_MANIFEST_PACKAGE_NAME_OVERRIDES \ PRODUCT_BUILD_SYSTEM_IMAGE \ PRODUCT_BUILD_SYSTEM_OTHER_IMAGE \ PRODUCT_BUILD_VENDOR_IMAGE \ PRODUCT_BUILD_PRODUCT_IMAGE \ PRODUCT_BUILD_PRODUCT_SERVICES_IMAGE \ PRODUCT_BUILD_ODM_IMAGE \ PRODUCT_BUILD_CACHE_IMAGE \ PRODUCT_BUILD_RAMDISK_IMAGE \ PRODUCT_BUILD_USERDATA_IMAGE \ define dump-product $(info ==== $(1) ====)\ Loading core/product_config.mk +24 −0 Original line number Diff line number Diff line Loading @@ -566,3 +566,27 @@ PRODUCT_OTA_ENFORCE_VINTF_KERNEL_REQUIREMENTS := \ PRODUCT_MANIFEST_PACKAGE_NAME_OVERRIDES := \ $(strip $(PRODUCTS.$(INTERNAL_PRODUCT).PRODUCT_MANIFEST_PACKAGE_NAME_OVERRIDES)) .KATI_READONLY := PRODUCT_MANIFEST_PACKAGE_NAME_OVERRIDES # Macro to use below. $(1) is the name of the partition define product-build-image-config PRODUCT_BUILD_$(1)_IMAGE := $$(firstword $$(strip $$(PRODUCTS.$$(INTERNAL_PRODUCT).PRODUCT_BUILD_$(1)_IMAGE))) .KATI_READONLY := PRODUCT_BUILD_$(1)_IMAGE ifneq ($$(filter-out true false,$$(PRODUCT_BUILD_$(1)_IMAGE)),) $$(error Invalid PRODUCT_BUILD_$(1)_IMAGE: $$(PRODUCT_BUILD_$(1)_IMAGE) -- true false and empty are supported) endif endef # Copy and check the value of each PRODUCT_BUILD_*_IMAGE variable $(foreach image, \ SYSTEM \ SYSTEM_OTHER \ VENDOR \ PRODUCT \ PRODUCT_SERVICES \ ODM \ CACHE \ RAMDISK \ USERDATA, \ $(eval $(call product-build-image-config,$(image)))) product-build-image-config := Loading
core/Makefile +39 −43 Original line number Diff line number Diff line Loading @@ -835,6 +835,7 @@ $(call dist-for-goals, sdk win_sdk sdk_addon, $(INSTALLED_FILES_FILE_ROOT)) # ----------------------------------------------------------------- # the ramdisk ifdef BUILDING_RAMDISK_IMAGE INTERNAL_RAMDISK_FILES := $(filter $(TARGET_RAMDISK_OUT)/%, \ $(ALL_GENERATED_SOURCES) \ $(ALL_DEFAULT_INSTALLED_MODULES)) Loading Loading @@ -863,6 +864,9 @@ ramdisk-nodeps: $(MKBOOTFS) | $(MINIGZIP) @echo "make $@: ignoring dependencies" $(hide) $(MKBOOTFS) -d $(TARGET_OUT) $(TARGET_RAMDISK_OUT) | $(MINIGZIP) > $(INSTALLED_RAMDISK_TARGET) endif # BUILDING_RAMDISK_IMAGE INSTALLED_BOOTIMAGE_TARGET := $(PRODUCT_OUT)/boot.img ifneq ($(strip $(TARGET_NO_KERNEL)),true) Loading Loading @@ -1224,15 +1228,12 @@ otacerts: $(TARGET_OUT_ETC)/security/otacerts.zip INTERNAL_USERIMAGES_EXT_VARIANT := ifeq ($(TARGET_USERIMAGES_USE_EXT2),true) INTERNAL_USERIMAGES_USE_EXT := true INTERNAL_USERIMAGES_EXT_VARIANT := ext2 else ifeq ($(TARGET_USERIMAGES_USE_EXT3),true) INTERNAL_USERIMAGES_USE_EXT := true INTERNAL_USERIMAGES_EXT_VARIANT := ext3 else ifeq ($(TARGET_USERIMAGES_USE_EXT4),true) INTERNAL_USERIMAGES_USE_EXT := true INTERNAL_USERIMAGES_EXT_VARIANT := ext4 endif endif Loading @@ -1249,13 +1250,11 @@ ifneq (true,$(TARGET_USERIMAGES_SPARSE_EXT_DISABLED)) INTERNAL_USERIMAGES_SPARSE_EXT_FLAG := -s endif ifeq ($(INTERNAL_USERIMAGES_USE_EXT),true) INTERNAL_USERIMAGES_DEPS := $(SIMG2IMG) INTERNAL_USERIMAGES_DEPS += $(MKEXTUSERIMG) $(MAKE_EXT4FS) $(E2FSCK) $(TUNE2FS) ifeq ($(TARGET_USERIMAGES_USE_F2FS),true) INTERNAL_USERIMAGES_DEPS += $(MKF2FSUSERIMG) $(MAKE_F2FS) endif endif ifeq ($(BOARD_AVB_ENABLE),true) INTERNAL_USERIMAGES_DEPS += $(AVBTOOL) Loading @@ -1282,9 +1281,7 @@ INTERNAL_USERIMAGES_DEPS += $(SELINUX_FC) INTERNAL_USERIMAGES_DEPS += $(BLK_ALLOC_TO_BASE_FS) ifeq ($(INTERNAL_USERIMAGES_USE_EXT),true) INTERNAL_USERIMAGES_DEPS += $(MKE2FS_CONF) endif ifeq (true,$(PRODUCT_USE_DYNAMIC_PARTITIONS)) Loading Loading @@ -1982,6 +1979,8 @@ $(BUILT_ASSEMBLED_SYSTEM_MANIFEST): $(FULL_SYSTEMIMAGE_DEPS) sed "s/^/-i /" | tr '\n' ' ') -o $@ # ----------------------------------------------------------------- ifdef BUILDING_SYSTEM_IMAGE # installed file list # Depending on anything that $(BUILT_SYSTEMIMAGE) depends on. # We put installed-files.txt ahead of image itself in the dependency graph Loading Loading @@ -2147,6 +2146,8 @@ $(warning Warning: with dexpreopt enabled, you may need a full rebuild.) endif endif endif # BUILDING_SYSTEM_IMAGE .PHONY: sync syncsys sync syncsys: $(INTERNAL_SYSTEMIMAGE_FILES) Loading Loading @@ -2237,16 +2238,16 @@ $(INSTALLED_PLATFORM_ZIP) : $(INTERNAL_SYSTEMIMAGE_FILES) $(pdk_classes_dex) $(p echo "-D $(TARGET_OUT)" >> $@.lst echo "-D $(TARGET_OUT_NOTICE_FILES)" >> $@.lst echo "$(addprefix -f $(TARGET_OUT_UNSTRIPPED)/,$(PDK_SYMBOL_FILES_LIST))" >> $@.lst ifdef BOARD_VENDORIMAGE_FILE_SYSTEM_TYPE ifdef BUILDING_VENDOR_IMAGE echo "-D $(TARGET_OUT_VENDOR)" >> $@.lst endif ifdef BOARD_PRODUCTIMAGE_FILE_SYSTEM_TYPE ifdef BUILDING_PRODUCT_IMAGE echo "-D $(TARGET_OUT_PRODUCT)" >> $@.lst endif ifdef BOARD_PRODUCT_SERVICESIMAGE_FILE_SYSTEM_TYPE ifdef BUILDING_PRODUCT_SERVICES_IMAGE echo "-D $(TARGET_OUT_PRODUCT_SERVICES)" >> $@.lst endif ifdef BOARD_ODMIMAGE_FILE_SYSTEM_TYPE ifdef BUILDING_ODM_IMAGE echo "-D $(TARGET_OUT_ODM)" >> $@.lst endif ifneq ($(PDK_PLATFORM_JAVA_ZIP_CONTENTS),) Loading Loading @@ -2314,15 +2315,7 @@ boottarball-nodeps btnod: $(FS_GET_STATS) \ INTERNAL_USERDATAIMAGE_FILES := \ $(filter $(TARGET_OUT_DATA)/%,$(ALL_DEFAULT_INSTALLED_MODULES)) # Don't build userdata.img if it's extfs but no partition size skip_userdata.img := ifdef INTERNAL_USERIMAGES_EXT_VARIANT ifndef BOARD_USERDATAIMAGE_PARTITION_SIZE skip_userdata.img := true endif endif ifneq ($(skip_userdata.img),true) ifdef BUILDING_USERDATA_IMAGE userdataimage_intermediates := \ $(call intermediates-dir-for,PACKAGING,userdata) BUILT_USERDATAIMAGE_TARGET := $(PRODUCT_OUT)/userdata.img Loading Loading @@ -2351,8 +2344,7 @@ $(INSTALLED_USERDATAIMAGE_TARGET): $(INSTALLED_USERDATAIMAGE_TARGET_DEPS) userdataimage-nodeps: | $(INTERNAL_USERIMAGES_DEPS) $(build-userdataimage-target) endif # not skip_userdata.img skip_userdata.img := endif # BUILDING_USERDATA_IMAGE # ASAN libraries in the system image - build rule. ASAN_OUT_DIRS_FOR_SYSTEM_INSTALL := $(sort $(patsubst $(PRODUCT_OUT)/%,%,\ Loading Loading @@ -2426,7 +2418,7 @@ endif # BOARD_BPT_INPUT_FILES # ----------------------------------------------------------------- # cache partition image ifdef BOARD_CACHEIMAGE_FILE_SYSTEM_TYPE ifdef BUILDING_CACHE_IMAGE INTERNAL_CACHEIMAGE_FILES := \ $(filter $(TARGET_OUT_CACHE)/%,$(ALL_DEFAULT_INSTALLED_MODULES)) Loading Loading @@ -2454,16 +2446,15 @@ $(INSTALLED_CACHEIMAGE_TARGET): $(INTERNAL_USERIMAGES_DEPS) $(INTERNAL_CACHEIMAG cacheimage-nodeps: | $(INTERNAL_USERIMAGES_DEPS) $(build-cacheimage-target) else # BOARD_CACHEIMAGE_FILE_SYSTEM_TYPE else # BUILDING_CACHE_IMAGE # we need to ignore the broken cache link when doing the rsync IGNORE_CACHE_LINK := --exclude=cache endif # BOARD_CACHEIMAGE_FILE_SYSTEM_TYPE endif # BUILDING_CACHE_IMAGE # ----------------------------------------------------------------- # system_other partition image ifdef BUILDING_SYSTEM_OTHER_IMAGE ifeq ($(BOARD_USES_SYSTEM_OTHER_ODEX),true) BOARD_USES_SYSTEM_OTHER := true # Marker file to identify that odex files are installed INSTALLED_SYSTEM_OTHER_ODEX_MARKER := $(TARGET_OUT_SYSTEM_OTHER)/system-other-odex-marker ALL_DEFAULT_INSTALLED_MODULES += $(INSTALLED_SYSTEM_OTHER_ODEX_MARKER) Loading @@ -2471,7 +2462,6 @@ $(INSTALLED_SYSTEM_OTHER_ODEX_MARKER): $(hide) touch $@ endif ifdef BOARD_USES_SYSTEM_OTHER INTERNAL_SYSTEMOTHERIMAGE_FILES := \ $(filter $(TARGET_OUT_SYSTEM_OTHER)/%,\ $(ALL_DEFAULT_INSTALLED_MODULES)\ Loading Loading @@ -2522,12 +2512,12 @@ endif systemotherimage-nodeps: | $(INTERNAL_USERIMAGES_DEPS) $(build-systemotherimage-target) endif # BOARD_USES_SYSTEM_OTHER endif # BUILDING_SYSTEM_OTHER_IMAGE # ----------------------------------------------------------------- # vendor partition image ifdef BOARD_VENDORIMAGE_FILE_SYSTEM_TYPE ifdef BUILDING_VENDOR_IMAGE INTERNAL_VENDORIMAGE_FILES := \ $(filter $(TARGET_OUT_VENDOR)/%,\ $(ALL_DEFAULT_INSTALLED_MODULES)\ Loading Loading @@ -2614,7 +2604,7 @@ endif # ----------------------------------------------------------------- # product partition image ifdef BOARD_PRODUCTIMAGE_FILE_SYSTEM_TYPE ifdef BUILDING_PRODUCT_IMAGE INTERNAL_PRODUCTIMAGE_FILES := \ $(filter $(TARGET_OUT_PRODUCT)/%,\ $(ALL_DEFAULT_INSTALLED_MODULES)\ Loading Loading @@ -2669,7 +2659,7 @@ endif # ----------------------------------------------------------------- # product_services partition image ifdef BOARD_PRODUCT_SERVICESIMAGE_FILE_SYSTEM_TYPE ifdef BUILDING_PRODUCT_SERVICES_IMAGE INTERNAL_PRODUCT_SERVICESIMAGE_FILES := \ $(filter $(TARGET_OUT_PRODUCT_SERVICES)/%,\ $(ALL_DEFAULT_INSTALLED_MODULES)\ Loading Loading @@ -2724,7 +2714,7 @@ endif # ----------------------------------------------------------------- # odm partition image ifdef BOARD_ODMIMAGE_FILE_SYSTEM_TYPE ifdef BUILDING_ODM_IMAGE INTERNAL_ODMIMAGE_FILES := \ $(filter $(TARGET_OUT_ODM)/%,\ $(ALL_DEFAULT_INSTALLED_MODULES)\ Loading Loading @@ -3550,33 +3540,37 @@ endif # BOARD_USES_RECOVERY_AS_BOOT $(hide) $(foreach t,$(INSTALLED_RADIOIMAGE_TARGET),\ mkdir -p $(zip_root)/RADIO; \ cp $(t) $(zip_root)/RADIO/$(notdir $(t));) ifdef BUILDING_SYSTEM_IMAGE @# Contents of the system image $(hide) $(call package_files-copy-root, \ $(SYSTEMIMAGE_SOURCE_DIR),$(zip_root)/SYSTEM) endif ifdef BUILDING_USERDATA_IMAGE @# Contents of the data image $(hide) $(call package_files-copy-root, \ $(TARGET_OUT_DATA),$(zip_root)/DATA) ifdef BOARD_VENDORIMAGE_FILE_SYSTEM_TYPE endif ifdef BUILDING_VENDOR_IMAGE @# Contents of the vendor image $(hide) $(call package_files-copy-root, \ $(TARGET_OUT_VENDOR),$(zip_root)/VENDOR) endif ifdef BOARD_PRODUCTIMAGE_FILE_SYSTEM_TYPE ifdef BUILDING_PRODUCT_IMAGE @# Contents of the product image $(hide) $(call package_files-copy-root, \ $(TARGET_OUT_PRODUCT),$(zip_root)/PRODUCT) endif ifdef BOARD_PRODUCT_SERVICESIMAGE_FILE_SYSTEM_TYPE ifdef BUILDING_PRODUCT_SERVICES_IMAGE @# Contents of the product_services image $(hide) $(call package_files-copy-root, \ $(TARGET_OUT_PRODUCT_SERVICES),$(zip_root)/PRODUCT_SERVICES) endif ifdef BOARD_ODMIMAGE_FILE_SYSTEM_TYPE ifdef BUILDING_ODM_IMAGE @# Contents of the odm image $(hide) $(call package_files-copy-root, \ $(TARGET_OUT_ODM),$(zip_root)/ODM) endif ifdef INSTALLED_SYSTEMOTHERIMAGE_TARGET ifdef BUILDING_SYSTEM_OTHER_IMAGE @# Contents of the system_other image $(hide) $(call package_files-copy-root, \ $(TARGET_OUT_SYSTEM_OTHER),$(zip_root)/SYSTEM_OTHER) Loading Loading @@ -3775,17 +3769,19 @@ endif # BOARD_PREBUILT_DTBOIMAGE echo $(part) >> $(zip_root)/META/pack_radioimages.txt;) @# Run fs_config on all the system, vendor, boot ramdisk, @# and recovery ramdisk files in the zip, and save the output ifdef BUILDING_SYSTEM_IMAGE $(hide) $(call fs_config,$(zip_root)/SYSTEM,system/) > $(zip_root)/META/filesystem_config.txt ifdef BOARD_VENDORIMAGE_FILE_SYSTEM_TYPE endif ifdef BUILDING_VENDOR_IMAGE $(hide) $(call fs_config,$(zip_root)/VENDOR,vendor/) > $(zip_root)/META/vendor_filesystem_config.txt endif ifdef BOARD_PRODUCTIMAGE_FILE_SYSTEM_TYPE ifdef BUILDING_PRODUCT_IMAGE $(hide) $(call fs_config,$(zip_root)/PRODUCT,product/) > $(zip_root)/META/product_filesystem_config.txt endif ifdef BOARD_PRODUCT_SERVICESIMAGE_FILE_SYSTEM_TYPE ifdef BUILDING_PRODUCT_SERVICES_IMAGE $(hide) $(call fs_config,$(zip_root)/PRODUCT_SERVICES,product_services/) > $(zip_root)/META/product_services_filesystem_config.txt endif ifdef BOARD_ODMIMAGE_FILE_SYSTEM_TYPE ifdef BUILDING_ODM_IMAGE $(hide) $(call fs_config,$(zip_root)/ODM,odm/) > $(zip_root)/META/odm_filesystem_config.txt endif @# ROOT always contains the files for the root under normal boot. Loading @@ -3801,7 +3797,7 @@ endif ifneq ($(INSTALLED_RECOVERYIMAGE_TARGET),) $(hide) $(call fs_config,$(zip_root)/RECOVERY/RAMDISK,) > $(zip_root)/META/recovery_filesystem_config.txt endif ifdef INSTALLED_SYSTEMOTHERIMAGE_TARGET ifdef BUILDING_SYSTEM_OTHER_IMAGE $(hide) $(call fs_config,$(zip_root)/SYSTEM_OTHER,system/) > $(zip_root)/META/system_other_filesystem_config.txt endif @# Metadata for compatibility verification. Loading
core/config.mk +2 −2 Original line number Diff line number Diff line Loading @@ -1065,11 +1065,11 @@ BOARD_BUILD_RETROFIT_DYNAMIC_PARTITIONS_OTA_PACKAGE := true # AOSP target built without vendor image), don't build the retrofit full OTA package. Because we # won't be able to build meaningful super_* images for retrofitting purpose. ifneq (,$(filter vendor,$(BOARD_SUPER_PARTITION_PARTITION_LIST))) ifndef BOARD_VENDORIMAGE_FILE_SYSTEM_TYPE ifndef BUILDING_VENDOR_IMAGE ifndef BOARD_PREBUILT_VENDORIMAGE BOARD_BUILD_RETROFIT_DYNAMIC_PARTITIONS_OTA_PACKAGE := endif # BOARD_PREBUILT_VENDORIMAGE endif # BOARD_VENDORIMAGE_FILE_SYSTEM_TYPE endif # BUILDING_VENDOR_IMAGE endif # BOARD_SUPER_PARTITION_PARTITION_LIST else # PRODUCT_RETROFIT_DYNAMIC_PARTITIONS Loading
core/envsetup.mk +157 −22 Original line number Diff line number Diff line Loading @@ -295,6 +295,75 @@ ifeq ($(BOARD_BUILD_SYSTEM_ROOT_IMAGE),true) TARGET_COPY_OUT_RAMDISK := $(TARGET_COPY_OUT_ROOT) endif ########################################### # Configure whether we're building the system image BUILDING_SYSTEM_IMAGE := true ifeq ($(PRODUCT_BUILD_SYSTEM_IMAGE),) ifndef PRODUCT_USE_DYNAMIC_PARTITION_SIZE ifndef BOARD_SYSTEMIMAGE_PARTITION_SIZE BUILDING_SYSTEM_IMAGE := endif endif else ifeq ($(PRODUCT_BUILD_SYSTEM_IMAGE),false) BUILDING_SYSTEM_IMAGE := endif .KATI_READONLY := BUILDING_SYSTEM_IMAGE # Are we building a system_other image BUILDING_SYSTEM_OTHER_IMAGE := ifeq ($(PRODUCT_BUILD_SYSTEM_OTHER_IMAGE),) ifdef BUILDING_SYSTEM_IMAGE ifeq ($(BOARD_USES_SYSTEM_OTHER_ODEX),true) BUILDING_SYSTEM_OTHER_IMAGE := true endif endif else ifeq ($(PRODUCT_BUILD_SYSTEM_OTHER_IMAGE),true) BUILDING_SYSTEM_OTHER_IMAGE := true ifndef BUILDING_SYSTEM_IMAGE $(error PRODUCT_BUILD_SYSTEM_OTHER_IMAGE = true requires building the system image) endif endif .KATI_READONLY := BUILDING_SYSTEM_OTHER_IMAGE # Are we building a cache image BUILDING_CACHE_IMAGE := ifeq ($(PRODUCT_BUILD_CACHE_IMAGE),) ifdef BOARD_CACHEIMAGE_FILE_SYSTEM_TYPE BUILDING_CACHE_IMAGE := true endif else ifeq ($(PRODUCT_BUILD_CACHE_IMAGE),true) BUILDING_CACHE_IMAGE := true ifndef BOARD_CACHEIMAGE_FILE_SYSTEM_TYPE $(error PRODUCT_BUILD_CACHE_IMAGE set to true, but BOARD_CACHEIMAGE_FILE_SYSTEM_TYPE not defined) endif endif .KATI_READONLY := BUILDING_CACHE_IMAGE # TODO: Add BUILDING_BOOT_IMAGE / BUILDING_RECOVERY_IMAGE # This gets complicated with BOARD_USES_RECOVERY_AS_BOOT, so skipping for now. # Are we building a ramdisk image BUILDING_RAMDISK_IMAGE := true ifeq ($(PRODUCT_BUILD_RAMDISK_IMAGE),) # TODO: Be smarter about this. This probably only needs to happen when one of the follow is true: # BUILDING_BOOT_IMAGE # BUILDING_RECOVERY_IMAGE else ifeq ($(PRODUCT_BUILD_RAMDISK_IMAGE),false) BUILDING_RAMDISK_IMAGE := endif .KATI_READONLY := BUILDING_RAMDISK_IMAGE # Are we building a userdata image BUILDING_USERDATA_IMAGE := ifeq ($(PRODUCT_BUILD_USERDATA_IMAGE),) ifdef BOARD_USERDATAIMAGE_PARTITION_SIZE BUILDING_USERDATA_IMAGE := true endif else ifeq ($(PRODUCT_BUILD_USERDATA_IMAGE),true) BUILDING_USERDATA_IMAGE := true endif .KATI_READONLY := BUILDING_USERDATA_IMAGE ########################################### # Now we can substitute with the real value of TARGET_COPY_OUT_VENDOR ifeq ($(TARGET_COPY_OUT_VENDOR),$(_vendor_path_placeholder)) Loading @@ -316,6 +385,23 @@ BOARD_USES_VENDORIMAGE := true else ifdef BOARD_USES_VENDORIMAGE $(error TARGET_COPY_OUT_VENDOR must be set to 'vendor' to use a vendor image) endif .KATI_READONLY := BOARD_USES_VENDORIMAGE BUILDING_VENDOR_IMAGE := ifeq ($(PRODUCT_BUILD_VENDOR_IMAGE),) ifdef BOARD_VENDORIMAGE_FILE_SYSTEM_TYPE BUILDING_VENDOR_IMAGE := true endif else ifeq ($(PRODUCT_BUILD_VENDOR_IMAGE),true) BUILDING_VENDOR_IMAGE := true ifndef BOARD_VENDORIMAGE_FILE_SYSTEM_TYPE $(error PRODUCT_BUILD_VENDOR_IMAGE set to true, but BOARD_VENDORIMAGE_FILE_SYSTEM_TYPE not defined) endif endif ifdef BOARD_PREBUILT_VENDORIMAGE BUILDING_VENDOR_IMAGE := endif .KATI_READONLY := BUILDING_VENDOR_IMAGE ########################################### # Now we can substitute with the real value of TARGET_COPY_OUT_PRODUCT Loading @@ -338,6 +424,23 @@ BOARD_USES_PRODUCTIMAGE := true else ifdef BOARD_USES_PRODUCTIMAGE $(error TARGET_COPY_OUT_PRODUCT must be set to 'product' to use a product image) endif .KATI_READONLY := BOARD_USES_PRODUCTIMAGE BUILDING_PRODUCT_IMAGE := ifeq ($(PRODUCT_BUILD_PRODUCT_IMAGE),) ifdef BOARD_PRODUCTIMAGE_FILE_SYSTEM_TYPE BUILDING_PRODUCT_IMAGE := true endif else ifeq ($(PRODUCT_BUILD_PRODUCT_IMAGE),true) BUILDING_PRODUCT_IMAGE := true ifndef BOARD_PRODUCTIMAGE_FILE_SYSTEM_TYPE $(error PRODUCT_BUILD_PRODUCT_IMAGE set to true, but BOARD_PRODUCTIMAGE_FILE_SYSTEM_TYPE not defined) endif endif ifdef BOARD_PREBUILT_PRODUCTIMAGE BUILDING_PRODUCT_IMAGE := endif .KATI_READONLY := BUILDING_PRODUCT_IMAGE ########################################### # Now we can substitute with the real value of TARGET_COPY_OUT_PRODUCT_SERVICES Loading @@ -361,6 +464,22 @@ else ifdef BOARD_USES_PRODUCT_SERVICESIMAGE $(error TARGET_COPY_OUT_PRODUCT_SERVICES must be set to 'product_services' to use a product_services image) endif BUILDING_PRODUCT_SERVICES_IMAGE := ifeq ($(PRODUCT_SERVICES_BUILD_PRODUCT_SERVICES_IMAGE),) ifdef BOARD_PRODUCT_SERVICESIMAGE_FILE_SYSTEM_TYPE BUILDING_PRODUCT_SERVICES_IMAGE := true endif else ifeq ($(PRODUCT_BUILD_PRODUCT_SERVICES_IMAGE),true) BUILDING_PRODUCT_SERVICES_IMAGE := true ifndef BOARD_PRODUCT_SERVICESIMAGE_FILE_SYSTEM_TYPE $(error PRODUCT_BUILD_PRODUCT_SERVICES_IMAGE set to true, but BOARD_PRODUCT_SERVICESIMAGE_FILE_SYSTEM_TYPE not defined) endif endif ifdef BOARD_PREBUILT_PRODUCT_SERVICESIMAGE BUILDING_PRODUCT_SERVICES_IMAGE := endif .KATI_READONLY := BUILDING_PRODUCT_SERVICES_IMAGE ########################################### # Now we can substitute with the real value of TARGET_COPY_OUT_ODM ifeq ($(TARGET_COPY_OUT_ODM),$(_odm_path_placeholder)) Loading @@ -383,6 +502,22 @@ else ifdef BOARD_USES_ODMIMAGE $(error TARGET_COPY_OUT_ODM must be set to 'odm' to use an odm image) endif BUILDING_ODM_IMAGE := ifeq ($(ODM_BUILD_ODM_IMAGE),) ifdef BOARD_ODMIMAGE_FILE_SYSTEM_TYPE BUILDING_ODM_IMAGE := true endif else ifeq ($(PRODUCT_BUILD_ODM_IMAGE),true) BUILDING_ODM_IMAGE := true ifndef BOARD_ODMIMAGE_FILE_SYSTEM_TYPE $(error PRODUCT_BUILD_ODM_IMAGE set to true, but BOARD_ODMIMAGE_FILE_SYSTEM_TYPE not defined) endif endif ifdef BOARD_PREBUILT_ODMIMAGE BUILDING_ODM_IMAGE := endif .KATI_READONLY := BUILDING_ODM_IMAGE ########################################### # Ensure that only TARGET_RECOVERY_UPDATER_LIBS *or* AB_OTA_UPDATER is set. TARGET_RECOVERY_UPDATER_LIBS ?= Loading
core/product.mk +9 −0 Original line number Diff line number Diff line Loading @@ -216,6 +216,15 @@ _product_var_list := \ PRODUCT_OTA_ENFORCE_VINTF_KERNEL_REQUIREMENTS \ PRODUCT_XOM_EXCLUDE_PATHS \ PRODUCT_MANIFEST_PACKAGE_NAME_OVERRIDES \ PRODUCT_BUILD_SYSTEM_IMAGE \ PRODUCT_BUILD_SYSTEM_OTHER_IMAGE \ PRODUCT_BUILD_VENDOR_IMAGE \ PRODUCT_BUILD_PRODUCT_IMAGE \ PRODUCT_BUILD_PRODUCT_SERVICES_IMAGE \ PRODUCT_BUILD_ODM_IMAGE \ PRODUCT_BUILD_CACHE_IMAGE \ PRODUCT_BUILD_RAMDISK_IMAGE \ PRODUCT_BUILD_USERDATA_IMAGE \ define dump-product $(info ==== $(1) ====)\ Loading
core/product_config.mk +24 −0 Original line number Diff line number Diff line Loading @@ -566,3 +566,27 @@ PRODUCT_OTA_ENFORCE_VINTF_KERNEL_REQUIREMENTS := \ PRODUCT_MANIFEST_PACKAGE_NAME_OVERRIDES := \ $(strip $(PRODUCTS.$(INTERNAL_PRODUCT).PRODUCT_MANIFEST_PACKAGE_NAME_OVERRIDES)) .KATI_READONLY := PRODUCT_MANIFEST_PACKAGE_NAME_OVERRIDES # Macro to use below. $(1) is the name of the partition define product-build-image-config PRODUCT_BUILD_$(1)_IMAGE := $$(firstword $$(strip $$(PRODUCTS.$$(INTERNAL_PRODUCT).PRODUCT_BUILD_$(1)_IMAGE))) .KATI_READONLY := PRODUCT_BUILD_$(1)_IMAGE ifneq ($$(filter-out true false,$$(PRODUCT_BUILD_$(1)_IMAGE)),) $$(error Invalid PRODUCT_BUILD_$(1)_IMAGE: $$(PRODUCT_BUILD_$(1)_IMAGE) -- true false and empty are supported) endif endef # Copy and check the value of each PRODUCT_BUILD_*_IMAGE variable $(foreach image, \ SYSTEM \ SYSTEM_OTHER \ VENDOR \ PRODUCT \ PRODUCT_SERVICES \ ODM \ CACHE \ RAMDISK \ USERDATA, \ $(eval $(call product-build-image-config,$(image)))) product-build-image-config :=