stdenv-darwin: upgrade a few more things
It's a long build and generally painful to split into smaller commits, so I apologize for lumping many changes into one commit but this is far easier. There are still several outdated parts of the darwin stdenv but these changes should bring us closer to the goal. Fixes #18461
This commit is contained in:
parent
e0b5eef4e7
commit
7b9d3f8605
7 changed files with 30 additions and 34 deletions
|
@ -30,12 +30,20 @@ let
|
|||
sed -i -e 's/DriverArgs.hasArg(options::OPT_nostdlibinc)/true/' lib/Driver/ToolChains.cpp
|
||||
'';
|
||||
|
||||
outputs = [ "out" "python" ];
|
||||
|
||||
# Clang expects to find LLVMgold in its own prefix
|
||||
# Clang expects to find sanitizer libraries in its own prefix
|
||||
postInstall = ''
|
||||
ln -sv ${llvm}/lib/LLVMgold.so $out/lib
|
||||
ln -sv ${llvm}/lib/clang/${version}/lib $out/lib/clang/${version}/
|
||||
ln -sv $out/bin/clang $out/bin/cpp
|
||||
|
||||
mkdir -p $python/bin $python/share/clang/
|
||||
mv $out/bin/{git-clang-format,scan-view,set-xcode-analyzer} $python/bin
|
||||
mv $out/share/clang/*.py $python/share/clang
|
||||
|
||||
rm $out/bin/c-index-test
|
||||
'';
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
{ stdenv, fetchurl, self, callPackage, python27Packages
|
||||
{ stdenv, fetchurl, fetchpatch, self, callPackage, python27Packages
|
||||
, bzip2, openssl, gettext
|
||||
|
||||
, includeModules ? false
|
||||
|
@ -44,6 +44,14 @@ let
|
|||
./deterministic-build.patch
|
||||
|
||||
./properly-detect-curses.patch
|
||||
|
||||
# FIXME: get rid of this after the next release, when the commit referenced here makes
|
||||
# it in. We need it until then because it breaks compilation of programs that use
|
||||
# locale with clang 3.8 and higher.
|
||||
(fetchpatch {
|
||||
url = "https://hg.python.org/cpython/raw-rev/e0ec3471cb09";
|
||||
sha256 = "1jdgb70jw942r4kmr01qll7mk1di8jx0qiabmp20jhnmha246ivq";
|
||||
})
|
||||
] ++ optionals stdenv.isLinux [
|
||||
|
||||
# Disable the use of ldconfig in ctypes.util.find_library (since
|
||||
|
|
|
@ -10,6 +10,7 @@ let
|
|||
dtrace = "168";
|
||||
xnu = "3248.60.10";
|
||||
libpthread = "138.10.4";
|
||||
libiconv = "44";
|
||||
};
|
||||
"osx-10.11.5" = {
|
||||
Libc = "1082.50.1"; # 10.11.6 still unreleased :/
|
||||
|
@ -204,7 +205,7 @@ let
|
|||
Libc_old = applePackage "Libc/825_40_1.nix" "osx-10.8.5" "0xsx1im52gwlmcrv4lnhhhn9dyk5ci6g27k6yvibn9vj8fzjxwcf" {};
|
||||
libclosure = applePackage "libclosure" "osx-10.10.5" "1zqy1zvra46cmqv6vsf1mcsz3a76r9bky145phfwh4ab6y15vjpq" {};
|
||||
libdispatch = applePackage "libdispatch" "osx-10.9.5" "1lc5033cmkwxy3r26gh9plimxshxfcbgw6i0j7mgjlnpk86iy5bk" {};
|
||||
libiconv = applePackage "libiconv" "osx-10.9.5" "0sni1gx6i2h7r4r4hhwbxdir45cp039m4wi74izh4l0pfw7gywad" {};
|
||||
libiconv = applePackage "libiconv" "osx-10.11.6" "11h6lfajydri4widis62q8scyz7z8l6msqyx40ly4ahsdlbl0981" {};
|
||||
Libinfo = applePackage "Libinfo" "osx-10.10.5" "19n72s652rrqnc9hzlh4xq3h7xsfyjyklmcgyzyj0v0z68ww3z6h" {};
|
||||
Libm = applePackage "Libm" "osx-10.7.4" "02sd82ig2jvvyyfschmb4gpz6psnizri8sh6i982v341x6y4ysl7" {};
|
||||
Libnotify = applePackage "Libnotify" "osx-10.9.5" "164rx4za5z74s0mk9x0m1815r1m9kfal8dz3bfaw7figyjd6nqad" {};
|
||||
|
@ -220,17 +221,6 @@ let
|
|||
Security = applePackage "Security" "osx-10.9.5" "1nv0dczf67dhk17hscx52izgdcyacgyy12ag0jh6nl5hmfzsn8yy" {};
|
||||
xnu = applePackage "xnu" "osx-10.11.6" "0yhziq4dqqcbjpf6vyqn8xhwva2zb525gndkx8cp8alzwp76jnr9" {};
|
||||
|
||||
# Pending work... we can't change the above packages in place because the bootstrap depends on them, so we detach the expressions
|
||||
# here so we can work on them.
|
||||
CF_new = applePackage "CF/new.nix" "osx-10.10.5" "1sadmxi9fsvsmdyxvg2133sdzvkzwil50vyyidxsyk1iyfzqsvln" {};
|
||||
Libc_new = applePackage "Libc/new.nix" "osx-10.10.5" "1jz5bx9l4q484vn08c6n9b28psja3rpxiqbj6zwrwvlndzmq1yz5" {};
|
||||
libdispatch_new = applePackage "libdispatch/new.nix" "osx-10.10.5" "1lc5033cmkwxy0r26gh9plimxshxfcbgw6i0j7mgjlnpk86iy5bk" {};
|
||||
libiconv_new = applePackage "libiconv/new.nix" "osx-10.10.5" "0sni1gx6i2h7r404hhwbxdir45cp039m4wi74izh4l0pfw7gywad" {};
|
||||
Libnotify_new = applePackage "Libnotify/new.nix" "osx-10.10.5" "0sni1gx6i2h7r404hhwbxdir45cp039m4wi70izh4l0pfw7gywad" {};
|
||||
Libsystem_new = applePackage "Libsystem/new.nix" "osx-10.10.5" "1yfj2qdrf9vrzs7p9m4wlb7zzxcrim10w43x4lvz4qydpp5kg2rh" {};
|
||||
objc4_new = applePackage "objc4/new.nix" "osx-10.10.5" "0r0797ckmgv19if4i14dzyjh7i5klkm9jpacjif9v3rpycyyx1n3" {};
|
||||
xnu_new = applePackage "xnu/new.nix" "osx-10.11.2" "1ax280jblz7laqam8fcwrffrrz26am10p1va9mlg9mklvbqarhqh" {};
|
||||
|
||||
libsecurity_apple_csp = libsecPackage "libsecurity_apple_csp" "osx-10.7.5" "1ngyn1ik27n4x981px3kfd1z1n8zx7r5w812b6qfjpy5nw4h746w" {};
|
||||
libsecurity_apple_cspdl = libsecPackage "libsecurity_apple_cspdl" "osx-10.7.5" "1svqa5fhw7p7njzf8bzg7zgc5776aqjhdbnlhpwmr5hmz5i0x8r7" {};
|
||||
libsecurity_apple_file_dl = libsecPackage "libsecurity_apple_file_dl" "osx-10.7.5" "1dfqani3n135i3iqmafc1k9awmz6s0a78zifhk15rx5a8ps870bl" {};
|
||||
|
|
|
@ -2,14 +2,4 @@
|
|||
|
||||
appleDerivation {
|
||||
preConfigure = "cd libiconv";
|
||||
|
||||
postInstall = ''
|
||||
mv $out/lib/libiconv.dylib $out/lib/libiconv-nocharset.dylib
|
||||
install_name_tool -id $out/lib/libiconv-nocharset.dylib $out/lib/libiconv-nocharset.dylib
|
||||
|
||||
ld -dylib -o $out/lib/libiconv.dylib \
|
||||
-reexport_library $out/lib/libiconv-nocharset.dylib \
|
||||
-reexport_library $out/lib/libcharset.dylib \
|
||||
-dylib_compatibility_version 7.0.0
|
||||
'';
|
||||
}
|
||||
|
|
|
@ -6,13 +6,13 @@
|
|||
let
|
||||
baseParams = rec {
|
||||
name = "cctools-port-${version}";
|
||||
version = "877.5";
|
||||
version = "886";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "tpoechtrager";
|
||||
repo = "cctools-port";
|
||||
rev = "7d405492b09fa27546caaa989b8493829365deab";
|
||||
sha256 = "0nj1q5bqdx5jm68dispybxc7wnkb6p8p2igpnap9q6qyv2r9p07w";
|
||||
rev = "02f0b8ecd87a3951653d838a321ae744815e21a5";
|
||||
sha256 = "0bzyabzr5dvbxglr74d0kbrk2ij5x7s5qcamqi1v546q1had1wz1";
|
||||
};
|
||||
|
||||
buildInputs = [ autoconf automake libtool_2 openssl libuuid ] ++
|
||||
|
|
|
@ -6,14 +6,14 @@
|
|||
# Allow passing in bootstrap files directly so we can test the stdenv bootstrap process when changing the bootstrap tools
|
||||
, bootstrapFiles ? let
|
||||
fetch = { file, sha256, executable ? true }: import <nix/fetchurl.nix> {
|
||||
url = "http://tarballs.nixos.org/stdenv-darwin/x86_64/4f07c88d467216d9692fefc951deb5cd3c4cc722/${file}";
|
||||
url = "http://tarballs.nixos.org/stdenv-darwin/x86_64/45ea46c1894f8fcc545ca9f367ba54c8c280b762/${file}";
|
||||
inherit sha256 system executable;
|
||||
}; in {
|
||||
sh = fetch { file = "sh"; sha256 = "1siix3wakzil31r2cydmh3v8a1nyq4605dwiabqc5lx73j4xzrzi"; };
|
||||
bzip2 = fetch { file = "bzip2"; sha256 = "0zvqm977k11b5cl4ixxb5h0ds24g6z0f8m28z4pqxzpa353lqbla"; };
|
||||
mkdir = fetch { file = "mkdir"; sha256 = "13frk8lsfgzlb65p9l26cvxf06aag43yjk7vg9msn7ix3v8cmrg1"; };
|
||||
cpio = fetch { file = "cpio"; sha256 = "0ms5i9m1vdksj575sf1djwgm7zhnvfrrb44dxnfh9avr793rc2w4"; };
|
||||
tarball = fetch { file = "bootstrap-tools.cpio.bz2"; sha256 = "1lz1b0grl4642h6n635xvi6imf0yyy1zyzdr9ing5aphzz0z5iic"; executable = false; };
|
||||
sh = fetch { file = "sh"; sha256 = "1qpg16qbqqkmcr5an4d73p6q55izhlzmdd3nvid8gp7f3f9spbz7"; };
|
||||
bzip2 = fetch { file = "bzip2"; sha256 = "1g67sh51fa2ws9wch5gznvrmmh27mks3dbnp6gvac43qxdnv6mpz"; };
|
||||
mkdir = fetch { file = "mkdir"; sha256 = "1lkp6y33lsrj9yif1cfrw5g021pffynrdscrz3ds19hslg55w4dw"; };
|
||||
cpio = fetch { file = "cpio"; sha256 = "115pgrl0pcq2h4yfqrmfvffl0dcabw4mgkc91aphd913wrzfmlz9"; };
|
||||
tarball = fetch { file = "bootstrap-tools.cpio.bz2"; sha256 = "1h5dr8vk7dvvbdkpszpd6zkx3799zccsflnw35wvmjc2fp0dyyd5"; executable = false; };
|
||||
}
|
||||
}:
|
||||
|
||||
|
@ -128,7 +128,7 @@ in rec {
|
|||
ln -s ${bootstrapTools}/include/c++ $out/include/c++
|
||||
'';
|
||||
linkCxxAbi = false;
|
||||
setupHook = ../../development/compilers/llvm/3.6/libc++/setup-hook.sh;
|
||||
setupHook = ../../development/compilers/llvm/3.9/libc++/setup-hook.sh;
|
||||
};
|
||||
|
||||
libcxxabi = stdenv.mkDerivation {
|
||||
|
|
|
@ -4933,7 +4933,7 @@ in
|
|||
llvm_35 = self.llvmPackages_35.llvm;
|
||||
llvm_34 = self.llvmPackages_34.llvm;
|
||||
|
||||
llvmPackages = recurseIntoAttrs self.llvmPackages_37;
|
||||
llvmPackages = recurseIntoAttrs (if stdenv.isDarwin then self.llvmPackages_38 else self.llvmPackages_37);
|
||||
|
||||
llvmPackagesSelf = self.llvmPackages_34.override {
|
||||
stdenv = libcxxStdenv;
|
||||
|
|
Loading…
Reference in a new issue