Class LwjglNatives

java.lang.Object
com.cleanroommc.gradle.api.util.LwjglNatives

public final class LwjglNatives extends Object
Wires the "lwjglNative" configuration, usage is as follows:
dependencies {
    lwjglNative 'org.lwjgl:lwjgl'
    lwjglNative 'org.lwjgl:lwjgl-opengl'
}

LWJGL ships one native jar per platform. But the published metadata has to serve every distribution. Runtime classpath takes Platform.lwjglNativesClassifier(). While publications take every classifier in cleanroom.loader.lwjglNativesClassifiers.

  • Field Details

    • CONFIGURATION_NAME

      public static final String CONFIGURATION_NAME
      See Also:
    • CURRENT_CONFIGURATION_NAME

      public static final String CURRENT_CONFIGURATION_NAME
      See Also:
    • ALL_CONFIGURATION_NAME

      public static final String ALL_CONFIGURATION_NAME
      See Also:
    • CLASSIFIERS

      public static final List<String> CLASSIFIERS
      Every platform LWJGL 3 publishes natives for. Listing them all is what lets a workspace be developed and run on any of them. The publication includes everything, and each machine resolves their own classifier.

      Complete as of LWJGL 3.3.6, which is when ppc64le, riscv64 and freebsd were first published.

  • Method Details

    • register

      public static void register(org.gradle.api.Project project, org.gradle.api.provider.ListProperty<String> classifiers)
    • publishedCoordinates

      public static org.gradle.api.provider.Provider<List<String>> publishedCoordinates(org.gradle.api.Project project, org.gradle.api.provider.ListProperty<String> classifiers)
    • isForCurrentPlatform

      public static boolean isForCurrentPlatform(String notation)