aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlex <alex@adnab.me>2023-10-18 10:02:34 +0000
committerAlex <alex@adnab.me>2023-10-18 10:02:34 +0000
commita5e8ffeb63a193e5b0e020e4c014687e57f85c23 (patch)
tree52351294b31581e0823bafa67b396af627088975
parentb53510c5b74bc8d52e25bcdb517b38fa60f67a67 (diff)
parentd3fffd30dcf66a9da2e466ae6274547b090313e2 (diff)
downloadgarage-a5e8ffeb63a193e5b0e020e4c014687e57f85c23.tar.gz
garage-a5e8ffeb63a193e5b0e020e4c014687e57f85c23.zip
Merge pull request 'use mold linker when invoking cargo manually (not in nix build scripts)' (#646) from mold-linker into main
Reviewed-on: https://git.deuxfleurs.fr/Deuxfleurs/garage/pulls/646
-rw-r--r--.cargo/config.toml3
-rw-r--r--flake.nix5
-rw-r--r--shell.nix21
3 files changed, 18 insertions, 11 deletions
diff --git a/.cargo/config.toml b/.cargo/config.toml
new file mode 100644
index 00000000..d29d6c33
--- /dev/null
+++ b/.cargo/config.toml
@@ -0,0 +1,3 @@
+[target.x86_64-unknown-linux-gnu]
+linker = "clang"
+rustflags = ["-C", "link-arg=-fuse-ld=mold"]
diff --git a/flake.nix b/flake.nix
index 32c01616..f8d7d4df 100644
--- a/flake.nix
+++ b/flake.nix
@@ -48,6 +48,9 @@
pkgsSrc = nixpkgs;
cargo2nixOverlay = cargo2nix.overlays.default;
release = false;
- }).workspaceShell { packages = [ pkgs.rustfmt ]; };
+ }).workspaceShell { packages = with pkgs; [
+ rustfmt
+ mold
+ ]; };
});
}
diff --git a/shell.nix b/shell.nix
index 0d510e33..88e292a8 100644
--- a/shell.nix
+++ b/shell.nix
@@ -15,16 +15,17 @@ in {
# --- Rust Shell ---
# Use it to compile Garage
rust = pkgs.mkShell {
- nativeBuildInputs = [
- #pkgs.rustPlatform.rust.rustc
- pkgs.rustPlatform.rust.cargo
- #pkgs.clippy
- pkgs.rustfmt
- #pkgs.perl
- #pkgs.protobuf
- #pkgs.pkg-config
- #pkgs.openssl
- pkgs.file
+ nativeBuildInputs = with pkgs; [
+ #rustPlatform.rust.rustc
+ rustPlatform.rust.cargo
+ mold
+ #clippy
+ rustfmt
+ #perl
+ #protobuf
+ #pkg-config
+ #openssl
+ file
#cargo2nix.packages.x86_64-linux.cargo2nix
];
};