96 lines
2.7 KiB
Makefile
96 lines
2.7 KiB
Makefile
################################################################################
|
|
#
|
|
# Build the ubifs root filesystem image
|
|
#
|
|
################################################################################
|
|
|
|
ifeq ($(BR2_UBI_PARAM_USER_CUSTOM),y)
|
|
UBIFS_OPTS_CUSTOM = \
|
|
-e $(BR2_TARGET_ROOTFS_UBIFS_LEBSIZE) \
|
|
-c $(BR2_TARGET_ROOTFS_UBIFS_MAXLEBCNT) \
|
|
-m $(BR2_TARGET_ROOTFS_UBIFS_MINIOSIZE)
|
|
|
|
MK_UBIFS_HOOK += MK_UBIFS_USER_CUSTOM
|
|
endif
|
|
|
|
UBIFS_SIZE_DEC = $(shell printf "%d" $(BR2_TARGET_ROOTFS_UBIFS_MAX_SIZE))
|
|
ifeq ($(BR2_UBI_DEVICE_SPI_NAND_2K_128K),y)
|
|
UBIFS_LEBCNT_2K_128K = $(shell echo "$(UBIFS_SIZE_DEC) / 131072 " | bc)
|
|
UBIFS_OPTS_2K_128K = \
|
|
-e 0x1f000 \
|
|
-m 0x800 \
|
|
-c $(UBIFS_LEBCNT_2K_128K)
|
|
|
|
MK_UBIFS_HOOK += MK_UBIFS_PAGE_2K_BLOCK_128K
|
|
endif
|
|
|
|
ifeq ($(BR2_UBI_DEVICE_SPI_NAND_4K_256K),y)
|
|
UBIFS_LEBCNT_4K_256K = $(shell echo "$(UBIFS_SIZE_DEC) / 262144" | bc)
|
|
UBIFS_OPTS_4K_256K = \
|
|
-e 0x3e000 \
|
|
-m 0x1000 \
|
|
-c $(UBIFS_LEBCNT_4K_256K)
|
|
|
|
MK_UBIFS_HOOK += MK_UBIFS_PAGE_4K_BLOCK_256K
|
|
endif
|
|
|
|
ifeq ($(BR2_TARGET_ROOTFS_UBIFS_RT_ZLIB),y)
|
|
UBIFS_OPTS += -x zlib
|
|
endif
|
|
ifeq ($(BR2_TARGET_ROOTFS_UBIFS_RT_LZO),y)
|
|
UBIFS_OPTS += -x lzo
|
|
endif
|
|
ifeq ($(BR2_TARGET_ROOTFS_UBIFS_RT_NONE),y)
|
|
UBIFS_OPTS += -x none
|
|
endif
|
|
|
|
UBIFS_OPTS += $(call qstrip,$(BR2_TARGET_ROOTFS_UBIFS_OPTS))
|
|
|
|
ROOTFS_UBIFS_DEPENDENCIES = host-mtd
|
|
|
|
define MK_UBIFS_PAGE_2K_BLOCK_128K
|
|
$(HOST_DIR)/sbin/mkfs.ubifs \
|
|
-d $(TARGET_DIR) $(UBIFS_OPTS_2K_128K) $(UBIFS_OPTS) \
|
|
-o $(subst .ubifs,_page_2k_block_128k.ubifs,$@)
|
|
endef
|
|
|
|
define MK_UBIFS_PAGE_4K_BLOCK_256K
|
|
$(HOST_DIR)/sbin/mkfs.ubifs \
|
|
-d $(TARGET_DIR) $(UBIFS_OPTS_4K_256K) $(UBIFS_OPTS) \
|
|
-o $(subst .ubifs,_page_4k_block_256k.ubifs,$@)
|
|
endef
|
|
|
|
define MK_UBIFS_USER_CUSTOM
|
|
$(HOST_DIR)/sbin/mkfs.ubifs \
|
|
-d $(TARGET_DIR) $(UBIFS_OPTS_CUSTOM) $(UBIFS_OPTS) -o $@
|
|
endef
|
|
|
|
define ROOTFS_UBIFS_CMD
|
|
$(foreach hook, $(MK_UBIFS_HOOK), $(call $(hook))$(sep))
|
|
endef
|
|
|
|
define MK_UBIFS_PAGE_2K_BLOCK_128K_COMPRESS
|
|
$(Q)PATH=$(BR_PATH) $(ROOTFS_UBIFS_COMPRESS_CMD) \
|
|
$(subst .ubifs,_page_2k_block_128k.ubifs,$@) > \
|
|
$(subst .ubifs,_page_2k_block_128k.ubifs,$@)$(ROOTFS_UBIFS_COMPRESS_EXT)
|
|
endef
|
|
|
|
define MK_UBIFS_PAGE_4K_BLOCK_256K_COMPRESS
|
|
$(Q)PATH=$(BR_PATH) $(ROOTFS_UBIFS_COMPRESS_CMD) \
|
|
$(subst .ubifs,_page_4k_block_256k.ubifs,$@) > \
|
|
$(subst .ubifs,_page_4k_block_256k.ubifs,$@)$(ROOTFS_UBIFS_COMPRESS_EXT)
|
|
endef
|
|
|
|
define MK_UBIFS_USER_CUSTOM_COMPRESS
|
|
$(Q)PATH=$(BR_PATH) $(ROOTFS_UBIFS_COMPRESS_CMD) $@ > $@$(ROOTFS_UBIFS_COMPRESS_EXT)
|
|
endef
|
|
|
|
ROOTFS_UBIFS_COMPRESS_HOOKS += MK_UBIFS_PAGE_2K_BLOCK_128K_COMPRESS
|
|
ROOTFS_UBIFS_COMPRESS_HOOKS += MK_UBIFS_PAGE_4K_BLOCK_256K_COMPRESS
|
|
|
|
ifeq ($(BR2_UBI_PARAM_USER_CUSTOM),y)
|
|
ROOTFS_UBIFS_COMPRESS_HOOKS += MK_UBIFS_USER_CUSTOM_COMPRESS
|
|
endif
|
|
|
|
$(eval $(rootfs))
|