aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rw-r--r--src/BUILD6
-rw-r--r--src/BUILD.tools23
-rw-r--r--src/main/cpp/util/BUILD6
-rw-r--r--src/main/native/BUILD9
-rwxr-xr-xsrc/test/shell/integration/java_integration_test.sh13
-rw-r--r--src/tools/singlejar/BUILD24
-rw-r--r--third_party/ijar/BUILD6
7 files changed, 85 insertions, 2 deletions
diff --git a/src/BUILD b/src/BUILD
index 247746237e..b919e10c5f 100644
--- a/src/BUILD
+++ b/src/BUILD
@@ -126,6 +126,7 @@ filegroup(
[genrule(
name = "embedded_tools" + suffix,
srcs = [
+ "BUILD.tools",
":create_embedded_tools.sh",
"//tools:embedded_tools_srcs",
"//third_party:gpl-srcs",
@@ -140,6 +141,9 @@ filegroup(
"//src/tools/android/java/com/google/devtools/build/android/idlclass:embedded_tools",
"//src/tools/android/java/com/google/devtools/build/android/dexer:embedded_tools",
"//src/tools/android/java/com/google/devtools/build/android/ziputils:embedded_tools",
+ "//src/tools/singlejar:embedded_tools",
+ "//src/main/cpp/util:embedded_tools",
+ "//src/main/native:embedded_tools",
"//src/main/protobuf:srcs",
"//src/java_tools/buildjar:JavaBuilderDeploy",
"//src/java_tools/buildjar:VanillaJavaBuilder_deploy.jar",
@@ -148,7 +152,9 @@ filegroup(
"//src/java_tools/junitrunner/java/com/google/testing/junit/runner:ExperimentalRunner_deploy.jar",
"//src/java_tools/junitrunner/java/com/google/testing/coverage:embedded_tools",
"//third_party/ijar",
+ "//third_party/ijar:embedded_tools",
"//third_party/java/jacoco:srcs",
+ "//third_party/zlib:embedded_tools",
] + select({
":darwin": [
":darwin_tools",
diff --git a/src/BUILD.tools b/src/BUILD.tools
new file mode 100644
index 0000000000..d4e0a4164c
--- /dev/null
+++ b/src/BUILD.tools
@@ -0,0 +1,23 @@
+config_setting(
+ name = "freebsd",
+ values = {"cpu": "freebsd"},
+ visibility = ["//visibility:public"],
+)
+
+config_setting(
+ name = "windows",
+ values = {"cpu": "x64_windows"},
+ visibility = ["//visibility:public"],
+)
+
+config_setting(
+ name = "windows_msvc",
+ values = {"cpu": "x64_windows_msvc"},
+ visibility = ["//visibility:public"],
+)
+
+config_setting(
+ name = "windows_msys",
+ values = {"cpu": "x64_windows_msys"},
+ visibility = ["//visibility:public"],
+)
diff --git a/src/main/cpp/util/BUILD b/src/main/cpp/util/BUILD
index 6bd3b44488..b595ccb571 100644
--- a/src/main/cpp/util/BUILD
+++ b/src/main/cpp/util/BUILD
@@ -146,3 +146,9 @@ filegroup(
srcs = glob(["**"]),
visibility = ["//src/main/cpp:__pkg__"],
)
+
+filegroup(
+ name = "embedded_tools",
+ srcs = glob(["*.cc"]) + glob(["*.h"]) + ["BUILD"],
+ visibility = ["//visibility:public"],
+)
diff --git a/src/main/native/BUILD b/src/main/native/BUILD
index 653b595ad2..3799a109cf 100644
--- a/src/main/native/BUILD
+++ b/src/main/native/BUILD
@@ -108,3 +108,12 @@ filegroup(
srcs = glob(["**"]),
visibility = ["//src:__pkg__"],
)
+
+# TODO(laszlocsomor): move the common parts needed both by the Windows JNI lib
+# and the Bazel client into a separate library, and only copy those to the
+# embedded tools folder.
+filegroup(
+ name = "embedded_tools",
+ srcs = glob(["*.cc"]) + glob(["*.h"]) + ["BUILD"],
+ visibility = ["//visibility:public"],
+)
diff --git a/src/test/shell/integration/java_integration_test.sh b/src/test/shell/integration/java_integration_test.sh
index e86e90a926..7c4f5d250f 100755
--- a/src/test/shell/integration/java_integration_test.sh
+++ b/src/test/shell/integration/java_integration_test.sh
@@ -304,8 +304,14 @@ function test_deterministic_nostamp_build() {
bazel clean || fail "Clean failed"
bazel build --nostamp //$pkg/java/hello:hello_deploy.jar \
|| fail "Build failed"
+ # TODO(bazel-team) .a files (C/C++ static library file generated by
+ # archive tool) on darwin OS only are not deterministic.
+ # https://github.com/bazelbuild/bazel/issues/3156
local -r first_run="$(md5_file $(find "${PRODUCT_NAME}-out/" -type f '!' \
- -name build-changelist.txt -a '!' -name volatile-status.txt | sort -u))"
+ -name build-changelist.txt -a '!' -name volatile-status.txt \
+ -a '!' -name stderr-* -a '!' -name *.a \
+ -a '!' -name __xcodelocatorcache -a '!' -name __xcruncache \
+ | sort -u))"
sleep 1 # Ensure the timestamp change between builds.
@@ -313,7 +319,10 @@ function test_deterministic_nostamp_build() {
bazel build --nostamp //$pkg/java/hello:hello_deploy.jar \
|| fail "Build failed"
local -r second_run="$(md5_file $(find "${PRODUCT_NAME}-out/" -type f '!' \
- -name build-changelist.txt -a '!' -name volatile-status.txt | sort -u))"
+ -name build-changelist.txt -a '!' -name volatile-status.txt \
+ -a '!' -name stderr-* -a '!' -name *.a \
+ -a '!' -name __xcodelocatorcache -a '!' -name __xcruncache \
+ | sort -u))"
assert_equals "$first_run" "$second_run"
}
diff --git a/src/tools/singlejar/BUILD b/src/tools/singlejar/BUILD
index 7ca5ffa8ff..35b0c50e3b 100644
--- a/src/tools/singlejar/BUILD
+++ b/src/tools/singlejar/BUILD
@@ -17,6 +17,29 @@ filegroup(
visibility = ["//src:__pkg__"],
)
+filegroup(
+ name = "embedded_tools",
+ srcs = [
+ "BUILD",
+ "combiners.cc",
+ "combiners.h",
+ "diag.h",
+ "input_jar.cc",
+ "input_jar.h",
+ "mapped_file.h",
+ "options.cc",
+ "options.h",
+ "output_jar.cc",
+ "output_jar.h",
+ "singlejar_main.cc",
+ "token_stream.h",
+ "transient_bytes.h",
+ "zip_headers.h",
+ "zlib_interface.h",
+ ],
+ visibility = ["//visibility:public"],
+)
+
cc_binary(
name = "singlejar",
srcs = [
@@ -27,6 +50,7 @@ cc_binary(
"//conditions:default": [],
}),
linkstatic = 1,
+ visibility = ["//visibility:public"],
deps = [
"options",
"output_jar",
diff --git a/third_party/ijar/BUILD b/third_party/ijar/BUILD
index 7836ea1bd9..45fca3a6df 100644
--- a/third_party/ijar/BUILD
+++ b/third_party/ijar/BUILD
@@ -90,3 +90,9 @@ filegroup(
srcs = glob(["**"]) + ["//third_party/ijar/test:srcs"],
visibility = ["//third_party:__pkg__"],
)
+
+filegroup(
+ name = "embedded_tools",
+ srcs = glob(["**"]),
+ visibility = ["//visibility:public"],
+)