commit:     b0266f46d81eb6109997cf0f71facdbdb62ce3ee
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Thu Mar 27 12:21:35 2025 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Thu Mar 27 13:42:52 2025 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b0266f46

sys-fs/btrfs-progs: add 6.14

Signed-off-by: Sam James <sam <AT> gentoo.org>

 sys-fs/btrfs-progs/Manifest                |   2 +
 sys-fs/btrfs-progs/btrfs-progs-6.14.ebuild | 188 +++++++++++++++++++++++++++++
 2 files changed, 190 insertions(+)

diff --git a/sys-fs/btrfs-progs/Manifest b/sys-fs/btrfs-progs/Manifest
index e4f7d01b2aa0..73f45cfa6c34 100644
--- a/sys-fs/btrfs-progs/Manifest
+++ b/sys-fs/btrfs-progs/Manifest
@@ -2,3 +2,5 @@ DIST btrfs-progs-v6.12.tar.sign 566 BLAKE2B 
3a32b52522acd9e2fcf34cbf90d91ca2491a
 DIST btrfs-progs-v6.12.tar.xz 2705336 BLAKE2B 
d1569ec7b2079a43ac370c3a7e9f1b37a06545675753490f16d6a7bb52281f76df39f924c96569a1c75daa8a998f251c5219e2f09a54cb94c42cba1db3cf43ca
 SHA512 
57da37f460a33b5f5232a5c8e67eb5976fb13483a1437112bd433b179bc0e497a1aadfe24705eb4fb4e0a98d2a33fd3c46808b3ca161421475442a70b964c446
 DIST btrfs-progs-v6.13.tar.sign 566 BLAKE2B 
12424d4f076a0b1e007f367c803c0308c45632475dfff56d6f2feb65ad8c84568609554f2870f5ccb2d1ca1559661a811a96c4f5e1ad4744d4c8d14c9e002d5b
 SHA512 
f4423a607dd7a8e0a6d6da9a5ebc9c1147026b25786cb3fd947243491e17730994d74c1885cef5737380a9441a736ee252229951e298e2559a279e16fc18a53b
 DIST btrfs-progs-v6.13.tar.xz 2731048 BLAKE2B 
aaf536e17977c052dd0828501f5a91b85403d561301f10d8c7bf2f5abae30a323f781ef8727f8ca48efc6edf16000b3ee8435fd6a89d6d047dda289ad87e3f64
 SHA512 
c91e99beb554320e75bcef027ae918993ed8e08a5fe774ff55bf63cde2c64802676c8678ff09d2678aa084166f178efd2b64ed00821d0908a1435e9eaea74422
+DIST btrfs-progs-v6.14.tar.sign 566 BLAKE2B 
ddb860fa18cb56e7b460949c54c097e11bd08675e661d954aba353e412e714e5d3dbaecc0f97aa11787cb8b665a4a7549cfc7d779b596fe15324d45bae1d8a20
 SHA512 
c1092a0992e945b4820de4e80adc5681e9a2bf435b5defb0b8c44b3bb210c07b38dd446a40ce19955fa1616b546d40f568c537410fe4eda8f2f1657e2d3bfb3e
+DIST btrfs-progs-v6.14.tar.xz 2739548 BLAKE2B 
fae9bdbacc093ba260d7740001eef98f4ffb72c30631c789a34fbd5f34283cbdfb9f1e6b2f6112fb769b90892b47ea2bcc0bcdab37748b8d23e3588051620b2a
 SHA512 
becb9e1a95ecd3e0421dd9a4a4fd0bf0e950d6586aa8cc757f97b04392a54a4fd4bcae164a61054087823e610297041b2b79b0c6e827cab8ad804d9877268ee4

diff --git a/sys-fs/btrfs-progs/btrfs-progs-6.14.ebuild 
b/sys-fs/btrfs-progs/btrfs-progs-6.14.ebuild
new file mode 100644
index 000000000000..d3ef20730213
--- /dev/null
+++ b/sys-fs/btrfs-progs/btrfs-progs-6.14.ebuild
@@ -0,0 +1,188 @@
+# Copyright 2008-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# Please bump with dev-python/btrfsutil
+
+PYTHON_COMPAT=( python3_{10..13} )
+inherit bash-completion-r1 python-any-r1 udev
+
+if [[ ${PV} == 9999 ]]; then
+       EGIT_REPO_URI="https://github.com/kdave/btrfs-progs.git";
+       EGIT_BRANCH="devel"
+       WANT_LIBTOOL="none"
+       inherit autotools git-r3
+else
+       VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/dsterba.asc
+       inherit verify-sig
+
+       MY_PV="v${PV/_/-}"
+       MY_P="${PN}-${MY_PV}"
+       SRC_URI="
+               
https://mirrors.edge.kernel.org/pub/linux/kernel/people/kdave/${PN}/${MY_P}.tar.xz
+               verify-sig? ( 
https://mirrors.edge.kernel.org/pub/linux/kernel/people/kdave/${PN}/${MY_P}.tar.sign
 )
+       "
+       S="${WORKDIR}"/${PN}-${MY_PV}
+
+       if [[ ${PV} != *_rc* ]] ; then
+               KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~loong ~mips ~ppc ~ppc64 
~riscv ~sparc ~x86"
+       fi
+fi
+
+DESCRIPTION="Btrfs filesystem utilities"
+HOMEPAGE="https://btrfs.readthedocs.io/en/latest/";
+
+LICENSE="GPL-2"
+SLOT="0/0" # libbtrfs soname
+IUSE="+convert +man experimental reiserfs static static-libs udev +zstd"
+# Could support it with just !systemd => eudev, see mdadm, but let's
+# see if someone asks for it first.
+REQUIRED_USE="static? ( !udev )"
+
+# Tries to mount repaired filesystems
+RESTRICT="test"
+
+RDEPEND="
+       dev-libs/lzo:2=
+       sys-apps/util-linux:=[static-libs(+)?]
+       sys-libs/zlib:=
+       convert? (
+               sys-fs/e2fsprogs:=
+               reiserfs? (
+                       >=sys-fs/reiserfsprogs-3.6.27
+               )
+       )
+       udev? ( virtual/libudev:= )
+       zstd? ( app-arch/zstd:= )
+"
+DEPEND="
+       ${RDEPEND}
+       >=sys-kernel/linux-headers-5.10
+       convert? ( sys-apps/acl )
+       static? (
+               dev-libs/lzo:2[static-libs(+)]
+               sys-apps/util-linux:0[static-libs(+)]
+               sys-libs/zlib:0[static-libs(+)]
+               convert? (
+                       sys-fs/e2fsprogs[static-libs(+)]
+                       reiserfs? (
+                               >=sys-fs/reiserfsprogs-3.6.27[static-libs(+)]
+                       )
+               )
+               zstd? ( app-arch/zstd[static-libs(+)] )
+       )
+"
+BDEPEND="
+       virtual/pkgconfig
+       man? (
+               $(python_gen_any_dep 'dev-python/sphinx[${PYTHON_USEDEP}]
+                       dev-python/sphinx-rtd-theme[${PYTHON_USEDEP}]')
+       )
+"
+
+python_check_deps() {
+       python_has_version "dev-python/sphinx[${PYTHON_USEDEP}]" &&
+       python_has_version "dev-python/sphinx-rtd-theme[${PYTHON_USEDEP}]"
+}
+
+if [[ ${PV} == 9999 ]]; then
+       BDEPEND+=" sys-devel/gnuconfig"
+else
+       BDEPEND+=" verify-sig? ( sec-keys/openpgp-keys-dsterba )"
+fi
+
+pkg_setup() {
+       : # Prevent python-any-r1_python_setup
+}
+
+if [[ ${PV} != 9999 ]]; then
+       src_unpack() {
+               # Upstream sign the decompressed .tar
+               if use verify-sig; then
+                       einfo "Unpacking ${MY_P}.tar.xz ..."
+                       verify-sig_verify_detached - 
"${DISTDIR}"/${MY_P}.tar.sign \
+                               < <(xz -cd "${DISTDIR}"/${MY_P}.tar.xz | tee 
>(tar -xf -))
+                       assert "Unpack failed"
+               else
+                       default
+               fi
+       }
+fi
+
+src_prepare() {
+       default
+
+       if [[ ${PV} == 9999 ]]; then
+               local AT_M4DIR=config
+               eautoreconf
+
+               local automakedir="$(autotools_run_tool --at-output automake 
--print-libdir)"
+               [[ -e ${automakedir} ]] || die "Could not locate automake 
directory"
+
+               ln -s "${automakedir}"/install-sh config/install-sh || die
+               ln -s "${BROOT}"/usr/share/gnuconfig/config.guess 
config/config.guess || die
+               ln -s "${BROOT}"/usr/share/gnuconfig/config.sub 
config/config.sub || die
+       fi
+}
+
+src_configure() {
+       local myeconfargs=(
+               --bindir="${EPREFIX}"/sbin
+
+               --enable-lzo
+               $(use_enable experimental)
+               --disable-python
+               $(use_enable convert)
+               $(use_enable man documentation)
+               $(use_enable elibc_glibc backtrace)
+               $(use_enable static-libs static)
+               $(use_enable udev libudev)
+               $(use_enable zstd)
+
+               # Could support libgcrypt, libsodium, libkcapi, openssl, botan
+               --with-crypto=builtin
+               --with-convert=ext2$(usev reiserfs ',reiserfs')
+       )
+
+       export EXTRA_PYTHON_CFLAGS="${CFLAGS}"
+       export EXTRA_PYTHON_LDFLAGS="${LDFLAGS}"
+
+       if use man; then
+               python_setup
+       fi
+
+       # bash as a temporary workaround for 
https://github.com/kdave/btrfs-progs/pull/721
+       CONFIG_SHELL="${BROOT}"/bin/bash econf "${myeconfargs[@]}"
+}
+
+src_compile() {
+       emake V=1 all $(usev static)
+}
+
+src_test() {
+       emake V=1 -j1 -C tests test
+}
+
+src_install() {
+       local makeargs=(
+               $(usev static install-static)
+       )
+
+       emake V=1 DESTDIR="${D}" install "${makeargs[@]}"
+
+       if use experimental; then
+               exeinto /sbin
+               doexe btrfs-corrupt-block
+       fi
+
+       newbashcomp btrfs-completion btrfs
+}
+
+pkg_postinst() {
+       udev_reload
+}
+
+pkg_postrm() {
+       udev_reload
+}

Reply via email to