diff options
author | Uri Baghin <uri@canva.com> | 2023-04-06 10:13:53 +1000 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-04-06 10:13:53 +1000 |
commit | 3df364d185cbf7948f4e7dff4cbe800d99bf635f (patch) | |
tree | 07d3bfd48495f645a2c45deb1db2fd55e497ad48 /pkgs/build-support | |
parent | 96e569cb29daa8dbcec62d4c6f947d40fd4a8a76 (diff) | |
parent | 1ee2c5c9ebf564f88d6bbc26bd8d2dd376106b6a (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.nix | 24 |
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 |