summary refs log tree commit diff
diff options
context:
space:
mode:
authorTuomas Tynkkynen <tuomas@tuxera.com>2017-01-05 00:46:34 +0200
committerTuomas Tynkkynen <tuomas@tuxera.com>2017-01-05 00:55:35 +0200
commitbde863210687e6afa43d12a04e7119fb490acc52 (patch)
treedc1d8459dd904d3a67207604c71e7511d85cd8dd
parentea7b252c9ae0117b8f150950d730a7445d3f5e2d (diff)
downloadnixlib-bde863210687e6afa43d12a04e7119fb490acc52.tar
nixlib-bde863210687e6afa43d12a04e7119fb490acc52.tar.gz
nixlib-bde863210687e6afa43d12a04e7119fb490acc52.tar.bz2
nixlib-bde863210687e6afa43d12a04e7119fb490acc52.tar.lz
nixlib-bde863210687e6afa43d12a04e7119fb490acc52.tar.xz
nixlib-bde863210687e6afa43d12a04e7119fb490acc52.tar.zst
nixlib-bde863210687e6afa43d12a04e7119fb490acc52.zip
coreutils: Build with libattr to support xattrs
Fixes #21649
-rw-r--r--pkgs/stdenv/linux/make-bootstrap-tools-cross.nix3
-rw-r--r--pkgs/stdenv/linux/make-bootstrap-tools.nix3
-rw-r--r--pkgs/tools/misc/coreutils/default.nix5
-rw-r--r--pkgs/top-level/all-packages.nix1
4 files changed, 8 insertions, 4 deletions
diff --git a/pkgs/stdenv/linux/make-bootstrap-tools-cross.nix b/pkgs/stdenv/linux/make-bootstrap-tools-cross.nix
index af82788d3fa9..9f4a4517627e 100644
--- a/pkgs/stdenv/linux/make-bootstrap-tools-cross.nix
+++ b/pkgs/stdenv/linux/make-bootstrap-tools-cross.nix
@@ -87,8 +87,9 @@ rec {
 
 
   coreutilsMinimal = (pkgs.coreutils.override (args: {
-    # We want coreutils without ACL support.
+    # We want coreutils without ACL/attr support.
     aclSupport = false;
+    attrSupport = false;
     # Our tooling currently can't handle scripts in bin/, only ELFs and symlinks.
     singleBinary = "symlinks";
   })).crossDrv;
diff --git a/pkgs/stdenv/linux/make-bootstrap-tools.nix b/pkgs/stdenv/linux/make-bootstrap-tools.nix
index e13fb88eff0b..d31253075c9d 100644
--- a/pkgs/stdenv/linux/make-bootstrap-tools.nix
+++ b/pkgs/stdenv/linux/make-bootstrap-tools.nix
@@ -6,8 +6,9 @@ rec {
 
 
   coreutilsMinimal = coreutils.override (args: {
-    # We want coreutils without ACL support.
+    # We want coreutils without ACL/attr support.
     aclSupport = false;
+    attrSupport = false;
     # Our tooling currently can't handle scripts in bin/, only ELFs and symlinks.
     singleBinary = "symlinks";
   });
diff --git a/pkgs/tools/misc/coreutils/default.nix b/pkgs/tools/misc/coreutils/default.nix
index 8b39e3711e11..9e66c6ba9181 100644
--- a/pkgs/tools/misc/coreutils/default.nix
+++ b/pkgs/tools/misc/coreutils/default.nix
@@ -1,5 +1,6 @@
 { lib, stdenv, fetchurl, perl, xz, gmp ? null
 , aclSupport ? false, acl ? null
+, attrSupport ? false, attr ? null
 , selinuxSupport? false, libselinux ? null, libsepol ? null
 , autoconf, automake114x, texinfo
 , withPrefix ? false
@@ -44,12 +45,14 @@ let
 
     buildInputs = [ gmp ]
       ++ optional aclSupport acl
+      ++ optional attrSupport attr
       ++ optionals stdenv.isCygwin [ autoconf automake114x texinfo ]   # due to patch
       ++ optionals selinuxSupport [ libselinux libsepol ];
 
     crossAttrs = {
       buildInputs = [ gmp.crossDrv ]
         ++ optional aclSupport acl.crossDrv
+        ++ optional attrSupport attr.crossDrv
         ++ optionals selinuxSupport [ libselinux.crossDrv libsepol.crossDrv ]
         ++ optional (stdenv.ccCross.libc ? libiconv)
           stdenv.ccCross.libc.libiconv.crossDrv;
@@ -90,8 +93,6 @@ let
 
     makeFlags = optionalString stdenv.isDarwin "CFLAGS=-D_FORTIFY_SOURCE=0";
 
-    postFixup = ""; # FIXME: remove on next mass rebuild
-
     meta = {
       homepage = http://www.gnu.org/software/coreutils/;
       description = "The basic file, shell and text manipulation utilities of the GNU operating system";
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index f36466af2bb7..d69d494d85b1 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -1287,6 +1287,7 @@ in
 
   coreutils = callPackage ../tools/misc/coreutils {
     aclSupport = stdenv.isLinux;
+    attrSupport = stdenv.isLinux;
   };
 
   coreutils-prefixed = coreutils.override { withPrefix = true; singleBinary = false; };