blob: 04e8012361e0352ca03f5e70e4955dd2234624eb [file] [log] [blame]
Han-Wen Nienhuysd08b27f2015-02-25 16:45:20 +01001# Packaging
2
Lukacs Berkic4e74d12015-11-10 15:28:00 +00003md5_cmd = "set -e -o pipefail && cat $(SRCS) | sort | %s | awk '{ print $$1; }' > $@"
Han-Wen Nienhuysd08b27f2015-02-25 16:45:20 +01004
5# TODO(bazel-team): find a better way to handle dylib extensions.
6filegroup(
7 name = "libunix",
8 srcs = select({
9 ":darwin": ["//src/main/native:libunix.dylib"],
Chris Parsons5d96a282015-10-29 17:14:20 +000010 ":darwin_x86_64": ["//src/main/native:libunix.dylib"],
Lukacs T. Berkid8d7d232016-06-27 14:55:17 +000011 ":windows": ["//src/main/native:windows_jni.dll"],
Yun Pengcb8a5e22017-03-08 14:30:49 +000012 ":windows_msys": ["//src/main/native:windows_jni.dll"],
Laszlo Csomor8896dad2016-09-28 15:02:13 +000013 ":windows_msvc": ["//src/main/native:windows_jni.dll"],
Han-Wen Nienhuysd08b27f2015-02-25 16:45:20 +010014 "//conditions:default": ["//src/main/native:libunix.so"],
15 }),
Kristina Chodorow38358932015-06-26 14:31:50 +000016 visibility = [
Kristina Chodorow38358932015-06-26 14:31:50 +000017 "//src/test/java:__pkg__",
Kristina Chodorow07163032015-09-04 17:37:17 +000018 "//src/tools/generate_workspace:__pkg__",
Alpha Lama1a79cb2016-05-15 19:13:52 +000019 "//src/tools/remote_worker:__subpackages__",
Kristina Chodorow38358932015-06-26 14:31:50 +000020 ],
Han-Wen Nienhuysd08b27f2015-02-25 16:45:20 +010021)
22
Lukacs Berkieb851fe2015-10-19 10:52:31 +000023[genrule(
24 name = "install_base_key-file" + suffix,
Han-Wen Nienhuysd08b27f2015-02-25 16:45:20 +010025 srcs = [
Han-Wen Nienhuys27760a62015-11-30 17:27:34 +000026 "//src/main/java/com/google/devtools/build/lib:bazel/BazelServer_deploy.jar",
Han-Wen Nienhuysd08b27f2015-02-25 16:45:20 +010027 "//src/main/cpp:client",
28 ":libunix",
29 "//src/main/tools:build-runfiles",
30 "//src/main/tools:process-wrapper",
Philipp Wollermann278814b2016-07-15 14:41:54 +000031 "//src/main/tools:linux-sandbox",
Chris Parsons5eb86fe2016-07-21 15:24:55 +000032 "//tools/osx:xcode-locator",
Lukacs Berkieb851fe2015-10-19 10:52:31 +000033 ] + embedded_tools,
34 outs = ["install_base_key" + suffix],
Han-Wen Nienhuysd08b27f2015-02-25 16:45:20 +010035 cmd = select({
36 ":darwin": md5_cmd % "/sbin/md5",
Chris Parsons5d96a282015-10-29 17:14:20 +000037 ":darwin_x86_64": md5_cmd % "/sbin/md5",
Googlerbdbf75f2015-11-17 12:50:44 +000038 ":freebsd": md5_cmd % "/sbin/md5",
Han-Wen Nienhuysd08b27f2015-02-25 16:45:20 +010039 "//conditions:default": md5_cmd % "md5sum",
40 }),
Lukacs Berkieb851fe2015-10-19 10:52:31 +000041) for suffix, embedded_tools in {
42 "": [":embedded_tools"],
Philipp Wollermann95048272017-03-17 15:11:58 +000043 "_with_jdk": [":embedded_tools_with_jdk"],
Lukacs Berkieb851fe2015-10-19 10:52:31 +000044 "_notools": [],
45}.items()]
Han-Wen Nienhuysd08b27f2015-02-25 16:45:20 +010046
Damien Martin-Guillerezb6afdbd2015-05-27 18:29:18 +000047# Try to grab the java version from the java_toolchain.
Damien Martin-Guillerez4bf2c1a2015-10-02 09:19:18 +000048# Unfortunately, we don't have access to the javac options
49# so we cannot get it from the command-line options.
Damien Martin-Guillerezb6afdbd2015-05-27 18:29:18 +000050genquery(
51 name = "java_toolchain_content",
52 expression = "kind(java_toolchain, deps(//tools/defaults:java_toolchain))",
53 opts = ["--output=xml"],
54 scope = ["//tools/defaults:java_toolchain"],
55)
56
Han-Wen Nienhuysd08b27f2015-02-25 16:45:20 +010057genrule(
58 name = "java-version",
Damien Martin-Guillerezb6afdbd2015-05-27 18:29:18 +000059 srcs = [":java_toolchain_content"],
Han-Wen Nienhuysd08b27f2015-02-25 16:45:20 +010060 outs = ["java.version"],
Damien Martin-Guillerezb6afdbd2015-05-27 18:29:18 +000061 cmd = """
62 VERSION_LINE=$$(cat $< | grep target_version);
Dmitry Lomovcbbbf2e2016-02-17 19:31:28 +000063 JAVA_VERSION=$$(echo $${VERSION_LINE} | sed 's/.*value=\\"\\([^\\"]\\)\\".*/\\1/');
Damien Martin-Guillerezb6afdbd2015-05-27 18:29:18 +000064 if [ -z "$${JAVA_VERSION}" ]; then
Damien Martin-Guillerez9c5deb62015-09-15 07:38:26 +000065 echo "1.8" >$@ # Java 8 is the default
Damien Martin-Guillerezb6afdbd2015-05-27 18:29:18 +000066 elif [[ "$${JAVA_VERSION}" =~ ^[0-9]+$$ ]]; then
67 echo "1.$${JAVA_VERSION}" >$@ # Add 1. before 7 or 8
68 else
69 echo "$${JAVA_VERSION}" >$@
70 fi
71 """,
Han-Wen Nienhuysd08b27f2015-02-25 16:45:20 +010072)
73
Damien Martin-Guillereza3bad0c2016-05-03 20:47:51 +000074# Create dummy tools so we can do select to prevent building iOS target on
75# Linux.
76OSX_DUMMY_TARGETS = [
77 "src/tools/xcode/actoolwrapper/actoolwrapper",
78 "src/tools/xcode/ibtoolwrapper/ibtoolwrapper",
79 "src/tools/xcode/momcwrapper/momcwrapper",
80 "src/tools/xcode/swiftstdlibtoolwrapper/swiftstdlibtoolwrapper",
81 "src/tools/xcode/environment/environment_plist",
Damien Martin-Guillereza3bad0c2016-05-03 20:47:51 +000082 "src/objc_tools/bundlemerge/bundlemerge_deploy.jar",
83 "src/objc_tools/plmerge/plmerge_deploy.jar",
84 "src/objc_tools/xcodegen/xcodegen_deploy.jar",
85 "src/tools/xcode/realpath/realpath",
86 "src/tools/xcode/stdredirect/StdRedirect.dylib",
87]
88
89[
90 genrule(
91 name = "dummy_darwin_tool_" + name.replace("/", "_"),
92 srcs = [],
93 outs = ["dummy_darwin_tools/" + name],
94 cmd = "touch $@",
95 )
96 for name in OSX_DUMMY_TARGETS
97]
98
Damien Martin-Guillerez3d796fe2016-01-11 10:07:57 +000099filegroup(
100 name = "darwin_tools",
101 srcs = [
102 "//src/tools/xcode/actoolwrapper:actoolwrapper",
103 "//src/tools/xcode/ibtoolwrapper:ibtoolwrapper",
104 "//src/tools/xcode/momcwrapper:momcwrapper",
Dmitry Shevchenko97ac76a2017-03-23 21:12:23 +0000105 "//src/tools/xcode/swiftstdlibtoolwrapper:swiftstdlibtoolwrapper",
Damien Martin-Guillerez3d796fe2016-01-11 10:07:57 +0000106 "//src/tools/xcode/environment:environment_plist",
Damien Martin-Guillerez3d796fe2016-01-11 10:07:57 +0000107 "//src/objc_tools/bundlemerge:bundlemerge_deploy.jar",
108 "//src/objc_tools/plmerge:plmerge_deploy.jar",
109 "//src/objc_tools/xcodegen:xcodegen_deploy.jar",
110 "//src/tools/xcode/realpath:realpath",
Chris Parsons5eb86fe2016-07-21 15:24:55 +0000111 "//tools/osx:xcode_locator.m",
Damien Martin-Guillerez3d796fe2016-01-11 10:07:57 +0000112 ] + select({
113 ":iphonesdk": ["//src/tools/xcode/stdredirect:StdRedirect.dylib"],
Damien Martin-Guillereza3bad0c2016-05-03 20:47:51 +0000114 "//conditions:default": [":dummy_darwin_tool_src_tools_xcode_stdredirect_StdRedirect.dylib"],
Damien Martin-Guillerez3d796fe2016-01-11 10:07:57 +0000115 }),
116)
117
Damien Martin-Guillereza3bad0c2016-05-03 20:47:51 +0000118filegroup(
119 name = "dummy_darwin_tools",
120 srcs = [
121 "dummy_darwin_tool_" + name.replace("/", "_")
122 for name in OSX_DUMMY_TARGETS
123 ],
124)
125
Philipp Wollermann95048272017-03-17 15:11:58 +0000126[genrule(
127 name = "embedded_tools" + suffix,
Damien Martin-Guillerez12997672015-09-03 21:54:08 +0000128 srcs = [
Damien Martin-Guillerez04d46ab2016-04-13 19:27:56 +0000129 ":create_embedded_tools.sh",
130 "//tools:embedded_tools_srcs",
Damien Martin-Guillerez068a6612016-06-29 10:25:38 +0000131 "//third_party:gpl-srcs",
Ulf Adamsd91d0472016-05-23 07:33:22 +0000132 "//third_party/java/jarjar:srcs",
Damien Martin-Guillerez7d265e02016-07-01 13:33:48 +0000133 "//third_party/java/jdk/langtools:test-srcs",
Ulf Adamsd91d0472016-05-23 07:33:22 +0000134 "//third_party/py/concurrent:srcs",
135 "//third_party/py/gflags:srcs",
Alex Humesky6d004682015-10-02 22:57:09 +0000136 "//src/java_tools/buildjar/java/com/google/devtools/build/buildjar/jarhelper:srcs",
Lukacs Berki6eaaf942015-10-27 13:04:58 +0000137 "//src/tools/android/java/com/google/devtools/build/android:embedded_tools",
Googler5e34a3d2015-12-03 15:17:55 +0000138 "//src/tools/android/java/com/google/devtools/build/android/ideinfo:embedded_tools",
Lukacs Berki6eaaf942015-10-27 13:04:58 +0000139 "//src/tools/android/java/com/google/devtools/build/android/idlclass:embedded_tools",
Adam Michael0b9ebfe2016-12-14 22:58:39 +0000140 "//src/tools/android/java/com/google/devtools/build/android/dexer:embedded_tools",
Lukacs Berki6eaaf942015-10-27 13:04:58 +0000141 "//src/tools/android/java/com/google/devtools/build/android/ziputils:embedded_tools",
Damien Martin-Guillerez04d46ab2016-04-13 19:27:56 +0000142 "//src/main/protobuf:srcs",
Damien Martin-Guillerez0ad9f5e2016-04-20 13:58:08 +0000143 "//src/java_tools/buildjar:JavaBuilderDeploy",
xingao8df71b52017-04-03 15:25:18 +0000144 "//src/java_tools/buildjar:VanillaJavaBuilder_deploy.jar",
Damien Martin-Guillerez04d46ab2016-04-13 19:27:56 +0000145 "//src/java_tools/singlejar:SingleJar_deploy.jar",
146 "//src/java_tools/buildjar/java/com/google/devtools/build/buildjar/genclass:GenClass_deploy.jar",
147 "//src/java_tools/junitrunner/java/com/google/testing/junit/runner:Runner_deploy.jar",
Kush Chakraborty4baedc72017-03-08 15:30:59 +0000148 "//src/java_tools/junitrunner/java/com/google/testing/junit/runner:ExperimentalRunner_deploy.jar",
Yue Ganaf3c4122016-12-05 14:36:02 +0000149 "//src/java_tools/junitrunner/java/com/google/testing/coverage:embedded_tools",
Lukacs Berki9b1e3a22015-11-18 09:55:46 +0000150 "//third_party/ijar",
Yue Ganaf3c4122016-12-05 14:36:02 +0000151 "//third_party/java/jacoco:srcs",
Damien Martin-Guillerez3d796fe2016-01-11 10:07:57 +0000152 ] + select({
Damien Martin-Guillerez1bab6b12016-02-17 15:27:32 +0000153 ":darwin": [
154 ":darwin_tools",
155 "//third_party/ijar:zipper",
156 ],
157 ":darwin_x86_64": [
158 ":darwin_tools",
159 "//third_party/ijar:zipper",
160 ],
Damien Martin-Guillereza3bad0c2016-05-03 20:47:51 +0000161 "//conditions:default": [
162 ":dummy_darwin_tools",
163 "//third_party/ijar:zipper",
164 ],
Damien Martin-Guillerez3437d2f2016-08-03 15:40:45 +0000165 }) + select({
166 "//tools/jdk:jdk7": [],
167 "//conditions:default": [
168 "//src/java_tools/buildjar/java/com/google/devtools/build/java/turbine:turbine_deploy.jar",
169 ],
Philipp Wollermann95048272017-03-17 15:11:58 +0000170 }) + (select({
171 ":darwin": [
172 "@openjdk_macos//file",
173 ],
174 ":darwin_x86_64": [
175 "@openjdk_macos//file",
176 ],
177 ":windows": [
178 "@openjdk_win//file",
179 ],
180 ":windows_msvc": [
181 "@openjdk_win//file",
182 ],
183 "//conditions:default": [
184 "@openjdk_linux//file",
185 ],
186 }) if (suffix == "_with_jdk") else []),
187 outs = ["embedded_tools" + suffix + ".zip"],
Lukacs Berki6eaaf942015-10-27 13:04:58 +0000188 cmd = "$(location :create_embedded_tools.sh) $@ $(SRCS)",
Philipp Wollermann95048272017-03-17 15:11:58 +0000189) for suffix in [
190 "",
191 "_with_jdk",
192]]
Damien Martin-Guillerez12997672015-09-03 21:54:08 +0000193
Lukacs Berkieb851fe2015-10-19 10:52:31 +0000194[genrule(
195 name = "package-zip" + suffix,
Philipp Wollermann95048272017-03-17 15:11:58 +0000196 srcs = ([":embedded_tools" + suffix + ".zip"] if embed else []) + [
Lukacs Berkieb851fe2015-10-19 10:52:31 +0000197 # The script assumes that the embedded tools zip (if exists) is the
198 # first item here, the deploy jar the second and install base key is the
199 # third
Han-Wen Nienhuys27760a62015-11-30 17:27:34 +0000200 "//src/main/java/com/google/devtools/build/lib:bazel/BazelServer_deploy.jar",
Lukacs Berkieb851fe2015-10-19 10:52:31 +0000201 "install_base_key" + suffix,
Han-Wen Nienhuysd08b27f2015-02-25 16:45:20 +0100202 "//src/main/cpp:client",
203 ":libunix",
204 "//src/main/tools:build-runfiles",
205 "//src/main/tools:process-wrapper",
Kristina Chodorowb5ecdab2015-03-16 17:55:04 +0000206 "//src/main/tools:jdk-support",
Philipp Wollermann278814b2016-07-15 14:41:54 +0000207 "//src/main/tools:linux-sandbox",
Chris Parsons5eb86fe2016-07-21 15:24:55 +0000208 "//tools/osx:xcode-locator",
Han-Wen Nienhuysd08b27f2015-02-25 16:45:20 +0100209 ":java-version",
210 ],
Lukacs Berkieb851fe2015-10-19 10:52:31 +0000211 outs = ["package" + suffix + ".zip"],
212 cmd = "$(location :package-bazel.sh) $@ " + ("" if embed else "''") + " $(SRCS)",
213 tools = ["package-bazel.sh"],
214) for suffix, embed in [
Damien Martin-Guillerez04d46ab2016-04-13 19:27:56 +0000215 ("", True),
216 ("_notools", False),
Philipp Wollermann95048272017-03-17 15:11:58 +0000217 ("_with_jdk", True),
Lukacs Berkieb851fe2015-10-19 10:52:31 +0000218]]
Han-Wen Nienhuysd08b27f2015-02-25 16:45:20 +0100219
Lukacs Berkieb851fe2015-10-19 10:52:31 +0000220[genrule(
221 name = "bazel-bin" + suffix,
Han-Wen Nienhuysd08b27f2015-02-25 16:45:20 +0100222 srcs = [
223 "//src/main/cpp:client",
Lukacs Berkieb851fe2015-10-19 10:52:31 +0000224 "package-zip" + suffix,
Han-Wen Nienhuysd08b27f2015-02-25 16:45:20 +0100225 ],
Lukacs Berkieb851fe2015-10-19 10:52:31 +0000226 outs = ["bazel" + suffix],
Yun Peng6ffb8e42016-04-14 16:55:02 +0000227 # In msys, a file path without .exe suffix(say foo), refers to a file with .exe
228 # suffix(say foo.exe), if foo.exe exists and foo doesn't. So, on windows, we
229 # need to remove bazel.exe first, so that cat to bazel won't fail.
230 cmd = "rm -f $@; cat $(location //src/main/cpp:client) $(location :package-zip" + suffix + ") > $@ && zip -qA $@",
Han-Wen Nienhuysd08b27f2015-02-25 16:45:20 +0100231 executable = 1,
232 output_to_bindir = 1,
Damien Martin-Guillerez5f9c6ba2015-04-09 21:10:33 +0000233 visibility = [
234 "//scripts:__pkg__", # For bash completion generation
Damien Martin-Guillerezab13f682015-07-28 08:19:32 +0000235 "//scripts/packages:__pkg__", # For installer generation
Ulf Adams9e24ebd2016-06-23 09:24:57 +0000236 "//src/java:__subpackages__", # For command line reference generation
Damien Martin-Guillerez5f9c6ba2015-04-09 21:10:33 +0000237 "//src/test:__subpackages__", # For integration tests
238 ],
Lukacs Berkieb851fe2015-10-19 10:52:31 +0000239) for suffix in [
240 "",
241 "_notools",
Philipp Wollermann95048272017-03-17 15:11:58 +0000242 "_with_jdk",
Lukacs Berkieb851fe2015-10-19 10:52:31 +0000243]]
Han-Wen Nienhuysd08b27f2015-02-25 16:45:20 +0100244
Dmitry Lomov9d40a602016-02-15 16:15:03 +0000245# Build an executable named `bazel.exe`.
246# Works on all platforms but only makes sense on Windows.
247# Workaround for non-configurability of genrule's `outs` attribute.
248[genrule(
249 name = "bazel-bin" + suffix + ".exe",
250 srcs = [":bazel-bin" + suffix],
251 outs = ["bazel" + suffix + ".exe"],
252 cmd = "cp $(location :bazel-bin" + suffix + ") $@",
253 executable = 1,
254 output_to_bindir = 1,
255 visibility = [
256 "//scripts:__pkg__", # For bash completion generation
257 "//scripts/packages:__pkg__", # For installer generation
258 "//src/test:__subpackages__", # For integration tests
259 ],
260) for suffix in [
261 "",
262 "_notools",
Philipp Wollermann95048272017-03-17 15:11:58 +0000263 "_with_jdk",
Dmitry Lomov9d40a602016-02-15 16:15:03 +0000264]]
265
Han-Wen Nienhuysd08b27f2015-02-25 16:45:20 +0100266config_setting(
267 name = "darwin",
268 values = {"cpu": "darwin"},
269 visibility = ["//visibility:public"],
270)
Doug Rabson709bc612015-08-25 14:12:00 +0000271
272config_setting(
Chris Parsons5d96a282015-10-29 17:14:20 +0000273 name = "darwin_x86_64",
274 values = {"cpu": "darwin_x86_64"},
275 visibility = ["//visibility:public"],
276)
277
278config_setting(
Damien Martin-Guillerez3d796fe2016-01-11 10:07:57 +0000279 name = "iphonesdk",
280 values = {"define": "IPHONE_SDK=1"},
281 visibility = ["//visibility:public"],
282)
283
284config_setting(
Doug Rabson709bc612015-08-25 14:12:00 +0000285 name = "freebsd",
286 values = {"cpu": "freebsd"},
287 visibility = ["//visibility:public"],
288)
Dmitry Lomov197fd6a2015-12-06 21:53:16 +0000289
290config_setting(
291 name = "windows",
Dmitry Lomov458ccd02016-02-02 20:30:32 +0000292 values = {"cpu": "x64_windows"},
Dmitry Lomov197fd6a2015-12-06 21:53:16 +0000293 visibility = ["//visibility:public"],
294)
Damien Martin-Guillerezde54bca2016-02-29 10:49:43 +0000295
Laszlo Csomor8896dad2016-09-28 15:02:13 +0000296config_setting(
297 name = "windows_msvc",
298 values = {"cpu": "x64_windows_msvc"},
299 visibility = ["//visibility:public"],
300)
301
Yun Pengcb8a5e22017-03-08 14:30:49 +0000302config_setting(
303 name = "windows_msys",
304 values = {"cpu": "x64_windows_msys"},
305 visibility = ["//visibility:public"],
306)
307
Damien Martin-Guillerezde54bca2016-02-29 10:49:43 +0000308filegroup(
309 name = "srcs",
310 srcs = glob(["**"]) + [
311 "//src/java_tools/buildjar:srcs",
Yue Ganaf3c4122016-12-05 14:36:02 +0000312 "//src/java_tools/junitrunner/java/com/google/testing/coverage:srcs",
Damien Martin-Guillerezde54bca2016-02-29 10:49:43 +0000313 "//src/java_tools/junitrunner/java/com/google/testing/junit/junit4:srcs",
314 "//src/java_tools/junitrunner/java/com/google/testing/junit/runner:srcs",
315 "//src/java_tools/junitrunner/java/com/google/testing/junit/runner/internal:srcs",
316 "//src/java_tools/junitrunner/java/com/google/testing/junit/runner/junit4:srcs",
317 "//src/java_tools/junitrunner/java/com/google/testing/junit/runner/model:srcs",
318 "//src/java_tools/junitrunner/java/com/google/testing/junit/runner/sharding:srcs",
319 "//src/java_tools/junitrunner/java/com/google/testing/junit/runner/sharding/api:srcs",
320 "//src/java_tools/junitrunner/java/com/google/testing/junit/runner/sharding/testing:srcs",
321 "//src/java_tools/junitrunner/java/com/google/testing/junit/runner/util:srcs",
Kush Chakraborty6fdef7b2017-02-10 16:46:12 +0000322 "//src/java_tools/junitrunner/javatests/com/google/testing/junit/runner:srcs",
323 "//src/java_tools/junitrunner/javatests/com/google/testing/junit/runner/testbed:srcs",
Damien Martin-Guillerezde54bca2016-02-29 10:49:43 +0000324 "//src/java_tools/singlejar:srcs",
325 "//src/main/cpp:srcs",
326 "//src/main/java/com/google/devtools/build/docgen:srcs",
327 "//src/main/java/com/google/devtools/build/lib:srcs",
Klaus Aehligd1f4a162016-10-25 14:51:55 +0000328 "//src/main/java/com/google/devtools/build/lib/causes:srcs",
Damien Martin-Guillerezde54bca2016-02-29 10:49:43 +0000329 "//src/main/java/com/google/devtools/build/skyframe:srcs",
330 "//src/main/java/com/google/devtools/common/options:srcs",
Damien Martin-Guillerez6aa2c272016-10-07 17:19:42 +0000331 "//src/main/java/com/google/devtools/skylark:srcs",
Damien Martin-Guillerezde54bca2016-02-29 10:49:43 +0000332 "//src/main/native:srcs",
333 "//src/main/protobuf:srcs",
334 "//src/main/tools:srcs",
335 "//src/objc_tools/bundlemerge:srcs",
336 "//src/objc_tools/plmerge:srcs",
337 "//src/objc_tools/xcodegen:srcs",
Damien Martin-Guillerez7d265e02016-07-01 13:33:48 +0000338 "//src/test/cpp:srcs",
Googler3e830922017-03-17 17:39:00 +0000339 "//src/test/gen:srcs",
Laszlo Csomor73e971c2017-01-18 13:30:35 +0000340 "//src/test/native:srcs",
Damien Martin-Guillerez7d265e02016-07-01 13:33:48 +0000341 "//src/test/java/com/google/devtools/build/android:srcs",
342 "//src/test/java/com/google/devtools/build/docgen:srcs",
343 "//src/test/java/com/google/devtools/build/lib:srcs",
344 "//src/test/java/com/google/devtools/build/skyframe:srcs",
345 "//src/test/java/com/google/devtools/common/options:srcs",
346 "//src/test/shell:srcs",
Damien Martin-Guillerezde54bca2016-02-29 10:49:43 +0000347 "//src/tools/android/java/com/google/devtools/build/android:srcs",
Yue Gan81ea54e2017-01-25 10:14:52 +0000348 "//src/tools/benchmark:srcs",
Damien Martin-Guillerezde54bca2016-02-29 10:49:43 +0000349 "//src/tools/generate_workspace:srcs",
350 "//src/tools/xcode/actoolwrapper:srcs",
351 "//src/tools/xcode/environment:srcs",
352 "//src/tools/xcode/ibtoolwrapper:srcs",
353 "//src/tools/xcode/momcwrapper:srcs",
354 "//src/tools/xcode/realpath:srcs",
Sasha Smundak06a12e52016-07-15 17:35:51 +0000355 "//src/tools/singlejar:srcs",
Damien Martin-Guillerezde54bca2016-02-29 10:49:43 +0000356 "//src/tools/xcode/stdredirect:srcs",
357 "//src/tools/xcode/swiftstdlibtoolwrapper:srcs",
Damien Martin-Guillerezde54bca2016-02-29 10:49:43 +0000358 "//src/tools/xcode-common:srcs",
Damien Martin-Guillerez7d265e02016-07-01 13:33:48 +0000359 "//src/tools/remote_worker:srcs",
Chris Parsons5eb86fe2016-07-21 15:24:55 +0000360 "//tools/osx:srcs",
Damien Martin-Guillerezde54bca2016-02-29 10:49:43 +0000361 ],
362 visibility = ["//:__pkg__"],
363)
Klaus Aehlig4ca79d42016-10-22 07:59:41 +0000364
365genrule(
366 name = "derived_java_srcs",
367 srcs = [
368 "//src/main/protobuf:dist_jars",
369 "//src/main/java/com/google/devtools/build/lib/buildeventstream/proto:dist_jars",
370 ],
371 outs = ["derived_java_srcs.zip"],
372 cmd = "$(location :combine_derived_java_srcs.sh) $@ $(SRCS)",
373 tools = ["combine_derived_java_srcs.sh"],
374 visibility = ["//:__pkg__"],
375)