|
|
|
@ -1,22 +1,14 @@ |
|
|
|
|
{ stdenv, buildPackages, fetchpatch, fetchgit, autoconf, automake, gettext, libtool, pkgconfig |
|
|
|
|
, icu, libuuid, readline |
|
|
|
|
{ stdenv, buildPackages, fetchpatch, fetchurl, autoconf, automake, gettext, libtool, pkgconfig |
|
|
|
|
, icu, libuuid, readline, inih |
|
|
|
|
}: |
|
|
|
|
|
|
|
|
|
let |
|
|
|
|
gentooPatch = name: sha256: fetchpatch { |
|
|
|
|
url = "https://gitweb.gentoo.org/repo/gentoo.git/plain/sys-fs/xfsprogs/files/${name}?id=2517dd766cf84d251631f4324f7ec4bce912abb9"; |
|
|
|
|
inherit sha256; |
|
|
|
|
}; |
|
|
|
|
in |
|
|
|
|
|
|
|
|
|
stdenv.mkDerivation rec { |
|
|
|
|
pname = "xfsprogs"; |
|
|
|
|
version = "4.19.0"; |
|
|
|
|
version = "5.10.0"; |
|
|
|
|
|
|
|
|
|
src = fetchgit { |
|
|
|
|
url = "https://git.kernel.org/pub/scm/fs/xfs/xfsprogs-dev.git"; |
|
|
|
|
rev = "v${version}"; |
|
|
|
|
sha256 = "18728hzfxr1bg4bdzqlxjs893ac1zwlfr7nmc2q4a1sxs0sphd1d"; |
|
|
|
|
src = fetchurl { |
|
|
|
|
url = "mirror://kernel/linux/utils/fs/xfs/xfsprogs/${pname}-${version}.tar.xz"; |
|
|
|
|
sha256 = "1schqzjx836jd54l10pqds7hyli2m77df3snk95xbr23dpj1fh70"; |
|
|
|
|
}; |
|
|
|
|
|
|
|
|
|
outputs = [ "bin" "dev" "out" "doc" ]; |
|
|
|
@ -26,26 +18,24 @@ stdenv.mkDerivation rec { |
|
|
|
|
autoconf automake libtool gettext pkgconfig |
|
|
|
|
libuuid # codegen tool uses libuuid |
|
|
|
|
]; |
|
|
|
|
buildInputs = [ readline icu ]; |
|
|
|
|
buildInputs = [ readline icu inih ]; |
|
|
|
|
propagatedBuildInputs = [ libuuid ]; # Dev headers include <uuid/uuid.h> |
|
|
|
|
|
|
|
|
|
enableParallelBuilding = true; |
|
|
|
|
|
|
|
|
|
# Why is all this garbage needed? Why? Why? |
|
|
|
|
patches = [ |
|
|
|
|
(gentooPatch "xfsprogs-4.15.0-sharedlibs.patch" "0bv2naxpiw7vcsg8p1v2i47wgfda91z1xy1kfwydbp4wmb4nbyyv") |
|
|
|
|
(gentooPatch "xfsprogs-4.15.0-docdir.patch" "1srgdidvq2ka0rmfdwpqp92fapgh53w1h7rajm4nnby5vp2v8dfr") |
|
|
|
|
(gentooPatch "xfsprogs-4.9.0-underlinking.patch" "1r7l8jphspy14i43zbfnjrnyrdm4cpgyfchblascxylmans0gci7") |
|
|
|
|
]; |
|
|
|
|
|
|
|
|
|
# @sbindir@ is replaced with /run/current-system/sw/bin to fix dependency cycles |
|
|
|
|
preConfigure = '' |
|
|
|
|
sed -i Makefile -e '/cp include.install-sh/d' |
|
|
|
|
for file in scrub/{xfs_scrub_all.cron.in,xfs_scrub@.service.in,xfs_scrub_all.service.in}; do |
|
|
|
|
substituteInPlace "$file" \ |
|
|
|
|
--replace '@sbindir@' '/run/current-system/sw/bin' |
|
|
|
|
done |
|
|
|
|
make configure |
|
|
|
|
patchShebangs ./install-sh |
|
|
|
|
''; |
|
|
|
|
|
|
|
|
|
configureFlags = [ |
|
|
|
|
"--disable-lib64" |
|
|
|
|
"--enable-readline" |
|
|
|
|
"--with-systemd-unit-dir=${placeholder "out"}/lib/systemd/system" |
|
|
|
|
]; |
|
|
|
|
|
|
|
|
|
installFlags = [ "install-dev" ]; |
|
|
|
@ -60,6 +50,6 @@ stdenv.mkDerivation rec { |
|
|
|
|
description = "SGI XFS utilities"; |
|
|
|
|
license = licenses.lgpl21; |
|
|
|
|
platforms = platforms.linux; |
|
|
|
|
maintainers = with maintainers; [ dezgeg ]; |
|
|
|
|
maintainers = with maintainers; [ dezgeg ajs124 ]; |
|
|
|
|
}; |
|
|
|
|
} |
|
|
|
|