aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorGravatar Lukacs Berki <lberki@google.com>2016-04-11 10:34:45 +0000
committerGravatar Lukacs Berki <lberki@google.com>2016-04-11 11:24:01 +0000
commit285112c9b61ca3782e00ccf6411339da7291a3c3 (patch)
tree9e6c9d3c905be50c56209b3f37d3098ab8b23caf
parentdaafdcda9c8e0f883e18bc7c69aad44903a909c8 (diff)
Remove te protocol compiler rules from @bazel_tools.
The immmediate reason for this change is that we also need to add gRPC support to the proto rules, and we don't want to also support gRPC in a half-baked way. This makes the Bazel binary much smaller and avoid giving false signals that we (for now) support protobuf compilation. The protobuf rules are only for compiling Bazel itself. RELNOTES[INC]: Bazel does not embed protocol buffer-related rules anymore. -- MOS_MIGRATED_REVID=119516246
-rw-r--r--examples/BUILD1
-rw-r--r--examples/proto/BUILD22
-rw-r--r--examples/proto/test.proto10
-rw-r--r--src/BUILD2
-rw-r--r--src/main/protobuf/BUILD6
-rwxr-xr-xsrc/test/shell/bazel/bazel_example_test.sh8
-rwxr-xr-xsrc/test/shell/bazel/test-setup.sh17
-rw-r--r--third_party/BUILD18
-rw-r--r--third_party/protobuf/BUILD2
-rw-r--r--tools/BUILD2
-rw-r--r--tools/build_rules/BUILD6
-rw-r--r--tools/build_rules/genproto.bzl6
12 files changed, 33 insertions, 67 deletions
diff --git a/examples/BUILD b/examples/BUILD
index 9d25b8fc73..8bfbc19524 100644
--- a/examples/BUILD
+++ b/examples/BUILD
@@ -8,7 +8,6 @@ filegroup(
"//examples/java-native:srcs",
"//examples/java-skylark:srcs",
"//examples/objc:srcs",
- "//examples/proto:srcs",
"//examples/py:srcs",
"//examples/py_native:srcs",
"//examples/shell:srcs",
diff --git a/examples/proto/BUILD b/examples/proto/BUILD
deleted file mode 100644
index 0d3108176e..0000000000
--- a/examples/proto/BUILD
+++ /dev/null
@@ -1,22 +0,0 @@
-package(default_visibility = ["//visibility:public"])
-
-load("//tools/build_rules:genproto.bzl", "java_proto_library")
-
-proto_library(
- name = "proto_smoke_test",
- srcs = ["test.proto"],
-)
-
-# java_proto_library is a quick and dirty rule to help Bazel compile itself.
-java_proto_library(
- name = "test_proto",
- src = "test.proto",
-)
-
-filegroup(
- name = "srcs",
- srcs = [
- "BUILD",
- "test.proto",
- ],
-)
diff --git a/examples/proto/test.proto b/examples/proto/test.proto
deleted file mode 100644
index 16a6dc335a..0000000000
--- a/examples/proto/test.proto
+++ /dev/null
@@ -1,10 +0,0 @@
-syntax = "proto2";
-
-package test;
-
-option java_package = "com.google.test";
-
-message KeyVal {
- optional string key = 1;
- optional string val = 2;
-}
diff --git a/src/BUILD b/src/BUILD
index 39c815582e..7ff67d458f 100644
--- a/src/BUILD
+++ b/src/BUILD
@@ -92,7 +92,7 @@ genrule(
srcs = [
":create_embedded_tools.sh",
"//tools:embedded_tools_srcs",
- "//third_party:srcs",
+ "//third_party:embedded_tools_srcs",
"//src/java_tools/buildjar/java/com/google/devtools/build/buildjar/jarhelper:srcs",
"//src/tools/android/java/com/google/devtools/build/android:embedded_tools",
"//src/tools/android/java/com/google/devtools/build/android/ideinfo:embedded_tools",
diff --git a/src/main/protobuf/BUILD b/src/main/protobuf/BUILD
index 979d7543fe..a569b339fb 100644
--- a/src/main/protobuf/BUILD
+++ b/src/main/protobuf/BUILD
@@ -1,7 +1,7 @@
package(default_visibility = ["//visibility:public"])
load("//tools/build_rules:genproto.bzl", "java_proto_library")
-load("@bazel_tools//third_party/protobuf:protobuf.bzl", "py_proto_library")
+load("//third_party/protobuf:protobuf.bzl", "py_proto_library")
FILES = [
"build",
@@ -30,8 +30,8 @@ FILES = [
py_proto_library(
name = "build_pb_py",
srcs = ["build.proto"],
- default_runtime = "@bazel_tools//third_party/protobuf:protobuf_python",
- protoc = "@bazel_tools//third_party/protobuf:protoc",
+ default_runtime = "//third_party/protobuf:protobuf_python",
+ protoc = "//third_party/protobuf:protoc",
)
filegroup(
diff --git a/src/test/shell/bazel/bazel_example_test.sh b/src/test/shell/bazel/bazel_example_test.sh
index 9908ebc6c9..b9d2aef276 100755
--- a/src/test/shell/bazel/bazel_example_test.sh
+++ b/src/test/shell/bazel/bazel_example_test.sh
@@ -168,12 +168,4 @@ function test_java_test_skylark() {
assert_test_fails //${javatests}:fail
}
-function test_protobuf() {
- setup_protoc_support
- local jar=bazel-bin/examples/proto/libtest_proto.jar
- assert_build_output $jar //examples/proto:test_proto
- unzip -v $jar | grep -q 'KeyVal\.class' \
- || fail "Did not find KeyVal class in proto jar."
-}
-
run_suite "examples"
diff --git a/src/test/shell/bazel/test-setup.sh b/src/test/shell/bazel/test-setup.sh
index 2efe10b69b..8ed875b2cf 100755
--- a/src/test/shell/bazel/test-setup.sh
+++ b/src/test/shell/bazel/test-setup.sh
@@ -271,23 +271,6 @@ android_sdk_repository(
EOF
}
-function setup_protoc_support() {
- mkdir -p third_party/protobuf
- [ -e third_party/protobuf/protoc ] \
- || ln -s ${protoc_compiler} third_party/protobuf/protoc
- [ -e third_party/protobuf/protobuf-java.jar ] \
- || ln -s ${protoc_jar} third_party/protobuf/protobuf-java.jar
-
-cat <<EOF > third_party/BUILD
-package(default_visibility = ["//visibility:public"])
-exports_files(["protoc"])
-java_import(
- name = "protobuf",
- jars = ["protobuf-java.jar"])
-
-EOF
-}
-
function setup_javatest_common() {
# TODO(bazel-team): we should use remote repositories.
mkdir -p third_party
diff --git a/third_party/BUILD b/third_party/BUILD
index 5c6b80abdd..e0d331441d 100644
--- a/third_party/BUILD
+++ b/third_party/BUILD
@@ -20,6 +20,24 @@ filegroup(
)
filegroup(
+ name = "embedded_tools_srcs",
+ srcs = glob(["**"]) + [
+ "//third_party/ijar:srcs",
+ "//third_party/iossim:srcs",
+ "//third_party/java/apkbuilder:srcs",
+ "//third_party/java/buck-ios-support:srcs",
+ "//third_party/java/dd_plist:srcs",
+ "//third_party/java/j2objc:srcs",
+ "//third_party/java/jarjar:srcs",
+ "//third_party/java/jdk/langtools:srcs",
+ "//third_party/py/concurrent:srcs",
+ "//third_party/py/gflags:srcs",
+ "//third_party/py/mock:srcs",
+ "//third_party/py/six:srcs",
+ ],
+)
+
+filegroup(
name = "d3-js",
srcs = glob(["javascript/d3/**/*.js"]),
)
diff --git a/third_party/protobuf/BUILD b/third_party/protobuf/BUILD
index f9539e1e44..44b190398f 100644
--- a/third_party/protobuf/BUILD
+++ b/third_party/protobuf/BUILD
@@ -2,7 +2,7 @@ package(default_visibility = ["//visibility:public"])
licenses(["notice"])
-load("@bazel_tools//third_party/protobuf:protobuf.bzl", "py_proto_library")
+load("//third_party/protobuf:protobuf.bzl", "py_proto_library")
filegroup(
name = "srcs",
diff --git a/tools/BUILD b/tools/BUILD
index fa60b669d4..302e3b7766 100644
--- a/tools/BUILD
+++ b/tools/BUILD
@@ -39,7 +39,7 @@ filegroup(
"//tools/build_defs/pkg:srcs",
"//tools/build_rules/closure:srcs",
"//tools/build_rules/rust:srcs",
- "//tools/build_rules:srcs",
+ "//tools/build_rules:embedded_tools_srcs",
"//tools/buildstamp:srcs",
"//tools/cpp:srcs",
"//tools/genrule:srcs",
diff --git a/tools/build_rules/BUILD b/tools/build_rules/BUILD
index a00791e4eb..fdc38c7544 100644
--- a/tools/build_rules/BUILD
+++ b/tools/build_rules/BUILD
@@ -11,3 +11,9 @@ filegroup(
srcs = glob(["**"]),
visibility = ["//tools:__pkg__"],
)
+
+filegroup(
+ name = "embedded_tools_srcs",
+ srcs = ["test_rules.bzl"],
+ visibility = ["//visibility:public"],
+)
diff --git a/tools/build_rules/genproto.bzl b/tools/build_rules/genproto.bzl
index 62284a3b20..3acec8d743 100644
--- a/tools/build_rules/genproto.bzl
+++ b/tools/build_rules/genproto.bzl
@@ -44,13 +44,13 @@ gensrcjar = rule(
single_file = True,
),
"_gensrcjar": attr.label(
- default = Label("@bazel_tools//tools/build_rules:gensrcjar"),
+ default = Label("//tools/build_rules:gensrcjar"),
executable = True,
),
# TODO(bazel-team): this should be a hidden attribute with a default
# value, but Skylark needs to support select first.
"_proto_compiler": attr.label(
- default = Label("@bazel_tools//third_party/protobuf:protoc"),
+ default = Label("//third_party/protobuf:protoc"),
allow_files = True,
executable = True,
single_file = True,
@@ -79,7 +79,7 @@ def java_proto_library(name, src):
native.java_library(
name=name,
srcs=[name + "_srcjar"],
- deps=["@bazel_tools//third_party/protobuf"],
+ deps=["//third_party/protobuf"],
# The generated code has lots of 'rawtypes' warnings.
javacopts=["-Xlint:-rawtypes"],
)