Skip to content

Commit fc325f2

Browse files
committed
NativeLibFinder simplifies os name
1 parent 7edc3be commit fc325f2

File tree

1 file changed

+18
-5
lines changed

1 file changed

+18
-5
lines changed

engine/runtime/src/main/java/org/enso/interpreter/runtime/NativeLibraryFinder.java

Lines changed: 18 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -26,11 +26,7 @@ private NativeLibraryFinder() {}
2626
*/
2727
static String findNativeLibrary(String libName, Package<TruffleFile> pkg) {
2828
var arch = System.getProperty("os.arch").toLowerCase(Locale.ENGLISH);
29-
if (arch.contains(" ")) {
30-
// Strip version information from the architecture string.
31-
arch = arch.substring(0, arch.indexOf(' '));
32-
}
33-
var osName = System.getProperty("os.name").toLowerCase(Locale.ENGLISH);
29+
var osName = simpleOsName();
3430
var libNameWithSuffix = System.mapLibraryName(libName);
3531
var libDir = pkg.polyglotDir().resolve("lib");
3632
if (!libDir.exists()) {
@@ -54,4 +50,21 @@ static String findNativeLibrary(String libName, Package<TruffleFile> pkg) {
5450
}
5551
return null;
5652
}
53+
54+
private static String simpleOsName() {
55+
var osName = System.getProperty("os.name").toLowerCase(Locale.ENGLISH);
56+
if (osName.contains(" ")) {
57+
// Strip version
58+
osName = osName.substring(0, osName.indexOf(' '));
59+
}
60+
if (osName.contains("linux")) {
61+
return "linux";
62+
} else if (osName.contains("mac")) {
63+
return "macos";
64+
} else if (osName.contains("windows")) {
65+
return "windows";
66+
} else {
67+
throw new IllegalStateException("Unsupported OS: " + osName);
68+
}
69+
}
5770
}

0 commit comments

Comments
 (0)