define Image/mkfs/ubifs
- ifneq ($($(PROFILE)_UBIFS_OPTS)$(UBIFS_OPTS),)
+ $(if $($(PROFILE)_UBIFS_OPTS)$(UBIFS_OPTS),
$(STAGING_DIR_HOST)/bin/mkfs.ubifs \
$(if $($(PROFILE)_UBIFS_OPTS), \
$(shell echo $($(PROFILE)_UBIFS_OPTS)), \
--squash-uids \
-o $(KDIR)/root.ubifs \
-d $(TARGET_DIR)
- endif
+ )
$(call Image/Build,ubifs)
- ifneq ($($(PROFILE)_UBI_OPTS)$(UBI_OPTS),)
+ $(if $($(PROFILE)_UBI_OPTS)$(UBI_OPTS),
$(if $(wildcard ./ubinize.cfg),$(call Image/mkfs/ubifs/generate,))
$(if $(wildcard ./ubinize-overlay.cfg),$(call Image/mkfs/ubifs/generate,-overlay))
- endif
+ )
$(if $(wildcard ./ubinize.cfg),$(call Image/Build,ubi))
endef
endif
)
endef
-define BuildImage/mkfs
- install-images: mkfs-$(1)
- .PHONY: mkfs-$(1)
- mkfs-$(1): kernel_prepare
- $(Image/mkfs/$(1))
- $(call Build/mkfs/default,$(1))
- $(call Build/mkfs/$(1),$(1))
- $(KDIR)/root.$(1): mkfs-$(1)
-
-endef
+$(KDIR)/root.%: kernel_prepare
+ $(Image/mkfs/$*)
define Device/InitProfile
PROFILES := $(PROFILE)
KERNEL_DEPENDS :=
KERNEL_SIZE :=
+ UBOOTENV_IN_UBI :=
+ KERNEL_IN_UBI :=
+ BLOCKSIZE :=
+ PAGESIZE :=
+ SUBPAGESIZE :=
+ UBINIZE_OPTS := -E 5
+
+ DEVICE_DTS :=
+ DEVICE_DTS_DIR :=
+
FILESYSTEMS := $(TARGET_FILESYSTEMS)
endef
+DEFAULT_DEVICE_VARS := \
+ DEVICE_NAME KERNEL KERNEL_INITRAMFS KERNEL_INITRAMFS_IMAGE \
+ DEVICE_DTS DEVICE_DTS_DIR \
+ UBOOTENV_IN_UBI KERNEL_IN_UBI \
+ BLOCKSIZE PAGESIZE SUBPAGESIZE \
+ UBINIZE_OPTS
+
define Device/ExportVar
$(1) : $(2):=$$($(2))
endef
define Device/Export
- $(foreach var,$(DEVICE_VARS) DEVICE_NAME KERNEL KERNEL_INITRAMFS KERNEL_INITRAMFS_IMAGE,$(call Device/ExportVar,$(1),$(var)))
+ $(foreach var,$(DEVICE_VARS) $(DEFAULT_DEVICE_VARS),$(call Device/ExportVar,$(1),$(var)))
$(1) : FILESYSTEM:=$(2)
endef
ifndef IB
define Device/Build/initramfs
$(call Device/Export,$(KDIR)/tmp/$$(KERNEL_INITRAMFS_IMAGE),$(1))
- $$(_TARGET): $(BIN_DIR)/$$(KERNEL_INITRAMFS_IMAGE)
+ $$(_TARGET): $$(if $$(KERNEL_INITRAMFS),$(BIN_DIR)/$$(KERNEL_INITRAMFS_IMAGE))
$(KDIR)/$$(KERNEL_INITRAMFS_NAME):: image_prepare
$(BIN_DIR)/$$(KERNEL_INITRAMFS_IMAGE): $(KDIR)/tmp/$$(KERNEL_INITRAMFS_IMAGE)
$$(call Image/Prepare/Profile,$(1))
legacy-image-$(1):
+ $$(call Image/BuildKernel/Profile,$(1))
$(foreach fs,$(TARGET_FILESYSTEMS),
$$(call Image/Build/Profile,$(1),$(fs))
)
$(foreach device,$(TARGET_DEVICES),$(call Device,$(device)))
$(foreach device,$(LEGACY_DEVICES),$(call LegacyDevice,$(device)))
- $(foreach fs,$(TARGET_FILESYSTEMS) $(fs-subtypes-y),$(call BuildImage/mkfs,$(fs)))
- install-images: kernel_prepare
+ install-images: kernel_prepare $(foreach fs,$(TARGET_FILESYSTEMS) $(fs-subtypes-y),$(KDIR)/root.$(fs))
$(foreach fs,$(TARGET_FILESYSTEMS),
$(call Image/Build,$(fs))
)