Loading core/Makefile +146 −3 Original line number Diff line number Diff line Loading @@ -1179,7 +1179,14 @@ ifeq ($(TARGET_USERIMAGES_USE_F2FS),true) INTERNAL_USERIMAGES_DEPS += $(MKF2FSUSERIMG) endif ifneq ($(filter $(BOARD_PRODUCTIMAGE_FILE_SYSTEM_TYPE) $(BOARD_SYSTEM_EXTIMAGE_FILE_SYSTEM_TYPE) $(BOARD_ODMIMAGE_FILE_SYSTEM_TYPE) $(BOARD_VENDORIMAGE_FILE_SYSTEM_TYPE) $(BOARD_SYSTEMIMAGE_FILE_SYSTEM_TYPE),squashfs),) ifneq ($(filter \ $(BOARD_PRODUCTIMAGE_FILE_SYSTEM_TYPE) \ $(BOARD_SYSTEM_EXTIMAGE_FILE_SYSTEM_TYPE) \ $(BOARD_ODMIMAGE_FILE_SYSTEM_TYPE) \ $(BOARD_VENDORIMAGE_FILE_SYSTEM_TYPE) \ $(BOARD_SYSTEMIMAGE_FILE_SYSTEM_TYPE) \ $(BOARD_VENDOR_DLKMIMAGE_FILE_SYSTEM_TYPE) \ ,squashfs),) INTERNAL_USERIMAGES_DEPS += $(MKSQUASHFSUSERIMG) endif Loading Loading @@ -1209,7 +1216,7 @@ endif endif # PRODUCT_USE_DYNAMIC_PARTITIONS # $(1): the path of the output dictionary file # $(2): a subset of "system vendor cache userdata product system_ext oem odm" # $(2): a subset of "system vendor cache userdata product system_ext oem odm vendor_dlkm" # $(3): additional "key=value" pairs to append to the dictionary file. define generate-image-prop-dictionary $(if $(filter $(2),system),\ Loading Loading @@ -1305,6 +1312,20 @@ $(if $(filter $(2),odm),\ $(hide) echo "odm_selinux_fc=$(SELINUX_FC)" >> $(1) $(hide) echo "building_odm_image=$(BUILDING_ODM_IMAGE)" >> $(1) ) $(if $(filter $(2),vendor_dlkm),\ $(if $(BOARD_VENDOR_DLKMIMAGE_FILE_SYSTEM_TYPE),$(hide) echo "vendor_dlkm_fs_type=$(BOARD_VENDOR_DLKMIMAGE_FILE_SYSTEM_TYPE)" >> $(1)) $(if $(BOARD_VENDOR_DLKMIMAGE_EXTFS_INODE_COUNT),$(hide) echo "vendor_dlkm_extfs_inode_count=$(BOARD_VENDOR_DLKMIMAGE_EXTFS_INODE_COUNT)" >> $(1)) $(if $(BOARD_VENDOR_DLKMIMAGE_EXTFS_RSV_PCT),$(hide) echo "vendor_dlkm_extfs_rsv_pct=$(BOARD_VENDOR_DLKMIMAGE_EXTFS_RSV_PCT)" >> $(1)) $(if $(BOARD_VENDOR_DLKMIMAGE_PARTITION_SIZE),$(hide) echo "vendor_dlkm_size=$(BOARD_VENDOR_DLKMIMAGE_PARTITION_SIZE)" >> $(1)) $(if $(BOARD_VENDOR_DLKMIMAGE_JOURNAL_SIZE),$(hide) echo "vendor_dlkm_journal_size=$(BOARD_VENDOR_DLKMIMAGE_JOURNAL_SIZE)" >> $(1)) $(if $(BOARD_VENDOR_DLKMIMAGE_SQUASHFS_COMPRESSOR),$(hide) echo "vendor_dlkm_squashfs_compressor=$(BOARD_VENDOR_DLKMIMAGE_SQUASHFS_COMPRESSOR)" >> $(1)) $(if $(BOARD_VENDOR_DLKMIMAGE_SQUASHFS_COMPRESSOR_OPT),$(hide) echo "vendor_dlkm_squashfs_compressor_opt=$(BOARD_VENDOR_DLKMIMAGE_SQUASHFS_COMPRESSOR_OPT)" >> $(1)) $(if $(BOARD_VENDOR_DLKMIMAGE_SQUASHFS_BLOCK_SIZE),$(hide) echo "vendor_dlkm_squashfs_block_size=$(BOARD_VENDOR_DLKMIMAGE_SQUASHFS_BLOCK_SIZE)" >> $(1)) $(if $(BOARD_VENDOR_DLKMIMAGE_SQUASHFS_DISABLE_4K_ALIGN),$(hide) echo "vendor_dlkm_squashfs_disable_4k_align=$(BOARD_VENDOR_DLKMIMAGE_SQUASHFS_DISABLE_4K_ALIGN)" >> $(1)) $(if $(BOARD_VENDOR_DLKMIMAGE_PARTITION_RESERVED_SIZE),$(hide) echo "vendor_dlkm_reserved_size=$(BOARD_VENDOR_DLKMIMAGE_PARTITION_RESERVED_SIZE)" >> $(1)) $(hide) echo "vendor_dlkm_selinux_fc=$(SELINUX_FC)" >> $(1) $(hide) echo "building_vendor_dlkm_image=$(BUILDING_VENDOR_DLKM_IMAGE)" >> $(1) ) $(if $(filter $(2),oem),\ $(if $(BOARD_OEMIMAGE_PARTITION_SIZE),$(hide) echo "oem_size=$(BOARD_OEMIMAGE_PARTITION_SIZE)" >> $(1)) $(if $(BOARD_OEMIMAGE_JOURNAL_SIZE),$(hide) echo "oem_journal_size=$(BOARD_OEMIMAGE_JOURNAL_SIZE)" >> $(1)) Loading @@ -1331,6 +1352,7 @@ $(if $(PRODUCT_SYSTEM_VERITY_PARTITION),$(hide) echo "system_verity_block_device $(if $(PRODUCT_VENDOR_VERITY_PARTITION),$(hide) echo "vendor_verity_block_device=$(PRODUCT_VENDOR_VERITY_PARTITION)" >> $(1)) $(if $(PRODUCT_PRODUCT_VERITY_PARTITION),$(hide) echo "product_verity_block_device=$(PRODUCT_PRODUCT_VERITY_PARTITION)" >> $(1)) $(if $(PRODUCT_SYSTEM_EXT_VERITY_PARTITION),$(hide) echo "system_ext_verity_block_device=$(PRODUCT_SYSTEM_EXT_VERITY_PARTITION)" >> $(1)) $(if $(PRODUCT_VENDOR_DLKM_VERITY_PARTITION),$(hide) echo "vendor_dlkm_verity_block_device=$(PRODUCT_VENDOR_DLKM_VERITY_PARTITION)" >> $(1)) $(if $(PRODUCT_SUPPORTS_VBOOT),$(hide) echo "vboot=$(PRODUCT_SUPPORTS_VBOOT)" >> $(1)) $(if $(PRODUCT_SUPPORTS_VBOOT),$(hide) echo "vboot_key=$(PRODUCT_VBOOT_SIGNING_KEY)" >> $(1)) $(if $(PRODUCT_SUPPORTS_VBOOT),$(hide) echo "vboot_subkey=$(PRODUCT_VBOOT_SIGNING_SUBKEY)" >> $(1)) Loading Loading @@ -1379,6 +1401,14 @@ $(if $(BOARD_AVB_ENABLE),\ $(hide) echo "avb_odm_key_path=$(BOARD_AVB_ODM_KEY_PATH)" >> $(1) $(hide) echo "avb_odm_algorithm=$(BOARD_AVB_ODM_ALGORITHM)" >> $(1) $(hide) echo "avb_odm_rollback_index_location=$(BOARD_AVB_ODM_ROLLBACK_INDEX_LOCATION)" >> $(1))) $(if $(BOARD_AVB_ENABLE),$(hide) echo "avb_vendor_dlkm_hashtree_enable=$(BOARD_AVB_ENABLE)" >> $(1)) $(if $(BOARD_AVB_ENABLE),\ $(hide) echo "avb_vendor_dlkm_add_hashtree_footer_args=$(BOARD_AVB_VENDOR_DLKM_ADD_HASHTREE_FOOTER_ARGS)" >> $(1)) $(if $(BOARD_AVB_ENABLE),\ $(if $(BOARD_AVB_VENDOR_DLKM_KEY_PATH),\ $(hide) echo "avb_vendor_dlkm_key_path=$(BOARD_AVB_VENDOR_DLKM_KEY_PATH)" >> $(1) $(hide) echo "avb_vendor_dlkm_algorithm=$(BOARD_AVB_VENDOR_DLKM_ALGORITHM)" >> $(1) $(hide) echo "avb_vendor_dlkm_rollback_index_location=$(BOARD_AVB_VENDOR_DLKM_ROLLBACK_INDEX_LOCATION)" >> $(1))) $(if $(filter true,$(BOARD_USES_RECOVERY_AS_BOOT)),\ $(hide) echo "recovery_as_boot=true" >> $(1)) $(if $(filter true,$(BOARD_BUILD_SYSTEM_ROOT_IMAGE)),\ Loading Loading @@ -1416,6 +1446,9 @@ endif ifdef BUILDING_ODM_IMAGE PROP_DICTIONARY_IMAGES += odm endif ifdef BUILDING_VENDOR_DLKM_IMAGE PROP_DICTIONARY_IMAGES += vendor_dlkm endif define generate-userimage-prop-dictionary $(call generate-image-prop-dictionary,$(1),$(PROP_DICTIONARY_IMAGES),$(2)) endef Loading Loading @@ -2408,6 +2441,9 @@ endif ifdef BUILDING_ODM_IMAGE echo "-D $(TARGET_OUT_ODM)" >> $@.lst endif ifdef BUILDING_VENDOR_DLKM_IMAGE echo "-D $(TARGET_OUT_VENDOR_DLKM)" >> $@.lst endif ifneq ($(PDK_PLATFORM_JAVA_ZIP_CONTENTS),) echo "-C $(OUT_DIR)" >> $@.lst for f in $(filter-out $(PRIVATE_DEX_FILES),$(addprefix -f $(OUT_DIR)/,$(PDK_PLATFORM_JAVA_ZIP_CONTENTS))); do \ Loading Loading @@ -2874,6 +2910,61 @@ INSTALLED_ODMIMAGE_TARGET := $(PRODUCT_OUT)/odm.img $(eval $(call copy-one-file,$(BOARD_PREBUILT_ODMIMAGE),$(INSTALLED_ODMIMAGE_TARGET))) endif # ----------------------------------------------------------------- # vendor_dlkm partition image ifdef BUILDING_VENDOR_DLKM_IMAGE INTERNAL_VENDOR_DLKMIMAGE_FILES := \ $(filter $(TARGET_OUT_VENDOR_DLKM)/%,\ $(ALL_DEFAULT_INSTALLED_MODULES)\ $(ALL_PDK_FUSION_FILES)) \ $(PDK_FUSION_SYMLINK_STAMP) # platform.zip depends on $(INTERNAL_VENDOR_DLKMIMAGE_FILES). $(INSTALLED_PLATFORM_ZIP) : $(INTERNAL_VENDOR_DLKMIMAGE_FILES) INSTALLED_FILES_FILE_VENDOR_DLKM := $(PRODUCT_OUT)/installed-files-vendor_dlkm.txt INSTALLED_FILES_JSON_VENDOR_DLKM := $(INSTALLED_FILES_FILE_VENDOR_DLKM:.txt=.json) $(INSTALLED_FILES_FILE_VENDOR_DLKM): .KATI_IMPLICIT_OUTPUTS := $(INSTALLED_FILES_JSON_VENDOR_DLKM) $(INSTALLED_FILES_FILE_VENDOR_DLKM) : $(INTERNAL_VENDOR_DLKMIMAGE_FILES) $(FILESLIST) $(FILESLIST_UTIL) @echo Installed file list: $@ @mkdir -p $(dir $@) @rm -f $@ $(hide) $(FILESLIST) $(TARGET_OUT_VENDOR_DLKM) > $(@:.txt=.json) $(hide) $(FILESLIST_UTIL) -c $(@:.txt=.json) > $@ vendor_dlkmimage_intermediates := \ $(call intermediates-dir-for,PACKAGING,vendor_dlkm) BUILT_VENDOR_DLKMIMAGE_TARGET := $(PRODUCT_OUT)/vendor_dlkm.img define build-vendor_dlkmimage-target $(call pretty,"Target vendor_dlkm fs image: $(INSTALLED_VENDOR_DLKMIMAGE_TARGET)") @mkdir -p $(TARGET_OUT_VENDOR_DLKM) @mkdir -p $(vendor_dlkmimage_intermediates) && rm -rf $(vendor_dlkmimage_intermediates)/vendor_dlkm_image_info.txt $(call generate-userimage-prop-dictionary, $(vendor_dlkmimage_intermediates)/vendor_dlkm_image_info.txt, skip_fsck=true) PATH=$(INTERNAL_USERIMAGES_BINARY_PATHS):$$PATH \ $(BUILD_IMAGE) \ $(TARGET_OUT_VENDOR_DLKM) $(vendor_dlkmimage_intermediates)/vendor_dlkm_image_info.txt \ $(INSTALLED_VENDOR_DLKMIMAGE_TARGET) $(TARGET_OUT) $(call assert-max-image-size,$(INSTALLED_VENDOR_DLKMIMAGE_TARGET),$(BOARD_VENDOR_DLKMIMAGE_PARTITION_SIZE)) endef # We just build this directly to the install location. INSTALLED_VENDOR_DLKMIMAGE_TARGET := $(BUILT_VENDOR_DLKMIMAGE_TARGET) $(INSTALLED_VENDOR_DLKMIMAGE_TARGET): \ $(INTERNAL_USERIMAGES_DEPS) \ $(INTERNAL_VENDOR_DLKMIMAGE_FILES) \ $(INSTALLED_FILES_FILE_VENDOR_DLKM) $(build-vendor_dlkmimage-target) .PHONY: vendor_dlkmimage-nodeps vdnod vendor_dlkmimage-nodeps vdnod: | $(INTERNAL_USERIMAGES_DEPS) $(build-vendor_dlkmimage-target) sync: $(INTERNAL_VENDOR_DLKMIMAGE_FILES) else ifdef BOARD_PREBUILT_VENDOR_DLKMIMAGE INSTALLED_VENDOR_DLKMIMAGE_TARGET := $(PRODUCT_OUT)/vendor_dlkm.img $(eval $(call copy-one-file,$(BOARD_PREBUILT_VENDOR_DLKMIMAGE),$(INSTALLED_VENDOR_DLKMIMAGE_TARGET))) endif # ----------------------------------------------------------------- # dtbo image ifdef BOARD_PREBUILT_DTBOIMAGE Loading Loading @@ -3030,6 +3121,10 @@ BOARD_AVB_ODM_ADD_HASHTREE_FOOTER_ARGS += \ --prop com.android.build.odm.fingerprint:$(BUILD_FINGERPRINT_FROM_FILE) \ --prop com.android.build.odm.os_version:$(PLATFORM_VERSION_LAST_STABLE) BOARD_AVB_VENDOR_DLKM_ADD_HASHTREE_FOOTER_ARGS += \ --prop com.android.build.vendor_dlkm.fingerprint:$(BUILD_FINGERPRINT_FROM_FILE) \ --prop com.android.build.vendor_dlkm.os_version:$(PLATFORM_VERSION_LAST_STABLE) BOARD_AVB_DTBO_ADD_HASH_FOOTER_ARGS += \ --prop com.android.build.dtbo.fingerprint:$(BUILD_FINGERPRINT_FROM_FILE) Loading @@ -3049,6 +3144,11 @@ BOARD_AVB_ODM_ADD_HASHTREE_FOOTER_ARGS += \ --prop com.android.build.odm.security_patch:$(ODM_SECURITY_PATCH) endif ifdef VENDOR_DLKM_SECURITY_PATCH BOARD_AVB_VENDOR_DLKM_ADD_HASHTREE_FOOTER_ARGS += \ --prop com.android.build.vendor_dlkm.security_patch:$(VENDOR_DLKM_SECURITY_PATCH) endif BOOT_FOOTER_ARGS := BOARD_AVB_BOOT_ADD_HASH_FOOTER_ARGS VENDOR_BOOT_FOOTER_ARGS := BOARD_AVB_VENDOR_BOOT_ADD_HASH_FOOTER_ARGS DTBO_FOOTER_ARGS := BOARD_AVB_DTBO_ADD_HASH_FOOTER_ARGS Loading @@ -3058,6 +3158,7 @@ RECOVERY_FOOTER_ARGS := BOARD_AVB_RECOVERY_ADD_HASH_FOOTER_ARGS PRODUCT_FOOTER_ARGS := BOARD_AVB_PRODUCT_ADD_HASHTREE_FOOTER_ARGS SYSTEM_EXT_FOOTER_ARGS := BOARD_AVB_SYSTEM_EXT_ADD_HASHTREE_FOOTER_ARGS ODM_FOOTER_ARGS := BOARD_AVB_ODM_ADD_HASHTREE_FOOTER_ARGS VENDOR_DLKM_FOOTER_ARGS := BOARD_AVB_VENDOR_DLKM_ADD_HASHTREE_FOOTER_ARGS # Helper function that checks and sets required build variables for an AVB chained partition. # $(1): the partition to enable AVB chain, e.g., boot or system or vbmeta_system. Loading Loading @@ -3152,6 +3253,10 @@ ifdef INSTALLED_ODMIMAGE_TARGET $(eval $(call check-and-set-avb-args,odm)) endif ifdef INSTALLED_VENDOR_DLKMIMAGE_TARGET $(eval $(call check-and-set-avb-args,vendor_dlkm)) endif ifdef INSTALLED_DTBOIMAGE_TARGET $(eval $(call check-and-set-avb-args,dtbo)) endif Loading Loading @@ -3232,6 +3337,9 @@ define extract-avb-chain-public-keys $(if $(BOARD_AVB_ODM_KEY_PATH),\ $(hide) $(AVBTOOL) extract_public_key --key $(BOARD_AVB_ODM_KEY_PATH) \ --output $(1)/odm.avbpubkey) $(if $(BOARD_AVB_VENDOR_DLKM_KEY_PATH),\ $(hide) $(AVBTOOL) extract_public_key --key $(BOARD_AVB_VENDOR_DLKM_KEY_PATH) \ --output $(1)/vendor_dlkm.avbpubkey) $(if $(BOARD_AVB_DTBO_KEY_PATH),\ $(hide) $(AVBTOOL) extract_public_key --key $(BOARD_AVB_DTBO_KEY_PATH) \ --output $(1)/dtbo.avbpubkey) Loading Loading @@ -3314,6 +3422,7 @@ $(INSTALLED_VBMETAIMAGE_TARGET): \ $(INSTALLED_PRODUCTIMAGE_TARGET) \ $(INSTALLED_SYSTEM_EXTIMAGE_TARGET) \ $(INSTALLED_ODMIMAGE_TARGET) \ $(INSTALLED_VENDOR_DLKMIMAGE_TARGET) \ $(INSTALLED_DTBOIMAGE_TARGET) \ $(INSTALLED_CUSTOMIMAGES_TARGET) \ $(INSTALLED_RECOVERYIMAGE_TARGET) \ Loading @@ -3336,7 +3445,9 @@ endif # BOARD_AVB_ENABLE # ----------------------------------------------------------------- # Check VINTF of build # Note: vendor_dlkm does not have VINTF files. ifeq (,$(TARGET_BUILD_UNBUNDLED)) intermediates := $(call intermediates-dir-for,PACKAGING,check_vintf_all) check_vintf_all_deps := Loading Loading @@ -4121,6 +4232,7 @@ $(BUILT_TARGET_FILES_PACKAGE): \ $(INSTALLED_SYSTEM_EXTIMAGE_TARGET) \ $(INSTALLED_VBMETAIMAGE_TARGET) \ $(INSTALLED_ODMIMAGE_TARGET) \ $(INSTALLED_VENDOR_DLKMIMAGE_TARGET) \ $(INSTALLED_DTBOIMAGE_TARGET) \ $(INSTALLED_CUSTOMIMAGES_TARGET) \ $(INTERNAL_SYSTEMOTHERIMAGE_FILES) \ Loading @@ -4136,6 +4248,7 @@ $(BUILT_TARGET_FILES_PACKAGE): \ $(PRODUCT_PRODUCT_BASE_FS_PATH) \ $(PRODUCT_SYSTEM_EXT_BASE_FS_PATH) \ $(PRODUCT_ODM_BASE_FS_PATH) \ $(PRODUCT_VENDOR_DLKM_BASE_FS_PATH) \ $(LPMAKE) \ $(SELINUX_FC) \ $(INSTALLED_MISC_INFO_TARGET) \ Loading Loading @@ -4273,6 +4386,11 @@ ifdef BUILDING_ODM_IMAGE $(hide) $(call package_files-copy-root, \ $(TARGET_OUT_ODM),$(zip_root)/ODM) endif ifdef BUILDING_VENDOR_DLKM_IMAGE @# Contents of the vendor_dlkm image $(hide) $(call package_files-copy-root, \ $(TARGET_OUT_VENDOR_DLKM),$(zip_root)/VENDOR_DLKM) endif ifdef BUILDING_SYSTEM_OTHER_IMAGE @# Contents of the system_other image $(hide) $(call package_files-copy-root, \ Loading Loading @@ -4318,6 +4436,10 @@ ifneq ($(PRODUCT_ODM_BASE_FS_PATH),) $(hide) cp $(PRODUCT_ODM_BASE_FS_PATH) \ $(zip_root)/META/$(notdir $(PRODUCT_ODM_BASE_FS_PATH)) endif ifneq ($(PRODUCT_VENDOR_DLKM_BASE_FS_PATH),) $(hide) cp $(PRODUCT_VENDOR_DLKM_BASE_FS_PATH) \ $(zip_root)/META/$(notdir $(PRODUCT_VENDOR_DLKM_BASE_FS_PATH)) endif ifeq ($(TARGET_OTA_ALLOW_NON_AB),true) ifneq ($(INSTALLED_RECOVERYIMAGE_TARGET),) $(hide) PATH=$(INTERNAL_USERIMAGES_BINARY_PATHS):$$PATH MKBOOTIMG=$(MKBOOTIMG) \ Loading Loading @@ -4363,6 +4485,10 @@ ifdef BOARD_PREBUILT_ODMIMAGE $(hide) mkdir -p $(zip_root)/IMAGES $(hide) cp $(INSTALLED_ODMIMAGE_TARGET) $(zip_root)/IMAGES/ endif ifdef BOARD_PREBUILT_VENDOR_DLKIMMAGE $(hide) mkdir -p $(zip_root)/IMAGES $(hide) cp $(INSTALLED_VENDOR_DLKIMMAGE_TARGET) $(zip_root)/IMAGES/ endif ifdef BOARD_PREBUILT_DTBOIMAGE $(hide) mkdir -p $(zip_root)/PREBUILT_IMAGES $(hide) cp $(INSTALLED_DTBOIMAGE_TARGET) $(zip_root)/PREBUILT_IMAGES/ Loading Loading @@ -4393,6 +4519,9 @@ ifdef BUILDING_SYSTEM_EXT_IMAGE endif ifdef BUILDING_ODM_IMAGE $(hide) $(call fs_config,$(zip_root)/ODM,odm/) > $(zip_root)/META/odm_filesystem_config.txt endif ifdef BUILDING_VENDOR_DLKM_IMAGE $(hide) $(call fs_config,$(zip_root)/VENDOR_DLKM,vendor_dlkm/) > $(zip_root)/META/vendor_dlkm_filesystem_config.txt endif @# ROOT always contains the files for the root under normal boot. $(hide) $(call fs_config,$(zip_root)/ROOT,) > $(zip_root)/META/root_filesystem_config.txt Loading Loading @@ -4552,6 +4681,7 @@ $(SYMBOLS_ZIP): $(INSTALLED_SYSTEMIMAGE_TARGET) \ $(INSTALLED_PRODUCTIMAGE_TARGET) \ $(INSTALLED_SYSTEM_EXTIMAGE_TARGET) \ $(INSTALLED_ODMIMAGE_TARGET) \ $(INSTALLED_VENDOR_DLKMIMAGE_TARGET) \ $(updater_dep) endif $(SYMBOLS_ZIP): PRIVATE_LIST_FILE := $(call intermediates-dir-for,PACKAGING,symbols)/filelist Loading @@ -4577,7 +4707,8 @@ $(COVERAGE_ZIP): $(INSTALLED_SYSTEMIMAGE_TARGET) \ $(INSTALLED_VENDORIMAGE_TARGET) \ $(INSTALLED_PRODUCTIMAGE_TARGET) \ $(INSTALLED_SYSTEM_EXTIMAGE_TARGET) \ $(INSTALLED_ODMIMAGE_TARGET) $(INSTALLED_ODMIMAGE_TARGET) \ $(INSTALLED_VENDOR_DLKMIMAGE_TARGET) endif $(COVERAGE_ZIP): PRIVATE_LIST_FILE := $(call intermediates-dir-for,PACKAGING,coverage)/filelist $(COVERAGE_ZIP): $(SOONG_ZIP) Loading Loading @@ -4654,6 +4785,7 @@ $(PROGUARD_DICT_ZIP): \ $(INSTALLED_PRODUCTIMAGE_TARGET) \ $(INSTALLED_SYSTEM_EXTIMAGE_TARGET) \ $(INSTALLED_ODMIMAGE_TARGET) \ $(INSTALLED_VENDOR_DLKMIMAGE_TARGET) \ $(updater_dep) endif $(PROGUARD_DICT_ZIP): PRIVATE_LIST_FILE := $(call intermediates-dir-for,PACKAGING,proguard)/filelist Loading Loading @@ -4892,6 +5024,17 @@ odmimage: $(INSTALLED_QEMU_ODMIMAGE) droidcore: $(INSTALLED_QEMU_ODMIMAGE) endif ifdef INSTALLED_VENDOR_DLKMIMAGE_TARGET INSTALLED_QEMU_VENDOR_DLKMIMAGE := $(PRODUCT_OUT)/vendor_dlkm-qemu.img $(INSTALLED_QEMU_VENDOR_DLKMIMAGE): $(INSTALLED_VENDOR_DLKMIMAGE_TARGET) $(MK_QEMU_IMAGE_SH) $(SGDISK_HOST) @echo Create vendor_dlkm-qemu.img (export SGDISK=$(SGDISK_HOST); $(MK_QEMU_IMAGE_SH) $(INSTALLED_VENDOR_DLKMIMAGE_TARGET)) vendor_dlkmimage: $(INSTALLED_QEMU_VENDOR_DLKMIMAGE) droidcore: $(INSTALLED_QEMU_VENDOR_DLKMIMAGE) endif QEMU_VERIFIED_BOOT_PARAMS := $(PRODUCT_OUT)/VerifiedBootParams.textproto $(QEMU_VERIFIED_BOOT_PARAMS): $(INSTALLED_VBMETAIMAGE_TARGET) $(INSTALLED_SYSTEMIMAGE_TARGET) \ $(MK_VBMETA_BOOT_KERNEL_CMDLINE_SH) $(AVBTOOL) Loading core/board_config.mk +37 −0 Original line number Diff line number Diff line Loading @@ -72,12 +72,15 @@ _board_strip_readonly_list += \ BOARD_SYSTEM_EXTIMAGE_FILE_SYSTEM_TYPE \ BOARD_ODMIMAGE_PARTITION_SIZE \ BOARD_ODMIMAGE_FILE_SYSTEM_TYPE \ BOARD_VENDOR_DLKMIMAGE_PARTITION_SIZE \ BOARD_VENDOR_DLKMIMAGE_FILE_SYSTEM_TYPE \ # Logical partitions related variables. _dynamic_partitions_var_list += \ BOARD_SYSTEMIMAGE_PARTITION_RESERVED_SIZE \ BOARD_VENDORIMAGE_PARTITION_RESERVED_SIZE \ BOARD_ODMIMAGE_PARTITION_RESERVED_SIZE \ BOARD_VENDOR_DLKMIMAGE_PARTITION_RESERVED_SIZE \ BOARD_PRODUCTIMAGE_PARTITION_RESERVED_SIZE \ BOARD_SYSTEM_EXTIMAGE_PARTITION_RESERVED_SIZE \ BOARD_SUPER_PARTITION_SIZE \ Loading Loading @@ -511,6 +514,40 @@ ifdef BOARD_PREBUILT_SYSTEM_EXTIMAGE endif .KATI_READONLY := BUILDING_SYSTEM_EXT_IMAGE ########################################### # Now we can substitute with the real value of TARGET_COPY_OUT_VENDOR_DLKM ifeq ($(TARGET_COPY_OUT_VENDOR_DLKM),$(_vendor_dlkm_path_placeholder)) TARGET_COPY_OUT_VENDOR_DLKM := $(TARGET_COPY_OUT_VENDOR)/vendor_dlkm else ifeq ($(filter vendor_dlkm system/vendor/vendor_dlkm vendor/vendor_dlkm,$(TARGET_COPY_OUT_VENDOR_DLKM)),) $(error TARGET_COPY_OUT_VENDOR_DLKM must be either 'vendor_dlkm', 'system/vendor/vendor_dlkm' or 'vendor/vendor_dlkm', seeing '$(TARGET_COPY_OUT_VENDOR_DLKM)'.) endif PRODUCT_COPY_FILES := $(subst $(_vendor_dlkm_path_placeholder),$(TARGET_COPY_OUT_VENDOR_DLKM),$(PRODUCT_COPY_FILES)) BOARD_USES_VENDOR_DLKMIMAGE := ifdef BOARD_PREBUILT_VENDOR_DLKMIMAGE BOARD_USES_VENDOR_DLKMIMAGE := true endif ifdef BOARD_VENDOR_DLKMIMAGE_FILE_SYSTEM_TYPE BOARD_USES_VENDOR_DLKMIMAGE := true endif $(call check_image_config,vendor_dlkm) BUILDING_VENDOR_DLKM_IMAGE := ifeq ($(PRODUCT_BUILD_VENDOR_DLKM_IMAGE),) ifdef BOARD_VENDOR_DLKMIMAGE_FILE_SYSTEM_TYPE BUILDING_VENDOR_DLKM_IMAGE := true endif else ifeq ($(PRODUCT_BUILD_VENDOR_DLKM_IMAGE),true) BUILDING_VENDOR_DLKM_IMAGE := true ifndef BOARD_VENDOR_DLKMIMAGE_FILE_SYSTEM_TYPE $(error PRODUCT_BUILD_VENDOR_DLKM_IMAGE set to true, but BOARD_VENDOR_DLKMIMAGE_FILE_SYSTEM_TYPE not defined) endif endif ifdef BOARD_PREBUILT_VENDOR_DLKMIMAGE BUILDING_VENDOR_DLKM_IMAGE := endif .KATI_READONLY := BUILDING_VENDOR_DLKM_IMAGE ########################################### # Now we can substitute with the real value of TARGET_COPY_OUT_ODM ifeq ($(TARGET_COPY_OUT_ODM),$(_odm_path_placeholder)) Loading core/config.mk +8 −1 Original line number Diff line number Diff line Loading @@ -930,6 +930,13 @@ $(error Should not define BOARD_ODMIMAGE_PARTITION_SIZE and \ endif endif ifneq ($(BOARD_VENDOR_DLKMIMAGE_PARTITION_SIZE),) ifneq ($(BOARD_VENDOR_DLKMIMAGE_PARTITION_RESERVED_SIZE),) $(error Should not define BOARD_VENDOR_DLKMIMAGE_PARTITION_SIZE and \ BOARD_VENDOR_DLKMIMAGE_PARTITION_RESERVED_SIZE together) endif endif ifneq ($(BOARD_PRODUCTIMAGE_PARTITION_SIZE),) ifneq ($(BOARD_PRODUCTIMAGE_PARTITION_RESERVED_SIZE),) $(error Should not define BOARD_PRODUCTIMAGE_PARTITION_SIZE and \ Loading Loading @@ -965,7 +972,7 @@ $(foreach group,$(call to-upper,$(BOARD_SUPER_PARTITION_GROUPS)), \ ) # BOARD_*_PARTITION_LIST: a list of the following tokens valid_super_partition_list := system vendor product system_ext odm valid_super_partition_list := system vendor product system_ext odm vendor_dlkm $(foreach group,$(call to-upper,$(BOARD_SUPER_PARTITION_GROUPS)), \ $(if $(filter-out $(valid_super_partition_list),$(BOARD_$(group)_PARTITION_LIST)), \ $(error BOARD_$(group)_PARTITION_LIST contains invalid partition name \ Loading core/envsetup.mk +36 −0 Original line number Diff line number Diff line Loading @@ -253,6 +253,7 @@ _vendor_path_placeholder := ||VENDOR-PATH-PH|| _product_path_placeholder := ||PRODUCT-PATH-PH|| _system_ext_path_placeholder := ||SYSTEM_EXT-PATH-PH|| _odm_path_placeholder := ||ODM-PATH-PH|| _vendor_dlkm_path_placeholder := ||VENDOR_DLKM-PATH-PH|| TARGET_COPY_OUT_VENDOR := $(_vendor_path_placeholder) TARGET_COPY_OUT_VENDOR_RAMDISK := vendor-ramdisk TARGET_COPY_OUT_PRODUCT := $(_product_path_placeholder) Loading @@ -261,6 +262,7 @@ TARGET_COPY_OUT_PRODUCT := $(_product_path_placeholder) TARGET_COPY_OUT_PRODUCT_SERVICES := $(_product_path_placeholder) TARGET_COPY_OUT_SYSTEM_EXT := $(_system_ext_path_placeholder) TARGET_COPY_OUT_ODM := $(_odm_path_placeholder) TARGET_COPY_OUT_VENDOR_DLKM := $(_vendor_dlkm_path_placeholder) # Returns the non-sanitized version of the path provided in $1. define get_non_asan_path Loading Loading @@ -719,6 +721,40 @@ $(TARGET_2ND_ARCH_VAR_PREFIX)TARGET_OUT_ODM_APPS_PRIVILEGED := $(TARGET_OUT_ODM_ $(TARGET_2ND_ARCH_VAR_PREFIX)TARGET_OUT_ODM_APPS \ $(TARGET_2ND_ARCH_VAR_PREFIX)TARGET_OUT_ODM_APPS_PRIVILEGED TARGET_OUT_VENDOR_DLKM := $(PRODUCT_OUT)/$(TARGET_COPY_OUT_VENDOR_DLKM) TARGET_OUT_VENDOR_DLKM_ETC := $(TARGET_OUT_VENDOR_DLKM)/etc .KATI_READONLY := \ TARGET_OUT_VENDOR_DLKM_ETC # Unlike other partitions, vendor_dlkm should only contain kernel modules. TARGET_OUT_VENDOR_DLKM_EXECUTABLES := TARGET_OUT_VENDOR_DLKM_OPTIONAL_EXECUTABLES := TARGET_OUT_VENDOR_DLKM_SHARED_LIBRARIES := TARGET_OUT_VENDOR_DLKM_RENDERSCRIPT_BITCODE := TARGET_OUT_VENDOR_DLKM_JAVA_LIBRARIES := TARGET_OUT_VENDOR_DLKM_APPS := TARGET_OUT_VENDOR_DLKM_APPS_PRIVILEGED := $(TARGET_2ND_ARCH_VAR_PREFIX)TARGET_OUT_VENDOR_DLKM_EXECUTABLES := $(TARGET_2ND_ARCH_VAR_PREFIX)TARGET_OUT_VENDOR_DLKM_SHARED_LIBRARIES := $(TARGET_2ND_ARCH_VAR_PREFIX)TARGET_OUT_VENDOR_DLKM_RENDERSCRIPT_BITCODE := $(TARGET_2ND_ARCH_VAR_PREFIX)TARGET_OUT_VENDOR_DLKM_APPS := $(TARGET_2ND_ARCH_VAR_PREFIX)TARGET_OUT_VENDOR_DLKM_APPS_PRIVILEGED := $(KATI_obsolete_var \ TARGET_OUT_VENDOR_DLKM_EXECUTABLES \ TARGET_OUT_VENDOR_DLKM_OPTIONAL_EXECUTABLES \ TARGET_OUT_VENDOR_DLKM_SHARED_LIBRARIES \ TARGET_OUT_VENDOR_DLKM_RENDERSCRIPT_BITCODE \ TARGET_OUT_VENDOR_DLKM_JAVA_LIBRARIES \ TARGET_OUT_VENDOR_DLKM_APPS \ TARGET_OUT_VENDOR_DLKM_APPS_PRIVILEGED \ $(TARGET_2ND_ARCH_VAR_PREFIX)TARGET_OUT_VENDOR_DLKM_EXECUTABLES \ $(TARGET_2ND_ARCH_VAR_PREFIX)TARGET_OUT_VENDOR_DLKM_SHARED_LIBRARIES \ $(TARGET_2ND_ARCH_VAR_PREFIX)TARGET_OUT_VENDOR_DLKM_RENDERSCRIPT_BITCODE \ $(TARGET_2ND_ARCH_VAR_PREFIX)TARGET_OUT_VENDOR_DLKM_APPS \ $(TARGET_2ND_ARCH_VAR_PREFIX)TARGET_OUT_VENDOR_DLKM_APPS_PRIVILEGED \ , vendor_dlkm should not contain any executables, libraries, or apps) TARGET_OUT_PRODUCT := $(PRODUCT_OUT)/$(TARGET_COPY_OUT_PRODUCT) TARGET_OUT_PRODUCT_EXECUTABLES := $(TARGET_OUT_PRODUCT)/bin .KATI_READONLY := TARGET_OUT_PRODUCT Loading core/main.mk +10 −1 Original line number Diff line number Diff line Loading @@ -1143,7 +1143,8 @@ define resolve-product-relative-paths $(subst $(_product_path_placeholder),$(TARGET_COPY_OUT_PRODUCT),\ $(subst $(_system_ext_path_placeholder),$(TARGET_COPY_OUT_SYSTEM_EXT),\ $(subst $(_odm_path_placeholder),$(TARGET_COPY_OUT_ODM),\ $(foreach p,$(1),$(call append-path,$(PRODUCT_OUT),$(p)$(2))))))) $(subst $(_vendor_dlkm_path_placeholder),$(TARGET_COPY_OUT_VENDOR_DLKM),\ $(foreach p,$(1),$(call append-path,$(PRODUCT_OUT),$(p)$(2)))))))) endef # Returns modules included automatically as a result of certain BoardConfig Loading Loading @@ -1521,6 +1522,9 @@ systemextimage: $(INSTALLED_SYSTEM_EXTIMAGE_TARGET) .PHONY: odmimage odmimage: $(INSTALLED_ODMIMAGE_TARGET) .PHONY: vendor_dlkmimage vendor_dlkmimage: $(INSTALLED_VENDOR_DLKMIMAGE_TARGET) .PHONY: systemotherimage systemotherimage: $(INSTALLED_SYSTEMOTHERIMAGE_TARGET) Loading Loading @@ -1558,6 +1562,7 @@ droidcore: $(filter $(HOST_OUT_ROOT)/%,$(modules_to_install)) \ $(INSTALLED_VENDOR_DEBUG_RAMDISK_TARGET) \ $(INSTALLED_VENDOR_DEBUG_BOOTIMAGE_TARGET) \ $(INSTALLED_ODMIMAGE_TARGET) \ $(INSTALLED_VENDOR_DLKMIMAGE_TARGET) \ $(INSTALLED_SUPERIMAGE_EMPTY_TARGET) \ $(INSTALLED_PRODUCTIMAGE_TARGET) \ $(INSTALLED_SYSTEMOTHERIMAGE_TARGET) \ Loading @@ -1567,6 +1572,8 @@ droidcore: $(filter $(HOST_OUT_ROOT)/%,$(modules_to_install)) \ $(INSTALLED_FILES_JSON_VENDOR) \ $(INSTALLED_FILES_FILE_ODM) \ $(INSTALLED_FILES_JSON_ODM) \ $(INSTALLED_FILES_FILE_VENDOR_DLKM) \ $(INSTALLED_FILES_JSON_VENDOR_DLKM) \ $(INSTALLED_FILES_FILE_PRODUCT) \ $(INSTALLED_FILES_JSON_PRODUCT) \ $(INSTALLED_FILES_FILE_SYSTEM_EXT) \ Loading Loading @@ -1662,6 +1669,8 @@ else ifeq (,$(TARGET_BUILD_UNBUNDLED)) $(INSTALLED_FILES_JSON_VENDOR) \ $(INSTALLED_FILES_FILE_ODM) \ $(INSTALLED_FILES_JSON_ODM) \ $(INSTALLED_FILES_FILE_VENDOR_DLKM) \ $(INSTALLED_FILES_JSON_VENDOR_DLKM) \ $(INSTALLED_FILES_FILE_PRODUCT) \ $(INSTALLED_FILES_JSON_PRODUCT) \ $(INSTALLED_FILES_FILE_SYSTEM_EXT) \ Loading Loading
core/Makefile +146 −3 Original line number Diff line number Diff line Loading @@ -1179,7 +1179,14 @@ ifeq ($(TARGET_USERIMAGES_USE_F2FS),true) INTERNAL_USERIMAGES_DEPS += $(MKF2FSUSERIMG) endif ifneq ($(filter $(BOARD_PRODUCTIMAGE_FILE_SYSTEM_TYPE) $(BOARD_SYSTEM_EXTIMAGE_FILE_SYSTEM_TYPE) $(BOARD_ODMIMAGE_FILE_SYSTEM_TYPE) $(BOARD_VENDORIMAGE_FILE_SYSTEM_TYPE) $(BOARD_SYSTEMIMAGE_FILE_SYSTEM_TYPE),squashfs),) ifneq ($(filter \ $(BOARD_PRODUCTIMAGE_FILE_SYSTEM_TYPE) \ $(BOARD_SYSTEM_EXTIMAGE_FILE_SYSTEM_TYPE) \ $(BOARD_ODMIMAGE_FILE_SYSTEM_TYPE) \ $(BOARD_VENDORIMAGE_FILE_SYSTEM_TYPE) \ $(BOARD_SYSTEMIMAGE_FILE_SYSTEM_TYPE) \ $(BOARD_VENDOR_DLKMIMAGE_FILE_SYSTEM_TYPE) \ ,squashfs),) INTERNAL_USERIMAGES_DEPS += $(MKSQUASHFSUSERIMG) endif Loading Loading @@ -1209,7 +1216,7 @@ endif endif # PRODUCT_USE_DYNAMIC_PARTITIONS # $(1): the path of the output dictionary file # $(2): a subset of "system vendor cache userdata product system_ext oem odm" # $(2): a subset of "system vendor cache userdata product system_ext oem odm vendor_dlkm" # $(3): additional "key=value" pairs to append to the dictionary file. define generate-image-prop-dictionary $(if $(filter $(2),system),\ Loading Loading @@ -1305,6 +1312,20 @@ $(if $(filter $(2),odm),\ $(hide) echo "odm_selinux_fc=$(SELINUX_FC)" >> $(1) $(hide) echo "building_odm_image=$(BUILDING_ODM_IMAGE)" >> $(1) ) $(if $(filter $(2),vendor_dlkm),\ $(if $(BOARD_VENDOR_DLKMIMAGE_FILE_SYSTEM_TYPE),$(hide) echo "vendor_dlkm_fs_type=$(BOARD_VENDOR_DLKMIMAGE_FILE_SYSTEM_TYPE)" >> $(1)) $(if $(BOARD_VENDOR_DLKMIMAGE_EXTFS_INODE_COUNT),$(hide) echo "vendor_dlkm_extfs_inode_count=$(BOARD_VENDOR_DLKMIMAGE_EXTFS_INODE_COUNT)" >> $(1)) $(if $(BOARD_VENDOR_DLKMIMAGE_EXTFS_RSV_PCT),$(hide) echo "vendor_dlkm_extfs_rsv_pct=$(BOARD_VENDOR_DLKMIMAGE_EXTFS_RSV_PCT)" >> $(1)) $(if $(BOARD_VENDOR_DLKMIMAGE_PARTITION_SIZE),$(hide) echo "vendor_dlkm_size=$(BOARD_VENDOR_DLKMIMAGE_PARTITION_SIZE)" >> $(1)) $(if $(BOARD_VENDOR_DLKMIMAGE_JOURNAL_SIZE),$(hide) echo "vendor_dlkm_journal_size=$(BOARD_VENDOR_DLKMIMAGE_JOURNAL_SIZE)" >> $(1)) $(if $(BOARD_VENDOR_DLKMIMAGE_SQUASHFS_COMPRESSOR),$(hide) echo "vendor_dlkm_squashfs_compressor=$(BOARD_VENDOR_DLKMIMAGE_SQUASHFS_COMPRESSOR)" >> $(1)) $(if $(BOARD_VENDOR_DLKMIMAGE_SQUASHFS_COMPRESSOR_OPT),$(hide) echo "vendor_dlkm_squashfs_compressor_opt=$(BOARD_VENDOR_DLKMIMAGE_SQUASHFS_COMPRESSOR_OPT)" >> $(1)) $(if $(BOARD_VENDOR_DLKMIMAGE_SQUASHFS_BLOCK_SIZE),$(hide) echo "vendor_dlkm_squashfs_block_size=$(BOARD_VENDOR_DLKMIMAGE_SQUASHFS_BLOCK_SIZE)" >> $(1)) $(if $(BOARD_VENDOR_DLKMIMAGE_SQUASHFS_DISABLE_4K_ALIGN),$(hide) echo "vendor_dlkm_squashfs_disable_4k_align=$(BOARD_VENDOR_DLKMIMAGE_SQUASHFS_DISABLE_4K_ALIGN)" >> $(1)) $(if $(BOARD_VENDOR_DLKMIMAGE_PARTITION_RESERVED_SIZE),$(hide) echo "vendor_dlkm_reserved_size=$(BOARD_VENDOR_DLKMIMAGE_PARTITION_RESERVED_SIZE)" >> $(1)) $(hide) echo "vendor_dlkm_selinux_fc=$(SELINUX_FC)" >> $(1) $(hide) echo "building_vendor_dlkm_image=$(BUILDING_VENDOR_DLKM_IMAGE)" >> $(1) ) $(if $(filter $(2),oem),\ $(if $(BOARD_OEMIMAGE_PARTITION_SIZE),$(hide) echo "oem_size=$(BOARD_OEMIMAGE_PARTITION_SIZE)" >> $(1)) $(if $(BOARD_OEMIMAGE_JOURNAL_SIZE),$(hide) echo "oem_journal_size=$(BOARD_OEMIMAGE_JOURNAL_SIZE)" >> $(1)) Loading @@ -1331,6 +1352,7 @@ $(if $(PRODUCT_SYSTEM_VERITY_PARTITION),$(hide) echo "system_verity_block_device $(if $(PRODUCT_VENDOR_VERITY_PARTITION),$(hide) echo "vendor_verity_block_device=$(PRODUCT_VENDOR_VERITY_PARTITION)" >> $(1)) $(if $(PRODUCT_PRODUCT_VERITY_PARTITION),$(hide) echo "product_verity_block_device=$(PRODUCT_PRODUCT_VERITY_PARTITION)" >> $(1)) $(if $(PRODUCT_SYSTEM_EXT_VERITY_PARTITION),$(hide) echo "system_ext_verity_block_device=$(PRODUCT_SYSTEM_EXT_VERITY_PARTITION)" >> $(1)) $(if $(PRODUCT_VENDOR_DLKM_VERITY_PARTITION),$(hide) echo "vendor_dlkm_verity_block_device=$(PRODUCT_VENDOR_DLKM_VERITY_PARTITION)" >> $(1)) $(if $(PRODUCT_SUPPORTS_VBOOT),$(hide) echo "vboot=$(PRODUCT_SUPPORTS_VBOOT)" >> $(1)) $(if $(PRODUCT_SUPPORTS_VBOOT),$(hide) echo "vboot_key=$(PRODUCT_VBOOT_SIGNING_KEY)" >> $(1)) $(if $(PRODUCT_SUPPORTS_VBOOT),$(hide) echo "vboot_subkey=$(PRODUCT_VBOOT_SIGNING_SUBKEY)" >> $(1)) Loading Loading @@ -1379,6 +1401,14 @@ $(if $(BOARD_AVB_ENABLE),\ $(hide) echo "avb_odm_key_path=$(BOARD_AVB_ODM_KEY_PATH)" >> $(1) $(hide) echo "avb_odm_algorithm=$(BOARD_AVB_ODM_ALGORITHM)" >> $(1) $(hide) echo "avb_odm_rollback_index_location=$(BOARD_AVB_ODM_ROLLBACK_INDEX_LOCATION)" >> $(1))) $(if $(BOARD_AVB_ENABLE),$(hide) echo "avb_vendor_dlkm_hashtree_enable=$(BOARD_AVB_ENABLE)" >> $(1)) $(if $(BOARD_AVB_ENABLE),\ $(hide) echo "avb_vendor_dlkm_add_hashtree_footer_args=$(BOARD_AVB_VENDOR_DLKM_ADD_HASHTREE_FOOTER_ARGS)" >> $(1)) $(if $(BOARD_AVB_ENABLE),\ $(if $(BOARD_AVB_VENDOR_DLKM_KEY_PATH),\ $(hide) echo "avb_vendor_dlkm_key_path=$(BOARD_AVB_VENDOR_DLKM_KEY_PATH)" >> $(1) $(hide) echo "avb_vendor_dlkm_algorithm=$(BOARD_AVB_VENDOR_DLKM_ALGORITHM)" >> $(1) $(hide) echo "avb_vendor_dlkm_rollback_index_location=$(BOARD_AVB_VENDOR_DLKM_ROLLBACK_INDEX_LOCATION)" >> $(1))) $(if $(filter true,$(BOARD_USES_RECOVERY_AS_BOOT)),\ $(hide) echo "recovery_as_boot=true" >> $(1)) $(if $(filter true,$(BOARD_BUILD_SYSTEM_ROOT_IMAGE)),\ Loading Loading @@ -1416,6 +1446,9 @@ endif ifdef BUILDING_ODM_IMAGE PROP_DICTIONARY_IMAGES += odm endif ifdef BUILDING_VENDOR_DLKM_IMAGE PROP_DICTIONARY_IMAGES += vendor_dlkm endif define generate-userimage-prop-dictionary $(call generate-image-prop-dictionary,$(1),$(PROP_DICTIONARY_IMAGES),$(2)) endef Loading Loading @@ -2408,6 +2441,9 @@ endif ifdef BUILDING_ODM_IMAGE echo "-D $(TARGET_OUT_ODM)" >> $@.lst endif ifdef BUILDING_VENDOR_DLKM_IMAGE echo "-D $(TARGET_OUT_VENDOR_DLKM)" >> $@.lst endif ifneq ($(PDK_PLATFORM_JAVA_ZIP_CONTENTS),) echo "-C $(OUT_DIR)" >> $@.lst for f in $(filter-out $(PRIVATE_DEX_FILES),$(addprefix -f $(OUT_DIR)/,$(PDK_PLATFORM_JAVA_ZIP_CONTENTS))); do \ Loading Loading @@ -2874,6 +2910,61 @@ INSTALLED_ODMIMAGE_TARGET := $(PRODUCT_OUT)/odm.img $(eval $(call copy-one-file,$(BOARD_PREBUILT_ODMIMAGE),$(INSTALLED_ODMIMAGE_TARGET))) endif # ----------------------------------------------------------------- # vendor_dlkm partition image ifdef BUILDING_VENDOR_DLKM_IMAGE INTERNAL_VENDOR_DLKMIMAGE_FILES := \ $(filter $(TARGET_OUT_VENDOR_DLKM)/%,\ $(ALL_DEFAULT_INSTALLED_MODULES)\ $(ALL_PDK_FUSION_FILES)) \ $(PDK_FUSION_SYMLINK_STAMP) # platform.zip depends on $(INTERNAL_VENDOR_DLKMIMAGE_FILES). $(INSTALLED_PLATFORM_ZIP) : $(INTERNAL_VENDOR_DLKMIMAGE_FILES) INSTALLED_FILES_FILE_VENDOR_DLKM := $(PRODUCT_OUT)/installed-files-vendor_dlkm.txt INSTALLED_FILES_JSON_VENDOR_DLKM := $(INSTALLED_FILES_FILE_VENDOR_DLKM:.txt=.json) $(INSTALLED_FILES_FILE_VENDOR_DLKM): .KATI_IMPLICIT_OUTPUTS := $(INSTALLED_FILES_JSON_VENDOR_DLKM) $(INSTALLED_FILES_FILE_VENDOR_DLKM) : $(INTERNAL_VENDOR_DLKMIMAGE_FILES) $(FILESLIST) $(FILESLIST_UTIL) @echo Installed file list: $@ @mkdir -p $(dir $@) @rm -f $@ $(hide) $(FILESLIST) $(TARGET_OUT_VENDOR_DLKM) > $(@:.txt=.json) $(hide) $(FILESLIST_UTIL) -c $(@:.txt=.json) > $@ vendor_dlkmimage_intermediates := \ $(call intermediates-dir-for,PACKAGING,vendor_dlkm) BUILT_VENDOR_DLKMIMAGE_TARGET := $(PRODUCT_OUT)/vendor_dlkm.img define build-vendor_dlkmimage-target $(call pretty,"Target vendor_dlkm fs image: $(INSTALLED_VENDOR_DLKMIMAGE_TARGET)") @mkdir -p $(TARGET_OUT_VENDOR_DLKM) @mkdir -p $(vendor_dlkmimage_intermediates) && rm -rf $(vendor_dlkmimage_intermediates)/vendor_dlkm_image_info.txt $(call generate-userimage-prop-dictionary, $(vendor_dlkmimage_intermediates)/vendor_dlkm_image_info.txt, skip_fsck=true) PATH=$(INTERNAL_USERIMAGES_BINARY_PATHS):$$PATH \ $(BUILD_IMAGE) \ $(TARGET_OUT_VENDOR_DLKM) $(vendor_dlkmimage_intermediates)/vendor_dlkm_image_info.txt \ $(INSTALLED_VENDOR_DLKMIMAGE_TARGET) $(TARGET_OUT) $(call assert-max-image-size,$(INSTALLED_VENDOR_DLKMIMAGE_TARGET),$(BOARD_VENDOR_DLKMIMAGE_PARTITION_SIZE)) endef # We just build this directly to the install location. INSTALLED_VENDOR_DLKMIMAGE_TARGET := $(BUILT_VENDOR_DLKMIMAGE_TARGET) $(INSTALLED_VENDOR_DLKMIMAGE_TARGET): \ $(INTERNAL_USERIMAGES_DEPS) \ $(INTERNAL_VENDOR_DLKMIMAGE_FILES) \ $(INSTALLED_FILES_FILE_VENDOR_DLKM) $(build-vendor_dlkmimage-target) .PHONY: vendor_dlkmimage-nodeps vdnod vendor_dlkmimage-nodeps vdnod: | $(INTERNAL_USERIMAGES_DEPS) $(build-vendor_dlkmimage-target) sync: $(INTERNAL_VENDOR_DLKMIMAGE_FILES) else ifdef BOARD_PREBUILT_VENDOR_DLKMIMAGE INSTALLED_VENDOR_DLKMIMAGE_TARGET := $(PRODUCT_OUT)/vendor_dlkm.img $(eval $(call copy-one-file,$(BOARD_PREBUILT_VENDOR_DLKMIMAGE),$(INSTALLED_VENDOR_DLKMIMAGE_TARGET))) endif # ----------------------------------------------------------------- # dtbo image ifdef BOARD_PREBUILT_DTBOIMAGE Loading Loading @@ -3030,6 +3121,10 @@ BOARD_AVB_ODM_ADD_HASHTREE_FOOTER_ARGS += \ --prop com.android.build.odm.fingerprint:$(BUILD_FINGERPRINT_FROM_FILE) \ --prop com.android.build.odm.os_version:$(PLATFORM_VERSION_LAST_STABLE) BOARD_AVB_VENDOR_DLKM_ADD_HASHTREE_FOOTER_ARGS += \ --prop com.android.build.vendor_dlkm.fingerprint:$(BUILD_FINGERPRINT_FROM_FILE) \ --prop com.android.build.vendor_dlkm.os_version:$(PLATFORM_VERSION_LAST_STABLE) BOARD_AVB_DTBO_ADD_HASH_FOOTER_ARGS += \ --prop com.android.build.dtbo.fingerprint:$(BUILD_FINGERPRINT_FROM_FILE) Loading @@ -3049,6 +3144,11 @@ BOARD_AVB_ODM_ADD_HASHTREE_FOOTER_ARGS += \ --prop com.android.build.odm.security_patch:$(ODM_SECURITY_PATCH) endif ifdef VENDOR_DLKM_SECURITY_PATCH BOARD_AVB_VENDOR_DLKM_ADD_HASHTREE_FOOTER_ARGS += \ --prop com.android.build.vendor_dlkm.security_patch:$(VENDOR_DLKM_SECURITY_PATCH) endif BOOT_FOOTER_ARGS := BOARD_AVB_BOOT_ADD_HASH_FOOTER_ARGS VENDOR_BOOT_FOOTER_ARGS := BOARD_AVB_VENDOR_BOOT_ADD_HASH_FOOTER_ARGS DTBO_FOOTER_ARGS := BOARD_AVB_DTBO_ADD_HASH_FOOTER_ARGS Loading @@ -3058,6 +3158,7 @@ RECOVERY_FOOTER_ARGS := BOARD_AVB_RECOVERY_ADD_HASH_FOOTER_ARGS PRODUCT_FOOTER_ARGS := BOARD_AVB_PRODUCT_ADD_HASHTREE_FOOTER_ARGS SYSTEM_EXT_FOOTER_ARGS := BOARD_AVB_SYSTEM_EXT_ADD_HASHTREE_FOOTER_ARGS ODM_FOOTER_ARGS := BOARD_AVB_ODM_ADD_HASHTREE_FOOTER_ARGS VENDOR_DLKM_FOOTER_ARGS := BOARD_AVB_VENDOR_DLKM_ADD_HASHTREE_FOOTER_ARGS # Helper function that checks and sets required build variables for an AVB chained partition. # $(1): the partition to enable AVB chain, e.g., boot or system or vbmeta_system. Loading Loading @@ -3152,6 +3253,10 @@ ifdef INSTALLED_ODMIMAGE_TARGET $(eval $(call check-and-set-avb-args,odm)) endif ifdef INSTALLED_VENDOR_DLKMIMAGE_TARGET $(eval $(call check-and-set-avb-args,vendor_dlkm)) endif ifdef INSTALLED_DTBOIMAGE_TARGET $(eval $(call check-and-set-avb-args,dtbo)) endif Loading Loading @@ -3232,6 +3337,9 @@ define extract-avb-chain-public-keys $(if $(BOARD_AVB_ODM_KEY_PATH),\ $(hide) $(AVBTOOL) extract_public_key --key $(BOARD_AVB_ODM_KEY_PATH) \ --output $(1)/odm.avbpubkey) $(if $(BOARD_AVB_VENDOR_DLKM_KEY_PATH),\ $(hide) $(AVBTOOL) extract_public_key --key $(BOARD_AVB_VENDOR_DLKM_KEY_PATH) \ --output $(1)/vendor_dlkm.avbpubkey) $(if $(BOARD_AVB_DTBO_KEY_PATH),\ $(hide) $(AVBTOOL) extract_public_key --key $(BOARD_AVB_DTBO_KEY_PATH) \ --output $(1)/dtbo.avbpubkey) Loading Loading @@ -3314,6 +3422,7 @@ $(INSTALLED_VBMETAIMAGE_TARGET): \ $(INSTALLED_PRODUCTIMAGE_TARGET) \ $(INSTALLED_SYSTEM_EXTIMAGE_TARGET) \ $(INSTALLED_ODMIMAGE_TARGET) \ $(INSTALLED_VENDOR_DLKMIMAGE_TARGET) \ $(INSTALLED_DTBOIMAGE_TARGET) \ $(INSTALLED_CUSTOMIMAGES_TARGET) \ $(INSTALLED_RECOVERYIMAGE_TARGET) \ Loading @@ -3336,7 +3445,9 @@ endif # BOARD_AVB_ENABLE # ----------------------------------------------------------------- # Check VINTF of build # Note: vendor_dlkm does not have VINTF files. ifeq (,$(TARGET_BUILD_UNBUNDLED)) intermediates := $(call intermediates-dir-for,PACKAGING,check_vintf_all) check_vintf_all_deps := Loading Loading @@ -4121,6 +4232,7 @@ $(BUILT_TARGET_FILES_PACKAGE): \ $(INSTALLED_SYSTEM_EXTIMAGE_TARGET) \ $(INSTALLED_VBMETAIMAGE_TARGET) \ $(INSTALLED_ODMIMAGE_TARGET) \ $(INSTALLED_VENDOR_DLKMIMAGE_TARGET) \ $(INSTALLED_DTBOIMAGE_TARGET) \ $(INSTALLED_CUSTOMIMAGES_TARGET) \ $(INTERNAL_SYSTEMOTHERIMAGE_FILES) \ Loading @@ -4136,6 +4248,7 @@ $(BUILT_TARGET_FILES_PACKAGE): \ $(PRODUCT_PRODUCT_BASE_FS_PATH) \ $(PRODUCT_SYSTEM_EXT_BASE_FS_PATH) \ $(PRODUCT_ODM_BASE_FS_PATH) \ $(PRODUCT_VENDOR_DLKM_BASE_FS_PATH) \ $(LPMAKE) \ $(SELINUX_FC) \ $(INSTALLED_MISC_INFO_TARGET) \ Loading Loading @@ -4273,6 +4386,11 @@ ifdef BUILDING_ODM_IMAGE $(hide) $(call package_files-copy-root, \ $(TARGET_OUT_ODM),$(zip_root)/ODM) endif ifdef BUILDING_VENDOR_DLKM_IMAGE @# Contents of the vendor_dlkm image $(hide) $(call package_files-copy-root, \ $(TARGET_OUT_VENDOR_DLKM),$(zip_root)/VENDOR_DLKM) endif ifdef BUILDING_SYSTEM_OTHER_IMAGE @# Contents of the system_other image $(hide) $(call package_files-copy-root, \ Loading Loading @@ -4318,6 +4436,10 @@ ifneq ($(PRODUCT_ODM_BASE_FS_PATH),) $(hide) cp $(PRODUCT_ODM_BASE_FS_PATH) \ $(zip_root)/META/$(notdir $(PRODUCT_ODM_BASE_FS_PATH)) endif ifneq ($(PRODUCT_VENDOR_DLKM_BASE_FS_PATH),) $(hide) cp $(PRODUCT_VENDOR_DLKM_BASE_FS_PATH) \ $(zip_root)/META/$(notdir $(PRODUCT_VENDOR_DLKM_BASE_FS_PATH)) endif ifeq ($(TARGET_OTA_ALLOW_NON_AB),true) ifneq ($(INSTALLED_RECOVERYIMAGE_TARGET),) $(hide) PATH=$(INTERNAL_USERIMAGES_BINARY_PATHS):$$PATH MKBOOTIMG=$(MKBOOTIMG) \ Loading Loading @@ -4363,6 +4485,10 @@ ifdef BOARD_PREBUILT_ODMIMAGE $(hide) mkdir -p $(zip_root)/IMAGES $(hide) cp $(INSTALLED_ODMIMAGE_TARGET) $(zip_root)/IMAGES/ endif ifdef BOARD_PREBUILT_VENDOR_DLKIMMAGE $(hide) mkdir -p $(zip_root)/IMAGES $(hide) cp $(INSTALLED_VENDOR_DLKIMMAGE_TARGET) $(zip_root)/IMAGES/ endif ifdef BOARD_PREBUILT_DTBOIMAGE $(hide) mkdir -p $(zip_root)/PREBUILT_IMAGES $(hide) cp $(INSTALLED_DTBOIMAGE_TARGET) $(zip_root)/PREBUILT_IMAGES/ Loading Loading @@ -4393,6 +4519,9 @@ ifdef BUILDING_SYSTEM_EXT_IMAGE endif ifdef BUILDING_ODM_IMAGE $(hide) $(call fs_config,$(zip_root)/ODM,odm/) > $(zip_root)/META/odm_filesystem_config.txt endif ifdef BUILDING_VENDOR_DLKM_IMAGE $(hide) $(call fs_config,$(zip_root)/VENDOR_DLKM,vendor_dlkm/) > $(zip_root)/META/vendor_dlkm_filesystem_config.txt endif @# ROOT always contains the files for the root under normal boot. $(hide) $(call fs_config,$(zip_root)/ROOT,) > $(zip_root)/META/root_filesystem_config.txt Loading Loading @@ -4552,6 +4681,7 @@ $(SYMBOLS_ZIP): $(INSTALLED_SYSTEMIMAGE_TARGET) \ $(INSTALLED_PRODUCTIMAGE_TARGET) \ $(INSTALLED_SYSTEM_EXTIMAGE_TARGET) \ $(INSTALLED_ODMIMAGE_TARGET) \ $(INSTALLED_VENDOR_DLKMIMAGE_TARGET) \ $(updater_dep) endif $(SYMBOLS_ZIP): PRIVATE_LIST_FILE := $(call intermediates-dir-for,PACKAGING,symbols)/filelist Loading @@ -4577,7 +4707,8 @@ $(COVERAGE_ZIP): $(INSTALLED_SYSTEMIMAGE_TARGET) \ $(INSTALLED_VENDORIMAGE_TARGET) \ $(INSTALLED_PRODUCTIMAGE_TARGET) \ $(INSTALLED_SYSTEM_EXTIMAGE_TARGET) \ $(INSTALLED_ODMIMAGE_TARGET) $(INSTALLED_ODMIMAGE_TARGET) \ $(INSTALLED_VENDOR_DLKMIMAGE_TARGET) endif $(COVERAGE_ZIP): PRIVATE_LIST_FILE := $(call intermediates-dir-for,PACKAGING,coverage)/filelist $(COVERAGE_ZIP): $(SOONG_ZIP) Loading Loading @@ -4654,6 +4785,7 @@ $(PROGUARD_DICT_ZIP): \ $(INSTALLED_PRODUCTIMAGE_TARGET) \ $(INSTALLED_SYSTEM_EXTIMAGE_TARGET) \ $(INSTALLED_ODMIMAGE_TARGET) \ $(INSTALLED_VENDOR_DLKMIMAGE_TARGET) \ $(updater_dep) endif $(PROGUARD_DICT_ZIP): PRIVATE_LIST_FILE := $(call intermediates-dir-for,PACKAGING,proguard)/filelist Loading Loading @@ -4892,6 +5024,17 @@ odmimage: $(INSTALLED_QEMU_ODMIMAGE) droidcore: $(INSTALLED_QEMU_ODMIMAGE) endif ifdef INSTALLED_VENDOR_DLKMIMAGE_TARGET INSTALLED_QEMU_VENDOR_DLKMIMAGE := $(PRODUCT_OUT)/vendor_dlkm-qemu.img $(INSTALLED_QEMU_VENDOR_DLKMIMAGE): $(INSTALLED_VENDOR_DLKMIMAGE_TARGET) $(MK_QEMU_IMAGE_SH) $(SGDISK_HOST) @echo Create vendor_dlkm-qemu.img (export SGDISK=$(SGDISK_HOST); $(MK_QEMU_IMAGE_SH) $(INSTALLED_VENDOR_DLKMIMAGE_TARGET)) vendor_dlkmimage: $(INSTALLED_QEMU_VENDOR_DLKMIMAGE) droidcore: $(INSTALLED_QEMU_VENDOR_DLKMIMAGE) endif QEMU_VERIFIED_BOOT_PARAMS := $(PRODUCT_OUT)/VerifiedBootParams.textproto $(QEMU_VERIFIED_BOOT_PARAMS): $(INSTALLED_VBMETAIMAGE_TARGET) $(INSTALLED_SYSTEMIMAGE_TARGET) \ $(MK_VBMETA_BOOT_KERNEL_CMDLINE_SH) $(AVBTOOL) Loading
core/board_config.mk +37 −0 Original line number Diff line number Diff line Loading @@ -72,12 +72,15 @@ _board_strip_readonly_list += \ BOARD_SYSTEM_EXTIMAGE_FILE_SYSTEM_TYPE \ BOARD_ODMIMAGE_PARTITION_SIZE \ BOARD_ODMIMAGE_FILE_SYSTEM_TYPE \ BOARD_VENDOR_DLKMIMAGE_PARTITION_SIZE \ BOARD_VENDOR_DLKMIMAGE_FILE_SYSTEM_TYPE \ # Logical partitions related variables. _dynamic_partitions_var_list += \ BOARD_SYSTEMIMAGE_PARTITION_RESERVED_SIZE \ BOARD_VENDORIMAGE_PARTITION_RESERVED_SIZE \ BOARD_ODMIMAGE_PARTITION_RESERVED_SIZE \ BOARD_VENDOR_DLKMIMAGE_PARTITION_RESERVED_SIZE \ BOARD_PRODUCTIMAGE_PARTITION_RESERVED_SIZE \ BOARD_SYSTEM_EXTIMAGE_PARTITION_RESERVED_SIZE \ BOARD_SUPER_PARTITION_SIZE \ Loading Loading @@ -511,6 +514,40 @@ ifdef BOARD_PREBUILT_SYSTEM_EXTIMAGE endif .KATI_READONLY := BUILDING_SYSTEM_EXT_IMAGE ########################################### # Now we can substitute with the real value of TARGET_COPY_OUT_VENDOR_DLKM ifeq ($(TARGET_COPY_OUT_VENDOR_DLKM),$(_vendor_dlkm_path_placeholder)) TARGET_COPY_OUT_VENDOR_DLKM := $(TARGET_COPY_OUT_VENDOR)/vendor_dlkm else ifeq ($(filter vendor_dlkm system/vendor/vendor_dlkm vendor/vendor_dlkm,$(TARGET_COPY_OUT_VENDOR_DLKM)),) $(error TARGET_COPY_OUT_VENDOR_DLKM must be either 'vendor_dlkm', 'system/vendor/vendor_dlkm' or 'vendor/vendor_dlkm', seeing '$(TARGET_COPY_OUT_VENDOR_DLKM)'.) endif PRODUCT_COPY_FILES := $(subst $(_vendor_dlkm_path_placeholder),$(TARGET_COPY_OUT_VENDOR_DLKM),$(PRODUCT_COPY_FILES)) BOARD_USES_VENDOR_DLKMIMAGE := ifdef BOARD_PREBUILT_VENDOR_DLKMIMAGE BOARD_USES_VENDOR_DLKMIMAGE := true endif ifdef BOARD_VENDOR_DLKMIMAGE_FILE_SYSTEM_TYPE BOARD_USES_VENDOR_DLKMIMAGE := true endif $(call check_image_config,vendor_dlkm) BUILDING_VENDOR_DLKM_IMAGE := ifeq ($(PRODUCT_BUILD_VENDOR_DLKM_IMAGE),) ifdef BOARD_VENDOR_DLKMIMAGE_FILE_SYSTEM_TYPE BUILDING_VENDOR_DLKM_IMAGE := true endif else ifeq ($(PRODUCT_BUILD_VENDOR_DLKM_IMAGE),true) BUILDING_VENDOR_DLKM_IMAGE := true ifndef BOARD_VENDOR_DLKMIMAGE_FILE_SYSTEM_TYPE $(error PRODUCT_BUILD_VENDOR_DLKM_IMAGE set to true, but BOARD_VENDOR_DLKMIMAGE_FILE_SYSTEM_TYPE not defined) endif endif ifdef BOARD_PREBUILT_VENDOR_DLKMIMAGE BUILDING_VENDOR_DLKM_IMAGE := endif .KATI_READONLY := BUILDING_VENDOR_DLKM_IMAGE ########################################### # Now we can substitute with the real value of TARGET_COPY_OUT_ODM ifeq ($(TARGET_COPY_OUT_ODM),$(_odm_path_placeholder)) Loading
core/config.mk +8 −1 Original line number Diff line number Diff line Loading @@ -930,6 +930,13 @@ $(error Should not define BOARD_ODMIMAGE_PARTITION_SIZE and \ endif endif ifneq ($(BOARD_VENDOR_DLKMIMAGE_PARTITION_SIZE),) ifneq ($(BOARD_VENDOR_DLKMIMAGE_PARTITION_RESERVED_SIZE),) $(error Should not define BOARD_VENDOR_DLKMIMAGE_PARTITION_SIZE and \ BOARD_VENDOR_DLKMIMAGE_PARTITION_RESERVED_SIZE together) endif endif ifneq ($(BOARD_PRODUCTIMAGE_PARTITION_SIZE),) ifneq ($(BOARD_PRODUCTIMAGE_PARTITION_RESERVED_SIZE),) $(error Should not define BOARD_PRODUCTIMAGE_PARTITION_SIZE and \ Loading Loading @@ -965,7 +972,7 @@ $(foreach group,$(call to-upper,$(BOARD_SUPER_PARTITION_GROUPS)), \ ) # BOARD_*_PARTITION_LIST: a list of the following tokens valid_super_partition_list := system vendor product system_ext odm valid_super_partition_list := system vendor product system_ext odm vendor_dlkm $(foreach group,$(call to-upper,$(BOARD_SUPER_PARTITION_GROUPS)), \ $(if $(filter-out $(valid_super_partition_list),$(BOARD_$(group)_PARTITION_LIST)), \ $(error BOARD_$(group)_PARTITION_LIST contains invalid partition name \ Loading
core/envsetup.mk +36 −0 Original line number Diff line number Diff line Loading @@ -253,6 +253,7 @@ _vendor_path_placeholder := ||VENDOR-PATH-PH|| _product_path_placeholder := ||PRODUCT-PATH-PH|| _system_ext_path_placeholder := ||SYSTEM_EXT-PATH-PH|| _odm_path_placeholder := ||ODM-PATH-PH|| _vendor_dlkm_path_placeholder := ||VENDOR_DLKM-PATH-PH|| TARGET_COPY_OUT_VENDOR := $(_vendor_path_placeholder) TARGET_COPY_OUT_VENDOR_RAMDISK := vendor-ramdisk TARGET_COPY_OUT_PRODUCT := $(_product_path_placeholder) Loading @@ -261,6 +262,7 @@ TARGET_COPY_OUT_PRODUCT := $(_product_path_placeholder) TARGET_COPY_OUT_PRODUCT_SERVICES := $(_product_path_placeholder) TARGET_COPY_OUT_SYSTEM_EXT := $(_system_ext_path_placeholder) TARGET_COPY_OUT_ODM := $(_odm_path_placeholder) TARGET_COPY_OUT_VENDOR_DLKM := $(_vendor_dlkm_path_placeholder) # Returns the non-sanitized version of the path provided in $1. define get_non_asan_path Loading Loading @@ -719,6 +721,40 @@ $(TARGET_2ND_ARCH_VAR_PREFIX)TARGET_OUT_ODM_APPS_PRIVILEGED := $(TARGET_OUT_ODM_ $(TARGET_2ND_ARCH_VAR_PREFIX)TARGET_OUT_ODM_APPS \ $(TARGET_2ND_ARCH_VAR_PREFIX)TARGET_OUT_ODM_APPS_PRIVILEGED TARGET_OUT_VENDOR_DLKM := $(PRODUCT_OUT)/$(TARGET_COPY_OUT_VENDOR_DLKM) TARGET_OUT_VENDOR_DLKM_ETC := $(TARGET_OUT_VENDOR_DLKM)/etc .KATI_READONLY := \ TARGET_OUT_VENDOR_DLKM_ETC # Unlike other partitions, vendor_dlkm should only contain kernel modules. TARGET_OUT_VENDOR_DLKM_EXECUTABLES := TARGET_OUT_VENDOR_DLKM_OPTIONAL_EXECUTABLES := TARGET_OUT_VENDOR_DLKM_SHARED_LIBRARIES := TARGET_OUT_VENDOR_DLKM_RENDERSCRIPT_BITCODE := TARGET_OUT_VENDOR_DLKM_JAVA_LIBRARIES := TARGET_OUT_VENDOR_DLKM_APPS := TARGET_OUT_VENDOR_DLKM_APPS_PRIVILEGED := $(TARGET_2ND_ARCH_VAR_PREFIX)TARGET_OUT_VENDOR_DLKM_EXECUTABLES := $(TARGET_2ND_ARCH_VAR_PREFIX)TARGET_OUT_VENDOR_DLKM_SHARED_LIBRARIES := $(TARGET_2ND_ARCH_VAR_PREFIX)TARGET_OUT_VENDOR_DLKM_RENDERSCRIPT_BITCODE := $(TARGET_2ND_ARCH_VAR_PREFIX)TARGET_OUT_VENDOR_DLKM_APPS := $(TARGET_2ND_ARCH_VAR_PREFIX)TARGET_OUT_VENDOR_DLKM_APPS_PRIVILEGED := $(KATI_obsolete_var \ TARGET_OUT_VENDOR_DLKM_EXECUTABLES \ TARGET_OUT_VENDOR_DLKM_OPTIONAL_EXECUTABLES \ TARGET_OUT_VENDOR_DLKM_SHARED_LIBRARIES \ TARGET_OUT_VENDOR_DLKM_RENDERSCRIPT_BITCODE \ TARGET_OUT_VENDOR_DLKM_JAVA_LIBRARIES \ TARGET_OUT_VENDOR_DLKM_APPS \ TARGET_OUT_VENDOR_DLKM_APPS_PRIVILEGED \ $(TARGET_2ND_ARCH_VAR_PREFIX)TARGET_OUT_VENDOR_DLKM_EXECUTABLES \ $(TARGET_2ND_ARCH_VAR_PREFIX)TARGET_OUT_VENDOR_DLKM_SHARED_LIBRARIES \ $(TARGET_2ND_ARCH_VAR_PREFIX)TARGET_OUT_VENDOR_DLKM_RENDERSCRIPT_BITCODE \ $(TARGET_2ND_ARCH_VAR_PREFIX)TARGET_OUT_VENDOR_DLKM_APPS \ $(TARGET_2ND_ARCH_VAR_PREFIX)TARGET_OUT_VENDOR_DLKM_APPS_PRIVILEGED \ , vendor_dlkm should not contain any executables, libraries, or apps) TARGET_OUT_PRODUCT := $(PRODUCT_OUT)/$(TARGET_COPY_OUT_PRODUCT) TARGET_OUT_PRODUCT_EXECUTABLES := $(TARGET_OUT_PRODUCT)/bin .KATI_READONLY := TARGET_OUT_PRODUCT Loading
core/main.mk +10 −1 Original line number Diff line number Diff line Loading @@ -1143,7 +1143,8 @@ define resolve-product-relative-paths $(subst $(_product_path_placeholder),$(TARGET_COPY_OUT_PRODUCT),\ $(subst $(_system_ext_path_placeholder),$(TARGET_COPY_OUT_SYSTEM_EXT),\ $(subst $(_odm_path_placeholder),$(TARGET_COPY_OUT_ODM),\ $(foreach p,$(1),$(call append-path,$(PRODUCT_OUT),$(p)$(2))))))) $(subst $(_vendor_dlkm_path_placeholder),$(TARGET_COPY_OUT_VENDOR_DLKM),\ $(foreach p,$(1),$(call append-path,$(PRODUCT_OUT),$(p)$(2)))))))) endef # Returns modules included automatically as a result of certain BoardConfig Loading Loading @@ -1521,6 +1522,9 @@ systemextimage: $(INSTALLED_SYSTEM_EXTIMAGE_TARGET) .PHONY: odmimage odmimage: $(INSTALLED_ODMIMAGE_TARGET) .PHONY: vendor_dlkmimage vendor_dlkmimage: $(INSTALLED_VENDOR_DLKMIMAGE_TARGET) .PHONY: systemotherimage systemotherimage: $(INSTALLED_SYSTEMOTHERIMAGE_TARGET) Loading Loading @@ -1558,6 +1562,7 @@ droidcore: $(filter $(HOST_OUT_ROOT)/%,$(modules_to_install)) \ $(INSTALLED_VENDOR_DEBUG_RAMDISK_TARGET) \ $(INSTALLED_VENDOR_DEBUG_BOOTIMAGE_TARGET) \ $(INSTALLED_ODMIMAGE_TARGET) \ $(INSTALLED_VENDOR_DLKMIMAGE_TARGET) \ $(INSTALLED_SUPERIMAGE_EMPTY_TARGET) \ $(INSTALLED_PRODUCTIMAGE_TARGET) \ $(INSTALLED_SYSTEMOTHERIMAGE_TARGET) \ Loading @@ -1567,6 +1572,8 @@ droidcore: $(filter $(HOST_OUT_ROOT)/%,$(modules_to_install)) \ $(INSTALLED_FILES_JSON_VENDOR) \ $(INSTALLED_FILES_FILE_ODM) \ $(INSTALLED_FILES_JSON_ODM) \ $(INSTALLED_FILES_FILE_VENDOR_DLKM) \ $(INSTALLED_FILES_JSON_VENDOR_DLKM) \ $(INSTALLED_FILES_FILE_PRODUCT) \ $(INSTALLED_FILES_JSON_PRODUCT) \ $(INSTALLED_FILES_FILE_SYSTEM_EXT) \ Loading Loading @@ -1662,6 +1669,8 @@ else ifeq (,$(TARGET_BUILD_UNBUNDLED)) $(INSTALLED_FILES_JSON_VENDOR) \ $(INSTALLED_FILES_FILE_ODM) \ $(INSTALLED_FILES_JSON_ODM) \ $(INSTALLED_FILES_FILE_VENDOR_DLKM) \ $(INSTALLED_FILES_JSON_VENDOR_DLKM) \ $(INSTALLED_FILES_FILE_PRODUCT) \ $(INSTALLED_FILES_JSON_PRODUCT) \ $(INSTALLED_FILES_FILE_SYSTEM_EXT) \ Loading