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-4.16.1.ebuild96
2 files changed, 97 insertions, 0 deletions
diff --git a/sys-fs/xfsprogs/Manifest b/sys-fs/xfsprogs/Manifest
index 8c4ee431ca48..76a39dfdb470 100644
--- a/sys-fs/xfsprogs/Manifest
+++ b/sys-fs/xfsprogs/Manifest
@@ -1,4 +1,5 @@
DIST xfsprogs-4.14.0.tar.xz 1137048 BLAKE2B b58373ca7f58e5d887cf18ed2aab169aed4ba233a50f1f1ff41eaf0dcd039ae290f1e49b385da19ceff3a34e770f90943502eefd7c1469c5cba74f45185fd07e SHA512 69832a1b9636dc5a77ad277122bb24bc09c71ad743c3ab5bf830d398557e63fa1477dd08c6115a53a94f01fc27e58d70268416013cc25e026baed7a74af8d506
DIST xfsprogs-4.15.1.tar.xz 1188964 BLAKE2B 7b4d1d2f71a0678f9246045e576262d6f3b3c59322e0b33b37dc46d84cdf5407a4b2fd6f2b99dd7647e9bfe9fe312fefe8162013dec9162f3a071421323aa52d SHA512 4ec3f0438f33322f0ff6e5acb27cbb554ab48df3ae0ef11071992b085016f84b49ca7bdbaf3a6859427877ea9c419bcd37ac3058914d67409ba2d65e586508ee
DIST xfsprogs-4.16.0.tar.xz 1199088 BLAKE2B 1de05747164eb695c10644f05845507b0a2daf55563af13b3177588af4114d40c0e72bbfee4cc47aaf86840f648d4fc34837797975aed3490321a1122f86e277 SHA512 0ca0cb3347ccc103f92f496016beaf5e5742fea2a4ca8515f6e340537e446df09483d9d30ce159789eb05a73430f8d517e57d1a8548029f1e73c108484b4e6e8
+DIST xfsprogs-4.16.1.tar.xz 1199632 BLAKE2B 26448ce8ec691d117c0b41aebcb692994ad5a65418ac5af9631eab75191201a265ec9bce92d4076049a4182a879741329f20e5f54343afeef826cf1dfbfcf0d1 SHA512 d3cf3b07e07864341c351a078736ff7c721d86c177e65f131dc6e023cade74a5e07fecbc435d69946d76d587b138e66cddcd763954e15ed0dd17c056a83e2a19
DIST xfsprogs-4.9.0.tar.xz 1087940 BLAKE2B f896a1248e978b4d7c879c91e73f16fd5894cb95c22143e2f805ab2f54b75cafef63cd574fbf3ccbaebb59914b3759a1f8b3a49790c8c05df145d01416723c62 SHA512 990946f0a34381f57afb39bcda0ff539e18af4de2ecc19c833ffd4fb7c22c25b501091c1f0953db103a62204d952c9eecba21f22f3c5910286456da65fb09fa7
diff --git a/sys-fs/xfsprogs/xfsprogs-4.16.1.ebuild b/sys-fs/xfsprogs/xfsprogs-4.16.1.ebuild
new file mode 100644
index 000000000000..148d4aa1cf89
--- /dev/null
+++ b/sys-fs/xfsprogs/xfsprogs-4.16.1.ebuild
@@ -0,0 +1,96 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit toolchain-funcs multilib systemd
+
+DESCRIPTION="xfs filesystem utilities"
+HOMEPAGE="http://oss.sgi.com/projects/xfs/"
+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="libedit nls readline static static-libs"
+REQUIRED_USE="static? ( static-libs )"
+
+LIB_DEPEND=">=sys-apps/util-linux-2.17.2[static-libs(+)]
+ readline? ( sys-libs/readline:0=[static-libs(+)] )
+ !readline? ( libedit? ( dev-libs/libedit[static-libs(+)] ) )"
+RDEPEND="!static? ( ${LIB_DEPEND//\[static-libs(+)]} )
+ !<sys-fs/xfsdump-3"
+DEPEND="${RDEPEND}
+ static? (
+ ${LIB_DEPEND}
+ readline? ( sys-libs/ncurses:0=[static-libs] )
+ )
+ 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
+
+ # LLDFLAGS is used for programs, so apply -all-static when USE=static is enabled.
+ # 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}:" \
+ -e "1iLLDFLAGS += $(usex static '-all-static' '')" \
+ include/builddefs.in || die
+ find -name Makefile -exec \
+ sed -i -r -e '/^LLDFLAGS [+]?= -static(-libtool-libs)?$/d' {} +
+
+ # TODO: Write a patch for configure.ac to use pkg-config for the uuid-part.
+ if use static && use readline ; then
+ sed -i \
+ -e 's|-lreadline|& -lncurses|' \
+ -e 's|-lblkid|& -luuid|' \
+ configure || die
+ fi
+}
+
+src_configure() {
+ export DEBUG=-DNDEBUG
+ export OPTIMIZER=${CFLAGS}
+ unset PLATFORM # if set in user env, this breaks configure
+
+ local myconf=(
+ --with-crond-dir="${EPREFIX}/etc/cron.d"
+ --with-systemd-unit-dir="$(systemd_get_systemunitdir)"
+ $(use_enable nls gettext)
+ $(use_enable readline)
+ $(usex readline --disable-editline $(use_enable libedit editline))
+ )
+ if use static || use static-libs ; then
+ myconf+=( --enable-static )
+ else
+ myconf+=( --disable-static )
+ fi
+
+ 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
+}