From 9ece943540185d4f7b661129005e2417355b2526 Mon Sep 17 00:00:00 2001 From: Gao Xiang Date: Thu, 26 Jun 2025 01:14:32 +0800 Subject: [PATCH] tools: add erofs-utils Add erofs-utils to create an EROFS-based rootfs for image generation. Signed-off-by: Gao Xiang Link: https://github.com/openwrt/openwrt/pull/19244 Signed-off-by: Christian Marangi --- tools/Makefile | 2 ++ tools/erofs-utils/Makefile | 40 ++++++++++++++++++++++++++++++++++++++ 2 files changed, 42 insertions(+) create mode 100644 tools/erofs-utils/Makefile diff --git a/tools/Makefile b/tools/Makefile index 1776f645926..c2b36361a42 100644 --- a/tools/Makefile +++ b/tools/Makefile @@ -40,6 +40,7 @@ tools-y += cpio tools-y += dosfstools tools-y += e2fsprogs tools-y += elfutils +tools-y += erofs-utils tools-y += expat tools-y += fakeroot tools-y += findutils @@ -99,6 +100,7 @@ $(curdir)/cmake/compile += $(curdir)/libressl/compile $(curdir)/ninja/compile $( $(curdir)/dosfstools/compile := $(curdir)/automake/compile $(curdir)/e2fsprogs/compile := $(curdir)/libtool/compile $(curdir)/util-linux/compile $(curdir)/elfutils/compile := $(curdir)/m4/compile $(curdir)/zlib/compile $(curdir)/gnulib/compile $(curdir)/libtool/compile +$(curdir)/erofs-utils/compile := $(curdir)/libtool/compile $(curdir)/xz/compile $(curdir)/lz4/compile $(curdir)/util-linux/compile $(curdir)/fakeroot/compile := $(curdir)/libtool/compile $(curdir)/findutils/compile := $(curdir)/bison/compile $(curdir)/firmware-utils/compile += $(curdir)/cmake/compile diff --git a/tools/erofs-utils/Makefile b/tools/erofs-utils/Makefile new file mode 100644 index 00000000000..e25f2f8409c --- /dev/null +++ b/tools/erofs-utils/Makefile @@ -0,0 +1,40 @@ +# +# Copyright (C) 2009-2025 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# +include $(TOPDIR)/rules.mk + +PKG_NAME:=erofs-utils +PKG_VERSION:=1.8.9 +PKG_RELEASE:=1 + +PKG_SOURCE_PROTO:=git +PKG_SOURCE_URL=https://git.kernel.org/pub/scm/linux/kernel/git/xiang/erofs-utils.git +PKG_MIRROR_HASH:=feab7386de6faf11cb29af5bfa240ea119b14bfd66c14d80de0509c1ab16dcc6 +PKG_SOURCE_DATE:=2025-06-26 +PKG_SOURCE_VERSION:=81169bf3cfd26b8f2b3aa3b20da23971168a90a9 + +PKG_FIXUP:=autoreconf + +include $(INCLUDE_DIR)/host-build.mk + +HOST_CONFIGURE_ARGS=\ + --enable-multithreading \ + --enable-lzma \ + --enable-lz4 \ + --disable-fuse \ + --with-uuid + +define Host/Install + $(INSTALL_BIN) $(HOST_BUILD_DIR)/mkfs/mkfs.erofs $(STAGING_DIR_HOST)/bin/ + $(INSTALL_BIN) $(HOST_BUILD_DIR)/fsck/fsck.erofs $(STAGING_DIR_HOST)/bin/ +endef + +define Host/Clean + rm -f $(STAGING_DIR_HOST)/bin/mkfs.erofs + rm -f $(STAGING_DIR_HOST)/bin/fsck.erofs +endef + +$(eval $(call HostBuild))