commit:     1de203d8887ff6ddf8a97ccca790b8ff02858795
Author:     Petr Vaněk <arkamar <AT> gentoo <DOT> org>
AuthorDate: Tue Oct 21 12:20:34 2025 +0000
Commit:     Petr Vaněk <arkamar <AT> gentoo <DOT> org>
CommitDate: Tue Oct 21 12:32:52 2025 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=1de203d8

sys-fs/xfsprogs: add 6.17.0

This version addresses some musl issues. Proposed fixes [1] were
accepted upstream as commits [2,3].

Link: https://lore.kernel.org/linux-xfs/20250809-musl-fixes-v1-0-d0958fffb1af 
<AT> nixdorf.dev/T/ [1]
Link: 
https://git.kernel.org/pub/scm/fs/xfs/xfsprogs-dev.git/commit/?id=07956672b784af598dc5604db8fafd0702b8fe13
 [2]
Link: 
https://git.kernel.org/pub/scm/fs/xfs/xfsprogs-dev.git/commit/?id=6cfae337a10106114a78f56738e83e7b6638d61d
 [3]
Bug: https://bugs.gentoo.org/948468
Bug: https://bugs.gentoo.org/960632
Signed-off-by: Petr Vaněk <arkamar <AT> gentoo.org>

 sys-fs/xfsprogs/Manifest               |   1 +
 sys-fs/xfsprogs/xfsprogs-6.17.0.ebuild | 112 +++++++++++++++++++++++++++++++++
 2 files changed, 113 insertions(+)

diff --git a/sys-fs/xfsprogs/Manifest b/sys-fs/xfsprogs/Manifest
index db2dda0a19fc..3beb02e8b1ec 100644
--- a/sys-fs/xfsprogs/Manifest
+++ b/sys-fs/xfsprogs/Manifest
@@ -3,3 +3,4 @@ DIST xfsprogs-6.13.0.tar.xz 1506676 BLAKE2B 
98a8b51ba7fb7f58ea292e9c4624ca3c2337
 DIST xfsprogs-6.14.0.tar.xz 1543640 BLAKE2B 
5ef446b2055356627cd91ebfe9bb07388f9b5a12fd8c530b83980261b2dc3ddfa47f809114f0f238ef787ed687d324abe82427fdc2b3ecc3171d4d06615dd0c4
 SHA512 
249a64fb5a92ceb9e58b75a270a90773cfe2c90e863d3f9853c14b3eb0f414bf55b8b67c220a1d7386894ef9295622e224977bd3c6600c9dcba826cb4a634f49
 DIST xfsprogs-6.15.0.tar.xz 1550568 BLAKE2B 
fe6806ac8235c0984055f7b969b11bc0c49ee8bb8f49f7a4c3bf03f1ebf839cccb86cdb6c4946723a1b8007422e057fb7b865cc60081037920e8208cfcab16e9
 SHA512 
975c9c7fe476b02da50da74eb599f804f2b27a638a74b807e1f69d93d0d150d19bf6d5036601b96febe557a6c51065d8cf22eef5fda92a6d7f084ac1d7647496
 DIST xfsprogs-6.16.0.tar.xz 1557452 BLAKE2B 
ae4087c887b4c9d2fcc4b5341ca3c7d0333cf2132111179feee4b765ba9a1cc94143723b2bc4bcd8658bd7902871266af69293c77d715de1d0e878dc76b42e8e
 SHA512 
333ef39f38d0fa46742b7fd28ebc6482e90abb32e58634b3a93aa24f0202c55f4dc32f1b00a9859c6e64efada4d844c3a995a913520cb00d5e1a4f1a83da848d
+DIST xfsprogs-6.17.0.tar.xz 1563092 BLAKE2B 
e841526add6c17d036a709c1fafe879a50ba7d568008865eac8d166182be5514d8abc94b8facbe113aa6106ac394ea01049b6a555ebd280ee1cd5d64fff1b5da
 SHA512 
bcdd5a632ac1eae4ad68ac1b18a0289820fcef997da2b3b132e97f035f21e951f20f19de9d09e0babd7d7feb8ad14c0782aa81c698b39c19e4349e603892287e

diff --git a/sys-fs/xfsprogs/xfsprogs-6.17.0.ebuild 
b/sys-fs/xfsprogs/xfsprogs-6.17.0.ebuild
new file mode 100644
index 000000000000..a7bdebcbf2e3
--- /dev/null
+++ b/sys-fs/xfsprogs/xfsprogs-6.17.0.ebuild
@@ -0,0 +1,112 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit flag-o-matic systemd udev
+
+DESCRIPTION="XFS filesystem utilities"
+HOMEPAGE="https://xfs.wiki.kernel.org/ 
https://git.kernel.org/pub/scm/fs/xfs/xfsprogs-dev.git/";
+SRC_URI="https://www.kernel.org/pub/linux/utils/fs/xfs/${PN}/${P}.tar.xz";
+
+LICENSE="LGPL-2.1"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv 
~s390 ~sparc ~x86"
+IUSE="icu libedit nls selinux static-libs"
+
+RDEPEND="
+       dev-libs/inih
+       dev-libs/userspace-rcu:=
+       >=sys-apps/util-linux-2.17.2
+       icu? ( dev-libs/icu:= )
+       libedit? ( dev-libs/libedit )
+"
+DEPEND="
+       ${RDEPEND}
+       >=sys-kernel/linux-headers-6.11
+"
+BDEPEND="nls? ( sys-devel/gettext )"
+RDEPEND+=" selinux? ( sec-policy/selinux-xfs )"
+
+src_prepare() {
+       default
+
+       # Fix doc dir
+       sed -i \
+               -e "/^PKG_DOC_DIR/s:@pkg_name@:${PF}:" \
+               include/builddefs.in || die
+
+       # Don't install compressed docs
+       sed 's@\(CHANGES\)\.gz[[:space:]]@\1 @' -i doc/Makefile || die
+}
+
+src_configure() {
+       # include/builddefs.in will add FCFLAGS to CFLAGS which will
+       # unnecessarily clutter CFLAGS (and fortran isn't used)
+       unset FCFLAGS
+
+       # If set in user env, this breaks configure
+       unset PLATFORM
+
+       export DEBUG=-DNDEBUG
+
+       # Package is honoring CFLAGS; No need to use OPTIMIZER anymore.
+       # However, we have to provide an empty value to avoid default
+       # flags.
+       export OPTIMIZER=" "
+
+       # Avoid automagic on libdevmapper (bug #709694)
+       export ac_cv_search_dm_task_create=no
+
+       # bug 903611, 948468, 960632
+       use elibc_musl && \
+               append-flags -D_LARGEFILE64_SOURCE -DOVERRIDE_SYSTEM_STATX \
+                       -DSTATX__RESERVED=0x80000000U
+
+       # Upstream does NOT support --disable-static anymore,
+       # https://www.spinics.net/lists/linux-xfs/msg30185.html
+       # https://www.spinics.net/lists/linux-xfs/msg30272.html
+       local myconf=(
+               --enable-static
+               # Doesn't do anything beyond adding -flto (bug #930947).
+               --disable-lto
+               # The default value causes double 'lib'
+               --localstatedir="${EPREFIX}/var"
+               --with-crond-dir="${EPREFIX}/etc/cron.d"
+               --with-systemd-unit-dir="$(systemd_get_systemunitdir)"
+               --with-udev-rule-dir="$(get_udevdir)/rules.d"
+               $(use_enable icu libicu)
+               $(use_enable nls gettext)
+               $(use_enable libedit editline)
+       )
+
+       econf "${myconf[@]}"
+}
+
+src_compile() {
+       emake V=1
+}
+
+src_install() {
+       # XXX: There's a missing dep in the install-dev target, so split it
+       emake DIST_ROOT="${ED}" HAVE_ZIPPED_MANPAGES=false install
+       emake DIST_ROOT="${ED}" HAVE_ZIPPED_MANPAGES=false install-dev
+
+       # Not actually used but --localstatedir causes this empty dir
+       # to be installed.
+       rmdir "${ED}"/var/lib/xfsprogs "${ED}"/var/lib || die
+
+       if ! use static-libs; then
+               rm "${ED}/usr/$(get_libdir)/libhandle.a" || die
+       fi
+
+       find "${ED}" -name '*.la' -delete || die
+}
+
+pkg_postrm() {
+       udev_reload
+}
+
+pkg_postinst() {
+       udev_reload
+}

Reply via email to