fs/erofs: add support for creating EROFS rootfs image
authorGao Xiang <hsiangkao@aol.com>
Mon, 16 Mar 2020 01:58:38 +0000 (09:58 +0800)
committerYann E. MORIN <yann.morin.1998@free.fr>
Thu, 19 Mar 2020 17:43:15 +0000 (18:43 +0100)
This patch makes possible to create rootfs image using
EROFS filesystem.

Signed-off-by: Gao Xiang <hsiangkao@aol.com>
[yann.morin.1998@free.fr:
  - simplify help text of filesystem entry
  - drop the compression choice, keep the single boolean
]
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
fs/Config.in
fs/erofs/Config.in [new file with mode: 0644]
fs/erofs/erofs.mk [new file with mode: 0644]

index 527051ef5442fe3ddd9f7f6974b8ce3d484f0a9f..37a2aa21f8ac7fd1f3b2ae30cae07065552e4945 100644 (file)
@@ -5,6 +5,7 @@ source "fs/btrfs/Config.in"
 source "fs/cloop/Config.in"
 source "fs/cpio/Config.in"
 source "fs/cramfs/Config.in"
+source "fs/erofs/Config.in"
 source "fs/ext2/Config.in"
 source "fs/f2fs/Config.in"
 source "fs/initramfs/Config.in"
diff --git a/fs/erofs/Config.in b/fs/erofs/Config.in
new file mode 100644 (file)
index 0000000..d7360ed
--- /dev/null
@@ -0,0 +1,14 @@
+config BR2_TARGET_ROOTFS_EROFS
+       bool "erofs root filesystem"
+       select BR2_PACKAGE_HOST_EROFS_UTILS
+       help
+         Build a EROFS root filesystem.
+
+if BR2_TARGET_ROOTFS_EROFS
+
+config BR2_TARGET_ROOTFS_EROFS_LZ4HC
+       bool "lz4hc compression"
+       help
+         Use lz4 high-compression to compress data in the filesystem.
+
+endif # BR2_TARGET_ROOTFS_EROFS
diff --git a/fs/erofs/erofs.mk b/fs/erofs/erofs.mk
new file mode 100644 (file)
index 0000000..58559d4
--- /dev/null
@@ -0,0 +1,17 @@
+################################################################################
+#
+# Build the EROFS root filesystem image
+#
+################################################################################
+
+ROOTFS_EROFS_DEPENDENCIES = host-erofs-utils
+
+ifeq ($(BR2_TARGET_ROOTFS_EROFS_LZ4HC),y)
+ROOTFS_EROFS_ARGS += -zlz4hc
+endif
+
+define ROOTFS_EROFS_CMD
+       $(HOST_DIR)/bin/mkfs.erofs $(ROOTFS_EROFS_ARGS) $@ $(TARGET_DIR)
+endef
+
+$(eval $(rootfs))