http://svn.poeml.de/viewvc/ppc/src-unpacked/xscreensaver/xscreensaver-4.12.tar.bz2...
[xscreensaver] / configure.in
index f9ba1a78069c2767ca92efc5a145f678f3341c30..4df13b8e9c151c07a603cf0600cdbc690c1effac 100644 (file)
@@ -65,7 +65,9 @@ AC_DEFUN(AC_PROG_CC_ANSI,
 
   if test -n "$GCC"; then
     AC_MSG_RESULT(Turning on gcc compiler warnings.)
-    CC="$CC -Wall -Wstrict-prototypes -Wnested-externs"
+    CC="$CC -pedantic -Wall -Wstrict-prototypes -Wnested-externs"
+    # supposedly gcc 3.4 will have "-Wdeclaration-after-statement"
+    # and then perhaps we can do without -pedantic?
   else
     case "$host" in
       *-irix5* |*-irix6.[0-3]* )
@@ -92,6 +94,15 @@ AC_DEFUN(AC_PROG_CC_ANSI,
 #       gcc.  Old gcc doesn't support -std, and new gcc doesn't support -lang.
 #       so much for compatibility!)
 #
+#       UPDATE: apparently there is NO WAY to tell gcc 3.2.2 to require that
+#       declarations preceed statements, without resorting to "-pedantic".
+#       This means that there is no way to get gcc3 to issue warnings that
+#       ensure that your code complies with the ANSI/ISO C89 standard, without
+#       also drowning in totally useless warnings.  Thank you master may I
+#       have another.
+#
+#       So, I give up, let's just use -pedantic.
+#
 ###############################################################################
 
 AC_DEFUN(AC_GCC_ACCEPTS_STD,
@@ -617,10 +628,10 @@ AC_DEFUN(AC_X_RANDOM_PATHS,
       #
       if test -f /usr/dt/include/Xm/Xm.h ; then
         X_CFLAGS="$X_CFLAGS -I/usr/dt/include"
-        X_LIBS="$X_LIBS -L/usr/dt/lib -R:/usr/dt/lib"
+        MOTIF_LIBS="$MOTIF_LIBS -L/usr/dt/lib -R/usr/dt/lib"
 
         # Some versions of Slowlaris Motif require -lgen.  But not all.  Why?
-        AC_CHECK_LIB(gen, regcmp, [X_LIBS="$X_LIBS -lgen"])
+        AC_CHECK_LIB(gen, regcmp, [MOTIF_LIBS="$MOTIF_LIBS -lgen"])
       fi
 
     ;;
@@ -1180,7 +1191,8 @@ if test "$with_dpms" = yes; then
 
   # first check for dpms.h
   AC_CHECK_X_HEADER(X11/extensions/dpms.h, [have_dpms=yes],,
-                    [#include <X11/Xlib.h>])
+                    [#include <X11/Xlib.h>
+                    #include <X11/Xmd.h>])
 
   # if that succeeded, then check for the DPMS code in the libraries
   if test "$have_dpms" = yes; then
@@ -1591,10 +1603,29 @@ if test "$enable_locking" = yes -a "$with_kerberos" = yes; then
   fi
 
   if test "$ac_cv_kerberos5" = yes ; then
-    have_kerberos=yes
-    have_kerberos5=yes
-    AC_DEFINE(HAVE_KERBEROS)
-    AC_DEFINE(HAVE_KERBEROS5)
+
+    # Andrew Snare <ajs@pigpond.com> wrote:
+    #
+    # You were assuming that if kerberosV (krb5) was found, then kerberosIV
+    # (krb4) was also available.  This turns out not to be the case with
+    # mit-krb-1.2.7; apparently backwards-compatibility with KerberosIV
+    # is optional.
+    #
+    # So, disable kerberosV support if libkrb4 can't be found.
+    # This is not the best solution, but it makes the compile not fail.
+    #
+    AC_CHECK_X_LIB(krb4, krb_get_tf_realm,
+                   [have_kerberos=yes],
+                   [have_kerberos=no])
+    if test "$have_kerberos" = yes ; then
+      have_kerberos5=yes
+      AC_DEFINE(HAVE_KERBEROS)
+      AC_DEFINE(HAVE_KERBEROS5)
+    else
+      have_kerberos5=no
+      AC_MSG_WARN([Cannot find compat lib (libkrb4) needed to use Kerberos 5])
+    fi
+
   fi
 
   if test "$have_kerberos5" = yes ; then
@@ -1979,7 +2010,6 @@ if test "$with_gtk" = yes; then
     # the new way...
     # run pkg-config based tests.
     #
-
     pkgs=''
     pkg_check_version() {
       if test "$ok" = yes ; then
@@ -2005,11 +2035,14 @@ if test "$with_gtk" = yes; then
       fi
     }
 
+    AC_MSG_RESULT(checking for GTK 2.x with pkg-config based tests...)
+
     ok="yes"
-    pkg_check_version     gtk+-2.0  2.0.1  ; ac_gtk_version_string="$vers"
-    pkg_check_version  gmodule-2.0  2.0.0
-    pkg_check_version   libxml-2.0  2.4.6
-    pkg_check_version libglade-2.0  1.99.0
+    pkg_check_version       gtk+-2.0  2.0.1  ; ac_gtk_version_string="$vers"
+    pkg_check_version    gmodule-2.0  2.0.0
+    pkg_check_version     libxml-2.0  2.4.6
+    pkg_check_version   libglade-2.0  1.99.0
+#   pkg_check_version gdk_pixbuf      0.1
     have_gtk="$ok"
 
     if test "$have_gtk" = yes; then
@@ -2026,10 +2059,13 @@ if test "$with_gtk" = yes; then
       #
       # we don't have GTK 2.  Let's look for GTK 1.
       #
+      AC_MSG_RESULT(checking for GTK 1.x with pkg-config based tests...)
+
       pkgs=''
       ok="yes"
-      pkg_check_version gtk+ 1.2           ; ac_gtk_version_string="$vers"
-      pkg_check_version glib 1.0
+      pkg_check_version gtk+       1.2     ; ac_gtk_version_string="$vers"
+      pkg_check_version glib       1.0
+      pkg_check_version gdk_pixbuf 0.1
       have_gtk="$ok"
 
       # Now check for Gnome...
@@ -2074,6 +2110,7 @@ if test "$with_gtk" = yes; then
     # the old way...
     # run {gnome,gtk}-config based tests.
     #
+    AC_MSG_RESULT(checking for GTK 1.x with gtk-config based tests...)
 
     AC_PATH_PROGS(glib_config,  glib12-config glib-config,,  $gtk_path)
     AC_PATH_PROGS(gtk_config,   gtk12-config  gtk-config,,   $gtk_path)
@@ -2893,6 +2930,7 @@ if test "$with_gdk_pixbuf" = yes; then
       #
       # we don't have Gtk; or we have Gtk 2.x.  Check for pixbuf 2.x.
       #
+      AC_MSG_RESULT(checking for gdk_pixbuf 2.x with gtk-config based tests...)
       pkg_check_version gdk-pixbuf-2.0      2.0.0
       pkg_check_version gdk-pixbuf-xlib-2.0 2.0.0
       have_gdk_pixbuf="$ok"
@@ -2907,8 +2945,9 @@ if test "$with_gdk_pixbuf" = yes; then
       if test "$have_gdk_pixbuf2" = no; then
         pkgs=''
         ok="yes"
-        pkg_check_version gdk-pixbuf      0.0
-        pkg_check_version gdk-pixbuf-xlib 0.0
+      AC_MSG_RESULT(checking for gdk_pixbuf 1.x with gtk-config based tests...)
+        pkg_check_version gdk_pixbuf      0.0
+        pkg_check_version gdk_pixbuf_xlib 0.0
         have_gdk_pixbuf="$ok"
       fi
     fi
@@ -2933,6 +2972,8 @@ if test "$with_gdk_pixbuf" = yes; then
     # pkg-config exists, but doesn't know about pixbuf.
     #
 
+   AC_MSG_RESULT(checking for gdk_pixbuf with gdk-pixbuf-config based tests...)
+
     # if the user specified --with-gtk=/foo/ or --with-gnome=/foo/ then
     # look in /foo/bin/ for for gdk-pixbuf-config.
     #
@@ -3710,7 +3751,10 @@ if test "$gtk2_halfassed" != no ; then
 fi
 
 
-if test "$with_gnome_req" = yes -a "$have_gnome" = no ; then
+if test "$with_gnome_req" = yes -a "$have_gnome" = no \
+        -a "$have_gtk2" = no; then
+  # don't issue this warning if we have GTK2 -- in that case, the
+  # Gnome-specific code isn't needed.
   warn  'Use of the Gnome Control Panel was requested, but the necessary'
   warn2 'headers and/or libraries were not found.'
 fi
@@ -4057,7 +4101,7 @@ if test "$do_dir_warning" = yes; then
   echo '      "xscreensaver-demo", and "xscreensaver-command" executables'
   echo "      will be installed in ${bindir}/."
   echo ""
-  echo "      The various graphics demos (150+ different executables) will"
+  echo "      The various graphics demos (160+ different executables) will"
   echo "      be installed in ${HACKDIR}/."
   echo ""
   echo "      If you would prefer the demos to be installed elsewhere,"