1*4882a593Smuzhiyun################################################################################ 2*4882a593Smuzhiyun# 3*4882a593Smuzhiyun# Build the f2fs root filesystem image 4*4882a593Smuzhiyun# 5*4882a593Smuzhiyun################################################################################ 6*4882a593Smuzhiyun 7*4882a593SmuzhiyunF2FS_SIZE = $(call qstrip,$(BR2_TARGET_ROOTFS_F2FS_SIZE)) 8*4882a593Smuzhiyunifeq ($(BR2_TARGET_ROOTFS_F2FS)-$(F2FS_SIZE),y-) 9*4882a593Smuzhiyun$(error BR2_TARGET_ROOTFS_F2FS_SIZE cannot be empty) 10*4882a593Smuzhiyunendif 11*4882a593Smuzhiyun 12*4882a593Smuzhiyun# qstrip results in stripping consecutive spaces into a single one. So the 13*4882a593Smuzhiyun# variable is not qstrip-ed to preserve the integrity of the string value. 14*4882a593SmuzhiyunF2FS_LABEL = $(subst ",,$(BR2_TARGET_ROOTFS_F2FS_LABEL)) 15*4882a593Smuzhiyun# ") 16*4882a593SmuzhiyunF2FS_COLD_FILES = $(call qstrip,$(BR2_TARGET_ROOTFS_F2FS_COLD_FILES)) 17*4882a593SmuzhiyunF2FS_HOT_FILES = $(call qstrip,$(BR2_TARGET_ROOTFS_F2FS_HOT_FILES)) 18*4882a593Smuzhiyun 19*4882a593Smuzhiyunifeq ($(BR2_TARGET_ROOTFS_F2FS_DISCARD),y) 20*4882a593SmuzhiyunF2FS_DISCARD = 1 21*4882a593Smuzhiyunelse 22*4882a593SmuzhiyunF2FS_DISCARD = 0 23*4882a593Smuzhiyunendif 24*4882a593Smuzhiyun 25*4882a593SmuzhiyunF2FS_FEATURES = $(call qstrip,$(BR2_TARGET_ROOTFS_F2FS_FEATURES)) 26*4882a593Smuzhiyun 27*4882a593SmuzhiyunF2FS_OPTS = \ 28*4882a593Smuzhiyun -f \ 29*4882a593Smuzhiyun -l "$(F2FS_LABEL)" \ 30*4882a593Smuzhiyun -t $(F2FS_DISCARD) \ 31*4882a593Smuzhiyun -o $(BR2_TARGET_ROOTFS_F2FS_OVERPROVISION) \ 32*4882a593Smuzhiyun $(if $(F2FS_COLD_FILES),-e "$(F2FS_COLD_FILES)") \ 33*4882a593Smuzhiyun $(if $(F2FS_HOT_FILES),-E "$(F2FS_HOT_FILES)") \ 34*4882a593Smuzhiyun $(if $(F2FS_FEATURES),-O "$(F2FS_FEATURES)") 35*4882a593Smuzhiyun 36*4882a593SmuzhiyunROOTFS_F2FS_DEPENDENCIES = host-f2fs-tools 37*4882a593Smuzhiyun 38*4882a593Smuzhiyundefine ROOTFS_F2FS_CMD 39*4882a593Smuzhiyun $(RM) -f $@ 40*4882a593Smuzhiyun truncate -s $(F2FS_SIZE) $@ 41*4882a593Smuzhiyun $(HOST_DIR)/sbin/mkfs.f2fs $(F2FS_OPTS) $@ 42*4882a593Smuzhiyun $(HOST_DIR)/sbin/sload.f2fs -f $(TARGET_DIR) $@ 43*4882a593Smuzhiyunendef 44*4882a593Smuzhiyun 45*4882a593Smuzhiyun$(eval $(rootfs)) 46