diff options
author | Yegor Timoshenko <yegortimoshenko@riseup.net> | 2018-10-13 14:09:55 +0000 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-10-13 14:09:55 +0000 |
commit | cd0c8739d7ef729e8c9616f4eee28eff555a3fc5 (patch) | |
tree | 5b1ae6f1d6b11572957c627328118c926b1145d1 /pkgs/stdenv/adapters.nix | |
parent | b6a79aa63bc64578935c471ead7cc56ec4a05b37 (diff) | |
parent | 15bfee85f35231be92e439e7f3f02e9aba34dcdf (diff) |
Merge pull request #37600 from abbradar/impureusenative
impureUseNativeOptimizations: add stdenv adapter
Diffstat (limited to 'pkgs/stdenv/adapters.nix')
-rw-r--r-- | pkgs/stdenv/adapters.nix | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/pkgs/stdenv/adapters.nix b/pkgs/stdenv/adapters.nix index 7d527729273..671306f6e6f 100644 --- a/pkgs/stdenv/adapters.nix +++ b/pkgs/stdenv/adapters.nix @@ -171,4 +171,19 @@ rec { NIX_CFLAGS_LINK = toString (args.NIX_CFLAGS_LINK or "") + " -fuse-ld=gold"; }); }; + + + /* Modify a stdenv so that it builds binaries optimized specifically + for the machine they are built on. + + WARNING: this breaks purity! */ + impureUseNativeOptimizations = stdenv: stdenv // + { mkDerivation = args: stdenv.mkDerivation (args // { + NIX_CFLAGS_COMPILE = toString (args.NIX_CFLAGS_COMPILE or "") + " -march=native"; + NIX_ENFORCE_NO_NATIVE = false; + + preferLocalBuild = true; + allowSubstitutes = false; + }); + }; } |