# HG changeset patch # User asiebenborn # Date 1524220964 -7200 # Fri Apr 20 12:42:44 2018 +0200 # Node ID 247819404723ad32f019c3750f18768d05abf99b # Parent f7d3f7b5648f994a1c684b27980cd6087f76e55d Set LD_LIBRARY_PATH or LIBPATH to find the right libjvm. diff --git a/test/hotspot/jtreg/gtest/GTestWrapper.java b/test/hotspot/jtreg/gtest/GTestWrapper.java --- a/test/hotspot/jtreg/gtest/GTestWrapper.java +++ b/test/hotspot/jtreg/gtest/GTestWrapper.java @@ -30,6 +30,7 @@ import java.util.Arrays; import java.util.List; +import java.util.Map; import java.util.stream.Stream; import java.util.stream.Collectors; @@ -59,12 +60,27 @@ if (!path.toFile().exists()) { throw new Error("TESTBUG: the library has not been found in " + nativePath); } - path = path.resolve("gtestLauncher" + (Platform.isWindows() ? ".exe" : "")); - ProcessTools.executeCommand(new String[] { - path.toString(), - "-jdk", - System.getProperty("test.jdk") - }).shouldHaveExitValue(0); + + Path execPath = path.resolve("gtestLauncher" + (Platform.isWindows() ? ".exe" : "")); + ProcessBuilder pb = new ProcessBuilder(); + Map env = pb.environment(); + + String ldLibraryPath = System.getenv("LD_LIBRARY_PATH"); + if (ldLibraryPath != null) { + env.put("LD_LIBRARY_PATH", path + ":" + ldLibraryPath); + } + + String libPath = System.getenv("LIBPATH"); + if (libPath != null) { + env.put("LIBPATH", path + ":" + libPath); + } + + pb.command(new String[] { + execPath.toString(), + "-jdk", + System.getProperty("test.jdk") + }); + ProcessTools.executeCommand( pb ).shouldHaveExitValue(0); } private static String getJVMVariantSubDir() {