From 3e472dff545c82bcb863d7e6d34f55dd81c70700 Mon Sep 17 00:00:00 2001 From: Antoine Viallon Date: Thu, 10 Aug 2023 16:32:26 +0200 Subject: [PATCH] [Optimizations] Add ability to specify additional attributes to package override --- lib/optimizations.nix | 5 ++++- optimizations/optimizations.nix | 3 ++- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/lib/optimizations.nix b/lib/optimizations.nix index ffea74c..6b881bf 100644 --- a/lib/optimizations.nix +++ b/lib/optimizations.nix @@ -215,6 +215,7 @@ rec { , overrideMap ? { } , stdenv ? null , lto ? false + , attributes ? { } , _depth ? 0 , ... }@attrs: @@ -289,8 +290,10 @@ rec { CFLAGS = if (! isList old.CFLAGS) then [ old.CFLAGS ] else old.CFLAGS; } ); + _pkgOptimized = addAttrs _pkg optimizedAttrs; + _pkgFinal = addAttrs _pkgOptimized attributes; in - trace "Optimized ${myGetName pkg} with overrideAttrs at level '${level}' (depth: ${toString _depth}, lto: ${toString lto})" (addAttrs _pkg optimizedAttrs) + trace "Optimized ${myGetName pkg} with overrideAttrs at level '${level}' (depth: ${toString _depth}, lto: '${toString lto}')" _pkgFinal else if (hasAttr "name" pkg) then warn "Can't optimize ${myGetName pkg} (depth: ${toString _depth})" pkg else diff --git a/optimizations/optimizations.nix b/optimizations/optimizations.nix index 74935a6..a738e85 100644 --- a/optimizations/optimizations.nix +++ b/optimizations/optimizations.nix @@ -16,11 +16,12 @@ let ltoBlacklist ? cfg.lto.blacklist, overrideMap ? cfg.overrideMap, lto ? cfg.lto, + attributes ? {}, stdenv ? null, ... }@attrs: pkg: myLib.optimizations.optimizePkg pkg (cfg.defaultSettings // { - inherit cpuCores cpuTune cpuArch extraCFlags blacklist ltoBlacklist overrideMap stdenv; + inherit cpuCores cpuTune cpuArch extraCFlags blacklist ltoBlacklist overrideMap stdenv attributes; } // attrs); in { options.aviallon.optimizations = {