Loading core/Makefile +34 −28 Original line number Diff line number Diff line Loading @@ -685,7 +685,7 @@ $(call dist-for-goals,droidcore,$(PGO_PROFILE_MISSING)) # for future OTA packages installed by this system. Actual product # deliverables will be re-signed by hand. We expect this file to # exist with the suffixes ".x509.pem" and ".pk8". DEFAULT_KEY_CERT_PAIR := $(DEFAULT_SYSTEM_DEV_CERTIFICATE) DEFAULT_KEY_CERT_PAIR := $(strip $(DEFAULT_SYSTEM_DEV_CERTIFICATE)) # Rules that need to be present for the all targets, even Loading Loading @@ -1140,12 +1140,12 @@ $(winpthreads_notice_file): \ # This rule adds to ALL_DEFAULT_INSTALLED_MODULES, so it needs to come # before the rules that use that variable to build the image. ALL_DEFAULT_INSTALLED_MODULES += $(TARGET_OUT_ETC)/security/otacerts.zip $(TARGET_OUT_ETC)/security/otacerts.zip: KEY_CERT_PAIR := $(DEFAULT_KEY_CERT_PAIR) $(TARGET_OUT_ETC)/security/otacerts.zip: $(addsuffix .x509.pem,$(DEFAULT_KEY_CERT_PAIR)) | $(ZIPTIME) $(TARGET_OUT_ETC)/security/otacerts.zip: PRIVATE_CERT := $(DEFAULT_KEY_CERT_PAIR).x509.pem $(TARGET_OUT_ETC)/security/otacerts.zip: $(SOONG_ZIP) $(TARGET_OUT_ETC)/security/otacerts.zip: $(DEFAULT_KEY_CERT_PAIR).x509.pem $(hide) rm -f $@ $(hide) mkdir -p $(dir $@) $(hide) zip -qjX $@ $< $(remove-timestamps-from-package) $(hide) $(SOONG_ZIP) -o $@ -C $(dir $(PRIVATE_CERT)) -f $(PRIVATE_CERT) # Carry the public key for update_engine if it's a non-IoT target that # uses the AB updater. We use the same key as otacerts but in RSA public key Loading @@ -1153,7 +1153,7 @@ $(TARGET_OUT_ETC)/security/otacerts.zip: $(addsuffix .x509.pem,$(DEFAULT_KEY_CER ifeq ($(AB_OTA_UPDATER),true) ifneq ($(PRODUCT_IOT),true) ALL_DEFAULT_INSTALLED_MODULES += $(TARGET_OUT_ETC)/update_engine/update-payload-key.pub.pem $(TARGET_OUT_ETC)/update_engine/update-payload-key.pub.pem: $(addsuffix .x509.pem,$(DEFAULT_KEY_CERT_PAIR)) $(TARGET_OUT_ETC)/update_engine/update-payload-key.pub.pem: $(DEFAULT_KEY_CERT_PAIR).x509.pem $(hide) rm -f $@ $(hide) mkdir -p $(dir $@) $(hide) openssl x509 -pubkey -noout -in $< > $@ Loading Loading @@ -2066,39 +2066,45 @@ INSTALLED_PLATFORM_ZIP := $(PRODUCT_OUT)/platform.zip $(INSTALLED_PLATFORM_ZIP): PRIVATE_DEX_FILES := $(pdk_classes_dex) $(INSTALLED_PLATFORM_ZIP): PRIVATE_ODEX_CONFIG := $(pdk_odex_config_mk) $(INSTALLED_PLATFORM_ZIP) : $(SOONG_ZIP) # dependencies for the other partitions are defined below after their file lists # are known $(INSTALLED_PLATFORM_ZIP) : $(INTERNAL_SYSTEMIMAGE_FILES) $(pdk_classes_dex) $(pdk_odex_config_mk) $(call pretty,"Platform zip package: $(INSTALLED_PLATFORM_ZIP)") $(hide) rm -f $@ $(hide) cd $(dir $@) && zip -qryX $(notdir $@) \ $(TARGET_COPY_OUT_SYSTEM) \ $(patsubst $(PRODUCT_OUT)/%, %, $(TARGET_OUT_NOTICE_FILES)) \ $(addprefix symbols/,$(PDK_SYMBOL_FILES_LIST)) rm -f $@ $@.lst echo "-C $(PRODUCT_OUT)" >> $@.lst 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 $(hide) cd $(dir $@) && zip -qryX $(notdir $@) \ $(TARGET_COPY_OUT_VENDOR) echo "-D $(TARGET_OUT_VENDOR)" >> $@.lst endif ifdef BOARD_PRODUCTIMAGE_FILE_SYSTEM_TYPE $(hide) cd $(dir $@) && zip -qryX $(notdir $@) \ $(TARGET_COPY_OUT_PRODUCT) echo "-D $(TARGET_OUT_PRODUCT)" >> $@.lst endif ifdef BOARD_PRODUCT_SERVICESIMAGE_FILE_SYSTEM_TYPE $(hide) cd $(dir $@) && zip -qryX $(notdir $@) \ $(TARGET_COPY_OUT_PRODUCT_SERVICES) echo "-D $(TARGET_OUT_PRODUCT_SERVICES)" >> $@.lst endif ifdef BOARD_ODMIMAGE_FILE_SYSTEM_TYPE $(hide) cd $(dir $@) && zip -qryX $(notdir $@) \ $(TARGET_COPY_OUT_ODM) echo "-D $(TARGET_OUT_ODM)" >> $@.lst endif ifneq ($(PDK_PLATFORM_JAVA_ZIP_CONTENTS),) $(hide) cd $(OUT_DIR) && zip -qryX $(patsubst $(OUT_DIR)/%,%,$@) $(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 \ if [ -e $$f ]; then \ echo "-f $$f"; \ fi \ done >> $@.lst endif ifneq ($(PDK_PLATFORM_ZIP_PRODUCT_BINARIES),) $(hide) zip -qryX $@ $(PDK_PLATFORM_ZIP_PRODUCT_BINARIES) echo "-C . $(addprefix -f ,$(PDK_PLATFORM_ZIP_PRODUCT_BINARIES))" >> $@.lst endif @# Add dex-preopt files and config. $(if $(PRIVATE_DEX_FILES),$(hide) cd $(OUT_DIR) && zip -qryX $(patsubst $(OUT_DIR)/%,%,$@ $(PRIVATE_DEX_FILES))) $(hide) touch $(PRODUCT_OUT)/pdk.mk $(hide) zip -qryXj $@ $(PRIVATE_ODEX_CONFIG) $(PRODUCT_OUT)/pdk.mk $(if $(PRIVATE_DEX_FILES),\ echo "-C $(OUT_DIR) $(addprefix -f ,$(PRIVATE_DEX_FILES))") >> $@.lst touch $(PRODUCT_OUT)/pdk.mk echo "-C $(PRODUCT_OUT) -f $(PRIVATE_ODEX_CONFIG) -f $(PRODUCT_OUT)/pdk.mk" >> $@.lst $(SOONG_ZIP) --ignore_missing_files -o $@ @$@.lst .PHONY: platform platform: $(INSTALLED_PLATFORM_ZIP) Loading Loading @@ -3141,15 +3147,15 @@ OTATOOLS_DEPS += \ $(sort $(shell find external/vboot_reference/tests/devkeys -type f)) endif $(BUILT_OTATOOLS_PACKAGE): $(OTATOOLS) $(OTATOOLS_DEPS) $(OTATOOLS_RELEASETOOLS) | $(ACP) $(BUILT_OTATOOLS_PACKAGE): $(OTATOOLS) $(OTATOOLS_DEPS) $(OTATOOLS_RELEASETOOLS) $(SOONG_ZIP) @echo "Package OTA tools: $@" $(hide) rm -rf $@ $(zip_root) $(hide) mkdir -p $(dir $@) $(zip_root)/bin $(zip_root)/framework $(zip_root)/releasetools $(call copy-files-with-structure,$(OTATOOLS),$(HOST_OUT)/,$(zip_root)) $(hide) $(ACP) -r -d -p build/make/tools/releasetools/* $(zip_root)/releasetools $(hide) cp -r -d -p build/make/tools/releasetools/* $(zip_root)/releasetools $(hide) rm -rf $@ $(zip_root)/releasetools/*.pyc $(hide) (cd $(zip_root) && zip -qryX $(abspath $@) *) $(hide) echo $(OTATOOLS_DEPS) | xargs zip -qryX $(abspath $@)>/dev/null || true $(hide) $(SOONG_ZIP) -o $@ -C $(zip_root) -D $(zip_root) \ -C . $(addprefix -f ,$(OTATOOLS_DEPS)) .PHONY: otatools-package otatools-package: $(BUILT_OTATOOLS_PACKAGE) Loading core/pdk_config.mk +9 −5 Original line number Diff line number Diff line Loading @@ -174,11 +174,15 @@ ifneq (,$(filter platform platform-java, $(MAKECMDGOALS))$(filter true,$(TARGET_ # files under $(PRODUCT_OUT)/symbols to help debugging. # Source not included to PDK due to dependency issue, so provide symbols instead. # We may not be building all of them. # The platform.zip just silently ignores the nonexistent ones. PDK_SYMBOL_FILES_LIST := \ system/bin/app_process32 \ system/bin/app_process64 PDK_SYMBOL_FILES_LIST := ifeq ($(TARGET_IS_64_BIT),true) PDK_SYMBOL_FILES_LIST += system/bin/app_process64 ifdef TARGET_2ND_ARCH PDK_SYMBOL_FILES_LIST += system/bin/app_process32 endif else PDK_SYMBOL_FILES_LIST += system/bin/app_process32 endif ifneq (,$(PDK_FUSION_PLATFORM_ZIP)$(PDK_FUSION_PLATFORM_DIR)) # symbols should be explicitly pulled for fusion build Loading core/tasks/sdk-addon.mk +4 −0 Original line number Diff line number Diff line Loading @@ -12,6 +12,8 @@ # See the License for the specific language governing permissions and # limitations under the License. ifndef ONE_SHOT_MAKEFILE .PHONY: sdk_addon # If they didn't define PRODUCT_SDK_ADDON_NAME, then we won't define Loading Loading @@ -148,3 +150,5 @@ ifneq ($(filter sdk_addon,$(MAKECMDGOALS)),) $(error Trying to build sdk_addon, but product '$(INTERNAL_PRODUCT)' does not define one) endif endif # addon_name endif # !ONE_SHOT_MAKEFILE Loading
core/Makefile +34 −28 Original line number Diff line number Diff line Loading @@ -685,7 +685,7 @@ $(call dist-for-goals,droidcore,$(PGO_PROFILE_MISSING)) # for future OTA packages installed by this system. Actual product # deliverables will be re-signed by hand. We expect this file to # exist with the suffixes ".x509.pem" and ".pk8". DEFAULT_KEY_CERT_PAIR := $(DEFAULT_SYSTEM_DEV_CERTIFICATE) DEFAULT_KEY_CERT_PAIR := $(strip $(DEFAULT_SYSTEM_DEV_CERTIFICATE)) # Rules that need to be present for the all targets, even Loading Loading @@ -1140,12 +1140,12 @@ $(winpthreads_notice_file): \ # This rule adds to ALL_DEFAULT_INSTALLED_MODULES, so it needs to come # before the rules that use that variable to build the image. ALL_DEFAULT_INSTALLED_MODULES += $(TARGET_OUT_ETC)/security/otacerts.zip $(TARGET_OUT_ETC)/security/otacerts.zip: KEY_CERT_PAIR := $(DEFAULT_KEY_CERT_PAIR) $(TARGET_OUT_ETC)/security/otacerts.zip: $(addsuffix .x509.pem,$(DEFAULT_KEY_CERT_PAIR)) | $(ZIPTIME) $(TARGET_OUT_ETC)/security/otacerts.zip: PRIVATE_CERT := $(DEFAULT_KEY_CERT_PAIR).x509.pem $(TARGET_OUT_ETC)/security/otacerts.zip: $(SOONG_ZIP) $(TARGET_OUT_ETC)/security/otacerts.zip: $(DEFAULT_KEY_CERT_PAIR).x509.pem $(hide) rm -f $@ $(hide) mkdir -p $(dir $@) $(hide) zip -qjX $@ $< $(remove-timestamps-from-package) $(hide) $(SOONG_ZIP) -o $@ -C $(dir $(PRIVATE_CERT)) -f $(PRIVATE_CERT) # Carry the public key for update_engine if it's a non-IoT target that # uses the AB updater. We use the same key as otacerts but in RSA public key Loading @@ -1153,7 +1153,7 @@ $(TARGET_OUT_ETC)/security/otacerts.zip: $(addsuffix .x509.pem,$(DEFAULT_KEY_CER ifeq ($(AB_OTA_UPDATER),true) ifneq ($(PRODUCT_IOT),true) ALL_DEFAULT_INSTALLED_MODULES += $(TARGET_OUT_ETC)/update_engine/update-payload-key.pub.pem $(TARGET_OUT_ETC)/update_engine/update-payload-key.pub.pem: $(addsuffix .x509.pem,$(DEFAULT_KEY_CERT_PAIR)) $(TARGET_OUT_ETC)/update_engine/update-payload-key.pub.pem: $(DEFAULT_KEY_CERT_PAIR).x509.pem $(hide) rm -f $@ $(hide) mkdir -p $(dir $@) $(hide) openssl x509 -pubkey -noout -in $< > $@ Loading Loading @@ -2066,39 +2066,45 @@ INSTALLED_PLATFORM_ZIP := $(PRODUCT_OUT)/platform.zip $(INSTALLED_PLATFORM_ZIP): PRIVATE_DEX_FILES := $(pdk_classes_dex) $(INSTALLED_PLATFORM_ZIP): PRIVATE_ODEX_CONFIG := $(pdk_odex_config_mk) $(INSTALLED_PLATFORM_ZIP) : $(SOONG_ZIP) # dependencies for the other partitions are defined below after their file lists # are known $(INSTALLED_PLATFORM_ZIP) : $(INTERNAL_SYSTEMIMAGE_FILES) $(pdk_classes_dex) $(pdk_odex_config_mk) $(call pretty,"Platform zip package: $(INSTALLED_PLATFORM_ZIP)") $(hide) rm -f $@ $(hide) cd $(dir $@) && zip -qryX $(notdir $@) \ $(TARGET_COPY_OUT_SYSTEM) \ $(patsubst $(PRODUCT_OUT)/%, %, $(TARGET_OUT_NOTICE_FILES)) \ $(addprefix symbols/,$(PDK_SYMBOL_FILES_LIST)) rm -f $@ $@.lst echo "-C $(PRODUCT_OUT)" >> $@.lst 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 $(hide) cd $(dir $@) && zip -qryX $(notdir $@) \ $(TARGET_COPY_OUT_VENDOR) echo "-D $(TARGET_OUT_VENDOR)" >> $@.lst endif ifdef BOARD_PRODUCTIMAGE_FILE_SYSTEM_TYPE $(hide) cd $(dir $@) && zip -qryX $(notdir $@) \ $(TARGET_COPY_OUT_PRODUCT) echo "-D $(TARGET_OUT_PRODUCT)" >> $@.lst endif ifdef BOARD_PRODUCT_SERVICESIMAGE_FILE_SYSTEM_TYPE $(hide) cd $(dir $@) && zip -qryX $(notdir $@) \ $(TARGET_COPY_OUT_PRODUCT_SERVICES) echo "-D $(TARGET_OUT_PRODUCT_SERVICES)" >> $@.lst endif ifdef BOARD_ODMIMAGE_FILE_SYSTEM_TYPE $(hide) cd $(dir $@) && zip -qryX $(notdir $@) \ $(TARGET_COPY_OUT_ODM) echo "-D $(TARGET_OUT_ODM)" >> $@.lst endif ifneq ($(PDK_PLATFORM_JAVA_ZIP_CONTENTS),) $(hide) cd $(OUT_DIR) && zip -qryX $(patsubst $(OUT_DIR)/%,%,$@) $(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 \ if [ -e $$f ]; then \ echo "-f $$f"; \ fi \ done >> $@.lst endif ifneq ($(PDK_PLATFORM_ZIP_PRODUCT_BINARIES),) $(hide) zip -qryX $@ $(PDK_PLATFORM_ZIP_PRODUCT_BINARIES) echo "-C . $(addprefix -f ,$(PDK_PLATFORM_ZIP_PRODUCT_BINARIES))" >> $@.lst endif @# Add dex-preopt files and config. $(if $(PRIVATE_DEX_FILES),$(hide) cd $(OUT_DIR) && zip -qryX $(patsubst $(OUT_DIR)/%,%,$@ $(PRIVATE_DEX_FILES))) $(hide) touch $(PRODUCT_OUT)/pdk.mk $(hide) zip -qryXj $@ $(PRIVATE_ODEX_CONFIG) $(PRODUCT_OUT)/pdk.mk $(if $(PRIVATE_DEX_FILES),\ echo "-C $(OUT_DIR) $(addprefix -f ,$(PRIVATE_DEX_FILES))") >> $@.lst touch $(PRODUCT_OUT)/pdk.mk echo "-C $(PRODUCT_OUT) -f $(PRIVATE_ODEX_CONFIG) -f $(PRODUCT_OUT)/pdk.mk" >> $@.lst $(SOONG_ZIP) --ignore_missing_files -o $@ @$@.lst .PHONY: platform platform: $(INSTALLED_PLATFORM_ZIP) Loading Loading @@ -3141,15 +3147,15 @@ OTATOOLS_DEPS += \ $(sort $(shell find external/vboot_reference/tests/devkeys -type f)) endif $(BUILT_OTATOOLS_PACKAGE): $(OTATOOLS) $(OTATOOLS_DEPS) $(OTATOOLS_RELEASETOOLS) | $(ACP) $(BUILT_OTATOOLS_PACKAGE): $(OTATOOLS) $(OTATOOLS_DEPS) $(OTATOOLS_RELEASETOOLS) $(SOONG_ZIP) @echo "Package OTA tools: $@" $(hide) rm -rf $@ $(zip_root) $(hide) mkdir -p $(dir $@) $(zip_root)/bin $(zip_root)/framework $(zip_root)/releasetools $(call copy-files-with-structure,$(OTATOOLS),$(HOST_OUT)/,$(zip_root)) $(hide) $(ACP) -r -d -p build/make/tools/releasetools/* $(zip_root)/releasetools $(hide) cp -r -d -p build/make/tools/releasetools/* $(zip_root)/releasetools $(hide) rm -rf $@ $(zip_root)/releasetools/*.pyc $(hide) (cd $(zip_root) && zip -qryX $(abspath $@) *) $(hide) echo $(OTATOOLS_DEPS) | xargs zip -qryX $(abspath $@)>/dev/null || true $(hide) $(SOONG_ZIP) -o $@ -C $(zip_root) -D $(zip_root) \ -C . $(addprefix -f ,$(OTATOOLS_DEPS)) .PHONY: otatools-package otatools-package: $(BUILT_OTATOOLS_PACKAGE) Loading
core/pdk_config.mk +9 −5 Original line number Diff line number Diff line Loading @@ -174,11 +174,15 @@ ifneq (,$(filter platform platform-java, $(MAKECMDGOALS))$(filter true,$(TARGET_ # files under $(PRODUCT_OUT)/symbols to help debugging. # Source not included to PDK due to dependency issue, so provide symbols instead. # We may not be building all of them. # The platform.zip just silently ignores the nonexistent ones. PDK_SYMBOL_FILES_LIST := \ system/bin/app_process32 \ system/bin/app_process64 PDK_SYMBOL_FILES_LIST := ifeq ($(TARGET_IS_64_BIT),true) PDK_SYMBOL_FILES_LIST += system/bin/app_process64 ifdef TARGET_2ND_ARCH PDK_SYMBOL_FILES_LIST += system/bin/app_process32 endif else PDK_SYMBOL_FILES_LIST += system/bin/app_process32 endif ifneq (,$(PDK_FUSION_PLATFORM_ZIP)$(PDK_FUSION_PLATFORM_DIR)) # symbols should be explicitly pulled for fusion build Loading
core/tasks/sdk-addon.mk +4 −0 Original line number Diff line number Diff line Loading @@ -12,6 +12,8 @@ # See the License for the specific language governing permissions and # limitations under the License. ifndef ONE_SHOT_MAKEFILE .PHONY: sdk_addon # If they didn't define PRODUCT_SDK_ADDON_NAME, then we won't define Loading Loading @@ -148,3 +150,5 @@ ifneq ($(filter sdk_addon,$(MAKECMDGOALS)),) $(error Trying to build sdk_addon, but product '$(INTERNAL_PRODUCT)' does not define one) endif endif # addon_name endif # !ONE_SHOT_MAKEFILE