summary refs log tree commit diff
path: root/pkgs/tools/misc/coreutils
diff options
context:
space:
mode:
authorPeter Simons <simons@cryp.to>2013-09-23 10:59:44 +0200
committerPeter Simons <simons@cryp.to>2013-09-23 10:59:44 +0200
commit9407832de442a44a944146f1c433cf3442c3a1bb (patch)
treeb73362aa353005a319bf1468e1f516bd14103afe /pkgs/tools/misc/coreutils
parente4f6e4b15d082dece20abd4d274d035f599d4cc2 (diff)
parent95c8d04843059b6f54110ff8ecb4d48091fb6df9 (diff)
downloadnixlib-9407832de442a44a944146f1c433cf3442c3a1bb.tar
nixlib-9407832de442a44a944146f1c433cf3442c3a1bb.tar.gz
nixlib-9407832de442a44a944146f1c433cf3442c3a1bb.tar.bz2
nixlib-9407832de442a44a944146f1c433cf3442c3a1bb.tar.lz
nixlib-9407832de442a44a944146f1c433cf3442c3a1bb.tar.xz
nixlib-9407832de442a44a944146f1c433cf3442c3a1bb.tar.zst
nixlib-9407832de442a44a944146f1c433cf3442c3a1bb.zip
Merge remote-tracking branch 'origin/master' into stdenv-updates.
Conflicts:
	pkgs/development/libraries/gettext/default.nix
Diffstat (limited to 'pkgs/tools/misc/coreutils')
-rw-r--r--pkgs/tools/misc/coreutils/8.19.nix70
-rw-r--r--pkgs/tools/misc/coreutils/default.nix23
2 files changed, 13 insertions, 80 deletions
diff --git a/pkgs/tools/misc/coreutils/8.19.nix b/pkgs/tools/misc/coreutils/8.19.nix
deleted file mode 100644
index 23db167f3070..000000000000
--- a/pkgs/tools/misc/coreutils/8.19.nix
+++ /dev/null
@@ -1,70 +0,0 @@
-{ stdenv, fetchurl, perl, gmp ? null
-, aclSupport ? false, acl ? null
-, selinuxSupport? false, libselinux ? null, libsepol ? null
-}:
-
-assert aclSupport -> acl != null;
-assert selinuxSupport -> libselinux != null && libsepol != null;
-
-stdenv.mkDerivation rec {
-  name = "coreutils-8.19";
-
-  src = fetchurl {
-    url = "mirror://gnu/coreutils/${name}.tar.xz";
-    sha256 = "1rx9x3fp848w4nny7irdkcpkan9fcx24d99v5dkwgkyq7wc76f5d";
-  };
-
-  nativeBuildInputs = [ perl ];
-  buildInputs = [ gmp ]
-    ++ stdenv.lib.optional aclSupport acl
-    ++ stdenv.lib.optional selinuxSupport libselinux
-    ++ stdenv.lib.optional selinuxSupport libsepol;
-
-  crossAttrs = ({
-    buildInputs = [ gmp ]
-      ++ stdenv.lib.optional aclSupport acl.crossDrv
-      ++ stdenv.lib.optional selinuxSupport libselinux.crossDrv
-      ++ stdenv.lib.optional selinuxSupport libsepol.crossDrv
-      ++ stdenv.lib.optional (stdenv.gccCross.libc ? libiconv)
-        stdenv.gccCross.libc.libiconv.crossDrv;
-
-    # Needed for fstatfs()
-    # I don't know why it is not properly detected cross building with glibc.
-    configureFlags = [ "fu_cv_sys_stat_statfs2_bsize=yes" ];
-    doCheck = false;
-  }
-
-  //
-
-  # XXX: Temporary workaround to allow GNU/Hurd builds with newer libcs.
-  (stdenv.lib.optionalAttrs (stdenv.cross.config == "i586-pc-gnu") {
-    patches = [ ./gets-undeclared.patch ];
-  }));
-
-  # The tests are known broken on Cygwin
-  # (http://thread.gmane.org/gmane.comp.gnu.core-utils.bugs/19025),
-  # Darwin (http://thread.gmane.org/gmane.comp.gnu.core-utils.bugs/19351),
-  # and {Open,Free}BSD.
-  doCheck = stdenv ? glibc;
-
-  enableParallelBuilding = true;
-
-  NIX_LDFLAGS = stdenv.lib.optionalString selinuxSupport "-lsepol";
-
-  meta = {
-    homepage = http://www.gnu.org/software/coreutils/;
-    description = "The basic file, shell and text manipulation utilities of the GNU operating system";
-
-    longDescription = ''
-      The GNU Core Utilities are the basic file, shell and text
-      manipulation utilities of the GNU operating system.  These are
-      the core utilities which are expected to exist on every
-      operating system.
-    '';
-
-    license = "GPLv3+";
-
-    maintainers = [ ];
-  };
-}
-
diff --git a/pkgs/tools/misc/coreutils/default.nix b/pkgs/tools/misc/coreutils/default.nix
index a526d3ac5a87..ebd68ee9cf68 100644
--- a/pkgs/tools/misc/coreutils/default.nix
+++ b/pkgs/tools/misc/coreutils/default.nix
@@ -6,8 +6,11 @@
 assert aclSupport -> acl != null;
 assert selinuxSupport -> libselinux != null && libsepol != null;
 
+
+with { inherit (stdenv.lib) optional optionals optionalString optionalAttrs; };
+
 let
-  self = stdenv.mkDerivation rec {
+  self = stdenv.mkDerivation (rec {
     name = "coreutils-8.21";
 
     src = fetchurl {
@@ -17,16 +20,14 @@ let
 
     nativeBuildInputs = [ perl ];
     buildInputs = [ gmp ]
-      ++ stdenv.lib.optional aclSupport acl
-      ++ stdenv.lib.optional selinuxSupport libselinux
-      ++ stdenv.lib.optional selinuxSupport libsepol;
+      ++ optional aclSupport acl
+      ++ optionals selinuxSupport [ libselinux libsepol ];
 
     crossAttrs = {
       buildInputs = [ gmp ]
-        ++ stdenv.lib.optional aclSupport acl.crossDrv
-        ++ stdenv.lib.optional selinuxSupport libselinux.crossDrv
-        ++ stdenv.lib.optional selinuxSupport libsepol.crossDrv
-        ++ stdenv.lib.optional (stdenv.gccCross.libc ? libiconv)
+        ++ optional aclSupport acl.crossDrv
+        ++ optionals selinuxSupport [ libselinux.crossDrv libsepol.crossDrv ]
+        ++ optional (stdenv.gccCross.libc ? libiconv)
           stdenv.gccCross.libc.libiconv.crossDrv;
 
       buildPhase = ''
@@ -57,7 +58,7 @@ let
 
     enableParallelBuilding = true;
 
-    NIX_LDFLAGS = stdenv.lib.optionalString selinuxSupport "-lsepol";
+    NIX_LDFLAGS = optionalString selinuxSupport "-lsepol";
 
     meta = {
       homepage = http://www.gnu.org/software/coreutils/;
@@ -74,7 +75,9 @@ let
 
       maintainers = [ ];
     };
-  };
+  } // optionalAttrs stdenv.isDarwin {
+    makeFlags = "CFLAGS=-D_FORTIFY_SOURCE=0";
+  });
 in
   self
   // stdenv.lib.optionalAttrs (stdenv.system == "armv7l-linux" || stdenv.isSunOS) {