blob: fe7bb28cc5a23bd32db5f3610f7fb677718faa3e [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",
adonovan450c7ad2020-09-14 13:00:21 -070015 "//src/main/java/net/starlark/java/eval:cpu_profiler",
adonovan1e4f0692020-06-10 06:22:23 -070016 # 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:
adonovan450c7ad2020-09-14 13:00:21 -0700339 "//src/main/java/net/starlark/java/eval:cpu_profiler",
Han-Wen Nienhuysd08b27f2015-02-25 16:45:20 +0100340 "//src/main/tools:build-runfiles",
341 "//src/main/tools:process-wrapper",
Philipp Wollermann278814b2016-07-15 14:41:54 +0000342 "//src/main/tools:linux-sandbox",
Chris Parsons5eb86fe2016-07-21 15:24:55 +0000343 "//tools/osx:xcode-locator",
jmmv18a0e232019-02-21 07:34:02 -0800344 ] + select({
345 "//src/conditions:windows": [],
346 "//conditions:default": [
347 "//src/main/tools:daemonize",
348 ],
349 }),
Lukacs Berkieb851fe2015-10-19 10:52:31 +0000350 outs = ["package" + suffix + ".zip"],
aldersondrived6145a02020-01-21 08:11:48 -0800351 cmd = "$(location :package_bazel_on_host_platform) $@ " + ("" if embed else "''") + " $(SRCS)",
352 tools = [":package_bazel_on_host_platform"],
Lukacs Berkieb851fe2015-10-19 10:52:31 +0000353) for suffix, embed in [
Tobias Werth218e8f62018-12-13 04:44:35 -0800354 ("_jdk_allmodules", True),
355 ("_jdk_minimal", True),
Tobias Werth5d2d06c2019-01-18 05:17:26 -0800356 ("_dev_jdk", True),
Damien Martin-Guillerez04d46ab2016-04-13 19:27:56 +0000357 ("_notools", False),
Liam Miller-Cushon7c49bd92018-06-18 09:29:52 -0700358 ("_nojdk", True),
Lukacs Berkieb851fe2015-10-19 10:52:31 +0000359]]
Han-Wen Nienhuysd08b27f2015-02-25 16:45:20 +0100360
hlopkoaaf64572019-06-14 02:33:56 -0700361genrule(
aldersondrived6145a02020-01-21 08:11:48 -0800362 name = "package_bazel_on_host_platform",
363 srcs = ["package-bazel.sh"],
364 outs = ["package-bazel-on-host-platform.sh"],
365 cmd = select({
366 "//src/conditions:openbsd": "cat $(SRCS) | sed -e 's@#!/bin/bash@#!/usr/local/bin/bash@' > $@",
367 "//conditions:default": "cp $(SRCS) $@",
368 }),
369)
370
371genrule(
hlopkoaaf64572019-06-14 02:33:56 -0700372 name = "platforms_archive",
373 srcs = ["@platforms//:srcs"],
374 outs = ["platforms.zip"],
375 # Removing the WORKSPACE file since local_repository creates it no matter what and leaving
376 # it there would make the zip nondeterministic.
377 cmd = "zip -qX $@ $$(echo $(SRCS) | xargs -n 1 | grep -v '.*/WORKSPACE$$' | sort | xargs)",
378)
379
Lukacs Berkieb851fe2015-10-19 10:52:31 +0000380[genrule(
381 name = "bazel-bin" + suffix,
Han-Wen Nienhuysd08b27f2015-02-25 16:45:20 +0100382 srcs = [
383 "//src/main/cpp:client",
Jakob Buchgraber92931bd2019-07-18 07:38:59 -0700384 "package-zip" + jdk,
Han-Wen Nienhuysd08b27f2015-02-25 16:45:20 +0100385 ],
Lukacs Berkieb851fe2015-10-19 10:52:31 +0000386 outs = ["bazel" + suffix],
Yun Peng6ffb8e42016-04-14 16:55:02 +0000387 # In msys, a file path without .exe suffix(say foo), refers to a file with .exe
388 # suffix(say foo.exe), if foo.exe exists and foo doesn't. So, on windows, we
389 # need to remove bazel.exe first, so that cat to bazel won't fail.
Jakob Buchgraber92931bd2019-07-18 07:38:59 -0700390 cmd = "rm -f $@; cat $(location //src/main/cpp:client) $(location :package-zip" + jdk + ") > $@ && zip -qA $@",
Tobias Werth218e8f62018-12-13 04:44:35 -0800391 executable = 1,
392 output_to_bindir = 1,
393 visibility = [
394 "//scripts:__pkg__", # For bash completion generation
395 "//scripts/packages:__pkg__", # For installer generation
396 "//src/java:__subpackages__", # For command line reference generation
397 "//src/test:__subpackages__", # For integration tests
398 ],
Tobias Werthfbf8fb92019-01-09 11:22:11 -0800399) for suffix, jdk in [
400 ("-dev", "_jdk_allmodules"),
401 ("", "_jdk_minimal"),
Jakob Buchgraber92931bd2019-07-18 07:38:59 -0700402 ("_jdk_allmodules", "_jdk_allmodules"),
403 ("_jdk_minimal", "_jdk_minimal"),
404 ("_dev_jdk", "_dev_jdk"),
405 ("_notools", "_notools"),
406 ("_nojdk", "_nojdk"),
Tobias Werthfbf8fb92019-01-09 11:22:11 -0800407]]
Tobias Werth218e8f62018-12-13 04:44:35 -0800408
Dmitry Lomov9d40a602016-02-15 16:15:03 +0000409# Build an executable named `bazel.exe`.
410# Works on all platforms but only makes sense on Windows.
411# Workaround for non-configurability of genrule's `outs` attribute.
412[genrule(
413 name = "bazel-bin" + suffix + ".exe",
414 srcs = [":bazel-bin" + suffix],
415 outs = ["bazel" + suffix + ".exe"],
416 cmd = "cp $(location :bazel-bin" + suffix + ") $@",
417 executable = 1,
418 output_to_bindir = 1,
419 visibility = [
420 "//scripts:__pkg__", # For bash completion generation
421 "//scripts/packages:__pkg__", # For installer generation
422 "//src/test:__subpackages__", # For integration tests
423 ],
424) for suffix in [
425 "",
Tobias Werthe7438ae2019-07-02 08:17:44 -0700426 "-dev",
Dmitry Lomov9d40a602016-02-15 16:15:03 +0000427 "_notools",
Liam Miller-Cushon7c49bd92018-06-18 09:29:52 -0700428 "_nojdk",
Dmitry Lomov9d40a602016-02-15 16:15:03 +0000429]]
430
Damien Martin-Guillerezde54bca2016-02-29 10:49:43 +0000431filegroup(
432 name = "srcs",
433 srcs = glob(["**"]) + [
tomlu1a483d42017-11-30 15:08:40 -0800434 "//src/conditions:srcs",
Damien Martin-Guillerezde54bca2016-02-29 10:49:43 +0000435 "//src/java_tools/buildjar:srcs",
Benjamin Peterson425f9422018-02-09 14:05:17 -0800436 "//src/java_tools/import_deps_checker:srcs",
ulfjack26ad43d2017-08-28 12:30:44 +0200437 "//src/java_tools/junitrunner:srcs",
Damien Martin-Guillerezde54bca2016-02-29 10:49:43 +0000438 "//src/java_tools/singlejar:srcs",
439 "//src/main/cpp:srcs",
Laszlo Csomor3e023182019-08-01 05:05:09 -0700440 "//src/main/res:srcs",
Damien Martin-Guillerezde54bca2016-02-29 10:49:43 +0000441 "//src/main/java/com/google/devtools/build/docgen:srcs",
fellyc5c078c2019-07-31 12:05:24 -0700442 "//src/main/java/com/google/devtools/build/lib/actionsketch:srcs",
Damien Martin-Guillerezde54bca2016-02-29 10:49:43 +0000443 "//src/main/java/com/google/devtools/build/lib:srcs",
philwo45743d02019-06-03 06:13:30 -0700444 "//src/main/java/com/google/devtools/build/lib/includescanning:srcs",
steinmanacf55d82019-05-21 09:49:58 -0700445 "//src/main/java/com/google/devtools/build/lib/network:srcs",
philwo62dd1742019-06-04 05:27:37 -0700446 "//src/main/java/com/google/devtools/build/lib/outputfilter:srcs",
cparsons5d85e752018-06-26 13:47:28 -0700447 "//src/main/java/com/google/devtools/build/skydoc:srcs",
Damien Martin-Guillerezde54bca2016-02-29 10:49:43 +0000448 "//src/main/java/com/google/devtools/build/skyframe:srcs",
449 "//src/main/java/com/google/devtools/common/options:srcs",
adonovancb5dc082020-05-18 12:02:00 -0700450 "//src/main/java/net/starlark/java/cmd:srcs",
451 "//src/main/java/net/starlark/java/spelling:srcs",
Damien Martin-Guillerezde54bca2016-02-29 10:49:43 +0000452 "//src/main/native:srcs",
453 "//src/main/protobuf:srcs",
454 "//src/main/tools:srcs",
Damien Martin-Guillerez7d265e02016-07-01 13:33:48 +0000455 "//src/test/cpp:srcs",
Googler3e830922017-03-17 17:39:00 +0000456 "//src/test/gen:srcs",
Laszlo Csomor3e023182019-08-01 05:05:09 -0700457 "//src/test/res:srcs",
Laszlo Csomordcc80fb2019-08-09 05:05:21 -0700458 "//src/test/native/windows:srcs",
Damien Martin-Guillerez7d265e02016-07-01 13:33:48 +0000459 "//src/test/java/com/google/devtools/build/android:srcs",
460 "//src/test/java/com/google/devtools/build/docgen:srcs",
461 "//src/test/java/com/google/devtools/build/lib:srcs",
ruperts9f959c52018-01-04 11:54:02 -0800462 "//src/test/java/com/google/devtools/build/lib/shell:srcs",
cparsons5d85e752018-06-26 13:47:28 -0700463 "//src/test/java/com/google/devtools/build/skydoc:srcs",
Damien Martin-Guillerez7d265e02016-07-01 13:33:48 +0000464 "//src/test/java/com/google/devtools/build/skyframe:srcs",
465 "//src/test/java/com/google/devtools/common/options:srcs",
adonovan53e22d92020-07-28 08:54:43 -0700466 "//src/test/java/net/starlark/java/eval:srcs",
adonovancb5dc082020-05-18 12:02:00 -0700467 "//src/test/java/net/starlark/java/spelling:srcs",
Laszlo Csomore78ad832017-06-09 10:45:27 -0400468 "//src/test/py/bazel:srcs",
Damien Martin-Guillerez7d265e02016-07-01 13:33:48 +0000469 "//src/test/shell:srcs",
ishikhman32268802019-04-25 03:47:24 -0700470 "//src/test/testdata/test_tls_certificate",
jmmvb07b7992020-05-18 09:24:11 -0700471 "//src/test/tools:srcs",
Damien Martin-Guillerezde54bca2016-02-29 10:49:43 +0000472 "//src/tools/android/java/com/google/devtools/build/android:srcs",
olaolaa5e36ee2018-06-15 08:16:44 -0700473 "//src/tools/execlog:srcs",
Googler1950bf92018-08-28 15:40:05 -0700474 "//src/tools/workspacelog:srcs",
Yun Peng09dd8c02017-07-21 15:57:05 +0200475 "//src/tools/launcher:srcs",
gregce3ec8d812020-06-18 08:05:01 -0700476 "//src/tools/starlark/java/com/google/devtools/starlark/common:srcs",
Damien Martin-Guillerezde54bca2016-02-29 10:49:43 +0000477 "//src/tools/xcode/realpath:srcs",
Sasha Smundak06a12e52016-07-15 17:35:51 +0000478 "//src/tools/singlejar:srcs",
Damien Martin-Guillerezde54bca2016-02-29 10:49:43 +0000479 "//src/tools/xcode/stdredirect:srcs",
olaola2f3d7df2017-12-05 12:41:19 -0800480 "//src/tools/remote:srcs",
Chris Parsons5eb86fe2016-07-21 15:24:55 +0000481 "//tools/osx:srcs",
Damien Martin-Guillerezde54bca2016-02-29 10:49:43 +0000482 ],
483 visibility = ["//:__pkg__"],
484)
Klaus Aehlig4ca79d42016-10-22 07:59:41 +0000485
486genrule(
487 name = "derived_java_srcs",
488 srcs = [
489 "//src/main/protobuf:dist_jars",
490 "//src/main/java/com/google/devtools/build/lib/buildeventstream/proto:dist_jars",
Googler7e703ec2018-07-16 08:48:39 -0700491 "//src/main/java/com/google/devtools/build/lib/bazel/debug:dist_jars",
kkress9ed89e52020-08-13 11:21:55 -0700492 "//src/main/java/com/google/devtools/build/lib/packages/metrics:dist_jars",
Googler94bf0042020-03-05 09:02:03 -0800493 "//src/main/java/com/google/devtools/build/lib/skyframe/proto:dist_jars",
laurentlb6e87c952020-04-28 11:44:05 -0700494 "//src/main/java/com/google/devtools/build/lib/starlarkdebug/proto:dist_jars",
cparsons5ece6502019-04-17 10:19:41 -0700495 "//src/main/java/com/google/devtools/build/skydoc/rendering/proto:dist_jars",
janakr65970e52020-02-26 08:25:00 -0800496 "//src/main/java/com/google/devtools/build/skyframe:dist_jars",
Jakob Buchgraber55c5a602017-06-08 23:11:21 +0200497 "@googleapis//:dist_jars",
Ola Rozenfeld930119a2018-08-10 11:04:44 -0700498 "@remoteapis//:dist_jars",
Klaus Aehlig4ca79d42016-10-22 07:59:41 +0000499 ],
500 outs = ["derived_java_srcs.zip"],
Klaus Aehlig86c9d942017-06-30 13:41:19 +0200501 cmd = "$(location :combine_derived_java_srcs.sh) $(JAVABASE) $@ $(SRCS)",
cushon849df362018-05-14 01:51:45 -0700502 toolchains = ["@bazel_tools//tools/jdk:current_host_java_runtime"],
Klaus Aehlig4ca79d42016-10-22 07:59:41 +0000503 tools = ["combine_derived_java_srcs.sh"],
504 visibility = ["//:__pkg__"],
505)
L?szl? Csomor088f6112017-09-19 17:12:32 +0200506
507test_suite(
508 name = "windows_tests",
509 tags = [
510 "-no_windows",
511 "-slow",
512 ],
513 visibility = ["//visibility:private"],
514)
515
516test_suite(
517 name = "all_windows_tests",
518 tests = [
519 ":windows_tests",
520 "//src/test/cpp:all_windows_tests",
521 "//src/test/java/com/google/devtools/build/android:all_windows_tests",
522 "//src/test/java/com/google/devtools/build/docgen:all_windows_tests",
523 "//src/test/java/com/google/devtools/build/lib:all_windows_tests",
524 "//src/test/java/com/google/devtools/build/skyframe:all_windows_tests",
525 "//src/test/java/com/google/devtools/common/options:all_windows_tests",
Laszlo Csomordcc80fb2019-08-09 05:05:21 -0700526 "//src/test/native/windows:all_windows_tests",
L?szl? Csomor088f6112017-09-19 17:12:32 +0200527 "//src/test/py/bazel:all_windows_tests",
philwo0bc2c7a2020-02-06 04:15:14 -0800528 "//src/test/res:all_windows_tests",
Laszlo Csomora7f202c2018-04-26 07:39:41 -0700529 "//src/test/shell:all_windows_tests",
Jingwen Chen908b8362019-08-09 15:29:12 -0700530 "//src/test/shell/bazel/android:all_windows_tests",
L?szl? Csomor088f6112017-09-19 17:12:32 +0200531 "//src/tools/launcher:all_windows_tests",
Laszlo Csomor2716b032018-10-26 05:23:34 -0700532 "//src/tools/singlejar:all_windows_tests",
László Csomorceefd572017-09-21 16:02:25 +0200533 "//third_party/def_parser:all_windows_tests",
Laszlo Csomordf16c772018-08-09 23:36:39 -0700534 "//tools:all_windows_tests",
L?szl? Csomor088f6112017-09-19 17:12:32 +0200535 ],
536)
tomlu1a483d42017-11-30 15:08:40 -0800537
538# config_setting alias left here because bazel-only third_party code is pointing to it
539alias(
540 name = "windows",
541 actual = "//src/conditions:windows",
542 visibility = ["//visibility:public"],
543)
iirina7aace9c2019-03-18 05:41:55 -0700544
545sh_binary(
546 name = "zip_files",
547 srcs = ["zip_files.sh"],
548 visibility = ["//visibility:public"],
549)
550
551sh_binary(
552 name = "merge_zip_files",
553 srcs = ["merge_zip_files.sh"],
554 visibility = ["//visibility:public"],
555)
iirina8df893a2019-03-25 09:34:51 -0700556
iirina93e80732019-04-16 02:07:40 -0700557JAVA_TOOLS_DEPLOY_JARS = [
558 "//src/java_tools/buildjar:JavaBuilder_deploy.jar",
559 "//src/java_tools/buildjar:VanillaJavaBuilder_deploy.jar",
560 "//src/java_tools/buildjar/java/com/google/devtools/build/buildjar/genclass:GenClass_deploy.jar",
561 "//src/java_tools/buildjar/java/com/google/devtools/build/java/turbine/javac:turbine_deploy.jar",
562 "//src/java_tools/buildjar/java/com/google/devtools/build/java/turbine:turbine_direct_binary_deploy.jar",
563 "//src/java_tools/junitrunner/java/com/google/testing/coverage:JacocoCoverage_jarjar_deploy.jar",
iirina93e80732019-04-16 02:07:40 -0700564 "//src/java_tools/junitrunner/java/com/google/testing/junit/runner:Runner_deploy.jar",
565 "//third_party/jarjar:jarjar_command_deploy.jar",
566] + select({
567 "//src/conditions:arm": ["//src/java_tools/singlejar/java/com/google/devtools/build/singlejar:bazel-singlejar_deploy.jar"],
568 "//conditions:default": [],
569})
570
Ivo List389e0da2020-09-29 03:59:35 -0700571JAVA_VERSIONS = ("11",)
iirina8df893a2019-03-25 09:34:51 -0700572
iirinaa6e92602019-05-13 06:20:12 -0700573[
574 genrule(
575 name = "jars_java_tools_java" + java_version + "_zip",
576 srcs = JAVA_TOOLS_DEPLOY_JARS + [
David Ostrovskyfe291f72020-07-23 04:08:29 -0700577 "@java_tools_langtools_javac11//:jdk_compiler_jar",
578 "@java_tools_langtools_javac11//:java_compiler_jar",
579 "@java_tools_langtools_javac11//:javac_jar",
iirinaa6e92602019-05-13 06:20:12 -0700580 ],
581 outs = ["jars_java_tools_java" + java_version + ".zip"],
582 cmd = "zip -qjX $@ $$(echo $(SRCS) | sort)",
583 visibility = ["//visibility:private"],
584 )
585 for java_version in JAVA_VERSIONS
586]
iirina93e80732019-04-16 02:07:40 -0700587
588[
589 genrule(
590 name = "java_tools_dist_java" + java_version,
591 srcs = [
592 "//src/java_tools/buildjar:srcs",
593 "//src/java_tools/junitrunner:srcs",
594 "//src/java_tools/singlejar:srcs",
595 "//src/tools/singlejar:embedded_java_tools",
Lukacs T. Berki6362c2d2019-04-26 07:25:29 -0700596 "//third_party/checker_framework_dataflow:srcs",
597 "//third_party/checker_framework_javacutil:srcs",
iirina93e80732019-04-16 02:07:40 -0700598 "//third_party/jarjar:srcs",
599 "//third_party/ijar:transitive_sources",
iirina6403fff2019-05-14 08:03:44 -0700600 "//third_party/java/jacoco:transitive_sources",
601 "//third_party/java/proguard:srcs",
David Ostrovskyfe291f72020-07-23 04:08:29 -0700602 "@java_tools_langtools_javac11//:srcs",
iirina93e80732019-04-16 02:07:40 -0700603 ],
604 outs = ["java_tools_dist_javac" + java_version + ".zip"],
605 cmd = "zip -qXr $@ $$(echo $(SRCS) | sort)",
606 output_to_bindir = 1,
iirina6403fff2019-05-14 08:03:44 -0700607 visibility = ["//src/test/shell/bazel:__pkg__"],
iirina93e80732019-04-16 02:07:40 -0700608 )
609 for java_version in JAVA_VERSIONS
610]
611
612[
613 # Targets used by the java_tools_binaries Buildkite pipeline to build the
614 # java_tools_dist_java* zips and upload them to a tmp directory in GCS.
615 sh_binary(
616 name = "upload_java_tools_dist_java" + java_version,
617 srcs = ["upload_java_tools.sh"],
618 args = [
619 "--java_tools_zip",
620 "src/java_tools_dist_javac" + java_version + ".zip",
621 "--gcs_java_tools_dir",
iirinadead8522019-04-17 00:41:54 -0700622 "tmp/sources",
iirina93e80732019-04-16 02:07:40 -0700623 "--java_version",
624 java_version,
625 "--platform",
626 ] + select({
627 "//src/conditions:darwin": ["darwin"],
628 "//src/conditions:darwin_x86_64": ["darwin_x86_64"],
629 "//src/conditions:windows": ["windows"],
630 "//src/conditions:linux_x86_64": ["linux"],
631 "//conditions:default": ["unknown"],
632 }),
633 data = [":java_tools_dist_java" + java_version],
634 deps = ["@bazel_tools//tools/bash/runfiles"],
635 )
636 for java_version in JAVA_VERSIONS
637]
638
iirina0eec6932019-06-12 07:48:22 -0700639[
640 # The java_tools releases can have BUILD files that vary depending on the
641 # javac version they embed. Currently the only difference is in the
David Ostrovskyfe291f72020-07-23 04:08:29 -0700642 # java_toolchain source version which has to be 14 for javac 14 to be able
643 # to build new Java 14 features. This is not used atm, as the toolchain for
644 # javac 14 was duplicated, but it might be used in future Bazel releases to
645 # support new javac release, so that we preserve this step for now.
iirina0eec6932019-06-12 07:48:22 -0700646 genrule(
647 name = "create_java_tools_build_java" + java_version,
648 srcs = ["//tools/jdk:BUILD.java_tools"],
649 outs = ["remote_java_tools_java" + java_version + "/BUILD"],
650 cmd = "sed 's/JAVA_LANGUAGE_LEVEL/" + java_version + "/g' $< > $@",
651 )
652 for java_version in JAVA_VERSIONS
653]
iirinafbeb0c92019-04-25 07:34:14 -0700654
iirina0eec6932019-06-12 07:48:22 -0700655[
656 genrule(
657 name = "java_tools_java" + java_version + "_build_zip",
Ivo Listbe0f07e2020-10-07 12:14:13 -0700658 srcs = [
659 "remote_java_tools_java" + java_version + "/BUILD",
660 "//tools/jdk:java_toolchain_default.bzl",
661 ],
iirina0eec6932019-06-12 07:48:22 -0700662 outs = ["java_tools_java_" + java_version + "_build.zip"],
Benjamin Peterson7389a2f2020-10-19 07:25:17 -0700663 cmd = "zip -qjX $@ $(SRCS)",
iirina0eec6932019-06-12 07:48:22 -0700664 )
665 for java_version in JAVA_VERSIONS
666]
iirinafbeb0c92019-04-25 07:34:14 -0700667
iirina8df893a2019-03-25 09:34:51 -0700668# Builds the remote Java tools archive. Not embedded or used in Bazel, but used
669# by the Java tools release process.
iirina93e80732019-04-16 02:07:40 -0700670[
671 genrule(
iirinafbeb0c92019-04-25 07:34:14 -0700672 name = "java_tools_java" + java_version + "_no_build_zip",
iirina93e80732019-04-16 02:07:40 -0700673 srcs = [
674 ":jars_java_tools_java" + java_version + ".zip",
675 "//src/tools/singlejar:singlejar_transitive_zip",
676 "//third_party/ijar:ijar_transitive_zip",
iirina46d376d2019-04-25 08:46:16 -0700677 "//third_party/java/jacoco:jacoco_jars_zip",
iirinaf50b8a42019-05-13 07:00:26 -0700678 "//third_party/java/proguard:proguard_zip",
iirina93e80732019-04-16 02:07:40 -0700679 ],
iirinafbeb0c92019-04-25 07:34:14 -0700680 outs = ["java_tools_java" + java_version + "_no_build.zip"],
iirina93e80732019-04-16 02:07:40 -0700681 cmd = "$(location //src:merge_zip_files) java_tools $@ $(SRCS)",
682 output_to_bindir = 1,
683 tools = ["//src:merge_zip_files"],
684 visibility = ["//src/test/shell/bazel:__pkg__"],
685 )
686 for java_version in JAVA_VERSIONS
687]
688
689[
iirinafbeb0c92019-04-25 07:34:14 -0700690 genrule(
691 name = "java_tools_java" + java_version + "_zip",
692 srcs = [
693 "java_tools_java" + java_version + "_no_build.zip",
iirina0eec6932019-06-12 07:48:22 -0700694 "java_tools_java_" + java_version + "_build.zip",
iirinafbeb0c92019-04-25 07:34:14 -0700695 ],
696 outs = ["java_tools_java" + java_version + ".zip"],
697 cmd = "$(location //src:merge_zip_files) - $@ $(SRCS)",
698 output_to_bindir = 1,
699 tools = ["//src:merge_zip_files"],
700 visibility = ["//src/test/shell/bazel:__pkg__"],
701 )
702 for java_version in JAVA_VERSIONS
703]
704
705[
iirina93e80732019-04-16 02:07:40 -0700706 # Targets used by the java_tools_binaries Buildkite pipeline to build the
707 # java_tools_java* zips and upload them to a tmp directory in GCS.
708 sh_binary(
709 name = "upload_java_tools_java" + java_version,
710 srcs = ["upload_java_tools.sh"],
711 args = [
iirina93e80732019-04-16 02:07:40 -0700712 "--gcs_java_tools_dir",
713 "tmp/build",
714 "--java_version",
715 java_version,
716 "--platform",
717 ] + select({
718 "//src/conditions:darwin": ["darwin"],
719 "//src/conditions:darwin_x86_64": ["darwin_x86_64"],
720 "//src/conditions:windows": ["windows"],
721 "//src/conditions:linux_x86_64": ["linux"],
722 "//conditions:default": ["unknown"],
723 }),
724 data = [":java_tools_java" + java_version + "_zip"],
725 deps = ["@bazel_tools//tools/bash/runfiles"],
726 )
727 for java_version in JAVA_VERSIONS
728]
iirina8df893a2019-03-25 09:34:51 -0700729
730# Part of the Java tools remote archive. Not embedded or used in Bazel.
731genrule(
732 name = "zlib_zip",
733 srcs = ["//third_party/zlib:embedded_tools"],
734 outs = ["zlib.zip"],
735 cmd = "$(location //src:zip_files) zlib $@ $(SRCS)",
736 tools = ["//src:zip_files"],
iirinae4ac6162019-04-08 01:37:20 -0700737 visibility = [
738 "//src/tools/singlejar:__pkg__",
739 "//third_party/ijar:__pkg__",
740 ],
iirina8df893a2019-03-25 09:34:51 -0700741)
philwo17506af2020-01-28 04:20:39 -0800742
743filegroup(
744 name = "test_repos",
745 srcs = [
746 "@android_tools_for_testing//:WORKSPACE",
Yannic Bonenberger5e571d22020-02-13 07:29:58 -0800747 "@bazel_skylib//:WORKSPACE",
philwo17506af2020-01-28 04:20:39 -0800748 "@bazel_toolchains//:WORKSPACE",
749 "@com_google_protobuf//:WORKSPACE",
philwo17506af2020-01-28 04:20:39 -0800750 "@openjdk11_darwin_archive//:WORKSPACE",
751 "@openjdk11_linux_archive//:WORKSPACE",
752 "@openjdk11_windows_archive//:WORKSPACE",
David Ostrovskyfe291f72020-07-23 04:08:29 -0700753 "@openjdk14_darwin_archive//:WORKSPACE",
754 "@openjdk14_linux_archive//:WORKSPACE",
755 "@openjdk14_windows_archive//:WORKSPACE",
Jonathan Perry94505522020-10-07 12:45:34 -0700756 "@openjdk15_darwin_archive//:WORKSPACE",
757 "@openjdk15_linux_archive//:WORKSPACE",
758 "@openjdk15_windows_archive//:WORKSPACE",
philwo17506af2020-01-28 04:20:39 -0800759 "@openjdk_linux_aarch64_minimal//file",
760 "@openjdk_linux_minimal//file",
761 "@openjdk_macos_minimal//file",
762 "@openjdk_win_minimal//file",
763 "@remote_coverage_tools_for_testing//:WORKSPACE",
764 "@remote_java_tools_darwin_for_testing//:WORKSPACE",
philwo17506af2020-01-28 04:20:39 -0800765 "@remote_java_tools_javac11_test_darwin//:WORKSPACE",
766 "@remote_java_tools_javac11_test_linux//:WORKSPACE",
767 "@remote_java_tools_javac11_test_windows//:WORKSPACE",
philwo17506af2020-01-28 04:20:39 -0800768 "@remote_java_tools_linux_for_testing//:WORKSPACE",
769 "@remote_java_tools_windows_for_testing//:WORKSPACE",
philwo17506af2020-01-28 04:20:39 -0800770 "@remotejdk11_linux_aarch64_for_testing//:WORKSPACE",
771 "@remotejdk11_linux_for_testing//:WORKSPACE",
Jason Furmanek04e073e2020-05-28 05:48:09 -0700772 "@remotejdk11_linux_ppc64le_for_testing//:WORKSPACE",
Ruixin Baoe14a6f22020-08-21 06:17:24 -0700773 "@remotejdk11_linux_s390x_for_testing//:WORKSPACE",
philwo17506af2020-01-28 04:20:39 -0800774 "@remotejdk11_macos_for_testing//:WORKSPACE",
775 "@remotejdk11_win_for_testing//:WORKSPACE",
David Ostrovskyfe291f72020-07-23 04:08:29 -0700776 "@remotejdk14_linux_for_testing//:WORKSPACE",
777 "@remotejdk14_macos_for_testing//:WORKSPACE",
778 "@remotejdk14_win_for_testing//:WORKSPACE",
Jonathan Perry94505522020-10-07 12:45:34 -0700779 "@remotejdk15_linux_for_testing//:WORKSPACE",
780 "@remotejdk15_macos_for_testing//:WORKSPACE",
781 "@remotejdk15_win_for_testing//:WORKSPACE",
philwo17506af2020-01-28 04:20:39 -0800782 "@rules_cc//:WORKSPACE",
783 "@rules_java//:WORKSPACE",
784 "@rules_pkg//:WORKSPACE",
785 "@rules_proto//:WORKSPACE",
786 "@rules_python//:WORKSPACE",
787 ],
788)