diff options
author | Eelco Dolstra <eelco.dolstra@logicblox.com> | 2004-03-30 12:46:52 +0000 |
---|---|---|
committer | Eelco Dolstra <eelco.dolstra@logicblox.com> | 2004-03-30 12:46:52 +0000 |
commit | 01a1658c6b8cdf75ad87ea24d1f82bc6c17670d4 (patch) | |
tree | f47da9f336227f99789f4f819837dcd25cc566c0 /pkgs/stdenv | |
parent | 68327c3a9dbbea3cd647c509d8cfd2db8ccd0c72 (diff) | |
download | nixlib-01a1658c6b8cdf75ad87ea24d1f82bc6c17670d4.tar nixlib-01a1658c6b8cdf75ad87ea24d1f82bc6c17670d4.tar.gz nixlib-01a1658c6b8cdf75ad87ea24d1f82bc6c17670d4.tar.bz2 nixlib-01a1658c6b8cdf75ad87ea24d1f82bc6c17670d4.tar.lz nixlib-01a1658c6b8cdf75ad87ea24d1f82bc6c17670d4.tar.xz nixlib-01a1658c6b8cdf75ad87ea24d1f82bc6c17670d4.tar.zst nixlib-01a1658c6b8cdf75ad87ea24d1f82bc6c17670d4.zip |
* Finally we have a working stdenvLinux again.
On the downside, the build process of stdenvLinux builds gcc 9 times (3 x 3 bootstrap stages). That's a bit excessive. svn path=/nixpkgs/trunk/; revision=880
Diffstat (limited to 'pkgs/stdenv')
-rw-r--r-- | pkgs/stdenv/generic/builder.sh | 1 | ||||
-rw-r--r-- | pkgs/stdenv/generic/default.nix | 8 | ||||
-rw-r--r-- | pkgs/stdenv/generic/setup.sh | 1 | ||||
-rw-r--r-- | pkgs/stdenv/initial/default.nix | 8 | ||||
-rw-r--r-- | pkgs/stdenv/native/default.nix | 2 | ||||
-rw-r--r-- | pkgs/stdenv/native/prehook.sh | 2 | ||||
-rw-r--r-- | pkgs/stdenv/nix-linux/boot.nix | 19 | ||||
-rw-r--r-- | pkgs/stdenv/nix-linux/default.nix | 7 | ||||
-rw-r--r-- | pkgs/stdenv/nix-linux/prehook-boot.sh | 3 | ||||
-rw-r--r-- | pkgs/stdenv/nix-linux/prehook.sh | 2 | ||||
-rw-r--r-- | pkgs/stdenv/nix/default.nix | 5 | ||||
-rw-r--r-- | pkgs/stdenv/nix/prehook.sh | 3 |
12 files changed, 20 insertions, 41 deletions
diff --git a/pkgs/stdenv/generic/builder.sh b/pkgs/stdenv/generic/builder.sh index b3d464322499..bbcd19448cb7 100644 --- a/pkgs/stdenv/generic/builder.sh +++ b/pkgs/stdenv/generic/builder.sh @@ -13,6 +13,7 @@ sed \ -e "s^@postHook@^$postHook^g" \ -e "s^@initialPath@^$initialPath^g" \ -e "s^@gcc@^$gcc^g" \ + -e "s^@shell@^$shell^g" \ -e "s^@param1@^$p1^g" \ -e "s^@param2@^$p2^g" \ -e "s^@param3@^$p3^g" \ diff --git a/pkgs/stdenv/generic/default.nix b/pkgs/stdenv/generic/default.nix index d7b953ffb056..3aa2d3bfac07 100644 --- a/pkgs/stdenv/generic/default.nix +++ b/pkgs/stdenv/generic/default.nix @@ -1,4 +1,4 @@ -{ stdenv, name, preHook ? null, postHook ? null, initialPath, gcc, bash +{ stdenv, name, preHook ? null, postHook ? null, initialPath, gcc, shell , param1 ? "", param2 ? "", param3 ? "", param4 ? "", param5 ? "" }: @@ -13,17 +13,17 @@ let { setup = ./setup.sh; - inherit preHook postHook initialPath gcc; + inherit preHook postHook initialPath gcc shell; # TODO: make this more elegant. inherit param1 param2 param3 param4 param5; } # Add a utility function to produce derivations that use this - # stdenv and its the bash shell. + # stdenv and its shell. // { mkDerivation = attrs: derivation (attrs // { - builder = bash; + builder = shell; args = ["-e" (if attrs ? builder then attrs.builder else ./default-builder.sh)]; stdenv = body; system = body.system; diff --git a/pkgs/stdenv/generic/setup.sh b/pkgs/stdenv/generic/setup.sh index 074e738dca37..4f1485f224bf 100644 --- a/pkgs/stdenv/generic/setup.sh +++ b/pkgs/stdenv/generic/setup.sh @@ -15,6 +15,7 @@ fi # Execute the pre-hook. +export SHELL=@shell@ param1=@param1@ param2=@param2@ param3=@param3@ diff --git a/pkgs/stdenv/initial/default.nix b/pkgs/stdenv/initial/default.nix index 6a62751b0370..4c67fee7cd5a 100644 --- a/pkgs/stdenv/initial/default.nix +++ b/pkgs/stdenv/initial/default.nix @@ -7,21 +7,25 @@ let { + shell = "/bin/sh"; + body = derivation { inherit system name; - builder = "/bin/sh"; + builder = shell; args = ["-e" ./builder.sh]; } // { mkDerivation = attrs: derivation (attrs // { - builder = "/bin/sh"; + builder = shell; args = ["-e" attrs.builder]; stdenv = body; system = body.system; }); + + inherit shell; }; } diff --git a/pkgs/stdenv/native/default.nix b/pkgs/stdenv/native/default.nix index 143230fbd893..2dae9c9fbf43 100644 --- a/pkgs/stdenv/native/default.nix +++ b/pkgs/stdenv/native/default.nix @@ -15,5 +15,5 @@ genericStdenv { inherit stdenv; }; - bash = "/bin/sh"; + shell = "/bin/sh"; } diff --git a/pkgs/stdenv/native/prehook.sh b/pkgs/stdenv/native/prehook.sh index 21248e16cdb2..1714586999e1 100644 --- a/pkgs/stdenv/native/prehook.sh +++ b/pkgs/stdenv/native/prehook.sh @@ -1,3 +1 @@ -export SHELL=/bin/sh - export NIX_ENFORCE_PURITY= diff --git a/pkgs/stdenv/nix-linux/boot.nix b/pkgs/stdenv/nix-linux/boot.nix deleted file mode 100644 index b556ba9ba361..000000000000 --- a/pkgs/stdenv/nix-linux/boot.nix +++ /dev/null @@ -1,19 +0,0 @@ -{stdenv, glibc, genericStdenv, gccWrapper}: - -genericStdenv { - name = "stdenv-nix-linux-boot"; - preHook = ./prehook-boot.sh; - initialPath = "/usr/local /usr /"; - - inherit stdenv; - - gcc = gccWrapper { - name = "gcc-native"; - nativeTools = true; - nativeGlibc = false; - nativePrefix = "/usr"; - inherit stdenv glibc; - }; - - bash = "/bin/sh"; -} diff --git a/pkgs/stdenv/nix-linux/default.nix b/pkgs/stdenv/nix-linux/default.nix index 9b4231962c30..c06f2cf815a1 100644 --- a/pkgs/stdenv/nix-linux/default.nix +++ b/pkgs/stdenv/nix-linux/default.nix @@ -12,10 +12,9 @@ genericStdenv { nativeTools = false; nativeGlibc = false; inherit (pkgs) gcc binutils; - inherit glibc; + inherit stdenv glibc; + shell = pkgs.bash ~ /bin/sh; }; - bash = pkgs.bash ~ /bin/sh; - - param1 = pkgs.bash; + shell = pkgs.bash ~ /bin/sh; } diff --git a/pkgs/stdenv/nix-linux/prehook-boot.sh b/pkgs/stdenv/nix-linux/prehook-boot.sh deleted file mode 100644 index 21248e16cdb2..000000000000 --- a/pkgs/stdenv/nix-linux/prehook-boot.sh +++ /dev/null @@ -1,3 +0,0 @@ -export SHELL=/bin/sh - -export NIX_ENFORCE_PURITY= diff --git a/pkgs/stdenv/nix-linux/prehook.sh b/pkgs/stdenv/nix-linux/prehook.sh index 0e0bada4fcb2..08bb6c0332c9 100644 --- a/pkgs/stdenv/nix-linux/prehook.sh +++ b/pkgs/stdenv/nix-linux/prehook.sh @@ -1,3 +1 @@ -export SHELL=$param1 - export NIX_ENFORCE_PURITY=1 diff --git a/pkgs/stdenv/nix/default.nix b/pkgs/stdenv/nix/default.nix index 5634553dd500..f3fb4a4f9517 100644 --- a/pkgs/stdenv/nix/default.nix +++ b/pkgs/stdenv/nix/default.nix @@ -13,9 +13,8 @@ genericStdenv { nativeGlibc = true; inherit (pkgs) gcc binutils; inherit stdenv; + shell = pkgs.bash ~ /bin/sh; }; - bash = pkgs.bash ~ /bin/sh; - - param1 = pkgs.bash; + shell = pkgs.bash ~ /bin/sh; } diff --git a/pkgs/stdenv/nix/prehook.sh b/pkgs/stdenv/nix/prehook.sh index af5121f49c38..734d0f1ae83a 100644 --- a/pkgs/stdenv/nix/prehook.sh +++ b/pkgs/stdenv/nix/prehook.sh @@ -1 +1,2 @@ -export SHELL=$param1 +export NIX_ENFORCE_PURITY=1 +export NIX_IGNORE_LD_THROUGH_GCC=1 |