blob: 6627bd2186d05f67d669f354c663f3c3b11a6d6e [file] [log] [blame]
Han-Wen Nienhuysd08b27f2015-02-25 16:45:20 +01001# Packaging
2
Laszlo Csomor3e023182019-08-01 05:05:09 -07003load("//tools/python:private/defs.bzl", "py_binary", "py_library")
Philipp Wollermann4c558982017-07-27 18:01:12 +02004load(":embedded_tools.bzl", "srcsfile")
Laszlo Csomord784b5f2018-06-20 02:06:58 -07005load(":rule_size_test.bzl", "rule_size_test")
Philipp Wollermann4c558982017-07-27 18:01:12 +02006
Tobias Werth218e8f62018-12-13 04:44:35 -08007exports_files(["jdeps_modules.golden"])
8
Benjamin Peterson9eb19a62020-02-14 09:22:22 -08009md5_cmd = "set -e -o pipefail && %s $(SRCS) | %s | %s > $@"
Han-Wen Nienhuysd08b27f2015-02-25 16:45:20 +010010
Lukacs Berkieb851fe2015-10-19 10:52:31 +000011[genrule(
12 name = "install_base_key-file" + suffix,
Han-Wen Nienhuysd08b27f2015-02-25 16:45:20 +010013 srcs = [
kkress73dcff32020-04-06 11:14:48 -070014 "//src/main/java/com/google/devtools/build/lib/bazel:BazelServer_deploy.jar",
adonovan1e4f0692020-06-10 06:22:23 -070015 "//src/main/java/com/google/devtools/build/lib/syntax:cpu_profiler",
16 # TODO(brandjon): ensure we haven't forgotten any package-zip items,
17 # otherwise bazel won't correctly reextract modified files.
Han-Wen Nienhuysd08b27f2015-02-25 16:45:20 +010018 "//src/main/cpp:client",
Han-Wen Nienhuysd08b27f2015-02-25 16:45:20 +010019 "//src/main/tools:build-runfiles",
20 "//src/main/tools:process-wrapper",
Philipp Wollermann278814b2016-07-15 14:41:54 +000021 "//src/main/tools:linux-sandbox",
Chris Parsons5eb86fe2016-07-21 15:24:55 +000022 "//tools/osx:xcode-locator",
Philipp Wollermann4c558982017-07-27 18:01:12 +020023 ] + embedded_tools_target,
Lukacs Berkieb851fe2015-10-19 10:52:31 +000024 outs = ["install_base_key" + suffix],
Han-Wen Nienhuysd08b27f2015-02-25 16:45:20 +010025 cmd = select({
Benjamin Peterson9eb19a62020-02-14 09:22:22 -080026 "//src/conditions:darwin": md5_cmd % ("/sbin/md5", "/sbin/md5", "head -c 32"),
27 "//src/conditions:darwin_x86_64": md5_cmd % ("/sbin/md5", "/sbin/md5", "head -c 32"),
28 "//src/conditions:freebsd": md5_cmd % ("/sbin/md5", "/sbin/md5", "head -c 32"),
29 # We avoid using the `head` tool's `-c` option, since it does not exist
30 # on OpenBSD.
31 "//src/conditions:openbsd": md5_cmd % ("/bin/md5", "/bin/md5", "dd bs=32 count=1"),
32 "//conditions:default": md5_cmd % ("md5sum", "md5sum", "head -c 32"),
Han-Wen Nienhuysd08b27f2015-02-25 16:45:20 +010033 }),
Philipp Wollermann4c558982017-07-27 18:01:12 +020034) for suffix, embedded_tools_target in {
Tobias Werth218e8f62018-12-13 04:44:35 -080035 "_jdk_allmodules": [":embedded_tools_jdk_allmodules"],
36 "_jdk_minimal": [":embedded_tools_jdk_minimal"],
Tobias Werth5d2d06c2019-01-18 05:17:26 -080037 "_dev_jdk": [":embedded_tools_dev_jdk"],
Liam Miller-Cushon7c49bd92018-06-18 09:29:52 -070038 "_nojdk": [":embedded_tools_nojdk"],
Lukacs Berkieb851fe2015-10-19 10:52:31 +000039 "_notools": [],
40}.items()]
Han-Wen Nienhuysd08b27f2015-02-25 16:45:20 +010041
Damien Martin-Guillerezb6afdbd2015-05-27 18:29:18 +000042# Try to grab the java version from the java_toolchain.
Damien Martin-Guillerez4bf2c1a2015-10-02 09:19:18 +000043# Unfortunately, we don't have access to the javac options
44# so we cannot get it from the command-line options.
Damien Martin-Guillerezb6afdbd2015-05-27 18:29:18 +000045genquery(
46 name = "java_toolchain_content",
dbabkin35df7152018-06-26 05:47:54 -070047 expression = "kind(java_toolchain, deps(@bazel_tools//tools/jdk:current_java_toolchain))",
Damien Martin-Guillerezb6afdbd2015-05-27 18:29:18 +000048 opts = ["--output=xml"],
dbabkin35df7152018-06-26 05:47:54 -070049 scope = ["@bazel_tools//tools/jdk:current_java_toolchain"],
Damien Martin-Guillerezb6afdbd2015-05-27 18:29:18 +000050)
51
Damien Martin-Guillereza3bad0c2016-05-03 20:47:51 +000052# Create dummy tools so we can do select to prevent building iOS target on
53# Linux.
54OSX_DUMMY_TARGETS = [
Damien Martin-Guillereza3bad0c2016-05-03 20:47:51 +000055 "src/tools/xcode/realpath/realpath",
56 "src/tools/xcode/stdredirect/StdRedirect.dylib",
57]
58
59[
60 genrule(
61 name = "dummy_darwin_tool_" + name.replace("/", "_"),
62 srcs = [],
63 outs = ["dummy_darwin_tools/" + name],
64 cmd = "touch $@",
65 )
66 for name in OSX_DUMMY_TARGETS
67]
68
Damien Martin-Guillerez3d796fe2016-01-11 10:07:57 +000069filegroup(
70 name = "darwin_tools",
71 srcs = [
Damien Martin-Guillerez3d796fe2016-01-11 10:07:57 +000072 "//src/tools/xcode/realpath:realpath",
Chris Parsons5eb86fe2016-07-21 15:24:55 +000073 "//tools/osx:xcode_locator.m",
Damien Martin-Guillerez3d796fe2016-01-11 10:07:57 +000074 ] + select({
tomlu1a483d42017-11-30 15:08:40 -080075 "//src/conditions:iphonesdk": ["//src/tools/xcode/stdredirect:StdRedirect.dylib"],
Damien Martin-Guillereza3bad0c2016-05-03 20:47:51 +000076 "//conditions:default": [":dummy_darwin_tool_src_tools_xcode_stdredirect_StdRedirect.dylib"],
Damien Martin-Guillerez3d796fe2016-01-11 10:07:57 +000077 }),
78)
79
Damien Martin-Guillereza3bad0c2016-05-03 20:47:51 +000080filegroup(
81 name = "dummy_darwin_tools",
82 srcs = [
83 "dummy_darwin_tool_" + name.replace("/", "_")
84 for name in OSX_DUMMY_TARGETS
85 ],
86)
87
László Csomor5f99fda2017-08-11 09:28:12 +020088py_library(
89 name = "create_embedded_tools_lib",
90 srcs = ["create_embedded_tools_lib.py"],
László Csomor0783b9e2017-08-11 10:28:36 +020091 visibility = ["//:__pkg__"],
László Csomor5f99fda2017-08-11 09:28:12 +020092)
93
Philipp Wollermann4c558982017-07-27 18:01:12 +020094py_binary(
95 name = "create_embedded_tools",
96 srcs = ["create_embedded_tools.py"],
László Csomor5f99fda2017-08-11 09:28:12 +020097 deps = [":create_embedded_tools_lib"],
Philipp Wollermann4c558982017-07-27 18:01:12 +020098)
99
iirinaf4604ba2019-01-16 02:38:07 -0800100# The tools Bazel uses to compile Java.
101# TODO(#6316): Gradually remove the targets here.
102JAVA_TOOLS = [
iirinaf4604ba2019-01-16 02:38:07 -0800103 "//src/java_tools/buildjar/java/com/google/devtools/build/buildjar/jarhelper:srcs",
iirinaf4604ba2019-01-16 02:38:07 -0800104 "//src/java_tools/import_deps_checker/java/com/google/devtools/build/importdeps:embedded_tools",
iirinaba3ebcb2019-03-21 08:02:56 -0700105 "//third_party/jarjar:embedded_build_and_license",
iirinaebdbdcd2019-04-09 04:43:08 -0700106]
iirinaf4604ba2019-01-16 02:38:07 -0800107
Philipp Wollermann4c558982017-07-27 18:01:12 +0200108# TODO(philwo): Clean this up, once a Bazel that can run py_binary and sh_binary
gregcead752cc2020-04-10 10:32:59 -0700109# in Starlark rules on Windows has been released.
Philipp Wollermann4c558982017-07-27 18:01:12 +0200110[filegroup(
111 name = "embedded_tools" + suffix + "_srcs",
iirinaf4604ba2019-01-16 02:38:07 -0800112 srcs = JAVA_TOOLS + [
Tobias Werth218e8f62018-12-13 04:44:35 -0800113 "BUILD.tools",
114 "//tools:embedded_tools_srcs",
115 "//third_party:gpl-srcs",
Tobias Werth9ef27942020-05-18 08:14:03 -0700116 "//third_party/grpc:embedded_tools_srcs",
117 "//third_party/grpc/bazel:embedded_tools_srcs",
iirina2d446752019-03-15 09:00:35 -0700118 "//third_party/ijar:embedded_zipper_sources",
119 "//third_party/ijar:zipper",
Tobias Werth218e8f62018-12-13 04:44:35 -0800120 "//third_party/java/j2objc:embedded_tools_srcs",
laszlocsomord93a1462019-11-04 09:14:39 -0800121 "//third_party/py/abseil:srcs",
Tobias Werth218e8f62018-12-13 04:44:35 -0800122 "//third_party/py/concurrent:srcs",
Tobias Werth218e8f62018-12-13 04:44:35 -0800123 "//third_party/py/six:srcs",
124 "//src/conditions:embedded_tools",
Tobias Werth218e8f62018-12-13 04:44:35 -0800125 "//src/tools/android/java/com/google/devtools/build/android:embedded_tools",
126 "//src/tools/launcher:srcs",
Tobias Werth218e8f62018-12-13 04:44:35 -0800127 "//src/main/cpp/util:embedded_tools",
128 "//src/main/native:embedded_tools",
129 "//src/main/protobuf:srcs",
Tobias Werth218e8f62018-12-13 04:44:35 -0800130 "//third_party/def_parser:srcs",
Tobias Werth218e8f62018-12-13 04:44:35 -0800131 "//third_party/zlib:embedded_tools",
132 ] + select({
133 "//src/conditions:darwin": [
134 ":darwin_tools",
135 ],
136 "//src/conditions:darwin_x86_64": [
137 ":darwin_tools",
138 ],
139 "//conditions:default": [
140 ":dummy_darwin_tools",
141 ],
142 }) + select({
143 "//src/conditions:windows": [
144 "//src/tools/launcher:launcher",
145 "//third_party/def_parser:def_parser",
146 ],
147 "//conditions:default": [],
Tobias Werth218e8f62018-12-13 04:44:35 -0800148 }) +
149 jdk,
cushon72141a12018-06-11 08:30:15 -0700150 visibility = [
151 "//src/test:__subpackages__", # For integration tests
152 ],
Tobias Werth218e8f62018-12-13 04:44:35 -0800153) for suffix, jdk in {
Tobias Wertha87451a2019-01-29 07:03:58 -0800154 "_jdk_allmodules": [":embedded_jdk_allmodules_cached"],
Tobias Werthfbf8fb92019-01-09 11:22:11 -0800155 "_jdk_minimal": [":embedded_jdk_minimal_cached"],
Tobias Werth5d2d06c2019-01-18 05:17:26 -0800156 "_dev_jdk": [":embedded_jdk_minimal"],
Tobias Werth218e8f62018-12-13 04:44:35 -0800157 "_nojdk": [],
158}.items()]
cushon72141a12018-06-11 08:30:15 -0700159
Laszlo Csomord784b5f2018-06-20 02:06:58 -0700160rule_size_test(
161 name = "embedded_tools_size_test",
Tobias Werth218e8f62018-12-13 04:44:35 -0800162 src = ":embedded_tools_jdk_allmodules_srcs",
Laszlo Csomord784b5f2018-06-20 02:06:58 -0700163 # WARNING: Only adjust the number in `expect` if you are intentionally
164 # adding or removing embedded tools. Know that the more embedded tools there
165 # are in Bazel, the bigger the binary becomes and the slower Bazel starts.
sgjessebfa65962020-04-16 23:36:50 -0700166 expect = 500,
Laszlo Csomord784b5f2018-06-20 02:06:58 -0700167 margin = 5, # percentage
168)
169
cushon72141a12018-06-11 08:30:15 -0700170filegroup(
Tobias Wertha87451a2019-01-29 07:03:58 -0800171 name = "embedded_jdk_allmodules_cached",
cushon72141a12018-06-11 08:30:15 -0700172 srcs = select({
tomlu1a483d42017-11-30 15:08:40 -0800173 "//src/conditions:darwin": [
Philipp Wollermann95048272017-03-17 15:11:58 +0000174 "@openjdk_macos//file",
175 ],
tomlu1a483d42017-11-30 15:08:40 -0800176 "//src/conditions:darwin_x86_64": [
Philipp Wollermann95048272017-03-17 15:11:58 +0000177 "@openjdk_macos//file",
178 ],
tomlu1a483d42017-11-30 15:08:40 -0800179 "//src/conditions:windows": [
pcloudy05c20aa2017-06-29 11:38:30 +0200180 "@openjdk_win//file",
181 ],
Arielle Albonfa7e49f2018-07-31 00:57:54 -0700182 "//src/conditions:linux_aarch64": [
183 "@openjdk_linux_aarch64//file",
184 ],
Philipp Wollermann95048272017-03-17 15:11:58 +0000185 "//conditions:default": [
186 "@openjdk_linux//file",
187 ],
cushon72141a12018-06-11 08:30:15 -0700188 }),
189 visibility = ["//src/test/shell/bazel:__pkg__"],
190)
Damien Martin-Guillerez12997672015-09-03 21:54:08 +0000191
Tobias Werth218e8f62018-12-13 04:44:35 -0800192filegroup(
Tobias Werthfbf8fb92019-01-09 11:22:11 -0800193 name = "embedded_jdk_minimal_cached",
194 srcs = select({
195 "//src/conditions:darwin": [
196 "@openjdk_macos_minimal//file",
197 ],
198 "//src/conditions:darwin_x86_64": [
199 "@openjdk_macos_minimal//file",
200 ],
201 "//src/conditions:windows": [
202 "@openjdk_win_minimal//file",
203 ],
philwo9f7fe692019-06-27 06:53:12 -0700204 "//src/conditions:linux_aarch64": [
205 "@openjdk_linux_aarch64_minimal//file",
206 ],
Tobias Werthfbf8fb92019-01-09 11:22:11 -0800207 "//conditions:default": [
208 "@openjdk_linux_minimal//file",
209 ],
210 }),
211 visibility = ["//src/test/shell/bazel:__pkg__"],
212)
213
214filegroup(
Tobias Werth218e8f62018-12-13 04:44:35 -0800215 name = "embedded_jdk_vanilla",
216 srcs = select({
217 "//src/conditions:darwin": [
218 "@openjdk_macos_vanilla//file",
219 ],
220 "//src/conditions:darwin_x86_64": [
221 "@openjdk_macos_vanilla//file",
222 ],
223 "//src/conditions:windows": [
224 "@openjdk_win_vanilla//file",
225 ],
226 "//src/conditions:linux_aarch64": [
227 "@openjdk_linux_aarch64_vanilla//file",
228 ],
Jason Furmanek04e073e2020-05-28 05:48:09 -0700229 "//src/conditions:linux_ppc64le": [
230 "@openjdk_linux_ppc64le_vanilla//file",
231 ],
Ruixin Baoe14a6f22020-08-21 06:17:24 -0700232 "//src/conditions:linux_s390x": [
233 "@openjdk_linux_s390x_vanilla//file",
234 ],
Tobias Werth218e8f62018-12-13 04:44:35 -0800235 "//conditions:default": [
236 "@openjdk_linux_vanilla//file",
237 ],
238 }),
239 visibility = ["//src/test/shell/bazel:__pkg__"],
240)
241
242sh_binary(
243 name = "minimize_jdk",
244 srcs = ["minimize_jdk.sh"],
245)
246
twerth683922c2018-12-20 05:12:08 -0800247filegroup(
Tobias Werth218e8f62018-12-13 04:44:35 -0800248 name = "embedded_jdk_minimal",
twerth683922c2018-12-20 05:12:08 -0800249 srcs = select({
250 "//src/conditions:windows": [
251 ":embedded_jdk_minimal.zip",
252 ],
253 "//conditions:default": [
254 ":embedded_jdk_minimal.tar.gz",
255 ],
256 }),
257)
258
Tobias Wertha87451a2019-01-29 07:03:58 -0800259filegroup(
260 name = "embedded_jdk_allmodules",
261 srcs = select({
262 "//src/conditions:windows": [
263 ":embedded_jdk_allmodules.zip",
264 ],
265 "//conditions:default": [
266 ":embedded_jdk_allmodules.tar.gz",
267 ],
268 }),
Tobias Werth144912e2019-02-01 10:40:20 -0800269 visibility = ["//src/test/shell/bazel:__pkg__"],
Tobias Wertha87451a2019-01-29 07:03:58 -0800270)
271
twerth683922c2018-12-20 05:12:08 -0800272[genrule(
273 name = "embedded_jdk_minimal" + suffix,
Tobias Werth218e8f62018-12-13 04:44:35 -0800274 srcs = [
275 ":embedded_jdk_vanilla",
276 ":minimize_jdk.sh",
277 ":jdeps_modules.golden",
278 ],
twerth683922c2018-12-20 05:12:08 -0800279 outs = ["minimal_jdk" + suffix],
Tobias Werth218e8f62018-12-13 04:44:35 -0800280 cmd = "$(location :minimize_jdk.sh) $(location :embedded_jdk_vanilla) $(location :jdeps_modules.golden) $(OUTS)",
281 visibility = ["//src/test/shell/bazel:__pkg__"],
twerth683922c2018-12-20 05:12:08 -0800282) for suffix in [
283 ".zip",
284 ".tar.gz",
285]]
Tobias Werth218e8f62018-12-13 04:44:35 -0800286
Tobias Wertha87451a2019-01-29 07:03:58 -0800287[genrule(
288 name = "embedded_jdk_allmodules" + suffix,
289 srcs = [
290 ":embedded_jdk_vanilla",
291 ":minimize_jdk.sh",
292 ":jdeps_modules.golden",
293 ],
294 outs = ["allmodules_jdk" + suffix],
295 cmd = "$(location :minimize_jdk.sh) --allmodules $(location :embedded_jdk_vanilla) $(location :jdeps_modules.golden) $(OUTS)",
296 visibility = ["//src/test/shell/bazel:__pkg__"],
297) for suffix in [
298 ".zip",
299 ".tar.gz",
300]]
301
Philipp Wollermann4c558982017-07-27 18:01:12 +0200302[srcsfile(
303 name = "embedded_tools" + suffix + "_params",
304 srcs = [":embedded_tools" + suffix + "_srcs"],
305 out = "embedded_tools" + suffix + ".params",
306) for suffix in [
Tobias Werth218e8f62018-12-13 04:44:35 -0800307 "_jdk_allmodules",
308 "_jdk_minimal",
Tobias Werth5d2d06c2019-01-18 05:17:26 -0800309 "_dev_jdk",
Liam Miller-Cushon7c49bd92018-06-18 09:29:52 -0700310 "_nojdk",
Philipp Wollermann4c558982017-07-27 18:01:12 +0200311]]
312
Tobias Werth218e8f62018-12-13 04:44:35 -0800313[genrule(
314 name = "embedded_tools" + suffix,
Philipp Wollermann4c558982017-07-27 18:01:12 +0200315 srcs = [
Tobias Werth218e8f62018-12-13 04:44:35 -0800316 ":embedded_tools" + suffix + "_params",
317 ":embedded_tools" + suffix + "_srcs",
Philipp Wollermann4c558982017-07-27 18:01:12 +0200318 ],
Tobias Werth218e8f62018-12-13 04:44:35 -0800319 outs = ["embedded_tools" + suffix + ".zip"],
320 cmd = "$(location :create_embedded_tools) \"$@\" $(location :embedded_tools" + suffix + "_params)",
Philipp Wollermann4c558982017-07-27 18:01:12 +0200321 tools = [":create_embedded_tools"],
Tobias Werth218e8f62018-12-13 04:44:35 -0800322) for suffix in [
323 "_jdk_allmodules",
324 "_jdk_minimal",
Tobias Werth5d2d06c2019-01-18 05:17:26 -0800325 "_dev_jdk",
Tobias Werth218e8f62018-12-13 04:44:35 -0800326 "_nojdk",
327]]
Philipp Wollermann4c558982017-07-27 18:01:12 +0200328
Lukacs Berkieb851fe2015-10-19 10:52:31 +0000329[genrule(
330 name = "package-zip" + suffix,
Philipp Wollermann95048272017-03-17 15:11:58 +0000331 srcs = ([":embedded_tools" + suffix + ".zip"] if embed else []) + [
Lukacs Berkieb851fe2015-10-19 10:52:31 +0000332 # The script assumes that the embedded tools zip (if exists) is the
hlopkoaaf64572019-06-14 02:33:56 -0700333 # first item here, the deploy jar the second, install base key is the
334 # third, and platforms archive is the fourth.
kkress73dcff32020-04-06 11:14:48 -0700335 "//src/main/java/com/google/devtools/build/lib/bazel:BazelServer_deploy.jar",
Lukacs Berkieb851fe2015-10-19 10:52:31 +0000336 "install_base_key" + suffix,
hlopkoaaf64572019-06-14 02:33:56 -0700337 ":platforms_archive",
adonovan1e4f0692020-06-10 06:22:23 -0700338 # Ordinary items follow:
339 "//src/main/java/com/google/devtools/build/lib/syntax:cpu_profiler",
Googler50712062020-02-05 01:57:11 -0800340 "//src/main/native:target-os-unix-native-lib",
341 "//src/main/native/windows:target-os-native-lib",
Han-Wen Nienhuysd08b27f2015-02-25 16:45:20 +0100342 "//src/main/tools:build-runfiles",
343 "//src/main/tools:process-wrapper",
Kristina Chodorowb5ecdab2015-03-16 17:55:04 +0000344 "//src/main/tools:jdk-support",
Philipp Wollermann278814b2016-07-15 14:41:54 +0000345 "//src/main/tools:linux-sandbox",
Chris Parsons5eb86fe2016-07-21 15:24:55 +0000346 "//tools/osx:xcode-locator",
jmmv18a0e232019-02-21 07:34:02 -0800347 ] + select({
348 "//src/conditions:windows": [],
349 "//conditions:default": [
350 "//src/main/tools:daemonize",
351 ],
352 }),
Lukacs Berkieb851fe2015-10-19 10:52:31 +0000353 outs = ["package" + suffix + ".zip"],
aldersondrived6145a02020-01-21 08:11:48 -0800354 cmd = "$(location :package_bazel_on_host_platform) $@ " + ("" if embed else "''") + " $(SRCS)",
355 tools = [":package_bazel_on_host_platform"],
Lukacs Berkieb851fe2015-10-19 10:52:31 +0000356) for suffix, embed in [
Tobias Werth218e8f62018-12-13 04:44:35 -0800357 ("_jdk_allmodules", True),
358 ("_jdk_minimal", True),
Tobias Werth5d2d06c2019-01-18 05:17:26 -0800359 ("_dev_jdk", True),
Damien Martin-Guillerez04d46ab2016-04-13 19:27:56 +0000360 ("_notools", False),
Liam Miller-Cushon7c49bd92018-06-18 09:29:52 -0700361 ("_nojdk", True),
Lukacs Berkieb851fe2015-10-19 10:52:31 +0000362]]
Han-Wen Nienhuysd08b27f2015-02-25 16:45:20 +0100363
hlopkoaaf64572019-06-14 02:33:56 -0700364genrule(
aldersondrived6145a02020-01-21 08:11:48 -0800365 name = "package_bazel_on_host_platform",
366 srcs = ["package-bazel.sh"],
367 outs = ["package-bazel-on-host-platform.sh"],
368 cmd = select({
369 "//src/conditions:openbsd": "cat $(SRCS) | sed -e 's@#!/bin/bash@#!/usr/local/bin/bash@' > $@",
370 "//conditions:default": "cp $(SRCS) $@",
371 }),
372)
373
374genrule(
hlopkoaaf64572019-06-14 02:33:56 -0700375 name = "platforms_archive",
376 srcs = ["@platforms//:srcs"],
377 outs = ["platforms.zip"],
378 # Removing the WORKSPACE file since local_repository creates it no matter what and leaving
379 # it there would make the zip nondeterministic.
380 cmd = "zip -qX $@ $$(echo $(SRCS) | xargs -n 1 | grep -v '.*/WORKSPACE$$' | sort | xargs)",
381)
382
Lukacs Berkieb851fe2015-10-19 10:52:31 +0000383[genrule(
384 name = "bazel-bin" + suffix,
Han-Wen Nienhuysd08b27f2015-02-25 16:45:20 +0100385 srcs = [
386 "//src/main/cpp:client",
Jakob Buchgraber92931bd2019-07-18 07:38:59 -0700387 "package-zip" + jdk,
Han-Wen Nienhuysd08b27f2015-02-25 16:45:20 +0100388 ],
Lukacs Berkieb851fe2015-10-19 10:52:31 +0000389 outs = ["bazel" + suffix],
Yun Peng6ffb8e42016-04-14 16:55:02 +0000390 # In msys, a file path without .exe suffix(say foo), refers to a file with .exe
391 # suffix(say foo.exe), if foo.exe exists and foo doesn't. So, on windows, we
392 # need to remove bazel.exe first, so that cat to bazel won't fail.
Jakob Buchgraber92931bd2019-07-18 07:38:59 -0700393 cmd = "rm -f $@; cat $(location //src/main/cpp:client) $(location :package-zip" + jdk + ") > $@ && zip -qA $@",
Tobias Werth218e8f62018-12-13 04:44:35 -0800394 executable = 1,
395 output_to_bindir = 1,
396 visibility = [
397 "//scripts:__pkg__", # For bash completion generation
398 "//scripts/packages:__pkg__", # For installer generation
399 "//src/java:__subpackages__", # For command line reference generation
400 "//src/test:__subpackages__", # For integration tests
401 ],
Tobias Werthfbf8fb92019-01-09 11:22:11 -0800402) for suffix, jdk in [
403 ("-dev", "_jdk_allmodules"),
404 ("", "_jdk_minimal"),
Jakob Buchgraber92931bd2019-07-18 07:38:59 -0700405 ("_jdk_allmodules", "_jdk_allmodules"),
406 ("_jdk_minimal", "_jdk_minimal"),
407 ("_dev_jdk", "_dev_jdk"),
408 ("_notools", "_notools"),
409 ("_nojdk", "_nojdk"),
Tobias Werthfbf8fb92019-01-09 11:22:11 -0800410]]
Tobias Werth218e8f62018-12-13 04:44:35 -0800411
Dmitry Lomov9d40a602016-02-15 16:15:03 +0000412# Build an executable named `bazel.exe`.
413# Works on all platforms but only makes sense on Windows.
414# Workaround for non-configurability of genrule's `outs` attribute.
415[genrule(
416 name = "bazel-bin" + suffix + ".exe",
417 srcs = [":bazel-bin" + suffix],
418 outs = ["bazel" + suffix + ".exe"],
419 cmd = "cp $(location :bazel-bin" + suffix + ") $@",
420 executable = 1,
421 output_to_bindir = 1,
422 visibility = [
423 "//scripts:__pkg__", # For bash completion generation
424 "//scripts/packages:__pkg__", # For installer generation
425 "//src/test:__subpackages__", # For integration tests
426 ],
427) for suffix in [
428 "",
Tobias Werthe7438ae2019-07-02 08:17:44 -0700429 "-dev",
Dmitry Lomov9d40a602016-02-15 16:15:03 +0000430 "_notools",
Liam Miller-Cushon7c49bd92018-06-18 09:29:52 -0700431 "_nojdk",
Dmitry Lomov9d40a602016-02-15 16:15:03 +0000432]]
433
Damien Martin-Guillerezde54bca2016-02-29 10:49:43 +0000434filegroup(
435 name = "srcs",
436 srcs = glob(["**"]) + [
tomlu1a483d42017-11-30 15:08:40 -0800437 "//src/conditions:srcs",
Damien Martin-Guillerezde54bca2016-02-29 10:49:43 +0000438 "//src/java_tools/buildjar:srcs",
Benjamin Peterson425f9422018-02-09 14:05:17 -0800439 "//src/java_tools/import_deps_checker:srcs",
ulfjack26ad43d2017-08-28 12:30:44 +0200440 "//src/java_tools/junitrunner:srcs",
Damien Martin-Guillerezde54bca2016-02-29 10:49:43 +0000441 "//src/java_tools/singlejar:srcs",
442 "//src/main/cpp:srcs",
Laszlo Csomor3e023182019-08-01 05:05:09 -0700443 "//src/main/res:srcs",
Damien Martin-Guillerezde54bca2016-02-29 10:49:43 +0000444 "//src/main/java/com/google/devtools/build/docgen:srcs",
fellyc5c078c2019-07-31 12:05:24 -0700445 "//src/main/java/com/google/devtools/build/lib/actionsketch:srcs",
Damien Martin-Guillerezde54bca2016-02-29 10:49:43 +0000446 "//src/main/java/com/google/devtools/build/lib:srcs",
philwo45743d02019-06-03 06:13:30 -0700447 "//src/main/java/com/google/devtools/build/lib/includescanning:srcs",
steinmanacf55d82019-05-21 09:49:58 -0700448 "//src/main/java/com/google/devtools/build/lib/network:srcs",
philwo62dd1742019-06-04 05:27:37 -0700449 "//src/main/java/com/google/devtools/build/lib/outputfilter:srcs",
cparsons5d85e752018-06-26 13:47:28 -0700450 "//src/main/java/com/google/devtools/build/skydoc:srcs",
Damien Martin-Guillerezde54bca2016-02-29 10:49:43 +0000451 "//src/main/java/com/google/devtools/build/skyframe:srcs",
452 "//src/main/java/com/google/devtools/common/options:srcs",
adonovancb5dc082020-05-18 12:02:00 -0700453 "//src/main/java/net/starlark/java/cmd:srcs",
454 "//src/main/java/net/starlark/java/spelling:srcs",
Damien Martin-Guillerezde54bca2016-02-29 10:49:43 +0000455 "//src/main/native:srcs",
456 "//src/main/protobuf:srcs",
457 "//src/main/tools:srcs",
Damien Martin-Guillerez7d265e02016-07-01 13:33:48 +0000458 "//src/test/cpp:srcs",
Googler3e830922017-03-17 17:39:00 +0000459 "//src/test/gen:srcs",
Laszlo Csomor3e023182019-08-01 05:05:09 -0700460 "//src/test/res:srcs",
Laszlo Csomordcc80fb2019-08-09 05:05:21 -0700461 "//src/test/native/windows:srcs",
Damien Martin-Guillerez7d265e02016-07-01 13:33:48 +0000462 "//src/test/java/com/google/devtools/build/android:srcs",
463 "//src/test/java/com/google/devtools/build/docgen:srcs",
464 "//src/test/java/com/google/devtools/build/lib:srcs",
ruperts9f959c52018-01-04 11:54:02 -0800465 "//src/test/java/com/google/devtools/build/lib/shell:srcs",
cparsons5d85e752018-06-26 13:47:28 -0700466 "//src/test/java/com/google/devtools/build/skydoc:srcs",
Damien Martin-Guillerez7d265e02016-07-01 13:33:48 +0000467 "//src/test/java/com/google/devtools/build/skyframe:srcs",
468 "//src/test/java/com/google/devtools/common/options:srcs",
adonovan53e22d92020-07-28 08:54:43 -0700469 "//src/test/java/net/starlark/java/eval:srcs",
adonovancb5dc082020-05-18 12:02:00 -0700470 "//src/test/java/net/starlark/java/spelling:srcs",
Laszlo Csomore78ad832017-06-09 10:45:27 -0400471 "//src/test/py/bazel:srcs",
Damien Martin-Guillerez7d265e02016-07-01 13:33:48 +0000472 "//src/test/shell:srcs",
ishikhman32268802019-04-25 03:47:24 -0700473 "//src/test/testdata/test_tls_certificate",
jmmvb07b7992020-05-18 09:24:11 -0700474 "//src/test/tools:srcs",
Damien Martin-Guillerezde54bca2016-02-29 10:49:43 +0000475 "//src/tools/android/java/com/google/devtools/build/android:srcs",
olaolaa5e36ee2018-06-15 08:16:44 -0700476 "//src/tools/execlog:srcs",
Googler1950bf92018-08-28 15:40:05 -0700477 "//src/tools/workspacelog:srcs",
Yun Peng09dd8c02017-07-21 15:57:05 +0200478 "//src/tools/launcher:srcs",
gregce3ec8d812020-06-18 08:05:01 -0700479 "//src/tools/starlark/java/com/google/devtools/starlark/common:srcs",
Damien Martin-Guillerezde54bca2016-02-29 10:49:43 +0000480 "//src/tools/xcode/realpath:srcs",
Sasha Smundak06a12e52016-07-15 17:35:51 +0000481 "//src/tools/singlejar:srcs",
Damien Martin-Guillerezde54bca2016-02-29 10:49:43 +0000482 "//src/tools/xcode/stdredirect:srcs",
olaola2f3d7df2017-12-05 12:41:19 -0800483 "//src/tools/remote:srcs",
Chris Parsons5eb86fe2016-07-21 15:24:55 +0000484 "//tools/osx:srcs",
Damien Martin-Guillerezde54bca2016-02-29 10:49:43 +0000485 ],
486 visibility = ["//:__pkg__"],
487)
Klaus Aehlig4ca79d42016-10-22 07:59:41 +0000488
489genrule(
490 name = "derived_java_srcs",
491 srcs = [
492 "//src/main/protobuf:dist_jars",
493 "//src/main/java/com/google/devtools/build/lib/buildeventstream/proto:dist_jars",
Googler7e703ec2018-07-16 08:48:39 -0700494 "//src/main/java/com/google/devtools/build/lib/bazel/debug:dist_jars",
kkress9ed89e52020-08-13 11:21:55 -0700495 "//src/main/java/com/google/devtools/build/lib/packages/metrics:dist_jars",
Googler94bf0042020-03-05 09:02:03 -0800496 "//src/main/java/com/google/devtools/build/lib/skyframe/proto:dist_jars",
laurentlb6e87c952020-04-28 11:44:05 -0700497 "//src/main/java/com/google/devtools/build/lib/starlarkdebug/proto:dist_jars",
cparsons5ece6502019-04-17 10:19:41 -0700498 "//src/main/java/com/google/devtools/build/skydoc/rendering/proto:dist_jars",
janakr65970e52020-02-26 08:25:00 -0800499 "//src/main/java/com/google/devtools/build/skyframe:dist_jars",
Jakob Buchgraber55c5a602017-06-08 23:11:21 +0200500 "@googleapis//:dist_jars",
Ola Rozenfeld930119a2018-08-10 11:04:44 -0700501 "@remoteapis//:dist_jars",
Klaus Aehlig4ca79d42016-10-22 07:59:41 +0000502 ],
503 outs = ["derived_java_srcs.zip"],
Klaus Aehlig86c9d942017-06-30 13:41:19 +0200504 cmd = "$(location :combine_derived_java_srcs.sh) $(JAVABASE) $@ $(SRCS)",
cushon849df362018-05-14 01:51:45 -0700505 toolchains = ["@bazel_tools//tools/jdk:current_host_java_runtime"],
Klaus Aehlig4ca79d42016-10-22 07:59:41 +0000506 tools = ["combine_derived_java_srcs.sh"],
507 visibility = ["//:__pkg__"],
508)
L?szl? Csomor088f6112017-09-19 17:12:32 +0200509
510test_suite(
511 name = "windows_tests",
512 tags = [
513 "-no_windows",
514 "-slow",
515 ],
516 visibility = ["//visibility:private"],
517)
518
519test_suite(
520 name = "all_windows_tests",
521 tests = [
522 ":windows_tests",
523 "//src/test/cpp:all_windows_tests",
524 "//src/test/java/com/google/devtools/build/android:all_windows_tests",
525 "//src/test/java/com/google/devtools/build/docgen:all_windows_tests",
526 "//src/test/java/com/google/devtools/build/lib:all_windows_tests",
527 "//src/test/java/com/google/devtools/build/skyframe:all_windows_tests",
528 "//src/test/java/com/google/devtools/common/options:all_windows_tests",
Laszlo Csomordcc80fb2019-08-09 05:05:21 -0700529 "//src/test/native/windows:all_windows_tests",
L?szl? Csomor088f6112017-09-19 17:12:32 +0200530 "//src/test/py/bazel:all_windows_tests",
philwo0bc2c7a2020-02-06 04:15:14 -0800531 "//src/test/res:all_windows_tests",
Laszlo Csomora7f202c2018-04-26 07:39:41 -0700532 "//src/test/shell:all_windows_tests",
Jingwen Chen908b8362019-08-09 15:29:12 -0700533 "//src/test/shell/bazel/android:all_windows_tests",
L?szl? Csomor088f6112017-09-19 17:12:32 +0200534 "//src/tools/launcher:all_windows_tests",
Laszlo Csomor2716b032018-10-26 05:23:34 -0700535 "//src/tools/singlejar:all_windows_tests",
László Csomorceefd572017-09-21 16:02:25 +0200536 "//third_party/def_parser:all_windows_tests",
Laszlo Csomordf16c772018-08-09 23:36:39 -0700537 "//tools:all_windows_tests",
L?szl? Csomor088f6112017-09-19 17:12:32 +0200538 ],
539)
tomlu1a483d42017-11-30 15:08:40 -0800540
541# config_setting alias left here because bazel-only third_party code is pointing to it
542alias(
543 name = "windows",
544 actual = "//src/conditions:windows",
545 visibility = ["//visibility:public"],
546)
iirina7aace9c2019-03-18 05:41:55 -0700547
548sh_binary(
549 name = "zip_files",
550 srcs = ["zip_files.sh"],
551 visibility = ["//visibility:public"],
552)
553
554sh_binary(
555 name = "merge_zip_files",
556 srcs = ["merge_zip_files.sh"],
557 visibility = ["//visibility:public"],
558)
iirina8df893a2019-03-25 09:34:51 -0700559
iirina93e80732019-04-16 02:07:40 -0700560JAVA_TOOLS_DEPLOY_JARS = [
561 "//src/java_tools/buildjar:JavaBuilder_deploy.jar",
562 "//src/java_tools/buildjar:VanillaJavaBuilder_deploy.jar",
563 "//src/java_tools/buildjar/java/com/google/devtools/build/buildjar/genclass:GenClass_deploy.jar",
564 "//src/java_tools/buildjar/java/com/google/devtools/build/java/turbine/javac:turbine_deploy.jar",
565 "//src/java_tools/buildjar/java/com/google/devtools/build/java/turbine:turbine_direct_binary_deploy.jar",
566 "//src/java_tools/junitrunner/java/com/google/testing/coverage:JacocoCoverage_jarjar_deploy.jar",
iirina93e80732019-04-16 02:07:40 -0700567 "//src/java_tools/junitrunner/java/com/google/testing/junit/runner:Runner_deploy.jar",
568 "//third_party/jarjar:jarjar_command_deploy.jar",
569] + select({
570 "//src/conditions:arm": ["//src/java_tools/singlejar/java/com/google/devtools/build/singlejar:bazel-singlejar_deploy.jar"],
571 "//conditions:default": [],
572})
573
David Ostrovskyfe291f72020-07-23 04:08:29 -0700574JAVA_VERSIONS = ("11", "14")
575
576# TODO(davido): Hard code the javac 11 for now; it is required for default toolchain.
iirina8df893a2019-03-25 09:34:51 -0700577
iirinaa6e92602019-05-13 06:20:12 -0700578[
579 genrule(
580 name = "jars_java_tools_java" + java_version + "_zip",
581 srcs = JAVA_TOOLS_DEPLOY_JARS + [
David Ostrovskyfe291f72020-07-23 04:08:29 -0700582 "@java_tools_langtools_javac11//:jdk_compiler_jar",
583 "@java_tools_langtools_javac11//:java_compiler_jar",
584 "@java_tools_langtools_javac11//:javac_jar",
iirinaa6e92602019-05-13 06:20:12 -0700585 ],
586 outs = ["jars_java_tools_java" + java_version + ".zip"],
587 cmd = "zip -qjX $@ $$(echo $(SRCS) | sort)",
588 visibility = ["//visibility:private"],
589 )
590 for java_version in JAVA_VERSIONS
591]
iirina93e80732019-04-16 02:07:40 -0700592
593[
594 genrule(
595 name = "java_tools_dist_java" + java_version,
596 srcs = [
597 "//src/java_tools/buildjar:srcs",
598 "//src/java_tools/junitrunner:srcs",
599 "//src/java_tools/singlejar:srcs",
600 "//src/tools/singlejar:embedded_java_tools",
Lukacs T. Berki6362c2d2019-04-26 07:25:29 -0700601 "//third_party/checker_framework_dataflow:srcs",
602 "//third_party/checker_framework_javacutil:srcs",
iirina93e80732019-04-16 02:07:40 -0700603 "//third_party/jarjar:srcs",
604 "//third_party/ijar:transitive_sources",
iirina6403fff2019-05-14 08:03:44 -0700605 "//third_party/java/jacoco:transitive_sources",
606 "//third_party/java/proguard:srcs",
David Ostrovskyfe291f72020-07-23 04:08:29 -0700607 "@java_tools_langtools_javac11//:srcs",
iirina93e80732019-04-16 02:07:40 -0700608 ],
609 outs = ["java_tools_dist_javac" + java_version + ".zip"],
610 cmd = "zip -qXr $@ $$(echo $(SRCS) | sort)",
611 output_to_bindir = 1,
iirina6403fff2019-05-14 08:03:44 -0700612 visibility = ["//src/test/shell/bazel:__pkg__"],
iirina93e80732019-04-16 02:07:40 -0700613 )
614 for java_version in JAVA_VERSIONS
615]
616
617[
618 # Targets used by the java_tools_binaries Buildkite pipeline to build the
619 # java_tools_dist_java* zips and upload them to a tmp directory in GCS.
620 sh_binary(
621 name = "upload_java_tools_dist_java" + java_version,
622 srcs = ["upload_java_tools.sh"],
623 args = [
624 "--java_tools_zip",
625 "src/java_tools_dist_javac" + java_version + ".zip",
626 "--gcs_java_tools_dir",
iirinadead8522019-04-17 00:41:54 -0700627 "tmp/sources",
iirina93e80732019-04-16 02:07:40 -0700628 "--java_version",
629 java_version,
630 "--platform",
631 ] + select({
632 "//src/conditions:darwin": ["darwin"],
633 "//src/conditions:darwin_x86_64": ["darwin_x86_64"],
634 "//src/conditions:windows": ["windows"],
635 "//src/conditions:linux_x86_64": ["linux"],
636 "//conditions:default": ["unknown"],
637 }),
638 data = [":java_tools_dist_java" + java_version],
639 deps = ["@bazel_tools//tools/bash/runfiles"],
640 )
641 for java_version in JAVA_VERSIONS
642]
643
iirina0eec6932019-06-12 07:48:22 -0700644[
645 # The java_tools releases can have BUILD files that vary depending on the
646 # javac version they embed. Currently the only difference is in the
David Ostrovskyfe291f72020-07-23 04:08:29 -0700647 # java_toolchain source version which has to be 14 for javac 14 to be able
648 # to build new Java 14 features. This is not used atm, as the toolchain for
649 # javac 14 was duplicated, but it might be used in future Bazel releases to
650 # support new javac release, so that we preserve this step for now.
iirina0eec6932019-06-12 07:48:22 -0700651 genrule(
652 name = "create_java_tools_build_java" + java_version,
653 srcs = ["//tools/jdk:BUILD.java_tools"],
654 outs = ["remote_java_tools_java" + java_version + "/BUILD"],
655 cmd = "sed 's/JAVA_LANGUAGE_LEVEL/" + java_version + "/g' $< > $@",
656 )
657 for java_version in JAVA_VERSIONS
658]
iirinafbeb0c92019-04-25 07:34:14 -0700659
iirina0eec6932019-06-12 07:48:22 -0700660[
661 genrule(
662 name = "java_tools_java" + java_version + "_build_zip",
663 srcs = ["remote_java_tools_java" + java_version + "/BUILD"],
664 outs = ["java_tools_java_" + java_version + "_build.zip"],
665 cmd = "zip -jX $@ $<",
666 )
667 for java_version in JAVA_VERSIONS
668]
iirinafbeb0c92019-04-25 07:34:14 -0700669
iirina8df893a2019-03-25 09:34:51 -0700670# Builds the remote Java tools archive. Not embedded or used in Bazel, but used
671# by the Java tools release process.
iirina93e80732019-04-16 02:07:40 -0700672[
673 genrule(
iirinafbeb0c92019-04-25 07:34:14 -0700674 name = "java_tools_java" + java_version + "_no_build_zip",
iirina93e80732019-04-16 02:07:40 -0700675 srcs = [
676 ":jars_java_tools_java" + java_version + ".zip",
677 "//src/tools/singlejar:singlejar_transitive_zip",
678 "//third_party/ijar:ijar_transitive_zip",
iirina46d376d2019-04-25 08:46:16 -0700679 "//third_party/java/jacoco:jacoco_jars_zip",
iirinaf50b8a42019-05-13 07:00:26 -0700680 "//third_party/java/proguard:proguard_zip",
iirina93e80732019-04-16 02:07:40 -0700681 ],
iirinafbeb0c92019-04-25 07:34:14 -0700682 outs = ["java_tools_java" + java_version + "_no_build.zip"],
iirina93e80732019-04-16 02:07:40 -0700683 cmd = "$(location //src:merge_zip_files) java_tools $@ $(SRCS)",
684 output_to_bindir = 1,
685 tools = ["//src:merge_zip_files"],
686 visibility = ["//src/test/shell/bazel:__pkg__"],
687 )
688 for java_version in JAVA_VERSIONS
689]
690
691[
iirinafbeb0c92019-04-25 07:34:14 -0700692 genrule(
693 name = "java_tools_java" + java_version + "_zip",
694 srcs = [
695 "java_tools_java" + java_version + "_no_build.zip",
iirina0eec6932019-06-12 07:48:22 -0700696 "java_tools_java_" + java_version + "_build.zip",
iirinafbeb0c92019-04-25 07:34:14 -0700697 ],
698 outs = ["java_tools_java" + java_version + ".zip"],
699 cmd = "$(location //src:merge_zip_files) - $@ $(SRCS)",
700 output_to_bindir = 1,
701 tools = ["//src:merge_zip_files"],
702 visibility = ["//src/test/shell/bazel:__pkg__"],
703 )
704 for java_version in JAVA_VERSIONS
705]
706
707[
iirina93e80732019-04-16 02:07:40 -0700708 # Targets used by the java_tools_binaries Buildkite pipeline to build the
709 # java_tools_java* zips and upload them to a tmp directory in GCS.
710 sh_binary(
711 name = "upload_java_tools_java" + java_version,
712 srcs = ["upload_java_tools.sh"],
713 args = [
iirina93e80732019-04-16 02:07:40 -0700714 "--gcs_java_tools_dir",
715 "tmp/build",
716 "--java_version",
717 java_version,
718 "--platform",
719 ] + select({
720 "//src/conditions:darwin": ["darwin"],
721 "//src/conditions:darwin_x86_64": ["darwin_x86_64"],
722 "//src/conditions:windows": ["windows"],
723 "//src/conditions:linux_x86_64": ["linux"],
724 "//conditions:default": ["unknown"],
725 }),
726 data = [":java_tools_java" + java_version + "_zip"],
727 deps = ["@bazel_tools//tools/bash/runfiles"],
728 )
729 for java_version in JAVA_VERSIONS
730]
iirina8df893a2019-03-25 09:34:51 -0700731
732# Part of the Java tools remote archive. Not embedded or used in Bazel.
733genrule(
734 name = "zlib_zip",
735 srcs = ["//third_party/zlib:embedded_tools"],
736 outs = ["zlib.zip"],
737 cmd = "$(location //src:zip_files) zlib $@ $(SRCS)",
738 tools = ["//src:zip_files"],
iirinae4ac6162019-04-08 01:37:20 -0700739 visibility = [
740 "//src/tools/singlejar:__pkg__",
741 "//third_party/ijar:__pkg__",
742 ],
iirina8df893a2019-03-25 09:34:51 -0700743)
philwo17506af2020-01-28 04:20:39 -0800744
745filegroup(
746 name = "test_repos",
747 srcs = [
748 "@android_tools_for_testing//:WORKSPACE",
Yannic Bonenberger5e571d22020-02-13 07:29:58 -0800749 "@bazel_skylib//:WORKSPACE",
philwo17506af2020-01-28 04:20:39 -0800750 "@bazel_toolchains//:WORKSPACE",
751 "@com_google_protobuf//:WORKSPACE",
philwo17506af2020-01-28 04:20:39 -0800752 "@openjdk11_darwin_archive//:WORKSPACE",
753 "@openjdk11_linux_archive//:WORKSPACE",
754 "@openjdk11_windows_archive//:WORKSPACE",
David Ostrovskyfe291f72020-07-23 04:08:29 -0700755 "@openjdk14_darwin_archive//:WORKSPACE",
756 "@openjdk14_linux_archive//:WORKSPACE",
757 "@openjdk14_windows_archive//:WORKSPACE",
philwo17506af2020-01-28 04:20:39 -0800758 "@openjdk_linux_aarch64_minimal//file",
759 "@openjdk_linux_minimal//file",
760 "@openjdk_macos_minimal//file",
761 "@openjdk_win_minimal//file",
762 "@remote_coverage_tools_for_testing//:WORKSPACE",
763 "@remote_java_tools_darwin_for_testing//:WORKSPACE",
philwo17506af2020-01-28 04:20:39 -0800764 "@remote_java_tools_javac11_test_darwin//:WORKSPACE",
765 "@remote_java_tools_javac11_test_linux//:WORKSPACE",
766 "@remote_java_tools_javac11_test_windows//:WORKSPACE",
David Ostrovsky693c88a2020-07-31 22:55:47 -0700767 "@remote_java_tools_javac14_test_darwin//:WORKSPACE",
768 "@remote_java_tools_javac14_test_linux//:WORKSPACE",
769 "@remote_java_tools_javac14_test_windows//:WORKSPACE",
philwo17506af2020-01-28 04:20:39 -0800770 "@remote_java_tools_linux_for_testing//:WORKSPACE",
771 "@remote_java_tools_windows_for_testing//:WORKSPACE",
philwo17506af2020-01-28 04:20:39 -0800772 "@remotejdk11_linux_aarch64_for_testing//:WORKSPACE",
773 "@remotejdk11_linux_for_testing//:WORKSPACE",
Jason Furmanek04e073e2020-05-28 05:48:09 -0700774 "@remotejdk11_linux_ppc64le_for_testing//:WORKSPACE",
Ruixin Baoe14a6f22020-08-21 06:17:24 -0700775 "@remotejdk11_linux_s390x_for_testing//:WORKSPACE",
philwo17506af2020-01-28 04:20:39 -0800776 "@remotejdk11_macos_for_testing//:WORKSPACE",
777 "@remotejdk11_win_for_testing//:WORKSPACE",
David Ostrovskyfe291f72020-07-23 04:08:29 -0700778 "@remotejdk14_linux_for_testing//:WORKSPACE",
779 "@remotejdk14_macos_for_testing//:WORKSPACE",
780 "@remotejdk14_win_for_testing//:WORKSPACE",
philwo17506af2020-01-28 04:20:39 -0800781 "@rules_cc//:WORKSPACE",
782 "@rules_java//:WORKSPACE",
783 "@rules_pkg//:WORKSPACE",
784 "@rules_proto//:WORKSPACE",
785 "@rules_python//:WORKSPACE",
786 ],
787)