diff options
Diffstat (limited to 'mkbootimg.mk')
-rw-r--r-- | mkbootimg.mk | 52 |
1 files changed, 52 insertions, 0 deletions
diff --git a/mkbootimg.mk b/mkbootimg.mk new file mode 100644 index 0000000..999ddc6 --- /dev/null +++ b/mkbootimg.mk @@ -0,0 +1,52 @@ +LOCAL_PATH := $(call my-dir) + +## Use prebuilt kernel +INTERNAL_BOOTIMAGE_ARGS := \ + $(addprefix --second ,$(INSTALLED_2NDBOOTLOADER_TARGET)) \ + --kernel $(TARGET_PREBUILT_KERNEL) + +ifneq ($(BOARD_BUILD_SYSTEM_ROOT_IMAGE),true) +INTERNAL_BOOTIMAGE_ARGS += --ramdisk $(INSTALLED_RAMDISK_TARGET) +endif + +INTERNAL_BOOTIMAGE_FILES := $(filter-out --%,$(INTERNAL_BOOTIMAGE_ARGS)) + +INTERNAL_RECOVERYIMAGE_ARGS := \ + $(addprefix --second ,$(INSTALLED_2NDBOOTLOADER_TARGET)) \ + --kernel $(TARGET_PREBUILT_KERNEL) \ + --ramdisk $(recovery_ramdisk) + +BOARD_KERNEL_CMDLINE := $(strip $(BOARD_KERNEL_CMDLINE)) +ifdef BOARD_KERNEL_CMDLINE + INTERNAL_BOOTIMAGE_ARGS += --cmdline "$(BOARD_KERNEL_CMDLINE)" + INTERNAL_RECOVERYIMAGE_ARGS += --cmdline "$(BOARD_KERNEL_CMDLINE)" +endif + +BOARD_KERNEL_BASE := $(strip $(BOARD_KERNEL_BASE)) +ifdef BOARD_KERNEL_BASE + INTERNAL_BOOTIMAGE_ARGS += --base $(BOARD_KERNEL_BASE) + INTERNAL_RECOVERYIMAGE_ARGS += --base $(BOARD_KERNEL_BASE) +endif + +BOARD_KERNEL_PAGESIZE := $(strip $(BOARD_KERNEL_PAGESIZE)) +ifdef BOARD_KERNEL_PAGESIZE + INTERNAL_BOOTIMAGE_ARGS += --pagesize $(BOARD_KERNEL_PAGESIZE) + INTERNAL_RECOVERYIMAGE_ARGS += --pagesize $(BOARD_KERNEL_PAGESIZE) +endif + +## Overload bootimg generation: Same as the original, using prebuilt kernel +$(INSTALLED_BOOTIMAGE_TARGET): $(MKBOOTIMG) $(INTERNAL_BOOTIMAGE_FILES) + $(call pretty,"Target boot image: $@") + $(hide) $(MKBOOTIMG) $(INTERNAL_BOOTIMAGE_ARGS) $(BOARD_MKBOOTIMG_ARGS) --ramdisk_offset $(BOARD_RAMDISK_OFFSET) --tags_offset $(BOARD_KERNEL_TAGS_OFFSET) --output $@ + $(hide) $(call assert-max-image-size,$@,$(BOARD_BOOTIMAGE_PARTITION_SIZE),raw) + @echo -e ${CL_CYN}"Made boot image: $@"${CL_RST} + +## Overload recoveryimg generation: Same as the original, using prebuilt kernel +$(INSTALLED_RECOVERYIMAGE_TARGET): $(MKBOOTIMG) \ + $(recovery_ramdisk) \ + $(recovery_kernel) + $(call build-recoveryimage-target, $@) + @echo -e ${CL_CYN}"----- Making recovery image ------"${CL_RST} + $(hide) $(MKBOOTIMG) $(INTERNAL_RECOVERYIMAGE_ARGS) $(BOARD_MKBOOTIMG_ARGS) --ramdisk_offset $(BOARD_RAMDISK_OFFSET) --tags_offset $(BOARD_KERNEL_TAGS_OFFSET) --output $@ + $(hide) $(call assert-max-image-size,$@,$(BOARD_RECOVERYIMAGE_PARTITION_SIZE),raw) +@echo -e ${CL_CYN}"Made recovery image: $@"${CL_RST} |