forked from openkylin/platform_build
Merge "Add BOARD_BUILD_SUPER_IMAGE_BY_DEFAULT flag."
am: 8bfcc69e38
Change-Id: I99aed3cf8bc50b29000d3e48cc12a75c331bdb7c
This commit is contained in:
commit
c8be0f5942
|
@ -4471,7 +4471,7 @@ $(PROGUARD_DICT_ZIP) :
|
|||
endif # TARGET_BUILD_APPS
|
||||
|
||||
# -----------------------------------------------------------------
|
||||
# super partition image
|
||||
# super partition image (dist)
|
||||
|
||||
ifeq (true,$(PRODUCT_BUILD_SUPER_PARTITION))
|
||||
|
||||
|
@ -4486,31 +4486,83 @@ define dump-super-image-info
|
|||
endef
|
||||
|
||||
ifneq (true,$(PRODUCT_RETROFIT_DYNAMIC_PARTITIONS))
|
||||
INSTALLED_SUPERIMAGE_TARGET := $(call intermediates-dir-for,PACKAGING,super.img)/super.img
|
||||
$(INSTALLED_SUPERIMAGE_TARGET): extracted_input_target_files := $(patsubst %.zip,%,$(BUILT_TARGET_FILES_PACKAGE))
|
||||
$(INSTALLED_SUPERIMAGE_TARGET): $(LPMAKE) $(BUILT_TARGET_FILES_PACKAGE) $(BUILD_SUPER_IMAGE)
|
||||
$(call pretty,"Target super fs image: $@")
|
||||
|
||||
# For real devices and for dist builds, build super image from target files to an intermediate directory.
|
||||
INTERNAL_SUPERIMAGE_DIST_TARGET := $(call intermediates-dir-for,PACKAGING,super.img)/super.img
|
||||
$(INTERNAL_SUPERIMAGE_DIST_TARGET): extracted_input_target_files := $(patsubst %.zip,%,$(BUILT_TARGET_FILES_PACKAGE))
|
||||
$(INTERNAL_SUPERIMAGE_DIST_TARGET): $(LPMAKE) $(BUILT_TARGET_FILES_PACKAGE) $(BUILD_SUPER_IMAGE)
|
||||
$(call pretty,"Target super fs image from target files: $@")
|
||||
PATH=$(dir $(LPMAKE)):$$PATH \
|
||||
$(BUILD_SUPER_IMAGE) -v $(extracted_input_target_files) $@
|
||||
|
||||
# supernod uses images in the $(PRODUCT_OUT) directory instead of images from target files package.
|
||||
.PHONY: superimage-nodeps supernod
|
||||
superimage-nodeps supernod: intermediates := $(call intermediates-dir-for,PACKAGING,superimage-nodeps)
|
||||
superimage-nodeps supernod: | $(LPMAKE) $(BUILD_SUPER_IMAGE) \
|
||||
$(foreach p, $(BOARD_SUPER_PARTITION_PARTITION_LIST), $(INSTALLED_$(call to-upper,$(p))IMAGE_TARGET))
|
||||
$(call pretty,"make $(INSTALLED_SUPERIMAGE_TARGET): ignoring dependencies")
|
||||
mkdir -p $(intermediates)
|
||||
rm -rf $(intermediates)/misc_info.txt
|
||||
$(call dump-super-image-info,$(intermediates)/misc_info.txt)
|
||||
$(foreach p,$(BOARD_SUPER_PARTITION_PARTITION_LIST), \
|
||||
echo "$(p)_image=$(INSTALLED_$(call to-upper,$(p))IMAGE_TARGET)" >> $(intermediates)/misc_info.txt;)
|
||||
mkdir -p $(dir $(INSTALLED_SUPERIMAGE_TARGET))
|
||||
PATH=$(dir $(LPMAKE)):$$PATH \
|
||||
$(BUILD_SUPER_IMAGE) -v $(intermediates)/misc_info.txt $(INSTALLED_SUPERIMAGE_TARGET)
|
||||
$(call dist-for-goals,dist_files,$(INTERNAL_SUPERIMAGE_DIST_TARGET))
|
||||
|
||||
.PHONY: superimage_dist
|
||||
superimage_dist: $(INTERNAL_SUPERIMAGE_DIST_TARGET)
|
||||
|
||||
endif # PRODUCT_RETROFIT_DYNAMIC_PARTITIONS != "true"
|
||||
endif # BOARD_SUPER_PARTITION_SIZE != ""
|
||||
endif # PRODUCT_BUILD_SUPER_PARTITION == "true"
|
||||
|
||||
$(call dist-for-goals,dist_files,$(INSTALLED_SUPERIMAGE_TARGET))
|
||||
# -----------------------------------------------------------------
|
||||
# super partition image for development
|
||||
|
||||
ifeq (true,$(PRODUCT_BUILD_SUPER_PARTITION))
|
||||
ifneq ($(BOARD_SUPER_PARTITION_SIZE),)
|
||||
ifneq (true,$(PRODUCT_RETROFIT_DYNAMIC_PARTITIONS))
|
||||
|
||||
# Build super.img by using $(INSTALLED_*IMAGE_TARGET) to $(1)
|
||||
# $(1): built image path
|
||||
# $(2): misc_info.txt path; its contents should match expectation of build_super_image.py
|
||||
define build-superimage-target
|
||||
mkdir -p $(dir $(2))
|
||||
rm -rf $(2)
|
||||
$(call dump-super-image-info,$(2))
|
||||
$(foreach p,$(BOARD_SUPER_PARTITION_PARTITION_LIST), \
|
||||
echo "$(p)_image=$(INSTALLED_$(call to-upper,$(p))IMAGE_TARGET)" >> $(2);)
|
||||
mkdir -p $(dir $(1))
|
||||
PATH=$(dir $(LPMAKE)):$$PATH \
|
||||
$(BUILD_SUPER_IMAGE) -v $(2) $(1)
|
||||
endef
|
||||
|
||||
INSTALLED_SUPERIMAGE_TARGET := $(PRODUCT_OUT)/super.img
|
||||
INSTALLED_SUPERIMAGE_DEPENDENCIES := $(LPMAKE) $(BUILD_SUPER_IMAGE) \
|
||||
$(foreach p, $(BOARD_SUPER_PARTITION_PARTITION_LIST), $(INSTALLED_$(call to-upper,$(p))IMAGE_TARGET))
|
||||
|
||||
# If BOARD_BUILD_SUPER_IMAGE_BY_DEFAULT is set, super.img is built from images in the
|
||||
# $(PRODUCT_OUT) directory, and is built to $(PRODUCT_OUT)/super.img. Also, it will
|
||||
# be built for non-dist builds. This is useful for devices that uses super.img directly, e.g.
|
||||
# virtual devices.
|
||||
ifeq (true,$(BOARD_BUILD_SUPER_IMAGE_BY_DEFAULT))
|
||||
$(INSTALLED_SUPERIMAGE_TARGET): $(INSTALLED_SUPERIMAGE_DEPENDENCIES)
|
||||
$(call pretty,"Target super fs image for debug: $@")
|
||||
$(call build-superimage-target,$(INSTALLED_SUPERIMAGE_TARGET),\
|
||||
$(call intermediates-dir-for,PACKAGING,superimage_debug)/misc_info.txt)
|
||||
|
||||
droidcore: $(INSTALLED_SUPERIMAGE_TARGET)
|
||||
|
||||
# For devices that uses super image directly, the superimage target points to the file in $(PRODUCT_OUT).
|
||||
.PHONY: superimage
|
||||
superimage: $(INSTALLED_SUPERIMAGE_TARGET)
|
||||
endif # BOARD_BUILD_SUPER_IMAGE_BY_DEFAULT
|
||||
|
||||
# Build $(PRODUCT_OUT)/super.img without dependencies.
|
||||
.PHONY: superimage-nodeps supernod
|
||||
superimage-nodeps supernod: intermediates :=
|
||||
superimage-nodeps supernod: | $(INSTALLED_SUPERIMAGE_DEPENDENCIES)
|
||||
$(call pretty,"make $(INSTALLED_SUPERIMAGE_TARGET): ignoring dependencies")
|
||||
$(call build-superimage-target,$(INSTALLED_SUPERIMAGE_TARGET),\
|
||||
$(call intermediates-dir-for,PACKAGING,superimage-nodeps)/misc_info.txt)
|
||||
|
||||
endif # PRODUCT_RETROFIT_DYNAMIC_PARTITIONS != "true"
|
||||
endif # BOARD_SUPER_PARTITION_SIZE != ""
|
||||
endif # PRODUCT_BUILD_SUPER_PARTITION == "true"
|
||||
|
||||
# -----------------------------------------------------------------
|
||||
# super empty image
|
||||
|
||||
ifeq (true,$(PRODUCT_BUILD_SUPER_PARTITION))
|
||||
ifneq ($(BOARD_SUPER_PARTITION_SIZE),)
|
||||
|
||||
INSTALLED_SUPERIMAGE_EMPTY_TARGET := $(PRODUCT_OUT)/super_empty.img
|
||||
$(INSTALLED_SUPERIMAGE_EMPTY_TARGET): intermediates := $(call intermediates-dir-for,PACKAGING,super_empty)
|
||||
|
|
|
@ -1469,9 +1469,6 @@ odmimage: $(INSTALLED_ODMIMAGE_TARGET)
|
|||
.PHONY: systemotherimage
|
||||
systemotherimage: $(INSTALLED_SYSTEMOTHERIMAGE_TARGET)
|
||||
|
||||
.PHONY: superimage
|
||||
superimage: $(INSTALLED_SUPERIMAGE_TARGET)
|
||||
|
||||
.PHONY: superimage_empty
|
||||
superimage_empty: $(INSTALLED_SUPERIMAGE_EMPTY_TARGET)
|
||||
|
||||
|
|
Loading…
Reference in New Issue