dnl GNOME_X_CHECKS dnl dnl Basic X11 related checks for X11. At the end, the following will be dnl defined/changed: dnl GTK_{CFLAGS,LIBS} From AM_PATH_GTK dnl CPPFLAGS Will include $X_CFLAGS dnl GNOME_HAVE_SM `true' or `false' depending on whether session dnl management is available. It is available if dnl both -lSM and X11/SM/SMlib.h exist. (Some dnl Solaris boxes have the library but not the header) dnl XPM_LIBS -lXpm if Xpm library is present, otherwise "" dnl dnl The following configure cache variables are defined (but not used): dnl gnome_cv_passdown_{x_libs,X_LIBS,X_CFLAGS} dnl AC_DEFUN([GNOME_X_CHECKS], [ AM_PATH_GTK(1.2.0,,AC_MSG_ERROR(GTK not installed, or gtk-config not in path)) dnl Hope that GTK_CFLAGS have only -I and -D. Otherwise, we could dnl test -z "$x_includes" || CPPFLAGS="$CPPFLAGS -I$x_includes" dnl dnl Use CPPFLAGS instead of CFLAGS because AC_CHECK_HEADERS uses dnl CPPFLAGS, not CFLAGS CPPFLAGS="$CPPFLAGS $GTK_CFLAGS" saved_ldflags="$LDFLAGS" LDFLAGS="$LDFLAGS $GTK_LIBS" gnome_cv_passdown_x_libs="$GTK_LIBS" gnome_cv_passdown_X_LIBS="$GTK_LIBS" gnome_cv_passdown_X_CFLAGS="$GTK_CFLAGS" gnome_cv_passdown_GTK_LIBS="$GTK_LIBS" LDFLAGS="$saved_ldflags $GTK_LIBS" dnl Check that we *don't* get GTK 1.3.* yet AC_MSG_CHECKING([whether we have GTK > 1.2]) AC_EGREP_CPP(answer_affirmatively, [#include #if GTK_MINOR_VERSION > 2 answer_affirmatively #endif ], [AC_MSG_ERROR([Aborting, the current versions of gnome are not yet compatible with the unstable GTK 1.3 release. Please use GTK 1.2. To get Gtk 1.2 and Glib 1.2 from the CVS repo sitory, use the commands cvs checkout -r gtk-1-2 gtk and cvs checkout -r glib-1-2 glib.])]) dnl We are requiring GTK >= 1.1.1, which means this will be fine anyhow. USE_DEVGTK=true dnl AC_MSG_CHECKING([whether to use features from (unstable) GTK+ 1.1.x]) dnl AC_EGREP_CPP(answer_affirmatively, dnl [#include dnl #ifdef GTK_HAVE_FEATURES_1_1_0 dnl answer_affirmatively dnl #endif dnl ], dev_gtk=yes, dev_gtk=no) dnl if test "$dev_gtk" = "yes"; then dnl USE_DEVGTK=true dnl fi dnl AC_MSG_RESULT("$dev_gtk") GNOME_HAVE_SM=true case "$GTK_LIBS" in *-lSM*) dnl Already found it. ;; *) dnl Assume that if we have -lSM then we also have -lICE. AC_CHECK_LIB(SM, SmcSaveYourselfDone, [GTK_LIBS="-lSM -lICE $GTK_LIBS"],GNOME_HAVE_SM=false, $x_libs -lICE) ;; esac if test "$GNOME_HAVE_SM" = true; then AC_CHECK_HEADERS(X11/SM/SMlib.h,,GNOME_HAVE_SM=false) fi if test "$GNOME_HAVE_SM" = true; then AC_DEFINE(HAVE_LIBSM) fi XPM_LIBS="" AC_CHECK_LIB(Xpm, XpmFreeXpmImage, [XPM_LIBS="-lXpm"], , $x_libs) AC_SUBST(XPM_LIBS) AC_REQUIRE([GNOME_PTHREAD_CHECK]) LDFLAGS="$saved_ldflags" AC_PROVIDE([GNOME_X_CHECKS]) ])