about summary refs log tree commit diff
path: root/pkgs/development/tools/build-managers/bazel
diff options
context:
space:
mode:
authorJohn Ericson <John.Ericson@Obsidian.Systems>2020-03-30 13:59:16 +0000
committerJohn Ericson <John.Ericson@Obsidian.Systems>2020-03-30 13:59:16 +0000
commit1fa310549ce217f31950025dd17a3f793d69769c (patch)
tree5b19d651b1ae2d900a5f8b340cc4182b539262ee /pkgs/development/tools/build-managers/bazel
parenta730888ce0c608789fbc57da7449c6a618b3e906 (diff)
parentd6fa6426088f377dca81af1526c0154789850bc7 (diff)
downloadnixlib-1fa310549ce217f31950025dd17a3f793d69769c.tar
nixlib-1fa310549ce217f31950025dd17a3f793d69769c.tar.gz
nixlib-1fa310549ce217f31950025dd17a3f793d69769c.tar.bz2
nixlib-1fa310549ce217f31950025dd17a3f793d69769c.tar.lz
nixlib-1fa310549ce217f31950025dd17a3f793d69769c.tar.xz
nixlib-1fa310549ce217f31950025dd17a3f793d69769c.tar.zst
nixlib-1fa310549ce217f31950025dd17a3f793d69769c.zip
Merge remote-tracking branch 'upstream/master' into add-tensorflow-2
Diffstat (limited to 'pkgs/development/tools/build-managers/bazel')
-rw-r--r--pkgs/development/tools/build-managers/bazel/bazel-latest/default.nix29
-rw-r--r--pkgs/development/tools/build-managers/bazel/bazel-latest/src-deps.json16
-rw-r--r--pkgs/development/tools/build-managers/bazel/bazel-remote/default.nix8
-rw-r--r--pkgs/development/tools/build-managers/bazel/buildtools/default.nix20
-rw-r--r--pkgs/development/tools/build-managers/bazel/buildtools/deps.nix9
5 files changed, 48 insertions, 34 deletions
diff --git a/pkgs/development/tools/build-managers/bazel/bazel-latest/default.nix b/pkgs/development/tools/build-managers/bazel/bazel-latest/default.nix
index 7fa7b9737b30..6c12003b9649 100644
--- a/pkgs/development/tools/build-managers/bazel/bazel-latest/default.nix
+++ b/pkgs/development/tools/build-managers/bazel/bazel-latest/default.nix
@@ -25,11 +25,11 @@
 }:
 
 let
-  version = "2.0.0";
+  version = "2.1.0";
 
   src = fetchurl {
     url = "https://github.com/bazelbuild/bazel/releases/download/${version}/bazel-${version}-dist.zip";
-    sha256 = "1fvc7lakdczim1i99hrwhwx2w75afd3q9fgbhrx7i3pnav3a6kbj";
+    sha256 = "0ijz9lxralyw18r5ra2h79jnafk5521ncr3knaip74cqa28csw9k";
   };
 
   # Update with `eval $(nix-build -A bazel.updater)`,
@@ -51,9 +51,9 @@ let
       (if stdenv.hostPlatform.isDarwin
        then srcs."java_tools_javac11_darwin-v7.0.zip"
        else srcs."java_tools_javac11_linux-v7.0.zip")
-      srcs."coverage_output_generator-v2.0.zip"
+      srcs."coverage_output_generator-v2.1.zip"
       srcs.build_bazel_rules_nodejs
-      srcs."android_tools_pkg-0.12.tar.gz"
+      srcs."android_tools_pkg-0.13.tar.gz"
       srcs."0.28.3.tar.gz"
       srcs.rules_pkg
       srcs.rules_cc
@@ -106,6 +106,7 @@ let
   # and libraries path.
   # We prefetch it, patch it, and override it in a global bazelrc.
   system = if stdenv.hostPlatform.isDarwin then "darwin" else "linux";
+  arch = stdenv.hostPlatform.parsed.cpu.name;
 
   remote_java_tools = stdenv.mkDerivation {
     name = "remote_java_tools_${system}";
@@ -326,6 +327,14 @@ stdenv.mkDerivation rec {
   postPatch = let
 
     darwinPatches = ''
+      bazelLinkFlags () {
+        eval set -- "$NIX_LDFLAGS"
+        local flag
+        for flag in "$@"; do
+          printf ' -Wl,%s' "$flag"
+        done
+      }
+
       # Disable Bazel's Xcode toolchain detection which would configure compilers
       # and linkers from Xcode instead of from PATH
       export BAZEL_USE_CPP_ONLY_TOOLCHAIN=1
@@ -335,14 +344,14 @@ stdenv.mkDerivation rec {
 
       # Framework search paths aren't added by bintools hook
       # https://github.com/NixOS/nixpkgs/pull/41914
-      export NIX_LDFLAGS="$NIX_LDFLAGS -F${CoreFoundation}/Library/Frameworks -F${CoreServices}/Library/Frameworks -F${Foundation}/Library/Frameworks"
+      export NIX_LDFLAGS+=" -F${CoreFoundation}/Library/Frameworks -F${CoreServices}/Library/Frameworks -F${Foundation}/Library/Frameworks"
 
       # libcxx includes aren't added by libcxx hook
       # https://github.com/NixOS/nixpkgs/pull/41589
       export NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE -isystem ${libcxx}/include/c++/v1"
 
       # don't use system installed Xcode to run clang, use Nix clang instead
-      sed -i -E "s;/usr/bin/xcrun (--sdk macosx )?clang;${stdenv.cc}/bin/clang $NIX_CFLAGS_COMPILE $NIX_LDFLAGS -framework CoreFoundation;g" \
+      sed -i -E "s;/usr/bin/xcrun (--sdk macosx )?clang;${stdenv.cc}/bin/clang $NIX_CFLAGS_COMPILE $(bazelLinkFlags) -framework CoreFoundation;g" \
         scripts/bootstrap/compile.sh \
         src/tools/xcode/realpath/BUILD \
         src/tools/xcode/stdredirect/BUILD \
@@ -485,9 +494,11 @@ stdenv.mkDerivation rec {
     mkdir -p $out/bin
 
     # official wrapper scripts that searches for $WORKSPACE_ROOT/tools/bazel
-    # if it can’t find something in tools, it calls $out/bin/bazel-real
+    # if it can’t find something in tools, it calls $out/bin/bazel-{version}-{os_arch}
+    # The binary _must_ exist with this naming if your project contains a .bazelversion
+    # file.
     cp ./bazel_src/scripts/packages/bazel.sh $out/bin/bazel
-    mv ./bazel_src/output/bazel $out/bin/bazel-real
+    mv ./bazel_src/output/bazel $out/bin/bazel-${version}-${system}-${arch}
 
     # shell completion files
     mkdir -p $out/share/bash-completion/completions $out/share/zsh/site-functions
@@ -526,7 +537,7 @@ stdenv.mkDerivation rec {
     exec "$BAZEL_REAL" "$@"
     EOF
 
-    # second call succeeds because it defers to $out/bin/bazel-real
+    # second call succeeds because it defers to $out/bin/bazel-{version}-{os_arch}
     hello_test
   '';
 
diff --git a/pkgs/development/tools/build-managers/bazel/bazel-latest/src-deps.json b/pkgs/development/tools/build-managers/bazel/bazel-latest/src-deps.json
index 171b1f9fc64e..7517a8c1b958 100644
--- a/pkgs/development/tools/build-managers/bazel/bazel-latest/src-deps.json
+++ b/pkgs/development/tools/build-managers/bazel/bazel-latest/src-deps.json
@@ -55,11 +55,11 @@
             "https://github.com/bazelbuild/rules_proto/archive/97d8af4dc474595af3900dd85cb3a29ad28cc313.tar.gz"
         ]
     },
-    "android_tools_pkg-0.12.tar.gz": {
-        "name": "android_tools_pkg-0.12.tar.gz",
-        "sha256": "96c4eef4d195dd95e43a4259cf5b82a1e34f67333439e91955bbdc0e1c8e7a31",
+    "android_tools_pkg-0.13.tar.gz": {
+        "name": "android_tools_pkg-0.13.tar.gz",
+        "sha256": "3ca6a5e6576a9cda7c59f5fd33b1fe096725730712057c5893589ac15b019407",
         "urls": [
-            "https://mirror.bazel.build/bazel_android_tools/android_tools_pkg-0.12.tar.gz"
+            "https://mirror.bazel.build/bazel_android_tools/android_tools_pkg-0.13.tar.gz"
         ]
     },
     "bazel_j2objc": {
@@ -115,11 +115,11 @@
             "https://github.com/google/googletest/archive/release-1.10.0.tar.gz"
         ]
     },
-    "coverage_output_generator-v2.0.zip": {
-        "name": "coverage_output_generator-v2.0.zip",
-        "sha256": "3a6951051272d51613ac4c77af6ce238a3db321bf06506fde1b8866eb18a89dd",
+    "coverage_output_generator-v2.1.zip": {
+        "name": "coverage_output_generator-v2.1.zip",
+        "sha256": "96ac6bc9b9fbc67b532bcae562da1642409791e6a4b8e522f04946ee5cc3ff8e",
         "urls": [
-            "https://mirror.bazel.build/bazel_coverage_output_generator/releases/coverage_output_generator-v2.0.zip"
+            "https://mirror.bazel.build/bazel_coverage_output_generator/releases/coverage_output_generator-v2.1.zip"
         ]
     },
     "desugar_jdk_libs": {
diff --git a/pkgs/development/tools/build-managers/bazel/bazel-remote/default.nix b/pkgs/development/tools/build-managers/bazel/bazel-remote/default.nix
index f2f3588ba29c..3222406c15d7 100644
--- a/pkgs/development/tools/build-managers/bazel/bazel-remote/default.nix
+++ b/pkgs/development/tools/build-managers/bazel/bazel-remote/default.nix
@@ -8,13 +8,13 @@
 
 buildBazelPackage rec {
   name = "bazel-remote-${version}";
-  version = "2020-01-29";
+  version = "1.0.0";
 
   src = fetchFromGitHub {
     owner = "buchgr";
     repo = "bazel-remote";
-    rev = "ae9378321552dd14066332f8fa55076040228cb7";
-    sha256 = "1jbd319n255cmmncnjfdkdcpx0x62asp3dqwgl6vimx4dqqj8v1p";
+    rev = "v${version}";
+    sha256 = "1fpdw139d5q1377qnqbgkahmdr4mdaa17d2m10wkyvyvijwm4r2m";
   };
 
   nativeBuildInputs = [ go git ];
@@ -64,7 +64,7 @@ buildBazelPackage rec {
       sed -e '/^FILE:@bazel_gazelle_go_repository_tools.*/d' -i $bazelOut/external/\@*.marker
     '';
 
-    sha256 = "1n66hg1w5jv2rc8q4sjlaf0agvxr713aa40mbkhgjv57x9j7bgn0";
+    sha256 = "141kw2zpr612xdcrg6x9kslg4d5b3fbpzx0vgp3lqwdihfj3sc1l";
   };
 
   buildAttrs = {
diff --git a/pkgs/development/tools/build-managers/bazel/buildtools/default.nix b/pkgs/development/tools/build-managers/bazel/buildtools/default.nix
index fc5f98a8ccb6..e1d5b6699824 100644
--- a/pkgs/development/tools/build-managers/bazel/buildtools/default.nix
+++ b/pkgs/development/tools/build-managers/bazel/buildtools/default.nix
@@ -1,25 +1,29 @@
-{ stdenv, buildGoPackage, fetchgit, fetchhg, fetchbzr, fetchsvn }:
+{ stdenv, buildGoPackage, fetchFromGitHub }:
 
 buildGoPackage rec {
   pname = "bazel-buildtools";
-  version = "0.29.0";
-  rev = "5bcc31df55ec1de770cb52887f2e989e7068301f";
+  version = "1.0.0";
 
   goPackagePath = "github.com/bazelbuild/buildtools";
 
-  src = fetchgit {
-    inherit rev;
-    url = "https://github.com/bazelbuild/buildtools";
-    sha256 = "0p2kgyawh3l46h7dzglqh9c7i16zr5mhmqlhy7qvr4skwif1l089";
+  src = fetchFromGitHub {
+    owner = "bazelbuild";
+    repo = "buildtools";
+    rev = version;
+    sha256 = "1rgz1bpg2db6z4q04z061h5b9qjk8padi71xyjcwqfchwqpl7hiv";
   };
 
   goDeps = ./deps.nix;
 
+  excludedPackages = [ "generatetables" ];
+
+  buildFlagsArray = [ "-ldflags=-s -w -X main.buildVersion=${version} -X main.buildScmRevision=${src.rev}" ];
+
   meta = with stdenv.lib; {
     description = "Tools for working with Google's bazel buildtool. Includes buildifier, buildozer, and unused_deps.";
     homepage = https://github.com/bazelbuild/buildtools;
     license = licenses.asl20;
-    maintainers = with maintainers; [ elasticdog uri-canva ];
+    maintainers = with maintainers; [ elasticdog uri-canva marsam ];
     platforms = platforms.all;
   };
 }
diff --git a/pkgs/development/tools/build-managers/bazel/buildtools/deps.nix b/pkgs/development/tools/build-managers/bazel/buildtools/deps.nix
index 4aaa37aa9a7b..38be0dedc371 100644
--- a/pkgs/development/tools/build-managers/bazel/buildtools/deps.nix
+++ b/pkgs/development/tools/build-managers/bazel/buildtools/deps.nix
@@ -1,12 +1,11 @@
-# This file was generated by https://github.com/kamilchm/go2nix v1.3.0
 [
   {
     goPackagePath = "github.com/golang/protobuf";
     fetch = {
       type = "git";
       url = "https://github.com/golang/protobuf";
-      rev = "4c88cc3f1a34ffade77b79abc53335d1e511f25b";
-      sha256 = "0chbdc4q55z7myiwnbvhryc5ihf6cxh8p4w3c1imy2gyzjn9sf4r";
+      rev = "d23c5127dc24889085f8ccea5c9d560a57a879d8";
+      sha256 = "1cyyr52yhj3fzrily3rmsbqyj8va4ld75lmry0857m39rgpv8sy1";
     };
   }
   {
@@ -14,8 +13,8 @@
     fetch = {
       type = "git";
       url = "https://github.com/google/starlark-go";
-      rev = "988906f77f657477aa7ebf4d8fb5f12d6c50b767";
-      sha256 = "0ivmbcq3avaxj8ixbc60h706d6wk9wi2mnsid6a483ia4yn7w9k8";
+      rev = "6677ee5c7211380ec7e6a1b50dc45287e40ca9e1";
+      sha256 = "1dl8q1lwvmm38w2lzfwray2djdcq40z89yy6vzy387w0xrax0jj0";
     };
   }
 ]