a3f8a2c56f
Fixes compilation on non-glibc at minor cost since these are only used to guard the use of pragmas selectively disabling warnings based on the GCC version used.
49 lines
1.5 KiB
Nix
49 lines
1.5 KiB
Nix
{ stdenv, buildPackages, fetchurl, pkgconfig, libuuid, gettext, texinfo, perl }:
|
|
|
|
stdenv.mkDerivation rec {
|
|
name = "e2fsprogs-1.44.4";
|
|
|
|
src = fetchurl {
|
|
url = "mirror://sourceforge/e2fsprogs/${name}.tar.gz";
|
|
sha256 = "1cnwfmv9r7s73xhgghqspjq593pc4qghh80wjd0kjdgwy247cw6x";
|
|
};
|
|
|
|
outputs = [ "bin" "dev" "out" "man" "info" ];
|
|
|
|
depsBuildBuild = [ buildPackages.stdenv.cc ];
|
|
nativeBuildInputs = [ pkgconfig texinfo ];
|
|
buildInputs = [ libuuid gettext ];
|
|
|
|
# Only use glibc's __GNUC_PREREQ(X,Y) (checks if compiler is gcc version >= X.Y) when using glibc
|
|
NIX_CFLAGS_COMPILE = stdenv.lib.optional (stdenv.hostPlatform.libc != "glibc")
|
|
"-D__GNUC_PREREQ(maj,min)=0";
|
|
|
|
configureFlags =
|
|
if stdenv.isLinux then [
|
|
"--enable-elf-shlibs" "--enable-symlink-install" "--enable-relative-symlinks"
|
|
# libuuid, libblkid, uuidd and fsck are in util-linux-ng (the "libuuid" dependency).
|
|
"--disable-libuuid" "--disable-uuidd" "--disable-libblkid" "--disable-fsck"
|
|
] else [
|
|
"--enable-libuuid --disable-e2initrd-helper"
|
|
];
|
|
|
|
checkInputs = [ perl ];
|
|
doCheck = false; # fails
|
|
|
|
# hacky way to make it install *.pc
|
|
postInstall = ''
|
|
make install-libs
|
|
rm "$out"/lib/*.a
|
|
'';
|
|
|
|
enableParallelBuilding = true;
|
|
|
|
meta = with stdenv.lib; {
|
|
homepage = http://e2fsprogs.sourceforge.net/;
|
|
description = "Tools for creating and checking ext2/ext3/ext4 filesystems";
|
|
license = licenses.gpl2;
|
|
platforms = platforms.linux;
|
|
maintainers = [ maintainers.eelco ];
|
|
};
|
|
}
|