Guest User

Untitled

a guest
Mar 23rd, 2018
107
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.67 KB | None | 0 0
  1. { pkgs }:
  2.  
  3. rec {
  4. optimizeWithFlag = pkg: flag:
  5. pkg.overrideAttrs (attrs: {
  6. NIX_CFLAGS_COMPILE = (attrs.NIX_CFLAGS_COMPILE or "") + " ${flag}";
  7. });
  8.  
  9. optimizeWithFlags = pkg: flags:
  10. pkgs.lib.foldl' (pkg: flag: optimizeWithFlag pkg flag) pkg flags;
  11.  
  12. optimizeForThisHost = pkg:
  13. optimizeWithFlags pkg [ "-O3" "-march=native" "-fPIC" ];
  14.  
  15. withDebuggingCompiled = pkg:
  16. optimizeWithFlag pkg "-DDEBUG";
  17.  
  18. applyOptimizations = opts: pkg:
  19. pkgs.lib.foldl (pkg: optfun: optfun pkg) pkg opts;
  20.  
  21. withoutConfigureFlag = flag: pkg:
  22. pkgs.lib.overrideDerivation pkg (old: {
  23. configureFlags = pkgs.lib.filter (x: x != flag) old.configureFlags;
  24. });
  25.  
  26. }
Add Comment
Please, Sign In to add comment