aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlex Auvolat <alex@adnab.me>2024-02-07 19:41:23 +0100
committerAlex Auvolat <alex@adnab.me>2024-02-08 10:22:23 +0100
commit2b92e8d7c6bcfaec7d9b8457d9a7e88aa85ee268 (patch)
tree68bf4ad030331f2483fa0f132daa1bc3f81bd177
parent59930977e074a78adaf43f9933612dae835804cf (diff)
downloadgarage-2b92e8d7c6bcfaec7d9b8457d9a7e88aa85ee268.tar.gz
garage-2b92e8d7c6bcfaec7d9b8457d9a7e88aa85ee268.zip
[lto-nix] enable LTO for release builds using Nixlto-nix
-rw-r--r--Cargo.nix2
-rw-r--r--Cargo.toml3
2 files changed, 3 insertions, 2 deletions
diff --git a/Cargo.nix b/Cargo.nix
index 86a20104..c4d4c0ea 100644
--- a/Cargo.nix
+++ b/Cargo.nix
@@ -45,7 +45,7 @@ else let
inherit (rustLib) fetchCratesIo fetchCrateLocal fetchCrateGit fetchCrateAlternativeRegistry expandFeatures decideProfile genDrvsByProfile;
profilesByName = {
dev = builtins.fromTOML "lto = \"off\"\n";
- release = builtins.fromTOML "debug = true\n";
+ release = builtins.fromTOML "codegen-units = 1\nlto = true\nopt-level = \"s\"\nstrip = true\n";
};
rootFeatures' = expandFeatures rootFeatures;
overridableMkRustCrate = f:
diff --git a/Cargo.toml b/Cargo.toml
index baaf5c26..2c39179d 100644
--- a/Cargo.toml
+++ b/Cargo.toml
@@ -131,7 +131,8 @@ aws-sdk-config = "1.13"
aws-sdk-s3 = "1.14"
[profile.dev]
-lto = "thin"
+#lto = "thin" # disabled for now, adds 2-4 min to each CI build
+lto = "off"
[profile.release]
lto = true