xfsprogs: 4.5.0 -> 4.11.0

This commit is contained in:
Tuomas Tynkkynen 2017-07-20 11:54:25 +03:00
parent 5638472756
commit 2712554f4f
2 changed files with 33 additions and 30 deletions

View File

@ -1,56 +1,59 @@
{ stdenv, fetchurl, gettext, libuuid, readline }:
{ stdenv, fetchpatch, fetchgit, autoconf, automake, gettext, libtool, readline, utillinux }:
let
gentooPatch = name: sha256: fetchpatch {
url = "https://gitweb.gentoo.org/repo/gentoo.git/plain/sys-fs/xfsprogs/files/${name}?id=8293574ab30c85e2965fb2b7dd890b44841b8404";
inherit sha256;
};
in
stdenv.mkDerivation rec {
name = "xfsprogs-4.5.0";
name = "xfsprogs-${version}";
version = "4.11.0";
src = fetchurl {
urls = map (dir: "ftp://oss.sgi.com/projects/xfs/${dir}/${name}.tar.gz")
[ "cmd_tars" "previous" ];
sha256 = "1y49rwvbbvqdq2a1x7p5i05bcfyv6xhmrfwafl6vvvw494qyp6z4";
src = fetchgit {
url = "git://git.kernel.org/pub/scm/fs/xfs/xfsprogs-dev.git";
rev = "refs/tags/v${version}";
sha256 = "0icliinacg6c3ziaqzyyxfz9jykn80njj9fdv3milhsf81yhnrpn";
};
prePatch = ''
sed -i "s,/bin/bash,$(type -P bash),g" install-sh
sed -i "s,ldconfig,$(type -P ldconfig),g" configure m4/libtool.m4
outputs = [ "bin" "dev" "out" "doc" ];
# Fixes from gentoo 3.2.1 ebuild
sed -i "/^PKG_DOC_DIR/s:@pkg_name@:${name}:" include/builddefs.in
sed -i "/LLDFLAGS.*libtool-libs/d" $(find -name Makefile)
sed -i '/LIB_SUBDIRS/s:libdisk::' Makefile
'';
nativeBuildInputs = [ autoconf automake libtool gettext ];
propagatedBuildInputs = [ utillinux ]; # Dev headers include <uuid/uuid.h>
buildInputs = [ readline ];
enableParallelBuilding = true;
# Why is all this garbage needed? Why? Why?
patches = [
# This patch fixes shared libs installation, still not fixed in 4.2.0
./4.3.0-sharedlibs.patch
(gentooPatch "xfsprogs-4.7.0-sharedlibs.patch" "1s83ihaccmjrw4zm0nbdwqk3jx4wc1rijpsqrg7ir71ln7qknwzz")
(gentooPatch "xfsprogs-4.7.0-libxcmd-link.patch" "1lvy1ajzml39a631a7jqficnzsd40bzkca7hkxv1ybiqyp8sf55s")
(gentooPatch "xfsprogs-4.9.0-underlinking.patch" "1r7l8jphspy14i43zbfnjrnyrdm4cpgyfchblascxylmans0gci7")
];
propagatedBuildInputs = [ libuuid ];
buildInputs = [ gettext readline ];
outputs = [ "bin" "dev" "out" ]; # TODO: review xfs
preConfigure = ''
NIX_LDFLAGS="$(echo $NIX_LDFLAGS | sed "s,$out,$lib,g")"
sed -i Makefile -e '/cp include.install-sh/d'
make configure
'';
configureFlags = [
"MAKE=make"
"MSGFMT=msgfmt"
"MSGMERGE=msgmerge"
"XGETTEXT=xgettext"
"--disable-lib64"
"--enable-readline"
];
installFlags = [ "install-dev" ];
enableParallelBuilding = true;
# FIXME: forbidden rpath
postInstall = ''
find . -type d -name .libs | xargs rm -rf
'';
meta = with stdenv.lib; {
homepage = http://xfs.org/;
description = "SGI XFS utilities";
license = licenses.lgpl21;
platforms = platforms.linux;
maintainers = with maintainers; [ wkennington ];
maintainers = with maintainers; [ dezgeg ];
};
}

View File

@ -4945,8 +4945,8 @@ with pkgs;
gnome_python = gnome2.gnome_python;
};
xfsprogs = callPackage ../tools/filesystems/xfsprogs { };
libxfs = xfsprogs.dev; # outputs TODO
xfsprogs = callPackage ../tools/filesystems/xfsprogs { utillinux = utillinuxMinimal; };
libxfs = xfsprogs.dev;
xml2 = callPackage ../tools/text/xml/xml2 { };