aboutsummaryrefslogtreecommitdiff
path: root/launcher/minecraft
diff options
context:
space:
mode:
authorSefa Eyeoglu <contact@scrumplex.net>2023-08-02 13:45:08 +0200
committerSefa Eyeoglu <contact@scrumplex.net>2023-08-15 10:51:21 +0200
commit83aa0062c7d831ca42ed4d82e5f6162ac8793be8 (patch)
tree1a1380ce8a8be27876a47eb6fafa1acd3f8d0a69 /launcher/minecraft
parentff67fd10c33fa99423b5a43dcbd30494b4c40dc5 (diff)
downloadPrismLauncher-83aa0062c7d831ca42ed4d82e5f6162ac8793be8.tar.gz
PrismLauncher-83aa0062c7d831ca42ed4d82e5f6162ac8793be8.tar.bz2
PrismLauncher-83aa0062c7d831ca42ed4d82e5f6162ac8793be8.zip
feat: add custom native library path settings
Signed-off-by: Sefa Eyeoglu <contact@scrumplex.net>
Diffstat (limited to 'launcher/minecraft')
-rw-r--r--launcher/minecraft/MinecraftInstance.cpp20
1 files changed, 14 insertions, 6 deletions
diff --git a/launcher/minecraft/MinecraftInstance.cpp b/launcher/minecraft/MinecraftInstance.cpp
index 40fde6cb..bfc4ad98 100644
--- a/launcher/minecraft/MinecraftInstance.cpp
+++ b/launcher/minecraft/MinecraftInstance.cpp
@@ -166,7 +166,9 @@ void MinecraftInstance::loadSpecificSettings()
// Native library workarounds
auto nativeLibraryWorkaroundsOverride = m_settings->registerSetting("OverrideNativeWorkarounds", false);
m_settings->registerOverride(global_settings->getSetting("UseNativeOpenAL"), nativeLibraryWorkaroundsOverride);
+ m_settings->registerOverride(global_settings->getSetting("CustomOpenALPath"), nativeLibraryWorkaroundsOverride);
m_settings->registerOverride(global_settings->getSetting("UseNativeGLFW"), nativeLibraryWorkaroundsOverride);
+ m_settings->registerOverride(global_settings->getSetting("CustomGLFWPath"), nativeLibraryWorkaroundsOverride);
// Peformance related options
auto performanceOverride = m_settings->registerSetting("OverridePerformance", false);
@@ -390,22 +392,28 @@ QStringList MinecraftInstance::extraArguments()
list.append("-Dloader.disable_beacon=true");
}
-#ifdef Q_OS_LINUX
{
QString openALPath;
QString glfwPath;
- if (settings()->get("UseNativeOpenAL").toBool())
- openALPath = MangoHud::findLibrary("libopenal.so");
- if (settings()->get("UseNativeGLFW").toBool())
- glfwPath = MangoHud::findLibrary("libglfw.so");
+ if (settings()->get("UseNativeOpenAL").toBool()) {
+ auto customPath = settings()->get("CustomOpenALPath").toString();
+ openALPath = APPLICATION->m_detectedOpenALPath;
+ if (!customPath.isEmpty())
+ openALPath = customPath;
+ }
+ if (settings()->get("UseNativeGLFW").toBool()) {
+ auto customPath = settings()->get("CustomGLFWPath").toString();
+ glfwPath = APPLICATION->m_detectedGLFWPath;
+ if (!customPath.isEmpty())
+ glfwPath = customPath;
+ }
if (!openALPath.isEmpty())
list.append("-Dorg.lwjgl.openal.libname=" + openALPath);
if (!glfwPath.isEmpty())
list.append("-Dorg.lwjgl.glfw.libname=" + glfwPath);
}
-#endif
return list;
}