diff --git a/srcpkgs/bcachefs-tools/patches/make.patch b/srcpkgs/bcachefs-tools/patches/make.patch index 080678a159f..760b6443612 100644 --- a/srcpkgs/bcachefs-tools/patches/make.patch +++ b/srcpkgs/bcachefs-tools/patches/make.patch @@ -1,21 +1,33 @@ --- a/Makefile +++ b/Makefile @@ -57,7 +57,7 @@ + CARGO_PROFILE=release # CARGO_PROFILE=debug - CARGO_MANIFEST=--manifest-path rust-src/Cargo.toml -CARGO_BUILD_ARGS=--$(CARGO_PROFILE) +CARGO_BUILD_ARGS=--$(CARGO_PROFILE) --target $(RUST_TARGET) - CARGO_BUILD=$(CARGO) build $(CARGO_BUILD_ARGS) $(CARGO_MANIFEST) + CARGO_BUILD=$(CARGO) build $(CARGO_BUILD_ARGS) - CARGO_CLEAN=$(CARGO) clean $(CARGO_CLEAN_ARGS) $(CARGO_MANIFEST) -@@ -190,6 +190,9 @@ - RUST_SRCS:=$(shell find rust-src/src rust-src/bch_bindgen/src -type f -iname '*.rs') - rust-src/target/release/libbcachefs_rust.a: $(RUST_SRCS) - $(CARGO_BUILD) -+ if [ -f rust-src/target/*/release/libbcachefs_rust.a ]; then \ -+ cp rust-src/target/*/release/libbcachefs_rust.a $@; \ -+ fi - - tests/test_helper: $(filter ./tests/%.o, $(OBJS)) - @echo " [LD] $@" + CARGO_CLEAN=$(CARGO) clean $(CARGO_CLEAN_ARGS) +--- a/Makefile ++++ b/Makefile +@@ -200,7 +200,7 @@ + install: INITRAMFS_HOOK=$(INITRAMFS_DIR)/hooks/bcachefs + install: INITRAMFS_SCRIPT=$(INITRAMFS_DIR)/scripts/local-premount/bcachefs + install: bcachefs $(optional_install) +- $(INSTALL) -m0755 -D target/release/bcachefs -t $(DESTDIR)$(ROOT_SBINDIR) ++ $(INSTALL) -m0755 -D target/*/release/bcachefs -t $(DESTDIR)$(ROOT_SBINDIR) + $(INSTALL) -m0644 -D bcachefs.8 -t $(DESTDIR)$(PREFIX)/share/man/man8/ + $(INSTALL) -m0755 -D initramfs/script $(DESTDIR)$(INITRAMFS_SCRIPT) + $(INSTALL) -m0755 -D initramfs/hook $(DESTDIR)$(INITRAMFS_HOOK) +--- a/Makefile ++++ b/Makefile +@@ -199,7 +199,7 @@ + .PHONY: install + install: INITRAMFS_HOOK=$(INITRAMFS_DIR)/hooks/bcachefs + install: INITRAMFS_SCRIPT=$(INITRAMFS_DIR)/scripts/local-premount/bcachefs +-install: bcachefs $(optional_install) ++install: $(optional_install) + $(INSTALL) -m0755 -D target/*/release/bcachefs -t $(DESTDIR)$(ROOT_SBINDIR) + $(INSTALL) -m0644 -D bcachefs.8 -t $(DESTDIR)$(PREFIX)/share/man/man8/ + $(INSTALL) -m0755 -D initramfs/script $(DESTDIR)$(INITRAMFS_SCRIPT) diff --git a/srcpkgs/bcachefs-tools/patches/musl.patch b/srcpkgs/bcachefs-tools/patches/musl.patch index 88761f3d2d4..2445d9eb176 100644 --- a/srcpkgs/bcachefs-tools/patches/musl.patch +++ b/srcpkgs/bcachefs-tools/patches/musl.patch @@ -38,3 +38,24 @@ #include #include #include +--- a/linux/sort.c ++++ b/linux/sort.c +@@ -12,6 +12,7 @@ + + #define pr_fmt(fmt) KBUILD_MODNAME ": " fmt + ++#include + #include + #include + #include +--- a/src/wrappers/handle.rs ++++ b/src/wrappers/handle.rs +@@ -47,7 +47,7 @@ + /// Type-safe [`libc::ioctl`] for bcachefs filesystems + pub fn ioctl(&self, request: BcachefsIoctl, payload: &BcachefsIoctlPayload) -> Result<(), Errno> { + let payload_ptr: *const libc::c_void = payload.into(); +- let ret = unsafe { libc::ioctl(self.inner.ioctl_fd, request as u64, payload_ptr) }; ++ let ret = unsafe { libc::ioctl(self.inner.ioctl_fd, request as _, payload_ptr) }; + + if ret == -1 { + Err(errno::errno()) diff --git a/srcpkgs/bcachefs-tools/template b/srcpkgs/bcachefs-tools/template index a0e22dea2cb..33ab33fa604 100644 --- a/srcpkgs/bcachefs-tools/template +++ b/srcpkgs/bcachefs-tools/template @@ -1,12 +1,12 @@ # Template file for 'bcachefs-tools' pkgname=bcachefs-tools reverts="24_1" -version=1.4.1 +version=1.6.1 revision=1 build_style=gnu-makefile make_install_args="ROOT_SBINDIR=/usr/bin" make_use_env=yes -hostmakedepends="pkg-config cargo clang liburcu-devel" +hostmakedepends="pkg-config cargo clang17-devel llvm liburcu-devel" makedepends="rust attr-devel keyutils-devel libaio-devel libblkid-devel liblz4-devel libscrypt-devel libsodium-devel eudev-libudev-devel liburcu-devel libuuid-devel libzstd-devel zlib-devel" @@ -15,7 +15,12 @@ maintainer="Leah Neukirchen " license="GPL-2.0-only" homepage="https://bcachefs.org/" distfiles="https://github.com/koverstreet/bcachefs-tools/archive/refs/tags/v${version}.tar.gz" -checksum=682777c2391a718c34a5b8992954eba38b5916bdc5fc33f036d55562f4c45d72 +checksum=f1899907bcac16cd89cead98b1f407dad93d67bd02a8aaa3eaa577a77d8b59d8 export VERSION=v${version} export RUST_TARGET + +pre_build() { + # fuck me sideways why this is necessary, it should be default + RUSTFLAGS+=" -C linker=$CC" +}