From 8a9be26492651afd8c71e5da98751e36d948b4e5 Mon Sep 17 00:00:00 2001 From: Laszlo Csomor Date: Mon, 10 Jul 2017 13:30:04 +0200 Subject: Windows, Android BusyBox: create JunctionCreator Introduce the JunctionCreator classes that the Android BusyBox can use to work around path length limitations on Windows. See https://github.com/bazelbuild/bazel/issues/3264 Change-Id: Ia5ee39f0635dcc2690ffb1755dc56d21e7bc7536 PiperOrigin-RevId: 161378422 --- .../google/devtools/build/lib/windows/jni/BUILD | 31 +++++++++++++++++++--- .../build/lib/windows/jni/WindowsJniLoader.java | 2 +- 2 files changed, 28 insertions(+), 5 deletions(-) (limited to 'src/main/java/com') diff --git a/src/main/java/com/google/devtools/build/lib/windows/jni/BUILD b/src/main/java/com/google/devtools/build/lib/windows/jni/BUILD index ed8ca69799..d295eacb0a 100644 --- a/src/main/java/com/google/devtools/build/lib/windows/jni/BUILD +++ b/src/main/java/com/google/devtools/build/lib/windows/jni/BUILD @@ -1,17 +1,38 @@ -package( - default_visibility = [ - "//src/main/java/com/google/devtools/build/lib:__subpackages__", - "//src/test/java/com/google/devtools/build/lib:__subpackages__", +package(default_visibility = ["//visibility:private"]) + +package_group( + name = "android-junctions-prod", + packages = [ + "//src/tools/android/java/com/google/devtools/build/android/junctions", + ], +) + +package_group( + name = "bazel-prod", + packages = [ + "//src/main/java/com/google/devtools/build/lib/...", + ], +) + +package_group( + name = "bazel-tests", + packages = [ + "//src/test/java/com/google/devtools/build/lib/...", ], ) filegroup( name = "srcs", srcs = glob(["**"]), + visibility = [":bazel-prod"], ) java_library( name = "jni", + visibility = [ + ":bazel-prod", + ":bazel-tests", + ], exports = [ ":file", ":processes", @@ -21,12 +42,14 @@ java_library( java_library( name = "file", srcs = ["WindowsFileOperations.java"], + visibility = [":android-junctions-prod"], deps = [":jni-loader"], ) java_library( name = "processes", srcs = ["WindowsProcesses.java"], + visibility = [":bazel-prod"], deps = [":jni-loader"], ) diff --git a/src/main/java/com/google/devtools/build/lib/windows/jni/WindowsJniLoader.java b/src/main/java/com/google/devtools/build/lib/windows/jni/WindowsJniLoader.java index b68c1a8b07..974fe4e6dc 100644 --- a/src/main/java/com/google/devtools/build/lib/windows/jni/WindowsJniLoader.java +++ b/src/main/java/com/google/devtools/build/lib/windows/jni/WindowsJniLoader.java @@ -29,7 +29,7 @@ public class WindowsJniLoader { try { System.loadLibrary("windows_jni"); } catch (UnsatisfiedLinkError ex) { - // We are probably in tests, let's try to find the library in the runfiles + // Try to find the library in the runfiles. try { System.load(WindowsRunfiles.getRunfile("io_bazel/src/main/native/windows/windows_jni.dll")); } catch (IOException e) { -- cgit v1.2.3