sys-fs/xfsprogs: Sync with Gentoo

It's from Gentoo commit 9b30a3c1b65b789af018a0b1dfc035cea9e7f8bd.
This commit is contained in:
Flatcar Buildbot 2024-11-11 07:09:16 +00:00 committed by Krzesimir Nowak
parent 599a598d08
commit e574be6aea
2 changed files with 113 additions and 0 deletions

View File

@ -1,4 +1,5 @@
DIST xfsprogs-6.10.0.tar.xz 1449872 BLAKE2B dc02fb14cd07e20d618070358700003a0990125ce3d8b15fa0248c6d494a89bbfb51c267583fc863edeee0d84069c7016f7992e750faa357618cd0d7f5748d2e SHA512 ec80eedfd3471c836e99eb8507c0de2895f261d36316145b02f2effbcc1bb5a52eae3ad2148d45bc49f1a30e0267aa4e3f3176a5e01ec84b2da24b3fb430ffce
DIST xfsprogs-6.10.1.tar.xz 1449932 BLAKE2B e9ed15b2d4a9026e0079adfb38578721e13498290a5d9590edae1fd41c9ee0338f9b823568677394952709d82bdc8ade36905a2266ffe64803901adbadfa5643 SHA512 b9fd7b7eaf038772ee4a9602bf38f714db7077731ec8904e0959d28b0103d443be8ae67720869012b90737c1ff440fbce44b3b23b662939c9a90c6d3be3fab08
DIST xfsprogs-6.11.0.tar.xz 1457084 BLAKE2B 846b25ad36477d71f8f2091ad16699356416f09befbb4250335081d2a8fd78011e9100fbabfb727acdb65520a38c912d9bb9e33b17c222c97de88fd00ab004a9 SHA512 209b479e510e5d5c558430b523bebd90f34b2effeac46f783aad4ec45a9f39998ca1efc67155c54c22e778859968f4b275b0ca6f225603f17ae4cc5c7596a4ca
DIST xfsprogs-6.8.0.tar.xz 1367196 BLAKE2B 8c296698da1170bb7ff369c2bf5f156e812ddf43ee817369029ad951d6c1e18c20d093db385b9a523f6cb7ba3e01f8924eb3540b71efa4bec8bf3defe2418562 SHA512 f5b5c6d8da70cc0f3361b3420982aabfabb0bc54b9eb60b93a9aaeedb33a9ecede4061d5c1300b96d7aba7d44a4207672c4a33e115bf0f5c711a151f3fc65e0d
DIST xfsprogs-6.9.0.tar.xz 1383116 BLAKE2B d952603716cc4022a935c426630b0b7838573476a730c6832f36ef0274a640e64667d3e3a2dd9fd2c5f2c12cdb348fd93abfef5c49e5c5fe2d5a83945dfc7894 SHA512 c597453759c400690810971f0b2daf0e4e22c74270b0f9800e2235da5e5c1383b59bc1176c5bba0023f74b623020fb51c62f0e98a74885cf3a8336e0b81c9023

View File

@ -0,0 +1,112 @@
# Copyright 1999-2024 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}"
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
use elibc_musl && append-flags -D_LARGEFILE64_SOURCE
# Build fails with -O3 (bug #712698)
replace-flags -O3 -O2
# 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() {
# -j1 for:
# gmake[2]: *** No rule to make target '../libhandle/libhandle.la', needed by 'xfs_spaceman'. Stop.
emake V=1 -j1
}
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
}