diff options
author | talyz <kim.lindberger@gmail.com> | 2020-04-12 22:52:51 +0200 |
---|---|---|
committer | talyz <kim.lindberger@gmail.com> | 2020-04-24 18:48:29 +0200 |
commit | abedfadd7376a2edf59bbfaa7ab101411d042529 (patch) | |
tree | e6f6cc25a8e8ec147a19423f2e6e22f188d616b2 /pkgs/development/interpreters/php | |
parent | dde5f5f899acc34407b604cbca4d4070e3111f13 (diff) | |
download | nixlib-abedfadd7376a2edf59bbfaa7ab101411d042529.tar nixlib-abedfadd7376a2edf59bbfaa7ab101411d042529.tar.gz nixlib-abedfadd7376a2edf59bbfaa7ab101411d042529.tar.bz2 nixlib-abedfadd7376a2edf59bbfaa7ab101411d042529.tar.lz nixlib-abedfadd7376a2edf59bbfaa7ab101411d042529.tar.xz nixlib-abedfadd7376a2edf59bbfaa7ab101411d042529.tar.zst nixlib-abedfadd7376a2edf59bbfaa7ab101411d042529.zip |
php.buildEnv: Respect override
Make buildEnv take earlier overridden values into account by forwarding all arguments (a merge of generic's arguments, all previous arguments and the current arguments) to the next invocation of buildEnv.
Diffstat (limited to 'pkgs/development/interpreters/php')
-rw-r--r-- | pkgs/development/interpreters/php/default.nix | 18 |
1 files changed, 11 insertions, 7 deletions
diff --git a/pkgs/development/interpreters/php/default.nix b/pkgs/development/interpreters/php/default.nix index 7c6cb87dfb38..c1a7cdd11c47 100644 --- a/pkgs/development/interpreters/php/default.nix +++ b/pkgs/development/interpreters/php/default.nix @@ -43,12 +43,12 @@ let phpWithExtensions = self.withExtensions defaultPhpExtensions; }); - buildEnv = lib.makeOverridable ( + mkBuildEnv = prevArgs: lib.makeOverridable ( { extensions ? (_: []), extraConfig ? "", ... }@innerArgs: let - filteredInnerArgs = builtins.removeAttrs innerArgs [ "extensions" "extraConfig" ]; - allArgs = args // filteredInnerArgs; - php = generic allArgs; + allArgs = args // prevArgs // innerArgs; + filteredArgs = builtins.removeAttrs allArgs [ "extensions" "extraConfig" ]; + php = generic filteredArgs; php-packages = (callPackage ../../../top-level/php-packages.nix { inherit php phpWithExtensions; @@ -89,7 +89,9 @@ let inherit (php) version; nativeBuildInputs = [ makeWrapper ]; passthru = { - inherit buildEnv withExtensions enabledExtensions; + buildEnv = mkBuildEnv allArgs; + withExtensions = mkWithExtensions allArgs; + inherit enabledExtensions; inherit (php-packages) packages extensions; }; paths = [ php ]; @@ -106,7 +108,8 @@ let in phpWithExtensions); - withExtensions = extensions: buildEnv { inherit extensions; }; + mkWithExtensions = prevArgs: extensions: + mkBuildEnv prevArgs { inherit extensions; }; pcre' = if (lib.versionAtLeast version "7.3") then pcre2 else pcre; in @@ -216,7 +219,8 @@ let passthru = { enabledExtensions = []; - inherit buildEnv withExtensions; + buildEnv = mkBuildEnv {}; + withExtensions = mkWithExtensions {}; inherit (php-packages) packages extensions; }; |