about summary refs log tree commit diff
path: root/pkgs/stdenv/darwin
diff options
context:
space:
mode:
authorFrederik Rietdijk <fridh@fridh.nl>2017-08-21 01:28:27 +0200
committerFrederik Rietdijk <fridh@fridh.nl>2017-08-21 01:28:27 +0200
commit04cd1db2b76d275dfd06920787ed200e92e7d2d9 (patch)
treedb1e9513ee1775e1151a5f07c09030a2bc60e474 /pkgs/stdenv/darwin
parent5baea8f0eb5dd7ef275bf9711e49830775bff894 (diff)
parent1eb48d3b085ee6187e403f00f8d1f221776f0524 (diff)
downloadnixlib-04cd1db2b76d275dfd06920787ed200e92e7d2d9.tar
nixlib-04cd1db2b76d275dfd06920787ed200e92e7d2d9.tar.gz
nixlib-04cd1db2b76d275dfd06920787ed200e92e7d2d9.tar.bz2
nixlib-04cd1db2b76d275dfd06920787ed200e92e7d2d9.tar.lz
nixlib-04cd1db2b76d275dfd06920787ed200e92e7d2d9.tar.xz
nixlib-04cd1db2b76d275dfd06920787ed200e92e7d2d9.tar.zst
nixlib-04cd1db2b76d275dfd06920787ed200e92e7d2d9.zip
Merge remote-tracking branch 'upstream/master' into HEAD
Diffstat (limited to 'pkgs/stdenv/darwin')
-rw-r--r--pkgs/stdenv/darwin/default.nix133
1 files changed, 67 insertions, 66 deletions
diff --git a/pkgs/stdenv/darwin/default.nix b/pkgs/stdenv/darwin/default.nix
index 2eeab14b1c79..d5d156137f2f 100644
--- a/pkgs/stdenv/darwin/default.nix
+++ b/pkgs/stdenv/darwin/default.nix
@@ -167,9 +167,9 @@ in rec {
     extraBuildInputs = [];
   };
 
-  persistent0 = _: _: _: {};
-
-  stage1 = prevStage: with prevStage; stageFun 1 prevStage {
+  stage1 = prevStage: let
+    persistent = _: _: {};
+  in with prevStage; stageFun 1 prevStage {
     extraPreHook = "export NIX_CFLAGS_COMPILE+=\" -F${bootstrapTools}/Library/Frameworks\"";
     extraNativeBuildInputs = [];
     extraBuildInputs = [ pkgs.libcxx ];
@@ -177,23 +177,23 @@ in rec {
     allowedRequisites =
       [ bootstrapTools ] ++ (with pkgs; [ libcxx libcxxabi ]) ++ [ pkgs.darwin.Libsystem ];
 
-    overrides = persistent0 prevStage;
+    overrides = persistent;
   };
 
-  persistent1 = prevStage: self: super: with prevStage; {
-    inherit
-      zlib patchutils m4 scons flex perl bison unifdef unzip openssl python
-      libxml2 gettext sharutils gmp libarchive ncurses pkg-config libedit groff
-      openssh sqlite sed serf openldap db cyrus-sasl expat apr-util subversion xz
-      findfreetype libssh curl cmake autoconf automake libtool ed cpio coreutils;
+  stage2 = prevStage: let
+    persistent = self: super: with prevStage; {
+      inherit
+        zlib patchutils m4 scons flex perl bison unifdef unzip openssl python
+        libxml2 gettext sharutils gmp libarchive ncurses pkg-config libedit groff
+        openssh sqlite sed serf openldap db cyrus-sasl expat apr-util subversion xz
+        findfreetype libssh curl cmake autoconf automake libtool ed cpio coreutils;
 
-    darwin = super.darwin // {
-      inherit (darwin)
-        dyld Libsystem xnu configd ICU libdispatch libclosure launchd;
+      darwin = super.darwin // {
+        inherit (darwin)
+          dyld Libsystem xnu configd ICU libdispatch libclosure launchd;
+      };
     };
-  };
-
-  stage2 = prevStage: with prevStage; stageFun 2 prevStage {
+  in with prevStage; stageFun 2 prevStage {
     extraPreHook = ''
       export PATH_LOCALE=${pkgs.darwin.locale}/share/locale
     '';
@@ -206,24 +206,24 @@ in rec {
       (with pkgs; [ xz.bin xz.out libcxx libcxxabi ]) ++
       (with pkgs.darwin; [ dyld Libsystem CF ICU locale ]);
 
-    overrides = persistent1 prevStage;
+    overrides = persistent;
   };
 
-  persistent2 = prevStage: self: super: with prevStage; {
-    inherit
-      patchutils m4 scons flex perl bison unifdef unzip openssl python
-      gettext sharutils libarchive pkg-config groff bash subversion
-      openssh sqlite sed serf openldap db cyrus-sasl expat apr-util
-      findfreetype libssh curl cmake autoconf automake libtool cpio
-      libcxx libcxxabi;
-
-    darwin = super.darwin // {
-      inherit (darwin)
-        dyld Libsystem xnu configd libdispatch libclosure launchd libiconv locale;
-    };
-  };
+  stage3 = prevStage: let
+    persistent = self: super: with prevStage; {
+      inherit
+        patchutils m4 scons flex perl bison unifdef unzip openssl python
+        gettext sharutils libarchive pkg-config groff bash subversion
+        openssh sqlite sed serf openldap db cyrus-sasl expat apr-util
+        findfreetype libssh curl cmake autoconf automake libtool cpio
+        libcxx libcxxabi;
 
-  stage3 = prevStage: with prevStage; stageFun 3 prevStage {
+      darwin = super.darwin // {
+        inherit (darwin)
+          dyld Libsystem xnu configd libdispatch libclosure launchd libiconv locale;
+      };
+    };
+  in with prevStage; stageFun 3 prevStage {
     shell = "${pkgs.bash}/bin/bash";
 
     # We have a valid shell here (this one has no bootstrap-tools runtime deps) so stageFun
@@ -243,55 +243,56 @@ in rec {
       (with pkgs; [ xz.bin xz.out bash libcxx libcxxabi ]) ++
       (with pkgs.darwin; [ dyld ICU Libsystem locale ]);
 
-    overrides = persistent2 prevStage;
+    overrides = persistent;
   };
 
-  persistent3 = prevStage: self: super: with prevStage; {
-    inherit
-      gnumake gzip gnused bzip2 gawk ed xz patch bash
-      libcxxabi libcxx ncurses libffi zlib gmp pcre gnugrep
-      coreutils findutils diffutils patchutils;
+  stage4 = prevStage: let
+    persistent = self: super: with prevStage; {
+      inherit
+        gnumake gzip gnused bzip2 gawk ed xz patch bash
+        libcxxabi libcxx ncurses libffi zlib gmp pcre gnugrep
+        coreutils findutils diffutils patchutils;
 
-     llvmPackages = let llvmOverride = llvmPackages.llvm.override { inherit libcxxabi; };
-     in super.llvmPackages // {
-       llvm = llvmOverride;
-       clang-unwrapped = llvmPackages.clang-unwrapped.override { llvm = llvmOverride; };
-     };
+       llvmPackages = let llvmOverride = llvmPackages.llvm.override { inherit libcxxabi; };
+       in super.llvmPackages // {
+         llvm = llvmOverride;
+         clang-unwrapped = llvmPackages.clang-unwrapped.override { llvm = llvmOverride; };
+       };
 
-    darwin = super.darwin // {
-      inherit (darwin) dyld Libsystem libiconv locale;
+      darwin = super.darwin // {
+        inherit (darwin) dyld Libsystem libiconv locale;
+      };
     };
-  };
-
-  stage4 = prevStage: with prevStage; stageFun 4 prevStage {
+  in with prevStage; stageFun 4 prevStage {
     shell = "${pkgs.bash}/bin/bash";
     extraNativeBuildInputs = with pkgs; [ xz pkgs.bash ];
     extraBuildInputs = with pkgs; [ darwin.CF libcxx ];
     extraPreHook = ''
       export PATH_LOCALE=${pkgs.darwin.locale}/share/locale
     '';
-    overrides = persistent3 prevStage;
+    overrides = persistent;
   };
 
-  persistent4 = prevStage: self: super: with prevStage; {
-    inherit
-      gnumake gzip gnused bzip2 gawk ed xz patch bash
-      libcxxabi libcxx ncurses libffi zlib llvm gmp pcre gnugrep
-      coreutils findutils diffutils patchutils;
+  stdenvDarwin = prevStage: let
+    pkgs = prevStage;
+    persistent = self: super: with prevStage; {
+      inherit
+        gnumake gzip gnused bzip2 gawk ed xz patch bash
+        libcxxabi libcxx ncurses libffi zlib llvm gmp pcre gnugrep
+        coreutils findutils diffutils patchutils;
 
-    llvmPackages = super.llvmPackages // {
-      inherit (llvmPackages) llvm clang-unwrapped;
-    };
+      llvmPackages = super.llvmPackages // {
+        inherit (llvmPackages) llvm clang-unwrapped;
+      };
 
-    darwin = super.darwin // {
-      inherit (darwin) dyld ICU Libsystem cctools libiconv;
+      darwin = super.darwin // {
+        inherit (darwin) dyld ICU Libsystem cctools libiconv;
+      };
+    } // lib.optionalAttrs (super.targetPlatform == localSystem) {
+      # Need to get rid of these when cross-compiling.
+      inherit binutils binutils-raw;
     };
-  } // lib.optionalAttrs (super.targetPlatform == localSystem) {
-    # Need to get rid of these when cross-compiling.
-    inherit binutils binutils-raw;
-  };
-
-  stdenvDarwin = prevStage: let pkgs = prevStage; in import ../generic rec {
+  in import ../generic rec {
     inherit config;
     inherit (pkgs.stdenv) fetchurlBoot;
 
@@ -351,9 +352,9 @@ in rec {
     ]);
 
     overrides = self: super:
-      let persistent = persistent4 prevStage self super; in persistent // {
+      let persistent' = persistent self super; in persistent' // {
         clang = cc;
-        llvmPackages = persistent.llvmPackages // { clang = cc; };
+        llvmPackages = persistent'.llvmPackages // { clang = cc; };
         inherit cc;
       };
   };