1################################################################################ 2# 3# Embed the ubifs image into an ubi image 4# 5################################################################################ 6 7UBI_UBINIZE_OPTS = -m $(BR2_TARGET_ROOTFS_UBI_MINIOSIZE) 8UBI_UBINIZE_OPTS += -p $(BR2_TARGET_ROOTFS_UBI_PEBSIZE) 9ifneq ($(BR2_TARGET_ROOTFS_UBI_SUBSIZE),0) 10UBI_UBINIZE_OPTS += -s $(BR2_TARGET_ROOTFS_UBI_SUBSIZE) 11endif 12 13UBI_UBINIZE_OPTS += $(call qstrip,$(BR2_TARGET_ROOTFS_UBI_OPTS)) 14 15ifeq ($(BR2_TARGET_ROOTFS_UBI_UBIFS),y) 16ROOTFS_UBI_DEPENDENCIES = rootfs-ubifs 17UBI_ROOTFS_NAME=$(ROOTFS_UBIFS_FINAL_IMAGE_NAME) 18UBI_VOL_TYPE=dynamic 19else 20ROOTFS_UBI_DEPENDENCIES = rootfs-squashfs host-mtd 21UBI_ROOTFS_NAME=$(ROOTFS_SQUASHFS_FINAL_IMAGE_NAME) 22UBI_VOL_TYPE=static 23endif 24 25ifeq ($(BR2_TARGET_ROOTFS_UBI_USE_CUSTOM_CONFIG),y) 26UBI_UBINIZE_CONFIG_FILE_PATH = $(call qstrip,$(BR2_TARGET_ROOTFS_UBI_CUSTOM_CONFIG_FILE)) 27else 28UBI_UBINIZE_CONFIG_FILE_PATH = fs/ubi/ubinize.cfg 29endif 30 31# don't use sed -i as it misbehaves on systems with SELinux enabled when this is 32# executed through fakeroot (see #9386) 33define ROOTFS_UBI_CMD 34 sed -e 's;BR2_ROOTFS_UBI_PATH;$(BINARIES_DIR)/$(UBI_ROOTFS_NAME);' \ 35 -e 's;BINARIES_DIR;$(BINARIES_DIR);' \ 36 -e 's;UBI_VOL_TYPE;$(UBI_VOL_TYPE);' \ 37 $(UBI_UBINIZE_CONFIG_FILE_PATH) > $(BUILD_DIR)/ubinize.cfg 38 $(HOST_DIR)/sbin/ubinize -o $@ $(UBI_UBINIZE_OPTS) $(BUILD_DIR)/ubinize.cfg 39 rm $(BUILD_DIR)/ubinize.cfg 40endef 41 42$(eval $(rootfs)) 43