mirror of
https://github.com/NixOS/nixpkgs.git
synced 2024-11-30 19:02:57 +00:00
rust: 1.45.2 -> 1.46.0
This adds the rust toolchain 1.46.0: https://github.com/rust-lang/rust/blob/master/RELEASES.md#version-1460-2020-08-27 Because rustc-1.46.0 enables static PIE by default for `x86_64-unknown-linux-musl` this release will suffer from: https://github.com/NixOS/nixpkgs/issues/94228 So this commit doesn't remove the 1.45.2 release. This commit also specifies the right LLVM packages to use for each rust release.
This commit is contained in:
parent
2363e6eb9c
commit
b837bd4305
@ -11,7 +11,7 @@
|
|||||||
, buildPackages
|
, buildPackages
|
||||||
, newScope, callPackage
|
, newScope, callPackage
|
||||||
, CoreFoundation, Security
|
, CoreFoundation, Security
|
||||||
, llvmPackages_5
|
, llvmPackages
|
||||||
, pkgsBuildTarget, pkgsBuildBuild
|
, pkgsBuildTarget, pkgsBuildBuild
|
||||||
} @ args:
|
} @ args:
|
||||||
|
|
||||||
|
@ -11,7 +11,7 @@
|
|||||||
, buildPackages
|
, buildPackages
|
||||||
, newScope, callPackage
|
, newScope, callPackage
|
||||||
, CoreFoundation, Security
|
, CoreFoundation, Security
|
||||||
, llvmPackages_5
|
, llvmPackages
|
||||||
, pkgsBuildTarget, pkgsBuildBuild
|
, pkgsBuildTarget, pkgsBuildBuild
|
||||||
} @ args:
|
} @ args:
|
||||||
|
|
||||||
|
44
pkgs/development/compilers/rust/1_46.nix
Normal file
44
pkgs/development/compilers/rust/1_46.nix
Normal file
@ -0,0 +1,44 @@
|
|||||||
|
# New rust versions should first go to staging.
|
||||||
|
# Things to check after updating:
|
||||||
|
# 1. Rustc should produce rust binaries on x86_64-linux, aarch64-linux and x86_64-darwin:
|
||||||
|
# i.e. nix-shell -p fd or @GrahamcOfBorg build fd on github
|
||||||
|
# This testing can be also done by other volunteers as part of the pull
|
||||||
|
# request review, in case platforms cannot be covered.
|
||||||
|
# 2. The LLVM version used for building should match with rust upstream.
|
||||||
|
# Check the version number in the src/llvm-project git submodule in:
|
||||||
|
# https://github.com/rust-lang/rust/blob/<version-tag>/.gitmodules
|
||||||
|
# 3. Firefox and Thunderbird should still build on x86_64-linux.
|
||||||
|
|
||||||
|
{ stdenv, lib
|
||||||
|
, buildPackages
|
||||||
|
, newScope, callPackage
|
||||||
|
, CoreFoundation, Security
|
||||||
|
, llvmPackages
|
||||||
|
, pkgsBuildTarget, pkgsBuildBuild
|
||||||
|
} @ args:
|
||||||
|
|
||||||
|
import ./default.nix {
|
||||||
|
rustcVersion = "1.46.0";
|
||||||
|
rustcSha256 = "0a17jby2pd050s24cy4dfc0gzvgcl585v3vvyfilniyvjrqknsid";
|
||||||
|
|
||||||
|
# Note: the version MUST be one version prior to the version we're
|
||||||
|
# building
|
||||||
|
bootstrapVersion = "1.45.2";
|
||||||
|
|
||||||
|
# fetch hashes by running `print-hashes.sh 1.45.2`
|
||||||
|
bootstrapHashes = {
|
||||||
|
i686-unknown-linux-gnu = "5b2050dde23152750de89f7e59acaab6bf088d0beb5854c69c9a545fd254b936";
|
||||||
|
x86_64-unknown-linux-gnu = "860feed955726a4d96ffe40758a110053326b9ae11c9e1ee059e9c6222f25643";
|
||||||
|
arm-unknown-linux-gnueabihf = "ddb5f59bbdef84e0b7c83049461e003ed031dd881a4622365c3d475102535c60";
|
||||||
|
armv7-unknown-linux-gnueabihf = "7a556581f87602705f9c89b04cce621cfbba9050b6fbe478166e91d164567531";
|
||||||
|
aarch64-unknown-linux-gnu = "151fad66442d28a4e4786753d1afb559c4a3d359081c64769273a31c2f0f4d30";
|
||||||
|
x86_64-apple-darwin = "6e8067624ede10aa23081d62e0086c6f42f7228cc0d00fb5ff24d4dac65249d6";
|
||||||
|
};
|
||||||
|
|
||||||
|
selectRustPackage = pkgs: pkgs.rust_1_46;
|
||||||
|
|
||||||
|
rustcPatches = [
|
||||||
|
];
|
||||||
|
}
|
||||||
|
|
||||||
|
(builtins.removeAttrs args [ "fetchpatch" ])
|
@ -10,7 +10,7 @@
|
|||||||
, buildPackages
|
, buildPackages
|
||||||
, newScope, callPackage
|
, newScope, callPackage
|
||||||
, CoreFoundation, Security
|
, CoreFoundation, Security
|
||||||
, llvmPackages_5
|
, llvmPackages
|
||||||
, pkgsBuildTarget, pkgsBuildBuild
|
, pkgsBuildTarget, pkgsBuildBuild
|
||||||
}: rec {
|
}: rec {
|
||||||
toRustTarget = platform: with platform.parsed; let
|
toRustTarget = platform: with platform.parsed; let
|
||||||
@ -80,10 +80,10 @@
|
|||||||
# 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) {
|
||||||
stdenv = llvmPackages_5.stdenv;
|
stdenv = llvmPackages.stdenv;
|
||||||
pkgsBuildBuild = pkgsBuildBuild // { targetPackages.stdenv = llvmPackages_5.stdenv; };
|
pkgsBuildBuild = pkgsBuildBuild // { targetPackages.stdenv = llvmPackages.stdenv; };
|
||||||
pkgsBuildHost = pkgsBuildBuild // { targetPackages.stdenv = llvmPackages_5.stdenv; };
|
pkgsBuildHost = pkgsBuildBuild // { targetPackages.stdenv = llvmPackages.stdenv; };
|
||||||
pkgsBuildTarget = pkgsBuildTarget // { targetPackages.stdenv = llvmPackages_5.stdenv; };
|
pkgsBuildTarget = pkgsBuildTarget // { targetPackages.stdenv = llvmPackages.stdenv; };
|
||||||
});
|
});
|
||||||
rustfmt = self.callPackage ./rustfmt.nix { inherit Security; };
|
rustfmt = self.callPackage ./rustfmt.nix { inherit Security; };
|
||||||
cargo = self.callPackage ./cargo.nix {
|
cargo = self.callPackage ./cargo.nix {
|
||||||
|
@ -9635,15 +9635,28 @@ in
|
|||||||
|
|
||||||
rust_1_44 = callPackage ../development/compilers/rust/1_44.nix {
|
rust_1_44 = callPackage ../development/compilers/rust/1_44.nix {
|
||||||
inherit (darwin.apple_sdk.frameworks) CoreFoundation Security;
|
inherit (darwin.apple_sdk.frameworks) CoreFoundation Security;
|
||||||
|
llvmPackages = llvmPackages_9;
|
||||||
};
|
};
|
||||||
|
# Because rustc-1.46.0 enables static PIE by default for
|
||||||
|
# `x86_64-unknown-linux-musl` this release will suffer from:
|
||||||
|
#
|
||||||
|
# https://github.com/NixOS/nixpkgs/issues/94228
|
||||||
|
#
|
||||||
|
# So this commit doesn't remove the 1.45.2 release.
|
||||||
rust_1_45 = callPackage ../development/compilers/rust/1_45.nix {
|
rust_1_45 = callPackage ../development/compilers/rust/1_45.nix {
|
||||||
inherit (darwin.apple_sdk.frameworks) CoreFoundation Security;
|
inherit (darwin.apple_sdk.frameworks) CoreFoundation Security;
|
||||||
|
llvmPackages = llvmPackages_10;
|
||||||
};
|
};
|
||||||
rust = rust_1_45;
|
rust_1_46 = callPackage ../development/compilers/rust/1_46.nix {
|
||||||
|
inherit (darwin.apple_sdk.frameworks) CoreFoundation Security;
|
||||||
|
llvmPackages = llvmPackages_10;
|
||||||
|
};
|
||||||
|
rust = rust_1_46;
|
||||||
|
|
||||||
rustPackages_1_44 = rust_1_44.packages.stable;
|
rustPackages_1_44 = rust_1_44.packages.stable;
|
||||||
rustPackages_1_45 = rust_1_45.packages.stable;
|
rustPackages_1_45 = rust_1_45.packages.stable;
|
||||||
rustPackages = rustPackages_1_45;
|
rustPackages_1_46 = rust_1_46.packages.stable;
|
||||||
|
rustPackages = rustPackages_1_46;
|
||||||
|
|
||||||
inherit (rustPackages) cargo clippy rustc rustPlatform;
|
inherit (rustPackages) cargo clippy rustc rustPlatform;
|
||||||
inherit (rust) makeRustPlatform;
|
inherit (rust) makeRustPlatform;
|
||||||
|
Loading…
Reference in New Issue
Block a user