diff options
Diffstat (limited to 'pkgs/tools/filesystems/xfsprogs')
-rw-r--r-- | pkgs/tools/filesystems/xfsprogs/default.nix | 59 |
1 files changed, 31 insertions, 28 deletions
diff --git a/pkgs/tools/filesystems/xfsprogs/default.nix b/pkgs/tools/filesystems/xfsprogs/default.nix index ed41470f60017..eaea921c6f5c1 100644 --- a/pkgs/tools/filesystems/xfsprogs/default.nix +++ b/pkgs/tools/filesystems/xfsprogs/default.nix @@ -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 ]; }; } |