diff options
author | 2017-01-17 10:58:06 +0000 | |
---|---|---|
committer | 2017-01-17 12:16:09 +0000 | |
commit | c0be64464b97ea011b4b4ad901515aac1dc97b4c (patch) | |
tree | 5316a1f86fb83efe0a1a36301e7202838f680bd5 /src/java_tools/junitrunner | |
parent | b762afd7b3fe7d3f44444d8495b4fefab8cbc743 (diff) |
Jarjar the third-party dependencies of the Jacoco test runner.
This is the second encore of commit 823091f7516abf7d854021edc765daf1467f1647. The first one failed because jarjar tried to write to C:\WINDOWS , the second one failed because cygpath does not always return a proper temp directory, the third one failed because the bash quoting doesn't handle $ signs in directories (fixed in commit 35a37e0429add201342dd1d005bc9286c53c02c3).
Fourth time is the charm!
--
PiperOrigin-RevId: 144689400
MOS_MIGRATED_REVID=144689400
Diffstat (limited to 'src/java_tools/junitrunner')
-rw-r--r-- | src/java_tools/junitrunner/java/com/google/testing/coverage/BUILD | 33 | ||||
-rw-r--r-- | src/java_tools/junitrunner/java/com/google/testing/coverage/JacocoCoverage.jarjar | 2 |
2 files changed, 34 insertions, 1 deletions
diff --git a/src/java_tools/junitrunner/java/com/google/testing/coverage/BUILD b/src/java_tools/junitrunner/java/com/google/testing/coverage/BUILD index 319f13b6d2..89fc2fc5c3 100644 --- a/src/java_tools/junitrunner/java/com/google/testing/coverage/BUILD +++ b/src/java_tools/junitrunner/java/com/google/testing/coverage/BUILD @@ -22,7 +22,7 @@ filegroup( filegroup( name = "embedded_tools", srcs = [ - "JacocoCoverage_deploy.jar", + "JacocoCoverage_jarjar_deploy.jar", ], ) @@ -68,3 +68,34 @@ java_library( "//third_party:apache_commons_lang", ], ) + +genrule( + name = "Jacoco_jarjar", + srcs = [ + ":JacocoCoverage_deploy.jar", + ":JacocoCoverage.jarjar", + ], + outs = ["JacocoCoverage_jarjar_deploy.jar"], + cmd = "\n".join([ + # File#createTempFile() apparently tries to create the temp file under + # C:\WINDOWS by default on Windows, which is not writable. Help Java a bit. + # https://github.com/bazelbuild/bazel/issues/2349 will be a general + # solution for creating temp files in Java binaries in actions. Once + # that's fixed, we won't need to set TEMP here anymore. + "set +e", + "if [[ $$(uname -a) =~ MSYS ]]; then", + " DOS_TEMP=\"$$(cygpath -m --mydocs)/temp\";", + " PATH_DOS=$$?;", + " UNIX_TEMP=\"$$(cygpath -u --mydocs)/temp\";", + " if [[ $$? != 0 || $$PATH_DOS != 0 ]]; then", + " echo Cannot find temp directory, defaulting to /c/temp;", + " export DOS_TEMP=C:\\\\TEMP;", + " UNIX_TEMP=/c/temp;", + " fi", + " export TEMP=\"$$DOS_TEMP\";", + " mkdir -p \"$$UNIX_TEMP\";", + "fi", + "\"$(location //third_party/java/jarjar:jarjar_bin)\" process \"$(location :JacocoCoverage.jarjar)\" \"$(location :JacocoCoverage_deploy.jar)\" \"$@\"", + ]), + tools = ["//third_party/java/jarjar:jarjar_bin"], +) diff --git a/src/java_tools/junitrunner/java/com/google/testing/coverage/JacocoCoverage.jarjar b/src/java_tools/junitrunner/java/com/google/testing/coverage/JacocoCoverage.jarjar new file mode 100644 index 0000000000..56190d874c --- /dev/null +++ b/src/java_tools/junitrunner/java/com/google/testing/coverage/JacocoCoverage.jarjar @@ -0,0 +1,2 @@ +rule org.apache.commons.** com.google.testing.coverage.jarjar.@0 +rule org.objectweb.asm.** com.google.testing.coverage.jarjar.@0 |