summaryrefslogtreecommitdiff
path: root/sys-fs
diff options
context:
space:
mode:
Diffstat (limited to 'sys-fs')
-rw-r--r--sys-fs/xfsprogs/Manifest1
-rw-r--r--sys-fs/xfsprogs/xfsprogs-5.4.0.ebuild107
2 files changed, 108 insertions, 0 deletions
diff --git a/sys-fs/xfsprogs/Manifest b/sys-fs/xfsprogs/Manifest
index d034116d5aaa..ce59ce632517 100644
--- a/sys-fs/xfsprogs/Manifest
+++ b/sys-fs/xfsprogs/Manifest
@@ -1,2 +1,3 @@
DIST xfsprogs-4.19.0.tar.xz 1212852 BLAKE2B 2d04390765c5e0dd7d51366f0310c9e680651d49bdd1ecd220b4eec50540a66c97bf6e54f976414351bc77381ffd463803836b27ca25b53960a278a34bc09775 SHA512 a96d0ce406534e70b0a531dfab296de420ec710cd0682dffaf5211602adf82dd59f84b9eb7793c54eabb782a9e0229acf7b247ab644d531ee9e5b51fe9dc0f58
DIST xfsprogs-5.3.0.tar.xz 1247636 BLAKE2B 0f8b2eafa1b1c91ff8bbcf8f79f61a8bea47123b859ec7a181dea37891ca0345a79a0cc714f003fbe560b00c0c2fc76e6bf6a3a1465f51c44b2df3a3dcbe6415 SHA512 308202eba3765e416c43877ad68d528f6c7d03ca024b89709aa3ca818f6c6692e3b90a809cbb81ff886624300c0e548925e70b34c30c47bac8dcfe4bb9c18857
+DIST xfsprogs-5.4.0.tar.xz 1248688 BLAKE2B dd00083b62a4989ca94d117eabad3905dc487c3e6d4f20bbe855399e99e2195c1a45f2be3b117048e2a7f2374c7e6258e7c1edd63d12a405c88f4c9fa6cd5e8e SHA512 c0973fcf97e2666385b46c80cd1398728702cb34fd7e0f89e2a63686300573405d09a81d3ae43d79c2e9710ccf6b6bd6ed1c3f3f831c75cd0916f094f203aaa7
diff --git a/sys-fs/xfsprogs/xfsprogs-5.4.0.ebuild b/sys-fs/xfsprogs/xfsprogs-5.4.0.ebuild
new file mode 100644
index 000000000000..6058992139d6
--- /dev/null
+++ b/sys-fs/xfsprogs/xfsprogs-5.4.0.ebuild
@@ -0,0 +1,107 @@
+# Copyright 1999-2019 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 ~sh ~sparc ~x86"
+IUSE="icu libedit nls readline"
+
+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}"
+BDEPEND="
+ nls? ( sys-devel/gettext )
+"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-4.15.0-docdir.patch
+ "${FILESDIR}"/${PN}-5.3.0-libdir.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
+
+ # 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
+
+ # 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 readline)
+ $(usex readline --disable-editline $(use_enable libedit editline))
+ )
+
+ if is-flagq -fno-lto ; then
+ einfo "LTO disabled via {C,CXX,F,FC}FLAGS"
+ myconf+=( --disable-lto )
+ else
+ if is-flagq -flto ; then
+ einfo "LTO forced via {C,CXX,F,FC}FLAGS"
+ myconf+=( --enable-lto )
+ elif use amd64 || use x86 ; then
+ # match upstream default
+ myconf+=( --enable-lto )
+ else
+ # LTO can cause problems on some architectures, bug 655638
+ myconf+=( --disable-lto )
+ fi
+ fi
+
+ econf "${myconf[@]}"
+}
+
+src_compile() {
+ emake V=1
+}
+
+src_install() {
+ emake DIST_ROOT="${ED}" install
+ emake DIST_ROOT="${ED}" install-dev
+
+ gen_usr_ldscript -a handle
+}