rust 1.41: Fix build with no_std only target
See https://github.com/rust-lang/rust/pull/69381
This commit is contained in:
parent
c1a16501c4
commit
0b0e691833
@ -6,6 +6,16 @@
|
|||||||
# request review, in case platforms cannot be covered.
|
# request review, in case platforms cannot be covered.
|
||||||
# 2. The LLVM version used for building should match with rust upstream.
|
# 2. The LLVM version used for building should match with rust upstream.
|
||||||
# 3. Firefox and Thunderbird should still build on x86_64-linux.
|
# 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 {
|
import ./default.nix {
|
||||||
rustcVersion = "1.41.0";
|
rustcVersion = "1.41.0";
|
||||||
rustcSha256 = "0jypz2mrzac41sj0zh07yd1z36g2s2rvgsb8g624sk4l14n84ijm";
|
rustcSha256 = "0jypz2mrzac41sj0zh07yd1z36g2s2rvgsb8g624sk4l14n84ijm";
|
||||||
@ -26,4 +36,13 @@ import ./default.nix {
|
|||||||
};
|
};
|
||||||
|
|
||||||
selectRustPackage = pkgs: pkgs.rust_1_41_0;
|
selectRustPackage = pkgs: pkgs.rust_1_41_0;
|
||||||
|
|
||||||
|
rustcPatches = [
|
||||||
|
(fetchpatch {
|
||||||
|
url = "https://github.com/QuiltOS/rust/commit/f1803452b9e95bfdbc3b8763138b9f92c7d12b46.diff";
|
||||||
|
sha256 = "1mzxaj46bq7ll617wg0mqnbnwr1da3hd4pbap8bjwhs3kfqnr7kk";
|
||||||
|
})
|
||||||
|
];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
(builtins.removeAttrs args [ "fetchpatch" ])
|
||||||
|
@ -4,6 +4,7 @@
|
|||||||
, bootstrapVersion
|
, bootstrapVersion
|
||||||
, bootstrapHashes
|
, bootstrapHashes
|
||||||
, selectRustPackage
|
, selectRustPackage
|
||||||
|
, rustcPatches ? []
|
||||||
}:
|
}:
|
||||||
{ stdenv, lib
|
{ stdenv, lib
|
||||||
, buildPackages
|
, buildPackages
|
||||||
@ -73,6 +74,8 @@
|
|||||||
sha256 = rustcSha256;
|
sha256 = rustcSha256;
|
||||||
inherit enableRustcDev;
|
inherit enableRustcDev;
|
||||||
|
|
||||||
|
patches = rustcPatches;
|
||||||
|
|
||||||
# Use boot package set to break cycle
|
# Use boot package set to break cycle
|
||||||
rustPlatform = bootRustPlatform;
|
rustPlatform = bootRustPlatform;
|
||||||
} // lib.optionalAttrs (stdenv.cc.isClang && stdenv.hostPlatform == stdenv.buildPlatform) {
|
} // lib.optionalAttrs (stdenv.cc.isClang && stdenv.hostPlatform == stdenv.buildPlatform) {
|
||||||
|
@ -7,6 +7,7 @@
|
|||||||
, enableRustcDev ? true
|
, enableRustcDev ? true
|
||||||
, version
|
, version
|
||||||
, sha256
|
, sha256
|
||||||
|
, patches ? []
|
||||||
}:
|
}:
|
||||||
|
|
||||||
let
|
let
|
||||||
@ -104,6 +105,8 @@ in stdenv.mkDerivation rec {
|
|||||||
# the rust build system complains that nix alters the checksums
|
# the rust build system complains that nix alters the checksums
|
||||||
dontFixLibtool = true;
|
dontFixLibtool = true;
|
||||||
|
|
||||||
|
inherit patches;
|
||||||
|
|
||||||
postPatch = ''
|
postPatch = ''
|
||||||
patchShebangs src/etc
|
patchShebangs src/etc
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user