summary refs log tree commit diff
path: root/pkgs/build-support/build-bazel-package
diff options
context:
space:
mode:
authorUri Baghin <uri@canva.com>2018-07-10 08:38:45 +1000
committerOrivej Desh (NixOS) <40807862+orivej-nixos@users.noreply.github.com>2018-07-09 22:38:45 +0000
commited98822350926bd757d2e8ed89faf1bf1cf51473 (patch)
tree85e697eddcd147e8ad6a172b1daa601432311814 /pkgs/build-support/build-bazel-package
parent547ef77aa748b076f0a62854da59239ab0230db6 (diff)
downloadnixpkgs-ed98822350926bd757d2e8ed89faf1bf1cf51473.tar
nixpkgs-ed98822350926bd757d2e8ed89faf1bf1cf51473.tar.gz
nixpkgs-ed98822350926bd757d2e8ed89faf1bf1cf51473.tar.bz2
nixpkgs-ed98822350926bd757d2e8ed89faf1bf1cf51473.tar.lz
nixpkgs-ed98822350926bd757d2e8ed89faf1bf1cf51473.tar.xz
nixpkgs-ed98822350926bd757d2e8ed89faf1bf1cf51473.tar.zst
nixpkgs-ed98822350926bd757d2e8ed89faf1bf1cf51473.zip
bazel-deps: init at 2018-05-31 (#43018)
Diffstat (limited to 'pkgs/build-support/build-bazel-package')
-rw-r--r--pkgs/build-support/build-bazel-package/default.nix12
1 files changed, 7 insertions, 5 deletions
diff --git a/pkgs/build-support/build-bazel-package/default.nix b/pkgs/build-support/build-bazel-package/default.nix
index 349a7e5aa33..07d37451ddf 100644
--- a/pkgs/build-support/build-bazel-package/default.nix
+++ b/pkgs/build-support/build-bazel-package/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, bazel }:
+{ stdenv, bazel, enableNixHacks ? true }:
 
 args@{ name, bazelFlags ? [], bazelTarget, buildAttrs, fetchAttrs, ... }:
 
@@ -17,14 +17,15 @@ in stdenv.mkDerivation (fBuildAttrs // {
     nativeBuildInputs = fFetchAttrs.nativeBuildInputs or [] ++ [ bazel ];
 
     preHook = fFetchAttrs.preHook or "" + ''
-      export bazelOut="$NIX_BUILD_TOP/output"
+      export bazelOut="$(echo ''${NIX_BUILD_TOP}/output | sed -e 's,//,/,g')"
+      export bazelUserRoot="$(echo ''${NIX_BUILD_TOP}/tmp | sed -e 's,//,/,g')"
       export HOME="$NIX_BUILD_TOP"
     '';
 
     buildPhase = fFetchAttrs.buildPhase or ''
       runHook preBuild
 
-      bazel --output_base="$bazelOut" fetch $bazelFlags $bazelTarget
+      bazel --output_base="$bazelOut" --output_user_root="$bazelUserRoot" fetch $bazelFlags $bazelTarget
 
       runHook postBuild
     '';
@@ -52,10 +53,11 @@ in stdenv.mkDerivation (fBuildAttrs // {
     outputHash = fetchAttrs.sha256;
   });
 
-  nativeBuildInputs = fBuildAttrs.nativeBuildInputs or [] ++ [ (bazel.override { enableNixHacks = true; }) ];
+  nativeBuildInputs = fBuildAttrs.nativeBuildInputs or [] ++ [ (if enableNixHacks then (bazel.override { enableNixHacks = true; }) else bazel) ];
 
   preHook = fBuildAttrs.preHook or "" + ''
     export bazelOut="$NIX_BUILD_TOP/output"
+    export bazelUserRoot="$NIX_BUILD_TOP/tmp"
     export HOME="$NIX_BUILD_TOP"
   '';
 
@@ -71,7 +73,7 @@ in stdenv.mkDerivation (fBuildAttrs // {
   buildPhase = fBuildAttrs.buildPhase or ''
     runHook preBuild
 
-    bazel --output_base="$bazelOut" build -j $NIX_BUILD_CORES $bazelFlags $bazelTarget
+    bazel --output_base="$bazelOut" --output_user_root="$bazelUserRoot" build -j $NIX_BUILD_CORES $bazelFlags $bazelTarget
 
     runHook postBuild
   '';