diff options
Diffstat (limited to 'src')
6 files changed, 23 insertions, 9 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/BUILD b/src/main/java/com/google/devtools/build/lib/BUILD index fe0b267423..dfca261826 100644 --- a/src/main/java/com/google/devtools/build/lib/BUILD +++ b/src/main/java/com/google/devtools/build/lib/BUILD @@ -64,6 +64,7 @@ java_library( "//conditions:default": ["//src/main/native:libunix.so"], }), deps = [ + ":os_util", ":shell", "//third_party:guava", ], diff --git a/src/main/java/com/google/devtools/build/lib/UnixJniLoader.java b/src/main/java/com/google/devtools/build/lib/UnixJniLoader.java index 7837d880d8..5646256ec7 100644 --- a/src/main/java/com/google/devtools/build/lib/UnixJniLoader.java +++ b/src/main/java/com/google/devtools/build/lib/UnixJniLoader.java @@ -14,6 +14,8 @@ package com.google.devtools.build.lib; +import com.google.devtools.build.lib.util.OS; + import java.io.File; /** @@ -22,7 +24,9 @@ import java.io.File; public class UnixJniLoader { public static void loadJni() { try { - System.loadLibrary("unix"); + if (OS.getCurrent() != OS.WINDOWS) { + System.loadLibrary("unix"); + } } catch (UnsatisfiedLinkError ex) { // We are probably in tests, let's try to find the library relative to where we are. File cwd = new File(System.getProperty("user.dir")); diff --git a/src/main/java/com/google/devtools/build/lib/runtime/OomSignalHandler.java b/src/main/java/com/google/devtools/build/lib/runtime/OomSignalHandler.java index 61116342a0..f8dcb3237e 100644 --- a/src/main/java/com/google/devtools/build/lib/runtime/OomSignalHandler.java +++ b/src/main/java/com/google/devtools/build/lib/runtime/OomSignalHandler.java @@ -15,6 +15,7 @@ package com.google.devtools.build.lib.runtime; import com.google.devtools.build.lib.server.signal.AbstractSignalHandler; import com.google.devtools.build.lib.util.ExitCode; +import com.google.devtools.build.lib.util.OS; import com.google.devtools.build.lib.util.io.OutErr; import sun.misc.Signal; @@ -29,7 +30,7 @@ import java.util.logging.Logger; */ class OomSignalHandler extends AbstractSignalHandler { private static final Logger LOG = Logger.getLogger(OomSignalHandler.class.getName()); - private static final Signal SIGUSR2 = new Signal("USR2"); + private static final Signal SIGUSR2 = (OS.getCurrent() != OS.WINDOWS) ? new Signal("USR2") : null; private static final String MESSAGE = "SIGUSR2 received, presumably from JVM due to OOM"; // Pre-allocate memory for object that will be used during an OOM, because there may not be spare // memory when we're OOMing. That's kind of the point of an OOM. diff --git a/src/main/java/com/google/devtools/build/lib/unix/ErrnoFileStatus.java b/src/main/java/com/google/devtools/build/lib/unix/ErrnoFileStatus.java index 8171be8825..b3341ade04 100644 --- a/src/main/java/com/google/devtools/build/lib/unix/ErrnoFileStatus.java +++ b/src/main/java/com/google/devtools/build/lib/unix/ErrnoFileStatus.java @@ -15,7 +15,7 @@ package com.google.devtools.build.lib.unix; import com.google.devtools.build.lib.UnixJniLoader; - +import com.google.devtools.build.lib.util.OS; /** * A subsclass of FileStatus which contains an errno. @@ -81,7 +81,9 @@ public class ErrnoFileStatus extends FileStatus { public static ErrnoConstants getErrnoConstants() { ErrnoConstants constants = new ErrnoConstants(); - constants.initErrnoConstants(); + if (OS.getCurrent() != OS.WINDOWS) { + constants.initErrnoConstants(); + } return constants; } diff --git a/src/main/java/com/google/devtools/build/lib/unix/LocalSocketImpl.java b/src/main/java/com/google/devtools/build/lib/unix/LocalSocketImpl.java index df4ba5f7b4..a30b450dc1 100644 --- a/src/main/java/com/google/devtools/build/lib/unix/LocalSocketImpl.java +++ b/src/main/java/com/google/devtools/build/lib/unix/LocalSocketImpl.java @@ -14,6 +14,7 @@ package com.google.devtools.build.lib.unix; import com.google.devtools.build.lib.UnixJniLoader; +import com.google.devtools.build.lib.util.OS; import java.io.Closeable; import java.io.FileDescriptor; @@ -42,7 +43,9 @@ class LocalSocketImpl extends SocketImpl { static { UnixJniLoader.loadJni(); - init(); + if (OS.getCurrent() != OS.WINDOWS) { + init(); + } } // The logic here is a little twisted, to support JDK7 and JDK8. diff --git a/src/test/java/com/google/devtools/build/lib/BUILD b/src/test/java/com/google/devtools/build/lib/BUILD index 959338925c..b675d77782 100644 --- a/src/test/java/com/google/devtools/build/lib/BUILD +++ b/src/test/java/com/google/devtools/build/lib/BUILD @@ -46,10 +46,13 @@ java_library( "vfs/util/*.java", "events/util/*.java", ]), - data = [ - "//src/main/native:libunix.dylib", - "//src/main/native:libunix.so", - ], + data = select({ + "//src:windows": [], + "//conditions:default": [ + "//src/main/native:libunix.dylib", + "//src/main/native:libunix.so", + ], + }), deps = [ ":testutil", "//src/main/java/com/google/devtools/build/lib:bazel-main", |