stdenv: only build LLVM once on darwin

This commit is contained in:
Gaelan Steele 2020-05-11 00:12:05 -07:00
parent 4ddd080d19
commit 23ce1eed34

View file

@ -307,7 +307,7 @@ in rec {
inherit
gnumake gzip gnused bzip2 gawk ed xz patch bash python3
ncurses libffi zlib gmp pcre gnugrep
coreutils findutils diffutils patchutils ninja;
coreutils findutils diffutils patchutils ninja libxml2;
# Hack to make sure we don't link ncurses in bootstrap tools. The proper
# solution is to avoid passing -L/nix-store/...-bootstrap-tools/lib,
@ -321,7 +321,7 @@ in rec {
llvmPackages_7 = super.llvmPackages_7 // (let
tools = super.llvmPackages_7.tools.extend (llvmSelf: _: {
clang-unwrapped = llvmPackages_7.clang-unwrapped.override { llvm = llvmSelf.llvm; };
llvm = llvmPackages_7.llvm.override { libxml2 = self.darwin.libxml2-nopython; };
llvm = llvmPackages_7.llvm.override { inherit libxml2; };
});
libraries = super.llvmPackages_7.libraries.extend (llvmSelf: _: {
inherit (llvmPackages_7) libcxx libcxxabi compiler-rt;
@ -332,9 +332,8 @@ in rec {
inherit (darwin) dyld Libsystem libiconv locale;
cctools = super.darwin.cctools.override { enableTapiSupport = false; };
libxml2-nopython = super.libxml2.override { pythonSupport = false; };
CF = super.darwin.CF.override {
libxml2 = libxml2-nopython;
inherit libxml2;
python3 = prevStage.python3;
};
};
@ -419,9 +418,9 @@ in rec {
gnugrep llvmPackages.clang-unwrapped llvmPackages.clang-unwrapped.lib patch pcre.out gettext
binutils.bintools darwin.binutils darwin.binutils.bintools
curl.out openssl.out libssh2.out nghttp2.lib libkrb5
cc.expand-response-params
cc.expand-response-params libxml2.out
]) ++ (with pkgs.darwin; [
dyld Libsystem CF cctools ICU libiconv locale libxml2-nopython.out
dyld Libsystem CF cctools ICU libiconv locale
]);
overrides = lib.composeExtensions persistent (self: super: {