sys-fs/xfsprogs: Sync with gentoo

It's from gentoo commit 05882aa51e23a103b322527fb16e9e962ff94034.
This commit is contained in:
Krzesimir Nowak 2022-03-02 17:55:45 +01:00
parent f95848b94b
commit eef2b6e8f7
11 changed files with 322 additions and 395 deletions

View File

@ -1,3 +1,3 @@
DIST xfsprogs-4.17.0.tar.xz 1205508 BLAKE2B 46168792c1e4c335b7ed9e7489afc20d7df4b4e554eb86043b2c19303879491cc4746b18d23fdff3e2f92ca3887ac27957ae57e85ba784476d8891ea6909d67e SHA512 996de920c76de596b6175e4ae4ba9de208c16fbcf9362bbb44d25ee1c12b249d0178fc5cc93dc5a434ab20e6d515d64a3f51b8e89905b5b033b28a3638f4d400
DIST xfsprogs-4.18.0.tar.xz 1214480 BLAKE2B 78db41319e53be1f03b66f85ecc7c50e0c6658fa3fd8ddd8539bac04e656614a5cb54dc930a324d9df6afe4024c2be10259b903e1ca0ccd0ffb340e7410692c2 SHA512 0629400f8824620138928a7d72908b7a852408814238a55e11d6eb3b2da42cd56273960430d3ea729a9bce95f605d225607940d4728b68c468c39eb5a9a590be
DIST xfsprogs-4.19.0.tar.xz 1212852 BLAKE2B 2d04390765c5e0dd7d51366f0310c9e680651d49bdd1ecd220b4eec50540a66c97bf6e54f976414351bc77381ffd463803836b27ca25b53960a278a34bc09775 SHA512 a96d0ce406534e70b0a531dfab296de420ec710cd0682dffaf5211602adf82dd59f84b9eb7793c54eabb782a9e0229acf7b247ab644d531ee9e5b51fe9dc0f58
DIST xfsprogs-5.10.0.tar.xz 1273332 BLAKE2B 8caaa0ca8a94480f131d36b383afcf732b3a5a7a3c7927b4b4da4855fc5a0fb97a56fcebb98391a4dd0f02465868a4bd857e57eeba053a419df47d42f74bc958 SHA512 da09e687c87c4b133888dba7b4458017ec028020637ea5066be0232bf5c7da18239cc33eadd02d9b99d1c835aab38cab1ec9d45ae8b83897f9157cfcb0271fbd
DIST xfsprogs-5.14.1.tar.xz 1308968 BLAKE2B fda20f824a030113717cc46de1920696dc8f9eed13b54809e6b21275cf4f8673385e8bbb1c1c668ba2592ab43fb230c9d46edf4c0e5abe59a9572cc9a90ae5da SHA512 5bb79fff45048bebee2fde85ec788658dd8dc8d5ddac222b1f74c6cd525e1239d920814e8e713f045e38398a785321bf0a7421ff1c690cd0be5dbb224f8dafea
DIST xfsprogs-5.14.2.tar.xz 1308912 BLAKE2B 04083bf7952015d64f16e1aec0fa74be1957543e2264914f69defe45a3dc9f2524d941abc064a25a2fd760ebd6dcdcdc2404fd305e08fff7f6be6c5fc11d4d2f SHA512 cb9794247a2eed8bd9f10ff811d38f97e4adbed97bad334b0fa8a26503ec224237eddd92fd78892584a153967417ab2009fb2fc8bab6ef12cd53fd20bdba1b4e

View File

@ -1,114 +0,0 @@
--- xfsprogs-4.15.0/include/buildmacros
+++ xfsprogs-4.15.0/include/buildmacros
@@ -70,18 +70,9 @@
# /usr/lib.
ifeq ($(ENABLE_SHARED),yes)
INSTALL_LTLIB_DEV = \
- cd $(TOPDIR)/$(LIBNAME)/.libs; \
- ../$(INSTALL) -m 755 -d $(PKG_LIB_DIR); \
- ../$(INSTALL) -m 644 -T old_lib $(LIBNAME).lai $(PKG_LIB_DIR); \
- ../$(INSTALL) -m 644 $(LIBNAME).lai $(PKG_LIB_DIR)/$(LIBNAME).la ; \
- ../$(INSTALL) -m 755 -d $(PKG_ROOT_LIB_DIR); \
- ../$(INSTALL) -T so_base $(LIBNAME).lai $(PKG_ROOT_LIB_DIR); \
- if [ "x$(shell readlink -f $(PKG_LIB_DIR))" != \
- "x$(shell readlink -f $(PKG_ROOT_LIB_DIR))" ]; then \
- ../$(INSTALL) -S $(PKG_LIB_DIR)/$(LIBNAME).a $(PKG_ROOT_LIB_DIR)/$(LIBNAME).a; \
- ../$(INSTALL) -S $(PKG_LIB_DIR)/$(LIBNAME).la $(PKG_ROOT_LIB_DIR)/$(LIBNAME).la; \
- ../$(INSTALL) -S $(PKG_ROOT_LIB_DIR)/$(LIBNAME).so $(PKG_LIB_DIR)/$(LIBNAME).so; \
- fi
+ set -e; cd $(TOPDIR)/$(LIBNAME); \
+ $(INSTALL) -m 755 -d $(PKG_LIB_DIR); \
+ env -uDIST_ROOT $(LTINSTALL) $(TOPDIR)/$(LIBNAME)/$(LIBNAME).la $(DIST_ROOT)$(PKG_LIB_DIR)/$(LIBNAME).la
else
INSTALL_LTLIB_DEV = $(INSTALL_LTLIB_STATIC)
endif
--- xfsprogs-4.15.0/libfrog/Makefile
+++ xfsprogs-4.15.0/libfrog/Makefile
@@ -5,6 +5,8 @@
TOPDIR = ..
include $(TOPDIR)/include/builddefs
+LTLIBS = $(LIBXFS) $(LIBBLKID)
+
LTLIBRARY = libfrog.la
LT_CURRENT = 0
LT_REVISION = 0
@@ -34,6 +36,9 @@
include $(BUILDRULES)
-install install-dev: default
+install: default
+
+install-dev: default
+ $(INSTALL_LTLIB_DEV)
-include .ltdep
--- xfsprogs-4.15.0/libhandle/Makefile
+++ xfsprogs-4.15.0/libhandle/Makefile
@@ -24,7 +24,6 @@
include $(BUILDRULES)
install: default
- $(INSTALL_LTLIB)
install-dev: default
$(INSTALL_LTLIB_DEV)
--- xfsprogs-4.15.0/libxcmd/Makefile
+++ xfsprogs-4.15.0/libxcmd/Makefile
@@ -12,6 +12,8 @@
CFILES = command.c input.c help.c quit.c
+LTLIBS = $(LIBXFS) $(LIBBLKID)
+
ifeq ($(ENABLE_READLINE),yes)
LCFLAGS += -DENABLE_READLINE
LTLIBS += $(LIBREADLINE) $(LIBTERMCAP)
@@ -26,6 +28,9 @@
include $(BUILDRULES)
-install install-dev: default
+install: default
+
+install-dev: default
+ $(INSTALL_LTLIB_DEV)
-include .ltdep
--- xfsprogs-4.15.0/libxfs/Makefile
+++ xfsprogs-4.15.0/libxfs/Makefile
@@ -151,6 +151,7 @@
install-dev: install
$(INSTALL) -m 644 $(PKGHFILES) $(PKG_INC_DIR)
+ $(INSTALL_LTLIB_DEV)
# We need to install the headers before building the dependencies. If we
# include the .ltdep file, the makefile decides that it needs to build the
--- xfsprogs-4.15.0/libxlog/Makefile
+++ xfsprogs-4.15.0/libxlog/Makefile
@@ -19,6 +19,9 @@
include $(BUILDRULES)
-install install-dev: default
+install: default
+
+install-dev: default
+ $(INSTALL_LTLIB_DEV)
-include .ltdep
--- xfsprogs-4.15.0/Makefile
+++ xfsprogs-4.15.0/Makefile
@@ -92,6 +92,10 @@
mkfs: libxcmd
spaceman: libxcmd
scrub: libhandle libxcmd
+libfrog: libxfs
+libfrog-install-dev: libxfs-install-dev
+libxlog: libxfs
+libxlog-install-dev: libxfs-install-dev
ifeq ($(HAVE_BUILDDEFS), yes)
include $(BUILDRULES)

View File

@ -1,30 +0,0 @@
libxfs/Makefile | 2 +-
libxlog/Makefile | 2 ++
2 files changed, 3 insertions(+), 1 deletion(-)
diff --git a/libxfs/Makefile b/libxfs/Makefile
index 6499731..00447c4 100644
--- a/libxfs/Makefile
+++ b/libxfs/Makefile
@@ -113,7 +113,7 @@ LSRCFILES += gen_crc32table.c
FCFLAGS = -I.
-LTLIBS = $(LIBPTHREAD) $(LIBRT)
+LTLIBS = $(LIBPTHREAD) $(LIBRT) $(LIBUUID)
# don't try linking xfs_repair with a debug libxfs.
DEBUG = -DNDEBUG
diff --git a/libxlog/Makefile b/libxlog/Makefile
index 3417eed..fda1343 100644
--- a/libxlog/Makefile
+++ b/libxlog/Makefile
@@ -12,6 +12,8 @@ LT_AGE = 0
CFILES = xfs_log_recover.c util.c
+LTLIBS = $(LIBUUID)
+
# don't want to link xfs_repair with a debug libxlog.
DEBUG = -DNDEBUG

View File

@ -0,0 +1,28 @@
In Gentoo we install libs to /usr/lib* and let gen_usr_ldscript
handle /lib*.
--- a/include/buildmacros
+++ b/include/buildmacros
@@ -57,9 +57,10 @@ endif
ifeq ($(ENABLE_SHARED),yes)
INSTALL_LTLIB = \
cd $(TOPDIR)/$(LIBNAME)/.libs; \
- ../$(INSTALL) -m 755 -d $(PKG_ROOT_LIB_DIR); \
- ../$(INSTALL) -m 755 -T so_dot_version $(LIBNAME).lai $(PKG_ROOT_LIB_DIR); \
- ../$(INSTALL) -T so_dot_current $(LIBNAME).lai $(PKG_ROOT_LIB_DIR)
+ ../$(INSTALL) -m 755 -d $(PKG_LIB_DIR); \
+ ../$(INSTALL) -m 755 -T so_dot_version $(LIBNAME).lai $(PKG_LIB_DIR); \
+ ../$(INSTALL) -T so_dot_current $(LIBNAME).lai $(PKG_LIB_DIR); \
+ ../$(INSTALL) -T so_base $(LIBNAME).lai $(PKG_LIB_DIR)
endif
# Libtool thinks the static and shared libs should be in the same dir, so
@@ -68,7 +69,7 @@ endif
# Other things want the shared libs to appear in /usr/lib, else they'll
# link with the static libs there. So, another symlink to get the .so into
# /usr/lib.
-ifeq ($(ENABLE_SHARED),yes)
+ifeq ($(ENABLE_SHARED_HANDLED_BY_gen_usr_ldscript),yes)
INSTALL_LTLIB_DEV = \
cd $(TOPDIR)/$(LIBNAME)/.libs; \
../$(INSTALL) -m 755 -d $(PKG_LIB_DIR); \

View File

@ -1,8 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>base-system@gentoo.org</email>
<name>Gentoo Base System</name>
</maintainer>
<upstream>
<remote-id type="cpe">cpe:/a:sgi:xfsprogs</remote-id>
</upstream>
</pkgmetadata>

View File

@ -1,81 +0,0 @@
# Copyright 1999-2018 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
inherit toolchain-funcs multilib systemd
DESCRIPTION="xfs filesystem utilities"
HOMEPAGE="https://xfs.wiki.kernel.org/"
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 ia64 ~mips ppc ppc64 s390 sh sparc x86"
IUSE="icu libedit nls readline static-libs"
LIB_DEPEND=">=sys-apps/util-linux-2.17.2[static-libs(+)]
icu? ( dev-libs/icu:=[static-libs(+)] )
readline? ( sys-libs/readline:0=[static-libs(+)] )
!readline? ( libedit? ( dev-libs/libedit[static-libs(+)] ) )"
RDEPEND="${LIB_DEPEND//\[static-libs(+)]}
!<sys-fs/xfsdump-3"
DEPEND="${RDEPEND}
nls? ( sys-devel/gettext )"
PATCHES=(
"${FILESDIR}"/${PN}-4.9.0-underlinking.patch
"${FILESDIR}"/${PN}-4.15.0-sharedlibs.patch
"${FILESDIR}"/${PN}-4.15.0-docdir.patch
)
pkg_setup() {
if use readline && use libedit ; then
ewarn "You have USE='readline libedit' but these are exclusive."
ewarn "Defaulting to readline; please disable this USE flag if you want libedit."
fi
}
src_prepare() {
default
# Clear out -static from all flags since we want to link against dynamic xfs libs.
sed -i \
-e "/^PKG_DOC_DIR/s:@pkg_name@:${PF}:" \
include/builddefs.in || die
find -name Makefile -exec \
sed -i -r -e '/^LLDFLAGS [+]?= -static(-libtool-libs)?$/d' {} +
}
src_configure() {
export DEBUG=-DNDEBUG
export OPTIMIZER=${CFLAGS}
unset PLATFORM # if set in user env, this breaks configure
local myconf=(
--disable-lto #655638
--enable-blkid
--with-crond-dir="${EPREFIX}/etc/cron.d"
--with-systemd-unit-dir="$(systemd_get_systemunitdir)"
$(use_enable icu libicu)
$(use_enable nls gettext)
$(use_enable readline)
$(usex readline --disable-editline $(use_enable libedit editline))
$(use_enable static-libs static)
)
econf "${myconf[@]}"
MAKEOPTS+=" V=1"
}
src_install() {
emake DIST_ROOT="${ED}" install
# parallel install fails on this target for >=xfsprogs-3.2.0
emake -j1 DIST_ROOT="${ED}" install-dev
# handle is for xfsdump, the rest for xfsprogs
gen_usr_ldscript -a handle xcmd xfs xlog frog
# removing unnecessary .la files if not needed
use static-libs || find "${ED}" -name '*.la' -delete
}

View File

@ -1,81 +0,0 @@
# Copyright 1999-2018 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
inherit toolchain-funcs multilib systemd
DESCRIPTION="xfs filesystem utilities"
HOMEPAGE="https://xfs.wiki.kernel.org/"
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 ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86"
IUSE="icu libedit nls readline static-libs"
LIB_DEPEND=">=sys-apps/util-linux-2.17.2[static-libs(+)]
icu? ( dev-libs/icu:=[static-libs(+)] )
readline? ( sys-libs/readline:0=[static-libs(+)] )
!readline? ( libedit? ( dev-libs/libedit[static-libs(+)] ) )"
RDEPEND="${LIB_DEPEND//\[static-libs(+)]}
!<sys-fs/xfsdump-3"
DEPEND="${RDEPEND}
nls? ( sys-devel/gettext )"
PATCHES=(
"${FILESDIR}"/${PN}-4.9.0-underlinking.patch
"${FILESDIR}"/${PN}-4.15.0-sharedlibs.patch
"${FILESDIR}"/${PN}-4.15.0-docdir.patch
)
pkg_setup() {
if use readline && use libedit ; then
ewarn "You have USE='readline libedit' but these are exclusive."
ewarn "Defaulting to readline; please disable this USE flag if you want libedit."
fi
}
src_prepare() {
default
# Clear out -static from all flags since we want to link against dynamic xfs libs.
sed -i \
-e "/^PKG_DOC_DIR/s:@pkg_name@:${PF}:" \
include/builddefs.in || die
find -name Makefile -exec \
sed -i -r -e '/^LLDFLAGS [+]?= -static(-libtool-libs)?$/d' {} +
}
src_configure() {
export DEBUG=-DNDEBUG
export OPTIMIZER=${CFLAGS}
unset PLATFORM # if set in user env, this breaks configure
local myconf=(
--disable-lto #655638
--enable-blkid
--with-crond-dir="${EPREFIX}/etc/cron.d"
--with-systemd-unit-dir="$(systemd_get_systemunitdir)"
$(use_enable icu libicu)
$(use_enable nls gettext)
$(use_enable readline)
$(usex readline --disable-editline $(use_enable libedit editline))
$(use_enable static-libs static)
)
econf "${myconf[@]}"
MAKEOPTS+=" V=1"
}
src_install() {
emake DIST_ROOT="${ED}" install
# parallel install fails on this target for >=xfsprogs-3.2.0
emake -j1 DIST_ROOT="${ED}" install-dev
# handle is for xfsdump, the rest for xfsprogs
gen_usr_ldscript -a handle xcmd xfs xlog frog
# removing unnecessary .la files if not needed
use static-libs || find "${ED}" -name '*.la' -delete
}

View File

@ -1,85 +0,0 @@
# Copyright 1999-2018 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
inherit toolchain-funcs multilib systemd
DESCRIPTION="xfs filesystem utilities"
HOMEPAGE="https://xfs.wiki.kernel.org/"
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 ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86"
IUSE="icu libedit nls readline static-libs"
LIB_DEPEND=">=sys-apps/util-linux-2.17.2[static-libs(+)]
icu? ( dev-libs/icu:=[static-libs(+)] )
readline? ( sys-libs/readline:0=[static-libs(+)] )
!readline? ( libedit? ( dev-libs/libedit[static-libs(+)] ) )"
RDEPEND="${LIB_DEPEND//\[static-libs(+)]}
!<sys-fs/xfsdump-3"
DEPEND="${RDEPEND}
nls? ( sys-devel/gettext )"
PATCHES=(
"${FILESDIR}"/${PN}-4.9.0-underlinking.patch
"${FILESDIR}"/${PN}-4.15.0-sharedlibs.patch
"${FILESDIR}"/${PN}-4.15.0-docdir.patch
)
pkg_setup() {
if use readline && use libedit ; then
ewarn "You have USE='readline libedit' but these are exclusive."
ewarn "Defaulting to readline; please disable this USE flag if you want libedit."
fi
}
src_prepare() {
default
# Clear out -static from all flags since we want to link against dynamic xfs libs.
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
find -name Makefile -exec \
sed -i -r -e '/^LLDFLAGS [+]?= -static(-libtool-libs)?$/d' {} +
}
src_configure() {
export DEBUG=-DNDEBUG
export OPTIMIZER=${CFLAGS}
unset PLATFORM # if set in user env, this breaks configure
local myconf=(
--disable-lto #655638
--enable-blkid
--with-crond-dir="${EPREFIX}/etc/cron.d"
--with-systemd-unit-dir="$(systemd_get_systemunitdir)"
$(use_enable icu libicu)
$(use_enable nls gettext)
$(use_enable readline)
$(usex readline --disable-editline $(use_enable libedit editline))
$(use_enable static-libs static)
)
econf "${myconf[@]}"
MAKEOPTS+=" V=1"
}
src_install() {
emake DIST_ROOT="${ED}" install
# parallel install fails on this target for >=xfsprogs-3.2.0
emake -j1 DIST_ROOT="${ED}" install-dev
# handle is for xfsdump, the rest for xfsprogs
gen_usr_ldscript -a handle xcmd xfs xlog frog
# removing unnecessary .la files if not needed
if ! use static-libs ; then
find "${ED}" -name '*.la' -delete || die
fi
}

View File

@ -0,0 +1,95 @@
# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit flag-o-matic toolchain-funcs systemd usr-ldscript
DESCRIPTION="xfs filesystem utilities"
HOMEPAGE="https://xfs.wiki.kernel.org/"
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 ~ia64 ~mips ppc ppc64 ~s390 sparc x86"
IUSE="icu libedit nls selinux"
RDEPEND=">=sys-apps/util-linux-2.17.2
dev-libs/inih
icu? ( dev-libs/icu:= )
libedit? ( dev-libs/libedit )
"
DEPEND="${RDEPEND}"
BDEPEND="
nls? ( sys-devel/gettext )
"
RDEPEND+=" selinux? ( sec-policy/selinux-xfs )"
PATCHES=(
"${FILESDIR}"/${PN}-4.15.0-docdir.patch
"${FILESDIR}"/${PN}-5.3.0-libdir.patch
)
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
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=" "
unset PLATFORM # if set in user env, this breaks configure
# Avoid automagic on libdevmapper, #709694
export ac_cv_search_dm_task_create=no
# 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-blkid
--with-crond-dir="${EPREFIX}/etc/cron.d"
--with-systemd-unit-dir="$(systemd_get_systemunitdir)"
$(use_enable icu libicu)
$(use_enable nls gettext)
$(use_enable libedit editline)
)
if is-flagq -flto ; then
myconf+=( --enable-lto )
else
myconf+=( --disable-lto )
fi
econf "${myconf[@]}"
}
src_compile() {
emake V=1
}
src_install() {
emake DIST_ROOT="${ED}" HAVE_ZIPPED_MANPAGES=false install
emake DIST_ROOT="${ED}" HAVE_ZIPPED_MANPAGES=false install-dev
gen_usr_ldscript -a handle
}

View File

@ -0,0 +1,96 @@
# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit flag-o-matic systemd usr-ldscript
DESCRIPTION="xfs filesystem utilities"
HOMEPAGE="https://xfs.wiki.kernel.org/"
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 ~ia64 ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
IUSE="icu libedit nls selinux"
RDEPEND=">=sys-apps/util-linux-2.17.2
dev-libs/inih
dev-libs/userspace-rcu
icu? ( dev-libs/icu:= )
libedit? ( dev-libs/libedit )
"
DEPEND="${RDEPEND}"
BDEPEND="
nls? ( sys-devel/gettext )
"
RDEPEND+=" selinux? ( sec-policy/selinux-xfs )"
PATCHES=(
"${FILESDIR}"/${PN}-4.15.0-docdir.patch
"${FILESDIR}"/${PN}-5.3.0-libdir.patch
)
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
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=" "
unset PLATFORM # if set in user env, this breaks configure
# Avoid automagic on libdevmapper, #709694
export ac_cv_search_dm_task_create=no
# 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-blkid
--with-crond-dir="${EPREFIX}/etc/cron.d"
--with-systemd-unit-dir="$(systemd_get_systemunitdir)"
$(use_enable icu libicu)
$(use_enable nls gettext)
$(use_enable libedit editline)
)
if is-flagq -flto ; then
myconf+=( --enable-lto )
else
myconf+=( --disable-lto )
fi
econf "${myconf[@]}"
}
src_compile() {
emake V=1
}
src_install() {
emake DIST_ROOT="${ED}" HAVE_ZIPPED_MANPAGES=false install
emake DIST_ROOT="${ED}" HAVE_ZIPPED_MANPAGES=false install-dev
gen_usr_ldscript -a handle
}

View File

@ -0,0 +1,96 @@
# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit flag-o-matic systemd usr-ldscript
DESCRIPTION="xfs filesystem utilities"
HOMEPAGE="https://xfs.wiki.kernel.org/"
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 ~ia64 ~mips ppc ppc64 ~riscv ~s390 sparc x86"
IUSE="icu libedit nls selinux"
RDEPEND=">=sys-apps/util-linux-2.17.2
dev-libs/inih
dev-libs/userspace-rcu
icu? ( dev-libs/icu:= )
libedit? ( dev-libs/libedit )
"
DEPEND="${RDEPEND}"
BDEPEND="
nls? ( sys-devel/gettext )
"
RDEPEND+=" selinux? ( sec-policy/selinux-xfs )"
PATCHES=(
"${FILESDIR}"/${PN}-4.15.0-docdir.patch
"${FILESDIR}"/${PN}-5.3.0-libdir.patch
)
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
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=" "
unset PLATFORM # if set in user env, this breaks configure
# Avoid automagic on libdevmapper, #709694
export ac_cv_search_dm_task_create=no
# 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-blkid
--with-crond-dir="${EPREFIX}/etc/cron.d"
--with-systemd-unit-dir="$(systemd_get_systemunitdir)"
$(use_enable icu libicu)
$(use_enable nls gettext)
$(use_enable libedit editline)
)
if is-flagq -flto ; then
myconf+=( --enable-lto )
else
myconf+=( --disable-lto )
fi
econf "${myconf[@]}"
}
src_compile() {
emake V=1
}
src_install() {
emake DIST_ROOT="${ED}" HAVE_ZIPPED_MANPAGES=false install
emake DIST_ROOT="${ED}" HAVE_ZIPPED_MANPAGES=false install-dev
gen_usr_ldscript -a handle
}