summaryrefslogtreecommitdiffstats
path: root/games/multimc/files
diff options
context:
space:
mode:
Diffstat (limited to 'games/multimc/files')
-rwxr-xr-xgames/multimc/files/multimc-minecraft-runtime61
-rw-r--r--games/multimc/files/patch-api_logic_java_JavaUtils.cpp2
2 files changed, 62 insertions, 1 deletions
diff --git a/games/multimc/files/multimc-minecraft-runtime b/games/multimc/files/multimc-minecraft-runtime
new file mode 100755
index 0000000..99057a3
--- /dev/null
+++ b/games/multimc/files/multimc-minecraft-runtime
@@ -0,0 +1,61 @@
+#!/bin/sh
+
+LWJGL_JLP_OVRD="/usr/local/lib/lwjgl3:/usr/local/lib:/usr/lib"
+
+LWJGL_OVRD="/usr/local/share/java/classes/lwjgl3/lwjgl.jar"
+LWJGL_OGL_OVRD="/usr/local/share/java/classes/lwjgl3/lwjgl-opengl.jar"
+LWJGL_OAL_OVRD="/usr/local/share/java/classes/lwjgl3/lwjgl-openal.jar"
+LWJGL_GLFW_OVRD="/usr/local/share/java/classes/lwjgl3/lwjgl-glfw.jar"
+LWJGL_STB_OVRD="/usr/local/share/java/classes/lwjgl3/lwjgl-stb.jar"
+LWJGL_JEM_OVRD="/usr/local/share/java/classes/lwjgl3/lwjgl-jemalloc.jar"
+
+# Use openjdk16 for 1.17 support
+export JAVA_HOME=/usr/local/openjdk16
+
+build_classpath() {
+ local IFS=":"
+ for p in ${1}; do
+ case "${p}" in
+ *lwjgl-opengl*)
+ cp="${cp}:${LWJGL_OGL_OVRD}"
+ ;;
+ *lwjgl-openal*)
+ cp="${cp}:${LWJGL_OAL_OVRD}"
+ ;;
+ *lwjgl-glfw*)
+ cp="${cp}:${LWJGL_GLFW_OVRD}"
+ ;;
+ *lwjgl-stb*)
+ cp="${cp}:${LWJGL_STB_OVRD}"
+ ;;
+ *lwjgl-jemalloc*)
+ cp="${cp}:${LWJGL_JEM_OVRD}"
+ ;;
+ *lwjgl*)
+ cp="${cp}:${LWJGL_OVRD}"
+ ;;
+ *)
+ cp="${cp}:${p}"
+ ;;
+ esac
+ done
+ cp=${cp#?}
+}
+
+for var in "${@}"
+do
+ case "${var}" in
+ -Djava.library*)
+ args="${args} -Djava.library.path=${LWJGL_JLP_OVRD}"
+ ;;
+ *lwjgl-opengl*)
+ build_classpath "${var}"
+ args="${args} ${cp}"
+ ;;
+ *)
+ args="${args} ${var}"
+ ;;
+ esac
+done
+
+${JAVA_HOME}/bin/java ${args}
diff --git a/games/multimc/files/patch-api_logic_java_JavaUtils.cpp b/games/multimc/files/patch-api_logic_java_JavaUtils.cpp
index 56adb9c..4bad181 100644
--- a/games/multimc/files/patch-api_logic_java_JavaUtils.cpp
+++ b/games/multimc/files/patch-api_logic_java_JavaUtils.cpp
@@ -32,7 +32,7 @@
#if defined(Q_OS_WIN32)
javaVersion->path = "javaw";
+#elif defined(Q_OS_FREEBSD)
-+ javaVersion->path = "minecraft-runtime";
++ javaVersion->path = "multimc-minecraft-runtime";
#else
javaVersion->path = "java";
#endif