summaryrefslogtreecommitdiff
path: root/configure.in
diff options
context:
space:
mode:
Diffstat (limited to 'configure.in')
-rw-r--r--configure.in30
1 files changed, 22 insertions, 8 deletions
diff --git a/configure.in b/configure.in
index a7bdc8a5..5830da60 100644
--- a/configure.in
+++ b/configure.in
@@ -8,7 +8,7 @@ dnl
AC_PROG_INTLTOOL([0.21])
AM_CONFIG_HEADER(config.h)
-AM_INIT_AUTOMAKE(gdm,2.4.1.5)
+AM_INIT_AUTOMAKE(gdm,2.4.1.6)
AM_MAINTAINER_MODE
GDK_PIXBUF_REQUIRED=1.3.1
@@ -351,18 +351,32 @@ AC_SUBST(GDMXNESTCHOOSER)
#
# X11 Xinerama extension
#
+ALL_X_LIBS="$X_LIBS $X_PRE_LIBS -lX11 $X_EXTRA_LIBS"
XINERAMA_LIBS=
+XINERAMA_SUPPORT=no
if test x$with_xinerama != xno ; then
- AC_CHECK_HEADER(X11/extensions/Xinerama.h, [
- AC_CHECK_LIB(Xinerama, XineramaQueryScreens, [
- AC_DEFINE(HAVE_LIBXINERAMA)
- XINERAMA_LIBS="-lXinerama"
- XINERAMA_SUPPORT=yes],,$[X_LIBS -lX11 -lXext $X_EXTRA_LIBS])
- ])
+ xinerama_save_cppflags="$CPPFLAGS"
+ CPPFLAGS="$CPPFLAGS $X_CFLAGS"
- if test x$with_xinerama = xyes -a x$XINERAMA_SUPPORT = x ; then
+ AC_CHECK_LIB(Xinerama, XineramaQueryExtension,
+ [AC_CHECK_HEADER(X11/extensions/Xinerama.h,
+ if test -z "`echo $ALL_X_LIBS | grep "\-lXext" 2> /dev/null`"; then
+ X_EXTRA_LIBS="-lXext $X_EXTRA_LIBS"
+ fi
+ AC_DEFINE(HAVE_LIBXINERAMA)
+ XINERAMA_LIBS="-lXinerama"
+ XINERAMA_SUPPORT=yes,
+ XINERAMA_SUPPORT=no,
+ [#include <X11/Xlib.h>])],
+ XINERAMA_SUPPORT=no, -lXext $ALL_X_LIBS)
+ AC_MSG_CHECKING(for Xinerama support on XFree86)
+ AC_MSG_RESULT($XINERAMA_SUPPORT);
+
+ if test x$with_xinerama = xyes -a x$XINERAMA_SUPPORT = xno ; then
AC_MSG_ERROR(Xinerama support requested but Xinerama libraries not found)
fi
+
+ CPPFLAGS="$xinerama_save_cppflags"
fi
AC_SUBST(XINERAMA_LIBS)