Enable LTO for release builds using Nix #707

Merged
lx merged 1 commit from lto-nix into main 2024-02-08 10:36:49 +00:00
2 changed files with 3 additions and 2 deletions

View file

@ -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:

View file

@ -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