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