about summary refs log tree commit diff
path: root/pkgs/build-support/rust
diff options
context:
space:
mode:
authorYegor Timoshenko <yegortimoshenko@transumption.com>2019-09-19 01:21:55 +0000
committerGitHub <noreply@github.com>2019-09-19 01:21:55 +0000
commit17a6ae03cb8bf1e2af776be694afe46990a1fa64 (patch)
tree95be7080d737270dda9ca44e3646cb6e742d59b4 /pkgs/build-support/rust
parent2c906666e54c9f050b4a25142b4ff0e73c9b7dcc (diff)
parent08b73c1d587305d471f8214ce63baf0f7b00233f (diff)
downloadnixlib-17a6ae03cb8bf1e2af776be694afe46990a1fa64.tar
nixlib-17a6ae03cb8bf1e2af776be694afe46990a1fa64.tar.gz
nixlib-17a6ae03cb8bf1e2af776be694afe46990a1fa64.tar.bz2
nixlib-17a6ae03cb8bf1e2af776be694afe46990a1fa64.tar.lz
nixlib-17a6ae03cb8bf1e2af776be694afe46990a1fa64.tar.xz
nixlib-17a6ae03cb8bf1e2af776be694afe46990a1fa64.tar.zst
nixlib-17a6ae03cb8bf1e2af776be694afe46990a1fa64.zip
Merge pull request #66617 from transumption-unstable/201908/rust-aarch64-linux-musl
buildRustPackage: fix cross-compilation to aarch64-unknown-linux-musl
Diffstat (limited to 'pkgs/build-support/rust')
-rw-r--r--pkgs/build-support/rust/default.nix4
1 files changed, 4 insertions, 0 deletions
diff --git a/pkgs/build-support/rust/default.nix b/pkgs/build-support/rust/default.nix
index ce1bf8002767..4634d32f6ace 100644
--- a/pkgs/build-support/rust/default.nix
+++ b/pkgs/build-support/rust/default.nix
@@ -86,6 +86,10 @@ stdenv.mkDerivation (args // {
     ${stdenv.lib.optionalString (stdenv.buildPlatform.config != stdenv.hostPlatform.config) ''
     [target."${rustHostConfig}"]
     "linker" = "${ccForHost}"
+    ${# https://github.com/rust-lang/rust/issues/46651#issuecomment-433611633
+      stdenv.lib.optionalString (stdenv.hostPlatform.isMusl && stdenv.hostPlatform.isAarch64) ''
+    "rustflags" = [ "-C", "target-feature=+crt-static", "-C", "link-arg=-lgcc" ]
+    ''}
     ''}
     EOF