about summary refs log tree commit diff
path: root/pkgs/build-support
diff options
context:
space:
mode:
authorUri Baghin <uri@canva.com>2023-04-06 10:13:53 +1000
committerGitHub <noreply@github.com>2023-04-06 10:13:53 +1000
commit3df364d185cbf7948f4e7dff4cbe800d99bf635f (patch)
tree07d3bfd48495f645a2c45deb1db2fd55e497ad48 /pkgs/build-support
parent96e569cb29daa8dbcec62d4c6f947d40fd4a8a76 (diff)
parent1ee2c5c9ebf564f88d6bbc26bd8d2dd376106b6a (diff)
Merge pull request #224765 from uri-canva/uri/overwrite
buildBazelPackage: allow buildAttrs and fetchAttrs to override inherited attrs
Diffstat (limited to 'pkgs/build-support')
-rw-r--r--pkgs/build-support/build-bazel-package/default.nix24
1 files changed, 14 insertions, 10 deletions
diff --git a/pkgs/build-support/build-bazel-package/default.nix b/pkgs/build-support/build-bazel-package/default.nix
index ab2014ea6a63f..1901aa2235e73 100644
--- a/pkgs/build-support/build-bazel-package/default.nix
+++ b/pkgs/build-support/build-bazel-package/default.nix
@@ -44,7 +44,15 @@ args@{
 }:
 
 let
-  fArgs = removeAttrs args [ "buildAttrs" "fetchAttrs" "removeRulesCC" ];
+  fArgs = removeAttrs args [ "buildAttrs" "fetchAttrs" "removeRulesCC" ] // {
+    name = name;
+    bazelFlags = bazelFlags;
+    bazelBuildFlags = bazelBuildFlags;
+    bazelTestFlags = bazelTestFlags;
+    bazelFetchFlags = bazelFetchFlags;
+    bazelTestTargets = bazelTestTargets;
+    dontAddBazelOpts = dontAddBazelOpts;
+  };
   fBuildAttrs = fArgs // buildAttrs;
   fFetchAttrs = fArgs // removeAttrs fetchAttrs [ "sha256" ];
   bazelCmd = { cmd, additionalFlags, targets }:
@@ -69,11 +77,9 @@ let
     '';
 in
 stdenv.mkDerivation (fBuildAttrs // {
-  inherit name bazelFlags bazelBuildFlags bazelTestFlags bazelFetchFlags bazelTargets bazelTestTargets;
 
   deps = stdenv.mkDerivation (fFetchAttrs // {
     name = "${name}-deps.tar.gz";
-    inherit bazelFlags bazelBuildFlags bazelTestFlags bazelFetchFlags bazelTargets bazelTestTargets;
 
     impureEnvVars = lib.fetchers.proxyImpureEnvVars ++ fFetchAttrs.impureEnvVars or [];
 
@@ -103,7 +109,7 @@ stdenv.mkDerivation (fBuildAttrs // {
             "--loading_phase_threads=1"
             "$bazelFetchFlags"
           ];
-          targets = bazelTargets ++ bazelTestTargets;
+          targets = fFetchAttrs.bazelTargets ++ fFetchAttrs.bazelTestTargets;
         }
       }
 
@@ -187,8 +193,6 @@ stdenv.mkDerivation (fBuildAttrs // {
     done
   '' + fBuildAttrs.preConfigure or "";
 
-  inherit dontAddBazelOpts;
-
   buildPhase = fBuildAttrs.buildPhase or ''
     runHook preBuild
 
@@ -221,15 +225,15 @@ stdenv.mkDerivation (fBuildAttrs // {
       bazelCmd {
         cmd = "test";
         additionalFlags =
-          ["--test_output=errors"] ++  bazelTestFlags;
-        targets = bazelTestTargets;
+          ["--test_output=errors"] ++ fBuildAttrs.bazelTestFlags;
+        targets = fBuildAttrs.bazelTestTargets;
       }
     }
     ${
       bazelCmd {
         cmd = "build";
-        additionalFlags = bazelBuildFlags;
-        targets = bazelTargets;
+        additionalFlags = fBuildAttrs.bazelBuildFlags;
+        targets = fBuildAttrs.bazelTargets;
       }
     }
     runHook postBuild