make-bootstrap-tools*: fixup after #16406

Our coreutils now uses single-binary-build mode where, by default,
simple shebang scripts are used for all the binaries. That doesn't work
e.g. with the Linux unpacker which only handles standard binaries and
symlinks. Let's use the symlinked mode instead for boostrapping.
This does NOT change any stdenv hashes.

I only tested the case most important to me:
$ nix-build pkgs/top-level/release.nix -A stdenvBootstrapTools.x86_64-linux.test
This commit is contained in:
Vladimír Čunát 2016-06-28 09:48:56 +02:00
parent 19e80fa19d
commit f4792cdc0c
4 changed files with 14 additions and 5 deletions

View file

@ -3,9 +3,11 @@
with import ../../.. { inherit system; };
rec {
# We want coreutils without ACL support.
coreutils_ = coreutils.override (orig: {
coreutils_ = coreutils.override (args: {
# We want coreutils without ACL support.
aclSupport = false;
# Our tooling currently can't handle scripts in bin/, only ELFs and symlinks.
singleBinary = "symlinks";
});
build = stdenv.mkDerivation {

View file

@ -87,9 +87,11 @@ in
rec {
# We want coreutils without ACL support.
coreutilsMinimal = (pkgs.coreutils.override (args: {
# We want coreutils without ACL support.
aclSupport = false;
# Our tooling currently can't handle scripts in bin/, only ELFs and symlinks.
singleBinary = "symlinks";
})).crossDrv;
curlMinimal = (pkgs.curl.override {

View file

@ -5,9 +5,11 @@ with import ../../.. {inherit system;};
rec {
# We want coreutils without ACL support.
coreutilsMinimal = coreutils.override (args: {
# We want coreutils without ACL support.
aclSupport = false;
# Our tooling currently can't handle scripts in bin/, only ELFs and symlinks.
singleBinary = "symlinks";
});
tarMinimal = gnutar.override { acl = null; };

View file

@ -3,6 +3,7 @@
, selinuxSupport? false, libselinux ? null, libsepol ? null
, autoconf, automake114x, texinfo
, withPrefix ? false
, singleBinary ? true # you can also pass "symlinks", for example
}:
assert aclSupport -> acl != null;
@ -30,7 +31,9 @@ let
outputs = [ "out" "info" ];
nativeBuildInputs = [ perl xz.bin ];
configureFlags = [ "--enable-single-binary" ]
configureFlags =
optional (singleBinary != false)
("--enable-single-binary" + optionalString (isString singleBinary) "=${singleBinary}")
++ optional stdenv.isSunOS "ac_cv_func_inotify_init=no";
buildInputs = [ gmp ]