Bazel: Add standalone build mode
Test Plan:
1. Build the plugins:
$ bazel build :all
INFO: Analysed target //:all (26 packages loaded).
INFO: Found 1 target...
Target //:all up-to-date:
bazel-genfiles/all.zip
INFO: Elapsed time: 1.060s, Critical Path: 0.41s
2. Verify the content is sane:
$ unzip -t bazel-genfiles/all.zip
Archive: bazel-genfiles/all.zip
testing: owners.jar OK
testing: owners-autoassign.jar OK
3. Run the tests:
$ bazel test //...
INFO: Found 1 test target...
Target //owners-common:test up-to-date:
bazel-bin/owners-common/test.jar
bazel-bin/owners-common/test
INFO: Elapsed time: 4.941s, Critical Path: 3.18s
INFO: Build completed successfully, 13 total actions
//owners-common:test PASSED in 1.9s
4. Generate Eclipse project:
$ tools/eclipse/project.sh
Verify project can be imported to Eclipse and dependencies are in the
classpath
Change-Id: I211bd5acb293a36f9c12b428fbb0a4ceb4dfc177
diff --git a/BUILD b/BUILD
new file mode 100644
index 0000000..b52c2c1
--- /dev/null
+++ b/BUILD
@@ -0,0 +1,29 @@
+load("//tools:genrule2.bzl", "genrule2")
+load("//tools/bzl:plugin.bzl", "PLUGIN_TEST_DEPS")
+load("//owners-common:common.bzl", "EXTERNAL_DEPS")
+
+genrule2(
+ name = "all",
+ srcs = [
+ "//owners",
+ "//owners-autoassign",
+ "//owners-common",
+ ],
+ outs = ["all.zip"],
+ cmd = " && ".join([
+ "cp $(SRCS) $$TMP",
+ "cd $$TMP",
+ "zip -qr $$ROOT/$@ .",
+ ]),
+)
+
+java_library(
+ name = "owners_classpath_deps",
+ testonly = 1,
+ visibility = ["//visibility:public"],
+ exports = EXTERNAL_DEPS + PLUGIN_TEST_DEPS + [
+ "//owners:owners__plugin",
+ "//owners-autoassign:owners-autoassign__plugin",
+ "//owners-common:owners-common__plugin",
+ ],
+)