git.iko.soy/typeable/nixpkgs
on master help sign in
Merge pull request #106984 from divanorama/bazel_4

bazel_4: init at 4.0.0

commit25174d14f6babcdfacdeab1578e02974eae96976 authorWael Nasreddine <wael.nasreddine@gmail.com> dateTue 9 Feb 2021, 09:04 (6 years ago) parentbc89cb0cf19355
7 files changed+2268−11
pkgs/development/tools/build-managers/bazel/bazel_4/default.nix+639 pkgs/development/tools/build-managers/bazel/bazel_4/no-arc.patch+34 pkgs/development/tools/build-managers/bazel/bazel_4/src-deps.json+1498 pkgs/development/tools/build-managers/bazel/bazel_4/update-srcDeps.py+54 pkgs/development/tools/build-managers/bazel/java-test.nix+1−1 pkgs/development/tools/build-managers/bazel/protobuf-test.nix+32−10 pkgs/top-level/all-packages.nix+10
pkgs/development/tools/build-managers/bazel/bazel_4/default.nixnew file+639
@@ -0,0 +1,639 @@
1+{ stdenv, callPackage, lib, fetchurl, fetchFromGitHub, installShellFiles
2+, runCommand, runCommandCC, makeWrapper, recurseIntoAttrs
3+# this package (through the fixpoint glass)
4+, bazel_self
5+# needed only for the updater
6+, bazel_3
7+, lr, xe, zip, unzip, bash, writeCBin, coreutils
8+, which, gawk, gnused, gnutar, gnugrep, gzip, findutils
9+# updater
10+, python27, python3, writeScript
11+# Apple dependencies
12+, cctools, libcxx, CoreFoundation, CoreServices, Foundation
13+# Allow to independently override the jdks used to build and run respectively
14+, buildJdk, runJdk
15+, buildJdkName
16+, runtimeShell
17+# Downstream packages for tests
18+, bazel-watcher
19+# Always assume all markers valid (this is needed because we remove markers; they are non-deterministic).
20+# Also, don't clean up environment variables (so that NIX_ environment variables are passed to compilers).
21+, enableNixHacks ? false
22+, gcc-unwrapped
23+, autoPatchelfHook
24+, file
25+, substituteAll
26+, writeTextFile
27+}:
28+
29+let
30+ version = "4.0.0";
31+ sourceRoot = ".";
32+
33+ src = fetchurl {
34+ url = "https://github.com/bazelbuild/bazel/releases/download/${version}/bazel-${version}-dist.zip";
35+ sha256 = "1lfdx54dpzwrqysg5ngqhq7a0i01xk981crd4pdk4jb5f07ghl6k";
36+ };
37+
38+ # Update with `eval $(nix-build -A bazel.updater)`,
39+ # then add new dependencies from the dict in ./src-deps.json as required.
40+ srcDeps = lib.attrsets.attrValues srcDepsSet;
41+ srcDepsSet =
42+ let
43+ srcs = (builtins.fromJSON (builtins.readFile ./src-deps.json));
44+ toFetchurl = d: lib.attrsets.nameValuePair d.name (fetchurl {
45+ urls = d.urls;
46+ sha256 = d.sha256;
47+ });
48+ in builtins.listToAttrs (map toFetchurl [
49+ srcs.desugar_jdk_libs
50+ srcs.io_bazel_skydoc
51+ srcs.bazel_skylib
52+ srcs.io_bazel_rules_sass
53+ srcs.platforms
54+ (if stdenv.hostPlatform.isDarwin
55+ then srcs."java_tools_javac11_darwin-v10.5.zip"
56+ else srcs."java_tools_javac11_linux-v10.5.zip")
57+ srcs."coverage_output_generator-v2.5.zip"
58+ srcs.build_bazel_rules_nodejs
59+ srcs."android_tools_pkg-0.19.0rc3.tar.gz"
60+ srcs.bazel_toolchains
61+ srcs.com_github_grpc_grpc
62+ srcs.upb
63+ srcs.com_google_protobuf
64+ srcs.rules_pkg
65+ srcs.rules_cc
66+ srcs.rules_java
67+ srcs.rules_proto
68+ srcs.com_google_absl
69+ srcs.com_github_google_re2
70+ srcs.com_github_cares_cares
71+ ]);
72+
73+ distDir = runCommand "bazel-deps" {} ''
74+ mkdir -p $out
75+ for i in ${builtins.toString srcDeps}; do cp $i $out/$(stripHash $i); done
76+ '';
77+
78+ defaultShellPath = lib.makeBinPath
79+ # Keep this list conservative. For more exotic tools, prefer to use
80+ # @rules_nixpkgs to pull in tools from the nix repository. Example:
81+ #
82+ # WORKSPACE:
83+ #
84+ # nixpkgs_git_repository(
85+ # name = "nixpkgs",
86+ # revision = "def5124ec8367efdba95a99523dd06d918cb0ae8",
87+ # )
88+ #
89+ # # This defines an external Bazel workspace.
90+ # nixpkgs_package(
91+ # name = "bison",
92+ # repositories = { "nixpkgs": "@nixpkgs//:default.nix" },
93+ # )
94+ #
95+ # some/BUILD.bazel:
96+ #
97+ # genrule(
98+ # ...
99+ # cmd = "$(location @bison//:bin/bison) -other -args",
100+ # tools = [
101+ # ...
102+ # "@bison//:bin/bison",
103+ # ],
104+ # )
105+ #
106+ [ bash coreutils findutils gawk gnugrep gnutar gnused gzip which unzip file zip python27 python3 ];
107+
108+ # Java toolchain used for the build and tests
109+ javaToolchain = "@bazel_tools//tools/jdk:toolchain_${buildJdkName}";
110+
111+ platforms = lib.platforms.linux ++ lib.platforms.darwin;
112+
113+ # This repository is fetched by bazel at runtime
114+ # however it contains prebuilt java binaries, with wrong interpreter
115+ # and libraries path.
116+ # We prefetch it, patch it, and override it in a global bazelrc.
117+ system = if stdenv.hostPlatform.isDarwin then "darwin" else "linux";
118+ arch = stdenv.hostPlatform.parsed.cpu.name;
119+
120+ remote_java_tools = stdenv.mkDerivation {
121+ name = "remote_java_tools_${system}";
122+
123+ src = srcDepsSet."java_tools_javac11_${system}-v10.5.zip";
124+
125+ nativeBuildInputs = [ autoPatchelfHook unzip ];
126+ buildInputs = [ gcc-unwrapped ];
127+
128+ sourceRoot = ".";
129+
130+ buildPhase = ''
131+ mkdir $out;
132+ '';
133+
134+ installPhase = ''
135+ cp -Ra * $out/
136+ touch $out/WORKSPACE
137+ '';
138+ };
139+
140+ bazelRC = writeTextFile {
141+ name = "bazel-rc";
142+ text = ''
143+ startup --server_javabase=${runJdk}
144+
145+ # Can't use 'common'; https://github.com/bazelbuild/bazel/issues/3054
146+ # Most commands inherit from 'build' anyway.
147+ build --distdir=${distDir}
148+ fetch --distdir=${distDir}
149+ query --distdir=${distDir}
150+
151+ build --override_repository=${remote_java_tools.name}=${remote_java_tools}
152+ fetch --override_repository=${remote_java_tools.name}=${remote_java_tools}
153+ query --override_repository=${remote_java_tools.name}=${remote_java_tools}
154+
155+ # Provide a default java toolchain, this will be the same as ${runJdk}
156+ build --host_javabase='@local_jdk//:jdk'
157+
158+ # load default location for the system wide configuration
159+ try-import /etc/bazel.bazelrc
160+ '';
161+ };
162+
163+in
164+stdenv.mkDerivation rec {
165+ pname = "bazel";
166+ inherit version;
167+
168+ meta = with lib; {
169+ homepage = "https://github.com/bazelbuild/bazel/";
170+ description = "Build tool that builds code quickly and reliably";
171+ license = licenses.asl20;
172+ maintainers = [ maintainers.mboes ];
173+ inherit platforms;
174+ };
175+
176+ inherit src;
177+ inherit sourceRoot;
178+ patches = [
179+ # On Darwin, the last argument to gcc is coming up as an empty string. i.e: ''
180+ # This is breaking the build of any C target. This patch removes the last
181+ # argument if it's found to be an empty string.
182+ ../trim-last-argument-to-gcc-if-empty.patch
183+
184+ # On Darwin, using clang 6 to build fails because of a linker error (see #105573),
185+ # but using clang 7 fails because libarclite_macosx.a cannot be found when linking
186+ # the xcode_locator tool.
187+ # This patch removes using the -fobjc-arc compiler option and makes the code
188+ # compile without automatic reference counting. Caveat: this leaks memory, but
189+ # we accept this fact because xcode_locator is only a short-lived process used during the build.
190+ ./no-arc.patch
191+
192+ # --experimental_strict_action_env (which may one day become the default
193+ # see bazelbuild/bazel#2574) hardcodes the default
194+ # action environment to a non hermetic value (e.g. "/usr/local/bin").
195+ # This is non hermetic on non-nixos systems. On NixOS, bazel cannot find the required binaries.
196+ # So we are replacing this bazel paths by defaultShellPath,
197+ # improving hermeticity and making it work in nixos.
198+ (substituteAll {
199+ src = ../strict_action_env.patch;
200+ strictActionEnvPatch = defaultShellPath;
201+ })
202+
203+ # bazel reads its system bazelrc in /etc
204+ # override this path to a builtin one
205+ (substituteAll {
206+ src = ../bazel_rc.patch;
207+ bazelSystemBazelRCPath = bazelRC;
208+ })
209+ ] ++ lib.optional enableNixHacks ../nix-hacks.patch;
210+
211+
212+ # Additional tests that check bazel’s functionality. Execute
213+ #
214+ # nix-build . -A bazel.tests
215+ #
216+ # in the nixpkgs checkout root to exercise them locally.
217+ passthru.tests =
218+ let
219+ runLocal = name: attrs: script:
220+ let
221+ attrs' = removeAttrs attrs [ "buildInputs" ];
222+ buildInputs = [ python3 ] ++ (attrs.buildInputs or []);
223+ in
224+ runCommandCC name ({
225+ inherit buildInputs;
226+ preferLocalBuild = true;
227+ meta.platforms = platforms;
228+ } // attrs') script;
229+
230+ # bazel wants to extract itself into $install_dir/install every time it runs,
231+ # so let’s do that only once.
232+ extracted = bazelPkg:
233+ let install_dir =
234+ # `install_base` field printed by `bazel info`, minus the hash.
235+ # yes, this path is kinda magic. Sorry.
236+ "$HOME/.cache/bazel/_bazel_nixbld";
237+ in runLocal "bazel-extracted-homedir" { passthru.install_dir = install_dir; } ''
238+ export HOME=$(mktemp -d)
239+ touch WORKSPACE # yeah, everything sucks
240+ install_base="$(${bazelPkg}/bin/bazel info | grep install_base)"
241+ # assert it’s actually below install_dir
242+ [[ "$install_base" =~ ${install_dir} ]] \
243+ || (echo "oh no! $install_base but we are \
244+ trying to copy ${install_dir} to $out instead!"; exit 1)
245+ cp -R ${install_dir} $out
246+ '';
247+
248+ bazelTest = { name, bazelScript, workspaceDir, bazelPkg, buildInputs ? [] }:
249+ let
250+ be = extracted bazelPkg;
251+ in runLocal name { inherit buildInputs; } (
252+ # skip extraction caching on Darwin, because nobody knows how Darwin works
253+ (lib.optionalString (!stdenv.hostPlatform.isDarwin) ''
254+ # set up home with pre-unpacked bazel
255+ export HOME=$(mktemp -d)
256+ mkdir -p ${be.install_dir}
257+ cp -R ${be}/install ${be.install_dir}
258+
259+ # https://stackoverflow.com/questions/47775668/bazel-how-to-skip-corrupt-installation-on-centos6
260+ # Bazel checks whether the mtime of the install dir files
261+ # is >9 years in the future, otherwise it extracts itself again.
262+ # see PosixFileMTime::IsUntampered in src/main/cpp/util
263+ # What the hell bazel.
264+ ${lr}/bin/lr -0 -U ${be.install_dir} | ${xe}/bin/xe -N0 -0 touch --date="9 years 6 months" {}
265+ '')
266+ +
267+ ''
268+ # Note https://github.com/bazelbuild/bazel/issues/5763#issuecomment-456374609
269+ # about why to create a subdir for the workspace.
270+ cp -r ${workspaceDir} wd && chmod u+w wd && cd wd
271+
272+ ${bazelScript}
273+
274+ touch $out
275+ '');
276+
277+ bazelWithNixHacks = bazel_self.override { enableNixHacks = true; };
278+
279+ bazel-examples = fetchFromGitHub {
280+ owner = "bazelbuild";
281+ repo = "examples";
282+ rev = "4183fc709c26a00366665e2d60d70521dc0b405d";
283+ sha256 = "1mm4awx6sa0myiz9j4hwp71rpr7yh8vihf3zm15n2ii6xb82r31k";
284+ };
285+
286+ in (if !stdenv.hostPlatform.isDarwin then {
287+ # `extracted` doesn’t work on darwin
288+ shebang = callPackage ../shebang-test.nix { inherit runLocal extracted bazelTest distDir; };
289+ } else {}) // {
290+ bashTools = callPackage ../bash-tools-test.nix { inherit runLocal bazelTest distDir; };
291+ cpp = callPackage ../cpp-test.nix { inherit runLocal bazelTest bazel-examples distDir; };
292+ java = callPackage ../java-test.nix { inherit runLocal bazelTest bazel-examples distDir; };
293+ protobuf = callPackage ../protobuf-test.nix { inherit runLocal bazelTest distDir; };
294+ pythonBinPath = callPackage ../python-bin-path-test.nix { inherit runLocal bazelTest distDir; };
295+
296+ bashToolsWithNixHacks = callPackage ../bash-tools-test.nix { inherit runLocal bazelTest distDir; bazel = bazelWithNixHacks; };
297+
298+ cppWithNixHacks = callPackage ../cpp-test.nix { inherit runLocal bazelTest bazel-examples distDir; bazel = bazelWithNixHacks; };
299+ javaWithNixHacks = callPackage ../java-test.nix { inherit runLocal bazelTest bazel-examples distDir; bazel = bazelWithNixHacks; };
300+ protobufWithNixHacks = callPackage ../protobuf-test.nix { inherit runLocal bazelTest distDir; bazel = bazelWithNixHacks; };
301+ pythonBinPathWithNixHacks = callPackage ../python-bin-path-test.nix { inherit runLocal bazelTest distDir; bazel = bazelWithNixHacks; };
302+
303+ # downstream packages using buildBazelPackage
304+ # fixed-output hashes of the fetch phase need to be spot-checked manually
305+ downstream = recurseIntoAttrs ({
306+ inherit bazel-watcher;
307+ }
308+ # dm-sonnet is only packaged for linux
309+ // (lib.optionalAttrs stdenv.isLinux {
310+ # TODO(timokau) dm-sonnet is broken currently
311+ # dm-sonnet-linux = python3.pkgs.dm-sonnet;
312+ }));
313+ };
314+
315+ src_for_updater = stdenv.mkDerivation rec {
316+ name = "updater-sources";
317+ inherit src;
318+ buildInputs = [ unzip ];
319+ inherit sourceRoot;
320+ installPhase = ''
321+ cp -r . "$out"
322+ '';
323+ };
324+ # update the list of workspace dependencies
325+ passthru.updater = writeScript "update-bazel-deps.sh" ''
326+ #!${runtimeShell}
327+ (cd "${src_for_updater}" &&
328+ BAZEL_USE_CPP_ONLY_TOOLCHAIN=1 \
329+ "${bazel_3}"/bin/bazel \
330+ query 'kind(http_archive, //external:all) + kind(http_file, //external:all) + kind(distdir_tar, //external:all) + kind(git_repository, //external:all)' \
331+ --loading_phase_threads=1 \
332+ --output build) \
333+ | "${python3}"/bin/python3 "${./update-srcDeps.py}" \
334+ "${builtins.toString ./src-deps.json}"
335+ '';
336+
337+ # Necessary for the tests to pass on Darwin with sandbox enabled.
338+ # Bazel starts a local server and needs to bind a local address.
339+ __darwinAllowLocalNetworking = true;
340+
341+ # Bazel expects several utils to be available in Bash even without PATH. Hence this hack.
342+ customBash = writeCBin "bash" ''
343+ #include <stdio.h>
344+ #include <stdlib.h>
345+ #include <string.h>
346+ #include <unistd.h>
347+
348+ extern char **environ;
349+
350+ int main(int argc, char *argv[]) {
351+ char *path = getenv("PATH");
352+ char *pathToAppend = "${defaultShellPath}";
353+ char *newPath;
354+ if (path != NULL) {
355+ int length = strlen(path) + 1 + strlen(pathToAppend) + 1;
356+ newPath = malloc(length * sizeof(char));
357+ snprintf(newPath, length, "%s:%s", path, pathToAppend);
358+ } else {
359+ newPath = pathToAppend;
360+ }
361+ setenv("PATH", newPath, 1);
362+ execve("${bash}/bin/bash", argv, environ);
363+ return 0;
364+ }
365+ '';
366+
367+ postPatch = let
368+
369+ darwinPatches = ''
370+ bazelLinkFlags () {
371+ eval set -- "$NIX_LDFLAGS"
372+ local flag
373+ for flag in "$@"; do
374+ printf ' -Wl,%s' "$flag"
375+ done
376+ }
377+
378+ # Disable Bazel's Xcode toolchain detection which would configure compilers
379+ # and linkers from Xcode instead of from PATH
380+ export BAZEL_USE_CPP_ONLY_TOOLCHAIN=1
381+
382+ # Explicitly configure gcov since we don't have it on Darwin, so autodetection fails
383+ export GCOV=${coreutils}/bin/false
384+
385+ # Framework search paths aren't added by bintools hook
386+ # https://github.com/NixOS/nixpkgs/pull/41914
387+ export NIX_LDFLAGS+=" -F${CoreFoundation}/Library/Frameworks -F${CoreServices}/Library/Frameworks -F${Foundation}/Library/Frameworks"
388+
389+ # libcxx includes aren't added by libcxx hook
390+ # https://github.com/NixOS/nixpkgs/pull/41589
391+ export NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE -isystem ${libcxx}/include/c++/v1"
392+
393+ # don't use system installed Xcode to run clang, use Nix clang instead
394+ sed -i -E "s;/usr/bin/xcrun (--sdk macosx )?clang;${stdenv.cc}/bin/clang $NIX_CFLAGS_COMPILE $(bazelLinkFlags) -framework CoreFoundation;g" \
395+ scripts/bootstrap/compile.sh \
396+ src/tools/xcode/realpath/BUILD \
397+ src/tools/xcode/stdredirect/BUILD \
398+ tools/osx/BUILD
399+
400+ substituteInPlace scripts/bootstrap/compile.sh --replace ' -mmacosx-version-min=10.9' ""
401+
402+ # nixpkgs's libSystem cannot use pthread headers directly, must import GCD headers instead
403+ sed -i -e "/#include <pthread\/spawn.h>/i #include <dispatch/dispatch.h>" src/main/cpp/blaze_util_darwin.cc
404+
405+ # clang installed from Xcode has a compatibility wrapper that forwards
406+ # invocations of gcc to clang, but vanilla clang doesn't
407+ sed -i -e 's;_find_generic(repository_ctx, "gcc", "CC", overriden_tools);_find_generic(repository_ctx, "clang", "CC", overriden_tools);g' tools/cpp/unix_cc_configure.bzl
408+
409+ sed -i -e 's;/usr/bin/libtool;${cctools}/bin/libtool;g' tools/cpp/unix_cc_configure.bzl
410+ wrappers=( tools/cpp/osx_cc_wrapper.sh tools/cpp/osx_cc_wrapper.sh.tpl )
411+ for wrapper in "''${wrappers[@]}"; do
412+ sed -i -e "s,/usr/bin/install_name_tool,${cctools}/bin/install_name_tool,g" $wrapper
413+ done
414+ '';
415+
416+ genericPatches = ''
417+ # Substitute j2objc and objc wrapper's python shebang to plain python path.
418+ # These scripts explicitly depend on Python 2.7, hence we use python27.
419+ # See also `postFixup` where python27 is added to $out/nix-support
420+ substituteInPlace tools/j2objc/j2objc_header_map.py --replace "$!/usr/bin/python2.7" "#!${python27}/bin/python"
421+ substituteInPlace tools/j2objc/j2objc_wrapper.py --replace "$!/usr/bin/python2.7" "#!${python27}/bin/python"
422+ substituteInPlace tools/objc/j2objc_dead_code_pruner.py --replace "$!/usr/bin/python2.7" "#!${python27}/bin/python"
423+
424+ # md5sum is part of coreutils
425+ sed -i 's|/sbin/md5|md5sum|' \
426+ src/BUILD
427+
428+ # replace initial value of pythonShebang variable in BazelPythonSemantics.java
429+ substituteInPlace src/main/java/com/google/devtools/build/lib/bazel/rules/python/BazelPythonSemantics.java \
430+ --replace '"#!/usr/bin/env " + pythonExecutableName' "\"#!${python3}/bin/python\""
431+
432+ # substituteInPlace is rather slow, so prefilter the files with grep
433+ grep -rlZ /bin src/main/java/com/google/devtools | while IFS="" read -r -d "" path; do
434+ # If you add more replacements here, you must change the grep above!
435+ # Only files containing /bin are taken into account.
436+ # We default to python3 where possible. See also `postFixup` where
437+ # python3 is added to $out/nix-support
438+ substituteInPlace "$path" \
439+ --replace /bin/bash ${customBash}/bin/bash \
440+ --replace "/usr/bin/env bash" ${customBash}/bin/bash \
441+ --replace "/usr/bin/env python" ${python3}/bin/python \
442+ --replace /usr/bin/env ${coreutils}/bin/env \
443+ --replace /bin/true ${coreutils}/bin/true
444+ done
445+
446+ # bazel test runner include references to /bin/bash
447+ substituteInPlace tools/build_rules/test_rules.bzl \
448+ --replace /bin/bash ${customBash}/bin/bash
449+
450+ for i in $(find tools/cpp/ -type f)
451+ do
452+ substituteInPlace $i \
453+ --replace /bin/bash ${customBash}/bin/bash
454+ done
455+
456+ # Fixup scripts that generate scripts. Not fixed up by patchShebangs below.
457+ substituteInPlace scripts/bootstrap/compile.sh \
458+ --replace /bin/bash ${customBash}/bin/bash
459+
460+ # add nix environment vars to .bazelrc
461+ cat >> .bazelrc <<EOF
462+ # Limit the resources Bazel is allowed to use during the build to 1/2 the
463+ # available RAM and 3/4 the available CPU cores. This should help avoid
464+ # overwhelming the build machine.
465+ build --local_ram_resources=HOST_RAM*.5
466+ build --local_cpu_resources=HOST_CPUS*.75
467+
468+ build --distdir=${distDir}
469+ fetch --distdir=${distDir}
470+ build --copt="$(echo $NIX_CFLAGS_COMPILE | sed -e 's/ /" --copt="/g')"
471+ build --host_copt="$(echo $NIX_CFLAGS_COMPILE | sed -e 's/ /" --host_copt="/g')"
472+ build --linkopt="$(echo $(< ${stdenv.cc}/nix-support/libcxx-ldflags) | sed -e 's/ /" --linkopt="/g')"
473+ build --host_linkopt="$(echo $(< ${stdenv.cc}/nix-support/libcxx-ldflags) | sed -e 's/ /" --host_linkopt="/g')"
474+ build --linkopt="-Wl,$(echo $NIX_LDFLAGS | sed -e 's/ /" --linkopt="-Wl,/g')"
475+ build --host_linkopt="-Wl,$(echo $NIX_LDFLAGS | sed -e 's/ /" --host_linkopt="-Wl,/g')"
476+ build --host_javabase='@local_jdk//:jdk'
477+ build --host_java_toolchain='${javaToolchain}'
478+ build --verbose_failures
479+ EOF
480+
481+ # add the same environment vars to compile.sh
482+ sed -e "/\$command \\\\$/a --copt=\"$(echo $NIX_CFLAGS_COMPILE | sed -e 's/ /" --copt=\"/g')\" \\\\" \
483+ -e "/\$command \\\\$/a --host_copt=\"$(echo $NIX_CFLAGS_COMPILE | sed -e 's/ /" --host_copt=\"/g')\" \\\\" \
484+ -e "/\$command \\\\$/a --linkopt=\"$(echo $(< ${stdenv.cc}/nix-support/libcxx-ldflags) | sed -e 's/ /" --linkopt=\"/g')\" \\\\" \
485+ -e "/\$command \\\\$/a --host_linkopt=\"$(echo $(< ${stdenv.cc}/nix-support/libcxx-ldflags) | sed -e 's/ /" --host_linkopt=\"/g')\" \\\\" \
486+ -e "/\$command \\\\$/a --linkopt=\"-Wl,$(echo $NIX_LDFLAGS | sed -e 's/ /" --linkopt=\"-Wl,/g')\" \\\\" \
487+ -e "/\$command \\\\$/a --host_linkopt=\"-Wl,$(echo $NIX_LDFLAGS | sed -e 's/ /" --host_linkopt=\"-Wl,/g')\" \\\\" \
488+ -e "/\$command \\\\$/a --host_javabase='@local_jdk//:jdk' \\\\" \
489+ -e "/\$command \\\\$/a --host_java_toolchain='${javaToolchain}' \\\\" \
490+ -e "/\$command \\\\$/a --verbose_failures \\\\" \
491+ -i scripts/bootstrap/compile.sh
492+
493+ # This is necessary to avoid:
494+ # "error: no visible @interface for 'NSDictionary' declares the selector
495+ # 'initWithContentsOfURL:error:'"
496+ # This can be removed when the apple_sdk is upgraded beyond 10.13+
497+ sed -i '/initWithContentsOfURL:versionPlistUrl/ {
498+ N
499+ s/error:nil\];/\];/
500+ }' tools/osx/xcode_locator.m
501+
502+ # append the PATH with defaultShellPath in tools/bash/runfiles/runfiles.bash
503+ echo "PATH=\$PATH:${defaultShellPath}" >> runfiles.bash.tmp
504+ cat tools/bash/runfiles/runfiles.bash >> runfiles.bash.tmp
505+ mv runfiles.bash.tmp tools/bash/runfiles/runfiles.bash
506+
507+ patchShebangs .
508+ '';
509+ in lib.optionalString stdenv.hostPlatform.isDarwin darwinPatches
510+ + genericPatches;
511+
512+ buildInputs = [
513+ buildJdk
514+ python3
515+ ];
516+
517+ # when a command can’t be found in a bazel build, you might also
518+ # need to add it to `defaultShellPath`.
519+ nativeBuildInputs = [
520+ installShellFiles
521+ zip
522+ python3
523+ unzip
524+ makeWrapper
525+ which
526+ customBash
527+ ] ++ lib.optionals (stdenv.isDarwin) [ cctools libcxx CoreFoundation CoreServices Foundation ];
528+
529+ # Bazel makes extensive use of symlinks in the WORKSPACE.
530+ # This causes problems with infinite symlinks if the build output is in the same location as the
531+ # Bazel WORKSPACE. This is why before executing the build, the source code is moved into a
532+ # subdirectory.
533+ # Failing to do this causes "infinite symlink expansion detected"
534+ preBuildPhases = ["preBuildPhase"];
535+ preBuildPhase = ''
536+ mkdir bazel_src
537+ shopt -s dotglob extglob
538+ mv !(bazel_src) bazel_src
539+ '';
540+ # Needed to build fish completion
541+ propagatedBuildInputs = [ python3.pkgs.absl-py ];
542+ buildPhase = ''
543+ # Increasing memory during compilation might be necessary.
544+ # export BAZEL_JAVAC_OPTS="-J-Xmx2g -J-Xms200m"
545+
546+ # If EMBED_LABEL isn't set, it'd be auto-detected from CHANGELOG.md
547+ # and `git rev-parse --short HEAD` which would result in
548+ # "3.7.0- (@non-git)" due to non-git build and incomplete changelog.
549+ # Actual bazel releases use scripts/release/common.sh which is based
550+ # on branch/tag information which we don't have with tarball releases.
551+ # Note that .bazelversion is always correct and is based on bazel-*
552+ # executable name, version checks should work fine
553+ export EMBED_LABEL="${version}- (@non-git)"
554+ ${customBash}/bin/bash ./bazel_src/compile.sh
555+ ./bazel_src/scripts/generate_bash_completion.sh \
556+ --bazel=./bazel_src/output/bazel \
557+ --output=./bazel_src/output/bazel-complete.bash \
558+ --prepend=./bazel_src/scripts/bazel-complete-header.bash \
559+ --prepend=./bazel_src/scripts/bazel-complete-template.bash
560+ ${python3}/bin/python3 ./bazel_src/scripts/generate_fish_completion.py \
561+ --bazel=./bazel_src/output/bazel \
562+ --output=./bazel_src/output/bazel-complete.fish
563+ '';
564+
565+ installPhase = ''
566+ mkdir -p $out/bin
567+
568+ # official wrapper scripts that searches for $WORKSPACE_ROOT/tools/bazel
569+ # if it can’t find something in tools, it calls $out/bin/bazel-{version}-{os_arch}
570+ # The binary _must_ exist with this naming if your project contains a .bazelversion
571+ # file.
572+ cp ./bazel_src/scripts/packages/bazel.sh $out/bin/bazel
573+ mv ./bazel_src/output/bazel $out/bin/bazel-${version}-${system}-${arch}
574+
575+ # shell completion files
576+ installShellCompletion --bash \
577+ --name bazel.bash \
578+ ./bazel_src/output/bazel-complete.bash
579+ installShellCompletion --zsh \
580+ --name _bazel \
581+ ./bazel_src/scripts/zsh_completion/_bazel
582+ installShellCompletion --fish \
583+ --name bazel.fish \
584+ ./bazel_src/output/bazel-complete.fish
585+ '';
586+
587+ doInstallCheck = true;
588+ installCheckPhase = ''
589+ export TEST_TMPDIR=$(pwd)
590+
591+ hello_test () {
592+ $out/bin/bazel test \
593+ --test_output=errors \
594+ --java_toolchain='${javaToolchain}' \
595+ examples/cpp:hello-success_test \
596+ examples/java-native/src/test/java/com/example/myproject:hello
597+ }
598+
599+ cd ./bazel_src
600+
601+ # test whether $WORKSPACE_ROOT/tools/bazel works
602+
603+ mkdir -p tools
604+ cat > tools/bazel <<"EOF"
605+ #!${runtimeShell} -e
606+ exit 1
607+ EOF
608+ chmod +x tools/bazel
609+
610+ # first call should fail if tools/bazel is used
611+ ! hello_test
612+
613+ cat > tools/bazel <<"EOF"
614+ #!${runtimeShell} -e
615+ exec "$BAZEL_REAL" "$@"
616+ EOF
617+
618+ # second call succeeds because it defers to $out/bin/bazel-{version}-{os_arch}
619+ hello_test
620+ '';
621+
622+ # Save paths to hardcoded dependencies so Nix can detect them.
623+ postFixup = ''
624+ mkdir -p $out/nix-support
625+ echo "${customBash} ${defaultShellPath}" >> $out/nix-support/depends
626+ # The templates get tar’d up into a .jar,
627+ # so nix can’t detect python is needed in the runtime closure
628+ # Some of the scripts explicitly depend on Python 2.7. Otherwise, we
629+ # default to using python3. Therefore, both python27 and python3 are
630+ # runtime dependencies.
631+ echo "${python27}" >> $out/nix-support/depends
632+ echo "${python3}" >> $out/nix-support/depends
633+ '' + lib.optionalString stdenv.isDarwin ''
634+ echo "${cctools}" >> $out/nix-support/depends
635+ '';
636+
637+ dontStrip = true;
638+ dontPatchELF = true;
639+}
pkgs/development/tools/build-managers/bazel/bazel_4/no-arc.patchnew file+34
@@ -0,0 +1,34 @@
1+--- a/tools/osx/xcode_locator.m 2020-12-10 13:27:29.000000000 +0100
2++++ b/tools/osx/xcode_locator.m 2021-02-01 09:09:32.159557051 +0100
3+@@ -21,10 +21,6 @@
4+ // 6,6.4,6.4.1 = 6.4.1
5+ // 6.3,6.3.0 = 6.3
6+
7+-#if !defined(__has_feature) || !__has_feature(objc_arc)
8+-#error "This file requires ARC support."
9+-#endif
10+-
11+ #import <CoreServices/CoreServices.h>
12+ #import <Foundation/Foundation.h>
13+
14+--- a/tools/osx/xcode_configure.bzl 1980-01-01 01:00:00.000000000 +0100
15++++ b/tools/osx/xcode_configure.bzl 2021-02-01 09:36:57.773418444 +0100
16+@@ -123,7 +123,6 @@
17+ "macosx",
18+ "clang",
19+ "-mmacosx-version-min=10.9",
20+- "-fobjc-arc",
21+ "-framework",
22+ "CoreServices",
23+ "-framework",
24+--- a/tools/osx/BUILD 2021-02-01 11:01:02.191659553 +0100
25++++ b/tools/osx/BUILD 2021-02-01 11:04:29.735071019 +0100
26+@@ -27,7 +27,7 @@
27+ ])
28+
29+ DARWIN_XCODE_LOCATOR_COMPILE_COMMAND = """
30+- /usr/bin/xcrun --sdk macosx clang -mmacosx-version-min=10.9 -fobjc-arc -framework CoreServices \
31++ /usr/bin/xcrun --sdk macosx clang -mmacosx-version-min=10.9 -framework CoreServices \
32+ -framework Foundation -o $@ $<
33+ """
34+
pkgs/development/tools/build-managers/bazel/bazel_4/src-deps.jsonnew file+1498
@@ -0,0 +1,1498 @@
1+{
2+ "1.25.0.zip": {
3+ "name": "1.25.0.zip",
4+ "sha256": "c78be58f5e0a29a04686b628cf54faaee0094322ae0ac99da5a8a8afca59a647",
5+ "urls": [
6+ "https://mirror.bazel.build/github.com/bazelbuild/rules_sass/archive/1.25.0.zip",
7+ "https://github.com/bazelbuild/rules_sass/archive/1.25.0.zip"
8+ ]
9+ },
10+ "1ef781ced3b1443dca3ed05dec1989eca1a4e1cd.tar.gz": {
11+ "name": "1ef781ced3b1443dca3ed05dec1989eca1a4e1cd.tar.gz",
12+ "sha256": "5a725b777976b77aa122b707d1b6f0f39b6020f66cd427bb111a585599c857b1",
13+ "urls": [
14+ "https://mirror.bazel.build/github.com/bazelbuild/stardoc/archive/1ef781ced3b1443dca3ed05dec1989eca1a4e1cd.tar.gz",
15+ "https://github.com/bazelbuild/stardoc/archive/1ef781ced3b1443dca3ed05dec1989eca1a4e1cd.tar.gz"
16+ ]
17+ },
18+ "382d5afc60e05470c23e8de19b19fc5ad231e732.tar.gz": {
19+ "name": "382d5afc60e05470c23e8de19b19fc5ad231e732.tar.gz",
20+ "sha256": "7992217989f3156f8109931c1fc6db3434b7414957cb82371552377beaeb9d6c",
21+ "urls": [
22+ "https://mirror.bazel.build/github.com/protocolbuffers/upb/archive/382d5afc60e05470c23e8de19b19fc5ad231e732.tar.gz",
23+ "https://github.com/protocolbuffers/upb/archive/382d5afc60e05470c23e8de19b19fc5ad231e732.tar.gz"
24+ ]
25+ },
26+ "46993efdd33b73649796c5fc5c9efb193ae19d51.zip": {
27+ "name": "46993efdd33b73649796c5fc5c9efb193ae19d51.zip",
28+ "sha256": "66184688debeeefcc2a16a2f80b03f514deac8346fe888fb7e691a52c023dd88",
29+ "urls": [
30+ "https://mirror.bazel.build/github.com/bazelbuild/platforms/archive/46993efdd33b73649796c5fc5c9efb193ae19d51.zip",
31+ "https://github.com/bazelbuild/platforms/archive/46993efdd33b73649796c5fc5c9efb193ae19d51.zip"
32+ ]
33+ },
34+ "7cf3cefd652008d0a64a419c34c13bdca6c8f178.zip": {
35+ "name": "7cf3cefd652008d0a64a419c34c13bdca6c8f178.zip",
36+ "sha256": "bc81f1ba47ef5cc68ad32225c3d0e70b8c6f6077663835438da8d5733f917598",
37+ "urls": [
38+ "https://mirror.bazel.build/github.com/bazelbuild/rules_java/archive/7cf3cefd652008d0a64a419c34c13bdca6c8f178.zip",
39+ "https://github.com/bazelbuild/rules_java/archive/7cf3cefd652008d0a64a419c34c13bdca6c8f178.zip"
40+ ]
41+ },
42+ "7e4afce6fe62dbff0a4a03450143146f9f2d7488.tar.gz": {
43+ "name": "7e4afce6fe62dbff0a4a03450143146f9f2d7488.tar.gz",
44+ "sha256": "8e7d59a5b12b233be5652e3d29f42fba01c7cbab09f6b3a8d0a57ed6d1e9a0da",
45+ "urls": [
46+ "https://mirror.bazel.build/github.com/bazelbuild/rules_proto/archive/7e4afce6fe62dbff0a4a03450143146f9f2d7488.tar.gz",
47+ "https://github.com/bazelbuild/rules_proto/archive/7e4afce6fe62dbff0a4a03450143146f9f2d7488.tar.gz"
48+ ]
49+ },
50+ "aecba11114cf1fac5497aeb844b6966106de3eb6.tar.gz": {
51+ "name": "aecba11114cf1fac5497aeb844b6966106de3eb6.tar.gz",
52+ "sha256": "9f385e146410a8150b6f4cb1a57eab7ec806ced48d427554b1e754877ff26c3e",
53+ "urls": [
54+ "https://mirror.bazel.build/github.com/google/re2/archive/aecba11114cf1fac5497aeb844b6966106de3eb6.tar.gz",
55+ "https://github.com/google/re2/archive/aecba11114cf1fac5497aeb844b6966106de3eb6.tar.gz"
56+ ]
57+ },
58+ "android_tools": {
59+ "name": "android_tools",
60+ "sha256": "ea5c0589a01e2a9f43c20e5c145d3530e3b3bdbe7322789bc5da38d0ca49b837",
61+ "url": "https://mirror.bazel.build/bazel_android_tools/android_tools_pkg-0.19.0rc3.tar.gz"
62+ },
63+ "android_tools_for_testing": {
64+ "name": "android_tools_for_testing",
65+ "patch_cmds": [
66+ "test -f BUILD && chmod u+w BUILD || true",
67+ "echo >> BUILD",
68+ "echo 'exports_files([\"WORKSPACE\"], visibility = [\"//visibility:public\"])' >> BUILD"
69+ ],
70+ "patch_cmds_win": [
71+ "Add-Content -Path BUILD -Value \"`nexports_files([`\"WORKSPACE`\"], visibility = [`\"//visibility:public`\"])`n\" -Force"
72+ ],
73+ "sha256": "ea5c0589a01e2a9f43c20e5c145d3530e3b3bdbe7322789bc5da38d0ca49b837",
74+ "url": "https://mirror.bazel.build/bazel_android_tools/android_tools_pkg-0.19.0rc3.tar.gz"
75+ },
76+ "android_tools_pkg-0.19.0rc3.tar.gz": {
77+ "name": "android_tools_pkg-0.19.0rc3.tar.gz",
78+ "sha256": "ea5c0589a01e2a9f43c20e5c145d3530e3b3bdbe7322789bc5da38d0ca49b837",
79+ "urls": [
80+ "https://mirror.bazel.build/bazel_android_tools/android_tools_pkg-0.19.0rc3.tar.gz"
81+ ]
82+ },
83+ "b1c40e1de81913a3c40e5948f78719c28152486d.zip": {
84+ "name": "b1c40e1de81913a3c40e5948f78719c28152486d.zip",
85+ "sha256": "d0c573b94a6ef20ef6ff20154a23d0efcb409fb0e1ff0979cec318dfe42f0cdd",
86+ "urls": [
87+ "https://mirror.bazel.build/github.com/bazelbuild/rules_cc/archive/b1c40e1de81913a3c40e5948f78719c28152486d.zip",
88+ "https://github.com/bazelbuild/rules_cc/archive/b1c40e1de81913a3c40e5948f78719c28152486d.zip"
89+ ]
90+ },
91+ "bazel-skylib-1.0.3.tar.gz": {
92+ "name": "bazel-skylib-1.0.3.tar.gz",
93+ "sha256": "1c531376ac7e5a180e0237938a2536de0c54d93f5c278634818e0efc952dd56c",
94+ "urls": [
95+ "https://mirror.bazel.build/github.com/bazelbuild/bazel-skylib/releases/download/1.0.3/bazel-skylib-1.0.3.tar.gz",
96+ "https://github.com/bazelbuild/bazel-skylib/releases/download/1.0.3/bazel-skylib-1.0.3.tar.gz"
97+ ]
98+ },
99+ "bazel-toolchains-3.1.0.tar.gz": {
100+ "name": "bazel-toolchains-3.1.0.tar.gz",
101+ "sha256": "726b5423e1c7a3866a3a6d68e7123b4a955e9fcbe912a51e0f737e6dab1d0af2",
102+ "urls": [
103+ "https://mirror.bazel.build/github.com/bazelbuild/bazel-toolchains/releases/download/3.1.0/bazel-toolchains-3.1.0.tar.gz",
104+ "https://github.com/bazelbuild/bazel-toolchains/releases/download/3.1.0/bazel-toolchains-3.1.0.tar.gz"
105+ ]
106+ },
107+ "bazel_j2objc": {
108+ "name": "bazel_j2objc",
109+ "sha256": "8d3403b5b7db57e347c943d214577f6879e5b175c2b59b7e075c0b6453330e9b",
110+ "strip_prefix": "j2objc-2.5",
111+ "urls": [
112+ "https://mirror.bazel.build/github.com/google/j2objc/releases/download/2.5/j2objc-2.5.zip",
113+ "https://github.com/google/j2objc/releases/download/2.5/j2objc-2.5.zip"
114+ ]
115+ },
116+ "bazel_skylib": {
117+ "name": "bazel_skylib",
118+ "patch_cmds": [
119+ "test -f BUILD && chmod u+w BUILD || true",
120+ "echo >> BUILD",
121+ "echo 'exports_files([\"WORKSPACE\"], visibility = [\"//visibility:public\"])' >> BUILD"
122+ ],
123+ "patch_cmds_win": [
124+ "Add-Content -Path BUILD -Value \"`nexports_files([`\"WORKSPACE`\"], visibility = [`\"//visibility:public`\"])`n\" -Force"
125+ ],
126+ "sha256": "1c531376ac7e5a180e0237938a2536de0c54d93f5c278634818e0efc952dd56c",
127+ "urls": [
128+ "https://mirror.bazel.build/github.com/bazelbuild/bazel-skylib/releases/download/1.0.3/bazel-skylib-1.0.3.tar.gz",
129+ "https://github.com/bazelbuild/bazel-skylib/releases/download/1.0.3/bazel-skylib-1.0.3.tar.gz"
130+ ]
131+ },
132+ "bazel_toolchains": {
133+ "name": "bazel_toolchains",
134+ "patch_cmds": [
135+ "test -f BUILD && chmod u+w BUILD || true",
136+ "echo >> BUILD",
137+ "echo 'exports_files([\"WORKSPACE\"], visibility = [\"//visibility:public\"])' >> BUILD"
138+ ],
139+ "patch_cmds_win": [
140+ "Add-Content -Path BUILD -Value \"`nexports_files([`\"WORKSPACE`\"], visibility = [`\"//visibility:public`\"])`n\" -Force"
141+ ],
142+ "sha256": "726b5423e1c7a3866a3a6d68e7123b4a955e9fcbe912a51e0f737e6dab1d0af2",
143+ "strip_prefix": "bazel-toolchains-3.1.0",
144+ "urls": [
145+ "https://mirror.bazel.build/github.com/bazelbuild/bazel-toolchains/releases/download/3.1.0/bazel-toolchains-3.1.0.tar.gz",
146+ "https://github.com/bazelbuild/bazel-toolchains/releases/download/3.1.0/bazel-toolchains-3.1.0.tar.gz"
147+ ]
148+ },
149+ "bazel_website": {
150+ "build_file_content": "\nexports_files([\"_sass/style.scss\"])\n",
151+ "name": "bazel_website",
152+ "sha256": "a5f531dd1d62e6947dcfc279656ffc2fdf6f447c163914c5eabf7961b4cb6eb4",
153+ "strip_prefix": "bazel-website-c174fa288aa079b68416d2ce2cc97268fa172f42",
154+ "urls": [
155+ "https://github.com/bazelbuild/bazel-website/archive/c174fa288aa079b68416d2ce2cc97268fa172f42.tar.gz"
156+ ]
157+ },
158+ "boringssl": {
159+ "generator_function": "grpc_deps",
160+ "generator_name": "boringssl",
161+ "name": "boringssl",
162+ "sha256": "81333e496d7b74a60aa6fa622c028ba382a0a6b9c815cc6ccb221042383b9a9b",
163+ "strip_prefix": "boringssl-412844d75b14b9090b58423fd5f5ed8c2fd80212",
164+ "urls": [
165+ "https://storage.googleapis.com/grpc-bazel-mirror/github.com/google/boringssl/archive/412844d75b14b9090b58423fd5f5ed8c2fd80212.tar.gz",
166+ "https://github.com/google/boringssl/archive/412844d75b14b9090b58423fd5f5ed8c2fd80212.tar.gz"
167+ ]
168+ },
169+ "build_bazel_apple_support": {
170+ "generator_function": "grpc_deps",
171+ "generator_name": "build_bazel_apple_support",
172+ "name": "build_bazel_apple_support",
173+ "sha256": "122ebf7fe7d1c8e938af6aeaee0efe788a3a2449ece5a8d6a428cb18d6f88033",
174+ "urls": [
175+ "https://storage.googleapis.com/grpc-bazel-mirror/github.com/bazelbuild/apple_support/releases/download/0.7.1/apple_support.0.7.1.tar.gz",
176+ "https://github.com/bazelbuild/apple_support/releases/download/0.7.1/apple_support.0.7.1.tar.gz"
177+ ]
178+ },
179+ "build_bazel_rules_apple": {
180+ "generator_function": "grpc_deps",
181+ "generator_name": "build_bazel_rules_apple",
182+ "name": "build_bazel_rules_apple",
183+ "sha256": "bdc8e66e70b8a75da23b79f1f8c6207356df07d041d96d2189add7ee0780cf4e",
184+ "strip_prefix": "rules_apple-b869b0d3868d78a1d4ffd866ccb304fb68aa12c3",
185+ "urls": [
186+ "https://storage.googleapis.com/grpc-bazel-mirror/github.com/bazelbuild/rules_apple/archive/b869b0d3868d78a1d4ffd866ccb304fb68aa12c3.tar.gz",
187+ "https://github.com/bazelbuild/rules_apple/archive/b869b0d3868d78a1d4ffd866ccb304fb68aa12c3.tar.gz"
188+ ]
189+ },
190+ "build_bazel_rules_nodejs": {
191+ "name": "build_bazel_rules_nodejs",
192+ "sha256": "f2194102720e662dbf193546585d705e645314319554c6ce7e47d8b59f459e9c",
193+ "urls": [
194+ "https://mirror.bazel.build/github.com/bazelbuild/rules_nodejs/releases/download/2.2.2/rules_nodejs-2.2.2.tar.gz",
195+ "https://github.com/bazelbuild/rules_nodejs/releases/download/2.2.2/rules_nodejs-2.2.2.tar.gz"
196+ ]
197+ },
198+ "com_github_cares_cares": {
199+ "build_file": "@com_github_grpc_grpc//third_party:cares/cares.BUILD",
200+ "generator_function": "grpc_deps",
201+ "generator_name": "com_github_cares_cares",
202+ "name": "com_github_cares_cares",
203+ "sha256": "e8c2751ddc70fed9dc6f999acd92e232d5846f009ee1674f8aee81f19b2b915a",
204+ "strip_prefix": "c-ares-e982924acee7f7313b4baa4ee5ec000c5e373c30",
205+ "urls": [
206+ "https://storage.googleapis.com/grpc-bazel-mirror/github.com/c-ares/c-ares/archive/e982924acee7f7313b4baa4ee5ec000c5e373c30.tar.gz",
207+ "https://github.com/c-ares/c-ares/archive/e982924acee7f7313b4baa4ee5ec000c5e373c30.tar.gz"
208+ ]
209+ },
210+ "com_github_gflags_gflags": {
211+ "generator_function": "grpc_deps",
212+ "generator_name": "com_github_gflags_gflags",
213+ "name": "com_github_gflags_gflags",
214+ "sha256": "63ae70ea3e05780f7547d03503a53de3a7d2d83ad1caaa443a31cb20aea28654",
215+ "strip_prefix": "gflags-28f50e0fed19872e0fd50dd23ce2ee8cd759338e",
216+ "urls": [
217+ "https://storage.googleapis.com/grpc-bazel-mirror/github.com/gflags/gflags/archive/28f50e0fed19872e0fd50dd23ce2ee8cd759338e.tar.gz",
218+ "https://github.com/gflags/gflags/archive/28f50e0fed19872e0fd50dd23ce2ee8cd759338e.tar.gz"
219+ ]
220+ },
221+ "com_github_google_benchmark": {
222+ "generator_function": "grpc_deps",
223+ "generator_name": "com_github_google_benchmark",
224+ "name": "com_github_google_benchmark",
225+ "sha256": "f68aec93154d010324c05bcd8c5cc53468b87af88d87acb5ddcfaa1bba044837",
226+ "strip_prefix": "benchmark-090faecb454fbd6e6e17a75ef8146acb037118d4",
227+ "urls": [
228+ "https://storage.googleapis.com/grpc-bazel-mirror/github.com/google/benchmark/archive/090faecb454fbd6e6e17a75ef8146acb037118d4.tar.gz",
229+ "https://github.com/google/benchmark/archive/090faecb454fbd6e6e17a75ef8146acb037118d4.tar.gz"
230+ ]
231+ },
232+ "com_github_google_re2": {
233+ "generator_function": "grpc_deps",
234+ "generator_name": "com_github_google_re2",
235+ "name": "com_github_google_re2",
236+ "sha256": "9f385e146410a8150b6f4cb1a57eab7ec806ced48d427554b1e754877ff26c3e",
237+ "strip_prefix": "re2-aecba11114cf1fac5497aeb844b6966106de3eb6",
238+ "urls": [
239+ "https://storage.googleapis.com/grpc-bazel-mirror/github.com/google/re2/archive/aecba11114cf1fac5497aeb844b6966106de3eb6.tar.gz",
240+ "https://github.com/google/re2/archive/aecba11114cf1fac5497aeb844b6966106de3eb6.tar.gz"
241+ ]
242+ },
243+ "com_github_grpc_grpc": {
244+ "name": "com_github_grpc_grpc",
245+ "patch_args": [
246+ "-p1"
247+ ],
248+ "patches": [
249+ "//third_party/grpc:grpc_1.32.0.patch"
250+ ],
251+ "sha256": "f880ebeb2ccf0e47721526c10dd97469200e40b5f101a0d9774eb69efa0bd07a",
252+ "strip_prefix": "grpc-1.32.0",
253+ "urls": [
254+ "https://mirror.bazel.build/github.com/grpc/grpc/archive/v1.32.0.tar.gz",
255+ "https://github.com/grpc/grpc/archive/v1.32.0.tar.gz"
256+ ]
257+ },
258+ "com_google_absl": {
259+ "generator_function": "grpc_deps",
260+ "generator_name": "com_google_absl",
261+ "name": "com_google_absl",
262+ "sha256": "f368a8476f4e2e0eccf8a7318b98dafbe30b2600f4e3cf52636e5eb145aba06a",
263+ "strip_prefix": "abseil-cpp-df3ea785d8c30a9503321a3d35ee7d35808f190d",
264+ "urls": [
265+ "https://storage.googleapis.com/grpc-bazel-mirror/github.com/abseil/abseil-cpp/archive/df3ea785d8c30a9503321a3d35ee7d35808f190d.tar.gz",
266+ "https://github.com/abseil/abseil-cpp/archive/df3ea785d8c30a9503321a3d35ee7d35808f190d.tar.gz"
267+ ]
268+ },
269+ "com_google_googletest": {
270+ "name": "com_google_googletest",
271+ "sha256": "9dc9157a9a1551ec7a7e43daea9a694a0bb5fb8bec81235d8a1e6ef64c716dcb",
272+ "strip_prefix": "googletest-release-1.10.0",
273+ "urls": [
274+ "https://mirror.bazel.build/github.com/google/googletest/archive/release-1.10.0.tar.gz",
275+ "https://github.com/google/googletest/archive/release-1.10.0.tar.gz"
276+ ]
277+ },
278+ "com_google_protobuf": {
279+ "name": "com_google_protobuf",
280+ "patch_args": [
281+ "-p1"
282+ ],
283+ "patch_cmds": [
284+ "test -f BUILD && chmod u+w BUILD || true",
285+ "echo >> BUILD",
286+ "echo 'exports_files([\"WORKSPACE\"], visibility = [\"//visibility:public\"])' >> BUILD"
287+ ],
288+ "patch_cmds_win": [
289+ "Add-Content -Path BUILD -Value \"`nexports_files([`\"WORKSPACE`\"], visibility = [`\"//visibility:public`\"])`n\" -Force"
290+ ],
291+ "patches": [
292+ "//third_party/protobuf:3.13.0.patch"
293+ ],
294+ "sha256": "9b4ee22c250fe31b16f1a24d61467e40780a3fbb9b91c3b65be2a376ed913a1a",
295+ "strip_prefix": "protobuf-3.13.0",
296+ "urls": [
297+ "https://mirror.bazel.build/github.com/protocolbuffers/protobuf/archive/v3.13.0.tar.gz",
298+ "https://github.com/protocolbuffers/protobuf/archive/v3.13.0.tar.gz"
299+ ]
300+ },
301+ "coverage_output_generator-v2.5.zip": {
302+ "name": "coverage_output_generator-v2.5.zip",
303+ "sha256": "cd14f1cb4559e4723e63b7e7b06d09fcc3bd7ba58d03f354cdff1439bd936a7d",
304+ "urls": [
305+ "https://mirror.bazel.build/bazel_coverage_output_generator/releases/coverage_output_generator-v2.5.zip"
306+ ]
307+ },
308+ "cython": {
309+ "build_file": "@com_github_grpc_grpc//third_party:cython.BUILD",
310+ "generator_function": "grpc_deps",
311+ "generator_name": "cython",
312+ "name": "cython",
313+ "sha256": "d68138a2381afbdd0876c3cb2a22389043fa01c4badede1228ee073032b07a27",
314+ "strip_prefix": "cython-c2b80d87658a8525ce091cbe146cb7eaa29fed5c",
315+ "urls": [
316+ "https://github.com/cython/cython/archive/c2b80d87658a8525ce091cbe146cb7eaa29fed5c.tar.gz"
317+ ]
318+ },
319+ "desugar_jdk_libs": {
320+ "name": "desugar_jdk_libs",
321+ "sha256": "fe2e04f91ce8c59d49d91b8102edc6627c6fa2906c1b0e7346f01419ec4f419d",
322+ "strip_prefix": "desugar_jdk_libs-e0b0291b2c51fbe5a7cfa14473a1ae850f94f021",
323+ "urls": [
324+ "https://mirror.bazel.build/github.com/google/desugar_jdk_libs/archive/e0b0291b2c51fbe5a7cfa14473a1ae850f94f021.zip",
325+ "https://github.com/google/desugar_jdk_libs/archive/e0b0291b2c51fbe5a7cfa14473a1ae850f94f021.zip"
326+ ]
327+ },
328+ "df3ea785d8c30a9503321a3d35ee7d35808f190d.tar.gz": {
329+ "name": "df3ea785d8c30a9503321a3d35ee7d35808f190d.tar.gz",
330+ "sha256": "f368a8476f4e2e0eccf8a7318b98dafbe30b2600f4e3cf52636e5eb145aba06a",
331+ "urls": [
332+ "https://mirror.bazel.build/github.com/abseil/abseil-cpp/archive/df3ea785d8c30a9503321a3d35ee7d35808f190d.tar.gz",
333+ "https://github.com/abseil/abseil-cpp/archive/df3ea785d8c30a9503321a3d35ee7d35808f190d.tar.gz"
334+ ]
335+ },
336+ "e0b0291b2c51fbe5a7cfa14473a1ae850f94f021.zip": {
337+ "name": "e0b0291b2c51fbe5a7cfa14473a1ae850f94f021.zip",
338+ "sha256": "fe2e04f91ce8c59d49d91b8102edc6627c6fa2906c1b0e7346f01419ec4f419d",
339+ "urls": [
340+ "https://mirror.bazel.build/github.com/google/desugar_jdk_libs/archive/e0b0291b2c51fbe5a7cfa14473a1ae850f94f021.zip",
341+ "https://github.com/google/desugar_jdk_libs/archive/e0b0291b2c51fbe5a7cfa14473a1ae850f94f021.zip"
342+ ]
343+ },
344+ "e982924acee7f7313b4baa4ee5ec000c5e373c30.tar.gz": {
345+ "name": "e982924acee7f7313b4baa4ee5ec000c5e373c30.tar.gz",
346+ "sha256": "e8c2751ddc70fed9dc6f999acd92e232d5846f009ee1674f8aee81f19b2b915a",
347+ "urls": [
348+ "https://mirror.bazel.build/github.com/c-ares/c-ares/archive/e982924acee7f7313b4baa4ee5ec000c5e373c30.tar.gz",
349+ "https://github.com/c-ares/c-ares/archive/e982924acee7f7313b4baa4ee5ec000c5e373c30.tar.gz"
350+ ]
351+ },
352+ "enum34": {
353+ "build_file": "@com_github_grpc_grpc//third_party:enum34.BUILD",
354+ "generator_function": "grpc_deps",
355+ "generator_name": "enum34",
356+ "name": "enum34",
357+ "sha256": "8ad8c4783bf61ded74527bffb48ed9b54166685e4230386a9ed9b1279e2df5b1",
358+ "strip_prefix": "enum34-1.1.6",
359+ "urls": [
360+ "https://files.pythonhosted.org/packages/bf/3e/31d502c25302814a7c2f1d3959d2a3b3f78e509002ba91aea64993936876/enum34-1.1.6.tar.gz"
361+ ]
362+ },
363+ "envoy_api": {
364+ "generator_function": "grpc_deps",
365+ "generator_name": "envoy_api",
366+ "name": "envoy_api",
367+ "sha256": "9150f920abd3e710e0e58519cd769822f13d7a56988f2c34c2008815ec8d9c88",
368+ "strip_prefix": "data-plane-api-8dcc476be69437b505af181a6e8b167fdb101d7e",
369+ "urls": [
370+ "https://storage.googleapis.com/grpc-bazel-mirror/github.com/envoyproxy/data-plane-api/archive/8dcc476be69437b505af181a6e8b167fdb101d7e.tar.gz",
371+ "https://github.com/envoyproxy/data-plane-api/archive/8dcc476be69437b505af181a6e8b167fdb101d7e.tar.gz"
372+ ]
373+ },
374+ "futures": {
375+ "build_file": "@com_github_grpc_grpc//third_party:futures.BUILD",
376+ "generator_function": "grpc_deps",
377+ "generator_name": "futures",
378+ "name": "futures",
379+ "sha256": "7e033af76a5e35f58e56da7a91e687706faf4e7bdfb2cbc3f2cca6b9bcda9794",
380+ "strip_prefix": "futures-3.3.0",
381+ "urls": [
382+ "https://files.pythonhosted.org/packages/47/04/5fc6c74ad114032cd2c544c575bffc17582295e9cd6a851d6026ab4b2c00/futures-3.3.0.tar.gz"
383+ ]
384+ },
385+ "io_bazel_rules_go": {
386+ "generator_function": "grpc_deps",
387+ "generator_name": "io_bazel_rules_go",
388+ "name": "io_bazel_rules_go",
389+ "sha256": "a82a352bffae6bee4e95f68a8d80a70e87f42c4741e6a448bec11998fcc82329",
390+ "urls": [
391+ "https://storage.googleapis.com/grpc-bazel-mirror/github.com/bazelbuild/rules_go/releases/download/0.18.5/rules_go-0.18.5.tar.gz",
392+ "https://github.com/bazelbuild/rules_go/releases/download/0.18.5/rules_go-0.18.5.tar.gz"
393+ ]
394+ },
395+ "io_bazel_rules_python": {
396+ "generator_function": "grpc_deps",
397+ "generator_name": "io_bazel_rules_python",
398+ "name": "io_bazel_rules_python",
399+ "sha256": "aa96a691d3a8177f3215b14b0edc9641787abaaa30363a080165d06ab65e1161",
400+ "url": "https://github.com/bazelbuild/rules_python/releases/download/0.0.1/rules_python-0.0.1.tar.gz"
401+ },
402+ "io_bazel_rules_sass": {
403+ "name": "io_bazel_rules_sass",
404+ "sha256": "c78be58f5e0a29a04686b628cf54faaee0094322ae0ac99da5a8a8afca59a647",
405+ "strip_prefix": "rules_sass-1.25.0",
406+ "urls": [
407+ "https://mirror.bazel.build/github.com/bazelbuild/rules_sass/archive/1.25.0.zip",
408+ "https://github.com/bazelbuild/rules_sass/archive/1.25.0.zip"
409+ ]
410+ },
411+ "io_bazel_skydoc": {
412+ "name": "io_bazel_skydoc",
413+ "sha256": "5a725b777976b77aa122b707d1b6f0f39b6020f66cd427bb111a585599c857b1",
414+ "strip_prefix": "stardoc-1ef781ced3b1443dca3ed05dec1989eca1a4e1cd",
415+ "urls": [
416+ "https://mirror.bazel.build/github.com/bazelbuild/stardoc/archive/1ef781ced3b1443dca3ed05dec1989eca1a4e1cd.tar.gz",
417+ "https://github.com/bazelbuild/stardoc/archive/1ef781ced3b1443dca3ed05dec1989eca1a4e1cd.tar.gz"
418+ ]
419+ },
420+ "io_opencensus_cpp": {
421+ "generator_function": "grpc_deps",
422+ "generator_name": "io_opencensus_cpp",
423+ "name": "io_opencensus_cpp",
424+ "sha256": "90d6fafa8b1a2ea613bf662731d3086e1c2ed286f458a95c81744df2dbae41b1",
425+ "strip_prefix": "opencensus-cpp-c9a4da319bc669a772928ffc55af4a61be1a1176",
426+ "urls": [
427+ "https://storage.googleapis.com/grpc-bazel-mirror/github.com/census-instrumentation/opencensus-cpp/archive/c9a4da319bc669a772928ffc55af4a61be1a1176.tar.gz",
428+ "https://github.com/census-instrumentation/opencensus-cpp/archive/c9a4da319bc669a772928ffc55af4a61be1a1176.tar.gz"
429+ ]
430+ },
431+ "java_tools_javac11_darwin-v10.5.zip": {
432+ "name": "java_tools_javac11_darwin-v10.5.zip",
433+ "sha256": "95aae0a32a170c72a68abb0b9dd6bac7ea3e08c504a5d8c6e8bf7ac51628c98f",
434+ "urls": [
435+ "https://mirror.bazel.build/bazel_java_tools/releases/javac11/v10.5/java_tools_javac11_darwin-v10.5.zip"
436+ ]
437+ },
438+ "java_tools_javac11_linux-v10.5.zip": {
439+ "name": "java_tools_javac11_linux-v10.5.zip",
440+ "sha256": "355c27c603e8fc64bb0e2d7f809741f42576d5f4540f9ce28fd55922085af639",
441+ "urls": [
442+ "https://mirror.bazel.build/bazel_java_tools/releases/javac11/v10.5/java_tools_javac11_linux-v10.5.zip"
443+ ]
444+ },
445+ "java_tools_javac11_windows-v10.5.zip": {
446+ "name": "java_tools_javac11_windows-v10.5.zip",
447+ "sha256": "0b4469ca1a9b3f26cb82fb0f4fd00096f0d839ec2fae097e7bdbb982e3a95a59",
448+ "urls": [
449+ "https://mirror.bazel.build/bazel_java_tools/releases/javac11/v10.5/java_tools_javac11_windows-v10.5.zip"
450+ ]
451+ },
452+ "java_tools_langtools_javac11": {
453+ "name": "java_tools_langtools_javac11",
454+ "sha256": "cf0814fa002ef3d794582bb086516d8c9ed0958f83f19799cdb08949019fe4c7",
455+ "urls": [
456+ "https://mirror.bazel.build/bazel_java_tools/jdk_langtools/langtools_jdk11_v2.zip"
457+ ]
458+ },
459+ "jekyll_tree_0_17_1": {
460+ "name": "jekyll_tree_0_17_1",
461+ "sha256": "02256ddd20eeaf70cf8fcfe9b2cdddd7be87aedd5848d549474fb0358e0031d3",
462+ "urls": [
463+ "https://mirror.bazel.build/bazel_versioned_docs/jekyll-tree-0.17.1.tar"
464+ ]
465+ },
466+ "jekyll_tree_0_17_2": {
467+ "name": "jekyll_tree_0_17_2",
468+ "sha256": "13b35dd309a0d52f0a2518a1193f42729c75255f5fae40cea68e4d4224bfaa2e",
469+ "urls": [
470+ "https://mirror.bazel.build/bazel_versioned_docs/jekyll-tree-0.17.2.tar"
471+ ]
472+ },
473+ "jekyll_tree_0_18_1": {
474+ "name": "jekyll_tree_0_18_1",
475+ "sha256": "98b77f48e37a50fc6f83100bf53f661e10732bb3ddbc226e02d0225cb7a9a7d8",
476+ "urls": [
477+ "https://mirror.bazel.build/bazel_versioned_docs/jekyll-tree-0.18.1.tar"
478+ ]
479+ },
480+ "jekyll_tree_0_19_1": {
481+ "name": "jekyll_tree_0_19_1",
482+ "sha256": "ec892c59ba18bb8de1f9ae2bde937db144e45f28d6d1c32a2cee847ee81b134d",
483+ "urls": [
484+ "https://mirror.bazel.build/bazel_versioned_docs/jekyll-tree-0.19.1.tar"
485+ ]
486+ },
487+ "jekyll_tree_0_19_2": {
488+ "name": "jekyll_tree_0_19_2",
489+ "sha256": "3c2d9f21ec2fd1c0b8a310f6eb6043027c838810cdfc2457d4346a0e5cdcaa7a",
490+ "urls": [
491+ "https://mirror.bazel.build/bazel_versioned_docs/jekyll-tree-0.19.2.tar"
492+ ]
493+ },
494+ "jekyll_tree_0_20_0": {
495+ "name": "jekyll_tree_0_20_0",
496+ "sha256": "bb79a63810bf1b0aa1f89bd3bbbeb4a547a30ab9af70c9be656cc6866f4b015b",
497+ "urls": [
498+ "https://mirror.bazel.build/bazel_versioned_docs/jekyll-tree-0.20.0.tar"
499+ ]
500+ },
501+ "jekyll_tree_0_21_0": {
502+ "name": "jekyll_tree_0_21_0",
503+ "sha256": "23ec39c0138d358c544151e5c81586716d5d1c6124f10a742bead70516e6eb93",
504+ "urls": [
505+ "https://mirror.bazel.build/bazel_versioned_docs/jekyll-tree-0.21.0.tar"
506+ ]
507+ },
508+ "jekyll_tree_0_22_0": {
509+ "name": "jekyll_tree_0_22_0",
510+ "sha256": "bec5cfaa5560e082e41e33bde276cf93f0f7bcfd2914a3e868f921df8b3ab725",
511+ "urls": [
512+ "https://mirror.bazel.build/bazel_versioned_docs/jekyll-tree-0.22.0.tar"
513+ ]
514+ },
515+ "jekyll_tree_0_23_0": {
516+ "name": "jekyll_tree_0_23_0",
517+ "sha256": "56c80fcf49dc606fab8ed5e737a7409e9a486585b7b98673be69b5a4984dd774",
518+ "urls": [
519+ "https://mirror.bazel.build/bazel_versioned_docs/jekyll-tree-0.23.0.tar"
520+ ]
521+ },
522+ "jekyll_tree_0_24_0": {
523+ "name": "jekyll_tree_0_24_0",
524+ "sha256": "988fa567906a73e50d3669909285187ef88c76ecd4aa277f4d1f355fc06a90c8",
525+ "urls": [
526+ "https://mirror.bazel.build/bazel_versioned_docs/jekyll-tree-0.24.0.tar"
527+ ]
528+ },
529+ "jekyll_tree_0_25_0": {
530+ "name": "jekyll_tree_0_25_0",
531+ "sha256": "e8ab61c047225e808982a564ecd692fd63bd243dccc88a8768ed069a5362a685",
532+ "urls": [
533+ "https://mirror.bazel.build/bazel_versioned_docs/jekyll-tree-0.25.0.tar"
534+ ]
535+ },
536+ "jekyll_tree_0_26_0": {
537+ "name": "jekyll_tree_0_26_0",
538+ "sha256": "3907dfc6fb27d246e67877e553e8951fac239bb49f2dec7e06b6b09cb0b98b8d",
539+ "urls": [
540+ "https://mirror.bazel.build/bazel_versioned_docs/jekyll-tree-0.26.0.tar"
541+ ]
542+ },
543+ "jekyll_tree_0_27_0": {
544+ "name": "jekyll_tree_0_27_0",
545+ "sha256": "97e2633fefee389daade775da43907aa68699b32212f4e48cb095abe18aa7e65",
546+ "urls": [
547+ "https://mirror.bazel.build/bazel_versioned_docs/jekyll-tree-0.27.0.tar"
548+ ]
549+ },
550+ "jekyll_tree_0_28_0": {
551+ "name": "jekyll_tree_0_28_0",
552+ "sha256": "64b3fc267fb1f4c56345d96f0ad9f07a2efe43bd15361f818368849cf941b3b7",
553+ "urls": [
554+ "https://mirror.bazel.build/bazel_versioned_docs/jekyll-tree-0.28.0.tar"
555+ ]
556+ },
557+ "jekyll_tree_0_29_0": {
558+ "name": "jekyll_tree_0_29_0",
559+ "sha256": "99d7a6bf9ef0145c59c54b4319fb31cb855681782080a5490909c4a5463c7215",
560+ "urls": [
561+ "https://mirror.bazel.build/bazel_versioned_docs/jekyll-tree-0.29.0.tar"
562+ ]
563+ },
564+ "jekyll_tree_0_29_1": {
565+ "name": "jekyll_tree_0_29_1",
566+ "sha256": "cf0a517f1660a7c4fd26a7ef6f3594bbefcf2b670bc0ed610bf3bb6ec3a9fdc3",
567+ "urls": [
568+ "https://mirror.bazel.build/bazel_versioned_docs/jekyll-tree-0.29.1.tar"
569+ ]
570+ },
571+ "jekyll_tree_1_0_0": {
572+ "name": "jekyll_tree_1_0_0",
573+ "sha256": "61ef65c738a8cd65059f58f2ee5f7eef493136ac4d5e5c3464787d17043febdf",
574+ "urls": [
575+ "https://mirror.bazel.build/bazel_versioned_docs/jekyll-tree-1.0.0.tar"
576+ ]
577+ },
578+ "jekyll_tree_1_1_0": {
579+ "name": "jekyll_tree_1_1_0",
580+ "sha256": "46d82c9249896903ee6be2295fc52a1346a9ee82f61f89b8a2181232c3bd999b",
581+ "urls": [
582+ "https://mirror.bazel.build/bazel_versioned_docs/jekyll-tree-1.1.0.tar"
583+ ]
584+ },
585+ "jekyll_tree_1_2_0": {
586+ "name": "jekyll_tree_1_2_0",
587+ "sha256": "d402a8391ca2624673f124ff42ba8d0d40d4139e5d23111f3995dc6c5f70f63d",
588+ "urls": [
589+ "https://mirror.bazel.build/bazel_versioned_docs/jekyll-tree-1.2.0.tar"
590+ ]
591+ },
592+ "jekyll_tree_2_0_0": {
593+ "name": "jekyll_tree_2_0_0",
594+ "sha256": "7d7c424ede503856c61b645d8fdc2513ec6ea8600d76c5e87c45a9a45c16de3e",
595+ "urls": [
596+ "https://mirror.bazel.build/bazel_versioned_docs/jekyll-tree-2.0.0.tar"
597+ ]
598+ },
599+ "jekyll_tree_2_1_0": {
600+ "name": "jekyll_tree_2_1_0",
601+ "sha256": "b0fd257b1d6b1b05705742d55a13b9a20d3e99f49c89334750c872d620e5b88f",
602+ "urls": [
603+ "https://mirror.bazel.build/bazel_versioned_docs/jekyll-tree-2.1.0.tar"
604+ ]
605+ },
606+ "jekyll_tree_2_2_0": {
607+ "name": "jekyll_tree_2_2_0",
608+ "sha256": "4c1506786ab98df8039ec7354b82da7b586b2ae4ab7f7e7d08f3caf74ff28e3d",
609+ "urls": [
610+ "https://mirror.bazel.build/bazel_versioned_docs/jekyll-tree-2.2.0.tar"
611+ ]
612+ },
613+ "jekyll_tree_3_0_0": {
614+ "name": "jekyll_tree_3_0_0",
615+ "sha256": "bd1096ad609c253fa7b1473edf4a3aa51f36243e188dbb62c68d8ed4aca2419d",
616+ "urls": [
617+ "https://mirror.bazel.build/bazel_versioned_docs/jekyll-tree-3.0.0.tar"
618+ ]
619+ },
620+ "jekyll_tree_3_1_0": {
621+ "name": "jekyll_tree_3_1_0",
622+ "sha256": "f9d2e22e24af426d6c9de163d91abe6d8af7eb1eabb1d7ff5e9cf4bededf465a",
623+ "urls": [
624+ "https://mirror.bazel.build/bazel_versioned_docs/jekyll-tree-3.1.0-807b377.tar"
625+ ]
626+ },
627+ "jekyll_tree_3_2_0": {
628+ "name": "jekyll_tree_3_2_0",
629+ "sha256": "6cff8654e739a0c3062183a5a6cc82fcf9a77323051f8c007866d7f4101052a6",
630+ "urls": [
631+ "https://mirror.bazel.build/bazel_versioned_docs/jekyll-tree-3.2.0.tar"
632+ ]
633+ },
634+ "jekyll_tree_3_3_0": {
635+ "name": "jekyll_tree_3_3_0",
636+ "sha256": "36b81e8ddf4f3caccf41acc82d9e49f000c1be9e92c9cc82793d60ff70636176",
637+ "urls": [
638+ "https://mirror.bazel.build/bazel_versioned_docs/jekyll-tree-3.3.0.tar"
639+ ]
640+ },
641+ "jekyll_tree_3_4_0": {
642+ "name": "jekyll_tree_3_4_0",
643+ "sha256": "af82e775d911135bcff76e500bb003c4a9fccb949f8ddf4d93c58eca195bf5e8",
644+ "urls": [
645+ "https://mirror.bazel.build/bazel_versioned_docs/jekyll-tree-3.4.0.tar"
646+ ]
647+ },
648+ "jekyll_tree_3_5_0": {
649+ "name": "jekyll_tree_3_5_0",
650+ "sha256": "aa96cbad14cfab0b422d1d17eac3107a75eb05854d40ab4f1379a6fc87b2e1f8",
651+ "urls": [
652+ "https://mirror.bazel.build/bazel_versioned_docs/jekyll-tree-3.5.0.tar"
653+ ]
654+ },
655+ "jekyll_tree_3_5_1": {
656+ "name": "jekyll_tree_3_5_1",
657+ "sha256": "1c949ba8da353c93c74a70638e5cb321ea1cd5582eda1b6ad88c6d2d0b569f2f",
658+ "urls": [
659+ "https://mirror.bazel.build/bazel_versioned_docs/jekyll-tree-3.5.1.tar"
660+ ]
661+ },
662+ "jekyll_tree_3_6_0": {
663+ "name": "jekyll_tree_3_6_0",
664+ "sha256": "1b7a16a2098ca0c290c208a11db886e950d6c523b2cac2d0a0cba4a04aa832f3",
665+ "urls": [
666+ "https://mirror.bazel.build/bazel_versioned_docs/jekyll-tree-3.6.0.tar"
667+ ]
668+ },
669+ "jekyll_tree_3_7_0": {
670+ "name": "jekyll_tree_3_7_0",
671+ "sha256": "a534d37ef3867c92fae8692852f92820a34f63a5f9092bbbec6505c0f69d8094",
672+ "urls": [
673+ "https://mirror.bazel.build/bazel_versioned_docs/jekyll-tree-3.7.0.tar"
674+ ]
675+ },
676+ "openjdk11_darwin_archive": {
677+ "build_file_content": "\njava_runtime(name = 'runtime', srcs = glob(['**']), visibility = ['//visibility:public'])\nexports_files([\"WORKSPACE\"], visibility = [\"//visibility:public\"])\n",
678+ "name": "openjdk11_darwin_archive",
679+ "sha256": "e1fe56769f32e2aaac95e0a8f86b5a323da5af3a3b4bba73f3086391a6cc056f",
680+ "strip_prefix": "zulu11.37.17-ca-jdk11.0.6-macosx_x64",
681+ "urls": [
682+ "https://mirror.bazel.build/openjdk/azul-zulu11.37.17-ca-jdk11.0.6/zulu11.37.17-ca-jdk11.0.6-macosx_x64.tar.gz"
683+ ]
684+ },
685+ "openjdk11_linux_archive": {
686+ "build_file_content": "\njava_runtime(name = 'runtime', srcs = glob(['**']), visibility = ['//visibility:public'])\nexports_files([\"WORKSPACE\"], visibility = [\"//visibility:public\"])\n",
687+ "name": "openjdk11_linux_archive",
688+ "sha256": "360626cc19063bc411bfed2914301b908a8f77a7919aaea007a977fa8fb3cde1",
689+ "strip_prefix": "zulu11.37.17-ca-jdk11.0.6-linux_x64",
690+ "urls": [
691+ "https://mirror.bazel.build/openjdk/azul-zulu11.37.17-ca-jdk11.0.6/zulu11.37.17-ca-jdk11.0.6-linux_x64.tar.gz"
692+ ]
693+ },
694+ "openjdk11_windows_archive": {
695+ "build_file_content": "\njava_runtime(name = 'runtime', srcs = glob(['**']), visibility = ['//visibility:public'])\nexports_files([\"WORKSPACE\"], visibility = [\"//visibility:public\"])\n",
696+ "name": "openjdk11_windows_archive",
697+ "sha256": "a9695617b8374bfa171f166951214965b1d1d08f43218db9a2a780b71c665c18",
698+ "strip_prefix": "zulu11.37.17-ca-jdk11.0.6-win_x64",
699+ "urls": [
700+ "https://mirror.bazel.build/openjdk/azul-zulu11.37.17-ca-jdk11.0.6/zulu11.37.17-ca-jdk11.0.6-win_x64.zip"
701+ ]
702+ },
703+ "openjdk14_darwin_archive": {
704+ "build_file_content": "\njava_runtime(name = 'runtime', srcs = glob(['**']), visibility = ['//visibility:public'])\nexports_files([\"WORKSPACE\"], visibility = [\"//visibility:public\"])\n",
705+ "name": "openjdk14_darwin_archive",
706+ "sha256": "088bd4d0890acc9f032b738283bf0f26b2a55c50b02d1c8a12c451d8ddf080dd",
707+ "strip_prefix": "zulu14.28.21-ca-jdk14.0.1-macosx_x64",
708+ "urls": [
709+ "https://mirror.bazel.build/cdn.azul.com/zulu/bin/zulu14.28.21-ca-jdk14.0.1-macosx_x64.tar.gz"
710+ ]
711+ },
712+ "openjdk14_linux_archive": {
713+ "build_file_content": "\njava_runtime(name = 'runtime', srcs = glob(['**']), visibility = ['//visibility:public'])\nexports_files([\"WORKSPACE\"], visibility = [\"//visibility:public\"])\n",
714+ "name": "openjdk14_linux_archive",
715+ "sha256": "48bb8947034cd079ad1ef83335e7634db4b12a26743a0dc314b6b861480777aa",
716+ "strip_prefix": "zulu14.28.21-ca-jdk14.0.1-linux_x64",
717+ "urls": [
718+ "https://mirror.bazel.build/cdn.azul.com/zulu/bin/zulu14.28.21-ca-jdk14.0.1-linux_x64.tar.gz"
719+ ]
720+ },
721+ "openjdk14_windows_archive": {
722+ "build_file_content": "\njava_runtime(name = 'runtime', srcs = glob(['**']), visibility = ['//visibility:public'])\nexports_files([\"WORKSPACE\"], visibility = [\"//visibility:public\"])\n",
723+ "name": "openjdk14_windows_archive",
724+ "sha256": "9cb078b5026a900d61239c866161f0d9558ec759aa15c5b4c7e905370e868284",
725+ "strip_prefix": "zulu14.28.21-ca-jdk14.0.1-win_x64",
726+ "urls": [
727+ "https://mirror.bazel.build/cdn.azul.com/zulu/bin/zulu14.28.21-ca-jdk14.0.1-win_x64.zip"
728+ ]
729+ },
730+ "openjdk15_darwin_archive": {
731+ "build_file_content": "\njava_runtime(name = 'runtime', srcs = glob(['**']), visibility = ['//visibility:public'])\nexports_files([\"WORKSPACE\"], visibility = [\"//visibility:public\"])\n",
732+ "name": "openjdk15_darwin_archive",
733+ "sha256": "f80b2e0512d9d8a92be24497334c974bfecc8c898fc215ce0e76594f00437482",
734+ "strip_prefix": "zulu15.27.17-ca-jdk15.0.0-macosx_x64",
735+ "urls": [
736+ "https://mirror.bazel.build/cdn.azul.com/zulu/bin/zulu15.27.17-ca-jdk15.0.0-macosx_x64.tar.gz",
737+ "https://cdn.azul.com/zulu/bin/zulu15.27.17-ca-jdk15.0.0-macosx_x64.tar.gz"
738+ ]
739+ },
740+ "openjdk15_linux_archive": {
741+ "build_file_content": "\njava_runtime(name = 'runtime', srcs = glob(['**']), visibility = ['//visibility:public'])\nexports_files([\"WORKSPACE\"], visibility = [\"//visibility:public\"])\n",
742+ "name": "openjdk15_linux_archive",
743+ "sha256": "0a38f1138c15a4f243b75eb82f8ef40855afcc402e3c2a6de97ce8235011b1ad",
744+ "strip_prefix": "zulu15.27.17-ca-jdk15.0.0-linux_x64",
745+ "urls": [
746+ "https://mirror.bazel.build/cdn.azul.com/zulu/bin/zulu15.27.17-ca-jdk15.0.0-linux_x64.tar.gz",
747+ "https://cdn.azul.com/zulu/bin/zulu15.27.17-ca-jdk15.0.0-linux_x64.tar.gz"
748+ ]
749+ },
750+ "openjdk15_windows_archive": {
751+ "build_file_content": "\njava_runtime(name = 'runtime', srcs = glob(['**']), visibility = ['//visibility:public'])\nexports_files([\"WORKSPACE\"], visibility = [\"//visibility:public\"])\n",
752+ "name": "openjdk15_windows_archive",
753+ "sha256": "f535a530151e6c20de8a3078057e332b08887cb3ba1a4735717357e72765cad6",
754+ "strip_prefix": "zulu15.27.17-ca-jdk15.0.0-win_x64",
755+ "urls": [
756+ "https://mirror.bazel.build/cdn.azul.com/zulu/bin/zulu15.27.17-ca-jdk15.0.0-win_x64.zip",
757+ "https://cdn.azul.com/zulu/bin/zulu15.27.17-ca-jdk15.0.0-win_x64.zip"
758+ ]
759+ },
760+ "openjdk_linux": {
761+ "downloaded_file_path": "zulu-linux.tar.gz",
762+ "name": "openjdk_linux",
763+ "sha256": "65bfe4e0ffa74a680ee4410db46b17e30cd9397b664a92a886599fe1f3530969",
764+ "urls": [
765+ "https://mirror.bazel.build/openjdk/azul-zulu11.37.17-ca-jdk11.0.6/zulu11.37.17-ca-jdk11.0.6-linux_x64-linux_x64-allmodules-b23d4e05466f2aa1fdcd72d3d3a8e962206b64bf-1581689070.tar.gz"
766+ ]
767+ },
768+ "openjdk_linux_aarch64": {
769+ "downloaded_file_path": "zulu-linux-aarch64.tar.gz",
770+ "name": "openjdk_linux_aarch64",
771+ "sha256": "6b245793087300db3ee82ab0d165614f193a73a60f2f011e347756c1e6ca5bac",
772+ "urls": [
773+ "https://mirror.bazel.build/openjdk/azul-zulu11.37.48-ca-jdk11.0.6/zulu11.37.48-ca-jdk11.0.6-linux_aarch64-allmodules-b23d4e05466f2aa1fdcd72d3d3a8e962206b64bf-1581690750.tar.gz"
774+ ]
775+ },
776+ "openjdk_linux_aarch64_minimal": {
777+ "downloaded_file_path": "zulu-linux-aarch64-minimal.tar.gz",
778+ "name": "openjdk_linux_aarch64_minimal",
779+ "sha256": "06f6520a877704c77614bcfc4f846cc7cbcbf5eaad149bf7f19f4f16e285c9de",
780+ "urls": [
781+ "https://mirror.bazel.build/openjdk/azul-zulu11.37.48-ca-jdk11.0.6/zulu11.37.48-ca-jdk11.0.6-linux_aarch64-minimal-b23d4e05466f2aa1fdcd72d3d3a8e962206b64bf-1581690750.tar.gz"
782+ ]
783+ },
784+ "openjdk_linux_aarch64_vanilla": {
785+ "downloaded_file_path": "zulu-linux-aarch64-vanilla.tar.gz",
786+ "name": "openjdk_linux_aarch64_vanilla",
787+ "sha256": "a452f1b9682d9f83c1c14e54d1446e1c51b5173a3a05dcb013d380f9508562e4",
788+ "urls": [
789+ "https://mirror.bazel.build/openjdk/azul-zulu11.37.48-ca-jdk11.0.6/zulu11.37.48-ca-jdk11.0.6-linux_aarch64.tar.gz"
790+ ]
791+ },
792+ "openjdk_linux_minimal": {
793+ "downloaded_file_path": "zulu-linux-minimal.tar.gz",
794+ "name": "openjdk_linux_minimal",
795+ "sha256": "91f7d52f695c681d4e21499b4319d548aadef249a6b3053e306308992e1e29ae",
796+ "urls": [
797+ "https://mirror.bazel.build/openjdk/azul-zulu11.37.17-ca-jdk11.0.6/zulu11.37.17-ca-jdk11.0.6-linux_x64-minimal-b23d4e05466f2aa1fdcd72d3d3a8e962206b64bf-1581689068.tar.gz"
798+ ]
799+ },
800+ "openjdk_linux_ppc64le_vanilla": {
801+ "downloaded_file_path": "adoptopenjdk-ppc64le-vanilla.tar.gz",
802+ "name": "openjdk_linux_ppc64le_vanilla",
803+ "sha256": "a417db0295b1f4b538ecbaf7c774f3a177fab9657a665940170936c0eca4e71a",
804+ "urls": [
805+ "https://mirror.bazel.build/openjdk/AdoptOpenJDK/openjdk11-binaries/releases/download/jdk-11.0.7+10/OpenJDK11U-jdk_ppc64le_linux_hotspot_11.0.7_10.tar.gz",
806+ "https://github.com/AdoptOpenJDK/openjdk11-binaries/releases/download/jdk-11.0.7+10/OpenJDK11U-jdk_ppc64le_linux_hotspot_11.0.7_10.tar.gz"
807+ ]
808+ },
809+ "openjdk_linux_s390x_vanilla": {
810+ "downloaded_file_path": "adoptopenjdk-s390x-vanilla.tar.gz",
811+ "name": "openjdk_linux_s390x_vanilla",
812+ "sha256": "d9b72e87a1d3ebc0c9552f72ae5eb150fffc0298a7cb841f1ce7bfc70dcd1059",
813+ "urls": [
814+ "https://mirror.bazel.build/github.com/AdoptOpenJDK/openjdk11-binaries/releases/download/jdk-11.0.7+10/OpenJDK11U-jdk_s390x_linux_hotspot_11.0.7_10.tar.gz",
815+ "https://github.com/AdoptOpenJDK/openjdk11-binaries/releases/download/jdk-11.0.7+10/OpenJDK11U-jdk_s390x_linux_hotspot_11.0.7_10.tar.gz"
816+ ]
817+ },
818+ "openjdk_linux_vanilla": {
819+ "downloaded_file_path": "zulu-linux-vanilla.tar.gz",
820+ "name": "openjdk_linux_vanilla",
821+ "sha256": "360626cc19063bc411bfed2914301b908a8f77a7919aaea007a977fa8fb3cde1",
822+ "urls": [
823+ "https://mirror.bazel.build/openjdk/azul-zulu11.37.17-ca-jdk11.0.6/zulu11.37.17-ca-jdk11.0.6-linux_x64.tar.gz"
824+ ]
825+ },
826+ "openjdk_macos": {
827+ "downloaded_file_path": "zulu-macos.tar.gz",
828+ "name": "openjdk_macos",
829+ "sha256": "8e283cfd23c7555be8e17295ed76eb8f00324c88ab904b8de37bbe08f90e569b",
830+ "urls": [
831+ "https://mirror.bazel.build/openjdk/azul-zulu11.37.17-ca-jdk11.0.6/zulu11.37.17-ca-jdk11.0.6-macosx_x64-allmodules-b23d4e05466f2aa1fdcd72d3d3a8e962206b64bf-1581689066.tar.gz"
832+ ]
833+ },
834+ "openjdk_macos_minimal": {
835+ "downloaded_file_path": "zulu-macos-minimal.tar.gz",
836+ "name": "openjdk_macos_minimal",
837+ "sha256": "1bacb1c07035d4066d79f0b65b4ea0ebd1954f3662bdfe3618da382ac8fd23a6",
838+ "urls": [
839+ "https://mirror.bazel.build/openjdk/azul-zulu11.37.17-ca-jdk11.0.6/zulu11.37.17-ca-jdk11.0.6-macosx_x64-minimal-b23d4e05466f2aa1fdcd72d3d3a8e962206b64bf-1581689063.tar.gz"
840+ ]
841+ },
842+ "openjdk_macos_vanilla": {
843+ "downloaded_file_path": "zulu-macos-vanilla.tar.gz",
844+ "name": "openjdk_macos_vanilla",
845+ "sha256": "e1fe56769f32e2aaac95e0a8f86b5a323da5af3a3b4bba73f3086391a6cc056f",
846+ "urls": [
847+ "https://mirror.bazel.build/openjdk/azul-zulu11.37.17-ca-jdk11.0.6/zulu11.37.17-ca-jdk11.0.6-macosx_x64.tar.gz"
848+ ]
849+ },
850+ "openjdk_win": {
851+ "downloaded_file_path": "zulu-win.zip",
852+ "name": "openjdk_win",
853+ "sha256": "8e1604b3a27dcf639bc6d1a73103f1211848139e4cceb081d0a74a99e1e6f995",
854+ "urls": [
855+ "https://mirror.bazel.build/openjdk/azul-zulu11.37.17-ca-jdk11.0.6/zulu11.37.17-ca-jdk11.0.6-win_x64-allmodules-b23d4e05466f2aa1fdcd72d3d3a8e962206b64bf-1581689080.zip"
856+ ]
857+ },
858+ "openjdk_win_minimal": {
859+ "downloaded_file_path": "zulu-win-minimal.zip",
860+ "name": "openjdk_win_minimal",
861+ "sha256": "b90a713c9c2d9ea23cad44d2c2dfcc9af22faba9bde55dedc1c3bb9f556ac1ae",
862+ "urls": [
863+ "https://mirror.bazel.build/openjdk/azul-zulu11.37.17-ca-jdk11.0.6/zulu11.37.17-ca-jdk11.0.6-win_x64-minimal-b23d4e05466f2aa1fdcd72d3d3a8e962206b64bf-1581689080.zip"
864+ ]
865+ },
866+ "openjdk_win_vanilla": {
867+ "downloaded_file_path": "zulu-win-vanilla.zip",
868+ "name": "openjdk_win_vanilla",
869+ "sha256": "a9695617b8374bfa171f166951214965b1d1d08f43218db9a2a780b71c665c18",
870+ "urls": [
871+ "https://mirror.bazel.build/openjdk/azul-zulu11.37.17-ca-jdk11.0.6/zulu11.37.17-ca-jdk11.0.6-win_x64.zip"
872+ ]
873+ },
874+ "platforms": {
875+ "name": "platforms",
876+ "sha256": "66184688debeeefcc2a16a2f80b03f514deac8346fe888fb7e691a52c023dd88",
877+ "strip_prefix": "platforms-46993efdd33b73649796c5fc5c9efb193ae19d51",
878+ "urls": [
879+ "https://mirror.bazel.build/github.com/bazelbuild/platforms/archive/46993efdd33b73649796c5fc5c9efb193ae19d51.zip",
880+ "https://github.com/bazelbuild/platforms/archive/46993efdd33b73649796c5fc5c9efb193ae19d51.zip"
881+ ]
882+ },
883+ "remote_coverage_tools": {
884+ "name": "remote_coverage_tools",
885+ "sha256": "cd14f1cb4559e4723e63b7e7b06d09fcc3bd7ba58d03f354cdff1439bd936a7d",
886+ "urls": [
887+ "https://mirror.bazel.build/bazel_coverage_output_generator/releases/coverage_output_generator-v2.5.zip"
888+ ]
889+ },
890+ "remote_coverage_tools_for_testing": {
891+ "name": "remote_coverage_tools_for_testing",
892+ "patch_cmds": [
893+ "test -f BUILD && chmod u+w BUILD || true",
894+ "echo >> BUILD",
895+ "echo 'exports_files([\"WORKSPACE\"], visibility = [\"//visibility:public\"])' >> BUILD"
896+ ],
897+ "patch_cmds_win": [
898+ "Add-Content -Path BUILD -Value \"`nexports_files([`\"WORKSPACE`\"], visibility = [`\"//visibility:public`\"])`n\" -Force"
899+ ],
900+ "sha256": "cd14f1cb4559e4723e63b7e7b06d09fcc3bd7ba58d03f354cdff1439bd936a7d",
901+ "urls": [
902+ "https://mirror.bazel.build/bazel_coverage_output_generator/releases/coverage_output_generator-v2.5.zip"
903+ ]
904+ },
905+ "remote_java_tools_darwin": {
906+ "generator_function": "maybe",
907+ "generator_name": "remote_java_tools_darwin",
908+ "name": "remote_java_tools_darwin",
909+ "sha256": "64e5de2175dfccb96831573946b80d106edf3801d9db38b564514bf3581d466b",
910+ "urls": [
911+ "https://mirror.bazel.build/bazel_java_tools/releases/javac11/v10.0/java_tools_javac11_darwin-v10.0.zip",
912+ "https://github.com/bazelbuild/java_tools/releases/download/javac11_v10.0/java_tools_javac11_darwin-v10.0.zip"
913+ ]
914+ },
915+ "remote_java_tools_darwin_for_testing": {
916+ "name": "remote_java_tools_darwin_for_testing",
917+ "patch_cmds": [
918+ "test -f BUILD && chmod u+w BUILD || true",
919+ "echo >> BUILD",
920+ "echo 'exports_files([\"WORKSPACE\"], visibility = [\"//visibility:public\"])' >> BUILD"
921+ ],
922+ "patch_cmds_win": [
923+ "Add-Content -Path BUILD -Value \"`nexports_files([`\"WORKSPACE`\"], visibility = [`\"//visibility:public`\"])`n\" -Force"
924+ ],
925+ "sha256": "95aae0a32a170c72a68abb0b9dd6bac7ea3e08c504a5d8c6e8bf7ac51628c98f",
926+ "urls": [
927+ "https://mirror.bazel.build/bazel_java_tools/releases/javac11/v10.5/java_tools_javac11_darwin-v10.5.zip",
928+ "https://github.com/bazelbuild/java_tools/releases/download/javac11_v10.5/java_tools_javac11_darwin-v10.5.zip"
929+ ]
930+ },
931+ "remote_java_tools_javac11_test_darwin": {
932+ "name": "remote_java_tools_javac11_test_darwin",
933+ "patch_cmds": [
934+ "test -f BUILD && chmod u+w BUILD || true",
935+ "echo >> BUILD",
936+ "echo 'exports_files([\"WORKSPACE\"], visibility = [\"//visibility:public\"])' >> BUILD"
937+ ],
938+ "patch_cmds_win": [
939+ "Add-Content -Path BUILD -Value \"`nexports_files([`\"WORKSPACE`\"], visibility = [`\"//visibility:public`\"])`n\" -Force"
940+ ],
941+ "sha256": "95aae0a32a170c72a68abb0b9dd6bac7ea3e08c504a5d8c6e8bf7ac51628c98f",
942+ "urls": [
943+ "https://mirror.bazel.build/bazel_java_tools/releases/javac11/v10.5/java_tools_javac11_darwin-v10.5.zip"
944+ ]
945+ },
946+ "remote_java_tools_javac11_test_linux": {
947+ "name": "remote_java_tools_javac11_test_linux",
948+ "patch_cmds": [
949+ "test -f BUILD && chmod u+w BUILD || true",
950+ "echo >> BUILD",
951+ "echo 'exports_files([\"WORKSPACE\"], visibility = [\"//visibility:public\"])' >> BUILD"
952+ ],
953+ "patch_cmds_win": [
954+ "Add-Content -Path BUILD -Value \"`nexports_files([`\"WORKSPACE`\"], visibility = [`\"//visibility:public`\"])`n\" -Force"
955+ ],
956+ "sha256": "355c27c603e8fc64bb0e2d7f809741f42576d5f4540f9ce28fd55922085af639",
957+ "urls": [
958+ "https://mirror.bazel.build/bazel_java_tools/releases/javac11/v10.5/java_tools_javac11_linux-v10.5.zip"
959+ ]
960+ },
961+ "remote_java_tools_javac11_test_windows": {
962+ "name": "remote_java_tools_javac11_test_windows",
963+ "patch_cmds": [
964+ "test -f BUILD && chmod u+w BUILD || true",
965+ "echo >> BUILD",
966+ "echo 'exports_files([\"WORKSPACE\"], visibility = [\"//visibility:public\"])' >> BUILD"
967+ ],
968+ "patch_cmds_win": [
969+ "Add-Content -Path BUILD -Value \"`nexports_files([`\"WORKSPACE`\"], visibility = [`\"//visibility:public`\"])`n\" -Force"
970+ ],
971+ "sha256": "0b4469ca1a9b3f26cb82fb0f4fd00096f0d839ec2fae097e7bdbb982e3a95a59",
972+ "urls": [
973+ "https://mirror.bazel.build/bazel_java_tools/releases/javac11/v10.5/java_tools_javac11_windows-v10.5.zip"
974+ ]
975+ },
976+ "remote_java_tools_linux": {
977+ "generator_function": "maybe",
978+ "generator_name": "remote_java_tools_linux",
979+ "name": "remote_java_tools_linux",
980+ "sha256": "69e65353c2cd65780abcbcce4daae973599298273b0f8b4d469eed822cb220d1",
981+ "urls": [
982+ "https://mirror.bazel.build/bazel_java_tools/releases/javac11/v10.0/java_tools_javac11_linux-v10.0.zip",
983+ "https://github.com/bazelbuild/java_tools/releases/download/javac11_v10.0/java_tools_javac11_linux-v10.0.zip"
984+ ]
985+ },
986+ "remote_java_tools_linux_for_testing": {
987+ "name": "remote_java_tools_linux_for_testing",
988+ "patch_cmds": [
989+ "test -f BUILD && chmod u+w BUILD || true",
990+ "echo >> BUILD",
991+ "echo 'exports_files([\"WORKSPACE\"], visibility = [\"//visibility:public\"])' >> BUILD"
992+ ],
993+ "patch_cmds_win": [
994+ "Add-Content -Path BUILD -Value \"`nexports_files([`\"WORKSPACE`\"], visibility = [`\"//visibility:public`\"])`n\" -Force"
995+ ],
996+ "sha256": "355c27c603e8fc64bb0e2d7f809741f42576d5f4540f9ce28fd55922085af639",
997+ "urls": [
998+ "https://mirror.bazel.build/bazel_java_tools/releases/javac11/v10.5/java_tools_javac11_linux-v10.5.zip",
999+ "https://github.com/bazelbuild/java_tools/releases/download/javac11_v10.5/java_tools_javac11_linux-v10.5.zip"
1000+ ]
1001+ },
1002+ "remote_java_tools_windows": {
1003+ "generator_function": "maybe",
1004+ "generator_name": "remote_java_tools_windows",
1005+ "name": "remote_java_tools_windows",
1006+ "sha256": "d2f62af8daa0a3d55789b605f6582e37038329c64843337c71e64515468e55c4",
1007+ "urls": [
1008+ "https://mirror.bazel.build/bazel_java_tools/releases/javac11/v10.0/java_tools_javac11_windows-v10.0.zip",
1009+ "https://github.com/bazelbuild/java_tools/releases/download/javac11_v10.0/java_tools_javac11_windows-v10.0.zip"
1010+ ]
1011+ },
1012+ "remote_java_tools_windows_for_testing": {
1013+ "name": "remote_java_tools_windows_for_testing",
1014+ "patch_cmds": [
1015+ "test -f BUILD && chmod u+w BUILD || true",
1016+ "echo >> BUILD",
1017+ "echo 'exports_files([\"WORKSPACE\"], visibility = [\"//visibility:public\"])' >> BUILD"
1018+ ],
1019+ "patch_cmds_win": [
1020+ "Add-Content -Path BUILD -Value \"`nexports_files([`\"WORKSPACE`\"], visibility = [`\"//visibility:public`\"])`n\" -Force"
1021+ ],
1022+ "sha256": "0b4469ca1a9b3f26cb82fb0f4fd00096f0d839ec2fae097e7bdbb982e3a95a59",
1023+ "urls": [
1024+ "https://mirror.bazel.build/bazel_java_tools/releases/javac11/v10.5/java_tools_javac11_windows-v10.5.zip",
1025+ "https://github.com/bazelbuild/java_tools/releases/download/javac11_v10.5/java_tools_javac11_windows-v10.5.zip"
1026+ ]
1027+ },
1028+ "remotejdk11_linux": {
1029+ "build_file": "@bazel_tools//tools/jdk:jdk.BUILD",
1030+ "generator_function": "maybe",
1031+ "generator_name": "remotejdk11_linux",
1032+ "name": "remotejdk11_linux",
1033+ "sha256": "360626cc19063bc411bfed2914301b908a8f77a7919aaea007a977fa8fb3cde1",
1034+ "strip_prefix": "zulu11.37.17-ca-jdk11.0.6-linux_x64",
1035+ "urls": [
1036+ "https://mirror.bazel.build/openjdk/azul-zulu11.37.17-ca-jdk11.0.6/zulu11.37.17-ca-jdk11.0.6-linux_x64.tar.gz"
1037+ ]
1038+ },
1039+ "remotejdk11_linux_aarch64": {
1040+ "build_file": "@bazel_tools//tools/jdk:jdk.BUILD",
1041+ "generator_function": "maybe",
1042+ "generator_name": "remotejdk11_linux_aarch64",
1043+ "name": "remotejdk11_linux_aarch64",
1044+ "sha256": "a452f1b9682d9f83c1c14e54d1446e1c51b5173a3a05dcb013d380f9508562e4",
1045+ "strip_prefix": "zulu11.37.48-ca-jdk11.0.6-linux_aarch64",
1046+ "urls": [
1047+ "https://mirror.bazel.build/openjdk/azul-zulu11.37.48-ca-jdk11.0.6/zulu11.37.48-ca-jdk11.0.6-linux_aarch64.tar.gz"
1048+ ]
1049+ },
1050+ "remotejdk11_linux_aarch64_for_testing": {
1051+ "build_file": "@local_jdk//:BUILD.bazel",
1052+ "name": "remotejdk11_linux_aarch64_for_testing",
1053+ "patch_cmds": [
1054+ "test -f BUILD.bazel && chmod u+w BUILD.bazel || true",
1055+ "echo >> BUILD.bazel",
1056+ "echo 'exports_files([\"WORKSPACE\"], visibility = [\"//visibility:public\"])' >> BUILD.bazel"
1057+ ],
1058+ "patch_cmds_win": [
1059+ "Add-Content -Path BUILD.bazel -Value \"`nexports_files([`\"WORKSPACE`\"], visibility = [`\"//visibility:public`\"])`n\" -Force"
1060+ ],
1061+ "sha256": "a452f1b9682d9f83c1c14e54d1446e1c51b5173a3a05dcb013d380f9508562e4",
1062+ "strip_prefix": "zulu11.37.48-ca-jdk11.0.6-linux_aarch64",
1063+ "urls": [
1064+ "https://mirror.bazel.build/openjdk/azul-zulu11.37.48-ca-jdk11.0.6/zulu11.37.48-ca-jdk11.0.6-linux_aarch64.tar.gz"
1065+ ]
1066+ },
1067+ "remotejdk11_linux_for_testing": {
1068+ "build_file": "@local_jdk//:BUILD.bazel",
1069+ "name": "remotejdk11_linux_for_testing",
1070+ "patch_cmds": [
1071+ "test -f BUILD.bazel && chmod u+w BUILD.bazel || true",
1072+ "echo >> BUILD.bazel",
1073+ "echo 'exports_files([\"WORKSPACE\"], visibility = [\"//visibility:public\"])' >> BUILD.bazel"
1074+ ],
1075+ "patch_cmds_win": [
1076+ "Add-Content -Path BUILD.bazel -Value \"`nexports_files([`\"WORKSPACE`\"], visibility = [`\"//visibility:public`\"])`n\" -Force"
1077+ ],
1078+ "sha256": "360626cc19063bc411bfed2914301b908a8f77a7919aaea007a977fa8fb3cde1",
1079+ "strip_prefix": "zulu11.37.17-ca-jdk11.0.6-linux_x64",
1080+ "urls": [
1081+ "https://mirror.bazel.build/openjdk/azul-zulu11.37.17-ca-jdk11.0.6/zulu11.37.17-ca-jdk11.0.6-linux_x64.tar.gz"
1082+ ]
1083+ },
1084+ "remotejdk11_linux_ppc64le": {
1085+ "build_file": "@bazel_tools//tools/jdk:jdk.BUILD",
1086+ "generator_function": "maybe",
1087+ "generator_name": "remotejdk11_linux_ppc64le",
1088+ "name": "remotejdk11_linux_ppc64le",
1089+ "sha256": "a417db0295b1f4b538ecbaf7c774f3a177fab9657a665940170936c0eca4e71a",
1090+ "strip_prefix": "jdk-11.0.7+10",
1091+ "urls": [
1092+ "https://mirror.bazel.build/openjdk/AdoptOpenJDK/openjdk11-binaries/releases/download/jdk-11.0.7+10/OpenJDK11U-jdk_ppc64le_linux_hotspot_11.0.7_10.tar.gz",
1093+ "https://github.com/AdoptOpenJDK/openjdk11-binaries/releases/download/jdk-11.0.7+10/OpenJDK11U-jdk_ppc64le_linux_hotspot_11.0.7_10.tar.gz"
1094+ ]
1095+ },
1096+ "remotejdk11_linux_ppc64le_for_testing": {
1097+ "build_file": "@local_jdk//:BUILD.bazel",
1098+ "name": "remotejdk11_linux_ppc64le_for_testing",
1099+ "patch_cmds": [
1100+ "test -f BUILD.bazel && chmod u+w BUILD.bazel || true",
1101+ "echo >> BUILD.bazel",
1102+ "echo 'exports_files([\"WORKSPACE\"], visibility = [\"//visibility:public\"])' >> BUILD.bazel"
1103+ ],
1104+ "patch_cmds_win": [
1105+ "Add-Content -Path BUILD.bazel -Value \"`nexports_files([`\"WORKSPACE`\"], visibility = [`\"//visibility:public`\"])`n\" -Force"
1106+ ],
1107+ "sha256": "a417db0295b1f4b538ecbaf7c774f3a177fab9657a665940170936c0eca4e71a",
1108+ "strip_prefix": "jdk-11.0.7+10",
1109+ "urls": [
1110+ "https://mirror.bazel.build/openjdk/AdoptOpenJDK/openjdk11-binaries/releases/download/jdk-11.0.7+10/OpenJDK11U-jdk_ppc64le_linux_hotspot_11.0.7_10.tar.gz",
1111+ "https://github.com/AdoptOpenJDK/openjdk11-binaries/releases/download/jdk-11.0.7+10/OpenJDK11U-jdk_ppc64le_linux_hotspot_11.0.7_10.tar.gz"
1112+ ]
1113+ },
1114+ "remotejdk11_linux_s390x": {
1115+ "build_file": "@bazel_tools//tools/jdk:jdk.BUILD",
1116+ "generator_function": "maybe",
1117+ "generator_name": "remotejdk11_linux_s390x",
1118+ "name": "remotejdk11_linux_s390x",
1119+ "sha256": "d9b72e87a1d3ebc0c9552f72ae5eb150fffc0298a7cb841f1ce7bfc70dcd1059",
1120+ "strip_prefix": "jdk-11.0.7+10",
1121+ "urls": [
1122+ "https://mirror.bazel.build/github.com/AdoptOpenJDK/openjdk11-binaries/releases/download/jdk-11.0.7+10/OpenJDK11U-jdk_s390x_linux_hotspot_11.0.7_10.tar.gz",
1123+ "https://github.com/AdoptOpenJDK/openjdk11-binaries/releases/download/jdk-11.0.7+10/OpenJDK11U-jdk_s390x_linux_hotspot_11.0.7_10.tar.gz"
1124+ ]
1125+ },
1126+ "remotejdk11_linux_s390x_for_testing": {
1127+ "build_file": "@local_jdk//:BUILD.bazel",
1128+ "name": "remotejdk11_linux_s390x_for_testing",
1129+ "patch_cmds": [
1130+ "test -f BUILD.bazel && chmod u+w BUILD.bazel || true",
1131+ "echo >> BUILD.bazel",
1132+ "echo 'exports_files([\"WORKSPACE\"], visibility = [\"//visibility:public\"])' >> BUILD.bazel"
1133+ ],
1134+ "patch_cmds_win": [
1135+ "Add-Content -Path BUILD.bazel -Value \"`nexports_files([`\"WORKSPACE`\"], visibility = [`\"//visibility:public`\"])`n\" -Force"
1136+ ],
1137+ "sha256": "d9b72e87a1d3ebc0c9552f72ae5eb150fffc0298a7cb841f1ce7bfc70dcd1059",
1138+ "strip_prefix": "jdk-11.0.7+10",
1139+ "urls": [
1140+ "https://mirror.bazel.build/github.com/AdoptOpenJDK/openjdk11-binaries/releases/download/jdk-11.0.7+10/OpenJDK11U-jdk_s390x_linux_hotspot_11.0.7_10.tar.gz",
1141+ "https://github.com/AdoptOpenJDK/openjdk11-binaries/releases/download/jdk-11.0.7+10/OpenJDK11U-jdk_s390x_linux_hotspot_11.0.7_10.tar.gz"
1142+ ]
1143+ },
1144+ "remotejdk11_macos": {
1145+ "build_file": "@bazel_tools//tools/jdk:jdk.BUILD",
1146+ "generator_function": "maybe",
1147+ "generator_name": "remotejdk11_macos",
1148+ "name": "remotejdk11_macos",
1149+ "sha256": "e1fe56769f32e2aaac95e0a8f86b5a323da5af3a3b4bba73f3086391a6cc056f",
1150+ "strip_prefix": "zulu11.37.17-ca-jdk11.0.6-macosx_x64",
1151+ "urls": [
1152+ "https://mirror.bazel.build/openjdk/azul-zulu11.37.17-ca-jdk11.0.6/zulu11.37.17-ca-jdk11.0.6-macosx_x64.tar.gz"
1153+ ]
1154+ },
1155+ "remotejdk11_macos_for_testing": {
1156+ "build_file": "@local_jdk//:BUILD.bazel",
1157+ "name": "remotejdk11_macos_for_testing",
1158+ "patch_cmds": [
1159+ "test -f BUILD.bazel && chmod u+w BUILD.bazel || true",
1160+ "echo >> BUILD.bazel",
1161+ "echo 'exports_files([\"WORKSPACE\"], visibility = [\"//visibility:public\"])' >> BUILD.bazel"
1162+ ],
1163+ "patch_cmds_win": [
1164+ "Add-Content -Path BUILD.bazel -Value \"`nexports_files([`\"WORKSPACE`\"], visibility = [`\"//visibility:public`\"])`n\" -Force"
1165+ ],
1166+ "sha256": "e1fe56769f32e2aaac95e0a8f86b5a323da5af3a3b4bba73f3086391a6cc056f",
1167+ "strip_prefix": "zulu11.37.17-ca-jdk11.0.6-macosx_x64",
1168+ "urls": [
1169+ "https://mirror.bazel.build/openjdk/azul-zulu11.37.17-ca-jdk11.0.6/zulu11.37.17-ca-jdk11.0.6-macosx_x64.tar.gz"
1170+ ]
1171+ },
1172+ "remotejdk11_win": {
1173+ "build_file": "@bazel_tools//tools/jdk:jdk.BUILD",
1174+ "generator_function": "maybe",
1175+ "generator_name": "remotejdk11_win",
1176+ "name": "remotejdk11_win",
1177+ "sha256": "a9695617b8374bfa171f166951214965b1d1d08f43218db9a2a780b71c665c18",
1178+ "strip_prefix": "zulu11.37.17-ca-jdk11.0.6-win_x64",
1179+ "urls": [
1180+ "https://mirror.bazel.build/openjdk/azul-zulu11.37.17-ca-jdk11.0.6/zulu11.37.17-ca-jdk11.0.6-win_x64.zip"
1181+ ]
1182+ },
1183+ "remotejdk11_win_for_testing": {
1184+ "build_file": "@local_jdk//:BUILD.bazel",
1185+ "name": "remotejdk11_win_for_testing",
1186+ "patch_cmds": [
1187+ "test -f BUILD.bazel && chmod u+w BUILD.bazel || true",
1188+ "echo >> BUILD.bazel",
1189+ "echo 'exports_files([\"WORKSPACE\"], visibility = [\"//visibility:public\"])' >> BUILD.bazel"
1190+ ],
1191+ "patch_cmds_win": [
1192+ "Add-Content -Path BUILD.bazel -Value \"`nexports_files([`\"WORKSPACE`\"], visibility = [`\"//visibility:public`\"])`n\" -Force"
1193+ ],
1194+ "sha256": "a9695617b8374bfa171f166951214965b1d1d08f43218db9a2a780b71c665c18",
1195+ "strip_prefix": "zulu11.37.17-ca-jdk11.0.6-win_x64",
1196+ "urls": [
1197+ "https://mirror.bazel.build/openjdk/azul-zulu11.37.17-ca-jdk11.0.6/zulu11.37.17-ca-jdk11.0.6-win_x64.zip"
1198+ ]
1199+ },
1200+ "remotejdk14_linux": {
1201+ "build_file": "@bazel_tools//tools/jdk:jdk.BUILD",
1202+ "generator_function": "maybe",
1203+ "generator_name": "remotejdk14_linux",
1204+ "name": "remotejdk14_linux",
1205+ "sha256": "48bb8947034cd079ad1ef83335e7634db4b12a26743a0dc314b6b861480777aa",
1206+ "strip_prefix": "zulu14.28.21-ca-jdk14.0.1-linux_x64",
1207+ "urls": [
1208+ "https://mirror.bazel.build/cdn.azul.com/zulu/bin/zulu14.28.21-ca-jdk14.0.1-linux_x64.tar.gz"
1209+ ]
1210+ },
1211+ "remotejdk14_linux_for_testing": {
1212+ "build_file": "@local_jdk//:BUILD.bazel",
1213+ "name": "remotejdk14_linux_for_testing",
1214+ "patch_cmds": [
1215+ "test -f BUILD.bazel && chmod u+w BUILD.bazel || true",
1216+ "echo >> BUILD.bazel",
1217+ "echo 'exports_files([\"WORKSPACE\"], visibility = [\"//visibility:public\"])' >> BUILD.bazel"
1218+ ],
1219+ "patch_cmds_win": [
1220+ "Add-Content -Path BUILD.bazel -Value \"`nexports_files([`\"WORKSPACE`\"], visibility = [`\"//visibility:public`\"])`n\" -Force"
1221+ ],
1222+ "sha256": "48bb8947034cd079ad1ef83335e7634db4b12a26743a0dc314b6b861480777aa",
1223+ "strip_prefix": "zulu14.28.21-ca-jdk14.0.1-linux_x64",
1224+ "urls": [
1225+ "https://mirror.bazel.build/cdn.azul.com/zulu/bin/zulu14.28.21-ca-jdk14.0.1-linux_x64.tar.gz"
1226+ ]
1227+ },
1228+ "remotejdk14_macos": {
1229+ "build_file": "@bazel_tools//tools/jdk:jdk.BUILD",
1230+ "generator_function": "maybe",
1231+ "generator_name": "remotejdk14_macos",
1232+ "name": "remotejdk14_macos",
1233+ "sha256": "088bd4d0890acc9f032b738283bf0f26b2a55c50b02d1c8a12c451d8ddf080dd",
1234+ "strip_prefix": "zulu14.28.21-ca-jdk14.0.1-macosx_x64",
1235+ "urls": [
1236+ "https://mirror.bazel.build/cdn.azul.com/zulu/bin/zulu14.28.21-ca-jdk14.0.1-macosx_x64.tar.gz"
1237+ ]
1238+ },
1239+ "remotejdk14_macos_for_testing": {
1240+ "build_file": "@local_jdk//:BUILD.bazel",
1241+ "name": "remotejdk14_macos_for_testing",
1242+ "patch_cmds": [
1243+ "test -f BUILD.bazel && chmod u+w BUILD.bazel || true",
1244+ "echo >> BUILD.bazel",
1245+ "echo 'exports_files([\"WORKSPACE\"], visibility = [\"//visibility:public\"])' >> BUILD.bazel"
1246+ ],
1247+ "patch_cmds_win": [
1248+ "Add-Content -Path BUILD.bazel -Value \"`nexports_files([`\"WORKSPACE`\"], visibility = [`\"//visibility:public`\"])`n\" -Force"
1249+ ],
1250+ "sha256": "088bd4d0890acc9f032b738283bf0f26b2a55c50b02d1c8a12c451d8ddf080dd",
1251+ "strip_prefix": "zulu14.28.21-ca-jdk14.0.1-macosx_x64",
1252+ "urls": [
1253+ "https://mirror.bazel.build/cdn.azul.com/zulu/bin/zulu14.28.21-ca-jdk14.0.1-macosx_x64.tar.gz"
1254+ ]
1255+ },
1256+ "remotejdk14_win": {
1257+ "build_file": "@bazel_tools//tools/jdk:jdk.BUILD",
1258+ "generator_function": "maybe",
1259+ "generator_name": "remotejdk14_win",
1260+ "name": "remotejdk14_win",
1261+ "sha256": "9cb078b5026a900d61239c866161f0d9558ec759aa15c5b4c7e905370e868284",
1262+ "strip_prefix": "zulu14.28.21-ca-jdk14.0.1-win_x64",
1263+ "urls": [
1264+ "https://mirror.bazel.build/cdn.azul.com/zulu/bin/zulu14.28.21-ca-jdk14.0.1-win_x64.zip"
1265+ ]
1266+ },
1267+ "remotejdk14_win_for_testing": {
1268+ "build_file": "@local_jdk//:BUILD.bazel",
1269+ "name": "remotejdk14_win_for_testing",
1270+ "patch_cmds": [
1271+ "test -f BUILD.bazel && chmod u+w BUILD.bazel || true",
1272+ "echo >> BUILD.bazel",
1273+ "echo 'exports_files([\"WORKSPACE\"], visibility = [\"//visibility:public\"])' >> BUILD.bazel"
1274+ ],
1275+ "patch_cmds_win": [
1276+ "Add-Content -Path BUILD.bazel -Value \"`nexports_files([`\"WORKSPACE`\"], visibility = [`\"//visibility:public`\"])`n\" -Force"
1277+ ],
1278+ "sha256": "9cb078b5026a900d61239c866161f0d9558ec759aa15c5b4c7e905370e868284",
1279+ "strip_prefix": "zulu14.28.21-ca-jdk14.0.1-win_x64",
1280+ "urls": [
1281+ "https://mirror.bazel.build/cdn.azul.com/zulu/bin/zulu14.28.21-ca-jdk14.0.1-win_x64.zip"
1282+ ]
1283+ },
1284+ "remotejdk15_linux_for_testing": {
1285+ "build_file": "@local_jdk//:BUILD.bazel",
1286+ "name": "remotejdk15_linux_for_testing",
1287+ "patch_cmds": [
1288+ "test -f BUILD.bazel && chmod u+w BUILD.bazel || true",
1289+ "echo >> BUILD.bazel",
1290+ "echo 'exports_files([\"WORKSPACE\"], visibility = [\"//visibility:public\"])' >> BUILD.bazel"
1291+ ],
1292+ "patch_cmds_win": [
1293+ "Add-Content -Path BUILD.bazel -Value \"`nexports_files([`\"WORKSPACE`\"], visibility = [`\"//visibility:public`\"])`n\" -Force"
1294+ ],
1295+ "sha256": "0a38f1138c15a4f243b75eb82f8ef40855afcc402e3c2a6de97ce8235011b1ad",
1296+ "strip_prefix": "zulu15.27.17-ca-jdk15.0.0-linux_x64",
1297+ "urls": [
1298+ "https://mirror.bazel.build/cdn.azul.com/zulu/bin/zulu15.27.17-ca-jdk15.0.0-linux_x64.tar.gz",
1299+ "https://cdn.azul.com/zulu/bin/zulu15.27.17-ca-jdk15.0.0-linux_x64.tar.gz"
1300+ ]
1301+ },
1302+ "remotejdk15_macos_for_testing": {
1303+ "build_file": "@local_jdk//:BUILD.bazel",
1304+ "name": "remotejdk15_macos_for_testing",
1305+ "patch_cmds": [
1306+ "test -f BUILD.bazel && chmod u+w BUILD.bazel || true",
1307+ "echo >> BUILD.bazel",
1308+ "echo 'exports_files([\"WORKSPACE\"], visibility = [\"//visibility:public\"])' >> BUILD.bazel"
1309+ ],
1310+ "patch_cmds_win": [
1311+ "Add-Content -Path BUILD.bazel -Value \"`nexports_files([`\"WORKSPACE`\"], visibility = [`\"//visibility:public`\"])`n\" -Force"
1312+ ],
1313+ "sha256": "f80b2e0512d9d8a92be24497334c974bfecc8c898fc215ce0e76594f00437482",
1314+ "strip_prefix": "zulu15.27.17-ca-jdk15.0.0-macosx_x64",
1315+ "urls": [
1316+ "https://mirror.bazel.build/cdn.azul.com/zulu/bin/zulu15.27.17-ca-jdk15.0.0-macosx_x64.tar.gz",
1317+ "https://cdn.azul.com/zulu/bin/zulu15.27.17-ca-jdk15.0.0-macosx_x64.tar.gz"
1318+ ]
1319+ },
1320+ "remotejdk15_win_for_testing": {
1321+ "build_file": "@local_jdk//:BUILD.bazel",
1322+ "name": "remotejdk15_win_for_testing",
1323+ "patch_cmds": [
1324+ "test -f BUILD.bazel && chmod u+w BUILD.bazel || true",
1325+ "echo >> BUILD.bazel",
1326+ "echo 'exports_files([\"WORKSPACE\"], visibility = [\"//visibility:public\"])' >> BUILD.bazel"
1327+ ],
1328+ "patch_cmds_win": [
1329+ "Add-Content -Path BUILD.bazel -Value \"`nexports_files([`\"WORKSPACE`\"], visibility = [`\"//visibility:public`\"])`n\" -Force"
1330+ ],
1331+ "sha256": "f535a530151e6c20de8a3078057e332b08887cb3ba1a4735717357e72765cad6",
1332+ "strip_prefix": "zulu15.27.17-ca-jdk15.0.0-win_x64",
1333+ "urls": [
1334+ "https://mirror.bazel.build/cdn.azul.com/zulu/bin/zulu15.27.17-ca-jdk15.0.0-win_x64.zip",
1335+ "https://cdn.azul.com/zulu/bin/zulu15.27.17-ca-jdk15.0.0-win_x64.zip"
1336+ ]
1337+ },
1338+ "rules_cc": {
1339+ "name": "rules_cc",
1340+ "patch_cmds": [
1341+ "test -f BUILD && chmod u+w BUILD || true",
1342+ "echo >> BUILD",
1343+ "echo 'exports_files([\"WORKSPACE\"], visibility = [\"//visibility:public\"])' >> BUILD"
1344+ ],
1345+ "patch_cmds_win": [
1346+ "Add-Content -Path BUILD -Value \"`nexports_files([`\"WORKSPACE`\"], visibility = [`\"//visibility:public`\"])`n\" -Force"
1347+ ],
1348+ "sha256": "d0c573b94a6ef20ef6ff20154a23d0efcb409fb0e1ff0979cec318dfe42f0cdd",
1349+ "strip_prefix": "rules_cc-b1c40e1de81913a3c40e5948f78719c28152486d",
1350+ "urls": [
1351+ "https://mirror.bazel.build/github.com/bazelbuild/rules_cc/archive/b1c40e1de81913a3c40e5948f78719c28152486d.zip",
1352+ "https://github.com/bazelbuild/rules_cc/archive/b1c40e1de81913a3c40e5948f78719c28152486d.zip"
1353+ ]
1354+ },
1355+ "rules_java": {
1356+ "name": "rules_java",
1357+ "patch_cmds": [
1358+ "test -f BUILD && chmod u+w BUILD || true",
1359+ "echo >> BUILD",
1360+ "echo 'exports_files([\"WORKSPACE\"], visibility = [\"//visibility:public\"])' >> BUILD"
1361+ ],
1362+ "patch_cmds_win": [
1363+ "Add-Content -Path BUILD -Value \"`nexports_files([`\"WORKSPACE`\"], visibility = [`\"//visibility:public`\"])`n\" -Force"
1364+ ],
1365+ "sha256": "bc81f1ba47ef5cc68ad32225c3d0e70b8c6f6077663835438da8d5733f917598",
1366+ "strip_prefix": "rules_java-7cf3cefd652008d0a64a419c34c13bdca6c8f178",
1367+ "urls": [
1368+ "https://mirror.bazel.build/github.com/bazelbuild/rules_java/archive/7cf3cefd652008d0a64a419c34c13bdca6c8f178.zip",
1369+ "https://github.com/bazelbuild/rules_java/archive/7cf3cefd652008d0a64a419c34c13bdca6c8f178.zip"
1370+ ]
1371+ },
1372+ "rules_nodejs-2.2.2.tar.gz": {
1373+ "name": "rules_nodejs-2.2.2.tar.gz",
1374+ "sha256": "f2194102720e662dbf193546585d705e645314319554c6ce7e47d8b59f459e9c",
1375+ "urls": [
1376+ "https://mirror.bazel.build/github.com/bazelbuild/rules_nodejs/releases/download/2.2.2/rules_nodejs-2.2.2.tar.gz",
1377+ "https://github.com/bazelbuild/rules_nodejs/releases/download/2.2.2/rules_nodejs-2.2.2.tar.gz"
1378+ ]
1379+ },
1380+ "rules_pkg": {
1381+ "name": "rules_pkg",
1382+ "patch_cmds": [
1383+ "test -f BUILD && chmod u+w BUILD || true",
1384+ "echo >> BUILD",
1385+ "echo 'exports_files([\"WORKSPACE\"], visibility = [\"//visibility:public\"])' >> BUILD"
1386+ ],
1387+ "patch_cmds_win": [
1388+ "Add-Content -Path BUILD -Value \"`nexports_files([`\"WORKSPACE`\"], visibility = [`\"//visibility:public`\"])`n\" -Force"
1389+ ],
1390+ "sha256": "4ba8f4ab0ff85f2484287ab06c0d871dcb31cc54d439457d28fd4ae14b18450a",
1391+ "urls": [
1392+ "https://mirror.bazel.build/github.com/bazelbuild/rules_pkg/releases/download/0.2.4/rules_pkg-0.2.4.tar.gz",
1393+ "https://github.com/bazelbuild/rules_pkg/releases/download/0.2.4/rules_pkg-0.2.4.tar.gz"
1394+ ]
1395+ },
1396+ "rules_pkg-0.2.4.tar.gz": {
1397+ "name": "rules_pkg-0.2.4.tar.gz",
1398+ "sha256": "4ba8f4ab0ff85f2484287ab06c0d871dcb31cc54d439457d28fd4ae14b18450a",
1399+ "urls": [
1400+ "https://mirror.bazel.build/github.com/bazelbuild/rules_pkg/releases/download/0.2.4/rules_pkg-0.2.4.tar.gz",
1401+ "https://github.com/bazelbuild/rules_pkg/releases/download/0.2.4/rules_pkg-0.2.4.tar.gz"
1402+ ]
1403+ },
1404+ "rules_proto": {
1405+ "name": "rules_proto",
1406+ "patch_cmds": [
1407+ "test -f BUILD.bazel && chmod u+w BUILD.bazel || true",
1408+ "echo >> BUILD.bazel",
1409+ "echo 'exports_files([\"WORKSPACE\"], visibility = [\"//visibility:public\"])' >> BUILD.bazel"
1410+ ],
1411+ "patch_cmds_win": [
1412+ "Add-Content -Path BUILD.bazel -Value \"`nexports_files([`\"WORKSPACE`\"], visibility = [`\"//visibility:public`\"])`n\" -Force"
1413+ ],
1414+ "sha256": "8e7d59a5b12b233be5652e3d29f42fba01c7cbab09f6b3a8d0a57ed6d1e9a0da",
1415+ "strip_prefix": "rules_proto-7e4afce6fe62dbff0a4a03450143146f9f2d7488",
1416+ "urls": [
1417+ "https://mirror.bazel.build/github.com/bazelbuild/rules_proto/archive/7e4afce6fe62dbff0a4a03450143146f9f2d7488.tar.gz",
1418+ "https://github.com/bazelbuild/rules_proto/archive/7e4afce6fe62dbff0a4a03450143146f9f2d7488.tar.gz"
1419+ ]
1420+ },
1421+ "six": {
1422+ "build_file": "@com_github_grpc_grpc//third_party:six.BUILD",
1423+ "generator_function": "grpc_deps",
1424+ "generator_name": "six",
1425+ "name": "six",
1426+ "sha256": "d16a0141ec1a18405cd4ce8b4613101da75da0e9a7aec5bdd4fa804d0e0eba73",
1427+ "urls": [
1428+ "https://files.pythonhosted.org/packages/dd/bf/4138e7bfb757de47d1f4b6994648ec67a51efe58fa907c1e11e350cddfca/six-1.12.0.tar.gz"
1429+ ]
1430+ },
1431+ "upb": {
1432+ "generator_function": "grpc_deps",
1433+ "generator_name": "upb",
1434+ "name": "upb",
1435+ "sha256": "7992217989f3156f8109931c1fc6db3434b7414957cb82371552377beaeb9d6c",
1436+ "strip_prefix": "upb-382d5afc60e05470c23e8de19b19fc5ad231e732",
1437+ "urls": [
1438+ "https://storage.googleapis.com/grpc-bazel-mirror/github.com/protocolbuffers/upb/archive/382d5afc60e05470c23e8de19b19fc5ad231e732.tar.gz",
1439+ "https://github.com/protocolbuffers/upb/archive/382d5afc60e05470c23e8de19b19fc5ad231e732.tar.gz"
1440+ ]
1441+ },
1442+ "v1.32.0.tar.gz": {
1443+ "name": "v1.32.0.tar.gz",
1444+ "sha256": "f880ebeb2ccf0e47721526c10dd97469200e40b5f101a0d9774eb69efa0bd07a",
1445+ "urls": [
1446+ "https://mirror.bazel.build/github.com/grpc/grpc/archive/v1.32.0.tar.gz",
1447+ "https://github.com/grpc/grpc/archive/v1.32.0.tar.gz"
1448+ ]
1449+ },
1450+ "v3.13.0.tar.gz": {
1451+ "name": "v3.13.0.tar.gz",
1452+ "sha256": "9b4ee22c250fe31b16f1a24d61467e40780a3fbb9b91c3b65be2a376ed913a1a",
1453+ "urls": [
1454+ "https://mirror.bazel.build/github.com/protocolbuffers/protobuf/archive/v3.13.0.tar.gz",
1455+ "https://github.com/protocolbuffers/protobuf/archive/v3.13.0.tar.gz"
1456+ ]
1457+ },
1458+ "zlib": {
1459+ "build_file": "@com_github_grpc_grpc//third_party:zlib.BUILD",
1460+ "generator_function": "grpc_deps",
1461+ "generator_name": "zlib",
1462+ "name": "zlib",
1463+ "sha256": "6d4d6640ca3121620995ee255945161821218752b551a1a180f4215f7d124d45",
1464+ "strip_prefix": "zlib-cacf7f1d4e3d44d871b605da3b647f07d718623f",
1465+ "urls": [
1466+ "https://storage.googleapis.com/grpc-bazel-mirror/github.com/madler/zlib/archive/cacf7f1d4e3d44d871b605da3b647f07d718623f.tar.gz",
1467+ "https://github.com/madler/zlib/archive/cacf7f1d4e3d44d871b605da3b647f07d718623f.tar.gz"
1468+ ]
1469+ },
1470+ "zulu11.37.17-ca-jdk11.0.6-linux_x64.tar.gz": {
1471+ "name": "zulu11.37.17-ca-jdk11.0.6-linux_x64.tar.gz",
1472+ "sha256": "360626cc19063bc411bfed2914301b908a8f77a7919aaea007a977fa8fb3cde1",
1473+ "urls": [
1474+ "https://mirror.bazel.build/openjdk/azul-zulu11.37.17-ca-jdk11.0.6/zulu11.37.17-ca-jdk11.0.6-linux_x64.tar.gz"
1475+ ]
1476+ },
1477+ "zulu11.37.17-ca-jdk11.0.6-macosx_x64.tar.gz": {
1478+ "name": "zulu11.37.17-ca-jdk11.0.6-macosx_x64.tar.gz",
1479+ "sha256": "e1fe56769f32e2aaac95e0a8f86b5a323da5af3a3b4bba73f3086391a6cc056f",
1480+ "urls": [
1481+ "https://mirror.bazel.build/openjdk/azul-zulu11.37.17-ca-jdk11.0.6/zulu11.37.17-ca-jdk11.0.6-macosx_x64.tar.gz"
1482+ ]
1483+ },
1484+ "zulu11.37.17-ca-jdk11.0.6-win_x64.zip": {
1485+ "name": "zulu11.37.17-ca-jdk11.0.6-win_x64.zip",
1486+ "sha256": "a9695617b8374bfa171f166951214965b1d1d08f43218db9a2a780b71c665c18",
1487+ "urls": [
1488+ "https://mirror.bazel.build/openjdk/azul-zulu11.37.17-ca-jdk11.0.6/zulu11.37.17-ca-jdk11.0.6-win_x64.zip"
1489+ ]
1490+ },
1491+ "zulu11.37.48-ca-jdk11.0.6-linux_aarch64.tar.gz": {
1492+ "name": "zulu11.37.48-ca-jdk11.0.6-linux_aarch64.tar.gz",
1493+ "sha256": "a452f1b9682d9f83c1c14e54d1446e1c51b5173a3a05dcb013d380f9508562e4",
1494+ "urls": [
1495+ "https://mirror.bazel.build/openjdk/azul-zulu11.37.48-ca-jdk11.0.6/zulu11.37.48-ca-jdk11.0.6-linux_aarch64.tar.gz"
1496+ ]
1497+ }
1498+}
pkgs/development/tools/build-managers/bazel/bazel_4/update-srcDeps.pynew file+54
@@ -0,0 +1,54 @@
1+#!/usr/bin/env python3
2+import sys
3+import json
4+
5+if len(sys.argv) != 2:
6+ print("usage: ./this-script src-deps.json < WORKSPACE", file=sys.stderr)
7+ print("Takes the bazel WORKSPACE file and reads all archives into a json dict (by evaling it as python code)", file=sys.stderr)
8+ print("Hail Eris.", file=sys.stderr)
9+ sys.exit(1)
10+
11+http_archives = []
12+
13+# just the kw args are the dict { name, sha256, urls … }
14+def http_archive(**kw):
15+ http_archives.append(kw)
16+# like http_file
17+def http_file(**kw):
18+ http_archives.append(kw)
19+
20+# this is inverted from http_archive/http_file and bundles multiple archives
21+def distdir_tar(**kw):
22+ for archive_name in kw['archives']:
23+ http_archives.append({
24+ "name": archive_name,
25+ "sha256": kw['sha256'][archive_name],
26+ "urls": kw['urls'][archive_name]
27+ })
28+
29+# TODO?
30+def git_repository(**kw):
31+ print(json.dumps(kw, sort_keys=True, indent=4), file=sys.stderr)
32+ sys.exit(1)
33+
34+# execute the WORKSPACE like it was python code in this module,
35+# using all the function stubs from above.
36+exec(sys.stdin.read())
37+
38+# transform to a dict with the names as keys
39+d = { el['name']: el for el in http_archives }
40+
41+def has_urls(el):
42+ return ('url' in el and el['url']) or ('urls' in el and el['urls'])
43+def has_sha256(el):
44+ return 'sha256' in el and el['sha256']
45+bad_archives = list(filter(lambda el: not has_urls(el) or not has_sha256(el), d.values()))
46+if bad_archives:
47+ print('Following bazel dependencies are missing url or sha256', file=sys.stderr)
48+ print('Check bazel sources for master or non-checksummed dependencies', file=sys.stderr)
49+ for el in bad_archives:
50+ print(json.dumps(el, sort_keys=True, indent=4), file=sys.stderr)
51+ sys.exit(1)
52+
53+with open(sys.argv[1], "w") as f:
54+ print(json.dumps(d, sort_keys=True, indent=4), file=f)
pkgs/development/tools/build-managers/bazel/java-test.nix+1−1
@@ -38,7 +38,7 @@ let
3838 ''));
3939
4040 testBazel = bazelTest {
41− name = "bazel-test-cpp";
41+ name = "bazel-test-java";
4242 inherit workspaceDir;
4343 bazelPkg = bazel;
4444 buildInputs = [ openjdk8 ];
pkgs/development/tools/build-managers/bazel/protobuf-test.nix+32−10
@@ -17,15 +17,29 @@ let
1717 com_google_protobuf = fetchFromGitHub {
1818 owner = "protocolbuffers";
1919 repo = "protobuf";
20− rev = "v3.7.0";
21− sha256 = "0nlxif4cajqllsj2vdh7zp14ag48fb8lsa64zmq8625q9m2lcmdh";
20+ rev = "v3.13.0";
21+ sha256 = "1nqsvi2yfr93kiwlinz8z7c68ilg1j75b2vcpzxzvripxx5h6xhd";
2222 };
2323
2424 bazel_skylib = fetchFromGitHub {
2525 owner = "bazelbuild";
2626 repo = "bazel-skylib";
27− rev = "f83cb8dd6f5658bc574ccd873e25197055265d1c";
28− sha256 = "091fb0ky0956wgv8gghy9ay3yfx6497mb72qvibf0y9dllmxyn9l";
27+ rev = "2ec2e6d715e993d96ad6222770805b5bd25399ae";
28+ sha256 = "1z2r2vx6kj102zvp3j032djyv99ski1x1sl4i3p6mswnzrzna86s";
29+ };
30+
31+ rules_python = fetchFromGitHub {
32+ owner = "bazelbuild";
33+ repo = "rules_python";
34+ rev = "c8c79aae9aa1b61d199ad03d5fe06338febd0774";
35+ sha256 = "1zn58wv5wcylpi0xj7riw34i1jjpqahanxx8y9srwrv0v93b6pqz";
36+ };
37+
38+ rules_proto = fetchFromGitHub {
39+ owner = "bazelbuild";
40+ repo = "rules_proto";
41+ rev = "a0761ed101b939e19d83b2da5f59034bffc19c12";
42+ sha256 = "09lqfj5fxm1fywxr5w8pnpqd859gb6751jka9fhxjxjzs33glhqf";
2943 };
3044
3145 net_zlib = fetchurl rec {
@@ -40,7 +54,9 @@ let
4054
4155 load("//:proto-support.bzl", "protobuf_deps")
4256 protobuf_deps()
43− '';
57+ load("@rules_proto//proto:repositories.bzl", "rules_proto_toolchains")
58+ rules_proto_toolchains()
59+ '';
4460
4561 protoSupport = writeText "proto-support.bzl" ''
4662 """Load dependencies needed to compile the protobuf library as a 3rd-party consumer."""
@@ -62,13 +78,17 @@ let
6278 name = "bazel_skylib",
6379 path = "${bazel_skylib}",
6480 )
65−
66− native.bind(
67− name = "zlib",
68− actual = "@net_zlib//:zlib",
81+ native.local_repository(
82+ name = "rules_proto",
83+ path = "${rules_proto}",
84+ )
85+ native.local_repository(
86+ name = "rules_python",
87+ path = "${rules_python}",
6988 )
89+
7090 http_archive(
71− name = "net_zlib",
91+ name = "zlib",
7292 build_file = "@com_google_protobuf//:third_party/zlib.BUILD",
7393 sha256 = "${net_zlib.sha256}",
7494 strip_prefix = "zlib-1.2.11",
@@ -89,6 +109,8 @@ let
89109 '';
90110
91111 personBUILD = writeText "BUILD" ''
112+ load("@rules_proto//proto:defs.bzl", "proto_library")
113+
92114 proto_library(
93115 name = "person_proto",
94116 srcs = ["person.proto"],
pkgs/top-level/all-packages.nix+10
@@ -11750,6 +11750,16 @@ in
1175011750 bazel_self = bazel_3;
1175111751 };
1175211752
11753+ bazel_4 = callPackage ../development/tools/build-managers/bazel/bazel_4 {
11754+ inherit (darwin) cctools;
11755+ inherit (darwin.apple_sdk.frameworks) CoreFoundation CoreServices Foundation;
11756+ buildJdk = jdk11_headless;
11757+ buildJdkName = "java11";
11758+ runJdk = jdk11_headless;
11759+ stdenv = if stdenv.cc.isClang then llvmPackages.stdenv else stdenv;
11760+ bazel_self = bazel_4;
11761+ };
11762+
1175311763 bazel-buildtools = callPackage ../development/tools/build-managers/bazel/buildtools { };
1175411764 buildifier = bazel-buildtools;
1175511765 buildozer = bazel-buildtools;