aboutsummaryrefslogtreecommitdiffstats
path: root/make/glx-x11.cfg
diff options
context:
space:
mode:
Diffstat (limited to 'make/glx-x11.cfg')
-rw-r--r--make/glx-x11.cfg28
1 files changed, 28 insertions, 0 deletions
diff --git a/make/glx-x11.cfg b/make/glx-x11.cfg
new file mode 100644
index 000000000..f9a69c0b3
--- /dev/null
+++ b/make/glx-x11.cfg
@@ -0,0 +1,28 @@
+# This .cfg file is used to generate the interface to the GLX routines
+# used internally by the X11GLContext implementation.
+Package net.java.games.jogl.impl.x11
+JavaClass GLX
+Style allstatic
+Include gl-common-x11.cfg
+
+CustomCCode #include <inttypes.h>
+CustomCCode #include <X11/Xlib.h>
+CustomCCode #include <X11/Xutil.h>
+CustomCCode #include <GL/glx.h>
+
+# Pick up XVisualInfo from jogl
+Ignore XVisualInfo
+
+ArgumentIsString XOpenDisplay 0
+
+# Need to expose DefaultScreen and RootWindow macros to Java
+CustomJavaCode GLX public static native int DefaultScreen(long display);
+CustomJavaCode GLX public static native long RootWindow(long display, int screen);
+CustomCCode JNIEXPORT jlong JNICALL
+CustomCCode Java_net_java_games_jogl_impl_x11_GLX_DefaultScreen(JNIEnv *env, jclass _unused, jlong display) {
+CustomCCode return DefaultScreen((Display*) (intptr_t) display);
+CustomCCode }
+CustomCCode JNIEXPORT jlong JNICALL
+CustomCCode Java_net_java_games_jogl_impl_x11_GLX_RootWindow(JNIEnv *env, jclass _unused, jlong display, jint screen) {
+CustomCCode return RootWindow((Display*) (intptr_t) display, screen);
+CustomCCode }