diff --git a/src/main/java/net/fabricmc/loom/configuration/providers/minecraft/LWJGLVersionOverride.java b/src/main/java/net/fabricmc/loom/configuration/providers/minecraft/LWJGLVersionOverride.java index c3a6b2e..b4109f2 100644 --- a/src/main/java/net/fabricmc/loom/configuration/providers/minecraft/LWJGLVersionOverride.java +++ b/src/main/java/net/fabricmc/loom/configuration/providers/minecraft/LWJGLVersionOverride.java @@ -61,8 +61,14 @@ public class LWJGLVersionOverride { /** * Update lwjgl by default when running on arm and a supported configuration. */ - public static boolean overrideByDefault() { - return NATIVE_CLASSIFIER != null && Architecture.CURRENT.isArm(); + public static boolean overrideByDefault(MinecraftVersionMeta versionMeta) { + if (NATIVE_CLASSIFIER == null || !Architecture.CURRENT.isArm()) { + return false; + } + + return versionMeta.libraries().stream() + .map(MinecraftVersionMeta.Library::name) + .anyMatch(s -> s.startsWith("org.lwjgl:lwjgl:3")); } public static boolean forceOverride(Project project) { diff --git a/src/main/java/net/fabricmc/loom/configuration/providers/minecraft/MinecraftLibraryProvider.java b/src/main/java/net/fabricmc/loom/configuration/providers/minecraft/MinecraftLibraryProvider.java index f7834c6..bcc1d14 100644 --- a/src/main/java/net/fabricmc/loom/configuration/providers/minecraft/MinecraftLibraryProvider.java +++ b/src/main/java/net/fabricmc/loom/configuration/providers/minecraft/MinecraftLibraryProvider.java @@ -46,7 +46,7 @@ public class MinecraftLibraryProvider { final BundleMetadata serverBundleMetadata = minecraftProvider.getServerBundleMetadata(); final boolean runtimeOnlyLog4j = extension.getRuntimeOnlyLog4j().get(); - final boolean overrideLWJGL = LWJGLVersionOverride.overrideByDefault() || LWJGLVersionOverride.forceOverride(project) || Boolean.getBoolean("loom.test.lwjgloverride"); + final boolean overrideLWJGL = LWJGLVersionOverride.overrideByDefault(versionInfo) || LWJGLVersionOverride.forceOverride(project) || Boolean.getBoolean("loom.test.lwjgloverride"); final boolean isMacOS = OperatingSystem.CURRENT_OS.equals(OperatingSystem.MAC_OS); if (overrideLWJGL) {