at 17.09-beta 1.1 kB view raw
1{ stdenv, callPackage, recurseIntoAttrs, makeRustPlatform, llvm, fetchurl 2, targets ? [] 3, targetToolchains ? [] 4, targetPatches ? [] 5}: 6 7let 8 rustPlatform = recurseIntoAttrs (makeRustPlatform (callPackage ./bootstrap.nix {})); 9 version = "1.17.0"; 10in 11rec { 12 rustc = callPackage ./rustc.nix { 13 inherit llvm targets targetPatches targetToolchains rustPlatform version; 14 15 configureFlags = [ "--release-channel=stable" ]; 16 17 src = fetchurl { 18 url = "https://static.rust-lang.org/dist/rustc-${version}-src.tar.gz"; 19 sha256 = "4baba3895b75f2492df6ce5a28a916307ecd1c088dc1fd02dbfa8a8e86174f87"; 20 }; 21 22 patches = [ 23 ./patches/darwin-disable-fragile-tcp-tests.patch 24 ] ++ stdenv.lib.optional stdenv.needsPax ./patches/grsec.patch; 25 26 }; 27 28 cargo = callPackage ./cargo.nix rec { 29 version = "0.18.0"; 30 srcRev = "fe7b0cdcf5ca7aab81630706ce40b70f6aa2e666"; 31 srcSha = "164iywv1l3v87b0pznf5kkzxigd6w19myv9d7ka4c65zgrk9n9px"; 32 depsSha256 = "1mrgd8ib48vxxbhkvsqqq4p19sc6b74x3cd8p6lhhlm6plrajrvm"; 33 34 inherit rustc; # the rustc that will be wrapped by cargo 35 inherit rustPlatform; # used to build cargo 36 }; 37}