diff options
author | Vladimír Čunát <v@cunat.cz> | 2023-10-26 10:36:50 +0200 |
---|---|---|
committer | Vladimír Čunát <v@cunat.cz> | 2023-10-26 10:36:50 +0200 |
commit | d811555465785e76fc06872f4bb14d4dd1dfed8c (patch) | |
tree | 91db30ffe3553dcd7c9766c4163687f7b951dd16 /pkgs/development/compilers/rust/rustc.nix | |
parent | 7054a80f3b8061bd532e407f46f60e484a5e9a9c (diff) | |
parent | 0f8647b0c2bce447f8ce27428de242727104ffb0 (diff) |
Merge branch 'staging' into staging-next
Diffstat (limited to 'pkgs/development/compilers/rust/rustc.nix')
-rw-r--r-- | pkgs/development/compilers/rust/rustc.nix | 20 |
1 files changed, 11 insertions, 9 deletions
diff --git a/pkgs/development/compilers/rust/rustc.nix b/pkgs/development/compilers/rust/rustc.nix index 3a649bde95dd6..44c290acbd3ae 100644 --- a/pkgs/development/compilers/rust/rustc.nix +++ b/pkgs/development/compilers/rust/rustc.nix @@ -66,15 +66,18 @@ in stdenv.mkDerivation rec { # We need rust to build rust. If we don't provide it, configure will try to download it. # Reference: https://github.com/rust-lang/rust/blob/master/src/bootstrap/configure.py configureFlags = let + prefixForStdenv = stdenv: "${stdenv.cc}/bin/${stdenv.cc.targetPrefix}"; + ccPrefixForStdenv = stdenv: "${prefixForStdenv stdenv}${if (stdenv.cc.isClang or false) then "clang" else "cc"}"; + cxxPrefixForStdenv = stdenv: "${prefixForStdenv stdenv}${if (stdenv.cc.isClang or false) then "clang++" else "c++"}"; setBuild = "--set=target.${rust.toRustTarget stdenv.buildPlatform}"; setHost = "--set=target.${rust.toRustTarget stdenv.hostPlatform}"; setTarget = "--set=target.${rust.toRustTarget stdenv.targetPlatform}"; - ccForBuild = "${pkgsBuildBuild.targetPackages.stdenv.cc}/bin/${pkgsBuildBuild.targetPackages.stdenv.cc.targetPrefix}cc"; - cxxForBuild = "${pkgsBuildBuild.targetPackages.stdenv.cc}/bin/${pkgsBuildBuild.targetPackages.stdenv.cc.targetPrefix}c++"; - ccForHost = "${pkgsBuildHost.targetPackages.stdenv.cc}/bin/${pkgsBuildHost.targetPackages.stdenv.cc.targetPrefix}cc"; - cxxForHost = "${pkgsBuildHost.targetPackages.stdenv.cc}/bin/${pkgsBuildHost.targetPackages.stdenv.cc.targetPrefix}c++"; - ccForTarget = "${pkgsBuildTarget.targetPackages.stdenv.cc}/bin/${pkgsBuildTarget.targetPackages.stdenv.cc.targetPrefix}cc"; - cxxForTarget = "${pkgsBuildTarget.targetPackages.stdenv.cc}/bin/${pkgsBuildTarget.targetPackages.stdenv.cc.targetPrefix}c++"; + ccForBuild = ccPrefixForStdenv pkgsBuildBuild.targetPackages.stdenv; + cxxForBuild = cxxPrefixForStdenv pkgsBuildBuild.targetPackages.stdenv; + ccForHost = ccPrefixForStdenv pkgsBuildHost.targetPackages.stdenv; + cxxForHost = cxxPrefixForStdenv pkgsBuildHost.targetPackages.stdenv; + ccForTarget = ccPrefixForStdenv pkgsBuildTarget.targetPackages.stdenv; + cxxForTarget = cxxPrefixForStdenv pkgsBuildTarget.targetPackages.stdenv; in [ "--release-channel=stable" "--set=build.rustc=${rustc}/bin/rustc" @@ -272,9 +275,8 @@ in stdenv.mkDerivation rec { "i686-freebsd13" "x86_64-freebsd13" "x86_64-solaris" "aarch64-linux" "armv6l-linux" "armv7l-linux" "i686-linux" - "loongarch64-linux" "mipsel-linux" "mips64el-linux" - "powerpc64-linux" "powerpc64le-linux" "riscv64-linux" - "s390x-linux" "x86_64-linux" + "loongarch64-linux" "powerpc64-linux" "powerpc64le-linux" + "riscv64-linux" "s390x-linux" "x86_64-linux" "aarch64-netbsd" "armv7l-netbsd" "i686-netbsd" "powerpc-netbsd" "x86_64-netbsd" "i686-openbsd" "x86_64-openbsd" |