summary refs log tree commit diff
path: root/pkgs/build-support/build-bazel-package/default.nix
diff options
context:
space:
mode:
authorFrederik Rietdijk <fridh@fridh.nl>2019-08-01 09:44:06 +0200
committerFrederik Rietdijk <fridh@fridh.nl>2019-08-01 09:44:06 +0200
commit4ca8e53e1ddb2f2f1e5520be33654c33481faae0 (patch)
tree94896f54f338cc97a1e43adf3dcbdff15d5a512c /pkgs/build-support/build-bazel-package/default.nix
parent59ac7e16347e2e841e24d3dd959b9fc5dab5fdc8 (diff)
parent55e4555b77ff7506579c1d4f5d9b562ca6e853b4 (diff)
downloadnixpkgs-4ca8e53e1ddb2f2f1e5520be33654c33481faae0.tar
nixpkgs-4ca8e53e1ddb2f2f1e5520be33654c33481faae0.tar.gz
nixpkgs-4ca8e53e1ddb2f2f1e5520be33654c33481faae0.tar.bz2
nixpkgs-4ca8e53e1ddb2f2f1e5520be33654c33481faae0.tar.lz
nixpkgs-4ca8e53e1ddb2f2f1e5520be33654c33481faae0.tar.xz
nixpkgs-4ca8e53e1ddb2f2f1e5520be33654c33481faae0.tar.zst
nixpkgs-4ca8e53e1ddb2f2f1e5520be33654c33481faae0.zip
Merge staging-next into staging
Diffstat (limited to 'pkgs/build-support/build-bazel-package/default.nix')
-rw-r--r--pkgs/build-support/build-bazel-package/default.nix17
1 files changed, 8 insertions, 9 deletions
diff --git a/pkgs/build-support/build-bazel-package/default.nix b/pkgs/build-support/build-bazel-package/default.nix
index 72725f9818c..32cec42160f 100644
--- a/pkgs/build-support/build-bazel-package/default.nix
+++ b/pkgs/build-support/build-bazel-package/default.nix
@@ -4,7 +4,7 @@
 , lib
 }:
 
-args@{ name, bazelFlags ? [], bazelTarget, buildAttrs, fetchAttrs, ... }:
+args@{ name, bazelFlags ? [], bazelBuildFlags ? [], bazelFetchFlags ? [], bazelTarget, buildAttrs, fetchAttrs, ... }:
 
 let
   fArgs = removeAttrs args [ "buildAttrs" "fetchAttrs" ];
@@ -12,11 +12,11 @@ let
   fFetchAttrs = fArgs // removeAttrs fetchAttrs [ "sha256" ];
 
 in stdenv.mkDerivation (fBuildAttrs // {
-  inherit name bazelFlags bazelTarget;
+  inherit name bazelFlags bazelBuildFlags bazelFetchFlags bazelTarget;
 
   deps = stdenv.mkDerivation (fFetchAttrs // {
     name = "${name}-deps";
-    inherit bazelFlags bazelTarget;
+    inherit bazelFlags bazelBuildFlags bazelFetchFlags bazelTarget;
 
     nativeBuildInputs = fFetchAttrs.nativeBuildInputs or [] ++ [ bazel ];
 
@@ -49,6 +49,7 @@ in stdenv.mkDerivation (fBuildAttrs // {
         fetch \
         --loading_phase_threads=1 \
         $bazelFlags \
+        $bazelFetchFlags \
         $bazelTarget
 
       runHook postBuild
@@ -60,13 +61,10 @@ in stdenv.mkDerivation (fBuildAttrs // {
       # Remove all built in external workspaces, Bazel will recreate them when building
       rm -rf $bazelOut/external/{bazel_tools,\@bazel_tools.marker}
       rm -rf $bazelOut/external/{embedded_jdk,\@embedded_jdk.marker}
-      rm -rf $bazelOut/external/{local_*,\@local_*}
+      rm -rf $bazelOut/external/{local_*,\@local_*.marker}
 
-      # Patching markers to make them deterministic
-      find $bazelOut/external -name '@*\.marker' -exec sed -i \
-        -e 's, -\?[0-9][0-9]*$, 1,' \
-        -e '/^ENV:TMP.*/d' \
-        '{}' \;
+      # Clear markers
+      find $bazelOut/external -name '@*\.marker' -exec sh -c 'echo > {}' \;
 
       # Remove all vcs files
       rm -rf $(find $bazelOut/external -type d -name .git)
@@ -152,6 +150,7 @@ in stdenv.mkDerivation (fBuildAttrs // {
       "''${host_linkopts[@]}" \
       '' + ''
       $bazelFlags \
+      $bazelBuildFlags \
       $bazelTarget
 
     runHook postBuild