diff --git a/pkgs/development/compilers/rust/1_41_0.nix b/pkgs/development/compilers/rust/1_41_0.nix index 2762f441171e..b73d9b8ef269 100644 --- a/pkgs/development/compilers/rust/1_41_0.nix +++ b/pkgs/development/compilers/rust/1_41_0.nix @@ -6,6 +6,16 @@ # request review, in case platforms cannot be covered. # 2. The LLVM version used for building should match with rust upstream. # 3. Firefox and Thunderbird should still build on x86_64-linux. + +{ stdenv, lib +, buildPackages +, newScope, callPackage +, CoreFoundation, Security +, llvmPackages_5 +, pkgsBuildTarget, pkgsBuildBuild +, fetchpatch +} @ args: + import ./default.nix { rustcVersion = "1.41.0"; rustcSha256 = "0jypz2mrzac41sj0zh07yd1z36g2s2rvgsb8g624sk4l14n84ijm"; @@ -26,4 +36,13 @@ import ./default.nix { }; selectRustPackage = pkgs: pkgs.rust_1_41_0; + + rustcPatches = [ + (fetchpatch { + url = "https://github.com/QuiltOS/rust/commit/f1803452b9e95bfdbc3b8763138b9f92c7d12b46.diff"; + sha256 = "1mzxaj46bq7ll617wg0mqnbnwr1da3hd4pbap8bjwhs3kfqnr7kk"; + }) + ]; } + +(builtins.removeAttrs args [ "fetchpatch" ]) diff --git a/pkgs/development/compilers/rust/default.nix b/pkgs/development/compilers/rust/default.nix index af7f63b6f8a0..a5da7ee7a6d4 100644 --- a/pkgs/development/compilers/rust/default.nix +++ b/pkgs/development/compilers/rust/default.nix @@ -4,6 +4,7 @@ , bootstrapVersion , bootstrapHashes , selectRustPackage +, rustcPatches ? [] }: { stdenv, lib , buildPackages @@ -79,6 +80,8 @@ sha256 = rustcSha256; inherit enableRustcDev; + patches = rustcPatches; + # Use boot package set to break cycle rustPlatform = bootRustPlatform; } // lib.optionalAttrs (stdenv.cc.isClang && stdenv.hostPlatform == stdenv.buildPlatform) { diff --git a/pkgs/development/compilers/rust/rustc.nix b/pkgs/development/compilers/rust/rustc.nix index 7857dbc7ee6f..6498c34ce8bb 100644 --- a/pkgs/development/compilers/rust/rustc.nix +++ b/pkgs/development/compilers/rust/rustc.nix @@ -7,6 +7,7 @@ , enableRustcDev ? true , version , sha256 +, patches ? [] }: let @@ -104,6 +105,8 @@ in stdenv.mkDerivation rec { # the rust build system complains that nix alters the checksums dontFixLibtool = true; + inherit patches; + postPatch = '' patchShebangs src/etc