mailarchive of the ptxdist mailing list
 help / color / mirror / Atom feed
* [ptxdist] [PATCH v2] rules: host-erofs-utils: package
@ 2025-04-28  5:57 Leonard Göhrs
  2025-05-14  6:07 ` [ptxdist] [APPLIED] " Michael Olbrich
  0 siblings, 1 reply; 2+ messages in thread
From: Leonard Göhrs @ 2025-04-28  5:57 UTC (permalink / raw)
  To: ptxdist; +Cc: Leonard Göhrs

Erofs is a read only filesystem, much like squashfs, that is optimized
for read performance (rather than e.g. maximum compression ratio).

The erofs-utils host package allows building erofs images.
Since genimage does not have erofs support yet (there is a pull request
though [1]) this can for example be achieved via the tar input feature:

    $ mkfs.erofs -z zstd --ungzip --tar root.erofs root.tgz

and a custom rule.

[1]: https://github.com/pengutronix/genimage/pull/247

Signed-off-by: Leonard Göhrs <l.goehrs@pengutronix.de>
---
 patches/erofs-utils-1.8.5/autogen.sh |  1 +
 rules/host-erofs-utils.in            | 19 ++++++++++++++
 rules/host-erofs-utils.make          | 38 ++++++++++++++++++++++++++++
 3 files changed, 58 insertions(+)
 create mode 120000 patches/erofs-utils-1.8.5/autogen.sh
 create mode 100644 rules/host-erofs-utils.in
 create mode 100644 rules/host-erofs-utils.make

diff --git a/patches/erofs-utils-1.8.5/autogen.sh b/patches/erofs-utils-1.8.5/autogen.sh
new file mode 120000
index 000000000..9f8a4cb7d
--- /dev/null
+++ b/patches/erofs-utils-1.8.5/autogen.sh
@@ -0,0 +1 @@
+../autogen.sh
\ No newline at end of file
diff --git a/rules/host-erofs-utils.in b/rules/host-erofs-utils.in
new file mode 100644
index 000000000..80dec1b80
--- /dev/null
+++ b/rules/host-erofs-utils.in
@@ -0,0 +1,19 @@
+## SECTION=hosttools_noprompt
+
+config HOST_EROFS_UTILS
+	tristate
+	default y if ALLYES
+	select HOST_LIBUUID
+	select HOST_ZLIB
+	select HOST_LZ4 if HOST_EROFS_UTILS_LZ4_SUPPORT
+	select HOST_ZSTD if HOST_EROFS_UTILS_ZSTD_SUPPORT
+
+if HOST_EROFS_UTILS
+
+config HOST_EROFS_UTILS_LZ4_SUPPORT
+	bool
+
+config HOST_EROFS_UTILS_ZSTD_SUPPORT
+	bool
+
+endif
diff --git a/rules/host-erofs-utils.make b/rules/host-erofs-utils.make
new file mode 100644
index 000000000..2d86abd5f
--- /dev/null
+++ b/rules/host-erofs-utils.make
@@ -0,0 +1,38 @@
+# -*-makefile-*-
+#
+# Copyright (C) 2025 by Leonard Göhrs <l.goehrs@pengutronix.de>
+#
+# For further information about the PTXdist project and license conditions
+# see the README file.
+#
+
+#
+# We provide this package
+#
+HOST_PACKAGES-$(PTXCONF_HOST_EROFS_UTILS) += host-erofs-utils
+
+#
+# Paths and names
+#
+HOST_EROFS_UTILS_VERSION	:= 1.8.5
+HOST_EROFS_UTILS_MD5		:= a4a4d803bc5120ffacc05a453a505ff7
+HOST_EROFS_UTILS		:= erofs-utils-$(HOST_EROFS_UTILS_VERSION)
+HOST_EROFS_UTILS_SUFFIX		:= tar.gz
+HOST_EROFS_UTILS_URL		:= https://web.git.kernel.org/pub/scm/linux/kernel/git/xiang/erofs-utils.git/snapshot/$(HOST_EROFS_UTILS).$(HOST_EROFS_UTILS_SUFFIX)
+HOST_EROFS_UTILS_SOURCE		:= $(SRCDIR)/$(HOST_EROFS_UTILS).$(HOST_EROFS_UTILS_SUFFIX)
+HOST_EROFS_UTILS_DIR		:= $(HOST_BUILDDIR)/$(HOST_EROFS_UTILS)
+HOST_EROFS_UTILS_LICENSE	:= GPL-2.0-or-later
+HOST_EROFS_UTILS_LICENSE_FILES	:= \
+	file://COPYING;md5=73001d804ea1e3d84365f652242cca20 \
+	file://LICENSES/GPL-2.0;md5=94fa01670a2a8f2d3ab2de15004e0848
+
+# ----------------------------------------------------------------------------
+# Prepare
+# ----------------------------------------------------------------------------
+
+#
+# autoconf
+#
+HOST_EROFS_UTILS_CONF_TOOL	:= autoconf
+
+# vim: syntax=make
-- 
2.39.5




^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: [ptxdist] [APPLIED] rules: host-erofs-utils: package
  2025-04-28  5:57 [ptxdist] [PATCH v2] rules: host-erofs-utils: package Leonard Göhrs
@ 2025-05-14  6:07 ` Michael Olbrich
  0 siblings, 0 replies; 2+ messages in thread
From: Michael Olbrich @ 2025-05-14  6:07 UTC (permalink / raw)
  To: ptxdist; +Cc: Leonard Göhrs

Thanks, applied as b232d3bebd8107be22df88a0aee79e128aa8e39c.

Michael

[sent from post-receive hook]

On Wed, 14 May 2025 08:07:36 +0200, Leonard Göhrs <l.goehrs@pengutronix.de> wrote:
> Erofs is a read only filesystem, much like squashfs, that is optimized
> for read performance (rather than e.g. maximum compression ratio).
> 
> The erofs-utils host package allows building erofs images.
> Since genimage does not have erofs support yet (there is a pull request
> though [1]) this can for example be achieved via the tar input feature:
> 
>     $ mkfs.erofs -z zstd --ungzip --tar root.erofs root.tgz
> 
> and a custom rule.
> 
> [1]: https://github.com/pengutronix/genimage/pull/247
> 
> Signed-off-by: Leonard Göhrs <l.goehrs@pengutronix.de>
> Message-Id: <20250428055735.1705564-1-l.goehrs@pengutronix.de>
> [mol: pin down configure options]
> Signed-off-by: Michael Olbrich <m.olbrich@pengutronix.de>
> 
> diff --git a/patches/erofs-utils-1.8.5/autogen.sh b/patches/erofs-utils-1.8.5/autogen.sh
> new file mode 120000
> index 000000000000..9f8a4cb7ddcb
> --- /dev/null
> +++ b/patches/erofs-utils-1.8.5/autogen.sh
> @@ -0,0 +1 @@
> +../autogen.sh
> \ No newline at end of file
> diff --git a/rules/host-erofs-utils.in b/rules/host-erofs-utils.in
> new file mode 100644
> index 000000000000..80dec1b80dc5
> --- /dev/null
> +++ b/rules/host-erofs-utils.in
> @@ -0,0 +1,19 @@
> +## SECTION=hosttools_noprompt
> +
> +config HOST_EROFS_UTILS
> +	tristate
> +	default y if ALLYES
> +	select HOST_LIBUUID
> +	select HOST_ZLIB
> +	select HOST_LZ4 if HOST_EROFS_UTILS_LZ4_SUPPORT
> +	select HOST_ZSTD if HOST_EROFS_UTILS_ZSTD_SUPPORT
> +
> +if HOST_EROFS_UTILS
> +
> +config HOST_EROFS_UTILS_LZ4_SUPPORT
> +	bool
> +
> +config HOST_EROFS_UTILS_ZSTD_SUPPORT
> +	bool
> +
> +endif
> diff --git a/rules/host-erofs-utils.make b/rules/host-erofs-utils.make
> new file mode 100644
> index 000000000000..b4f8184f859d
> --- /dev/null
> +++ b/rules/host-erofs-utils.make
> @@ -0,0 +1,55 @@
> +# -*-makefile-*-
> +#
> +# Copyright (C) 2025 by Leonard Göhrs <l.goehrs@pengutronix.de>
> +#
> +# For further information about the PTXdist project and license conditions
> +# see the README file.
> +#
> +
> +#
> +# We provide this package
> +#
> +HOST_PACKAGES-$(PTXCONF_HOST_EROFS_UTILS) += host-erofs-utils
> +
> +#
> +# Paths and names
> +#
> +HOST_EROFS_UTILS_VERSION	:= 1.8.5
> +HOST_EROFS_UTILS_MD5		:= a4a4d803bc5120ffacc05a453a505ff7
> +HOST_EROFS_UTILS		:= erofs-utils-$(HOST_EROFS_UTILS_VERSION)
> +HOST_EROFS_UTILS_SUFFIX		:= tar.gz
> +HOST_EROFS_UTILS_URL		:= https://web.git.kernel.org/pub/scm/linux/kernel/git/xiang/erofs-utils.git/snapshot/$(HOST_EROFS_UTILS).$(HOST_EROFS_UTILS_SUFFIX)
> +HOST_EROFS_UTILS_SOURCE		:= $(SRCDIR)/$(HOST_EROFS_UTILS).$(HOST_EROFS_UTILS_SUFFIX)
> +HOST_EROFS_UTILS_DIR		:= $(HOST_BUILDDIR)/$(HOST_EROFS_UTILS)
> +HOST_EROFS_UTILS_LICENSE	:= GPL-2.0-or-later
> +HOST_EROFS_UTILS_LICENSE_FILES	:= \
> +	file://COPYING;md5=73001d804ea1e3d84365f652242cca20 \
> +	file://LICENSES/GPL-2.0;md5=94fa01670a2a8f2d3ab2de15004e0848
> +
> +# ----------------------------------------------------------------------------
> +# Prepare
> +# ----------------------------------------------------------------------------
> +
> +#
> +# autoconf
> +#
> +HOST_EROFS_UTILS_CONF_TOOL	:= autoconf
> +HOST_EROFS_UTILS_CONF_OPT	:= \
> +	$(HOST_AUTOCONF) \
> +	--disable-multithreading \
> +	--disable-debug \
> +	--disable-werror \
> +	--disable-fuzzing \
> +	--$(call ptx/endis, PTXCONF_HOST_EROFS_UTILS_LZ4_SUPPORT)-lz4 \
> +	--disable-lzma \
> +	--disable-fuse \
> +	--disable-static-fuse \
> +	--without-zlib \
> +	--without-libdeflate \
> +	--$(call ptx/wwo, PTXCONF_HOST_EROFS_UTILS_ZSTD_SUPPORT)-libzstd \
> +	--without-qpl \
> +	--without-xxhash \
> +	--with-uuid \
> +	--without-selinux
> +
> +# vim: syntax=make



^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2025-05-14  6:08 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2025-04-28  5:57 [ptxdist] [PATCH v2] rules: host-erofs-utils: package Leonard Göhrs
2025-05-14  6:07 ` [ptxdist] [APPLIED] " Michael Olbrich

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox