rootfstargz.patch.b 3.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192
  1. From 467ef0219a65a3dd63ce27f41e54f09bf1f2ad64 Mon Sep 17 00:00:00 2001
  2. From: kiddin9 <[email protected]>
  3. Date: Mon, 4 Mar 2024 08:01:42 +0800
  4. Subject: [PATCH] Update image.mk
  5. Signed-off-by: kiddin9 <[email protected]>
  6. ---
  7. include/image.mk | 43 +++++++++++++++++++++++++++++++++++++++++++
  8. 1 file changed, 43 insertions(+)
  9. diff --git a/include/image.mk b/include/image.mk
  10. index 4b6acbe1aad6a..f307dea1ca9a3 100644
  11. --- a/include/image.mk
  12. +++ b/include/image.mk
  13. @@ -313,6 +313,44 @@ ifdef CONFIG_TARGET_ROOTFS_TARGZ
  14. endef
  15. endif
  16. +define Device/Build/targz
  17. + $$(_TARGET): $(if $(CONFIG_JSON_OVERVIEW_IMAGE_INFO), \
  18. + $(BUILD_DIR)/json_info_files/$$(ROOTFSTZ).json, \
  19. + $(BIN_DIR)/$$(ROOTFSTZ))
  20. +
  21. + $(call Device/Export,$(BUILD_DIR)/json_info_files/$$(ROOTFSTZ).json,$(1))
  22. +
  23. + $(BUILD_DIR)/json_info_files/$$(ROOTFSTZ).json: $(BIN_DIR)/$$(ROOTFSTZ)
  24. + @mkdir -p $$(shell dirname $$@)
  25. + DEVICE_ID="$(1)" \
  26. + SOURCE_DATE_EPOCH=$(SOURCE_DATE_EPOCH) \
  27. + FILE_NAME="$$(notdir $$^)" \
  28. + FILE_DIR="$(BIN_DIR)" \
  29. + FILE_TYPE="rootfs" \
  30. + FILE_FILESYSTEM="rootfs" \
  31. + DEVICE_IMG_PREFIX="$$(DEVICE_IMG_PREFIX)" \
  32. + DEVICE_VENDOR="$$(DEVICE_VENDOR)" \
  33. + DEVICE_MODEL="$$(DEVICE_MODEL)" \
  34. + DEVICE_VARIANT="$$(DEVICE_VARIANT)" \
  35. + DEVICE_ALT0_VENDOR="$$(DEVICE_ALT0_VENDOR)" \
  36. + DEVICE_ALT0_MODEL="$$(DEVICE_ALT0_MODEL)" \
  37. + DEVICE_ALT0_VARIANT="$$(DEVICE_ALT0_VARIANT)" \
  38. + DEVICE_ALT1_VENDOR="$$(DEVICE_ALT1_VENDOR)" \
  39. + DEVICE_ALT1_MODEL="$$(DEVICE_ALT1_MODEL)" \
  40. + DEVICE_ALT1_VARIANT="$$(DEVICE_ALT1_VARIANT)" \
  41. + DEVICE_ALT2_VENDOR="$$(DEVICE_ALT2_VENDOR)" \
  42. + DEVICE_ALT2_MODEL="$$(DEVICE_ALT2_MODEL)" \
  43. + DEVICE_ALT2_VARIANT="$$(DEVICE_ALT2_VARIANT)" \
  44. + DEVICE_TITLE="$$(DEVICE_TITLE)" \
  45. + DEVICE_PACKAGES="$$(DEVICE_PACKAGES)" \
  46. + TARGET="$(BOARD)" \
  47. + SUBTARGET="$(if $(SUBTARGET),$(SUBTARGET),generic)" \
  48. + VERSION_NUMBER="$(VERSION_NUMBER)" \
  49. + VERSION_CODE="$(VERSION_CODE)" \
  50. + SUPPORTED_DEVICES="$$(SUPPORTED_DEVICES)" \
  51. + $(TOPDIR)/scripts/json_add_image_info.py $$@
  52. +endef
  53. +
  54. ifdef CONFIG_TARGET_ROOTFS_CPIOGZ
  55. define Image/Build/cpiogz
  56. ( cd $(TARGET_DIR); find . | $(STAGING_DIR_HOST)/bin/cpio -o -H newc -R 0:0 | gzip -9n >$(BIN_DIR)/$(IMG_ROOTFS).cpio.gz )
  57. @@ -394,6 +432,7 @@ define Device/Init
  58. FACTORY_IMG_NAME :=
  59. IMAGE_SIZE :=
  60. NAND_SIZE :=
  61. + ROOTFSTZ = $$(DEVICE_IMG_PREFIX)-rootfs.tar.gz
  62. KERNEL_PREFIX = $$(DEVICE_IMG_PREFIX)
  63. KERNEL_SUFFIX := -kernel.bin
  64. KERNEL_INITRAMFS_SUFFIX = $$(KERNEL_SUFFIX)
  65. @@ -631,6 +670,7 @@ endef
  66. define Device/Build/image
  67. GZ_SUFFIX := $(if $(filter %dtb %gz,$(2)),,$(if $(and $(findstring ext4,$(1)),$(CONFIG_TARGET_IMAGES_GZIP)),.gz))
  68. + GZ_SUFFIX := $(if $(filter %dtb %gz,$(2)),,$(if $(and $(findstring ext4,$(1)),$(findstring img,$(2)),$(CONFIG_TARGET_IMAGES_GZIP)),.gz))
  69. $$(_TARGET): $(if $(CONFIG_JSON_OVERVIEW_IMAGE_INFO), \
  70. $(BUILD_DIR)/json_info_files/$(call DEVICE_IMG_NAME,$(1),$(2)).json, \
  71. $(BIN_DIR)/$(call DEVICE_IMG_NAME,$(1),$(2))$$(GZ_SUFFIX))
  72. @@ -667,6 +707,7 @@ define Device/Build/image
  73. FILE_DIR="$(KDIR)/tmp" \
  74. FILE_TYPE=$(word 1,$(subst ., ,$(2))) \
  75. FILE_FILESYSTEM="$(1)" \
  76. + KERNEL_INITRAMFS_IMAGE="$(subst $(IMG_PREFIX_EXTRA),,$(KERNEL_INITRAMFS_IMAGE))" \
  77. DEVICE_IMG_PREFIX="$(DEVICE_IMG_PREFIX)" \
  78. DEVICE_VENDOR="$(DEVICE_VENDOR)" \
  79. DEVICE_MODEL="$(DEVICE_MODEL)" \
  80. @@ -758,6 +799,8 @@ define Device/Build
  81. $(if $(CONFIG_TARGET_ROOTFS_INITRAMFS),$(call Device/Build/initramfs,$(1)))
  82. $(call Device/Build/kernel,$(1))
  83. + $(if $(CONFIG_TARGET_ROOTFS_TARGZ),$(call Device/Build/targz,$(PROFILE_SANITIZED)))
  84. +
  85. $$(eval $$(foreach compile,$$(COMPILE), \
  86. $$(call Device/Build/compile,$$(compile),$(1))))