diff mbox series

[2/2] package/bcachefs-tools: new package

Message ID 20240408013859.732937-3-matt.stav.taylor@gmail.com
State New
Headers show
Series Add bcachefs-tools package | expand

Commit Message

Matt Staveley-Taylor April 8, 2024, 1:38 a.m. UTC
Add the bcachefs-tools package. Note that this does not teach buildroot
how to create bcachefs filesystems.

Signed-off-by: Matt Staveley-Taylor <matt.stav.taylor@gmail.com>
---
 DEVELOPERS                                 |  3 +++
 package/Config.in                          |  1 +
 package/bcachefs-tools/Config.in           | 26 ++++++++++++++++++++++
 package/bcachefs-tools/bcachefs-tools.hash |  2 ++
 package/bcachefs-tools/bcachefs-tools.mk   | 23 +++++++++++++++++++
 5 files changed, 55 insertions(+)
 create mode 100644 package/bcachefs-tools/Config.in
 create mode 100644 package/bcachefs-tools/bcachefs-tools.hash
 create mode 100644 package/bcachefs-tools/bcachefs-tools.mk
diff mbox series

Patch

diff --git a/DEVELOPERS b/DEVELOPERS
index d78661cd60..d523b441ac 100644
--- a/DEVELOPERS
+++ b/DEVELOPERS
@@ -2172,6 +2172,9 @@  F:	package/ts4900-fpga/
 N:	Matt Silva <dev@matt-silva.com>
 F:	package/rlwrap/
 
+N:	Matt Staveley-Taylor <matt.stav.taylor@gmail.com>
+F:	package/bcachefs-tools/
+
 N:	Mauro Condarelli <mc5686@mclink.it>
 F:	package/mc/
 F:	package/python-autobahn/
diff --git a/package/Config.in b/package/Config.in
index 0d31faf354..92de263349 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -213,6 +213,7 @@  menu "Filesystem and flash utilities"
 	source "package/aufs/Config.in"
 	source "package/aufs-util/Config.in"
 	source "package/autofs/Config.in"
+	source "package/bcachefs-tools/Config.in"
 	source "package/bmap-tools/Config.in"
 	source "package/btrfs-progs/Config.in"
 	source "package/cifs-utils/Config.in"
diff --git a/package/bcachefs-tools/Config.in b/package/bcachefs-tools/Config.in
new file mode 100644
index 0000000000..2c7cbcf406
--- /dev/null
+++ b/package/bcachefs-tools/Config.in
@@ -0,0 +1,26 @@ 
+config BR2_PACKAGE_BCACHEFS_TOOLS
+	bool "bcachefs-tools"
+	depends on BR2_USE_MMU # util-linux
+	depends on BR2_TOOLCHAIN_HAS_THREADS
+	depends on BR2_PACKAGE_HAS_UDEV
+	select BR2_PACKAGE_KEYUTILS
+	select BR2_PACKAGE_LIBAIO
+	select BR2_PACKAGE_LIBSODIUM
+	select BR2_PACKAGE_LIBURCU
+	select BR2_PACKAGE_LZ4
+	select BR2_PACKAGE_UTIL_LINUX
+	select BR2_PACKAGE_UTIL_LINUX_LIBBLKID
+	select BR2_PACKAGE_UTIL_LINUX_LIBUUID
+	select BR2_PACKAGE_ZLIB
+	select BR2_PACKAGE_ZSTD
+	help
+	  Bcachefs filesystem utilities
+
+	  https://bcachefs.org/
+
+comment "bcachefs-tools needs udev"
+	depends on !BR2_PACKAGE_HAS_UDEV
+
+comment "bcachefs-tools needs a toolchain w/ threads"
+	depends on BR2_USE_MMU
+	depends on !BR2_TOOLCHAIN_HAS_THREADS
diff --git a/package/bcachefs-tools/bcachefs-tools.hash b/package/bcachefs-tools/bcachefs-tools.hash
new file mode 100644
index 0000000000..def2762bea
--- /dev/null
+++ b/package/bcachefs-tools/bcachefs-tools.hash
@@ -0,0 +1,2 @@ 
+# Locally computed
+sha256  f2125c10494e484611e77a32c301e1cbd5cf6f247808cf1c2c7987c68c7ebd8c  bcachefs-tools-vendored-1.6.4.tar.zst
diff --git a/package/bcachefs-tools/bcachefs-tools.mk b/package/bcachefs-tools/bcachefs-tools.mk
new file mode 100644
index 0000000000..1a4ca15e8d
--- /dev/null
+++ b/package/bcachefs-tools/bcachefs-tools.mk
@@ -0,0 +1,23 @@ 
+################################################################################
+#
+# bcachefs-tools
+#
+################################################################################
+
+BCACHEFS_TOOLS_VERSION = 1.6.4
+BCACHEFS_TOOLS_SOURCE = bcachefs-tools-vendored-$(BCACHEFS_TOOLS_VERSION).tar.zst
+BCACHEFS_TOOLS_SITE = https://evilpiepirate.org/bcachefs-tools
+BCACHEFS_TOOLS_LICENSE = GPL-2.0
+BCACHEFS_TOOLS_LICENSE_FILES = COPYING
+BCACHEFS_TOOLS_DEPENDENCIES = host-rustc host-clang keyutils libaio libsodium liburcu lz4 udev util-linux zlib zstd
+
+define BCACHEFS_TOOLS_BUILD_CMDS
+	$(TARGET_MAKE_ENV) $(MAKE) -C $(@D)
+endef
+
+define BCACHEFS_TOOLS_INSTALL_TARGET_CMDS
+	$(TARGET_MAKE_ENV) $(MAKE) -C $(@D) DESTDIR="$(TARGET_DIR)" PREFIX=/usr install
+endef
+
+$(eval $(generic-package))
+$(eval $(host-generic-package))