Hello,
I committed the attached patch.
Andreas
2006-05-31 Thomas Fitzsimmons <[EMAIL PROTECTED]>
Andreas Tobler <[EMAIL PROTECTED]>
* configure.ac: Check for libXrender when the GTK peers are
enabled, and set HAVE_XRENDER accordingly. Add -lXrender to
X_EXTRA_LIBS.
* native/jni/gtk-peer/gnu_java_awt_peer_gtk_ComponentGraphics.c
(Java_gnu_java_awt_peer_gtk_ComponentGraphics_hasXRender)
[HAVE_XRENDER]: Call XRenderQueryExtension conditionally.
Index: configure.ac
===================================================================
RCS file: /cvsroot/classpath/classpath/configure.ac,v
retrieving revision 1.153
diff -u -r1.153 configure.ac
--- configure.ac 27 May 2006 21:10:46 -0000 1.153
+++ configure.ac 31 May 2006 20:25:04 -0000
@@ -406,6 +406,12 @@
PKG_CHECK_MODULES(GTK, gtk+-2.0 >= 2.8 gthread-2.0 >= 2.2 gdk-pixbuf-2.0)
PKG_CHECK_MODULES(FREETYPE2, freetype2)
PKG_CHECK_MODULES(PANGOFT2, pangoft2)
+ dnl Check if we can link against the XRender library and set
+ dnl HAVE_XRENDER accordingly.
+ AC_CHECK_LIB([Xrender], [XRenderQueryExtension],
+ [AC_DEFINE(HAVE_XRENDER, 1, [Define to 1 if you have
libXrender.])[X_EXTRA_LIBS="$X_EXTRA_LIBS -lXrender"]],
+ [true],
+ [${X_LIBS}])
AC_SUBST(GTK_CFLAGS)
AC_SUBST(GTK_LIBS)
Index: native/jni/gtk-peer/gnu_java_awt_peer_gtk_ComponentGraphics.c
===================================================================
RCS file:
/cvsroot/classpath/classpath/native/jni/gtk-peer/gnu_java_awt_peer_gtk_ComponentGraphics.c,v
retrieving revision 1.6
diff -u -r1.6 gnu_java_awt_peer_gtk_ComponentGraphics.c
--- native/jni/gtk-peer/gnu_java_awt_peer_gtk_ComponentGraphics.c 30 May
2006 21:20:43 -0000 1.6
+++ native/jni/gtk-peer/gnu_java_awt_peer_gtk_ComponentGraphics.c 31 May
2006 20:25:04 -0000
@@ -77,10 +77,12 @@
JNIEXPORT jboolean JNICALL
Java_gnu_java_awt_peer_gtk_ComponentGraphics_hasXRender
(JNIEnv *env __attribute__ ((unused)), jclass cls __attribute__ ((unused)))
-{
+{
+#if HAVE_XRENDER
int ev = 0, err = 0;
if( XRenderQueryExtension (GDK_DISPLAY (), &ev, &err) )
return JNI_TRUE;
+#endif
return JNI_FALSE;
}