http://packetstorm.tacticalflex.com/UNIX/admin/xscreensaver-3.27.tar.gz
authorZygo Blaxell <zblaxell@waya.furryterror.org>
Fri, 8 Feb 2013 16:18:12 +0000 (11:18 -0500)
committerZygo Blaxell <zblaxell@faye.furryterror.org>
Fri, 8 Feb 2013 17:52:32 +0000 (12:52 -0500)
-rw-rw-r-- 1 zblaxell zblaxell 1341714 Jan 25  2001 xscreensaver-3.27.tar.gz
5f57c311ce2ef485d0226f98b2497fa963b14453  xscreensaver-3.27.tar.gz

51 files changed:
README
configure
configure.in
driver/Makefile.in
driver/XScreenSaver.ad.in
driver/XScreenSaver_ad.h
driver/demo-Gtk.c
driver/demo-Xm.c
driver/prefs.c
driver/screensaver-properties-capplet [new file with mode: 0755]
driver/xscreensaver-command.c
driver/xscreensaver-command.man
driver/xscreensaver-demo.man
driver/xscreensaver.c
driver/xscreensaver.man
hacks/Makefile.in
hacks/bubbles.man
hacks/compile_axp.com
hacks/compile_decc.com
hacks/glx/Makefile.in
hacks/glx/atlantis.c
hacks/glx/cage.c
hacks/glx/extrusion.c
hacks/glx/gears.c
hacks/glx/gflux.c
hacks/glx/glplanet.c
hacks/glx/lament.c
hacks/glx/moebius.c
hacks/glx/morph3d.c
hacks/glx/pulsar.c
hacks/glx/sierpinski3d.c
hacks/glx/sproingiewrap.c
hacks/glx/superquadrics.c
hacks/glx/xlock-gl.c
hacks/screenhack.c
hacks/screenhack.h
hacks/sonar.c
hacks/webcollage
hacks/whirlwindwarp.c [new file with mode: 0644]
hacks/whirlwindwarp.man [new file with mode: 0644]
hacks/xlockmore.h
hacks/xrayswarm.c
hacks/zoom.c [new file with mode: 0644]
hacks/zoom.man [new file with mode: 0644]
setup.com
utils/erase.c
utils/version.h
utils/visual-gl.c
utils/visual.h
xscreensaver.lsm
xscreensaver.spec

diff --git a/README b/README
index 0aacf8f6e54d2fdff0a671e42767fa45d44343b5..b5f48828059be3baef791bd05ab5f0ca3622cb54 100644 (file)
--- a/README
+++ b/README
@@ -77,6 +77,25 @@ http://www.jwz.org/xscreensaver/.
 
                               ============
 
 
                               ============
 
+Changes since 3.26:   * New hacks: `zoom' and `whirlwindwarp'.
+                      * Fixed a free-memory-reference bug in `sonar'.
+                      * Better error handling when there are no suitable GL
+                        visuals.
+                      * Added diagnostic dialog when xscreensaver-demo is
+                        unable to launch xscreensaver (e.g., when running as
+                        root.)
+                      * Fixed a bug that caused screenhack argument changes
+                        to be ignored when xscreensaver-demo was running as
+                        root (if "root" and "nobody" have different home
+                        directories.)
+                      * Made the programs default to ":0" if $DISPLAY is unset.
+                      * Made the `-verbose' output include information about
+                        which server extensions were supported at compile time.
+                      * Worked around Red Hat 7.0's broken gcc 2.96.
+                      * Updated default delays on the GL hacks to look better
+                        on machines with super-fast 3D hardware.
+                      * Install `screensaver-properties-capplet' to work around
+                        the usual egregious GNOME lossage.
 Changes since 3.25:   * Added "enabled" checkboxes in the list of hacks in
                         xscreensaver-demo (Gtk version only.)
                       * New hacks `hyperball', `xrayswarm', and `gflux'.
 Changes since 3.25:   * Added "enabled" checkboxes in the list of hacks in
                         xscreensaver-demo (Gtk version only.)
                       * New hacks `hyperball', `xrayswarm', and `gflux'.
index 944a239dee104115e612b9188bb7ceb47b41eb15..ff66add4e8ab01731fae8dbed89d7a38f54ea016 100755 (executable)
--- a/configure
+++ b/configure
@@ -634,6 +634,15 @@ done
 
 
 
 
 
 
+###############################################################################
+#
+#       Function to work around the fucked up gcc 2.96 included in Red Hat 7.0
+#
+###############################################################################
+
+
+
+
 ###############################################################################
 #
 #       Function to figure out how to create directory trees.
 ###############################################################################
 #
 #       Function to figure out how to create directory trees.
@@ -797,7 +806,7 @@ else { echo "configure: error: can not run $ac_config_sub" 1>&2; exit 1; }
 fi
 
 echo $ac_n "checking host system type""... $ac_c" 1>&6
 fi
 
 echo $ac_n "checking host system type""... $ac_c" 1>&6
-echo "configure:812: checking host system type" >&5
+echo "configure:821: checking host system type" >&5
 
 host_alias=$host
 case "$host_alias" in
 
 host_alias=$host
 case "$host_alias" in
@@ -820,7 +829,7 @@ echo "$ac_t""$host" 1>&6
 # Extract the first word of "gcc", so it can be a program name with args.
 set dummy gcc; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
 # Extract the first word of "gcc", so it can be a program name with args.
 set dummy gcc; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:835: checking for $ac_word" >&5
+echo "configure:844: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
 if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -850,7 +859,7 @@ if test -z "$CC"; then
   # Extract the first word of "cc", so it can be a program name with args.
 set dummy cc; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
   # Extract the first word of "cc", so it can be a program name with args.
 set dummy cc; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:865: checking for $ac_word" >&5
+echo "configure:874: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
 if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -901,7 +910,7 @@ fi
       # Extract the first word of "cl", so it can be a program name with args.
 set dummy cl; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
       # Extract the first word of "cl", so it can be a program name with args.
 set dummy cl; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:916: checking for $ac_word" >&5
+echo "configure:925: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
 if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -933,7 +942,7 @@ fi
 fi
 
 echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works""... $ac_c" 1>&6
 fi
 
 echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works""... $ac_c" 1>&6
-echo "configure:948: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works" >&5
+echo "configure:957: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works" >&5
 
 ac_ext=c
 # CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options.
 
 ac_ext=c
 # CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options.
@@ -944,12 +953,12 @@ cross_compiling=$ac_cv_prog_cc_cross
 
 cat > conftest.$ac_ext << EOF
 
 
 cat > conftest.$ac_ext << EOF
 
-#line 959 "configure"
+#line 968 "configure"
 #include "confdefs.h"
 
 main(){return(0);}
 EOF
 #include "confdefs.h"
 
 main(){return(0);}
 EOF
-if { (eval echo configure:964: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:973: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   ac_cv_prog_cc_works=yes
   # If we can't run a trivial program, we are probably using a cross compiler.
   if (./conftest; exit) 2>/dev/null; then
   ac_cv_prog_cc_works=yes
   # If we can't run a trivial program, we are probably using a cross compiler.
   if (./conftest; exit) 2>/dev/null; then
@@ -975,12 +984,12 @@ if test $ac_cv_prog_cc_works = no; then
   { echo "configure: error: installation or configuration problem: C compiler cannot create executables." 1>&2; exit 1; }
 fi
 echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler""... $ac_c" 1>&6
   { echo "configure: error: installation or configuration problem: C compiler cannot create executables." 1>&2; exit 1; }
 fi
 echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler""... $ac_c" 1>&6
-echo "configure:990: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler" >&5
+echo "configure:999: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler" >&5
 echo "$ac_t""$ac_cv_prog_cc_cross" 1>&6
 cross_compiling=$ac_cv_prog_cc_cross
 
 echo $ac_n "checking whether we are using GNU C""... $ac_c" 1>&6
 echo "$ac_t""$ac_cv_prog_cc_cross" 1>&6
 cross_compiling=$ac_cv_prog_cc_cross
 
 echo $ac_n "checking whether we are using GNU C""... $ac_c" 1>&6
-echo "configure:995: checking whether we are using GNU C" >&5
+echo "configure:1004: checking whether we are using GNU C" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_gcc'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
 if eval "test \"`echo '$''{'ac_cv_prog_gcc'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -989,7 +998,7 @@ else
   yes;
 #endif
 EOF
   yes;
 #endif
 EOF
-if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:1004: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then
+if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:1013: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then
   ac_cv_prog_gcc=yes
 else
   ac_cv_prog_gcc=no
   ac_cv_prog_gcc=yes
 else
   ac_cv_prog_gcc=no
@@ -1008,7 +1017,7 @@ ac_test_CFLAGS="${CFLAGS+set}"
 ac_save_CFLAGS="$CFLAGS"
 CFLAGS=
 echo $ac_n "checking whether ${CC-cc} accepts -g""... $ac_c" 1>&6
 ac_save_CFLAGS="$CFLAGS"
 CFLAGS=
 echo $ac_n "checking whether ${CC-cc} accepts -g""... $ac_c" 1>&6
-echo "configure:1023: checking whether ${CC-cc} accepts -g" >&5
+echo "configure:1032: checking whether ${CC-cc} accepts -g" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_cc_g'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
 if eval "test \"`echo '$''{'ac_cv_prog_cc_g'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -1042,7 +1051,7 @@ fi
 
   if test -z "$GCC"; then
     echo $ac_n "checking how to request ANSI compilation""... $ac_c" 1>&6
 
   if test -z "$GCC"; then
     echo $ac_n "checking how to request ANSI compilation""... $ac_c" 1>&6
-echo "configure:1057: checking how to request ANSI compilation" >&5
+echo "configure:1066: checking how to request ANSI compilation" >&5
     case "$host" in
       *-hpux* )
         echo "$ac_t""HPUX: adding -Ae" 1>&6
     case "$host" in
       *-hpux* )
         echo "$ac_t""HPUX: adding -Ae" 1>&6
@@ -1065,16 +1074,16 @@ echo "configure:1057: checking how to request ANSI compilation" >&5
   fi
 
   echo $ac_n "checking whether the compiler works on ANSI C""... $ac_c" 1>&6
   fi
 
   echo $ac_n "checking whether the compiler works on ANSI C""... $ac_c" 1>&6
-echo "configure:1080: checking whether the compiler works on ANSI C" >&5
+echo "configure:1089: checking whether the compiler works on ANSI C" >&5
   if test "$cross_compiling" = yes; then
   { echo "configure: error: Couldn't build even a trivial ANSI C program: check CC." 1>&2; exit 1; }
 else
   cat > conftest.$ac_ext <<EOF
   if test "$cross_compiling" = yes; then
   { echo "configure: error: Couldn't build even a trivial ANSI C program: check CC." 1>&2; exit 1; }
 else
   cat > conftest.$ac_ext <<EOF
-#line 1085 "configure"
+#line 1094 "configure"
 #include "confdefs.h"
  main(int ac, char **av) { return 0; } 
 EOF
 #include "confdefs.h"
  main(int ac, char **av) { return 0; } 
 EOF
-if { (eval echo configure:1089: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
+if { (eval echo configure:1098: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
 then
   echo "$ac_t""yes" 1>&6
 else
 then
   echo "$ac_t""yes" 1>&6
 else
@@ -1109,7 +1118,7 @@ fi
   fi
 
 echo $ac_n "checking how to run the C preprocessor""... $ac_c" 1>&6
   fi
 
 echo $ac_n "checking how to run the C preprocessor""... $ac_c" 1>&6
-echo "configure:1124: checking how to run the C preprocessor" >&5
+echo "configure:1133: checking how to run the C preprocessor" >&5
 # On Suns, sometimes $CPP names a directory.
 if test -n "$CPP" && test -d "$CPP"; then
   CPP=
 # On Suns, sometimes $CPP names a directory.
 if test -n "$CPP" && test -d "$CPP"; then
   CPP=
@@ -1124,13 +1133,13 @@ else
   # On the NeXT, cc -E runs the code through the compiler's parser,
   # not just through cpp.
   cat > conftest.$ac_ext <<EOF
   # On the NeXT, cc -E runs the code through the compiler's parser,
   # not just through cpp.
   cat > conftest.$ac_ext <<EOF
-#line 1139 "configure"
+#line 1148 "configure"
 #include "confdefs.h"
 #include <assert.h>
 Syntax Error
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
 #include "confdefs.h"
 #include <assert.h>
 Syntax Error
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:1145: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:1154: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
 if test -z "$ac_err"; then
   :
 ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
 if test -z "$ac_err"; then
   :
@@ -1141,13 +1150,13 @@ else
   rm -rf conftest*
   CPP="${CC-cc} -E -traditional-cpp"
   cat > conftest.$ac_ext <<EOF
   rm -rf conftest*
   CPP="${CC-cc} -E -traditional-cpp"
   cat > conftest.$ac_ext <<EOF
-#line 1156 "configure"
+#line 1165 "configure"
 #include "confdefs.h"
 #include <assert.h>
 Syntax Error
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
 #include "confdefs.h"
 #include <assert.h>
 Syntax Error
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:1162: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:1171: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
 if test -z "$ac_err"; then
   :
 ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
 if test -z "$ac_err"; then
   :
@@ -1158,13 +1167,130 @@ else
   rm -rf conftest*
   CPP="${CC-cc} -nologo -E"
   cat > conftest.$ac_ext <<EOF
   rm -rf conftest*
   CPP="${CC-cc} -nologo -E"
   cat > conftest.$ac_ext <<EOF
-#line 1173 "configure"
+#line 1182 "configure"
 #include "confdefs.h"
 #include <assert.h>
 Syntax Error
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
 #include "confdefs.h"
 #include <assert.h>
 Syntax Error
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:1179: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:1188: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
+if test -z "$ac_err"; then
+  :
+else
+  echo "$ac_err" >&5
+  echo "configure: failed program was:" >&5
+  cat conftest.$ac_ext >&5
+  rm -rf conftest*
+  CPP=/lib/cpp
+fi
+rm -f conftest*
+fi
+rm -f conftest*
+fi
+rm -f conftest*
+  ac_cv_prog_CPP="$CPP"
+fi
+  CPP="$ac_cv_prog_CPP"
+else
+  ac_cv_prog_CPP="$CPP"
+fi
+echo "$ac_t""$CPP" 1>&6
+
+if test -n "$GCC"; then
+   echo $ac_n "checking for Red Hat GCC lossage""... $ac_c" 1>&6
+echo "configure:1214: checking for Red Hat GCC lossage" >&5
+   if eval "test \"`echo '$''{'ac_cv_red_hat_gcc_lossage'+set}'`\" = set"; then
+  echo $ac_n "(cached) $ac_c" 1>&6
+else
+  ac_cv_red_hat_gcc_lossage=no
+      cat > conftest.$ac_ext <<EOF
+#line 1220 "configure"
+#include "confdefs.h"
+#include <stdlib.h>
+      #if !defined(__USE_POSIX) || !defined(__USE_SVID) || !defined(__USE_BSD)
+        lossage
+      #endif
+     
+EOF
+if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
+  egrep "lossage" >/dev/null 2>&1; then
+  rm -rf conftest*
+  ac_cv_red_hat_gcc_lossage=yes
+fi
+rm -f conftest*
+
+    
+fi
+
+
+    ac_red_hat_gcc_lossage=$ac_cv_red_hat_gcc_lossage
+    if test "$ac_cv_red_hat_gcc_lossage" = yes ; then
+      rh_defines="-D_POSIX_SOURCE -D_SVID_SOURCE -D_BSD_SOURCE";
+      CC="$CC $rh_defines"
+      echo "$ac_t""yes: need $rh_defines" 1>&6
+    else
+      echo "$ac_t""no" 1>&6
+    fi
+  fi
+
+echo $ac_n "checking how to run the C preprocessor""... $ac_c" 1>&6
+echo "configure:1250: checking how to run the C preprocessor" >&5
+# On Suns, sometimes $CPP names a directory.
+if test -n "$CPP" && test -d "$CPP"; then
+  CPP=
+fi
+if test -z "$CPP"; then
+if eval "test \"`echo '$''{'ac_cv_prog_CPP'+set}'`\" = set"; then
+  echo $ac_n "(cached) $ac_c" 1>&6
+else
+    # This must be in double quotes, not single quotes, because CPP may get
+  # substituted into the Makefile and "${CC-cc}" will confuse make.
+  CPP="${CC-cc} -E"
+  # On the NeXT, cc -E runs the code through the compiler's parser,
+  # not just through cpp.
+  cat > conftest.$ac_ext <<EOF
+#line 1265 "configure"
+#include "confdefs.h"
+#include <assert.h>
+Syntax Error
+EOF
+ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
+{ (eval echo configure:1271: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
+if test -z "$ac_err"; then
+  :
+else
+  echo "$ac_err" >&5
+  echo "configure: failed program was:" >&5
+  cat conftest.$ac_ext >&5
+  rm -rf conftest*
+  CPP="${CC-cc} -E -traditional-cpp"
+  cat > conftest.$ac_ext <<EOF
+#line 1282 "configure"
+#include "confdefs.h"
+#include <assert.h>
+Syntax Error
+EOF
+ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
+{ (eval echo configure:1288: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
+if test -z "$ac_err"; then
+  :
+else
+  echo "$ac_err" >&5
+  echo "configure: failed program was:" >&5
+  cat conftest.$ac_ext >&5
+  rm -rf conftest*
+  CPP="${CC-cc} -nologo -E"
+  cat > conftest.$ac_ext <<EOF
+#line 1299 "configure"
+#include "confdefs.h"
+#include <assert.h>
+Syntax Error
+EOF
+ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
+{ (eval echo configure:1305: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
 if test -z "$ac_err"; then
   :
 ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
 if test -z "$ac_err"; then
   :
@@ -1189,12 +1315,12 @@ fi
 echo "$ac_t""$CPP" 1>&6
 
 echo $ac_n "checking for working const""... $ac_c" 1>&6
 echo "$ac_t""$CPP" 1>&6
 
 echo $ac_n "checking for working const""... $ac_c" 1>&6
-echo "configure:1204: checking for working const" >&5
+echo "configure:1330: checking for working const" >&5
 if eval "test \"`echo '$''{'ac_cv_c_const'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
 if eval "test \"`echo '$''{'ac_cv_c_const'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 1209 "configure"
+#line 1335 "configure"
 #include "confdefs.h"
 
 int main() {
 #include "confdefs.h"
 
 int main() {
@@ -1243,7 +1369,7 @@ ccp = (char const *const *) p;
 
 ; return 0; }
 EOF
 
 ; return 0; }
 EOF
-if { (eval echo configure:1258: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:1384: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   ac_cv_c_const=yes
 else
   rm -rf conftest*
   ac_cv_c_const=yes
 else
@@ -1264,21 +1390,21 @@ EOF
 fi
 
 echo $ac_n "checking for inline""... $ac_c" 1>&6
 fi
 
 echo $ac_n "checking for inline""... $ac_c" 1>&6
-echo "configure:1279: checking for inline" >&5
+echo "configure:1405: checking for inline" >&5
 if eval "test \"`echo '$''{'ac_cv_c_inline'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   ac_cv_c_inline=no
 for ac_kw in inline __inline__ __inline; do
   cat > conftest.$ac_ext <<EOF
 if eval "test \"`echo '$''{'ac_cv_c_inline'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   ac_cv_c_inline=no
 for ac_kw in inline __inline__ __inline; do
   cat > conftest.$ac_ext <<EOF
-#line 1286 "configure"
+#line 1412 "configure"
 #include "confdefs.h"
 
 int main() {
 } $ac_kw foo() {
 ; return 0; }
 EOF
 #include "confdefs.h"
 
 int main() {
 } $ac_kw foo() {
 ; return 0; }
 EOF
-if { (eval echo configure:1293: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:1419: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   ac_cv_c_inline=$ac_kw; break
 else
   rm -rf conftest*
   ac_cv_c_inline=$ac_kw; break
 else
@@ -1305,7 +1431,7 @@ esac
 
 ac_bc_result=`echo 6+9 | bc 2>/dev/null`
   echo $ac_n "checking for bc""... $ac_c" 1>&6
 
 ac_bc_result=`echo 6+9 | bc 2>/dev/null`
   echo $ac_n "checking for bc""... $ac_c" 1>&6
-echo "configure:1320: checking for bc" >&5
+echo "configure:1446: checking for bc" >&5
   if test "$ac_bc_result" = "15" ; then
     echo "$ac_t""yes" 1>&6
   else
   if test "$ac_bc_result" = "15" ; then
     echo "$ac_t""yes" 1>&6
   else
@@ -1330,7 +1456,7 @@ echo "configure:1320: checking for bc" >&5
 # SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff"
 # ./install, which can be erroneously created by make from ./install.sh.
 echo $ac_n "checking for a BSD compatible install""... $ac_c" 1>&6
 # SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff"
 # ./install, which can be erroneously created by make from ./install.sh.
 echo $ac_n "checking for a BSD compatible install""... $ac_c" 1>&6
-echo "configure:1345: checking for a BSD compatible install" >&5
+echo "configure:1471: checking for a BSD compatible install" >&5
 if test -z "$INSTALL"; then
 if eval "test \"`echo '$''{'ac_cv_path_install'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 if test -z "$INSTALL"; then
 if eval "test \"`echo '$''{'ac_cv_path_install'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -1383,7 +1509,7 @@ test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL_PROGRAM}'
 test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
 
 echo $ac_n "checking whether \"\${INSTALL} -d\" creates intermediate directories""... $ac_c" 1>&6
 test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
 
 echo $ac_n "checking whether \"\${INSTALL} -d\" creates intermediate directories""... $ac_c" 1>&6
-echo "configure:1398: checking whether \"\${INSTALL} -d\" creates intermediate directories" >&5
+echo "configure:1524: checking whether \"\${INSTALL} -d\" creates intermediate directories" >&5
 if eval "test \"`echo '$''{'ac_cv_install_d_creates_dirs'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
 if eval "test \"`echo '$''{'ac_cv_install_d_creates_dirs'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -1405,7 +1531,7 @@ echo "$ac_t""$ac_cv_install_d_creates_dirs" 1>&6
 
   if test "$ac_cv_install_d_creates_dirs" = no ; then
     echo $ac_n "checking whether \"mkdir -p\" creates intermediate directories""... $ac_c" 1>&6
 
   if test "$ac_cv_install_d_creates_dirs" = no ; then
     echo $ac_n "checking whether \"mkdir -p\" creates intermediate directories""... $ac_c" 1>&6
-echo "configure:1420: checking whether \"mkdir -p\" creates intermediate directories" >&5
+echo "configure:1546: checking whether \"mkdir -p\" creates intermediate directories" >&5
 if eval "test \"`echo '$''{'ac_cv_mkdir_p_creates_dirs'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
 if eval "test \"`echo '$''{'ac_cv_mkdir_p_creates_dirs'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -1436,7 +1562,7 @@ echo "$ac_t""$ac_cv_mkdir_p_creates_dirs" 1>&6
   fi
 
 echo $ac_n "checking whether ${MAKE-make} sets \${MAKE}""... $ac_c" 1>&6
   fi
 
 echo $ac_n "checking whether ${MAKE-make} sets \${MAKE}""... $ac_c" 1>&6
-echo "configure:1451: checking whether ${MAKE-make} sets \${MAKE}" >&5
+echo "configure:1577: checking whether ${MAKE-make} sets \${MAKE}" >&5
 set dummy ${MAKE-make}; ac_make=`echo "$2" | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_prog_make_${ac_make}_set'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 set dummy ${MAKE-make}; ac_make=`echo "$2" | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_prog_make_${ac_make}_set'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -1465,12 +1591,12 @@ fi
 
 # random libc stuff
 echo $ac_n "checking for ANSI C header files""... $ac_c" 1>&6
 
 # random libc stuff
 echo $ac_n "checking for ANSI C header files""... $ac_c" 1>&6
-echo "configure:1480: checking for ANSI C header files" >&5
+echo "configure:1606: checking for ANSI C header files" >&5
 if eval "test \"`echo '$''{'ac_cv_header_stdc'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
 if eval "test \"`echo '$''{'ac_cv_header_stdc'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 1485 "configure"
+#line 1611 "configure"
 #include "confdefs.h"
 #include <stdlib.h>
 #include <stdarg.h>
 #include "confdefs.h"
 #include <stdlib.h>
 #include <stdarg.h>
@@ -1478,7 +1604,7 @@ else
 #include <float.h>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
 #include <float.h>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:1493: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:1619: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
 if test -z "$ac_err"; then
   rm -rf conftest*
 ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
 if test -z "$ac_err"; then
   rm -rf conftest*
@@ -1495,7 +1621,7 @@ rm -f conftest*
 if test $ac_cv_header_stdc = yes; then
   # SunOS 4.x string.h does not declare mem*, contrary to ANSI.
 cat > conftest.$ac_ext <<EOF
 if test $ac_cv_header_stdc = yes; then
   # SunOS 4.x string.h does not declare mem*, contrary to ANSI.
 cat > conftest.$ac_ext <<EOF
-#line 1510 "configure"
+#line 1636 "configure"
 #include "confdefs.h"
 #include <string.h>
 EOF
 #include "confdefs.h"
 #include <string.h>
 EOF
@@ -1513,7 +1639,7 @@ fi
 if test $ac_cv_header_stdc = yes; then
   # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI.
 cat > conftest.$ac_ext <<EOF
 if test $ac_cv_header_stdc = yes; then
   # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI.
 cat > conftest.$ac_ext <<EOF
-#line 1528 "configure"
+#line 1654 "configure"
 #include "confdefs.h"
 #include <stdlib.h>
 EOF
 #include "confdefs.h"
 #include <stdlib.h>
 EOF
@@ -1534,7 +1660,7 @@ if test "$cross_compiling" = yes; then
   :
 else
   cat > conftest.$ac_ext <<EOF
   :
 else
   cat > conftest.$ac_ext <<EOF
-#line 1549 "configure"
+#line 1675 "configure"
 #include "confdefs.h"
 #include <ctype.h>
 #define ISLOWER(c) ('a' <= (c) && (c) <= 'z')
 #include "confdefs.h"
 #include <ctype.h>
 #define ISLOWER(c) ('a' <= (c) && (c) <= 'z')
@@ -1545,7 +1671,7 @@ if (XOR (islower (i), ISLOWER (i)) || toupper (i) != TOUPPER (i)) exit(2);
 exit (0); }
 
 EOF
 exit (0); }
 
 EOF
-if { (eval echo configure:1560: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
+if { (eval echo configure:1686: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
 then
   :
 else
 then
   :
 else
@@ -1572,17 +1698,17 @@ for ac_hdr in unistd.h
 do
 ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
 do
 ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
-echo "configure:1587: checking for $ac_hdr" >&5
+echo "configure:1713: checking for $ac_hdr" >&5
 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 1592 "configure"
+#line 1718 "configure"
 #include "confdefs.h"
 #include <$ac_hdr>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
 #include "confdefs.h"
 #include <$ac_hdr>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:1597: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:1723: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
 if test -z "$ac_err"; then
   rm -rf conftest*
 ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
 if test -z "$ac_err"; then
   rm -rf conftest*
@@ -1609,12 +1735,12 @@ fi
 done
 
 echo $ac_n "checking for mode_t""... $ac_c" 1>&6
 done
 
 echo $ac_n "checking for mode_t""... $ac_c" 1>&6
-echo "configure:1624: checking for mode_t" >&5
+echo "configure:1750: checking for mode_t" >&5
 if eval "test \"`echo '$''{'ac_cv_type_mode_t'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
 if eval "test \"`echo '$''{'ac_cv_type_mode_t'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 1629 "configure"
+#line 1755 "configure"
 #include "confdefs.h"
 #include <sys/types.h>
 #if STDC_HEADERS
 #include "confdefs.h"
 #include <sys/types.h>
 #if STDC_HEADERS
@@ -1642,12 +1768,12 @@ EOF
 fi
 
 echo $ac_n "checking for pid_t""... $ac_c" 1>&6
 fi
 
 echo $ac_n "checking for pid_t""... $ac_c" 1>&6
-echo "configure:1657: checking for pid_t" >&5
+echo "configure:1783: checking for pid_t" >&5
 if eval "test \"`echo '$''{'ac_cv_type_pid_t'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
 if eval "test \"`echo '$''{'ac_cv_type_pid_t'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 1662 "configure"
+#line 1788 "configure"
 #include "confdefs.h"
 #include <sys/types.h>
 #if STDC_HEADERS
 #include "confdefs.h"
 #include <sys/types.h>
 #if STDC_HEADERS
@@ -1675,12 +1801,12 @@ EOF
 fi
 
 echo $ac_n "checking for size_t""... $ac_c" 1>&6
 fi
 
 echo $ac_n "checking for size_t""... $ac_c" 1>&6
-echo "configure:1690: checking for size_t" >&5
+echo "configure:1816: checking for size_t" >&5
 if eval "test \"`echo '$''{'ac_cv_type_size_t'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
 if eval "test \"`echo '$''{'ac_cv_type_size_t'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 1695 "configure"
+#line 1821 "configure"
 #include "confdefs.h"
 #include <sys/types.h>
 #if STDC_HEADERS
 #include "confdefs.h"
 #include <sys/types.h>
 #if STDC_HEADERS
@@ -1708,12 +1834,12 @@ EOF
 fi
 
 echo $ac_n "checking return type of signal handlers""... $ac_c" 1>&6
 fi
 
 echo $ac_n "checking return type of signal handlers""... $ac_c" 1>&6
-echo "configure:1723: checking return type of signal handlers" >&5
+echo "configure:1849: checking return type of signal handlers" >&5
 if eval "test \"`echo '$''{'ac_cv_type_signal'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
 if eval "test \"`echo '$''{'ac_cv_type_signal'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 1728 "configure"
+#line 1854 "configure"
 #include "confdefs.h"
 #include <sys/types.h>
 #include <signal.h>
 #include "confdefs.h"
 #include <sys/types.h>
 #include <signal.h>
@@ -1730,7 +1856,7 @@ int main() {
 int i;
 ; return 0; }
 EOF
 int i;
 ; return 0; }
 EOF
-if { (eval echo configure:1745: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:1871: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   ac_cv_type_signal=void
 else
   rm -rf conftest*
   ac_cv_type_signal=void
 else
@@ -1749,12 +1875,12 @@ EOF
 
 
 echo $ac_n "checking whether time.h and sys/time.h may both be included""... $ac_c" 1>&6
 
 
 echo $ac_n "checking whether time.h and sys/time.h may both be included""... $ac_c" 1>&6
-echo "configure:1764: checking whether time.h and sys/time.h may both be included" >&5
+echo "configure:1890: checking whether time.h and sys/time.h may both be included" >&5
 if eval "test \"`echo '$''{'ac_cv_header_time'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
 if eval "test \"`echo '$''{'ac_cv_header_time'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 1769 "configure"
+#line 1895 "configure"
 #include "confdefs.h"
 #include <sys/types.h>
 #include <sys/time.h>
 #include "confdefs.h"
 #include <sys/types.h>
 #include <sys/time.h>
@@ -1763,7 +1889,7 @@ int main() {
 struct tm *tp;
 ; return 0; }
 EOF
 struct tm *tp;
 ; return 0; }
 EOF
-if { (eval echo configure:1778: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:1904: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   ac_cv_header_time=yes
 else
   rm -rf conftest*
   ac_cv_header_time=yes
 else
@@ -1784,12 +1910,12 @@ EOF
 fi
 
 echo $ac_n "checking for sys/wait.h that is POSIX.1 compatible""... $ac_c" 1>&6
 fi
 
 echo $ac_n "checking for sys/wait.h that is POSIX.1 compatible""... $ac_c" 1>&6
-echo "configure:1799: checking for sys/wait.h that is POSIX.1 compatible" >&5
+echo "configure:1925: checking for sys/wait.h that is POSIX.1 compatible" >&5
 if eval "test \"`echo '$''{'ac_cv_header_sys_wait_h'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
 if eval "test \"`echo '$''{'ac_cv_header_sys_wait_h'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 1804 "configure"
+#line 1930 "configure"
 #include "confdefs.h"
 #include <sys/types.h>
 #include <sys/wait.h>
 #include "confdefs.h"
 #include <sys/types.h>
 #include <sys/wait.h>
@@ -1805,7 +1931,7 @@ wait (&s);
 s = WIFEXITED (s) ? WEXITSTATUS (s) : 1;
 ; return 0; }
 EOF
 s = WIFEXITED (s) ? WEXITSTATUS (s) : 1;
 ; return 0; }
 EOF
-if { (eval echo configure:1820: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:1946: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   ac_cv_header_sys_wait_h=yes
 else
   rm -rf conftest*
   ac_cv_header_sys_wait_h=yes
 else
@@ -1830,12 +1956,12 @@ for ac_hdr in dirent.h sys/ndir.h sys/dir.h ndir.h
 do
 ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for $ac_hdr that defines DIR""... $ac_c" 1>&6
 do
 ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for $ac_hdr that defines DIR""... $ac_c" 1>&6
-echo "configure:1845: checking for $ac_hdr that defines DIR" >&5
+echo "configure:1971: checking for $ac_hdr that defines DIR" >&5
 if eval "test \"`echo '$''{'ac_cv_header_dirent_$ac_safe'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
 if eval "test \"`echo '$''{'ac_cv_header_dirent_$ac_safe'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 1850 "configure"
+#line 1976 "configure"
 #include "confdefs.h"
 #include <sys/types.h>
 #include <$ac_hdr>
 #include "confdefs.h"
 #include <sys/types.h>
 #include <$ac_hdr>
@@ -1843,7 +1969,7 @@ int main() {
 DIR *dirp = 0;
 ; return 0; }
 EOF
 DIR *dirp = 0;
 ; return 0; }
 EOF
-if { (eval echo configure:1858: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:1984: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   eval "ac_cv_header_dirent_$ac_safe=yes"
 else
   rm -rf conftest*
   eval "ac_cv_header_dirent_$ac_safe=yes"
 else
@@ -1868,7 +1994,7 @@ done
 # Two versions of opendir et al. are in -ldir and -lx on SCO Xenix.
 if test $ac_header_dirent = dirent.h; then
 echo $ac_n "checking for opendir in -ldir""... $ac_c" 1>&6
 # Two versions of opendir et al. are in -ldir and -lx on SCO Xenix.
 if test $ac_header_dirent = dirent.h; then
 echo $ac_n "checking for opendir in -ldir""... $ac_c" 1>&6
-echo "configure:1883: checking for opendir in -ldir" >&5
+echo "configure:2009: checking for opendir in -ldir" >&5
 ac_lib_var=`echo dir'_'opendir | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 ac_lib_var=`echo dir'_'opendir | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -1876,7 +2002,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-ldir  $LIBS"
 cat > conftest.$ac_ext <<EOF
   ac_save_LIBS="$LIBS"
 LIBS="-ldir  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 1891 "configure"
+#line 2017 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -1887,7 +2013,7 @@ int main() {
 opendir()
 ; return 0; }
 EOF
 opendir()
 ; return 0; }
 EOF
-if { (eval echo configure:1902: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:2028: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -1909,7 +2035,7 @@ fi
 
 else
 echo $ac_n "checking for opendir in -lx""... $ac_c" 1>&6
 
 else
 echo $ac_n "checking for opendir in -lx""... $ac_c" 1>&6
-echo "configure:1924: checking for opendir in -lx" >&5
+echo "configure:2050: checking for opendir in -lx" >&5
 ac_lib_var=`echo x'_'opendir | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 ac_lib_var=`echo x'_'opendir | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -1917,7 +2043,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lx  $LIBS"
 cat > conftest.$ac_ext <<EOF
   ac_save_LIBS="$LIBS"
 LIBS="-lx  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 1932 "configure"
+#line 2058 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -1928,7 +2054,7 @@ int main() {
 opendir()
 ; return 0; }
 EOF
 opendir()
 ; return 0; }
 EOF
-if { (eval echo configure:1943: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:2069: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -1951,12 +2077,12 @@ fi
 fi
 
 echo $ac_n "checking how to call gettimeofday""... $ac_c" 1>&6
 fi
 
 echo $ac_n "checking how to call gettimeofday""... $ac_c" 1>&6
-echo "configure:1966: checking how to call gettimeofday" >&5
+echo "configure:2092: checking how to call gettimeofday" >&5
   if eval "test \"`echo '$''{'ac_cv_gettimeofday_args'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
   if eval "test \"`echo '$''{'ac_cv_gettimeofday_args'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 1971 "configure"
+#line 2097 "configure"
 #include "confdefs.h"
 #include <stdlib.h>
                     #include <sys/time.h>
 #include "confdefs.h"
 #include <stdlib.h>
                     #include <sys/time.h>
@@ -1965,7 +2091,7 @@ struct timeval tv; struct timezone tzp;
                     gettimeofday(&tv, &tzp);
 ; return 0; }
 EOF
                     gettimeofday(&tv, &tzp);
 ; return 0; }
 EOF
-if { (eval echo configure:1980: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:2106: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   ac_gettimeofday_args=2
 else
   rm -rf conftest*
   ac_gettimeofday_args=2
 else
@@ -1973,7 +2099,7 @@ else
   cat conftest.$ac_ext >&5
   rm -rf conftest*
   cat > conftest.$ac_ext <<EOF
   cat conftest.$ac_ext >&5
   rm -rf conftest*
   cat > conftest.$ac_ext <<EOF
-#line 1988 "configure"
+#line 2114 "configure"
 #include "confdefs.h"
 #include <stdlib.h>
                                     #include <sys/time.h>
 #include "confdefs.h"
 #include <stdlib.h>
                                     #include <sys/time.h>
@@ -1981,7 +2107,7 @@ int main() {
 struct timeval tv; gettimeofday(&tv);
 ; return 0; }
 EOF
 struct timeval tv; gettimeofday(&tv);
 ; return 0; }
 EOF
-if { (eval echo configure:1996: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:2122: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   ac_gettimeofday_args=1
 else
   rm -rf conftest*
   ac_gettimeofday_args=1
 else
@@ -2020,12 +2146,12 @@ EOF
 for ac_func in select fcntl uname nice setpriority getcwd getwd putenv
 do
 echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
 for ac_func in select fcntl uname nice setpriority getcwd getwd putenv
 do
 echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
-echo "configure:2035: checking for $ac_func" >&5
+echo "configure:2161: checking for $ac_func" >&5
 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 2040 "configure"
+#line 2166 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char $ac_func(); below.  */
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char $ac_func(); below.  */
@@ -2048,7 +2174,7 @@ $ac_func();
 
 ; return 0; }
 EOF
 
 ; return 0; }
 EOF
-if { (eval echo configure:2063: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:2189: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_func_$ac_func=yes"
 else
   rm -rf conftest*
   eval "ac_cv_func_$ac_func=yes"
 else
@@ -2076,12 +2202,12 @@ done
 for ac_func in sigaction syslog realpath
 do
 echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
 for ac_func in sigaction syslog realpath
 do
 echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
-echo "configure:2091: checking for $ac_func" >&5
+echo "configure:2217: checking for $ac_func" >&5
 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 2096 "configure"
+#line 2222 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char $ac_func(); below.  */
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char $ac_func(); below.  */
@@ -2104,7 +2230,7 @@ $ac_func();
 
 ; return 0; }
 EOF
 
 ; return 0; }
 EOF
-if { (eval echo configure:2119: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:2245: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_func_$ac_func=yes"
 else
   rm -rf conftest*
   eval "ac_cv_func_$ac_func=yes"
 else
@@ -2129,12 +2255,12 @@ fi
 done
 
 echo $ac_n "checking for struct icmp""... $ac_c" 1>&6
 done
 
 echo $ac_n "checking for struct icmp""... $ac_c" 1>&6
-echo "configure:2144: checking for struct icmp" >&5
+echo "configure:2270: checking for struct icmp" >&5
 if eval "test \"`echo '$''{'ac_cv_have_icmp'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
 if eval "test \"`echo '$''{'ac_cv_have_icmp'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 2149 "configure"
+#line 2275 "configure"
 #include "confdefs.h"
 #include <stdlib.h>
                    #include <stdio.h>
 #include "confdefs.h"
 #include <stdlib.h>
                    #include <stdio.h>
@@ -2169,7 +2295,7 @@ struct icmp i;
                    ip.ip_hl = 0;
 ; return 0; }
 EOF
                    ip.ip_hl = 0;
 ; return 0; }
 EOF
-if { (eval echo configure:2184: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:2310: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   ac_cv_have_icmp=yes
 else
   rm -rf conftest*
   ac_cv_have_icmp=yes
 else
@@ -2189,12 +2315,12 @@ EOF
 
  fi
 echo $ac_n "checking for struct icmphdr""... $ac_c" 1>&6
 
  fi
 echo $ac_n "checking for struct icmphdr""... $ac_c" 1>&6
-echo "configure:2204: checking for struct icmphdr" >&5
+echo "configure:2330: checking for struct icmphdr" >&5
 if eval "test \"`echo '$''{'ac_cv_have_icmphdr'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
 if eval "test \"`echo '$''{'ac_cv_have_icmphdr'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 2209 "configure"
+#line 2335 "configure"
 #include "confdefs.h"
 #include <stdlib.h>
                    #include <stdio.h>
 #include "confdefs.h"
 #include <stdlib.h>
                    #include <stdio.h>
@@ -2229,7 +2355,7 @@ struct icmphdr i;
                    ip.ip_hl = 0;
 ; return 0; }
 EOF
                    ip.ip_hl = 0;
 ; return 0; }
 EOF
-if { (eval echo configure:2244: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:2370: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   ac_cv_have_icmphdr=yes
 else
   rm -rf conftest*
   ac_cv_have_icmphdr=yes
 else
@@ -2252,17 +2378,17 @@ for ac_hdr in crypt.h sys/select.h
 do
 ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
 do
 ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
-echo "configure:2267: checking for $ac_hdr" >&5
+echo "configure:2393: checking for $ac_hdr" >&5
 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 2272 "configure"
+#line 2398 "configure"
 #include "confdefs.h"
 #include <$ac_hdr>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
 #include "confdefs.h"
 #include <$ac_hdr>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:2277: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:2403: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
 if test -z "$ac_err"; then
   rm -rf conftest*
 ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
 if test -z "$ac_err"; then
   rm -rf conftest*
@@ -2293,7 +2419,7 @@ do
 # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
 # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2308: checking for $ac_word" >&5
+echo "configure:2434: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_path_PERL'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
 if eval "test \"`echo '$''{'ac_cv_path_PERL'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -2332,7 +2458,7 @@ done
     PERL_VERSION=0
   else
     echo $ac_n "checking perl version""... $ac_c" 1>&6
     PERL_VERSION=0
   else
     echo $ac_n "checking perl version""... $ac_c" 1>&6
-echo "configure:2347: checking perl version" >&5
+echo "configure:2473: checking perl version" >&5
 if eval "test \"`echo '$''{'ac_cv_perl_version'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
 if eval "test \"`echo '$''{'ac_cv_perl_version'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -2354,7 +2480,7 @@ fi
 # Uses ac_ vars as temps to allow command line to override cache and checks.
 # --without-x overrides everything else, but does not touch the cache.
 echo $ac_n "checking for X""... $ac_c" 1>&6
 # Uses ac_ vars as temps to allow command line to override cache and checks.
 # --without-x overrides everything else, but does not touch the cache.
 echo $ac_n "checking for X""... $ac_c" 1>&6
-echo "configure:2369: checking for X" >&5
+echo "configure:2495: checking for X" >&5
 
 # Check whether --with-x or --without-x was given.
 if test "${with_x+set}" = set; then
 
 # Check whether --with-x or --without-x was given.
 if test "${with_x+set}" = set; then
@@ -2416,12 +2542,12 @@ if test "$ac_x_includes" = NO; then
 
   # First, try using that file with no special directory specified.
 cat > conftest.$ac_ext <<EOF
 
   # First, try using that file with no special directory specified.
 cat > conftest.$ac_ext <<EOF
-#line 2431 "configure"
+#line 2557 "configure"
 #include "confdefs.h"
 #include <$x_direct_test_include>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
 #include "confdefs.h"
 #include <$x_direct_test_include>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:2436: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:2562: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
 if test -z "$ac_err"; then
   rm -rf conftest*
 ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
 if test -z "$ac_err"; then
   rm -rf conftest*
@@ -2490,14 +2616,14 @@ if test "$ac_x_libraries" = NO; then
   ac_save_LIBS="$LIBS"
   LIBS="-l$x_direct_test_library $LIBS"
 cat > conftest.$ac_ext <<EOF
   ac_save_LIBS="$LIBS"
   LIBS="-l$x_direct_test_library $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 2505 "configure"
+#line 2631 "configure"
 #include "confdefs.h"
 
 int main() {
 ${x_direct_test_function}()
 ; return 0; }
 EOF
 #include "confdefs.h"
 
 int main() {
 ${x_direct_test_function}()
 ; return 0; }
 EOF
-if { (eval echo configure:2512: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:2638: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   LIBS="$ac_save_LIBS"
 # We can link X programs with no special library path.
   rm -rf conftest*
   LIBS="$ac_save_LIBS"
 # We can link X programs with no special library path.
@@ -2603,17 +2729,17 @@ else
     case "`(uname -sr) 2>/dev/null`" in
     "SunOS 5"*)
       echo $ac_n "checking whether -R must be followed by a space""... $ac_c" 1>&6
     case "`(uname -sr) 2>/dev/null`" in
     "SunOS 5"*)
       echo $ac_n "checking whether -R must be followed by a space""... $ac_c" 1>&6
-echo "configure:2618: checking whether -R must be followed by a space" >&5
+echo "configure:2744: checking whether -R must be followed by a space" >&5
       ac_xsave_LIBS="$LIBS"; LIBS="$LIBS -R$x_libraries"
       cat > conftest.$ac_ext <<EOF
       ac_xsave_LIBS="$LIBS"; LIBS="$LIBS -R$x_libraries"
       cat > conftest.$ac_ext <<EOF
-#line 2621 "configure"
+#line 2747 "configure"
 #include "confdefs.h"
 
 int main() {
 
 ; return 0; }
 EOF
 #include "confdefs.h"
 
 int main() {
 
 ; return 0; }
 EOF
-if { (eval echo configure:2628: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:2754: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   ac_R_nospace=yes
 else
   rm -rf conftest*
   ac_R_nospace=yes
 else
@@ -2629,14 +2755,14 @@ rm -f conftest*
       else
        LIBS="$ac_xsave_LIBS -R $x_libraries"
        cat > conftest.$ac_ext <<EOF
       else
        LIBS="$ac_xsave_LIBS -R $x_libraries"
        cat > conftest.$ac_ext <<EOF
-#line 2644 "configure"
+#line 2770 "configure"
 #include "confdefs.h"
 
 int main() {
 
 ; return 0; }
 EOF
 #include "confdefs.h"
 
 int main() {
 
 ; return 0; }
 EOF
-if { (eval echo configure:2651: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:2777: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   ac_R_space=yes
 else
   rm -rf conftest*
   ac_R_space=yes
 else
@@ -2668,7 +2794,7 @@ rm -f conftest*
     # libraries were built with DECnet support.  And karl@cs.umb.edu says
     # the Alpha needs dnet_stub (dnet does not exist).
     echo $ac_n "checking for dnet_ntoa in -ldnet""... $ac_c" 1>&6
     # libraries were built with DECnet support.  And karl@cs.umb.edu says
     # the Alpha needs dnet_stub (dnet does not exist).
     echo $ac_n "checking for dnet_ntoa in -ldnet""... $ac_c" 1>&6
-echo "configure:2683: checking for dnet_ntoa in -ldnet" >&5
+echo "configure:2809: checking for dnet_ntoa in -ldnet" >&5
 ac_lib_var=`echo dnet'_'dnet_ntoa | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 ac_lib_var=`echo dnet'_'dnet_ntoa | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -2676,7 +2802,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-ldnet  $LIBS"
 cat > conftest.$ac_ext <<EOF
   ac_save_LIBS="$LIBS"
 LIBS="-ldnet  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 2691 "configure"
+#line 2817 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -2687,7 +2813,7 @@ int main() {
 dnet_ntoa()
 ; return 0; }
 EOF
 dnet_ntoa()
 ; return 0; }
 EOF
-if { (eval echo configure:2702: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:2828: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -2709,7 +2835,7 @@ fi
 
     if test $ac_cv_lib_dnet_dnet_ntoa = no; then
       echo $ac_n "checking for dnet_ntoa in -ldnet_stub""... $ac_c" 1>&6
 
     if test $ac_cv_lib_dnet_dnet_ntoa = no; then
       echo $ac_n "checking for dnet_ntoa in -ldnet_stub""... $ac_c" 1>&6
-echo "configure:2724: checking for dnet_ntoa in -ldnet_stub" >&5
+echo "configure:2850: checking for dnet_ntoa in -ldnet_stub" >&5
 ac_lib_var=`echo dnet_stub'_'dnet_ntoa | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 ac_lib_var=`echo dnet_stub'_'dnet_ntoa | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -2717,7 +2843,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-ldnet_stub  $LIBS"
 cat > conftest.$ac_ext <<EOF
   ac_save_LIBS="$LIBS"
 LIBS="-ldnet_stub  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 2732 "configure"
+#line 2858 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -2728,7 +2854,7 @@ int main() {
 dnet_ntoa()
 ; return 0; }
 EOF
 dnet_ntoa()
 ; return 0; }
 EOF
-if { (eval echo configure:2743: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:2869: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -2757,12 +2883,12 @@ fi
     # The nsl library prevents programs from opening the X display
     # on Irix 5.2, according to dickey@clark.net.
     echo $ac_n "checking for gethostbyname""... $ac_c" 1>&6
     # The nsl library prevents programs from opening the X display
     # on Irix 5.2, according to dickey@clark.net.
     echo $ac_n "checking for gethostbyname""... $ac_c" 1>&6
-echo "configure:2772: checking for gethostbyname" >&5
+echo "configure:2898: checking for gethostbyname" >&5
 if eval "test \"`echo '$''{'ac_cv_func_gethostbyname'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
 if eval "test \"`echo '$''{'ac_cv_func_gethostbyname'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 2777 "configure"
+#line 2903 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char gethostbyname(); below.  */
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char gethostbyname(); below.  */
@@ -2785,7 +2911,7 @@ gethostbyname();
 
 ; return 0; }
 EOF
 
 ; return 0; }
 EOF
-if { (eval echo configure:2800: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:2926: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_func_gethostbyname=yes"
 else
   rm -rf conftest*
   eval "ac_cv_func_gethostbyname=yes"
 else
@@ -2806,7 +2932,7 @@ fi
 
     if test $ac_cv_func_gethostbyname = no; then
       echo $ac_n "checking for gethostbyname in -lnsl""... $ac_c" 1>&6
 
     if test $ac_cv_func_gethostbyname = no; then
       echo $ac_n "checking for gethostbyname in -lnsl""... $ac_c" 1>&6
-echo "configure:2821: checking for gethostbyname in -lnsl" >&5
+echo "configure:2947: checking for gethostbyname in -lnsl" >&5
 ac_lib_var=`echo nsl'_'gethostbyname | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 ac_lib_var=`echo nsl'_'gethostbyname | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -2814,7 +2940,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lnsl  $LIBS"
 cat > conftest.$ac_ext <<EOF
   ac_save_LIBS="$LIBS"
 LIBS="-lnsl  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 2829 "configure"
+#line 2955 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -2825,7 +2951,7 @@ int main() {
 gethostbyname()
 ; return 0; }
 EOF
 gethostbyname()
 ; return 0; }
 EOF
-if { (eval echo configure:2840: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:2966: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -2855,12 +2981,12 @@ fi
     # -lsocket must be given before -lnsl if both are needed.
     # We assume that if connect needs -lnsl, so does gethostbyname.
     echo $ac_n "checking for connect""... $ac_c" 1>&6
     # -lsocket must be given before -lnsl if both are needed.
     # We assume that if connect needs -lnsl, so does gethostbyname.
     echo $ac_n "checking for connect""... $ac_c" 1>&6
-echo "configure:2870: checking for connect" >&5
+echo "configure:2996: checking for connect" >&5
 if eval "test \"`echo '$''{'ac_cv_func_connect'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
 if eval "test \"`echo '$''{'ac_cv_func_connect'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 2875 "configure"
+#line 3001 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char connect(); below.  */
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char connect(); below.  */
@@ -2883,7 +3009,7 @@ connect();
 
 ; return 0; }
 EOF
 
 ; return 0; }
 EOF
-if { (eval echo configure:2898: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:3024: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_func_connect=yes"
 else
   rm -rf conftest*
   eval "ac_cv_func_connect=yes"
 else
@@ -2904,7 +3030,7 @@ fi
 
     if test $ac_cv_func_connect = no; then
       echo $ac_n "checking for connect in -lsocket""... $ac_c" 1>&6
 
     if test $ac_cv_func_connect = no; then
       echo $ac_n "checking for connect in -lsocket""... $ac_c" 1>&6
-echo "configure:2919: checking for connect in -lsocket" >&5
+echo "configure:3045: checking for connect in -lsocket" >&5
 ac_lib_var=`echo socket'_'connect | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 ac_lib_var=`echo socket'_'connect | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -2912,7 +3038,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lsocket $X_EXTRA_LIBS $LIBS"
 cat > conftest.$ac_ext <<EOF
   ac_save_LIBS="$LIBS"
 LIBS="-lsocket $X_EXTRA_LIBS $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 2927 "configure"
+#line 3053 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -2923,7 +3049,7 @@ int main() {
 connect()
 ; return 0; }
 EOF
 connect()
 ; return 0; }
 EOF
-if { (eval echo configure:2938: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:3064: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -2947,12 +3073,12 @@ fi
 
     # gomez@mi.uni-erlangen.de says -lposix is necessary on A/UX.
     echo $ac_n "checking for remove""... $ac_c" 1>&6
 
     # gomez@mi.uni-erlangen.de says -lposix is necessary on A/UX.
     echo $ac_n "checking for remove""... $ac_c" 1>&6
-echo "configure:2962: checking for remove" >&5
+echo "configure:3088: checking for remove" >&5
 if eval "test \"`echo '$''{'ac_cv_func_remove'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
 if eval "test \"`echo '$''{'ac_cv_func_remove'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 2967 "configure"
+#line 3093 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char remove(); below.  */
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char remove(); below.  */
@@ -2975,7 +3101,7 @@ remove();
 
 ; return 0; }
 EOF
 
 ; return 0; }
 EOF
-if { (eval echo configure:2990: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:3116: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_func_remove=yes"
 else
   rm -rf conftest*
   eval "ac_cv_func_remove=yes"
 else
@@ -2996,7 +3122,7 @@ fi
 
     if test $ac_cv_func_remove = no; then
       echo $ac_n "checking for remove in -lposix""... $ac_c" 1>&6
 
     if test $ac_cv_func_remove = no; then
       echo $ac_n "checking for remove in -lposix""... $ac_c" 1>&6
-echo "configure:3011: checking for remove in -lposix" >&5
+echo "configure:3137: checking for remove in -lposix" >&5
 ac_lib_var=`echo posix'_'remove | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 ac_lib_var=`echo posix'_'remove | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -3004,7 +3130,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lposix  $LIBS"
 cat > conftest.$ac_ext <<EOF
   ac_save_LIBS="$LIBS"
 LIBS="-lposix  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 3019 "configure"
+#line 3145 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -3015,7 +3141,7 @@ int main() {
 remove()
 ; return 0; }
 EOF
 remove()
 ; return 0; }
 EOF
-if { (eval echo configure:3030: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:3156: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -3039,12 +3165,12 @@ fi
 
     # BSDI BSD/OS 2.1 needs -lipc for XOpenDisplay.
     echo $ac_n "checking for shmat""... $ac_c" 1>&6
 
     # BSDI BSD/OS 2.1 needs -lipc for XOpenDisplay.
     echo $ac_n "checking for shmat""... $ac_c" 1>&6
-echo "configure:3054: checking for shmat" >&5
+echo "configure:3180: checking for shmat" >&5
 if eval "test \"`echo '$''{'ac_cv_func_shmat'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
 if eval "test \"`echo '$''{'ac_cv_func_shmat'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 3059 "configure"
+#line 3185 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char shmat(); below.  */
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char shmat(); below.  */
@@ -3067,7 +3193,7 @@ shmat();
 
 ; return 0; }
 EOF
 
 ; return 0; }
 EOF
-if { (eval echo configure:3082: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:3208: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_func_shmat=yes"
 else
   rm -rf conftest*
   eval "ac_cv_func_shmat=yes"
 else
@@ -3088,7 +3214,7 @@ fi
 
     if test $ac_cv_func_shmat = no; then
       echo $ac_n "checking for shmat in -lipc""... $ac_c" 1>&6
 
     if test $ac_cv_func_shmat = no; then
       echo $ac_n "checking for shmat in -lipc""... $ac_c" 1>&6
-echo "configure:3103: checking for shmat in -lipc" >&5
+echo "configure:3229: checking for shmat in -lipc" >&5
 ac_lib_var=`echo ipc'_'shmat | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 ac_lib_var=`echo ipc'_'shmat | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -3096,7 +3222,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lipc  $LIBS"
 cat > conftest.$ac_ext <<EOF
   ac_save_LIBS="$LIBS"
 LIBS="-lipc  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 3111 "configure"
+#line 3237 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -3107,7 +3233,7 @@ int main() {
 shmat()
 ; return 0; }
 EOF
 shmat()
 ; return 0; }
 EOF
-if { (eval echo configure:3122: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:3248: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -3140,7 +3266,7 @@ fi
   # libraries we check for below, so use a different variable.
   #  --interran@uluru.Stanford.EDU, kb@cs.umb.edu.
   echo $ac_n "checking for IceConnectionNumber in -lICE""... $ac_c" 1>&6
   # libraries we check for below, so use a different variable.
   #  --interran@uluru.Stanford.EDU, kb@cs.umb.edu.
   echo $ac_n "checking for IceConnectionNumber in -lICE""... $ac_c" 1>&6
-echo "configure:3155: checking for IceConnectionNumber in -lICE" >&5
+echo "configure:3281: checking for IceConnectionNumber in -lICE" >&5
 ac_lib_var=`echo ICE'_'IceConnectionNumber | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 ac_lib_var=`echo ICE'_'IceConnectionNumber | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -3148,7 +3274,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lICE $X_EXTRA_LIBS $LIBS"
 cat > conftest.$ac_ext <<EOF
   ac_save_LIBS="$LIBS"
 LIBS="-lICE $X_EXTRA_LIBS $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 3163 "configure"
+#line 3289 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -3159,7 +3285,7 @@ int main() {
 IceConnectionNumber()
 ; return 0; }
 EOF
 IceConnectionNumber()
 ; return 0; }
 EOF
-if { (eval echo configure:3174: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:3300: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -3190,7 +3316,7 @@ fi
 
 
     echo $ac_n "checking for X app-defaults directory""... $ac_c" 1>&6
 
 
     echo $ac_n "checking for X app-defaults directory""... $ac_c" 1>&6
-echo "configure:3205: checking for X app-defaults directory" >&5
+echo "configure:3331: checking for X app-defaults directory" >&5
 if eval "test \"`echo '$''{'ac_cv_x_app_defaults'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
 if eval "test \"`echo '$''{'ac_cv_x_app_defaults'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -3389,7 +3515,7 @@ case "$host" in
 
         # Some versions of Slowlaris Motif require -lgen.  But not all.  Why?
         echo $ac_n "checking for regcmp in -lgen""... $ac_c" 1>&6
 
         # Some versions of Slowlaris Motif require -lgen.  But not all.  Why?
         echo $ac_n "checking for regcmp in -lgen""... $ac_c" 1>&6
-echo "configure:3404: checking for regcmp in -lgen" >&5
+echo "configure:3530: checking for regcmp in -lgen" >&5
 ac_lib_var=`echo gen'_'regcmp | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 ac_lib_var=`echo gen'_'regcmp | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -3397,7 +3523,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lgen  $LIBS"
 cat > conftest.$ac_ext <<EOF
   ac_save_LIBS="$LIBS"
 LIBS="-lgen  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 3412 "configure"
+#line 3538 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -3408,7 +3534,7 @@ int main() {
 regcmp()
 ; return 0; }
 EOF
 regcmp()
 ; return 0; }
 EOF
-if { (eval echo configure:3423: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:3549: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -3432,7 +3558,7 @@ fi
     ;;
   esac
 echo $ac_n "checking for XPointer""... $ac_c" 1>&6
     ;;
   esac
 echo $ac_n "checking for XPointer""... $ac_c" 1>&6
-echo "configure:3447: checking for XPointer" >&5
+echo "configure:3573: checking for XPointer" >&5
 if eval "test \"`echo '$''{'ac_cv_xpointer'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
 if eval "test \"`echo '$''{'ac_cv_xpointer'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -3443,14 +3569,14 @@ else
   fi
   CPPFLAGS="$CPPFLAGS $X_CFLAGS"
   cat > conftest.$ac_ext <<EOF
   fi
   CPPFLAGS="$CPPFLAGS $X_CFLAGS"
   cat > conftest.$ac_ext <<EOF
-#line 3458 "configure"
+#line 3584 "configure"
 #include "confdefs.h"
 #include <X11/Xlib.h>
 int main() {
 XPointer foo = (XPointer) 0;
 ; return 0; }
 EOF
 #include "confdefs.h"
 #include <X11/Xlib.h>
 int main() {
 XPointer foo = (XPointer) 0;
 ; return 0; }
 EOF
-if { (eval echo configure:3465: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:3591: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   ac_cv_xpointer=yes
 else
   rm -rf conftest*
   ac_cv_xpointer=yes
 else
@@ -3488,17 +3614,17 @@ have_xmu=no
   CPPFLAGS="$CPPFLAGS $X_CFLAGS"
   ac_safe=`echo "X11/Xmu/Error.h" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for X11/Xmu/Error.h""... $ac_c" 1>&6
   CPPFLAGS="$CPPFLAGS $X_CFLAGS"
   ac_safe=`echo "X11/Xmu/Error.h" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for X11/Xmu/Error.h""... $ac_c" 1>&6
-echo "configure:3503: checking for X11/Xmu/Error.h" >&5
+echo "configure:3629: checking for X11/Xmu/Error.h" >&5
 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 3508 "configure"
+#line 3634 "configure"
 #include "confdefs.h"
 #include <X11/Xmu/Error.h>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
 #include "confdefs.h"
 #include <X11/Xmu/Error.h>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:3513: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:3639: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
 if test -z "$ac_err"; then
   rm -rf conftest*
 ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
 if test -z "$ac_err"; then
   rm -rf conftest*
@@ -3549,7 +3675,7 @@ if test "$have_xmu" = yes ; then
   case "$host" in
     *-sunos4*)
     echo $ac_n "checking for the SunOS 4.1.x _get_wmShellWidgetClass bug""... $ac_c" 1>&6
   case "$host" in
     *-sunos4*)
     echo $ac_n "checking for the SunOS 4.1.x _get_wmShellWidgetClass bug""... $ac_c" 1>&6
-echo "configure:3564: checking for the SunOS 4.1.x _get_wmShellWidgetClass bug" >&5
+echo "configure:3690: checking for the SunOS 4.1.x _get_wmShellWidgetClass bug" >&5
 if eval "test \"`echo '$''{'ac_cv_sunos_xmu_bug'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
 if eval "test \"`echo '$''{'ac_cv_sunos_xmu_bug'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -3562,14 +3688,14 @@ else
                     # with X libraries because we know it's SunOS.
                     LDFLAGS="$LDFLAGS -lXmu -lXt -lX11 -lXext -lm"
                     cat > conftest.$ac_ext <<EOF
                     # with X libraries because we know it's SunOS.
                     LDFLAGS="$LDFLAGS -lXmu -lXt -lX11 -lXext -lm"
                     cat > conftest.$ac_ext <<EOF
-#line 3577 "configure"
+#line 3703 "configure"
 #include "confdefs.h"
 
 int main() {
 
 ; return 0; }
 EOF
 #include "confdefs.h"
 
 int main() {
 
 ; return 0; }
 EOF
-if { (eval echo configure:3584: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:3710: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   ac_cv_sunos_xmu_bug=no
 else
   rm -rf conftest*
   ac_cv_sunos_xmu_bug=no
 else
@@ -3585,21 +3711,21 @@ fi
 echo "$ac_t""$ac_cv_sunos_xmu_bug" 1>&6
     if test "$ac_cv_sunos_xmu_bug" = yes ; then
       echo $ac_n "checking whether the compiler understands -static""... $ac_c" 1>&6
 echo "$ac_t""$ac_cv_sunos_xmu_bug" 1>&6
     if test "$ac_cv_sunos_xmu_bug" = yes ; then
       echo $ac_n "checking whether the compiler understands -static""... $ac_c" 1>&6
-echo "configure:3600: checking whether the compiler understands -static" >&5
+echo "configure:3726: checking whether the compiler understands -static" >&5
 if eval "test \"`echo '$''{'ac_cv_ld_static'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   ac_save_LDFLAGS="$LDFLAGS"
                       LDFLAGS="$LDFLAGS -static"
                       cat > conftest.$ac_ext <<EOF
 if eval "test \"`echo '$''{'ac_cv_ld_static'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   ac_save_LDFLAGS="$LDFLAGS"
                       LDFLAGS="$LDFLAGS -static"
                       cat > conftest.$ac_ext <<EOF
-#line 3607 "configure"
+#line 3733 "configure"
 #include "confdefs.h"
 
 int main() {
 
 ; return 0; }
 EOF
 #include "confdefs.h"
 
 int main() {
 
 ; return 0; }
 EOF
-if { (eval echo configure:3614: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:3740: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   ac_cv_ld_static=yes
 else
   rm -rf conftest*
   ac_cv_ld_static=yes
 else
@@ -3682,7 +3808,7 @@ fi
 
     /*)
      echo $ac_n "checking for SGI SCREEN_SAVER headers""... $ac_c" 1>&6
 
     /*)
      echo $ac_n "checking for SGI SCREEN_SAVER headers""... $ac_c" 1>&6
-echo "configure:3697: checking for SGI SCREEN_SAVER headers" >&5
+echo "configure:3823: checking for SGI SCREEN_SAVER headers" >&5
      d=$with_sgi/include
      if test -d $d; then
        X_CFLAGS="-I$d $X_CFLAGS"
      d=$with_sgi/include
      if test -d $d; then
        X_CFLAGS="-I$d $X_CFLAGS"
@@ -3692,7 +3818,7 @@ echo "configure:3697: checking for SGI SCREEN_SAVER headers" >&5
      fi
 
      echo $ac_n "checking for SGI SCREEN_SAVER libs""... $ac_c" 1>&6
      fi
 
      echo $ac_n "checking for SGI SCREEN_SAVER libs""... $ac_c" 1>&6
-echo "configure:3707: checking for SGI SCREEN_SAVER libs" >&5
+echo "configure:3833: checking for SGI SCREEN_SAVER libs" >&5
      d=$with_sgi/lib
      if test -d $d; then
        X_LIBS="-L$d $X_LIBS"
      d=$with_sgi/lib
      if test -d $d; then
        X_LIBS="-L$d $X_LIBS"
@@ -3725,17 +3851,17 @@ if test "$with_sgi" = yes; then
   CPPFLAGS="$CPPFLAGS $X_CFLAGS"
   ac_safe=`echo "X11/extensions/XScreenSaver.h" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for X11/extensions/XScreenSaver.h""... $ac_c" 1>&6
   CPPFLAGS="$CPPFLAGS $X_CFLAGS"
   ac_safe=`echo "X11/extensions/XScreenSaver.h" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for X11/extensions/XScreenSaver.h""... $ac_c" 1>&6
-echo "configure:3740: checking for X11/extensions/XScreenSaver.h" >&5
+echo "configure:3866: checking for X11/extensions/XScreenSaver.h" >&5
 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 3745 "configure"
+#line 3871 "configure"
 #include "confdefs.h"
 #include <X11/extensions/XScreenSaver.h>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
 #include "confdefs.h"
 #include <X11/extensions/XScreenSaver.h>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:3750: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:3876: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
 if test -z "$ac_err"; then
   rm -rf conftest*
 ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
 if test -z "$ac_err"; then
   rm -rf conftest*
@@ -3792,7 +3918,7 @@ fi
 
     /*)
      echo $ac_n "checking for MIT-SCREEN-SAVER headers""... $ac_c" 1>&6
 
     /*)
      echo $ac_n "checking for MIT-SCREEN-SAVER headers""... $ac_c" 1>&6
-echo "configure:3807: checking for MIT-SCREEN-SAVER headers" >&5
+echo "configure:3933: checking for MIT-SCREEN-SAVER headers" >&5
      d=$with_mit/include
      if test -d $d; then
        X_CFLAGS="-I$d $X_CFLAGS"
      d=$with_mit/include
      if test -d $d; then
        X_CFLAGS="-I$d $X_CFLAGS"
@@ -3802,7 +3928,7 @@ echo "configure:3807: checking for MIT-SCREEN-SAVER headers" >&5
      fi
 
      echo $ac_n "checking for MIT-SCREEN-SAVER libs""... $ac_c" 1>&6
      fi
 
      echo $ac_n "checking for MIT-SCREEN-SAVER libs""... $ac_c" 1>&6
-echo "configure:3817: checking for MIT-SCREEN-SAVER libs" >&5
+echo "configure:3943: checking for MIT-SCREEN-SAVER libs" >&5
      d=$with_mit/lib
      if test -d $d; then
        X_LIBS="-L$d $X_LIBS"
      d=$with_mit/lib
      if test -d $d; then
        X_LIBS="-L$d $X_LIBS"
@@ -3835,17 +3961,17 @@ if test "$with_mit" = yes; then
   CPPFLAGS="$CPPFLAGS $X_CFLAGS"
   ac_safe=`echo "X11/extensions/scrnsaver.h" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for X11/extensions/scrnsaver.h""... $ac_c" 1>&6
   CPPFLAGS="$CPPFLAGS $X_CFLAGS"
   ac_safe=`echo "X11/extensions/scrnsaver.h" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for X11/extensions/scrnsaver.h""... $ac_c" 1>&6
-echo "configure:3850: checking for X11/extensions/scrnsaver.h" >&5
+echo "configure:3976: checking for X11/extensions/scrnsaver.h" >&5
 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 3855 "configure"
+#line 3981 "configure"
 #include "confdefs.h"
 #include <X11/extensions/scrnsaver.h>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
 #include "confdefs.h"
 #include <X11/extensions/scrnsaver.h>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:3860: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:3986: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
 if test -z "$ac_err"; then
   rm -rf conftest*
 ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
 if test -z "$ac_err"; then
   rm -rf conftest*
@@ -3890,7 +4016,7 @@ fi
   LDFLAGS="$LDFLAGS $X_LIBS $X_EXTRA_LIBS"
 
   echo $ac_n "checking for XScreenSaverRegister in -lXext""... $ac_c" 1>&6
   LDFLAGS="$LDFLAGS $X_LIBS $X_EXTRA_LIBS"
 
   echo $ac_n "checking for XScreenSaverRegister in -lXext""... $ac_c" 1>&6
-echo "configure:3905: checking for XScreenSaverRegister in -lXext" >&5
+echo "configure:4031: checking for XScreenSaverRegister in -lXext" >&5
 ac_lib_var=`echo Xext'_'XScreenSaverRegister | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 ac_lib_var=`echo Xext'_'XScreenSaverRegister | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -3898,7 +4024,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lXext -lm $LIBS"
 cat > conftest.$ac_ext <<EOF
   ac_save_LIBS="$LIBS"
 LIBS="-lXext -lm $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 3913 "configure"
+#line 4039 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -3909,7 +4035,7 @@ int main() {
 XScreenSaverRegister()
 ; return 0; }
 EOF
 XScreenSaverRegister()
 ; return 0; }
 EOF
-if { (eval echo configure:3924: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:4050: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -3956,7 +4082,7 @@ fi
   LDFLAGS="$LDFLAGS $X_LIBS $X_EXTRA_LIBS"
 
   echo $ac_n "checking for XScreenSaverRegister in -lXExExt""... $ac_c" 1>&6
   LDFLAGS="$LDFLAGS $X_LIBS $X_EXTRA_LIBS"
 
   echo $ac_n "checking for XScreenSaverRegister in -lXExExt""... $ac_c" 1>&6
-echo "configure:3971: checking for XScreenSaverRegister in -lXExExt" >&5
+echo "configure:4097: checking for XScreenSaverRegister in -lXExExt" >&5
 ac_lib_var=`echo XExExt'_'XScreenSaverRegister | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 ac_lib_var=`echo XExExt'_'XScreenSaverRegister | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -3964,7 +4090,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lXExExt -lX11 -lXext -lm $LIBS"
 cat > conftest.$ac_ext <<EOF
   ac_save_LIBS="$LIBS"
 LIBS="-lXExExt -lX11 -lXext -lm $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 3979 "configure"
+#line 4105 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -3975,7 +4101,7 @@ int main() {
 XScreenSaverRegister()
 ; return 0; }
 EOF
 XScreenSaverRegister()
 ; return 0; }
 EOF
-if { (eval echo configure:3990: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:4116: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -4025,7 +4151,7 @@ fi
   LDFLAGS="$LDFLAGS $X_LIBS $X_EXTRA_LIBS"
 
   echo $ac_n "checking for XScreenSaverRegister in -lXss""... $ac_c" 1>&6
   LDFLAGS="$LDFLAGS $X_LIBS $X_EXTRA_LIBS"
 
   echo $ac_n "checking for XScreenSaverRegister in -lXss""... $ac_c" 1>&6
-echo "configure:4040: checking for XScreenSaverRegister in -lXss" >&5
+echo "configure:4166: checking for XScreenSaverRegister in -lXss" >&5
 ac_lib_var=`echo Xss'_'XScreenSaverRegister | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 ac_lib_var=`echo Xss'_'XScreenSaverRegister | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -4033,7 +4159,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lXss -lX11 -lXext -lm $LIBS"
 cat > conftest.$ac_ext <<EOF
   ac_save_LIBS="$LIBS"
 LIBS="-lXss -lX11 -lXext -lm $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 4048 "configure"
+#line 4174 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -4044,7 +4170,7 @@ int main() {
 XScreenSaverRegister()
 ; return 0; }
 EOF
 XScreenSaverRegister()
 ; return 0; }
 EOF
-if { (eval echo configure:4059: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:4185: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -4110,7 +4236,7 @@ fi
 
     /*)
      echo $ac_n "checking for XIDLE headers""... $ac_c" 1>&6
 
     /*)
      echo $ac_n "checking for XIDLE headers""... $ac_c" 1>&6
-echo "configure:4125: checking for XIDLE headers" >&5
+echo "configure:4251: checking for XIDLE headers" >&5
      d=$with_xidle/include
      if test -d $d; then
        X_CFLAGS="-I$d $X_CFLAGS"
      d=$with_xidle/include
      if test -d $d; then
        X_CFLAGS="-I$d $X_CFLAGS"
@@ -4120,7 +4246,7 @@ echo "configure:4125: checking for XIDLE headers" >&5
      fi
 
      echo $ac_n "checking for XIDLE libs""... $ac_c" 1>&6
      fi
 
      echo $ac_n "checking for XIDLE libs""... $ac_c" 1>&6
-echo "configure:4135: checking for XIDLE libs" >&5
+echo "configure:4261: checking for XIDLE libs" >&5
      d=$with_xidle/lib
      if test -d $d; then
        X_LIBS="-L$d $X_LIBS"
      d=$with_xidle/lib
      if test -d $d; then
        X_LIBS="-L$d $X_LIBS"
@@ -4153,17 +4279,17 @@ if test "$with_xidle" = yes; then
   CPPFLAGS="$CPPFLAGS $X_CFLAGS"
   ac_safe=`echo "X11/extensions/xidle.h" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for X11/extensions/xidle.h""... $ac_c" 1>&6
   CPPFLAGS="$CPPFLAGS $X_CFLAGS"
   ac_safe=`echo "X11/extensions/xidle.h" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for X11/extensions/xidle.h""... $ac_c" 1>&6
-echo "configure:4168: checking for X11/extensions/xidle.h" >&5
+echo "configure:4294: checking for X11/extensions/xidle.h" >&5
 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 4173 "configure"
+#line 4299 "configure"
 #include "confdefs.h"
 #include <X11/extensions/xidle.h>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
 #include "confdefs.h"
 #include <X11/extensions/xidle.h>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:4178: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:4304: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
 if test -z "$ac_err"; then
   rm -rf conftest*
 ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
 if test -z "$ac_err"; then
   rm -rf conftest*
@@ -4219,7 +4345,7 @@ fi
 
     /*)
      echo $ac_n "checking for SGI-VIDEO-CONTROL headers""... $ac_c" 1>&6
 
     /*)
      echo $ac_n "checking for SGI-VIDEO-CONTROL headers""... $ac_c" 1>&6
-echo "configure:4234: checking for SGI-VIDEO-CONTROL headers" >&5
+echo "configure:4360: checking for SGI-VIDEO-CONTROL headers" >&5
      d=$with_sgivc/include
      if test -d $d; then
        X_CFLAGS="-I$d $X_CFLAGS"
      d=$with_sgivc/include
      if test -d $d; then
        X_CFLAGS="-I$d $X_CFLAGS"
@@ -4229,7 +4355,7 @@ echo "configure:4234: checking for SGI-VIDEO-CONTROL headers" >&5
      fi
 
      echo $ac_n "checking for SGI-VIDEO-CONTROL libs""... $ac_c" 1>&6
      fi
 
      echo $ac_n "checking for SGI-VIDEO-CONTROL libs""... $ac_c" 1>&6
-echo "configure:4244: checking for SGI-VIDEO-CONTROL libs" >&5
+echo "configure:4370: checking for SGI-VIDEO-CONTROL libs" >&5
      d=$with_sgivc/lib
      if test -d $d; then
        X_LIBS="-L$d $X_LIBS"
      d=$with_sgivc/lib
      if test -d $d; then
        X_LIBS="-L$d $X_LIBS"
@@ -4264,17 +4390,17 @@ if test "$with_sgivc" = yes; then
   CPPFLAGS="$CPPFLAGS $X_CFLAGS"
   ac_safe=`echo "X11/extensions/XSGIvc.h" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for X11/extensions/XSGIvc.h""... $ac_c" 1>&6
   CPPFLAGS="$CPPFLAGS $X_CFLAGS"
   ac_safe=`echo "X11/extensions/XSGIvc.h" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for X11/extensions/XSGIvc.h""... $ac_c" 1>&6
-echo "configure:4279: checking for X11/extensions/XSGIvc.h" >&5
+echo "configure:4405: checking for X11/extensions/XSGIvc.h" >&5
 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 4284 "configure"
+#line 4410 "configure"
 #include "confdefs.h"
 #include <X11/extensions/XSGIvc.h>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
 #include "confdefs.h"
 #include <X11/extensions/XSGIvc.h>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:4289: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:4415: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
 if test -z "$ac_err"; then
   rm -rf conftest*
 ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
 if test -z "$ac_err"; then
   rm -rf conftest*
@@ -4318,7 +4444,7 @@ fi
   LDFLAGS="$LDFLAGS $X_LIBS $X_EXTRA_LIBS"
 
   echo $ac_n "checking for XSGIvcQueryGammaMap in -lXsgivc""... $ac_c" 1>&6
   LDFLAGS="$LDFLAGS $X_LIBS $X_EXTRA_LIBS"
 
   echo $ac_n "checking for XSGIvcQueryGammaMap in -lXsgivc""... $ac_c" 1>&6
-echo "configure:4333: checking for XSGIvcQueryGammaMap in -lXsgivc" >&5
+echo "configure:4459: checking for XSGIvcQueryGammaMap in -lXsgivc" >&5
 ac_lib_var=`echo Xsgivc'_'XSGIvcQueryGammaMap | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 ac_lib_var=`echo Xsgivc'_'XSGIvcQueryGammaMap | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -4326,7 +4452,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lXsgivc -lXext -lX11 $LIBS"
 cat > conftest.$ac_ext <<EOF
   ac_save_LIBS="$LIBS"
 LIBS="-lXsgivc -lXext -lX11 $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 4341 "configure"
+#line 4467 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -4337,7 +4463,7 @@ int main() {
 XSGIvcQueryGammaMap()
 ; return 0; }
 EOF
 XSGIvcQueryGammaMap()
 ; return 0; }
 EOF
-if { (eval echo configure:4352: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:4478: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -4402,7 +4528,7 @@ fi
 
     /*)
      echo $ac_n "checking for DPMS headers""... $ac_c" 1>&6
 
     /*)
      echo $ac_n "checking for DPMS headers""... $ac_c" 1>&6
-echo "configure:4417: checking for DPMS headers" >&5
+echo "configure:4543: checking for DPMS headers" >&5
      d=$with_dpms/include
      if test -d $d; then
        X_CFLAGS="-I$d $X_CFLAGS"
      d=$with_dpms/include
      if test -d $d; then
        X_CFLAGS="-I$d $X_CFLAGS"
@@ -4412,7 +4538,7 @@ echo "configure:4417: checking for DPMS headers" >&5
      fi
 
      echo $ac_n "checking for DPMS libs""... $ac_c" 1>&6
      fi
 
      echo $ac_n "checking for DPMS libs""... $ac_c" 1>&6
-echo "configure:4427: checking for DPMS libs" >&5
+echo "configure:4553: checking for DPMS libs" >&5
      d=$with_dpms/lib
      if test -d $d; then
        X_LIBS="-L$d $X_LIBS"
      d=$with_dpms/lib
      if test -d $d; then
        X_LIBS="-L$d $X_LIBS"
@@ -4447,17 +4573,17 @@ if test "$with_dpms" = yes; then
   CPPFLAGS="$CPPFLAGS $X_CFLAGS"
   ac_safe=`echo "X11/extensions/dpms.h" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for X11/extensions/dpms.h""... $ac_c" 1>&6
   CPPFLAGS="$CPPFLAGS $X_CFLAGS"
   ac_safe=`echo "X11/extensions/dpms.h" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for X11/extensions/dpms.h""... $ac_c" 1>&6
-echo "configure:4462: checking for X11/extensions/dpms.h" >&5
+echo "configure:4588: checking for X11/extensions/dpms.h" >&5
 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 4467 "configure"
+#line 4593 "configure"
 #include "confdefs.h"
 #include <X11/extensions/dpms.h>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
 #include "confdefs.h"
 #include <X11/extensions/dpms.h>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:4472: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:4598: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
 if test -z "$ac_err"; then
   rm -rf conftest*
 ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
 if test -z "$ac_err"; then
   rm -rf conftest*
@@ -4503,7 +4629,7 @@ fi
   LDFLAGS="$LDFLAGS $X_LIBS $X_EXTRA_LIBS"
 
   echo $ac_n "checking for DPMSInfo in -lXext""... $ac_c" 1>&6
   LDFLAGS="$LDFLAGS $X_LIBS $X_EXTRA_LIBS"
 
   echo $ac_n "checking for DPMSInfo in -lXext""... $ac_c" 1>&6
-echo "configure:4518: checking for DPMSInfo in -lXext" >&5
+echo "configure:4644: checking for DPMSInfo in -lXext" >&5
 ac_lib_var=`echo Xext'_'DPMSInfo | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 ac_lib_var=`echo Xext'_'DPMSInfo | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -4511,7 +4637,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lXext -lXext -lX11 $LIBS"
 cat > conftest.$ac_ext <<EOF
   ac_save_LIBS="$LIBS"
 LIBS="-lXext -lXext -lX11 $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 4526 "configure"
+#line 4652 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -4522,7 +4648,7 @@ int main() {
 DPMSInfo()
 ; return 0; }
 EOF
 DPMSInfo()
 ; return 0; }
 EOF
-if { (eval echo configure:4537: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:4663: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -4568,7 +4694,7 @@ fi
   LDFLAGS="$LDFLAGS $X_LIBS $X_EXTRA_LIBS"
 
   echo $ac_n "checking for DPMSInfo in -lXdpms""... $ac_c" 1>&6
   LDFLAGS="$LDFLAGS $X_LIBS $X_EXTRA_LIBS"
 
   echo $ac_n "checking for DPMSInfo in -lXdpms""... $ac_c" 1>&6
-echo "configure:4583: checking for DPMSInfo in -lXdpms" >&5
+echo "configure:4709: checking for DPMSInfo in -lXdpms" >&5
 ac_lib_var=`echo Xdpms'_'DPMSInfo | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 ac_lib_var=`echo Xdpms'_'DPMSInfo | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -4576,7 +4702,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lXdpms -lXext -lX11 $LIBS"
 cat > conftest.$ac_ext <<EOF
   ac_save_LIBS="$LIBS"
 LIBS="-lXdpms -lXext -lX11 $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 4591 "configure"
+#line 4717 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -4587,7 +4713,7 @@ int main() {
 DPMSInfo()
 ; return 0; }
 EOF
 DPMSInfo()
 ; return 0; }
 EOF
-if { (eval echo configure:4602: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:4728: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -4654,7 +4780,7 @@ fi
 
     /*)
      echo $ac_n "checking for xf86vmode headers""... $ac_c" 1>&6
 
     /*)
      echo $ac_n "checking for xf86vmode headers""... $ac_c" 1>&6
-echo "configure:4669: checking for xf86vmode headers" >&5
+echo "configure:4795: checking for xf86vmode headers" >&5
      d=$with_xf86vmode/include
      if test -d $d; then
        X_CFLAGS="-I$d $X_CFLAGS"
      d=$with_xf86vmode/include
      if test -d $d; then
        X_CFLAGS="-I$d $X_CFLAGS"
@@ -4664,7 +4790,7 @@ echo "configure:4669: checking for xf86vmode headers" >&5
      fi
 
      echo $ac_n "checking for xf86vmode libs""... $ac_c" 1>&6
      fi
 
      echo $ac_n "checking for xf86vmode libs""... $ac_c" 1>&6
-echo "configure:4679: checking for xf86vmode libs" >&5
+echo "configure:4805: checking for xf86vmode libs" >&5
      d=$with_xf86vmode/lib
      if test -d $d; then
        X_LIBS="-L$d $X_LIBS"
      d=$with_xf86vmode/lib
      if test -d $d; then
        X_LIBS="-L$d $X_LIBS"
@@ -4699,17 +4825,17 @@ if test "$with_xf86vmode" = yes; then
   CPPFLAGS="$CPPFLAGS $X_CFLAGS"
   ac_safe=`echo "X11/extensions/xf86vmode.h" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for X11/extensions/xf86vmode.h""... $ac_c" 1>&6
   CPPFLAGS="$CPPFLAGS $X_CFLAGS"
   ac_safe=`echo "X11/extensions/xf86vmode.h" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for X11/extensions/xf86vmode.h""... $ac_c" 1>&6
-echo "configure:4714: checking for X11/extensions/xf86vmode.h" >&5
+echo "configure:4840: checking for X11/extensions/xf86vmode.h" >&5
 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 4719 "configure"
+#line 4845 "configure"
 #include "confdefs.h"
 #include <X11/extensions/xf86vmode.h>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
 #include "confdefs.h"
 #include <X11/extensions/xf86vmode.h>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:4724: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:4850: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
 if test -z "$ac_err"; then
   rm -rf conftest*
 ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
 if test -z "$ac_err"; then
   rm -rf conftest*
@@ -4753,7 +4879,7 @@ fi
   LDFLAGS="$LDFLAGS $X_LIBS $X_EXTRA_LIBS"
 
   echo $ac_n "checking for XF86VidModeGetViewPort in -lXxf86vm""... $ac_c" 1>&6
   LDFLAGS="$LDFLAGS $X_LIBS $X_EXTRA_LIBS"
 
   echo $ac_n "checking for XF86VidModeGetViewPort in -lXxf86vm""... $ac_c" 1>&6
-echo "configure:4768: checking for XF86VidModeGetViewPort in -lXxf86vm" >&5
+echo "configure:4894: checking for XF86VidModeGetViewPort in -lXxf86vm" >&5
 ac_lib_var=`echo Xxf86vm'_'XF86VidModeGetViewPort | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 ac_lib_var=`echo Xxf86vm'_'XF86VidModeGetViewPort | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -4761,7 +4887,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lXxf86vm -lXext -lX11 $LIBS"
 cat > conftest.$ac_ext <<EOF
   ac_save_LIBS="$LIBS"
 LIBS="-lXxf86vm -lXext -lX11 $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 4776 "configure"
+#line 4902 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -4772,7 +4898,7 @@ int main() {
 XF86VidModeGetViewPort()
 ; return 0; }
 EOF
 XF86VidModeGetViewPort()
 ; return 0; }
 EOF
-if { (eval echo configure:4787: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:4913: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -4826,7 +4952,7 @@ fi
   fi
   CPPFLAGS="$CPPFLAGS $X_CFLAGS"
   cat > conftest.$ac_ext <<EOF
   fi
   CPPFLAGS="$CPPFLAGS $X_CFLAGS"
   cat > conftest.$ac_ext <<EOF
-#line 4841 "configure"
+#line 4967 "configure"
 #include "confdefs.h"
 #include <X11/XHPlib.h>
 EOF
 #include "confdefs.h"
 #include <X11/XHPlib.h>
 EOF
@@ -4864,7 +4990,7 @@ fi
 if test "$with_proc_interrupts" = yes; then
 
    echo $ac_n "checking whether /proc/interrupts contains keyboard data""... $ac_c" 1>&6
 if test "$with_proc_interrupts" = yes; then
 
    echo $ac_n "checking whether /proc/interrupts contains keyboard data""... $ac_c" 1>&6
-echo "configure:4879: checking whether /proc/interrupts contains keyboard data" >&5
+echo "configure:5005: checking whether /proc/interrupts contains keyboard data" >&5
 if eval "test \"`echo '$''{'ac_cv_have_proc_interrupts'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
 if eval "test \"`echo '$''{'ac_cv_have_proc_interrupts'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -4997,7 +5123,7 @@ fi
 
     /*)
      echo $ac_n "checking for PAM headers""... $ac_c" 1>&6
 
     /*)
      echo $ac_n "checking for PAM headers""... $ac_c" 1>&6
-echo "configure:5012: checking for PAM headers" >&5
+echo "configure:5138: checking for PAM headers" >&5
      d=$with_pam/include
      if test -d $d; then
        X_CFLAGS="-I$d $X_CFLAGS"
      d=$with_pam/include
      if test -d $d; then
        X_CFLAGS="-I$d $X_CFLAGS"
@@ -5007,7 +5133,7 @@ echo "configure:5012: checking for PAM headers" >&5
      fi
 
      echo $ac_n "checking for PAM libs""... $ac_c" 1>&6
      fi
 
      echo $ac_n "checking for PAM libs""... $ac_c" 1>&6
-echo "configure:5022: checking for PAM libs" >&5
+echo "configure:5148: checking for PAM libs" >&5
      d=$with_pam/lib
      if test -d $d; then
        X_LIBS="-L$d $X_LIBS"
      d=$with_pam/lib
      if test -d $d; then
        X_LIBS="-L$d $X_LIBS"
@@ -5033,7 +5159,7 @@ echo "configure:5022: checking for PAM libs" >&5
 
 if test "$enable_locking" = yes -a "$with_pam" = yes; then
   echo $ac_n "checking for PAM""... $ac_c" 1>&6
 
 if test "$enable_locking" = yes -a "$with_pam" = yes; then
   echo $ac_n "checking for PAM""... $ac_c" 1>&6
-echo "configure:5048: checking for PAM" >&5
+echo "configure:5174: checking for PAM" >&5
 if eval "test \"`echo '$''{'ac_cv_pam'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
 if eval "test \"`echo '$''{'ac_cv_pam'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -5044,14 +5170,14 @@ else
   fi
   CPPFLAGS="$CPPFLAGS $X_CFLAGS"
   cat > conftest.$ac_ext <<EOF
   fi
   CPPFLAGS="$CPPFLAGS $X_CFLAGS"
   cat > conftest.$ac_ext <<EOF
-#line 5059 "configure"
+#line 5185 "configure"
 #include "confdefs.h"
 #include <security/pam_appl.h>
 int main() {
 
 ; return 0; }
 EOF
 #include "confdefs.h"
 #include <security/pam_appl.h>
 int main() {
 
 ; return 0; }
 EOF
-if { (eval echo configure:5066: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:5192: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   ac_cv_pam=yes
 else
   rm -rf conftest*
   ac_cv_pam=yes
 else
@@ -5076,7 +5202,7 @@ EOF
     # libpam typically requires dlopen and dlsym.  On FreeBSD,
     # those are in libc.  On Linux and Solaris, they're in libdl.
     echo $ac_n "checking for dlopen in -ldl""... $ac_c" 1>&6
     # libpam typically requires dlopen and dlsym.  On FreeBSD,
     # those are in libc.  On Linux and Solaris, they're in libdl.
     echo $ac_n "checking for dlopen in -ldl""... $ac_c" 1>&6
-echo "configure:5091: checking for dlopen in -ldl" >&5
+echo "configure:5217: checking for dlopen in -ldl" >&5
 ac_lib_var=`echo dl'_'dlopen | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 ac_lib_var=`echo dl'_'dlopen | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -5084,7 +5210,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-ldl  $LIBS"
 cat > conftest.$ac_ext <<EOF
   ac_save_LIBS="$LIBS"
 LIBS="-ldl  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 5099 "configure"
+#line 5225 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -5095,7 +5221,7 @@ int main() {
 dlopen()
 ; return 0; }
 EOF
 dlopen()
 ; return 0; }
 EOF
-if { (eval echo configure:5110: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:5236: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -5117,12 +5243,12 @@ fi
 
 
     echo $ac_n "checking how to call pam_strerror""... $ac_c" 1>&6
 
 
     echo $ac_n "checking how to call pam_strerror""... $ac_c" 1>&6
-echo "configure:5132: checking how to call pam_strerror" >&5
+echo "configure:5258: checking how to call pam_strerror" >&5
     if eval "test \"`echo '$''{'ac_cv_pam_strerror_args'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
     if eval "test \"`echo '$''{'ac_cv_pam_strerror_args'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 5137 "configure"
+#line 5263 "configure"
 #include "confdefs.h"
 #include <stdio.h>
                       #include <stdlib.h>
 #include "confdefs.h"
 #include <stdio.h>
                       #include <stdlib.h>
@@ -5132,7 +5258,7 @@ pam_handle_t *pamh = 0;
                       char *s = pam_strerror(pamh, PAM_SUCCESS);
 ; return 0; }
 EOF
                       char *s = pam_strerror(pamh, PAM_SUCCESS);
 ; return 0; }
 EOF
-if { (eval echo configure:5147: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:5273: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   ac_pam_strerror_args=2
 else
   rm -rf conftest*
   ac_pam_strerror_args=2
 else
@@ -5140,7 +5266,7 @@ else
   cat conftest.$ac_ext >&5
   rm -rf conftest*
   cat > conftest.$ac_ext <<EOF
   cat conftest.$ac_ext >&5
   rm -rf conftest*
   cat > conftest.$ac_ext <<EOF
-#line 5155 "configure"
+#line 5281 "configure"
 #include "confdefs.h"
 #include <stdio.h>
                                       #include <stdlib.h>
 #include "confdefs.h"
 #include <stdio.h>
                                       #include <stdlib.h>
@@ -5150,7 +5276,7 @@ char *s =
                                        pam_strerror(PAM_SUCCESS);
 ; return 0; }
 EOF
                                        pam_strerror(PAM_SUCCESS);
 ; return 0; }
 EOF
-if { (eval echo configure:5165: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:5291: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   ac_pam_strerror_args=1
 else
   rm -rf conftest*
   ac_pam_strerror_args=1
 else
@@ -5207,7 +5333,7 @@ fi
 
     /*)
      echo $ac_n "checking for Kerberos headers""... $ac_c" 1>&6
 
     /*)
      echo $ac_n "checking for Kerberos headers""... $ac_c" 1>&6
-echo "configure:5222: checking for Kerberos headers" >&5
+echo "configure:5348: checking for Kerberos headers" >&5
      d=$with_kerberos/include
      if test -d $d; then
        X_CFLAGS="-I$d $X_CFLAGS"
      d=$with_kerberos/include
      if test -d $d; then
        X_CFLAGS="-I$d $X_CFLAGS"
@@ -5217,7 +5343,7 @@ echo "configure:5222: checking for Kerberos headers" >&5
      fi
 
      echo $ac_n "checking for Kerberos libs""... $ac_c" 1>&6
      fi
 
      echo $ac_n "checking for Kerberos libs""... $ac_c" 1>&6
-echo "configure:5232: checking for Kerberos libs" >&5
+echo "configure:5358: checking for Kerberos libs" >&5
      d=$with_kerberos/lib
      if test -d $d; then
        X_LIBS="-L$d $X_LIBS"
      d=$with_kerberos/lib
      if test -d $d; then
        X_LIBS="-L$d $X_LIBS"
@@ -5243,7 +5369,7 @@ echo "configure:5232: checking for Kerberos libs" >&5
 
 if test "$enable_locking" = yes -a "$with_kerberos" = yes; then
   echo $ac_n "checking for Kerberos 4""... $ac_c" 1>&6
 
 if test "$enable_locking" = yes -a "$with_kerberos" = yes; then
   echo $ac_n "checking for Kerberos 4""... $ac_c" 1>&6
-echo "configure:5258: checking for Kerberos 4" >&5
+echo "configure:5384: checking for Kerberos 4" >&5
 if eval "test \"`echo '$''{'ac_cv_kerberos'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
 if eval "test \"`echo '$''{'ac_cv_kerberos'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -5254,14 +5380,14 @@ else
   fi
   CPPFLAGS="$CPPFLAGS $X_CFLAGS"
   cat > conftest.$ac_ext <<EOF
   fi
   CPPFLAGS="$CPPFLAGS $X_CFLAGS"
   cat > conftest.$ac_ext <<EOF
-#line 5269 "configure"
+#line 5395 "configure"
 #include "confdefs.h"
 #include <krb.h>
 int main() {
 
 ; return 0; }
 EOF
 #include "confdefs.h"
 #include <krb.h>
 int main() {
 
 ; return 0; }
 EOF
-if { (eval echo configure:5276: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:5402: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   ac_cv_kerberos=yes
 else
   rm -rf conftest*
   ac_cv_kerberos=yes
 else
@@ -5276,7 +5402,7 @@ fi
 
 echo "$ac_t""$ac_cv_kerberos" 1>&6
   echo $ac_n "checking for Kerberos 5""... $ac_c" 1>&6
 
 echo "$ac_t""$ac_cv_kerberos" 1>&6
   echo $ac_n "checking for Kerberos 5""... $ac_c" 1>&6
-echo "configure:5291: checking for Kerberos 5" >&5
+echo "configure:5417: checking for Kerberos 5" >&5
 if eval "test \"`echo '$''{'ac_cv_kerberos5'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
 if eval "test \"`echo '$''{'ac_cv_kerberos5'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -5287,14 +5413,14 @@ else
   fi
   CPPFLAGS="$CPPFLAGS $X_CFLAGS"
   cat > conftest.$ac_ext <<EOF
   fi
   CPPFLAGS="$CPPFLAGS $X_CFLAGS"
   cat > conftest.$ac_ext <<EOF
-#line 5302 "configure"
+#line 5428 "configure"
 #include "confdefs.h"
 #include <kerberosIV/krb.h>
 int main() {
 
 ; return 0; }
 EOF
 #include "confdefs.h"
 #include <kerberosIV/krb.h>
 int main() {
 
 ; return 0; }
 EOF
-if { (eval echo configure:5309: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:5435: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   ac_cv_kerberos5=yes
 else
   rm -rf conftest*
   ac_cv_kerberos5=yes
 else
@@ -5341,12 +5467,12 @@ EOF
 
   if test "$have_kerberos" = yes ; then
     echo $ac_n "checking for res_search""... $ac_c" 1>&6
 
   if test "$have_kerberos" = yes ; then
     echo $ac_n "checking for res_search""... $ac_c" 1>&6
-echo "configure:5356: checking for res_search" >&5
+echo "configure:5482: checking for res_search" >&5
 if eval "test \"`echo '$''{'ac_cv_func_res_search'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
 if eval "test \"`echo '$''{'ac_cv_func_res_search'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 5361 "configure"
+#line 5487 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char res_search(); below.  */
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char res_search(); below.  */
@@ -5369,7 +5495,7 @@ res_search();
 
 ; return 0; }
 EOF
 
 ; return 0; }
 EOF
-if { (eval echo configure:5384: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:5510: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_func_res_search=yes"
 else
   rm -rf conftest*
   eval "ac_cv_func_res_search=yes"
 else
@@ -5387,7 +5513,7 @@ if eval "test \"`echo '$ac_cv_func_'res_search`\" = yes"; then
 else
   echo "$ac_t""no" 1>&6
 echo $ac_n "checking for res_search in -lresolv""... $ac_c" 1>&6
 else
   echo "$ac_t""no" 1>&6
 echo $ac_n "checking for res_search in -lresolv""... $ac_c" 1>&6
-echo "configure:5402: checking for res_search in -lresolv" >&5
+echo "configure:5528: checking for res_search in -lresolv" >&5
 ac_lib_var=`echo resolv'_'res_search | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 ac_lib_var=`echo resolv'_'res_search | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -5395,7 +5521,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lresolv  $LIBS"
 cat > conftest.$ac_ext <<EOF
   ac_save_LIBS="$LIBS"
 LIBS="-lresolv  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 5410 "configure"
+#line 5536 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -5406,7 +5532,7 @@ int main() {
 res_search()
 ; return 0; }
 EOF
 res_search()
 ; return 0; }
 EOF
-if { (eval echo configure:5421: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:5547: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -5461,7 +5587,7 @@ fi
 
     /*)
      echo $ac_n "checking for shadow password headers""... $ac_c" 1>&6
 
     /*)
      echo $ac_n "checking for shadow password headers""... $ac_c" 1>&6
-echo "configure:5476: checking for shadow password headers" >&5
+echo "configure:5602: checking for shadow password headers" >&5
      d=$with_shadow/include
      if test -d $d; then
        X_CFLAGS="-I$d $X_CFLAGS"
      d=$with_shadow/include
      if test -d $d; then
        X_CFLAGS="-I$d $X_CFLAGS"
@@ -5471,7 +5597,7 @@ echo "configure:5476: checking for shadow password headers" >&5
      fi
 
      echo $ac_n "checking for shadow password libs""... $ac_c" 1>&6
      fi
 
      echo $ac_n "checking for shadow password libs""... $ac_c" 1>&6
-echo "configure:5486: checking for shadow password libs" >&5
+echo "configure:5612: checking for shadow password libs" >&5
      d=$with_shadow/lib
      if test -d $d; then
        X_LIBS="-L$d $X_LIBS"
      d=$with_shadow/lib
      if test -d $d; then
        X_LIBS="-L$d $X_LIBS"
@@ -5509,7 +5635,7 @@ fi
 
 if test "$with_shadow" = yes ; then
   echo $ac_n "checking for Sun-style shadow passwords""... $ac_c" 1>&6
 
 if test "$with_shadow" = yes ; then
   echo $ac_n "checking for Sun-style shadow passwords""... $ac_c" 1>&6
-echo "configure:5524: checking for Sun-style shadow passwords" >&5
+echo "configure:5650: checking for Sun-style shadow passwords" >&5
 if eval "test \"`echo '$''{'ac_cv_sun_adjunct'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
 if eval "test \"`echo '$''{'ac_cv_sun_adjunct'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -5520,7 +5646,7 @@ else
   fi
   CPPFLAGS="$CPPFLAGS $X_CFLAGS"
   cat > conftest.$ac_ext <<EOF
   fi
   CPPFLAGS="$CPPFLAGS $X_CFLAGS"
   cat > conftest.$ac_ext <<EOF
-#line 5535 "configure"
+#line 5661 "configure"
 #include "confdefs.h"
 #include <stdlib.h>
                                     #include <unistd.h>
 #include "confdefs.h"
 #include <stdlib.h>
                                     #include <unistd.h>
@@ -5533,7 +5659,7 @@ struct passwd_adjunct *p = getpwanam("nobody");
                        const char *pw = p->pwa_passwd;
 ; return 0; }
 EOF
                        const char *pw = p->pwa_passwd;
 ; return 0; }
 EOF
-if { (eval echo configure:5548: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:5674: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   ac_cv_sun_adjunct=yes
 else
   rm -rf conftest*
   ac_cv_sun_adjunct=yes
 else
@@ -5563,7 +5689,7 @@ fi
 
 if test "$with_shadow" = yes ; then
   echo $ac_n "checking for DEC-style shadow passwords""... $ac_c" 1>&6
 
 if test "$with_shadow" = yes ; then
   echo $ac_n "checking for DEC-style shadow passwords""... $ac_c" 1>&6
-echo "configure:5578: checking for DEC-style shadow passwords" >&5
+echo "configure:5704: checking for DEC-style shadow passwords" >&5
 if eval "test \"`echo '$''{'ac_cv_enhanced_passwd'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
 if eval "test \"`echo '$''{'ac_cv_enhanced_passwd'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -5574,7 +5700,7 @@ else
   fi
   CPPFLAGS="$CPPFLAGS $X_CFLAGS"
   cat > conftest.$ac_ext <<EOF
   fi
   CPPFLAGS="$CPPFLAGS $X_CFLAGS"
   cat > conftest.$ac_ext <<EOF
-#line 5589 "configure"
+#line 5715 "configure"
 #include "confdefs.h"
 #include <stdlib.h>
                                     #include <unistd.h>
 #include "confdefs.h"
 #include <stdlib.h>
                                     #include <unistd.h>
@@ -5591,7 +5717,7 @@ struct pr_passwd *p;
                        pw = p->ufld.fd_encrypt;
 ; return 0; }
 EOF
                        pw = p->ufld.fd_encrypt;
 ; return 0; }
 EOF
-if { (eval echo configure:5606: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:5732: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   ac_cv_enhanced_passwd=yes
 else
   rm -rf conftest*
   ac_cv_enhanced_passwd=yes
 else
@@ -5615,7 +5741,7 @@ echo "$ac_t""$ac_cv_enhanced_passwd" 1>&6
     # But on DEC, it's in -lsecurity.
     #
     echo $ac_n "checking for getprpwnam in -lprot""... $ac_c" 1>&6
     # But on DEC, it's in -lsecurity.
     #
     echo $ac_n "checking for getprpwnam in -lprot""... $ac_c" 1>&6
-echo "configure:5630: checking for getprpwnam in -lprot" >&5
+echo "configure:5756: checking for getprpwnam in -lprot" >&5
 ac_lib_var=`echo prot'_'getprpwnam | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 ac_lib_var=`echo prot'_'getprpwnam | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -5623,7 +5749,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lprot -lx $LIBS"
 cat > conftest.$ac_ext <<EOF
   ac_save_LIBS="$LIBS"
 LIBS="-lprot -lx $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 5638 "configure"
+#line 5764 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -5634,7 +5760,7 @@ int main() {
 getprpwnam()
 ; return 0; }
 EOF
 getprpwnam()
 ; return 0; }
 EOF
-if { (eval echo configure:5649: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:5775: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -5653,7 +5779,7 @@ if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then
 else
   echo "$ac_t""no" 1>&6
 echo $ac_n "checking for getprpwnam in -lsecurity""... $ac_c" 1>&6
 else
   echo "$ac_t""no" 1>&6
 echo $ac_n "checking for getprpwnam in -lsecurity""... $ac_c" 1>&6
-echo "configure:5668: checking for getprpwnam in -lsecurity" >&5
+echo "configure:5794: checking for getprpwnam in -lsecurity" >&5
 ac_lib_var=`echo security'_'getprpwnam | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 ac_lib_var=`echo security'_'getprpwnam | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -5661,7 +5787,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lsecurity  $LIBS"
 cat > conftest.$ac_ext <<EOF
   ac_save_LIBS="$LIBS"
 LIBS="-lsecurity  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 5676 "configure"
+#line 5802 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -5672,7 +5798,7 @@ int main() {
 getprpwnam()
 ; return 0; }
 EOF
 getprpwnam()
 ; return 0; }
 EOF
-if { (eval echo configure:5687: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:5813: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -5705,7 +5831,7 @@ fi
 
 if test "$with_shadow" = yes ; then
   echo $ac_n "checking for HP-style shadow passwords""... $ac_c" 1>&6
 
 if test "$with_shadow" = yes ; then
   echo $ac_n "checking for HP-style shadow passwords""... $ac_c" 1>&6
-echo "configure:5720: checking for HP-style shadow passwords" >&5
+echo "configure:5846: checking for HP-style shadow passwords" >&5
 if eval "test \"`echo '$''{'ac_cv_hpux_passwd'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
 if eval "test \"`echo '$''{'ac_cv_hpux_passwd'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -5716,7 +5842,7 @@ else
   fi
   CPPFLAGS="$CPPFLAGS $X_CFLAGS"
   cat > conftest.$ac_ext <<EOF
   fi
   CPPFLAGS="$CPPFLAGS $X_CFLAGS"
   cat > conftest.$ac_ext <<EOF
-#line 5731 "configure"
+#line 5857 "configure"
 #include "confdefs.h"
 #include <stdlib.h>
                                     #include <unistd.h>
 #include "confdefs.h"
 #include <stdlib.h>
                                     #include <unistd.h>
@@ -5729,7 +5855,7 @@ struct s_passwd *p = getspwnam("nobody");
                        const char *pw = p->pw_passwd;
 ; return 0; }
 EOF
                        const char *pw = p->pw_passwd;
 ; return 0; }
 EOF
-if { (eval echo configure:5744: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:5870: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   ac_cv_hpux_passwd=yes
 else
   rm -rf conftest*
   ac_cv_hpux_passwd=yes
 else
@@ -5750,7 +5876,7 @@ echo "$ac_t""$ac_cv_hpux_passwd" 1>&6
 
     # on HPUX, bigcrypt is in -lsec
     echo $ac_n "checking for bigcrypt in -lsec""... $ac_c" 1>&6
 
     # on HPUX, bigcrypt is in -lsec
     echo $ac_n "checking for bigcrypt in -lsec""... $ac_c" 1>&6
-echo "configure:5765: checking for bigcrypt in -lsec" >&5
+echo "configure:5891: checking for bigcrypt in -lsec" >&5
 ac_lib_var=`echo sec'_'bigcrypt | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 ac_lib_var=`echo sec'_'bigcrypt | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -5758,7 +5884,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lsec  $LIBS"
 cat > conftest.$ac_ext <<EOF
   ac_save_LIBS="$LIBS"
 LIBS="-lsec  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 5773 "configure"
+#line 5899 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -5769,7 +5895,7 @@ int main() {
 bigcrypt()
 ; return 0; }
 EOF
 bigcrypt()
 ; return 0; }
 EOF
-if { (eval echo configure:5784: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:5910: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -5807,7 +5933,7 @@ fi
 
 if test "$with_shadow" = yes ; then
   echo $ac_n "checking for FreeBSD-style shadow passwords""... $ac_c" 1>&6
 
 if test "$with_shadow" = yes ; then
   echo $ac_n "checking for FreeBSD-style shadow passwords""... $ac_c" 1>&6
-echo "configure:5822: checking for FreeBSD-style shadow passwords" >&5
+echo "configure:5948: checking for FreeBSD-style shadow passwords" >&5
 if eval "test \"`echo '$''{'ac_cv_master_passwd'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
 if eval "test \"`echo '$''{'ac_cv_master_passwd'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -5833,7 +5959,7 @@ fi
 
 if test "$with_shadow" = yes ; then
   echo $ac_n "checking for generic shadow passwords""... $ac_c" 1>&6
 
 if test "$with_shadow" = yes ; then
   echo $ac_n "checking for generic shadow passwords""... $ac_c" 1>&6
-echo "configure:5848: checking for generic shadow passwords" >&5
+echo "configure:5974: checking for generic shadow passwords" >&5
 if eval "test \"`echo '$''{'ac_cv_shadow'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
 if eval "test \"`echo '$''{'ac_cv_shadow'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -5844,7 +5970,7 @@ else
   fi
   CPPFLAGS="$CPPFLAGS $X_CFLAGS"
   cat > conftest.$ac_ext <<EOF
   fi
   CPPFLAGS="$CPPFLAGS $X_CFLAGS"
   cat > conftest.$ac_ext <<EOF
-#line 5859 "configure"
+#line 5985 "configure"
 #include "confdefs.h"
 #include <stdlib.h>
                                     #include <unistd.h>
 #include "confdefs.h"
 #include <stdlib.h>
                                     #include <unistd.h>
@@ -5856,7 +5982,7 @@ struct spwd *p = getspnam("nobody");
                        const char *pw = p->sp_pwdp;
 ; return 0; }
 EOF
                        const char *pw = p->sp_pwdp;
 ; return 0; }
 EOF
-if { (eval echo configure:5871: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:5997: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   ac_cv_shadow=yes
 else
   rm -rf conftest*
   ac_cv_shadow=yes
 else
@@ -5877,7 +6003,7 @@ echo "$ac_t""$ac_cv_shadow" 1>&6
     # On some systems (UnixWare 2.1), getspnam() is in -lgen instead of -lc.
     have_getspnam=no
     echo $ac_n "checking for getspnam in -lc""... $ac_c" 1>&6
     # On some systems (UnixWare 2.1), getspnam() is in -lgen instead of -lc.
     have_getspnam=no
     echo $ac_n "checking for getspnam in -lc""... $ac_c" 1>&6
-echo "configure:5892: checking for getspnam in -lc" >&5
+echo "configure:6018: checking for getspnam in -lc" >&5
 ac_lib_var=`echo c'_'getspnam | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 ac_lib_var=`echo c'_'getspnam | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -5885,7 +6011,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lc  $LIBS"
 cat > conftest.$ac_ext <<EOF
   ac_save_LIBS="$LIBS"
 LIBS="-lc  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 5900 "configure"
+#line 6026 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -5896,7 +6022,7 @@ int main() {
 getspnam()
 ; return 0; }
 EOF
 getspnam()
 ; return 0; }
 EOF
-if { (eval echo configure:5911: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:6037: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -5918,7 +6044,7 @@ fi
 
     if test "$have_getspnam" = no ; then
       echo $ac_n "checking for getspnam in -lgen""... $ac_c" 1>&6
 
     if test "$have_getspnam" = no ; then
       echo $ac_n "checking for getspnam in -lgen""... $ac_c" 1>&6
-echo "configure:5933: checking for getspnam in -lgen" >&5
+echo "configure:6059: checking for getspnam in -lgen" >&5
 ac_lib_var=`echo gen'_'getspnam | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 ac_lib_var=`echo gen'_'getspnam | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -5926,7 +6052,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lgen  $LIBS"
 cat > conftest.$ac_ext <<EOF
   ac_save_LIBS="$LIBS"
 LIBS="-lgen  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 5941 "configure"
+#line 6067 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -5937,7 +6063,7 @@ int main() {
 getspnam()
 ; return 0; }
 EOF
 getspnam()
 ; return 0; }
 EOF
-if { (eval echo configure:5952: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:6078: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -5973,7 +6099,7 @@ if test "$enable_locking" = yes ; then
   # On some systems (UnixWare 2.1), crypt() is in -lcrypt instead of -lc.
   have_crypt=no
   echo $ac_n "checking for crypt in -lc""... $ac_c" 1>&6
   # On some systems (UnixWare 2.1), crypt() is in -lcrypt instead of -lc.
   have_crypt=no
   echo $ac_n "checking for crypt in -lc""... $ac_c" 1>&6
-echo "configure:5988: checking for crypt in -lc" >&5
+echo "configure:6114: checking for crypt in -lc" >&5
 ac_lib_var=`echo c'_'crypt | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 ac_lib_var=`echo c'_'crypt | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -5981,7 +6107,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lc  $LIBS"
 cat > conftest.$ac_ext <<EOF
   ac_save_LIBS="$LIBS"
 LIBS="-lc  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 5996 "configure"
+#line 6122 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -5992,7 +6118,7 @@ int main() {
 crypt()
 ; return 0; }
 EOF
 crypt()
 ; return 0; }
 EOF
-if { (eval echo configure:6007: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:6133: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -6014,7 +6140,7 @@ fi
 
   if test "$have_crypt" = no ; then
     echo $ac_n "checking for crypt in -lcrypt""... $ac_c" 1>&6
 
   if test "$have_crypt" = no ; then
     echo $ac_n "checking for crypt in -lcrypt""... $ac_c" 1>&6
-echo "configure:6029: checking for crypt in -lcrypt" >&5
+echo "configure:6155: checking for crypt in -lcrypt" >&5
 ac_lib_var=`echo crypt'_'crypt | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 ac_lib_var=`echo crypt'_'crypt | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -6022,7 +6148,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lcrypt  $LIBS"
 cat > conftest.$ac_ext <<EOF
   ac_save_LIBS="$LIBS"
 LIBS="-lcrypt  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 6037 "configure"
+#line 6163 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -6033,7 +6159,7 @@ int main() {
 crypt()
 ; return 0; }
 EOF
 crypt()
 ; return 0; }
 EOF
-if { (eval echo configure:6048: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:6174: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -6117,7 +6243,7 @@ fi
 
     /*)
      echo $ac_n "checking for Motif headers""... $ac_c" 1>&6
 
     /*)
      echo $ac_n "checking for Motif headers""... $ac_c" 1>&6
-echo "configure:6132: checking for Motif headers" >&5
+echo "configure:6258: checking for Motif headers" >&5
      d=$with_motif/include
      if test -d $d; then
        X_CFLAGS="-I$d $X_CFLAGS"
      d=$with_motif/include
      if test -d $d; then
        X_CFLAGS="-I$d $X_CFLAGS"
@@ -6127,7 +6253,7 @@ echo "configure:6132: checking for Motif headers" >&5
      fi
 
      echo $ac_n "checking for Motif libs""... $ac_c" 1>&6
      fi
 
      echo $ac_n "checking for Motif libs""... $ac_c" 1>&6
-echo "configure:6142: checking for Motif libs" >&5
+echo "configure:6268: checking for Motif libs" >&5
      d=$with_motif/lib
      if test -d $d; then
        X_LIBS="-L$d $X_LIBS"
      d=$with_motif/lib
      if test -d $d; then
        X_LIBS="-L$d $X_LIBS"
@@ -6166,17 +6292,17 @@ if test "$with_motif" = yes; then
   CPPFLAGS="$CPPFLAGS $X_CFLAGS"
   ac_safe=`echo "Xm/Xm.h" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for Xm/Xm.h""... $ac_c" 1>&6
   CPPFLAGS="$CPPFLAGS $X_CFLAGS"
   ac_safe=`echo "Xm/Xm.h" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for Xm/Xm.h""... $ac_c" 1>&6
-echo "configure:6181: checking for Xm/Xm.h" >&5
+echo "configure:6307: checking for Xm/Xm.h" >&5
 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 6186 "configure"
+#line 6312 "configure"
 #include "confdefs.h"
 #include <Xm/Xm.h>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
 #include "confdefs.h"
 #include <Xm/Xm.h>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:6191: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:6317: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
 if test -z "$ac_err"; then
   rm -rf conftest*
 ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
 if test -z "$ac_err"; then
   rm -rf conftest*
@@ -6215,17 +6341,17 @@ if test "$have_motif" = yes; then
   CPPFLAGS="$CPPFLAGS $X_CFLAGS"
   ac_safe=`echo "Xm/ComboBox.h" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for Xm/ComboBox.h""... $ac_c" 1>&6
   CPPFLAGS="$CPPFLAGS $X_CFLAGS"
   ac_safe=`echo "Xm/ComboBox.h" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for Xm/ComboBox.h""... $ac_c" 1>&6
-echo "configure:6230: checking for Xm/ComboBox.h" >&5
+echo "configure:6356: checking for Xm/ComboBox.h" >&5
 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 6235 "configure"
+#line 6361 "configure"
 #include "confdefs.h"
 #include <Xm/ComboBox.h>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
 #include "confdefs.h"
 #include <Xm/ComboBox.h>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:6240: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:6366: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
 if test -z "$ac_err"; then
   rm -rf conftest*
 ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
 if test -z "$ac_err"; then
   rm -rf conftest*
@@ -6288,7 +6414,7 @@ esac
 
     /*)
      echo $ac_n "checking for Gtk headers""... $ac_c" 1>&6
 
     /*)
      echo $ac_n "checking for Gtk headers""... $ac_c" 1>&6
-echo "configure:6303: checking for Gtk headers" >&5
+echo "configure:6429: checking for Gtk headers" >&5
      d=$with_gtk/include
      if test -d $d; then
        X_CFLAGS="-I$d $X_CFLAGS"
      d=$with_gtk/include
      if test -d $d; then
        X_CFLAGS="-I$d $X_CFLAGS"
@@ -6298,7 +6424,7 @@ echo "configure:6303: checking for Gtk headers" >&5
      fi
 
      echo $ac_n "checking for Gtk libs""... $ac_c" 1>&6
      fi
 
      echo $ac_n "checking for Gtk libs""... $ac_c" 1>&6
-echo "configure:6313: checking for Gtk libs" >&5
+echo "configure:6439: checking for Gtk libs" >&5
      d=$with_gtk/lib
      if test -d $d; then
        X_LIBS="-L$d $X_LIBS"
      d=$with_gtk/lib
      if test -d $d; then
        X_LIBS="-L$d $X_LIBS"
@@ -6356,7 +6482,7 @@ esac
 
     /*)
      echo $ac_n "checking for Gnome headers""... $ac_c" 1>&6
 
     /*)
      echo $ac_n "checking for Gnome headers""... $ac_c" 1>&6
-echo "configure:6371: checking for Gnome headers" >&5
+echo "configure:6497: checking for Gnome headers" >&5
      d=$with_gnome/include
      if test -d $d; then
        X_CFLAGS="-I$d $X_CFLAGS"
      d=$with_gnome/include
      if test -d $d; then
        X_CFLAGS="-I$d $X_CFLAGS"
@@ -6366,7 +6492,7 @@ echo "configure:6371: checking for Gnome headers" >&5
      fi
 
      echo $ac_n "checking for Gnome libs""... $ac_c" 1>&6
      fi
 
      echo $ac_n "checking for Gnome libs""... $ac_c" 1>&6
-echo "configure:6381: checking for Gnome libs" >&5
+echo "configure:6507: checking for Gnome libs" >&5
      d=$with_gnome/lib
      if test -d $d; then
        X_LIBS="-L$d $X_LIBS"
      d=$with_gnome/lib
      if test -d $d; then
        X_LIBS="-L$d $X_LIBS"
@@ -6422,7 +6548,7 @@ do
 # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
 # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:6437: checking for $ac_word" >&5
+echo "configure:6563: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_path_glib_config'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
 if eval "test \"`echo '$''{'ac_cv_path_glib_config'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -6462,7 +6588,7 @@ do
 # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
 # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:6477: checking for $ac_word" >&5
+echo "configure:6603: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_path_gtk_config'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
 if eval "test \"`echo '$''{'ac_cv_path_gtk_config'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -6504,7 +6630,7 @@ do
 # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
 # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:6519: checking for $ac_word" >&5
+echo "configure:6645: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_path_gnome_config'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
 if eval "test \"`echo '$''{'ac_cv_path_gnome_config'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -6550,7 +6676,7 @@ done
 
   if test "$have_gtk" = yes; then
     echo $ac_n "checking Gtk version number""... $ac_c" 1>&6
 
   if test "$have_gtk" = yes; then
     echo $ac_n "checking Gtk version number""... $ac_c" 1>&6
-echo "configure:6565: checking Gtk version number" >&5
+echo "configure:6691: checking Gtk version number" >&5
 if eval "test \"`echo '$''{'ac_cv_gtk_version_string'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
 if eval "test \"`echo '$''{'ac_cv_gtk_version_string'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -6579,7 +6705,7 @@ echo "$ac_t""$ac_cv_gtk_version_string" 1>&6
 
   if test "$have_gtk" = yes; then
     echo $ac_n "checking for Gtk includes""... $ac_c" 1>&6
 
   if test "$have_gtk" = yes; then
     echo $ac_n "checking for Gtk includes""... $ac_c" 1>&6
-echo "configure:6594: checking for Gtk includes" >&5
+echo "configure:6720: checking for Gtk includes" >&5
 if eval "test \"`echo '$''{'ac_cv_gtk_config_cflags'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
 if eval "test \"`echo '$''{'ac_cv_gtk_config_cflags'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -6588,7 +6714,7 @@ fi
 
 echo "$ac_t""$ac_cv_gtk_config_cflags" 1>&6
     echo $ac_n "checking for Gtk libs""... $ac_c" 1>&6
 
 echo "$ac_t""$ac_cv_gtk_config_cflags" 1>&6
     echo $ac_n "checking for Gtk libs""... $ac_c" 1>&6
-echo "configure:6603: checking for Gtk libs" >&5
+echo "configure:6729: checking for Gtk libs" >&5
 if eval "test \"`echo '$''{'ac_cv_gtk_config_libs'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
 if eval "test \"`echo '$''{'ac_cv_gtk_config_libs'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -6605,7 +6731,7 @@ echo "$ac_t""$ac_cv_gtk_config_libs" 1>&6
   if test "$have_gnome" = yes -a "$have_gtk" = yes; then
     gnome_config_libs="capplet gnomeui"
     echo $ac_n "checking for Gnome capplet includes""... $ac_c" 1>&6
   if test "$have_gnome" = yes -a "$have_gtk" = yes; then
     gnome_config_libs="capplet gnomeui"
     echo $ac_n "checking for Gnome capplet includes""... $ac_c" 1>&6
-echo "configure:6620: checking for Gnome capplet includes" >&5
+echo "configure:6746: checking for Gnome capplet includes" >&5
     if eval "test \"`echo '$''{'ac_cv_gnome_config_cflags'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
     if eval "test \"`echo '$''{'ac_cv_gnome_config_cflags'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -6628,7 +6754,7 @@ fi
 
   if test "$have_gnome" = yes -a "$have_gtk" = yes; then
     echo $ac_n "checking for Gnome capplet libs""... $ac_c" 1>&6
 
   if test "$have_gnome" = yes -a "$have_gtk" = yes; then
     echo $ac_n "checking for Gnome capplet libs""... $ac_c" 1>&6
-echo "configure:6643: checking for Gnome capplet libs" >&5
+echo "configure:6769: checking for Gnome capplet libs" >&5
     if eval "test \"`echo '$''{'ac_cv_gnome_config_libs'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
     if eval "test \"`echo '$''{'ac_cv_gnome_config_libs'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -6689,7 +6815,7 @@ fi
 have_lesstif=no
 if test "$have_motif" = yes ; then
   echo $ac_n "checking whether Motif is really LessTif""... $ac_c" 1>&6
 have_lesstif=no
 if test "$have_motif" = yes ; then
   echo $ac_n "checking whether Motif is really LessTif""... $ac_c" 1>&6
-echo "configure:6704: checking whether Motif is really LessTif" >&5
+echo "configure:6830: checking whether Motif is really LessTif" >&5
 if eval "test \"`echo '$''{'ac_cv_have_lesstif'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
 if eval "test \"`echo '$''{'ac_cv_have_lesstif'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -6700,14 +6826,14 @@ else
   fi
   CPPFLAGS="$CPPFLAGS $X_CFLAGS"
   cat > conftest.$ac_ext <<EOF
   fi
   CPPFLAGS="$CPPFLAGS $X_CFLAGS"
   cat > conftest.$ac_ext <<EOF
-#line 6715 "configure"
+#line 6841 "configure"
 #include "confdefs.h"
 #include <Xm/Xm.h>
 int main() {
 long vers = LesstifVersion;
 ; return 0; }
 EOF
 #include "confdefs.h"
 #include <Xm/Xm.h>
 int main() {
 long vers = LesstifVersion;
 ; return 0; }
 EOF
-if { (eval echo configure:6722: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:6848: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   ac_cv_have_lesstif=yes
 else
   rm -rf conftest*
   ac_cv_have_lesstif=yes
 else
@@ -6732,7 +6858,7 @@ if test "$have_lesstif" = yes ; then
   ltv=unknown
   echo unknown > conftest-lt
   echo $ac_n "checking LessTif version number""... $ac_c" 1>&6
   ltv=unknown
   echo unknown > conftest-lt
   echo $ac_n "checking LessTif version number""... $ac_c" 1>&6
-echo "configure:6747: checking LessTif version number" >&5
+echo "configure:6873: checking LessTif version number" >&5
 if eval "test \"`echo '$''{'ac_cv_lesstif_version_string'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
 if eval "test \"`echo '$''{'ac_cv_lesstif_version_string'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -6747,7 +6873,7 @@ else
                      ac_cv_lesstif_version_string=unknown
 else
   cat > conftest.$ac_ext <<EOF
                      ac_cv_lesstif_version_string=unknown
 else
   cat > conftest.$ac_ext <<EOF
-#line 6762 "configure"
+#line 6888 "configure"
 #include "confdefs.h"
 #include <stdio.h>
                      #include <Xm/Xm.h>
 #include "confdefs.h"
 #include <stdio.h>
                      #include <Xm/Xm.h>
@@ -6760,7 +6886,7 @@ else
                        exit(0);
                      }
 EOF
                        exit(0);
                      }
 EOF
-if { (eval echo configure:6775: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
+if { (eval echo configure:6901: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
 then
   ltv=`cat conftest-lt`
                      ac_cv_lesstif_version=`echo $ltv | sed 's/ .*//'`
 then
   ltv=`cat conftest-lt`
                      ac_cv_lesstif_version=`echo $ltv | sed 's/ .*//'`
@@ -6790,7 +6916,7 @@ if test "$have_motif" = yes ; then
   mtv=unknown
   echo unknown > conftest-mt
   echo $ac_n "checking Motif version number""... $ac_c" 1>&6
   mtv=unknown
   echo unknown > conftest-mt
   echo $ac_n "checking Motif version number""... $ac_c" 1>&6
-echo "configure:6805: checking Motif version number" >&5
+echo "configure:6931: checking Motif version number" >&5
 if eval "test \"`echo '$''{'ac_cv_motif_version_string'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
 if eval "test \"`echo '$''{'ac_cv_motif_version_string'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -6805,7 +6931,7 @@ else
                      ac_cv_motif_version_string=unknown
 else
   cat > conftest.$ac_ext <<EOF
                      ac_cv_motif_version_string=unknown
 else
   cat > conftest.$ac_ext <<EOF
-#line 6820 "configure"
+#line 6946 "configure"
 #include "confdefs.h"
 #include <stdio.h>
                      #include <Xm/Xm.h>
 #include "confdefs.h"
 #include <stdio.h>
                      #include <Xm/Xm.h>
@@ -6818,7 +6944,7 @@ else
                        exit(0);
                      }
 EOF
                        exit(0);
                      }
 EOF
-if { (eval echo configure:6833: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
+if { (eval echo configure:6959: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
 then
   mtv=`cat conftest-mt`
                      ac_cv_motif_version=`echo $mtv | sed 's/ .*//'`
 then
   mtv=`cat conftest-mt`
                      ac_cv_motif_version=`echo $mtv | sed 's/ .*//'`
@@ -6862,7 +6988,7 @@ fi
 motif_requires_xpm=no
 if test "$have_motif" = yes ; then
    echo $ac_n "checking whether Motif requires XPM""... $ac_c" 1>&6
 motif_requires_xpm=no
 if test "$have_motif" = yes ; then
    echo $ac_n "checking whether Motif requires XPM""... $ac_c" 1>&6
-echo "configure:6877: checking whether Motif requires XPM" >&5
+echo "configure:7003: checking whether Motif requires XPM" >&5
    if test "$motif_version" = "unknown" || test "$motif_version" -ge 2000
    then
      motif_requires_xpm=yes
    if test "$motif_version" = "unknown" || test "$motif_version" -ge 2000
    then
      motif_requires_xpm=yes
@@ -6904,7 +7030,7 @@ if test "$have_motif" = yes ; then
   LDFLAGS="$LDFLAGS $X_LIBS $X_EXTRA_LIBS"
 
   echo $ac_n "checking for XpQueryExtension in -lXp""... $ac_c" 1>&6
   LDFLAGS="$LDFLAGS $X_LIBS $X_EXTRA_LIBS"
 
   echo $ac_n "checking for XpQueryExtension in -lXp""... $ac_c" 1>&6
-echo "configure:6919: checking for XpQueryExtension in -lXp" >&5
+echo "configure:7045: checking for XpQueryExtension in -lXp" >&5
 ac_lib_var=`echo Xp'_'XpQueryExtension | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 ac_lib_var=`echo Xp'_'XpQueryExtension | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -6912,7 +7038,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lXp -lX11 -lXext -lm $LIBS"
 cat > conftest.$ac_ext <<EOF
   ac_save_LIBS="$LIBS"
 LIBS="-lXp -lX11 -lXext -lm $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 6927 "configure"
+#line 7053 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -6923,7 +7049,7 @@ int main() {
 XpQueryExtension()
 ; return 0; }
 EOF
 XpQueryExtension()
 ; return 0; }
 EOF
-if { (eval echo configure:6938: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:7064: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -6977,7 +7103,7 @@ if test "$have_motif" = yes ; then
   LDFLAGS="$LDFLAGS $X_LIBS $X_EXTRA_LIBS"
 
   echo $ac_n "checking for _Xsetlocale in -lXintl""... $ac_c" 1>&6
   LDFLAGS="$LDFLAGS $X_LIBS $X_EXTRA_LIBS"
 
   echo $ac_n "checking for _Xsetlocale in -lXintl""... $ac_c" 1>&6
-echo "configure:6992: checking for _Xsetlocale in -lXintl" >&5
+echo "configure:7118: checking for _Xsetlocale in -lXintl" >&5
 ac_lib_var=`echo Xintl'_'_Xsetlocale | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 ac_lib_var=`echo Xintl'_'_Xsetlocale | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -6985,7 +7111,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lXintl -lX11 -lXext -lm $LIBS"
 cat > conftest.$ac_ext <<EOF
   ac_save_LIBS="$LIBS"
 LIBS="-lXintl -lX11 -lXext -lm $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 7000 "configure"
+#line 7126 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -6996,7 +7122,7 @@ int main() {
 _Xsetlocale()
 ; return 0; }
 EOF
 _Xsetlocale()
 ; return 0; }
 EOF
-if { (eval echo configure:7011: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:7137: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -7053,7 +7179,7 @@ fi
 
     /*)
      echo $ac_n "checking for GL headers""... $ac_c" 1>&6
 
     /*)
      echo $ac_n "checking for GL headers""... $ac_c" 1>&6
-echo "configure:7068: checking for GL headers" >&5
+echo "configure:7194: checking for GL headers" >&5
      d=$with_gl/include
      if test -d $d; then
        X_CFLAGS="-I$d $X_CFLAGS"
      d=$with_gl/include
      if test -d $d; then
        X_CFLAGS="-I$d $X_CFLAGS"
@@ -7063,7 +7189,7 @@ echo "configure:7068: checking for GL headers" >&5
      fi
 
      echo $ac_n "checking for GL libs""... $ac_c" 1>&6
      fi
 
      echo $ac_n "checking for GL libs""... $ac_c" 1>&6
-echo "configure:7078: checking for GL libs" >&5
+echo "configure:7204: checking for GL libs" >&5
      d=$with_gl/lib
      if test -d $d; then
        X_LIBS="-L$d $X_LIBS"
      d=$with_gl/lib
      if test -d $d; then
        X_LIBS="-L$d $X_LIBS"
@@ -7099,17 +7225,17 @@ if test "$with_gl" = yes; then
   CPPFLAGS="$CPPFLAGS $X_CFLAGS"
   ac_safe=`echo "GL/gl.h" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for GL/gl.h""... $ac_c" 1>&6
   CPPFLAGS="$CPPFLAGS $X_CFLAGS"
   ac_safe=`echo "GL/gl.h" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for GL/gl.h""... $ac_c" 1>&6
-echo "configure:7114: checking for GL/gl.h" >&5
+echo "configure:7240: checking for GL/gl.h" >&5
 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 7119 "configure"
+#line 7245 "configure"
 #include "confdefs.h"
 #include <GL/gl.h>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
 #include "confdefs.h"
 #include <GL/gl.h>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:7124: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:7250: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
 if test -z "$ac_err"; then
   rm -rf conftest*
 ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
 if test -z "$ac_err"; then
   rm -rf conftest*
@@ -7140,17 +7266,17 @@ fi
   CPPFLAGS="$CPPFLAGS $X_CFLAGS"
   ac_safe=`echo "GL/glx.h" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for GL/glx.h""... $ac_c" 1>&6
   CPPFLAGS="$CPPFLAGS $X_CFLAGS"
   ac_safe=`echo "GL/glx.h" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for GL/glx.h""... $ac_c" 1>&6
-echo "configure:7155: checking for GL/glx.h" >&5
+echo "configure:7281: checking for GL/glx.h" >&5
 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 7160 "configure"
+#line 7286 "configure"
 #include "confdefs.h"
 #include <GL/glx.h>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
 #include "confdefs.h"
 #include <GL/glx.h>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:7165: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:7291: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
 if test -z "$ac_err"; then
   rm -rf conftest*
 ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
 if test -z "$ac_err"; then
   rm -rf conftest*
@@ -7182,7 +7308,7 @@ fi
     # to link against.
     #
     echo $ac_n "checking whether GL is really MesaGL""... $ac_c" 1>&6
     # to link against.
     #
     echo $ac_n "checking whether GL is really MesaGL""... $ac_c" 1>&6
-echo "configure:7197: checking whether GL is really MesaGL" >&5
+echo "configure:7323: checking whether GL is really MesaGL" >&5
 if eval "test \"`echo '$''{'ac_cv_have_mesa_gl'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
 if eval "test \"`echo '$''{'ac_cv_have_mesa_gl'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -7194,7 +7320,7 @@ else
   fi
   CPPFLAGS="$CPPFLAGS $X_CFLAGS"
   cat > conftest.$ac_ext <<EOF
   fi
   CPPFLAGS="$CPPFLAGS $X_CFLAGS"
   cat > conftest.$ac_ext <<EOF
-#line 7209 "configure"
+#line 7335 "configure"
 #include "confdefs.h"
 #include <GL/glx.h>
 EOF
 #include "confdefs.h"
 #include <GL/glx.h>
 EOF
@@ -7223,7 +7349,7 @@ echo "$ac_t""$ac_cv_have_mesa_gl" 1>&6
     #
     if test "$ac_have_mesa_gl" = yes; then
       echo $ac_n "checking for pthread_create in -lpthread""... $ac_c" 1>&6
     #
     if test "$ac_have_mesa_gl" = yes; then
       echo $ac_n "checking for pthread_create in -lpthread""... $ac_c" 1>&6
-echo "configure:7238: checking for pthread_create in -lpthread" >&5
+echo "configure:7364: checking for pthread_create in -lpthread" >&5
 ac_lib_var=`echo pthread'_'pthread_create | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 ac_lib_var=`echo pthread'_'pthread_create | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -7231,7 +7357,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lpthread  $LIBS"
 cat > conftest.$ac_ext <<EOF
   ac_save_LIBS="$LIBS"
 LIBS="-lpthread  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 7246 "configure"
+#line 7372 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -7242,7 +7368,7 @@ int main() {
 pthread_create()
 ; return 0; }
 EOF
 pthread_create()
 ; return 0; }
 EOF
-if { (eval echo configure:7257: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:7383: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -7289,7 +7415,7 @@ fi
   LDFLAGS="$LDFLAGS $X_LIBS $X_EXTRA_LIBS"
 
   echo $ac_n "checking for glXCreateContext in -lMesaGL""... $ac_c" 1>&6
   LDFLAGS="$LDFLAGS $X_LIBS $X_EXTRA_LIBS"
 
   echo $ac_n "checking for glXCreateContext in -lMesaGL""... $ac_c" 1>&6
-echo "configure:7304: checking for glXCreateContext in -lMesaGL" >&5
+echo "configure:7430: checking for glXCreateContext in -lMesaGL" >&5
 ac_lib_var=`echo MesaGL'_'glXCreateContext | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 ac_lib_var=`echo MesaGL'_'glXCreateContext | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -7297,7 +7423,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lMesaGL -lMesaGLU $GL_LIBS -lX11 -lXext -lm $LIBS"
 cat > conftest.$ac_ext <<EOF
   ac_save_LIBS="$LIBS"
 LIBS="-lMesaGL -lMesaGLU $GL_LIBS -lX11 -lXext -lm $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 7312 "configure"
+#line 7438 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -7308,7 +7434,7 @@ int main() {
 glXCreateContext()
 ; return 0; }
 EOF
 glXCreateContext()
 ; return 0; }
 EOF
-if { (eval echo configure:7323: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:7449: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -7354,7 +7480,7 @@ fi
   LDFLAGS="$LDFLAGS $X_LIBS $X_EXTRA_LIBS"
 
   echo $ac_n "checking for glXCreateContext in -lGL""... $ac_c" 1>&6
   LDFLAGS="$LDFLAGS $X_LIBS $X_EXTRA_LIBS"
 
   echo $ac_n "checking for glXCreateContext in -lGL""... $ac_c" 1>&6
-echo "configure:7369: checking for glXCreateContext in -lGL" >&5
+echo "configure:7495: checking for glXCreateContext in -lGL" >&5
 ac_lib_var=`echo GL'_'glXCreateContext | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 ac_lib_var=`echo GL'_'glXCreateContext | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -7362,7 +7488,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lGL -lGLU $GL_LIBS -lX11 -lXext -lm $LIBS"
 cat > conftest.$ac_ext <<EOF
   ac_save_LIBS="$LIBS"
 LIBS="-lGL -lGLU $GL_LIBS -lX11 -lXext -lm $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 7377 "configure"
+#line 7503 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -7373,7 +7499,7 @@ int main() {
 glXCreateContext()
 ; return 0; }
 EOF
 glXCreateContext()
 ; return 0; }
 EOF
-if { (eval echo configure:7388: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:7514: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -7431,12 +7557,12 @@ EOF
     if test "$ac_have_mesa_gl" = yes; then
 
       echo $ac_n "checking MesaGL version number""... $ac_c" 1>&6
     if test "$ac_have_mesa_gl" = yes; then
 
       echo $ac_n "checking MesaGL version number""... $ac_c" 1>&6
-echo "configure:7446: checking MesaGL version number" >&5
+echo "configure:7572: checking MesaGL version number" >&5
 if eval "test \"`echo '$''{'ac_cv_mesagl_version_string'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
 if eval "test \"`echo '$''{'ac_cv_mesagl_version_string'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 7451 "configure"
+#line 7577 "configure"
 #include "confdefs.h"
 #include <GL/gl.h>
 configure: MESA_MAJOR_VERSION MESA_MINOR_VERSION
 #include "confdefs.h"
 #include <GL/gl.h>
 configure: MESA_MAJOR_VERSION MESA_MINOR_VERSION
@@ -7502,7 +7628,7 @@ echo "$ac_t""$ac_cv_mesagl_version_string" 1>&6
   LDFLAGS="$LDFLAGS $X_LIBS $X_EXTRA_LIBS"
 
   echo $ac_n "checking for glBindTexture in -l$gl_lib_1""... $ac_c" 1>&6
   LDFLAGS="$LDFLAGS $X_LIBS $X_EXTRA_LIBS"
 
   echo $ac_n "checking for glBindTexture in -l$gl_lib_1""... $ac_c" 1>&6
-echo "configure:7517: checking for glBindTexture in -l$gl_lib_1" >&5
+echo "configure:7643: checking for glBindTexture in -l$gl_lib_1" >&5
 ac_lib_var=`echo $gl_lib_1'_'glBindTexture | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 ac_lib_var=`echo $gl_lib_1'_'glBindTexture | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -7510,7 +7636,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-l$gl_lib_1 $GL_LIBS -lX11 -lXext -lm $LIBS"
 cat > conftest.$ac_ext <<EOF
   ac_save_LIBS="$LIBS"
 LIBS="-l$gl_lib_1 $GL_LIBS -lX11 -lXext -lm $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 7525 "configure"
+#line 7651 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -7521,7 +7647,7 @@ int main() {
 glBindTexture()
 ; return 0; }
 EOF
 glBindTexture()
 ; return 0; }
 EOF
-if { (eval echo configure:7536: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:7662: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -7582,7 +7708,7 @@ fi
 
     /*)
      echo $ac_n "checking for GLE headers""... $ac_c" 1>&6
 
     /*)
      echo $ac_n "checking for GLE headers""... $ac_c" 1>&6
-echo "configure:7597: checking for GLE headers" >&5
+echo "configure:7723: checking for GLE headers" >&5
      d=$with_gle/include
      if test -d $d; then
        X_CFLAGS="-I$d $X_CFLAGS"
      d=$with_gle/include
      if test -d $d; then
        X_CFLAGS="-I$d $X_CFLAGS"
@@ -7592,7 +7718,7 @@ echo "configure:7597: checking for GLE headers" >&5
      fi
 
      echo $ac_n "checking for GLE libs""... $ac_c" 1>&6
      fi
 
      echo $ac_n "checking for GLE libs""... $ac_c" 1>&6
-echo "configure:7607: checking for GLE libs" >&5
+echo "configure:7733: checking for GLE libs" >&5
      d=$with_gle/lib
      if test -d $d; then
        X_LIBS="-L$d $X_LIBS"
      d=$with_gle/lib
      if test -d $d; then
        X_LIBS="-L$d $X_LIBS"
@@ -7628,17 +7754,17 @@ if test "$with_gle" = yes; then
   CPPFLAGS="$CPPFLAGS $X_CFLAGS"
   ac_safe=`echo "GL/gle.h" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for GL/gle.h""... $ac_c" 1>&6
   CPPFLAGS="$CPPFLAGS $X_CFLAGS"
   ac_safe=`echo "GL/gle.h" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for GL/gle.h""... $ac_c" 1>&6
-echo "configure:7643: checking for GL/gle.h" >&5
+echo "configure:7769: checking for GL/gle.h" >&5
 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 7648 "configure"
+#line 7774 "configure"
 #include "confdefs.h"
 #include <GL/gle.h>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
 #include "confdefs.h"
 #include <GL/gle.h>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:7653: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:7779: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
 if test -z "$ac_err"; then
   rm -rf conftest*
 ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
 if test -z "$ac_err"; then
   rm -rf conftest*
@@ -7671,17 +7797,17 @@ fi
   CPPFLAGS="$CPPFLAGS $X_CFLAGS"
   ac_safe=`echo "GL/gutil.h" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for GL/gutil.h""... $ac_c" 1>&6
   CPPFLAGS="$CPPFLAGS $X_CFLAGS"
   ac_safe=`echo "GL/gutil.h" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for GL/gutil.h""... $ac_c" 1>&6
-echo "configure:7686: checking for GL/gutil.h" >&5
+echo "configure:7812: checking for GL/gutil.h" >&5
 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 7691 "configure"
+#line 7817 "configure"
 #include "confdefs.h"
 #include <GL/gutil.h>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
 #include "confdefs.h"
 #include <GL/gutil.h>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:7696: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:7822: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
 if test -z "$ac_err"; then
   rm -rf conftest*
 ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
 if test -z "$ac_err"; then
   rm -rf conftest*
@@ -7712,17 +7838,17 @@ fi
   CPPFLAGS="$CPPFLAGS $X_CFLAGS"
   ac_safe=`echo "GL/tube.h" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for GL/tube.h""... $ac_c" 1>&6
   CPPFLAGS="$CPPFLAGS $X_CFLAGS"
   ac_safe=`echo "GL/tube.h" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for GL/tube.h""... $ac_c" 1>&6
-echo "configure:7727: checking for GL/tube.h" >&5
+echo "configure:7853: checking for GL/tube.h" >&5
 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 7732 "configure"
+#line 7858 "configure"
 #include "confdefs.h"
 #include <GL/tube.h>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
 #include "confdefs.h"
 #include <GL/tube.h>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:7737: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:7863: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
 if test -z "$ac_err"; then
   rm -rf conftest*
 ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
 if test -z "$ac_err"; then
   rm -rf conftest*
@@ -7768,7 +7894,7 @@ fi
   LDFLAGS="$LDFLAGS $X_LIBS $X_EXTRA_LIBS"
 
   echo $ac_n "checking for gleCreateGC in -lgle""... $ac_c" 1>&6
   LDFLAGS="$LDFLAGS $X_LIBS $X_EXTRA_LIBS"
 
   echo $ac_n "checking for gleCreateGC in -lgle""... $ac_c" 1>&6
-echo "configure:7783: checking for gleCreateGC in -lgle" >&5
+echo "configure:7909: checking for gleCreateGC in -lgle" >&5
 ac_lib_var=`echo gle'_'gleCreateGC | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 ac_lib_var=`echo gle'_'gleCreateGC | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -7776,7 +7902,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lgle $GL_LIBS -lX11 -lXext -lm $LIBS"
 cat > conftest.$ac_ext <<EOF
   ac_save_LIBS="$LIBS"
 LIBS="-lgle $GL_LIBS -lX11 -lXext -lm $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 7791 "configure"
+#line 7917 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -7787,7 +7913,7 @@ int main() {
 gleCreateGC()
 ; return 0; }
 EOF
 gleCreateGC()
 ; return 0; }
 EOF
-if { (eval echo configure:7802: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:7928: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -7847,7 +7973,7 @@ fi
   LDFLAGS="$LDFLAGS $X_LIBS $X_EXTRA_LIBS"
 
   echo $ac_n "checking for uview_direction in -lgle""... $ac_c" 1>&6
   LDFLAGS="$LDFLAGS $X_LIBS $X_EXTRA_LIBS"
 
   echo $ac_n "checking for uview_direction in -lgle""... $ac_c" 1>&6
-echo "configure:7862: checking for uview_direction in -lgle" >&5
+echo "configure:7988: checking for uview_direction in -lgle" >&5
 ac_lib_var=`echo gle'_'uview_direction | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 ac_lib_var=`echo gle'_'uview_direction | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -7855,7 +7981,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lgle $GL_LIBS -lX11 -lXext -lm $LIBS"
 cat > conftest.$ac_ext <<EOF
   ac_save_LIBS="$LIBS"
 LIBS="-lgle $GL_LIBS -lX11 -lXext -lm $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 7870 "configure"
+#line 7996 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -7866,7 +7992,7 @@ int main() {
 uview_direction()
 ; return 0; }
 EOF
 uview_direction()
 ; return 0; }
 EOF
-if { (eval echo configure:7881: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:8007: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -7911,7 +8037,7 @@ fi
   LDFLAGS="$LDFLAGS $X_LIBS $X_EXTRA_LIBS"
 
   echo $ac_n "checking for uview_direction_d in -lmatrix""... $ac_c" 1>&6
   LDFLAGS="$LDFLAGS $X_LIBS $X_EXTRA_LIBS"
 
   echo $ac_n "checking for uview_direction_d in -lmatrix""... $ac_c" 1>&6
-echo "configure:7926: checking for uview_direction_d in -lmatrix" >&5
+echo "configure:8052: checking for uview_direction_d in -lmatrix" >&5
 ac_lib_var=`echo matrix'_'uview_direction_d | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 ac_lib_var=`echo matrix'_'uview_direction_d | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -7919,7 +8045,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lmatrix $GL_LIBS -lX11 -lXext -lm $LIBS"
 cat > conftest.$ac_ext <<EOF
   ac_save_LIBS="$LIBS"
 LIBS="-lmatrix $GL_LIBS -lX11 -lXext -lm $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 7934 "configure"
+#line 8060 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -7930,7 +8056,7 @@ int main() {
 uview_direction_d()
 ; return 0; }
 EOF
 uview_direction_d()
 ; return 0; }
 EOF
-if { (eval echo configure:7945: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:8071: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -8003,7 +8129,7 @@ fi
 
     /*)
      echo $ac_n "checking for XPM headers""... $ac_c" 1>&6
 
     /*)
      echo $ac_n "checking for XPM headers""... $ac_c" 1>&6
-echo "configure:8018: checking for XPM headers" >&5
+echo "configure:8144: checking for XPM headers" >&5
      d=$with_xpm/include
      if test -d $d; then
        X_CFLAGS="-I$d $X_CFLAGS"
      d=$with_xpm/include
      if test -d $d; then
        X_CFLAGS="-I$d $X_CFLAGS"
@@ -8013,7 +8139,7 @@ echo "configure:8018: checking for XPM headers" >&5
      fi
 
      echo $ac_n "checking for XPM libs""... $ac_c" 1>&6
      fi
 
      echo $ac_n "checking for XPM libs""... $ac_c" 1>&6
-echo "configure:8028: checking for XPM libs" >&5
+echo "configure:8154: checking for XPM libs" >&5
      d=$with_xpm/lib
      if test -d $d; then
        X_LIBS="-L$d $X_LIBS"
      d=$with_xpm/lib
      if test -d $d; then
        X_LIBS="-L$d $X_LIBS"
@@ -8046,17 +8172,17 @@ if test "$with_xpm" = yes; then
   CPPFLAGS="$CPPFLAGS $X_CFLAGS"
   ac_safe=`echo "X11/xpm.h" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for X11/xpm.h""... $ac_c" 1>&6
   CPPFLAGS="$CPPFLAGS $X_CFLAGS"
   ac_safe=`echo "X11/xpm.h" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for X11/xpm.h""... $ac_c" 1>&6
-echo "configure:8061: checking for X11/xpm.h" >&5
+echo "configure:8187: checking for X11/xpm.h" >&5
 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 8066 "configure"
+#line 8192 "configure"
 #include "confdefs.h"
 #include <X11/xpm.h>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
 #include "confdefs.h"
 #include <X11/xpm.h>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:8071: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:8197: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
 if test -z "$ac_err"; then
   rm -rf conftest*
 ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
 if test -z "$ac_err"; then
   rm -rf conftest*
@@ -8122,7 +8248,7 @@ fi
 
     /*)
      echo $ac_n "checking for XSHM headers""... $ac_c" 1>&6
 
     /*)
      echo $ac_n "checking for XSHM headers""... $ac_c" 1>&6
-echo "configure:8137: checking for XSHM headers" >&5
+echo "configure:8263: checking for XSHM headers" >&5
      d=$with_xshm/include
      if test -d $d; then
        X_CFLAGS="-I$d $X_CFLAGS"
      d=$with_xshm/include
      if test -d $d; then
        X_CFLAGS="-I$d $X_CFLAGS"
@@ -8132,7 +8258,7 @@ echo "configure:8137: checking for XSHM headers" >&5
      fi
 
      echo $ac_n "checking for XSHM libs""... $ac_c" 1>&6
      fi
 
      echo $ac_n "checking for XSHM libs""... $ac_c" 1>&6
-echo "configure:8147: checking for XSHM libs" >&5
+echo "configure:8273: checking for XSHM libs" >&5
      d=$with_xshm/lib
      if test -d $d; then
        X_LIBS="-L$d $X_LIBS"
      d=$with_xshm/lib
      if test -d $d; then
        X_LIBS="-L$d $X_LIBS"
@@ -8167,17 +8293,17 @@ if test "$with_xshm" = yes; then
   CPPFLAGS="$CPPFLAGS $X_CFLAGS"
   ac_safe=`echo "X11/extensions/XShm.h" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for X11/extensions/XShm.h""... $ac_c" 1>&6
   CPPFLAGS="$CPPFLAGS $X_CFLAGS"
   ac_safe=`echo "X11/extensions/XShm.h" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for X11/extensions/XShm.h""... $ac_c" 1>&6
-echo "configure:8182: checking for X11/extensions/XShm.h" >&5
+echo "configure:8308: checking for X11/extensions/XShm.h" >&5
 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 8187 "configure"
+#line 8313 "configure"
 #include "confdefs.h"
 #include <X11/extensions/XShm.h>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
 #include "confdefs.h"
 #include <X11/extensions/XShm.h>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:8192: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:8318: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
 if test -z "$ac_err"; then
   rm -rf conftest*
 ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
 if test -z "$ac_err"; then
   rm -rf conftest*
@@ -8211,17 +8337,17 @@ fi
   CPPFLAGS="$CPPFLAGS $X_CFLAGS"
   ac_safe=`echo "sys/ipc.h" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for sys/ipc.h""... $ac_c" 1>&6
   CPPFLAGS="$CPPFLAGS $X_CFLAGS"
   ac_safe=`echo "sys/ipc.h" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for sys/ipc.h""... $ac_c" 1>&6
-echo "configure:8226: checking for sys/ipc.h" >&5
+echo "configure:8352: checking for sys/ipc.h" >&5
 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 8231 "configure"
+#line 8357 "configure"
 #include "confdefs.h"
 #include <sys/ipc.h>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
 #include "confdefs.h"
 #include <sys/ipc.h>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:8236: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:8362: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
 if test -z "$ac_err"; then
   rm -rf conftest*
 ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
 if test -z "$ac_err"; then
   rm -rf conftest*
@@ -8256,17 +8382,17 @@ fi
   CPPFLAGS="$CPPFLAGS $X_CFLAGS"
   ac_safe=`echo "sys/shm.h" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for sys/shm.h""... $ac_c" 1>&6
   CPPFLAGS="$CPPFLAGS $X_CFLAGS"
   ac_safe=`echo "sys/shm.h" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for sys/shm.h""... $ac_c" 1>&6
-echo "configure:8271: checking for sys/shm.h" >&5
+echo "configure:8397: checking for sys/shm.h" >&5
 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 8276 "configure"
+#line 8402 "configure"
 #include "confdefs.h"
 #include <sys/shm.h>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
 #include "confdefs.h"
 #include <sys/shm.h>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:8281: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:8407: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
 if test -z "$ac_err"; then
   rm -rf conftest*
 ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
 if test -z "$ac_err"; then
   rm -rf conftest*
@@ -8318,7 +8444,7 @@ fi
   LDFLAGS="$LDFLAGS $X_LIBS $X_EXTRA_LIBS"
 
   echo $ac_n "checking for XShmQueryExtension in -lXextSam""... $ac_c" 1>&6
   LDFLAGS="$LDFLAGS $X_LIBS $X_EXTRA_LIBS"
 
   echo $ac_n "checking for XShmQueryExtension in -lXextSam""... $ac_c" 1>&6
-echo "configure:8333: checking for XShmQueryExtension in -lXextSam" >&5
+echo "configure:8459: checking for XShmQueryExtension in -lXextSam" >&5
 ac_lib_var=`echo XextSam'_'XShmQueryExtension | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 ac_lib_var=`echo XextSam'_'XShmQueryExtension | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -8326,7 +8452,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lXextSam -lX11 -lXext -lm $LIBS"
 cat > conftest.$ac_ext <<EOF
   ac_save_LIBS="$LIBS"
 LIBS="-lXextSam -lX11 -lXext -lm $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 8341 "configure"
+#line 8467 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -8337,7 +8463,7 @@ int main() {
 XShmQueryExtension()
 ; return 0; }
 EOF
 XShmQueryExtension()
 ; return 0; }
 EOF
-if { (eval echo configure:8352: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:8478: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -8404,7 +8530,7 @@ fi
 
     /*)
      echo $ac_n "checking for DOUBLE-BUFFER headers""... $ac_c" 1>&6
 
     /*)
      echo $ac_n "checking for DOUBLE-BUFFER headers""... $ac_c" 1>&6
-echo "configure:8419: checking for DOUBLE-BUFFER headers" >&5
+echo "configure:8545: checking for DOUBLE-BUFFER headers" >&5
      d=$with_xdbe/include
      if test -d $d; then
        X_CFLAGS="-I$d $X_CFLAGS"
      d=$with_xdbe/include
      if test -d $d; then
        X_CFLAGS="-I$d $X_CFLAGS"
@@ -8414,7 +8540,7 @@ echo "configure:8419: checking for DOUBLE-BUFFER headers" >&5
      fi
 
      echo $ac_n "checking for DOUBLE-BUFFER libs""... $ac_c" 1>&6
      fi
 
      echo $ac_n "checking for DOUBLE-BUFFER libs""... $ac_c" 1>&6
-echo "configure:8429: checking for DOUBLE-BUFFER libs" >&5
+echo "configure:8555: checking for DOUBLE-BUFFER libs" >&5
      d=$with_xdbe/lib
      if test -d $d; then
        X_LIBS="-L$d $X_LIBS"
      d=$with_xdbe/lib
      if test -d $d; then
        X_LIBS="-L$d $X_LIBS"
@@ -8448,17 +8574,17 @@ if test "$with_xdbe" = yes; then
   CPPFLAGS="$CPPFLAGS $X_CFLAGS"
   ac_safe=`echo "X11/extensions/Xdbe.h" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for X11/extensions/Xdbe.h""... $ac_c" 1>&6
   CPPFLAGS="$CPPFLAGS $X_CFLAGS"
   ac_safe=`echo "X11/extensions/Xdbe.h" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for X11/extensions/Xdbe.h""... $ac_c" 1>&6
-echo "configure:8463: checking for X11/extensions/Xdbe.h" >&5
+echo "configure:8589: checking for X11/extensions/Xdbe.h" >&5
 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 8468 "configure"
+#line 8594 "configure"
 #include "confdefs.h"
 #include <X11/extensions/Xdbe.h>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
 #include "confdefs.h"
 #include <X11/extensions/Xdbe.h>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:8473: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:8599: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
 if test -z "$ac_err"; then
   rm -rf conftest*
 ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
 if test -z "$ac_err"; then
   rm -rf conftest*
@@ -8521,7 +8647,7 @@ fi
 
     /*)
      echo $ac_n "checking for XReadDisplay headers""... $ac_c" 1>&6
 
     /*)
      echo $ac_n "checking for XReadDisplay headers""... $ac_c" 1>&6
-echo "configure:8536: checking for XReadDisplay headers" >&5
+echo "configure:8662: checking for XReadDisplay headers" >&5
      d=$with_readdisplay/include
      if test -d $d; then
        X_CFLAGS="-I$d $X_CFLAGS"
      d=$with_readdisplay/include
      if test -d $d; then
        X_CFLAGS="-I$d $X_CFLAGS"
@@ -8531,7 +8657,7 @@ echo "configure:8536: checking for XReadDisplay headers" >&5
      fi
 
      echo $ac_n "checking for XReadDisplay libs""... $ac_c" 1>&6
      fi
 
      echo $ac_n "checking for XReadDisplay libs""... $ac_c" 1>&6
-echo "configure:8546: checking for XReadDisplay libs" >&5
+echo "configure:8672: checking for XReadDisplay libs" >&5
      d=$with_readdisplay/lib
      if test -d $d; then
        X_LIBS="-L$d $X_LIBS"
      d=$with_readdisplay/lib
      if test -d $d; then
        X_LIBS="-L$d $X_LIBS"
@@ -8564,17 +8690,17 @@ if test "$with_readdisplay" = yes; then
   CPPFLAGS="$CPPFLAGS $X_CFLAGS"
   ac_safe=`echo "X11/extensions/readdisplay.h" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for X11/extensions/readdisplay.h""... $ac_c" 1>&6
   CPPFLAGS="$CPPFLAGS $X_CFLAGS"
   ac_safe=`echo "X11/extensions/readdisplay.h" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for X11/extensions/readdisplay.h""... $ac_c" 1>&6
-echo "configure:8579: checking for X11/extensions/readdisplay.h" >&5
+echo "configure:8705: checking for X11/extensions/readdisplay.h" >&5
 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 8584 "configure"
+#line 8710 "configure"
 #include "confdefs.h"
 #include <X11/extensions/readdisplay.h>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
 #include "confdefs.h"
 #include <X11/extensions/readdisplay.h>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:8589: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:8715: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
 if test -z "$ac_err"; then
   rm -rf conftest*
 ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
 if test -z "$ac_err"; then
   rm -rf conftest*
@@ -8629,7 +8755,7 @@ fi
 
     /*)
      echo $ac_n "checking for Iris Video headers""... $ac_c" 1>&6
 
     /*)
      echo $ac_n "checking for Iris Video headers""... $ac_c" 1>&6
-echo "configure:8644: checking for Iris Video headers" >&5
+echo "configure:8770: checking for Iris Video headers" >&5
      d=$with_sgivideo/include
      if test -d $d; then
        X_CFLAGS="-I$d $X_CFLAGS"
      d=$with_sgivideo/include
      if test -d $d; then
        X_CFLAGS="-I$d $X_CFLAGS"
@@ -8639,7 +8765,7 @@ echo "configure:8644: checking for Iris Video headers" >&5
      fi
 
      echo $ac_n "checking for Iris Video libs""... $ac_c" 1>&6
      fi
 
      echo $ac_n "checking for Iris Video libs""... $ac_c" 1>&6
-echo "configure:8654: checking for Iris Video libs" >&5
+echo "configure:8780: checking for Iris Video libs" >&5
      d=$with_sgivideo/lib
      if test -d $d; then
        X_LIBS="-L$d $X_LIBS"
      d=$with_sgivideo/lib
      if test -d $d; then
        X_LIBS="-L$d $X_LIBS"
@@ -8672,17 +8798,17 @@ if test "$with_sgivideo" = yes; then
   CPPFLAGS="$CPPFLAGS $X_CFLAGS"
   ac_safe=`echo "dmedia/vl.h" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for dmedia/vl.h""... $ac_c" 1>&6
   CPPFLAGS="$CPPFLAGS $X_CFLAGS"
   ac_safe=`echo "dmedia/vl.h" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for dmedia/vl.h""... $ac_c" 1>&6
-echo "configure:8687: checking for dmedia/vl.h" >&5
+echo "configure:8813: checking for dmedia/vl.h" >&5
 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 8692 "configure"
+#line 8818 "configure"
 #include "confdefs.h"
 #include <dmedia/vl.h>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
 #include "confdefs.h"
 #include <dmedia/vl.h>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:8697: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:8823: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
 if test -z "$ac_err"; then
   rm -rf conftest*
 ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
 if test -z "$ac_err"; then
   rm -rf conftest*
@@ -8707,7 +8833,7 @@ fi
   if test "$have_sgivideo" = yes; then
     have_sgivideo=no
     echo $ac_n "checking for vlOpenVideo in -lvl""... $ac_c" 1>&6
   if test "$have_sgivideo" = yes; then
     have_sgivideo=no
     echo $ac_n "checking for vlOpenVideo in -lvl""... $ac_c" 1>&6
-echo "configure:8722: checking for vlOpenVideo in -lvl" >&5
+echo "configure:8848: checking for vlOpenVideo in -lvl" >&5
 ac_lib_var=`echo vl'_'vlOpenVideo | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 ac_lib_var=`echo vl'_'vlOpenVideo | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -8715,7 +8841,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lvl  $LIBS"
 cat > conftest.$ac_ext <<EOF
   ac_save_LIBS="$LIBS"
 LIBS="-lvl  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 8730 "configure"
+#line 8856 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -8726,7 +8852,7 @@ int main() {
 vlOpenVideo()
 ; return 0; }
 EOF
 vlOpenVideo()
 ; return 0; }
 EOF
-if { (eval echo configure:8741: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:8867: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -8797,7 +8923,7 @@ if test -n "$with_zippy_req" ; then
   case "$with_zippy_req" in
     /*)
       echo $ac_n "checking for $with_zippy_req""... $ac_c" 1>&6
   case "$with_zippy_req" in
     /*)
       echo $ac_n "checking for $with_zippy_req""... $ac_c" 1>&6
-echo "configure:8812: checking for $with_zippy_req" >&5
+echo "configure:8938: checking for $with_zippy_req" >&5
       if test -x "$with_zippy_req" ; then
         echo "$ac_t""yes" 1>&6
       else
       if test -x "$with_zippy_req" ; then
         echo "$ac_t""yes" 1>&6
       else
@@ -8811,7 +8937,7 @@ echo "configure:8812: checking for $with_zippy_req" >&5
       # Extract the first word of "$with_zippy_req", so it can be a program name with args.
 set dummy $with_zippy_req; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
       # Extract the first word of "$with_zippy_req", so it can be a program name with args.
 set dummy $with_zippy_req; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:8826: checking for $ac_word" >&5
+echo "configure:8952: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_path_zip2'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
 if eval "test \"`echo '$''{'ac_cv_path_zip2'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -8861,7 +8987,7 @@ do
 # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
 # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:8876: checking for $ac_word" >&5
+echo "configure:9002: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_emacs_exe'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
 if eval "test \"`echo '$''{'ac_cv_prog_emacs_exe'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -8895,7 +9021,7 @@ do
 # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
 # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:8910: checking for $ac_word" >&5
+echo "configure:9036: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_xemacs_exe'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
 if eval "test \"`echo '$''{'ac_cv_prog_xemacs_exe'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -8930,7 +9056,7 @@ done
 
   if test -n "$emacs_exe" ; then
     echo $ac_n "checking for emacs yow""... $ac_c" 1>&6
 
   if test -n "$emacs_exe" ; then
     echo $ac_n "checking for emacs yow""... $ac_c" 1>&6
-echo "configure:8945: checking for emacs yow" >&5
+echo "configure:9071: checking for emacs yow" >&5
     #
     # get emacs to tell us where the libexec directory is.
     #
     #
     # get emacs to tell us where the libexec directory is.
     #
@@ -8952,7 +9078,7 @@ echo "configure:8945: checking for emacs yow" >&5
 
   if test -z "$ac_cv_zippy_program" ; then
     echo $ac_n "checking for xemacs yow""... $ac_c" 1>&6
 
   if test -z "$ac_cv_zippy_program" ; then
     echo $ac_n "checking for xemacs yow""... $ac_c" 1>&6
-echo "configure:8967: checking for xemacs yow" >&5
+echo "configure:9093: checking for xemacs yow" >&5
     if test -n "$xemacs_exe" ; then
       #
       # get xemacs to tell us where the libexec directory is.
     if test -n "$xemacs_exe" ; then
       #
       # get xemacs to tell us where the libexec directory is.
@@ -9011,7 +9137,7 @@ do
 # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
 # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:9026: checking for $ac_word" >&5
+echo "configure:9152: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_fortune'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
 if eval "test \"`echo '$''{'ac_cv_prog_fortune'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -9047,7 +9173,7 @@ do
 # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
 # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:9062: checking for $ac_word" >&5
+echo "configure:9188: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_path_fortune'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
 if eval "test \"`echo '$''{'ac_cv_path_fortune'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -9676,7 +9802,8 @@ warn() {
   warnpre
   if test "$warning" = long ; then echo '' ; fi
   warning=yes
   warnpre
   if test "$warning" = long ; then echo '' ; fi
   warning=yes
-  echo "$warn_prefix $@"
+  rest="$@"
+  echo "$warn_prefix $rest"
 }
 
 warnL() {
 }
 
 warnL() {
@@ -9684,11 +9811,13 @@ warnL() {
   warnpre
   warning=yes
   if test "$was" != no ; then echo '' ; fi
   warnpre
   warning=yes
   if test "$was" != no ; then echo '' ; fi
-  echo "$warn_prefix $@"
+  rest="$@"
+  echo "$warn_prefix $rest"
 }
 
 warn2() {
 }
 
 warn2() {
-  echo "             $@"
+  rest="$@"
+  echo "             $rest"
   warning=long
 }
 
   warning=long
 }
 
index 205480884039f217ff1927372f523fb6fb90a7a7..164e6d8e739ff73cc043ea779894e1a0aeb4b9ff 100644 (file)
@@ -85,6 +85,37 @@ AC_DEFUN(AC_PROG_CC_ANSI,
 ])
 
 
 ])
 
 
+###############################################################################
+#
+#       Function to work around the fucked up gcc 2.96 included in Red Hat 7.0
+#
+###############################################################################
+
+AC_DEFUN(AC_ESCHEW_REDHAT_GCC_LOSSAGE,
+ [if test -n "$GCC"; then
+   AC_MSG_CHECKING(for Red Hat GCC lossage)
+   AC_CACHE_VAL(ac_cv_red_hat_gcc_lossage,
+    [ac_cv_red_hat_gcc_lossage=no
+      AC_EGREP_CPP(lossage,
+     [#include <stdlib.h>
+      #if !defined(__USE_POSIX) || !defined(__USE_SVID) || !defined(__USE_BSD)
+        lossage
+      #endif
+     ], ac_cv_red_hat_gcc_lossage=yes)
+    ])
+
+    ac_red_hat_gcc_lossage=$ac_cv_red_hat_gcc_lossage
+    if test "$ac_cv_red_hat_gcc_lossage" = yes ; then
+      rh_defines="-D_POSIX_SOURCE -D_SVID_SOURCE -D_BSD_SOURCE";
+      CC="$CC $rh_defines"
+      AC_MSG_RESULT(yes: need $rh_defines)
+    else
+      AC_MSG_RESULT(no)
+    fi
+  fi
+])
+
+
 ###############################################################################
 #
 #       Function to figure out how to create directory trees.
 ###############################################################################
 #
 #       Function to figure out how to create directory trees.
@@ -674,6 +705,7 @@ AC_DEFUN(HANDLE_X_PATH_ARG, [
 # random compiler setup
 AC_CANONICAL_HOST
 AC_PROG_CC_ANSI
 # random compiler setup
 AC_CANONICAL_HOST
 AC_PROG_CC_ANSI
+AC_ESCHEW_REDHAT_GCC_LOSSAGE
 AC_PROG_CPP
 AC_C_CONST
 AC_C_INLINE
 AC_PROG_CPP
 AC_C_CONST
 AC_C_INLINE
@@ -2615,7 +2647,8 @@ warn() {
   warnpre
   if test "$warning" = long ; then echo '' ; fi
   warning=yes
   warnpre
   if test "$warning" = long ; then echo '' ; fi
   warning=yes
-  echo "$warn_prefix $@"
+  rest="$@"
+  echo "$warn_prefix $rest"
 }
 
 warnL() {
 }
 
 warnL() {
@@ -2623,11 +2656,13 @@ warnL() {
   warnpre
   warning=yes
   if test "$was" != no ; then echo '' ; fi
   warnpre
   warning=yes
   if test "$was" != no ; then echo '' ; fi
-  echo "$warn_prefix $@"
+  rest="$@"
+  echo "$warn_prefix $rest"
 }
 
 warn2() {
 }
 
 warn2() {
-  echo "             $@"
+  rest="$@"
+  echo "             $rest"
   warning=long
 }
 
   warning=long
 }
 
index 6f78544af2f59cf87da07cc14e11d324ec3b95b1..b56e7c658c012ad10bbd54df6efdad78c89ade7b 100644 (file)
@@ -148,7 +148,8 @@ SAVER_LIBS  = $(LIBS) $(X_LIBS) @SAVER_LIBS@ $(GL_LIBS) \
 CMD_LIBS       = $(LIBS) $(X_LIBS) \
                  $(X_PRE_LIBS) -lX11 -lXext $(X_EXTRA_LIBS)
 
 CMD_LIBS       = $(LIBS) $(X_LIBS) \
                  $(X_PRE_LIBS) -lX11 -lXext $(X_EXTRA_LIBS)
 
-EXES           = xscreensaver xscreensaver-command xscreensaver-demo
+EXES           = xscreensaver xscreensaver-command xscreensaver-demo \
+                 screensaver-properties-capplet
 EXES2          = @ALL_DEMO_PROGRAMS@
 
 HDRS           = XScreenSaver_ad.h xscreensaver.h prefs.h remote.h \
 EXES2          = @ALL_DEMO_PROGRAMS@
 
 HDRS           = XScreenSaver_ad.h xscreensaver.h prefs.h remote.h \
@@ -159,7 +160,9 @@ ALL_MEN             = xscreensaver.man \
                  xscreensaver-demo.man xscreensaver-command.man
 EXTRAS         = README Makefile.in XScreenSaver.ad.in xscreensaver.pam \
                  xscreensaver.kss xscreensaver-demo.glade \
                  xscreensaver-demo.man xscreensaver-command.man
 EXTRAS         = README Makefile.in XScreenSaver.ad.in xscreensaver.pam \
                  xscreensaver.kss xscreensaver-demo.glade \
-                 screensaver-properties.desktop.in .gdbinit
+                 screensaver-properties.desktop.in \
+                 screensaver-properties-capplet \
+                 .gdbinit
 VMSFILES       = compile_axp.com compile_decc.com link_axp.com link_decc.com \
                  vms-getpwnam.c vms-pwd.h vms-hpwd.c vms-validate.c \
                  vms_axp.opt vms_axp_12.opt vms_decc.opt vms_decc_12.opt
 VMSFILES       = compile_axp.com compile_decc.com link_axp.com link_decc.com \
                  vms-getpwnam.c vms-pwd.h vms-hpwd.c vms-validate.c \
                  vms_axp.opt vms_axp_12.opt vms_decc.opt vms_decc_12.opt
@@ -348,15 +351,28 @@ install-pam:
 install-gnome: screensaver-properties.desktop
        @lost1=""                                                            ;\
          lost2=""                                                            ;\
 install-gnome: screensaver-properties.desktop
        @lost1=""                                                            ;\
          lost2=""                                                            ;\
-         if [ "$(install_prefix)$(GNOME_DATADIR)" != "" ]; then               \
+         if [ "$(GNOME_DATADIR)" != "" ]; then                                \
+                                                                             \
+           if [ ! -d "$(install_prefix)$(GNOME_CCDIR)" ]; then                \
+             echo $(INSTALL_DIRS) "$(install_prefix)$(GNOME_CCDIR)"          ;\
+                  $(INSTALL_DIRS) "$(install_prefix)$(GNOME_CCDIR)"          ;\
+           fi                                                                ;\
+                                                                             \
            echo    $(INSTALL_DATA) $(srcdir)/screensaver-properties.desktop   \
              $(install_prefix)$(GNOME_CCDIR)/screensaver-properties.desktop  ;\
            echo    $(INSTALL_DATA) $(srcdir)/screensaver-properties.desktop   \
              $(install_prefix)$(GNOME_CCDIR)/screensaver-properties.desktop  ;\
+                                                                             \
            if      $(INSTALL_DATA) $(srcdir)/screensaver-properties.desktop   \
              $(install_prefix)$(GNOME_CCDIR)/screensaver-properties.desktop  ;\
              then true                                                       ;\
            else                                                               \
              lost1="$(install_prefix)$(GNOME_CCDIR)"                         ;\
            fi                                                                ;\
            if      $(INSTALL_DATA) $(srcdir)/screensaver-properties.desktop   \
              $(install_prefix)$(GNOME_CCDIR)/screensaver-properties.desktop  ;\
              then true                                                       ;\
            else                                                               \
              lost1="$(install_prefix)$(GNOME_CCDIR)"                         ;\
            fi                                                                ;\
+                                                                             \
+           if [ ! -d "$(install_prefix)$(GNOME_PANELDIR)" ]; then             \
+             echo $(INSTALL_DIRS) "$(install_prefix)$(GNOME_PANELDIR)"       ;\
+                  $(INSTALL_DIRS) "$(install_prefix)$(GNOME_PANELDIR)"       ;\
+           fi                                                                ;\
+                                                                             \
            echo $(INSTALL_DATA) $(srcdir)/screensaver-properties.desktop      \
                         $(GNOME_PANELDIR)/screensaver-properties.desktop     ;\
            if   $(INSTALL_DATA) $(srcdir)/screensaver-properties.desktop      \
            echo $(INSTALL_DATA) $(srcdir)/screensaver-properties.desktop      \
                         $(GNOME_PANELDIR)/screensaver-properties.desktop     ;\
            if   $(INSTALL_DATA) $(srcdir)/screensaver-properties.desktop      \
@@ -365,6 +381,7 @@ install-gnome: screensaver-properties.desktop
            else                                                               \
              lost2="$(install_prefix)$(GNOME_PANELDIR)"                      ;\
            fi                                                                ;\
            else                                                               \
              lost2="$(install_prefix)$(GNOME_PANELDIR)"                      ;\
            fi                                                                ;\
+                                                                             \
            if [ "$$lost1" != "" -o "$$lost2" != "" ]; then                    \
              e=echo ;                                                         \
  $$e ""                                                                      ;\
            if [ "$$lost1" != "" -o "$$lost2" != "" ]; then                    \
              e=echo ;                                                         \
  $$e ""                                                                      ;\
index efc5955e13fff579a28870aea8478f9c9161a65e..74ce4112fec960fdb782af5c382fdeec6892dbb7 100644 (file)
@@ -4,8 +4,8 @@
 !            a screen saver and locker for the X window system
 !                            by Jamie Zawinski
 !
 !            a screen saver and locker for the X window system
 !                            by Jamie Zawinski
 !
-!                              version 3.26
-!                              10-Nov-2000
+!                              version 3.27
+!                              19-Jan-2001
 !
 ! See "man xscreensaver" for more info.  The latest version is always
 ! available at http://www.jwz.org/xscreensaver/
 !
 ! See "man xscreensaver" for more info.  The latest version is always
 ! available at http://www.jwz.org/xscreensaver/
 -          "NerveRot (thick)"  nerverot -root -count 100 -line-width 4       \
                                -max-nerve-radius 0.8 -nervousness 0.5 -db  \n\
                                xrayswarm -root                             \n\
 -          "NerveRot (thick)"  nerverot -root -count 100 -line-width 4       \
                                -max-nerve-radius 0.8 -nervousness 0.5 -db  \n\
                                xrayswarm -root                             \n\
+-             "Zoom (Fatbits)" zoom -root                                  \n\
+              "Zoom (Lenses)"  zoom -root -lenses                          \n\
+                               whirlwindwarp -root                         \n\
   color:                       bubbles -root                               \n\
   default-n:                   webcollage -root                            \n\
   default-n:  "WebCollage (whacked)"                                         \
   color:                       bubbles -root                               \n\
   default-n:                   webcollage -root                            \n\
   default-n:  "WebCollage (whacked)"                                         \
 -                              xfishtank -d -s                             \n\
 -                              xsnow                                       \n\
 -                              goban -root                                 \n\
 -                              xfishtank -d -s                             \n\
 -                              xsnow                                       \n\
 -                              goban -root                                 \n\
--                              electricsheep                               \n
+-                              electricsheep                               \n\
+-                              cosmos -root                                \n
 
 
 ! To display a randomized slideshow of images, you can do something like this:
 
 
 ! To display a randomized slideshow of images, you can do something like this:
@@ -391,7 +395,7 @@ XScreenSaver.bourneShell:           /bin/sh
 *passwd.thermometer.width:     8
 
 *splash.heading.label:         XScreenSaver %s
 *passwd.thermometer.width:     8
 
 *splash.heading.label:         XScreenSaver %s
-*splash.body.label:            Copyright Â© 1991-2000 by
+*splash.body.label:            Copyright Â© 1991-2001 by
 *splash.body2.label:           Jamie Zawinski <jwz@jwz.org>
 *splash.demo.label:            Demo
 *splash.prefs.label:           Prefs
 *splash.body2.label:           Jamie Zawinski <jwz@jwz.org>
 *splash.demo.label:            Demo
 *splash.prefs.label:           Prefs
@@ -686,9 +690,9 @@ each face.  Don't think about it too long, or your brain will melt. \
 Written by Joe Keane, Fritz Mueller, and Jamie Zawinski.
 
 *hacks.hyperball.documentation:                                                \
 Written by Joe Keane, Fritz Mueller, and Jamie Zawinski.
 
 *hacks.hyperball.documentation:                                                \
-Hyperball is to hypercube as icosahedron is to cube: this displays     \
+Hyperball is to hypercube as dodecahedron is to cube: this displays    \
 a 2D projection of the sequence of 3D objects which are the projections        \
 a 2D projection of the sequence of 3D objects which are the projections        \
-of the 4D analog to the icosahedron.  Written by Joe Keane.
+of the 4D analog to the dodecahedron.  Written by Joe Keane.
 
 *hacks.halo.documentation:                                             \
 This draws trippy psychedelic circular patterns that hurt to look at.  \
 
 *hacks.halo.documentation:                                             \
 This draws trippy psychedelic circular patterns that hurt to look at.  \
@@ -1221,6 +1225,18 @@ Written by Josiah Pease.
 Draws a few swarms of critters flying around the screen, with nicely   \
 faded color trails behind them.  Written by Chris Leger.
 
 Draws a few swarms of critters flying around the screen, with nicely   \
 faded color trails behind them.  Written by Chris Leger.
 
+*hacks.zoom.documentation:                                              \
+Zooms in on a part of the screen and then moves around.  With the       \
+-lenses option the result is like looking through many overlapping      \
+lenses rather than just a simple zoom.  Written by James Macnicol.
+
+*hacks.whirlwindwarp.name: WhirlwindWarp
+*hacks.whirlwindwarp.documentation:                                  \
+Floating stars are acted upon by a mixture of simple 2D              \
+forcefields.  The strength of each forcefield changes                \
+continuously, and it is also switched on and off at random.          \
+By Paul 'Joey' Clark, ported from a QB program written for Ivor.
+
 
 !=============================================================================
 !
 
 !=============================================================================
 !
@@ -1295,4 +1311,8 @@ connection to the Internet.                                               \
 By Scott Draves.  You can find it at <http://www.electricsheep.org/>.   \
 See that web site for configuration information.
 
 By Scott Draves.  You can find it at <http://www.electricsheep.org/>.   \
 See that web site for configuration information.
 
+*hacks.cosmos.documentation:                                           \
+Draws fireworks and zooming, fading flares.  By Tom Campbell.           \
+You can find it at <http://www.mindspring.com/~campbell/cosmos/>.
+
 ! (xrdb prevention kludge: whole file) */
 ! (xrdb prevention kludge: whole file) */
index 56c3687e4d5fcf6b1198284a0e0f794ca561caf1..80f3f4f631f4299ae4a7c7d9e6d5a0b508e95f74 100644 (file)
 -          \"NerveRot (thick)\"        nerverot -root -count 100 -line-width 4       \
                                -max-nerve-radius 0.8 -nervousness 0.5 -db  \\n\
                                xrayswarm -root                             \\n\
 -          \"NerveRot (thick)\"        nerverot -root -count 100 -line-width 4       \
                                -max-nerve-radius 0.8 -nervousness 0.5 -db  \\n\
                                xrayswarm -root                             \\n\
+-             \"Zoom (Fatbits)\"       zoom -root                                  \\n\
+              \"Zoom (Lenses)\"        zoom -root -lenses                          \\n\
+                               whirlwindwarp -root                         \\n\
   color:                       bubbles -root                               \\n\
   default-n:                   webcollage -root                            \\n\
   default-n:  \"WebCollage (whacked)\"                                       \
   color:                       bubbles -root                               \\n\
   default-n:                   webcollage -root                            \\n\
   default-n:  \"WebCollage (whacked)\"                                       \
 -                              xfishtank -d -s                             \\n\
 -                              xsnow                                       \\n\
 -                              goban -root                                 \\n\
 -                              xfishtank -d -s                             \\n\
 -                              xsnow                                       \\n\
 -                              goban -root                                 \\n\
--                              electricsheep                               \\n",
+-                              electricsheep                               \\n\
+-                              cosmos -root                                \\n",
 "XScreenSaver.pointerPollTime:         5",
 "XScreenSaver.initialDelay:            0",
 "XScreenSaver.windowCreationTimeout:   30",
 "XScreenSaver.pointerPollTime:         5",
 "XScreenSaver.initialDelay:            0",
 "XScreenSaver.windowCreationTimeout:   30",
 "*passwd.passwdFont:           *-courier-medium-r-*-*-*-140-*-*-*-iso8859-1",
 "*passwd.thermometer.width:    8",
 "*splash.heading.label:                XScreenSaver %s",
 "*passwd.passwdFont:           *-courier-medium-r-*-*-*-140-*-*-*-iso8859-1",
 "*passwd.thermometer.width:    8",
 "*splash.heading.label:                XScreenSaver %s",
-"*splash.body.label:           Copyright Â© 1991-2000 by",
+"*splash.body.label:           Copyright Â© 1991-2001 by",
 "*splash.body2.label:          Jamie Zawinski <jwz@jwz.org>",
 "*splash.demo.label:           Demo",
 "*splash.prefs.label:          Prefs",
 "*splash.body2.label:          Jamie Zawinski <jwz@jwz.org>",
 "*splash.demo.label:           Demo",
 "*splash.prefs.label:          Prefs",
@@ -475,9 +479,9 @@ visualize the rotation, it uses a different color for the edges of  \
 each face.  Don't think about it too long, or your brain will melt.    \
 Written by Joe Keane, Fritz Mueller, and Jamie Zawinski.",
 "*hacks.hyperball.documentation:                                               \
 each face.  Don't think about it too long, or your brain will melt.    \
 Written by Joe Keane, Fritz Mueller, and Jamie Zawinski.",
 "*hacks.hyperball.documentation:                                               \
-Hyperball is to hypercube as icosahedron is to cube: this displays     \
+Hyperball is to hypercube as dodecahedron is to cube: this displays    \
 a 2D projection of the sequence of 3D objects which are the projections        \
 a 2D projection of the sequence of 3D objects which are the projections        \
-of the 4D analog to the icosahedron.  Written by Joe Keane.",
+of the 4D analog to the dodecahedron.  Written by Joe Keane.",
 "*hacks.halo.documentation:                                            \
 This draws trippy psychedelic circular patterns that hurt to look at.  \
 It can also animate the control-points, but that takes a lot of CPU    \
 "*hacks.halo.documentation:                                            \
 This draws trippy psychedelic circular patterns that hurt to look at.  \
 It can also animate the control-points, but that takes a lot of CPU    \
@@ -914,6 +918,16 @@ Written by Josiah Pease.",
 "*hacks.xrayswarm.documentation:                                       \
 Draws a few swarms of critters flying around the screen, with nicely   \
 faded color trails behind them.  Written by Chris Leger.",
 "*hacks.xrayswarm.documentation:                                       \
 Draws a few swarms of critters flying around the screen, with nicely   \
 faded color trails behind them.  Written by Chris Leger.",
+"*hacks.zoom.documentation:                                              \
+Zooms in on a part of the screen and then moves around.  With the       \
+-lenses option the result is like looking through many overlapping      \
+lenses rather than just a simple zoom.  Written by James Macnicol.",
+"*hacks.whirlwindwarp.name: WhirlwindWarp",
+"*hacks.whirlwindwarp.documentation:                                  \
+Floating stars are acted upon by a mixture of simple 2D              \
+forcefields.  The strength of each forcefield changes                \
+continuously, and it is also switched on and off at random.          \
+By Paul 'Joey' Clark, ported from a QB program written for Ivor.",
 "*hacks.xdaliclock.name: XDaliClock",
 "*hacks.xdaliclock.documentation:                                      \
 XDaliClock draws a large digital clock, the numbers of which change by \
 "*hacks.xdaliclock.name: XDaliClock",
 "*hacks.xdaliclock.documentation:                                      \
 XDaliClock draws a large digital clock, the numbers of which change by \
@@ -972,3 +986,6 @@ connection to the Internet.                                         \
                                                                    \\n\\n\
 By Scott Draves.  You can find it at <http://www.electricsheep.org/>.   \
 See that web site for configuration information.",
                                                                    \\n\\n\
 By Scott Draves.  You can find it at <http://www.electricsheep.org/>.   \
 See that web site for configuration information.",
+"*hacks.cosmos.documentation:                                          \
+Draws fireworks and zooming, fading flares.  By Tom Campbell.           \
+You can find it at <http://www.mindspring.com/~campbell/cosmos/>.",
index be35a67d15e1055a20cbec529f4c260c4381ef42..0ff66e9382ae0a7bcbb721edff8ad66b1cb439c4 100644 (file)
@@ -109,6 +109,7 @@ static void populate_demo_window (GtkWidget *toplevel,
 static void populate_prefs_page (GtkWidget *top, prefs_pair *pair);
 static int apply_changes_and_save (GtkWidget *widget);
 static int maybe_reload_init_file (GtkWidget *widget, prefs_pair *pair);
 static void populate_prefs_page (GtkWidget *top, prefs_pair *pair);
 static int apply_changes_and_save (GtkWidget *widget);
 static int maybe_reload_init_file (GtkWidget *widget, prefs_pair *pair);
+static void await_xscreensaver (GtkWidget *widget);
 
 \f
 /* Some random utility functions
 
 \f
 /* Some random utility functions
@@ -501,6 +502,69 @@ restart_menu_cb (GtkWidget *widget, gpointer user_data)
   sleep (1);
   system ("xscreensaver -nosplash &");
 #endif
   sleep (1);
   system ("xscreensaver -nosplash &");
 #endif
+
+  await_xscreensaver (GTK_WIDGET (widget));
+}
+
+static void
+await_xscreensaver (GtkWidget *widget)
+{
+  int countdown = 5;
+
+  Display *dpy = gdk_display;
+  /*  GtkWidget *dialog = 0;*/
+  char *rversion = 0;
+
+  while (!rversion && (--countdown > 0))
+    {
+      /* Check for the version of the running xscreensaver... */
+      server_xscreensaver_version (dpy, &rversion, 0, 0);
+
+      /* If it's not there yet, wait a second... */
+      sleep (1);
+    }
+
+/*  if (dialog) gtk_widget_destroy (dialog);*/
+
+  if (rversion)
+    {
+      /* Got it. */
+      free (rversion);
+    }
+  else
+    {
+      /* Timed out, no screensaver running. */
+
+      char buf [1024];
+      Bool root_p = (geteuid () == 0);
+      
+      strcpy (buf, 
+              "Error:\n\n"
+              "The xscreensaver daemon did not start up properly.\n"
+              "\n");
+
+      if (root_p)
+        strcat (buf,
+            "You are running as root.  This usually means that xscreensaver\n"
+            "was unable to contact your X server because access control is\n"
+            "turned on.  Try running this command:\n"
+            "\n"
+            "                        xhost +localhost\n"
+            "\n"
+            "and then selecting `File / Restart Daemon'.\n"
+            "\n"
+            "Note that turning off access control will allow anyone logged\n"
+            "on to this machine to access your screen, which might be\n"
+            "considered a security problem.  Please read the xscreensaver\n"
+            "manual and FAQ for more information.\n"
+            "\n"
+            "You shouldn't run X as root. Instead, you should log in as a\n"
+            "normal user, and `su' as necessary.");
+      else
+        strcat (buf, "Please check your $PATH and permissions.");
+
+      warning_dialog (widget, buf, False, 1);
+    }
 }
 
 
 }
 
 
index 9d4c31d53b65f63db0dfc0643482b73f952fa212..332bf42829383d682a3b2f3d76eeea1cc9229314 100644 (file)
@@ -118,6 +118,7 @@ static void populate_demo_window (Widget toplevel,
 static void populate_prefs_page (Widget top, prefs_pair *pair);
 static int apply_changes_and_save (Widget widget);
 static int maybe_reload_init_file (Widget widget, prefs_pair *pair);
 static void populate_prefs_page (Widget top, prefs_pair *pair);
 static int apply_changes_and_save (Widget widget);
 static int maybe_reload_init_file (Widget widget, prefs_pair *pair);
+static void await_xscreensaver (Widget widget);
 
 \f
 /* Some random utility functions
 
 \f
 /* Some random utility functions
@@ -419,6 +420,66 @@ restart_menu_cb (Widget button, XtPointer client_data, XtPointer ignored)
   sleep (1);
   system ("xscreensaver -nosplash &");
 #endif
   sleep (1);
   system ("xscreensaver -nosplash &");
 #endif
+
+  await_xscreensaver (button);
+}
+
+static void
+await_xscreensaver (Widget widget)
+{
+  int countdown = 5;
+
+  Display *dpy = XtDisplay (widget);
+  char *rversion = 0;
+
+  while (!rversion && (--countdown > 0))
+    {
+      /* Check for the version of the running xscreensaver... */
+      server_xscreensaver_version (dpy, &rversion, 0, 0);
+
+      /* If it's not there yet, wait a second... */
+      sleep (1);
+    }
+
+  if (rversion)
+    {
+      /* Got it. */
+      free (rversion);
+    }
+  else
+    {
+      /* Timed out, no screensaver running. */
+
+      char buf [1024];
+      Bool root_p = (geteuid () == 0);
+      
+      strcpy (buf, 
+              "Error:\n\n"
+              "The xscreensaver daemon did not start up properly.\n"
+              "\n");
+
+      if (root_p)
+        strcat (buf,
+            "You are running as root.  This usually means that xscreensaver\n"
+            "was unable to contact your X server because access control is\n"
+            "turned on.  Try running this command:\n"
+            "\n"
+            "                        xhost +localhost\n"
+            "\n"
+            "and then selecting `File / Restart Daemon'.\n"
+            "\n"
+            "Note that turning off access control will allow anyone logged\n"
+            "on to this machine to access your screen, which might be\n"
+            "considered a security problem.  Please read the xscreensaver\n"
+            "manual and FAQ for more information.\n"
+            "\n"
+            "You shouldn't run X as root. Instead, you should log in as a\n"
+            "normal user, and `su' as necessary.");
+      else
+        strcat (buf, "Please check your $PATH and permissions.");
+
+      warning_dialog (XtParent (widget), buf, 1);
+    }
 }
 
 
 }
 
 
index ae49086429ef5e09e9505d534d8e5838acd542c7..392394d1251f2e5fb293311c2f63a23568250f2e 100644 (file)
@@ -94,6 +94,22 @@ chase_symlinks (const char *file)
 }
 
 
 }
 
 
+static Bool
+i_am_a_nobody (uid_t uid)
+{
+  struct passwd *p;
+
+  p = getpwnam ("nobody");
+  if (! p) p = getpwnam ("noaccess");
+  if (! p) p = getpwnam ("daemon");
+
+  if (! p) /* There is no nobody? */
+    return False;
+
+  return (uid == p->pw_uid);
+}
+
+
 const char *
 init_file_name (void)
 {
 const char *
 init_file_name (void)
 {
@@ -101,7 +117,18 @@ init_file_name (void)
 
   if (!file)
     {
 
   if (!file)
     {
-      struct passwd *p = getpwuid (getuid ());
+      uid_t uid = getuid ();
+      struct passwd *p = getpwuid (uid);
+
+      if (i_am_a_nobody (uid))
+        /* If we're running as nobody, then use root's .xscreensaver file
+           (since ~root/.xscreensaver and ~nobody/.xscreensaver are likely
+           to be different -- if we didn't do this, then xscreensaver-demo
+           would appear to have no effect when the luser is running as root.)
+         */
+        uid = 0;
+
+      p = getpwuid (uid);
 
       if (!p || !p->pw_name || !*p->pw_name)
        {
 
       if (!p || !p->pw_name || !*p->pw_name)
        {
diff --git a/driver/screensaver-properties-capplet b/driver/screensaver-properties-capplet
new file mode 100755 (executable)
index 0000000..a2bb0da
--- /dev/null
@@ -0,0 +1,19 @@
+#!/bin/sh
+# screensaver-properties-capplet --- interface to gnome-session.
+# xscreensaver, Copyright (c) 1993-2001 Jamie Zawinski <jwz@jwz.org>
+#
+# Permission to use, copy, modify, distribute, and sell this software and its
+# documentation for any purpose is hereby granted without fee, provided that
+# the above copyright notice appear in all copies and that both that
+# copyright notice and this permission notice appear in supporting
+# documentation.  No representations are made about the suitability of this
+# software for any purpose.  It is provided "as is" without express or 
+# implied warranty.
+
+# The existence of this script in /usr/bin/ forces Gnome to use the
+# xscreensaver-demo program (instead of the lame Gnome code) to launch,
+# initialize, and configure xscreensaver.  When running in crapplet mode,
+# xscreensaver-demo accepts the same arguments that Gnome's capplet does,
+# except that "--capplet" must be the first argument.
+
+exec xscreensaver-demo --capplet "$@"
index 684fd4e347af27042914b61806357d21fd7a9ebb..9b86557b85f4ca541910d14e7001f37591380e26 100644 (file)
@@ -1,4 +1,4 @@
-/* xscreensaver-command, Copyright (c) 1991-2000
+/* xscreensaver-command, Copyright (c) 1991-2001
  *  by Jamie Zawinski <jwz@jwz.org>
  *
  * Permission to use, copy, modify, distribute, and sell this software and its
  *  by Jamie Zawinski <jwz@jwz.org>
  *
  * Permission to use, copy, modify, distribute, and sell this software and its
@@ -52,7 +52,7 @@ static char *usage = "\n\
 usage: %s -<option>\n\
 \n\
   This program provides external control of a running xscreensaver process.\n\
 usage: %s -<option>\n\
 \n\
   This program provides external control of a running xscreensaver process.\n\
-  Version %s, copyright (c) 1991-2000 Jamie Zawinski <jwz@jwz.org>.\n\
+  Version %s, copyright (c) 1991-2001 Jamie Zawinski <jwz@jwz.org>.\n\
 \n\
   The xscreensaver program is a daemon that runs in the background.\n\
   You control a running xscreensaver process by sending it messages\n\
 \n\
   The xscreensaver program is a daemon that runs in the background.\n\
   You control a running xscreensaver process by sending it messages\n\
@@ -147,8 +147,12 @@ main (int argc, char **argv)
   char *dpyname = 0;
   Atom *cmd = 0;
   long arg = 0L;
   char *dpyname = 0;
   Atom *cmd = 0;
   long arg = 0L;
+  char *s;
 
   progname = argv[0];
 
   progname = argv[0];
+  s = strrchr (progname, '/');
+  if (s) progname = s+1;
+
   screensaver_version = (char *) malloc (5);
   memcpy (screensaver_version, screensaver_id + 17, 4);
   screensaver_version [4] = 0;
   screensaver_version = (char *) malloc (5);
   memcpy (screensaver_version, screensaver_id + 17, 4);
   screensaver_version [4] = 0;
@@ -252,6 +256,15 @@ main (int argc, char **argv)
 
 
   if (!dpyname) dpyname = (char *) getenv ("DISPLAY");
 
 
   if (!dpyname) dpyname = (char *) getenv ("DISPLAY");
+
+  if (!dpyname)
+    {
+      dpyname = ":0.0";
+      fprintf (stderr,
+               "%s: warning: $DISPLAY is not set: defaulting to \"%s\".\n",
+               progname, dpyname);
+    }
+
   dpy = XOpenDisplay (dpyname);
   if (!dpy)
     {
   dpy = XOpenDisplay (dpyname);
   if (!dpy)
     {
index f2ead079007c78eaeb6952241ad0dea7e2140b36..61a2c788706e4a209257a9446f4b697a50825cb9 100644 (file)
@@ -11,7 +11,7 @@
 .if n .sp 1
 .if t .sp .5
 ..
 .if n .sp 1
 .if t .sp .5
 ..
-.TH XScreenSaver 1 "10-Nov-2000 (3.26)" "X Version 11"
+.TH XScreenSaver 1 "19-Jan-2001 (3.27)" "X Version 11"
 .SH NAME
 xscreensaver-command - control a running xscreensaver process
 .SH SYNOPSIS
 .SH NAME
 xscreensaver-command - control a running xscreensaver process
 .SH SYNOPSIS
index b9460dd99250fdee2a3f002d82e22150911e00c5..2d98d3ce66b3c42ef28935839f35e006acf49c9e 100644 (file)
@@ -11,7 +11,7 @@
 .if n .sp 1
 .if t .sp .5
 ..
 .if n .sp 1
 .if t .sp .5
 ..
-.TH XScreenSaver 1 "10-Nov-2000 (3.26)" "X Version 11"
+.TH XScreenSaver 1 "19-Jan-2001 (3.27)" "X Version 11"
 .SH NAME
 xscreensaver-demo - interactively control the background xscreensaver daemon
 .SH SYNOPSIS
 .SH NAME
 xscreensaver-demo - interactively control the background xscreensaver daemon
 .SH SYNOPSIS
index 6ecaac324098b4d4557798e13ed36cfa193bc5f3..e87bd3a7f2aa35714f166f4524dc119b78994a64 100644 (file)
@@ -1,4 +1,4 @@
-/* xscreensaver, Copyright (c) 1991-2000 Jamie Zawinski <jwz@jwz.org>
+/* xscreensaver, Copyright (c) 1991-2001 Jamie Zawinski <jwz@jwz.org>
  *
  * Permission to use, copy, modify, distribute, and sell this software and its
  * documentation for any purpose is hereby granted without fee, provided that
  *
  * Permission to use, copy, modify, distribute, and sell this software and its
  * documentation for any purpose is hereby granted without fee, provided that
@@ -219,7 +219,7 @@ do_help (saver_info *si)
   fflush (stdout);
   fflush (stderr);
   fprintf (stdout, "\
   fflush (stdout);
   fflush (stderr);
   fprintf (stdout, "\
-xscreensaver %s, copyright (c) 1991-2000 by Jamie Zawinski <jwz@jwz.org>\n\
+xscreensaver %s, copyright (c) 1991-2001 by Jamie Zawinski <jwz@jwz.org>\n\
 The standard Xt command-line options are accepted; other options include:\n\
 \n\
     -timeout <minutes>       When the screensaver should activate.\n\
 The standard Xt command-line options are accepted; other options include:\n\
 \n\
     -timeout <minutes>       When the screensaver should activate.\n\
@@ -370,16 +370,32 @@ startup_ehandler (String name, String type, String class,
   fprintf (stderr, "\n");
 
   describe_uids (si, stderr);
   fprintf (stderr, "\n");
 
   describe_uids (si, stderr);
-  fprintf (stderr, "\n"
+
+  if (si->orig_uid && !strncmp (si->orig_uid, "root/", 5))
+    {
+      fprintf (stderr, "\n"
+          "%s: This is probably because you're logging in as root.  You\n"
+"              shouldn't log in as root: you should log in as a normal user,\n"
+"              and then `su' as needed.  If you insist on logging in as\n"
+"              root, you will have to turn off X's security features before\n"
+"              xscreensaver will work.\n"
+               "\n"
+"              Please read the manual and FAQ for more information:\n",
+               blurb());
+    }
+  else
+    {
+      fprintf (stderr, "\n"
           "%s: Errors at startup are usually authorization problems.\n"
           "%s: Errors at startup are usually authorization problems.\n"
-          "              Did you read the manual and the FAQ?  Specifically,\n"
-          "              the parts of the manual that talk about XAUTH, XDM,\n"
-          "              and root logins?\n"
-          "\n"
+"              But you're not logging in as root (good!) so something\n"
+"              else must be wrong.  Did you read the manual and the FAQ?\n",
+           blurb());
+    }
+
+  fprintf (stderr, "\n"
           "              http://www.jwz.org/xscreensaver/faq.html\n"
           "              http://www.jwz.org/xscreensaver/man.html\n"
           "              http://www.jwz.org/xscreensaver/faq.html\n"
           "              http://www.jwz.org/xscreensaver/man.html\n"
-          "\n",
-           blurb());
+          "\n");
 
   fflush (stderr);
   fflush (stdout);
 
   fflush (stderr);
   fflush (stdout);
@@ -463,6 +479,20 @@ connect_to_server (saver_info *si, int *argc, char **argv)
 {
   Widget toplevel_shell;
 
 {
   Widget toplevel_shell;
 
+#ifdef HAVE_PUTENV
+  char *d = getenv ("DISPLAY");
+  if (!d || !*d)
+    {
+      const char ndpy[] = "DISPLAY=:0.0";
+      /* if (si->prefs.verbose_p) */      /* sigh, too early to test this... */
+        fprintf (stderr,
+                 "%s: warning: $DISPLAY is not set: defaulting to \"%s\".\n",
+                 blurb(), ndpy+8);
+      if (putenv (ndpy))
+        abort ();
+    }
+#endif /* HAVE_PUTENV */
+
   XSetErrorHandler (saver_ehandler);
 
   XtAppSetErrorMsgHandler (si->app, startup_ehandler);
   XSetErrorHandler (saver_ehandler);
 
   XtAppSetErrorMsgHandler (si->app, startup_ehandler);
@@ -594,7 +624,7 @@ print_banner (saver_info *si)
 
   if (p->verbose_p)
     fprintf (stderr,
 
   if (p->verbose_p)
     fprintf (stderr,
-            "%s %s, copyright (c) 1991-2000 "
+            "%s %s, copyright (c) 1991-2001 "
             "by Jamie Zawinski <jwz@jwz.org>.\n",
             progname, si->version);
 
             "by Jamie Zawinski <jwz@jwz.org>.\n",
             progname, si->version);
 
@@ -1539,19 +1569,79 @@ static void
 analyze_display (saver_info *si)
 {
   int i, j;
 analyze_display (saver_info *si)
 {
   int i, j;
-  static const char *exts[][2] = {
-    { "SCREEN_SAVER",             "SGI Screen-Saver" },
-    { "SCREEN-SAVER",            "SGI Screen-Saver" },
-    { "MIT-SCREEN-SAVER",         "MIT Screen-Saver" },
-    { "XIDLE",                   "XIdle" },
-    { "SGI-VIDEO-CONTROL",        "SGI Video-Control" },
-    { "READDISPLAY",             "SGI Read-Display" },
-    { "MIT-SHM",                 "Shared Memory" },
-    { "DOUBLE-BUFFER",           "Double-Buffering" },
-    { "DPMS",                    "Power Management" },
-    { "GLX",                     "GLX" },
-    { "XFree86-VidModeExtension", "XF86 Video-Mode" },
-    { "XINERAMA",                "Xinerama" }
+  static struct {
+    const char *name; const char *desc; Bool useful_p;
+  } exts[] = {
+
+   { "SCREEN_SAVER",                            "SGI Screen-Saver",
+#     ifdef HAVE_SGI_SAVER_EXTENSION
+        True
+#     else
+        False
+#     endif
+   }, { "SCREEN-SAVER",                         "SGI Screen-Saver",
+#     ifdef HAVE_SGI_SAVER_EXTENSION
+        True
+#     else
+        False
+#     endif
+   }, { "MIT-SCREEN-SAVER",                     "MIT Screen-Saver",
+#     ifdef HAVE_MIT_SAVER_EXTENSION
+        True
+#     else
+        False
+#     endif
+   }, { "XIDLE",                                "XIdle",           
+#     ifdef HAVE_XIDLE_EXTENSION
+        True
+#     else
+        False
+#     endif
+   }, { "SGI-VIDEO-CONTROL",                    "SGI Video-Control",
+#     ifdef HAVE_SGI_VC_EXTENSION
+        True
+#     else
+        False
+#     endif
+   }, { "READDISPLAY",                          "SGI Read-Display",
+#     ifdef HAVE_READ_DISPLAY_EXTENSION
+        True
+#     else
+        False
+#     endif
+   }, { "MIT-SHM",                              "Shared Memory",   
+#     ifdef HAVE_XSHM_EXTENSION
+        True
+#     else
+        False
+#     endif
+   }, { "DOUBLE-BUFFER",                        "Double-Buffering",
+#     ifdef HAVE_DOUBLE_BUFFER_EXTENSION
+        True
+#     else
+        False
+#     endif
+   }, { "DPMS",                                 "Power Management",
+#     ifdef HAVE_DPMS_EXTENSION
+        True
+#     else
+        False
+#     endif
+   }, { "GLX",                                  "GLX",             
+#     ifdef HAVE_GL
+        True
+#     else
+        False
+#     endif
+   }, { "XFree86-VidModeExtension",             "XF86 Video-Mode", 
+#     ifdef HAVE_XF86VMODE
+        True
+#     else
+        False
+#     endif
+   }, { "XINERAMA",                             "Xinerama",
+        True
+   },
   };
 
   fprintf (stderr, "%s: running on display \"%s\"\n", blurb(),
   };
 
   fprintf (stderr, "%s: running on display \"%s\"\n", blurb(),
@@ -1563,8 +1653,11 @@ analyze_display (saver_info *si)
   for (i = 0; i < countof(exts); i++)
     {
       int op = 0, event = 0, error = 0;
   for (i = 0; i < countof(exts); i++)
     {
       int op = 0, event = 0, error = 0;
-      if (XQueryExtension (si->dpy, exts[i][0], &op, &event, &error))
-       fprintf (stderr, "%s:   %s\n", blurb(), exts[i][1]);
+      if (XQueryExtension (si->dpy, exts[i].name, &op, &event, &error))
+       fprintf (stderr, "%s:  %s%s\n", blurb(),
+                 exts[i].desc,
+                 (exts[i].useful_p ? "" :
+                  "       \t<== unsupported at compile-time!"));
     }
 
   for (i = 0; i < si->nscreens; i++)
     }
 
   for (i = 0; i < si->nscreens; i++)
index 06fa3bd03343efffd44b4761e762271d87fba40a..313650f977422eb7ce604d505e05f964d9d30976 100644 (file)
@@ -11,7 +11,7 @@
 .if n .sp 1
 .if t .sp .5
 ..
 .if n .sp 1
 .if t .sp .5
 ..
-.TH XScreenSaver 1 "10-Nov-2000 (3.26)" "X Version 11"
+.TH XScreenSaver 1 "19-Jan-2001 (3.27)" "X Version 11"
 .SH NAME
 xscreensaver - graphics hack and screen locker, launched when the user is idle
 .SH SYNOPSIS
 .SH NAME
 xscreensaver - graphics hack and screen locker, launched when the user is idle
 .SH SYNOPSIS
@@ -79,7 +79,12 @@ and
 .BR xscreensaver-command (1)
 programs.
 .SH CONFIGURATION
 .BR xscreensaver-command (1)
 programs.
 .SH CONFIGURATION
-Options to \fIxscreensaver\fP are specified in one of two places: in 
+The easiest way to configure \fIxscreensaver\fP is to simply run the
+.BR xscreensaver-demo (1)
+program, and change the settings through the GUI.  The rest of this
+manual page describes lower level ways of changing settings.
+
+Options to \fIxscreensaver\fP are stored in one of two places: in 
 a \fI.xscreensaver\fP file in your home directory; or in the X resource
 database.  If the \fI.xscreensaver\fP file exists, it overrides any settings
 in the resource database.  
 a \fI.xscreensaver\fP file in your home directory; or in the X resource
 database.  If the \fI.xscreensaver\fP file exists, it overrides any settings
 in the resource database.  
@@ -569,7 +574,7 @@ also how the subprocesses are killed when the screensaver decides that it's
 time to run a different demo: the old one is killed and a new one is launched.
 
 Before launching a subprocess, \fIxscreensaver\fP stores an appropriate value
 time to run a different demo: the old one is killed and a new one is launched.
 
 Before launching a subprocess, \fIxscreensaver\fP stores an appropriate value
-for \fB$DISPLAY\fP in the environment that the child will recieve.  (This is
+for \fB$DISPLAY\fP in the environment that the child will receive.  (This is
 so that if you start \fIxscreensaver\fP with a \fI-display\fP argument, the
 programs which \fIxscreensaver\fP launches will draw on the same display;
 and so that the child will end up drawing on the appropriate screen of a
 so that if you start \fIxscreensaver\fP with a \fI-display\fP argument, the
 programs which \fIxscreensaver\fP launches will draw on the same display;
 and so that the child will end up drawing on the appropriate screen of a
@@ -590,9 +595,9 @@ program (which see.)
 .SH POWER MANAGEMENT
 Modern X servers contain support to power down the monitor after an idle
 period.  If the monitor has powered down, then \fIxscreensaver\fP will
 .SH POWER MANAGEMENT
 Modern X servers contain support to power down the monitor after an idle
 period.  If the monitor has powered down, then \fIxscreensaver\fP will
-notice this, and will not waste CPU by drawing graphics demos on a black
-screen.  An attempt will also be made to explicitly power the monitor
-back up as soon as user activity is detected.
+notice this (after a few minutes), and will not waste CPU by drawing 
+graphics demos on a black screen.  An attempt will also be made to
+explicitly power the monitor back up as soon as user activity is detected.
 
 If your X server supports power management, then
 .BR xset (1)
 
 If your X server supports power management, then
 .BR xset (1)
@@ -656,6 +661,7 @@ The simplest way to accomplish all of this is as follows:
 
 To the file \fI/usr/lib/X11/xdm/Xsetup\fP, add the lines
 .EX
 
 To the file \fI/usr/lib/X11/xdm/Xsetup\fP, add the lines
 .EX
+xhost +localhost
 xscreensaver-command -exit
 xscreensaver &
 .EE
 xscreensaver-command -exit
 xscreensaver &
 .EE
@@ -720,6 +726,24 @@ man pages for
 .BR xauth (1),
 and
 .BR xhost (1).
 .BR xauth (1),
 and
 .BR xhost (1).
+.SH USING GDM(1)
+The instructions for using \fIxscreensaver\fP with
+.BR gdm (1)
+are almost the same as for using
+.BR xdm (1),
+above.  There are only two differences, really: instead 
+of editing \fI/usr/lib/X11/xdm/Xsetup\fP, edit the 
+file \fI/etc/X11/gdm/Init/Default\fP; and instead of 
+editing \fI/usr/lib/X11/xdm/Xsession\fP, edit one or all of the 
+files in the \fI/etc/X11/gdm/Sessions/\fP directory.  (Note that
+the default session (\fI/etc/X11/gdm/Sessions/Default\fP) usually
+simply executes \fI/usr/lib/X11/xdm/Xsession\fP, so be careful
+you aren't initializing xscreensaver twice.)
+
+All the same caveats apply for
+.BR gdm (1)
+as for
+.BR xdm (1).
 .SH USING CDE (COMMON DESKTOP ENVIRONMENT)
 The easiest way to use \fIxscreensaver\fP on a system with CDE is to simply
 switch off the built-in CDE screensaver, and use \fIxscreensaver\fP instead;
 .SH USING CDE (COMMON DESKTOP ENVIRONMENT)
 The easiest way to use \fIxscreensaver\fP on a system with CDE is to simply
 switch off the built-in CDE screensaver, and use \fIxscreensaver\fP instead;
index 138571f844bbe417ba32c3553117363bab303846..111e7865846b8232ba04974d6f49c0755b8cfdb7 100644 (file)
@@ -87,7 +87,7 @@ SRCS          = attraction.c blitspin.c bouboule.c braid.c bubbles.c \
                  squiral.c xflame.c wander.c spotlight.c critical.c \
                  phosphor.c xmatrix.c petri.c shadebobs.c xsublim.c ccurve.c \
                  blaster.c bumps.c ripples.c xteevee.c xspirograph.c \
                  squiral.c xflame.c wander.c spotlight.c critical.c \
                  phosphor.c xmatrix.c petri.c shadebobs.c xsublim.c ccurve.c \
                  blaster.c bumps.c ripples.c xteevee.c xspirograph.c \
-                 nerverot.c xrayswarm.c hyperball.c
+                 nerverot.c xrayswarm.c hyperball.c zoom.c whirlwindwarp.c
 SCRIPTS                = vidwhacker webcollage
 
 OBJS           = attraction.o blitspin.o bouboule.o braid.o bubbles.o \
 SCRIPTS                = vidwhacker webcollage
 
 OBJS           = attraction.o blitspin.o bouboule.o braid.o bubbles.o \
@@ -107,7 +107,7 @@ OBJS                = attraction.o blitspin.o bouboule.o braid.o bubbles.o \
                  squiral.o xflame.o wander.o spotlight.o critical.o \
                  phosphor.o xmatrix.o petri.o shadebobs.o xsublim.o ccurve.o \
                  blaster.o bumps.o ripples.o xteevee.o xspirograph.o \
                  squiral.o xflame.o wander.o spotlight.o critical.o \
                  phosphor.o xmatrix.o petri.o shadebobs.o xsublim.o ccurve.o \
                  blaster.o bumps.o ripples.o xteevee.o xspirograph.o \
-                 nerverot.o xrayswarm.o hyperball.o
+                 nerverot.o xrayswarm.o hyperball.o zoom.o whirlwindwarp.o
 
 EXES           = attraction blitspin bouboule braid bubbles decayscreen deco \
                  drift flag flame forest vines galaxy grav greynetic halo \
 
 EXES           = attraction blitspin bouboule braid bubbles decayscreen deco \
                  drift flag flame forest vines galaxy grav greynetic halo \
@@ -121,7 +121,7 @@ EXES                = attraction blitspin bouboule braid bubbles decayscreen deco \
                  sonar demon loop t3d penetrate deluxe compass squiral \
                  xflame wander spotlight critical phosphor xmatrix petri \
                  shadebobs xsublim ccurve blaster bumps ripples xteevee \
                  sonar demon loop t3d penetrate deluxe compass squiral \
                  xflame wander spotlight critical phosphor xmatrix petri \
                  shadebobs xsublim ccurve blaster bumps ripples xteevee \
-                 xspirograph nerverot xrayswarm hyperball
+                 xspirograph nerverot xrayswarm hyperball zoom whirlwindwarp
 
 HACK_OBJS_1    = $(UTILS_BIN)/resources.o $(UTILS_BIN)/visual.o \
                  $(UTILS_BIN)/usleep.o $(UTILS_BIN)/yarandom.o @XMU_OBJS@
 
 HACK_OBJS_1    = $(UTILS_BIN)/resources.o $(UTILS_BIN)/visual.o \
                  $(UTILS_BIN)/usleep.o $(UTILS_BIN)/yarandom.o @XMU_OBJS@
@@ -150,7 +150,7 @@ MEN         = attraction.man blitspin.man bouboule.man braid.man \
                  sonar.man t3d.man squiral.man spotlight.man critical.man \
                  vidwhacker.man webcollage.man xsublim.man distort.man \
                  phosphor.man xmatrix.man xteevee.man xflame.man petri.man \
                  sonar.man t3d.man squiral.man spotlight.man critical.man \
                  vidwhacker.man webcollage.man xsublim.man distort.man \
                  phosphor.man xmatrix.man xteevee.man xflame.man petri.man \
-                 nerverot.man
+                 nerverot.man zoom.man whirlwindwarp.man
 STAR           = *
 EXTRAS         = README Makefile.in xlock_23.h .gdbinit \
                  images/$(STAR).xbm \
 STAR           = *
 EXTRAS         = README Makefile.in xlock_23.h .gdbinit \
                  images/$(STAR).xbm \
@@ -580,6 +580,13 @@ xrayswarm: xrayswarm.o     $(HACK_OBJS)
 hyperball:     hyperball.o     $(HACK_OBJS)
        $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(HACK_LIBS)
 
 hyperball:     hyperball.o     $(HACK_OBJS)
        $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(HACK_LIBS)
 
+zoom:  zoom.o  $(HACK_OBJS) $(GRAB)
+       $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(GRAB) $(HACK_LIBS) $(GRAB_LIBS)
+
+whirlwindwarp: whirlwindwarp.o $(HACK_OBJS) $(COL)
+       $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(COL) $(HACK_LIBS)
+
+
 # The rules for those hacks which follow the `xlockmore' API.
 #
 
 # The rules for those hacks which follow the `xlockmore' API.
 #
 
@@ -1818,4 +1825,23 @@ hyperball.o: $(UTILS_SRC)/hsv.h
 hyperball.o: $(UTILS_SRC)/colors.h
 hyperball.o: $(UTILS_SRC)/grabscreen.h
 hyperball.o: $(UTILS_SRC)/visual.h
 hyperball.o: $(UTILS_SRC)/colors.h
 hyperball.o: $(UTILS_SRC)/grabscreen.h
 hyperball.o: $(UTILS_SRC)/visual.h
+zoom.o: $(srcdir)/screenhack.h
+zoom.o: ../config.h
+zoom.o: $(UTILS_SRC)/yarandom.h
+zoom.o: $(UTILS_SRC)/usleep.h
+zoom.o: $(UTILS_SRC)/resources.h
+zoom.o: $(UTILS_SRC)/hsv.h
+zoom.o: $(UTILS_SRC)/colors.h
+zoom.o: $(UTILS_SRC)/grabscreen.h
+zoom.o: $(UTILS_SRC)/visual.h
+whirlwindwarp.o: $(srcdir)/screenhack.h
+whirlwindwarp.o: ../config.h
+whirlwindwarp.o: $(UTILS_SRC)/yarandom.h
+whirlwindwarp.o: $(UTILS_SRC)/usleep.h
+whirlwindwarp.o: $(UTILS_SRC)/resources.h
+whirlwindwarp.o: $(UTILS_SRC)/hsv.h
+whirlwindwarp.o: $(UTILS_SRC)/colors.h
+whirlwindwarp.o: $(UTILS_SRC)/grabscreen.h
+whirlwindwarp.o: $(UTILS_SRC)/visual.h
+whirlwindwarp.o: $(UTILS_SRC)/erase.h
 
 
index c9016e6488e3ad42c6f40b6dda2d303dbec63643..ab9095181560c47a318a5b4db19eef00ca4f792c 100644 (file)
@@ -135,8 +135,13 @@ stored in the RESOURCE_MANAGER property.
 .BR X (1),
 .BR xscreensaver (1)
 .SH DISTRIBUTION POLICY
 .BR X (1),
 .BR xscreensaver (1)
 .SH DISTRIBUTION POLICY
-This work is Copyright \(co 1995, 1996 by James Macnicol.  Distribution is
-allowed under the terms of the GNU General Public License.  Look at the
-sources for the legalese.
+This work is Copyright \(co 1995, 1996 by James Macnicol.  Permission
+to use, copy, modify, distribute, and sell this software and its
+documentation for any purpose is hereby granted without fee, provided
+that the above copyright notice appear in all copies and that both that
+copyright notice and this permission notice appear in supporting
+documentation.  No representations are made about the suitability of
+this software for any purpose.  It is provided "as is" without express
+or implied warranty.
 .SH AUTHOR
 .SH AUTHOR
-James Macnicol <J.Macnicol@student.anu.edu.au>.  
+James Macnicol <james.macnicol@mailexcite.com>
index 40ddb9c2e6845cfce142b10993fe752d4f61db2c..fbe3d19da20bad9dfe4775001764c09d9b0252b0 100644 (file)
@@ -86,6 +86,7 @@ $ CC/DECC/PREFIX=ALL/DEFINE=(VMS,HAVE_CONFIG_H,STANDALONE)/INCL=([],[-],[-.UTILS
 $ CC/DECC/PREFIX=ALL/DEFINE=(VMS,HAVE_CONFIG_H,STANDALONE)/INCL=([],[-],[-.UTILS]) TRUCHET.C
 $ CC/DECC/PREFIX=ALL/DEFINE=(VMS,HAVE_CONFIG_H,STANDALONE)/INCL=([],[-],[-.UTILS]) VINES.C
 $ CC/DECC/PREFIX=ALL/DEFINE=(VMS,HAVE_CONFIG_H,STANDALONE)/INCL=([],[-],[-.UTILS]) WANDER.C
 $ CC/DECC/PREFIX=ALL/DEFINE=(VMS,HAVE_CONFIG_H,STANDALONE)/INCL=([],[-],[-.UTILS]) TRUCHET.C
 $ CC/DECC/PREFIX=ALL/DEFINE=(VMS,HAVE_CONFIG_H,STANDALONE)/INCL=([],[-],[-.UTILS]) VINES.C
 $ CC/DECC/PREFIX=ALL/DEFINE=(VMS,HAVE_CONFIG_H,STANDALONE)/INCL=([],[-],[-.UTILS]) WANDER.C
+$ CC/DECC/PREFIX=ALL/DEFINE=(VMS,HAVE_CONFIG_H,STANDALONE)/INCL=([],[-],[-.UTILS]) WHIRLWINDWARP.C
 $ CC/DECC/PREFIX=ALL/DEFINE=(VMS,HAVE_CONFIG_H,STANDALONE)/INCL=([],[-],[-.UTILS]) WORM.C
 $ CC/DECC/PREFIX=ALL/DEFINE=(VMS,HAVE_CONFIG_H,STANDALONE)/INCL=([],[-],[-.UTILS]) XFLAME.C
 $ CC/DECC/PREFIX=ALL/DEFINE=(VMS,HAVE_CONFIG_H,STANDALONE)/INCL=([],[-],[-.UTILS]) XJACK.C
 $ CC/DECC/PREFIX=ALL/DEFINE=(VMS,HAVE_CONFIG_H,STANDALONE)/INCL=([],[-],[-.UTILS]) WORM.C
 $ CC/DECC/PREFIX=ALL/DEFINE=(VMS,HAVE_CONFIG_H,STANDALONE)/INCL=([],[-],[-.UTILS]) XFLAME.C
 $ CC/DECC/PREFIX=ALL/DEFINE=(VMS,HAVE_CONFIG_H,STANDALONE)/INCL=([],[-],[-.UTILS]) XJACK.C
@@ -98,4 +99,5 @@ $ CC/DECC/PREFIX=ALL/DEFINE=(VMS,HAVE_CONFIG_H,STANDALONE)/INCL=([],[-],[-.UTILS
 $ CC/DECC/PREFIX=ALL/DEFINE=(VMS,HAVE_CONFIG_H,STANDALONE)/INCL=([],[-],[-.UTILS]) XSPIROGRAPH.C
 $ CC/DECC/PREFIX=ALL/DEFINE=(VMS,HAVE_CONFIG_H,STANDALONE)/INCL=([],[-],[-.UTILS]) XSUBLIM.C
 $ CC/DECC/PREFIX=ALL/DEFINE=(VMS,HAVE_CONFIG_H,STANDALONE)/INCL=([],[-],[-.UTILS]) XTEEVEE.C
 $ CC/DECC/PREFIX=ALL/DEFINE=(VMS,HAVE_CONFIG_H,STANDALONE)/INCL=([],[-],[-.UTILS]) XSPIROGRAPH.C
 $ CC/DECC/PREFIX=ALL/DEFINE=(VMS,HAVE_CONFIG_H,STANDALONE)/INCL=([],[-],[-.UTILS]) XSUBLIM.C
 $ CC/DECC/PREFIX=ALL/DEFINE=(VMS,HAVE_CONFIG_H,STANDALONE)/INCL=([],[-],[-.UTILS]) XTEEVEE.C
+$ CC/DECC/PREFIX=ALL/DEFINE=(VMS,HAVE_CONFIG_H,STANDALONE)/INCL=([],[-],[-.UTILS]) ZOOM.C
 $ CC/DECC/PREFIX=ALL/DEFINE=(VMS,HAVE_CONFIG_H,STANDALONE,XLOCKMORE)/INCL=([],[-],[-.UTILS])/OBJ=SCREENHACK-XLOCK.OBJ SCREENHACK.C
 $ CC/DECC/PREFIX=ALL/DEFINE=(VMS,HAVE_CONFIG_H,STANDALONE,XLOCKMORE)/INCL=([],[-],[-.UTILS])/OBJ=SCREENHACK-XLOCK.OBJ SCREENHACK.C
index 40ddb9c2e6845cfce142b10993fe752d4f61db2c..fbe3d19da20bad9dfe4775001764c09d9b0252b0 100644 (file)
@@ -86,6 +86,7 @@ $ CC/DECC/PREFIX=ALL/DEFINE=(VMS,HAVE_CONFIG_H,STANDALONE)/INCL=([],[-],[-.UTILS
 $ CC/DECC/PREFIX=ALL/DEFINE=(VMS,HAVE_CONFIG_H,STANDALONE)/INCL=([],[-],[-.UTILS]) TRUCHET.C
 $ CC/DECC/PREFIX=ALL/DEFINE=(VMS,HAVE_CONFIG_H,STANDALONE)/INCL=([],[-],[-.UTILS]) VINES.C
 $ CC/DECC/PREFIX=ALL/DEFINE=(VMS,HAVE_CONFIG_H,STANDALONE)/INCL=([],[-],[-.UTILS]) WANDER.C
 $ CC/DECC/PREFIX=ALL/DEFINE=(VMS,HAVE_CONFIG_H,STANDALONE)/INCL=([],[-],[-.UTILS]) TRUCHET.C
 $ CC/DECC/PREFIX=ALL/DEFINE=(VMS,HAVE_CONFIG_H,STANDALONE)/INCL=([],[-],[-.UTILS]) VINES.C
 $ CC/DECC/PREFIX=ALL/DEFINE=(VMS,HAVE_CONFIG_H,STANDALONE)/INCL=([],[-],[-.UTILS]) WANDER.C
+$ CC/DECC/PREFIX=ALL/DEFINE=(VMS,HAVE_CONFIG_H,STANDALONE)/INCL=([],[-],[-.UTILS]) WHIRLWINDWARP.C
 $ CC/DECC/PREFIX=ALL/DEFINE=(VMS,HAVE_CONFIG_H,STANDALONE)/INCL=([],[-],[-.UTILS]) WORM.C
 $ CC/DECC/PREFIX=ALL/DEFINE=(VMS,HAVE_CONFIG_H,STANDALONE)/INCL=([],[-],[-.UTILS]) XFLAME.C
 $ CC/DECC/PREFIX=ALL/DEFINE=(VMS,HAVE_CONFIG_H,STANDALONE)/INCL=([],[-],[-.UTILS]) XJACK.C
 $ CC/DECC/PREFIX=ALL/DEFINE=(VMS,HAVE_CONFIG_H,STANDALONE)/INCL=([],[-],[-.UTILS]) WORM.C
 $ CC/DECC/PREFIX=ALL/DEFINE=(VMS,HAVE_CONFIG_H,STANDALONE)/INCL=([],[-],[-.UTILS]) XFLAME.C
 $ CC/DECC/PREFIX=ALL/DEFINE=(VMS,HAVE_CONFIG_H,STANDALONE)/INCL=([],[-],[-.UTILS]) XJACK.C
@@ -98,4 +99,5 @@ $ CC/DECC/PREFIX=ALL/DEFINE=(VMS,HAVE_CONFIG_H,STANDALONE)/INCL=([],[-],[-.UTILS
 $ CC/DECC/PREFIX=ALL/DEFINE=(VMS,HAVE_CONFIG_H,STANDALONE)/INCL=([],[-],[-.UTILS]) XSPIROGRAPH.C
 $ CC/DECC/PREFIX=ALL/DEFINE=(VMS,HAVE_CONFIG_H,STANDALONE)/INCL=([],[-],[-.UTILS]) XSUBLIM.C
 $ CC/DECC/PREFIX=ALL/DEFINE=(VMS,HAVE_CONFIG_H,STANDALONE)/INCL=([],[-],[-.UTILS]) XTEEVEE.C
 $ CC/DECC/PREFIX=ALL/DEFINE=(VMS,HAVE_CONFIG_H,STANDALONE)/INCL=([],[-],[-.UTILS]) XSPIROGRAPH.C
 $ CC/DECC/PREFIX=ALL/DEFINE=(VMS,HAVE_CONFIG_H,STANDALONE)/INCL=([],[-],[-.UTILS]) XSUBLIM.C
 $ CC/DECC/PREFIX=ALL/DEFINE=(VMS,HAVE_CONFIG_H,STANDALONE)/INCL=([],[-],[-.UTILS]) XTEEVEE.C
+$ CC/DECC/PREFIX=ALL/DEFINE=(VMS,HAVE_CONFIG_H,STANDALONE)/INCL=([],[-],[-.UTILS]) ZOOM.C
 $ CC/DECC/PREFIX=ALL/DEFINE=(VMS,HAVE_CONFIG_H,STANDALONE,XLOCKMORE)/INCL=([],[-],[-.UTILS])/OBJ=SCREENHACK-XLOCK.OBJ SCREENHACK.C
 $ CC/DECC/PREFIX=ALL/DEFINE=(VMS,HAVE_CONFIG_H,STANDALONE,XLOCKMORE)/INCL=([],[-],[-.UTILS])/OBJ=SCREENHACK-XLOCK.OBJ SCREENHACK.C
index dcdfa94ec7c801da854fdaf618c4e798b83f9d1a..e82ec7814949667d726192960b2fadc3f4fa39e6 100644 (file)
@@ -86,13 +86,14 @@ OBJS                = xscreensaver-gl-helper.o \
                  extrusion-helix4.o extrusion-joinoffset.o extrusion-screw.o \
                  extrusion-taper.o extrusion-twistoid.o sierpinski3d.o gflux.o
 
                  extrusion-helix4.o extrusion-joinoffset.o extrusion-screw.o \
                  extrusion-taper.o extrusion-twistoid.o sierpinski3d.o gflux.o
 
-GL_EXES                = cage gears moebius pipes sproingies stairs superquadrics \
+UTIL_EXES      = xscreensaver-gl-helper
+GL_EXES                = $(UTIL_EXES) \
+                 cage gears moebius pipes sproingies stairs superquadrics \
                  morph3d rubik atlantis lament bubble3d glplanet pulsar \
                  sierpinski3d gflux
 GLE_EXES       = extrusion
                  morph3d rubik atlantis lament bubble3d glplanet pulsar \
                  sierpinski3d gflux
 GLE_EXES       = extrusion
-UTIL_EXES      = xscreensaver-gl-helper
 HACK_EXES      = @GL_EXES@ @GLE_EXES@
 HACK_EXES      = @GL_EXES@ @GLE_EXES@
-EXES           = $(HACK_EXES) $(UTIL_EXES)
+EXES           = $(HACK_EXES)
 
 HACK_OBJS      = screenhack-gl.o xlock-gl.o $(HACK_BIN)/xlockmore.o \
                  $(UTILS_BIN)/resources.o $(UTILS_BIN)/visual.o \
 
 HACK_OBJS      = screenhack-gl.o xlock-gl.o $(HACK_BIN)/xlockmore.o \
                  $(UTILS_BIN)/resources.o $(UTILS_BIN)/visual.o \
@@ -131,7 +132,7 @@ install-program:: $(HACK_EXES)
        done
 
 # the xscreensaver-gl-helper program, in $bindir
        done
 
 # the xscreensaver-gl-helper program, in $bindir
-install-program:: $(UTIL_EXES)
+install-program:: $(HACK_EXES)
        @if [ ! -d $(install_prefix)$(bindir) ]; then                   \
          $(INSTALL_DIRS) $(install_prefix)$(bindir) ;                  \
         fi ;                                                           \
        @if [ ! -d $(install_prefix)$(bindir) ]; then                   \
          $(INSTALL_DIRS) $(install_prefix)$(bindir) ;                  \
         fi ;                                                           \
index 140295c1fe22d86cfe3cdb95dc334b3cd1d6f99b..590d3f2172b4933b8999cf4ba0d119c8598fb0c1 100644 (file)
@@ -103,7 +103,7 @@ static const char sccsid[] = "@(#)atlantis.c        1.3 98/06/18 xlockmore";
 # define HACK_INIT     init_atlantis
 # define HACK_DRAW     draw_atlantis
 # define atlantis_opts xlockmore_opts
 # define HACK_INIT     init_atlantis
 # define HACK_DRAW     draw_atlantis
 # define atlantis_opts xlockmore_opts
-# define DEFAULTS      "*delay:        1000 \n" \
+# define DEFAULTS      "*delay:       40000 \n" \
                         "*count:          4 \n" \
                         "*cycles:       100 \n" \
                         "*size:        6000 \n" \
                         "*count:          4 \n" \
                         "*cycles:       100 \n" \
                         "*size:        6000 \n" \
@@ -395,6 +395,8 @@ draw_atlantis(ModeInfo * mi)
        AllDisplay(ap);
        Animate(ap);
 
        AllDisplay(ap);
        Animate(ap);
 
+        glPopMatrix();
+
        glXSwapBuffers(display, window);
 }
 
        glXSwapBuffers(display, window);
 }
 
index 26a60b588b26af160eafdd1d07c29667a1026489..27ea8030d65ff176af9e86268d9b56ab123c98ca 100644 (file)
@@ -84,7 +84,7 @@ static const char sccsid[] = "@(#)cage.c      4.07 98/01/04 xlockmore";
 # define HACK_DRAW                     draw_cage
 # define cage_opts                     xlockmore_opts
 # define DEFAULTS                      "*cycles:               1       \n"                     \
 # define HACK_DRAW                     draw_cage
 # define cage_opts                     xlockmore_opts
 # define DEFAULTS                      "*cycles:               1       \n"                     \
-                                                       "*delay:                1000    \n"                     \
+                                                       "*delay:                20000   \n"                     \
                                                        "*wireframe:    False   \n"
 # include "xlockmore.h"                /* from the xscreensaver distribution */
 #else /* !STANDALONE */
                                                        "*wireframe:    False   \n"
 # include "xlockmore.h"                /* from the xscreensaver distribution */
 #else /* !STANDALONE */
index 726177e6787ceeed530fdc0e634b64ab313900ad..8537da38858e763d90a4996ca485faacebac7ab7 100644 (file)
@@ -462,8 +462,10 @@ void Create_Texture(char *filename, int do_mipmap, int do_texture_quality)
                      format, GL_UNSIGNED_BYTE, image);
   }
   else {
                      format, GL_UNSIGNED_BYTE, image);
   }
   else {
+    clear_gl_error();
     glTexImage2D(GL_TEXTURE_2D, 0, format, width, height, 0,
                 format, GL_UNSIGNED_BYTE, image);
     glTexImage2D(GL_TEXTURE_2D, 0, format, width, height, 0,
                 format, GL_UNSIGNED_BYTE, image);
+    check_gl_error("texture");
   }
   free(image);
 }
   }
   free(image);
 }
index 1350f737b4b04e0bca2922489721c7dadc088c89..11403ac73de28339d8027ace469beec4b90b6de3 100644 (file)
@@ -48,7 +48,7 @@ static const char sccsid[] = "@(#)gears.c     4.07 97/11/24 xlockmore";
 # define gears_opts                                    xlockmore_opts
 # define DEFAULTS      "*count:                1       \n"                     \
                                        "*cycles:               2       \n"                     \
 # define gears_opts                                    xlockmore_opts
 # define DEFAULTS      "*count:                1       \n"                     \
                                        "*cycles:               2       \n"                     \
-                                       "*delay:                100     \n"                     \
+                                       "*delay:                20000   \n"                     \
                                        "*wireframe:    False   \n"
 # include "xlockmore.h"                                /* from the xscreensaver distribution */
 #else  /* !STANDALONE */
                                        "*wireframe:    False   \n"
 # include "xlockmore.h"                                /* from the xscreensaver distribution */
 #else  /* !STANDALONE */
index 58a89f9fe871d463f9ac0eae3232efac9ac3240a..2286200242d4c14ea11cdafbe7e883aabd97e305 100644 (file)
@@ -448,9 +448,10 @@ void initTexture(void)
        glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_REPEAT);
        glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_NEAREST);
        glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_NEAREST);
        glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_REPEAT);
        glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_NEAREST);
        glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_NEAREST);
+    clear_gl_error();
        glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA, gflux->imageWidth,
                        gflux->imageHeight, 0, GL_RGBA, GL_UNSIGNED_BYTE, gflux->image);
        glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA, gflux->imageWidth,
                        gflux->imageHeight, 0, GL_RGBA, GL_UNSIGNED_BYTE, gflux->image);
-       
+    check_gl_error("texture");
 }
 
 void initLighting(void)
 }
 
 void initLighting(void)
index f7d02557b4f6c1ae96cc6eae9182ae23fcd6d3f6..ad26b3d667f7f4b44ed5814de1af04617c209540 100644 (file)
@@ -237,8 +237,10 @@ setup_xbm_texture (char *bits, int width, int height,
                *out++ = (word & 0x0000FF);
          }
 
                *out++ = (word & 0x0000FF);
          }
 
+  clear_gl_error();
   glTexImage2D(GL_TEXTURE_2D, 0, 3, width, height, 0,
                           GL_RGB, GL_UNSIGNED_BYTE, data);
   glTexImage2D(GL_TEXTURE_2D, 0, 3, width, height, 0,
                           GL_RGB, GL_UNSIGNED_BYTE, data);
+  check_gl_error("texture");
 
   /* setup parameters for texturing */
   glPixelStorei(GL_UNPACK_ALIGNMENT, 1);
 
   /* setup parameters for texturing */
   glPixelStorei(GL_UNPACK_ALIGNMENT, 1);
@@ -266,9 +268,11 @@ setup_file_texture (ModeInfo *mi, char *filename)
          {
                XImage *image = xpm_to_ximage (dpy, visual, cmap, xpm_data);
 
          {
                XImage *image = xpm_to_ximage (dpy, visual, cmap, xpm_data);
 
+        clear_gl_error();
                glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA,
                                         image->width, image->height, 0,
                                         GL_RGBA, GL_UNSIGNED_BYTE, image->data);
                glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA,
                                         image->width, image->height, 0,
                                         GL_RGBA, GL_UNSIGNED_BYTE, image->data);
+        check_gl_error("texture");
 
                /* setup parameters for texturing */
                glPixelStorei(GL_UNPACK_ALIGNMENT, 4);
 
                /* setup parameters for texturing */
                glPixelStorei(GL_UNPACK_ALIGNMENT, 4);
index 9aae80cc19197132bd1c529da10a951f2482c998..83103a61494cbc4bac56272f2ae0297724e6ed7d 100644 (file)
@@ -183,7 +183,6 @@ parse_image_data(ModeInfo *mi)
                               lament_faces);
 }
 
                               lament_faces);
 }
 
-
 \f
 /* Computing normal vectors (thanks to Nat Friedman <ndf@mit.edu>)
  */
 \f
 /* Computing normal vectors (thanks to Nat Friedman <ndf@mit.edu>)
  */
@@ -1975,11 +1974,14 @@ gl_init(ModeInfo *mi)
          int height = lc->texture->width;      /* assume square */
          glBindTexture(GL_TEXTURE_2D, lc->texids[i]);
          glMaterialfv(GL_FRONT, GL_AMBIENT_AND_DIFFUSE, exterior_color);
          int height = lc->texture->width;      /* assume square */
          glBindTexture(GL_TEXTURE_2D, lc->texids[i]);
          glMaterialfv(GL_FRONT, GL_AMBIENT_AND_DIFFUSE, exterior_color);
+
+          clear_gl_error();
          glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA,
                       lc->texture->width, height, 0,
                       GL_RGBA, GL_UNSIGNED_BYTE,
                       (lc->texture->data +
                        (lc->texture->bytes_per_line * height * i)));
          glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA,
                       lc->texture->width, height, 0,
                       GL_RGBA, GL_UNSIGNED_BYTE,
                       (lc->texture->data +
                        (lc->texture->bytes_per_line * height * i)));
+          check_gl_error("texture");
 
          glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_REPEAT);
          glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_REPEAT);
 
          glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_REPEAT);
          glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_REPEAT);
index 66560fca5448766521580b0374ef620a02ed3657..b388a116d0b8eec7340611f2367a734bf428e81d 100644 (file)
@@ -84,7 +84,7 @@ static const char sccsid[] = "@(#)moebius.c   4.08 97/01/04 xlockmore";
 # define HACK_DRAW                     draw_moebius
 # define moebius_opts                  xlockmore_opts
 # define DEFAULTS                      "*cycles:               1       \n"                     \
 # define HACK_DRAW                     draw_moebius
 # define moebius_opts                  xlockmore_opts
 # define DEFAULTS                      "*cycles:               1       \n"                     \
-                                                       "*delay:                1000    \n"                     \
+                                                       "*delay:                20000   \n"                     \
                                                        "*wireframe:    False   \n"
 # include "xlockmore.h"                /* from the xscreensaver distribution */
 #else /* !STANDALONE */
                                                        "*wireframe:    False   \n"
 # include "xlockmore.h"                /* from the xscreensaver distribution */
 #else /* !STANDALONE */
index d210016e2acae22df807c88d92171e068de8ecde..432186a6b292ec2d5faced807ec79b31668473fd 100644 (file)
@@ -68,7 +68,7 @@ static const char sccsid[] = "@(#)morph3d.c   4.07 97/11/24 xlockmore";
 # define HACK_INIT             init_morph3d
 # define HACK_DRAW             draw_morph3d
 # define morph3d_opts          xlockmore_opts
 # define HACK_INIT             init_morph3d
 # define HACK_DRAW             draw_morph3d
 # define morph3d_opts          xlockmore_opts
-# define DEFAULTS              "*delay: 1000 \n" \
+# define DEFAULTS              "*delay: 40000 \n" \
                                "*count: 0 \n"
 # include "xlockmore.h"                /* from the xscreensaver distribution */
 #else /* !STANDALONE */
                                "*count: 0 \n"
 # include "xlockmore.h"                /* from the xscreensaver distribution */
 #else /* !STANDALONE */
index a6b971b77e8d1b7f7ac889c557d79b4aa31e3f1e..a6125c8154ed3a3e6b02feb0a01761ee19fbed3d 100644 (file)
@@ -606,9 +606,13 @@ void Create_Texture(char *filename)
   /* mipmaps make the image look much nicer */
   if (do_mipmap)
        a=gluBuild2DMipmaps(GL_TEXTURE_2D, format, width, height, format, GL_UNSIGNED_BYTE, image);
   /* mipmaps make the image look much nicer */
   if (do_mipmap)
        a=gluBuild2DMipmaps(GL_TEXTURE_2D, format, width, height, format, GL_UNSIGNED_BYTE, image);
-  else 
-       glTexImage2D(GL_TEXTURE_2D, 0, format, width, height, 0,
-                                format, GL_UNSIGNED_BYTE, image);
+  else
+    {
+      clear_gl_error();
+      glTexImage2D(GL_TEXTURE_2D, 0, format, width, height, 0,
+                   format, GL_UNSIGNED_BYTE, image);
+      check_gl_error("texture");
+    }
 
   free(image);
 }
 
   free(image);
 }
index 2df2a39b85ef532176a6de5179947be80e963392..3a753a998a45121bf9ed26bcf91d39e659bb4f82 100644 (file)
@@ -41,7 +41,7 @@ static const char sccsid[] = "@(#)sierpinski3D.c      00.01 99/11/04 xlockmore";
 # define gasket_opts                           xlockmore_opts
 # define DEFAULTS      "*count:                1       \n"                     \
                        "*cycles:               9999    \n"                     \
 # define gasket_opts                           xlockmore_opts
 # define DEFAULTS      "*count:                1       \n"                     \
                        "*cycles:               9999    \n"                     \
-                       "*delay:                8000    \n"                     \
+                       "*delay:                20000   \n"                     \
                        "*maxDepth:             5       \n"                     \
                        "*speed:                150     \n"                     \
                        "*wireframe:    False   \n"
                        "*maxDepth:             5       \n"                     \
                        "*speed:                150     \n"                     \
                        "*wireframe:    False   \n"
index 8ca7c9f8a2af210d3e7b054825abc6e7efcb7f46..f27f14d14917a4f5af67e3a965388a562ef3b585 100644 (file)
@@ -58,7 +58,7 @@ static const char sccsid[] = "@(#)sproingiewrap.c     4.07 97/11/24 xlockmore";
 # define HACK_INIT                                     init_sproingies
 # define HACK_DRAW                                     draw_sproingies
 # define sproingies_opts                       xlockmore_opts
 # define HACK_INIT                                     init_sproingies
 # define HACK_DRAW                                     draw_sproingies
 # define sproingies_opts                       xlockmore_opts
-# define DEFAULTS      "*delay:                0     \n"                       \
+# define DEFAULTS      "*delay:                20000   \n"                     \
                                        "*count:                5       \n"                     \
                                        "*cycles:               0       \n"                     \
                                        "*size:                 0       \n"                     \
                                        "*count:                5       \n"                     \
                                        "*cycles:               0       \n"                     \
                                        "*size:                 0       \n"                     \
index cfc2999a56d7a8938ba9f125423063e9636e8e0f..55d7122e99e9918effe42c1481c4ccd79334c69f 100644 (file)
@@ -83,7 +83,7 @@ static const char sccsid[] = "@(#)superquadrics.c     4.07 97/11/24 xlockmore";
 # define HACK_INIT                                     init_superquadrics
 # define HACK_DRAW                                     draw_superquadrics
 # define superquadrics_opts                    xlockmore_opts
 # define HACK_INIT                                     init_superquadrics
 # define HACK_DRAW                                     draw_superquadrics
 # define superquadrics_opts                    xlockmore_opts
-# define DEFAULTS      "*delay:                100     \n"                     \
+# define DEFAULTS      "*delay:                40000   \n"                     \
                                        "*count:                25      \n"                     \
                                        "*cycles:               40      \n"                     \
                                        "*wireframe:    False   \n"
                                        "*count:                25      \n"                     \
                                        "*cycles:               40      \n"                     \
                                        "*wireframe:    False   \n"
index 0256cf0b7c9f0b0f1fde0e6778ae14672a8d0ce1..8250e79cd125eff60cf35daab9424d6357ba0e9b 100644 (file)
@@ -97,3 +97,42 @@ init_GL(ModeInfo * mi)
     return ptr;
   }
 }
     return ptr;
   }
 }
+
+
+\f
+
+/* clear away any lingering error codes */
+void
+clear_gl_error (void)
+{
+  while (glGetError() != GL_NO_ERROR)
+    ;
+}
+
+/* report a GL error. */
+void
+check_gl_error (const char *type)
+{
+  char buf[100];
+  GLenum i;
+  const char *e;
+  switch ((i = glGetError())) {
+  case GL_NO_ERROR: return;
+  case GL_INVALID_ENUM:          e = "invalid enum";      break;
+  case GL_INVALID_VALUE:         e = "invalid value";     break;
+  case GL_INVALID_OPERATION:     e = "invalid operation"; break;
+  case GL_STACK_OVERFLOW:        e = "stack overflow";    break;
+  case GL_STACK_UNDERFLOW:       e = "stack underflow";   break;
+  case GL_OUT_OF_MEMORY:         e = "out of memory";     break;
+#ifdef GL_TABLE_TOO_LARGE_EXT
+  case GL_TABLE_TOO_LARGE_EXT:   e = "table too large";   break;
+#endif
+#ifdef GL_TEXTURE_TOO_LARGE_EXT
+  case GL_TEXTURE_TOO_LARGE_EXT: e = "texture too large"; break;
+#endif
+  default:
+    e = buf; sprintf (buf, "unknown error %d", (int) i); break;
+  }
+  fprintf (stderr, "%s: %s error: %s\n", progname, type, e);
+  exit (1);
+}
index 793c6e3ac7e6a6616d041c232a04aae9fec28a6d..c3c8ad4aa713280b5809c91e3253c2a29d0ff540 100644 (file)
@@ -329,6 +329,11 @@ visual_warning (Screen *screen, Window window, Visual *visual, Colormap cmap,
       fprintf (stderr, "%s: using %s's colormap 0x%x.\n",
                progname, win, (unsigned long) cmap);
     }
       fprintf (stderr, "%s: using %s's colormap 0x%x.\n",
                progname, win, (unsigned long) cmap);
     }
+
+# ifdef USE_GL
+  if (!validate_gl_visual (stderr, screen, win, visual))
+    exit (1);
+# endif /* USE_GL */
 }
 
 
 }
 
 
@@ -468,6 +473,11 @@ main (int argc, char **argv)
       Boolean def_visual_p;
       visual = pick_visual (screen);
 
       Boolean def_visual_p;
       visual = pick_visual (screen);
 
+# ifdef USE_GL
+      if (!validate_gl_visual (stderr, screen, "window", visual))
+        exit (1);
+# endif /* USE_GL */
+
       if (toplevel->core.width <= 0)
        toplevel->core.width = 600;
       if (toplevel->core.height <= 0)
       if (toplevel->core.width <= 0)
        toplevel->core.width = 600;
       if (toplevel->core.height <= 0)
index 63222520c25bfa7ae193c7ec7b3db78d38e00a73..158a251fa8afa006bc3d9e52a704487fbadee3bb 100644 (file)
@@ -1,4 +1,4 @@
-/* xscreensaver, Copyright (c) 1992-1997 Jamie Zawinski <jwz@jwz.org>
+/* xscreensaver, Copyright (c) 1992-2001 Jamie Zawinski <jwz@jwz.org>
  *
  * Permission to use, copy, modify, distribute, and sell this software and its
  * documentation for any purpose is hereby granted without fee, provided that
  *
  * Permission to use, copy, modify, distribute, and sell this software and its
  * documentation for any purpose is hereby granted without fee, provided that
@@ -97,4 +97,10 @@ extern void screenhack (Display*,Window);
 extern void screenhack_handle_event (Display*, XEvent*);
 extern void screenhack_handle_events (Display*);
 
 extern void screenhack_handle_event (Display*, XEvent*);
 extern void screenhack_handle_events (Display*);
 
+/* Be Posixly correct */
+#undef  bzero
+#define bzero  __ERROR_use_memset_not_bzero_in_xscreensaver__
+#undef  bcopy
+#define bcopy  __ERROR_use_memcpy_not_bcopy_in_xscreensaver__
+
 #endif /* __SCREENHACK_H__ */
 #endif /* __SCREENHACK_H__ */
index 5ccbc44c079b4219031f66befd7d4c618a9f1208..53f56aa925c2ae992f4a302bd7aae868b43b4f64 100644 (file)
@@ -28,7 +28,8 @@
  *   - plot the process table, by process size, cpu usage, or total time;
  *   - plot the logged on users by idle time or cpu usage.
  *
  *   - plot the process table, by process size, cpu usage, or total time;
  *   - plot the logged on users by idle time or cpu usage.
  *
- * Copyright (C) 1998 by Stephen Martin (smartin@vanderfleet-martin.net).
+ * Copyright (C) 1998, 2001
+ *  by Stephen Martin (smartin@vanderfleet-martin.net).
  * Permission to use, copy, modify, distribute, and sell this software and its
  * documentation for any purpose is hereby granted without fee, provided that
  * the above copyright notice appear in all copies and that both that
  * Permission to use, copy, modify, distribute, and sell this software and its
  * documentation for any purpose is hereby granted without fee, provided that
  * the above copyright notice appear in all copies and that both that
@@ -37,7 +38,7 @@
  * software for any purpose.  It is provided "as is" without express or 
  * implied warranty.
  *
  * software for any purpose.  It is provided "as is" without express or 
  * implied warranty.
  *
- * $Revision: 1.17 $
+ * $Revision: 1.18 $
  *
  * Version 1.0 April 27, 1998.
  * - Initial version
  *
  * Version 1.0 April 27, 1998.
  * - Initial version
@@ -699,7 +700,7 @@ subnetHostsList(int base, int subnet_width)
         fprintf (stderr,
     "%s: pinging %u hosts is a bad idea; please use a subnet mask of 24 bits\n"
                  "       or more (255 hosts max.)\n",
         fprintf (stderr,
     "%s: pinging %u hosts is a bad idea; please use a subnet mask of 24 bits\n"
                  "       or more (255 hosts max.)\n",
-                 progname, 1L << (32 - subnet_width));
+                 progname, (1L << (32 - subnet_width)) - 1);
         exit (1);
       }
     else if (subnet_width > 30)
         exit (1);
       }
     else if (subnet_width > 30)
@@ -1662,6 +1663,7 @@ Sonar(sonar_info *si, Bogie *bl)
            else
                prev->next = bp->next;
            freeBogie(bp);
            else
                prev->next = bp->next;
            freeBogie(bp);
+            bp = prev;
        } else
            prev = bp;
     }
        } else
            prev = bp;
     }
index a630e9938663fa6b20d0ab04b649cc79d768beea..8afd6252d31db993a1e0f4c41f527e1c0a0753ff 100755 (executable)
@@ -25,9 +25,10 @@ use Socket;
 require Time::Local;
 require POSIX;
 use Fcntl ':flock'; # import LOCK_* constants
 require Time::Local;
 require POSIX;
 use Fcntl ':flock'; # import LOCK_* constants
+use POSIX qw(strftime);
 
 
 
 
-my $version = q{ $Revision: 1.60 $ }; $version =~ s/^[^0-9]+([0-9.]+).*$/$1/;
+my $version = q{ $Revision: 1.61 $ }; $version =~ s/^[^0-9]+([0-9.]+).*$/$1/;
 my $copyright = "WebCollage $version, Copyright (c) 1999" .
     " Jamie Zawinski <jwz\@jwz.org>\n" .
     "            http://www.jwz.org/xscreensaver/\n";
 my $copyright = "WebCollage $version, Copyright (c) 1999" .
     " Jamie Zawinski <jwz\@jwz.org>\n" .
     "            http://www.jwz.org/xscreensaver/\n";
@@ -118,6 +119,9 @@ my @tripwire_words = ("aberrate", "abode", "amorphous", "antioch",
                       "eggplant");
 
 
                       "eggplant");
 
 
+sub blurb {
+    return "$progname: " . strftime ("%H:%M:%S: ", localtime);
+}
 
 
 ##############################################################################
 
 
 ##############################################################################
@@ -137,13 +141,13 @@ sub get_document_1 {
     if ($timeout > $http_timeout) { $timeout = $http_timeout; }
 
     if ( $verbose > 3 ) {
     if ($timeout > $http_timeout) { $timeout = $http_timeout; }
 
     if ( $verbose > 3 ) {
-       print STDERR "$progname: get_document_1 $url " .
+       print STDERR blurb() . "get_document_1 $url " .
             ($referer ? $referer : "") . "\n";
     }
 
     my($url_proto, $dummy, $serverstring, $path) = split(/\//, $url, 4);
     if (! ($url_proto && $url_proto =~ m/^http:$/i)) {
             ($referer ? $referer : "") . "\n";
     }
 
     my($url_proto, $dummy, $serverstring, $path) = split(/\//, $url, 4);
     if (! ($url_proto && $url_proto =~ m/^http:$/i)) {
-        if ($verbose) { print STDERR "$progname: not an HTTP URL: $url\n"; }
+        if ($verbose) { print STDERR blurb() . "not an HTTP URL: $url\n"; }
         return ();
     }
 
         return ();
     }
 
@@ -175,7 +179,7 @@ sub get_document_1 {
     eval {
         local $SIG{ALRM}  = sub {
             if ($verbose > 0) {
     eval {
         local $SIG{ALRM}  = sub {
             if ($verbose > 0) {
-                print STDERR "$progname: timed out ($timeout) for $url\n";
+                print STDERR blurb() . "timed out ($timeout) for $url\n";
             }
             die "alarm\n"
             };
             }
             die "alarm\n"
             };
@@ -183,11 +187,11 @@ sub get_document_1 {
 
         $proto   = getprotobyname('tcp');
         if (!socket(S, PF_INET, SOCK_STREAM, $proto)) {
 
         $proto   = getprotobyname('tcp');
         if (!socket(S, PF_INET, SOCK_STREAM, $proto)) {
-            print STDERR "$progname: socket: $!\n" if ($verbose);
+            print STDERR blurb() . "socket: $!\n" if ($verbose);
             return;
         }
         if (!connect(S, $paddr)) {
             return;
         }
         if (!connect(S, $paddr)) {
-            print STDERR "$progname: connect($serverstring): $!\n"
+            print STDERR blurb() . "connect($serverstring): $!\n"
                 if ($verbose);
             return;
         }
                 if ($verbose);
             return;
         }
@@ -219,7 +223,7 @@ sub get_document_1 {
         close S;
 
         if ( $verbose > 3 ) {
         close S;
 
         if ( $verbose > 3 ) {
-            print STDERR "$progname:    ==> $http\n";
+            print STDERR blurb() . "   ==> $http\n";
         }
 
         return ( $http, $head, $body );
         }
 
         return ( $http, $head, $body );
@@ -270,7 +274,7 @@ sub get_document {
                 $location =~ s/[\r\n]$//;
 
                if ( $verbose > 3 ) {
                 $location =~ s/[\r\n]$//;
 
                if ( $verbose > 3 ) {
-                   print STDERR "$progname: redirect from " .
+                   print STDERR blurb() . "redirect from " .
                         "$url to $location\n";
                }
                 $referer = $url;
                         "$url to $location\n";
                }
                 $referer = $url;
@@ -292,7 +296,7 @@ sub get_document {
 
             if ($loop_count++ > $max_loop_count) {
                if ( $verbose > 1 ) {
 
             if ($loop_count++ > $max_loop_count) {
                if ( $verbose > 1 ) {
-                   print STDERR "$progname: too many redirects " .
+                   print STDERR blurb() . "too many redirects " .
                         "($max_loop_count) from $orig_url\n";
                }
                 $body = undef;
                         "($max_loop_count) from $orig_url\n";
                }
                 $body = undef;
@@ -334,7 +338,7 @@ sub pick_image_from_body {
     }
 
     if ( $verbose > 3 ) {
     }
 
     if ( $verbose > 3 ) {
-       print STDERR "$progname: base is $base\n";
+       print STDERR blurb() . "base is $base\n";
     }
 
 
     }
 
 
@@ -380,7 +384,7 @@ sub pick_image_from_body {
     }
     if ($trip_count >= $#tripwire_words - 2) {
         if ($verbose > 1) {
     }
     if ($trip_count >= $#tripwire_words - 2) {
         if ($verbose > 1) {
-            print STDERR "$progname: there is probably a dictionary in" .
+            print STDERR blurb() . "there is probably a dictionary in" .
                 " \"$url\": rejecting.\n";
         }
         $rejected_urls{$url} = -1;
                 " \"$url\": rejecting.\n";
         }
         $rejected_urls{$url} = -1;
@@ -404,7 +408,7 @@ sub pick_image_from_body {
                 my $L = length($1);
                 if ($L > 1000) {
                     if ($verbose > 1) {
                 my $L = length($1);
                 if ($L > 1000) {
                     if ($verbose > 1) {
-                        print STDERR "$progname: keywords of" .
+                        print STDERR blurb() . "keywords of" .
                             " length $L in $url: rejecting.\n";
                     }
                     $rejected_urls{$url} = $L;
                             " length $L in $url: rejecting.\n";
                     }
                     $rejected_urls{$url} = $L;
@@ -412,7 +416,7 @@ sub pick_image_from_body {
                     $_ = undef;
                     return ();
                 } elsif ( $verbose > 2 ) {
                     $_ = undef;
                     return ();
                 } elsif ( $verbose > 2 ) {
-                    print STDERR "$progname: keywords of length $L" .
+                    print STDERR blurb() . "keywords of length $L" .
                         " in $url (ok.)\n";
                 }
             }
                         " in $url (ok.)\n";
                 }
             }
@@ -450,7 +454,7 @@ sub pick_image_from_body {
            if ( $width && $width < $min_width) {
                if ( $verbose > 2 ) {
                     if (!$height) { $height = "?"; }
            if ( $width && $width < $min_width) {
                if ( $verbose > 2 ) {
                     if (!$height) { $height = "?"; }
-                   print STDERR "$progname: skip narrow image " .
+                   print STDERR blurb() . "skip narrow image " .
                         "$_ (${width}x$height)\n";
                }
                next;
                         "$_ (${width}x$height)\n";
                }
                next;
@@ -459,7 +463,7 @@ sub pick_image_from_body {
            if ( $height && $height < $min_height) {
                if ( $verbose > 2 ) {
                     if (!$width) { $width = "?"; }
            if ( $height && $height < $min_height) {
                if ( $verbose > 2 ) {
                     if (!$width) { $width = "?"; }
-                   print STDERR "$progname: skip short image " .
+                   print STDERR blurb() . "skip short image " .
                         "$_ (${width}x$height)\n";
                }
                next;
                         "$_ (${width}x$height)\n";
                }
                next;
@@ -470,7 +474,7 @@ sub pick_image_from_body {
                 ($width * $min_ratio ) > $height ) {
                if ( $verbose > 2 ) {
                     if (!$height) { $height = "?"; }
                 ($width * $min_ratio ) > $height ) {
                if ( $verbose > 2 ) {
                     if (!$height) { $height = "?"; }
-                   print STDERR "$progname: skip bad ratio " .
+                   print STDERR blurb() . "skip bad ratio " .
                         "$_ (${width}x$height)\n";
                }
                next;
                         "$_ (${width}x$height)\n";
                }
                next;
@@ -480,13 +484,13 @@ sub pick_image_from_body {
 
            if ( $unique_urls{$url} ) {
                if ( $verbose > 2 ) {
 
            if ( $unique_urls{$url} ) {
                if ( $verbose > 2 ) {
-                    print STDERR "$progname: skip duplicate image $_\n";
+                    print STDERR blurb() . "skip duplicate image $_\n";
                 }
                next;
            }
 
            if ( $verbose > 2 ) {
                 }
                next;
            }
 
            if ( $verbose > 2 ) {
-               print STDERR "$progname: got $url" . 
+               print STDERR blurb() . "got $url" . 
                    ($width && $height ? " (${width}x${height})" : "") .
                    ($was_inline ? " (inline)" : "") . "\n";
            }
                    ($width && $height ? " (${width}x${height})" : "") .
                    ($was_inline ? " (inline)" : "") . "\n";
            }
@@ -513,7 +517,7 @@ sub pick_image_from_body {
 
     if ( $#urls == 0 ) {
        if ( $verbose > 2 ) {
 
     if ( $#urls == 0 ) {
        if ( $verbose > 2 ) {
-           print STDERR "$progname: no images on $base\n";
+           print STDERR blurb() . "no images on $base\n";
        }
        return ();
     }
        }
        return ();
     }
@@ -525,7 +529,7 @@ sub pick_image_from_body {
     $url = $urls[$i];
 
     if ( $verbose > 2 ) {
     $url = $urls[$i];
 
     if ( $verbose > 2 ) {
-       print STDERR "$progname: picked $url\n";
+       print STDERR blurb() . "picked $url\n";
     }
 
     return $url;
     }
 
     return $url;
@@ -626,7 +630,7 @@ sub pick_from_image_randomizer {
     }
 
     if ( $verbose > 3 ) {
     }
 
     if ( $verbose > 3 ) {
-        $_ = $words; s/%20/ /g; print STDERR "$progname: search words: $_\n";
+        $_ = $words; s/%20/ /g; print STDERR blurb() . "search words: $_\n";
     }
 
     if ( $verbose > 3 ) {
     }
 
     if ( $verbose > 3 ) {
@@ -712,7 +716,7 @@ sub pick_from_image_randomizer {
         if ($which == 0 && $u =~ m@[/.]corbis\.com@) {
            $skipped = 1;
             if ( $verbose > 3 ) {
         if ($which == 0 && $u =~ m@[/.]corbis\.com@) {
            $skipped = 1;
             if ( $verbose > 3 ) {
-                print STDERR "$progname: skipping corbis URL: $u\n";
+                print STDERR blurb() . "skipping corbis URL: $u\n";
             }
             next;
 
             }
             next;
 
@@ -722,19 +726,19 @@ sub pick_from_image_randomizer {
                   ! ($u =~ m@dailynews\.yahoo\.com@))) {  # not dailynews
 #            $skipped = 1;
             if ( $verbose > 3 ) {
                   ! ($u =~ m@dailynews\.yahoo\.com@))) {  # not dailynews
 #            $skipped = 1;
             if ( $verbose > 3 ) {
-                print STDERR "$progname: skipping non-AP URL: $u\n";
+                print STDERR blurb() . "skipping non-AP URL: $u\n";
             }
             next;
 
         } elsif ( $rejected_urls{$u} ) {
             if ( $verbose > 3 ) {
                 my $L = $rejected_urls{$u};
             }
             next;
 
         } elsif ( $rejected_urls{$u} ) {
             if ( $verbose > 3 ) {
                 my $L = $rejected_urls{$u};
-                print STDERR "$progname: pre-rejecting sub-page: $u\n";
+                print STDERR blurb() . "pre-rejecting sub-page: $u\n";
             }
             next;
 
         } elsif ( $verbose > 3 ) {
             }
             next;
 
         } elsif ( $verbose > 3 ) {
-            print STDERR "$progname: sub-page: $u\n";
+            print STDERR blurb() . "sub-page: $u\n";
         }
 
         $subpages[++$#subpages] = $u;
         }
 
         $subpages[++$#subpages] = $u;
@@ -742,7 +746,7 @@ sub pick_from_image_randomizer {
 
     if ( $#subpages < 0 ) {
         if (!$skipped && $verbose > 1) {
 
     if ( $#subpages < 0 ) {
         if (!$skipped && $verbose > 1) {
-            print STDERR "$progname: found nothing on $base " .
+            print STDERR blurb() . "found nothing on $base " .
                 "($length bytes, $href_count links).\n";
         }
         $body = undef;
                 "($length bytes, $href_count links).\n";
         }
         $body = undef;
@@ -755,7 +759,7 @@ sub pick_from_image_randomizer {
     my $subpage = $subpages[$i];
 
     if ( $verbose > 3 ) {
     my $subpage = $subpages[$i];
 
     if ( $verbose > 3 ) {
-       print STDERR "$progname: picked page $subpage\n";
+       print STDERR blurb() . "picked page $subpage\n";
     }
 
 
     }
 
 
@@ -990,7 +994,7 @@ sub url_only_output {
 
 sub x_cleanup {
     my ($sig) = @_;
 
 sub x_cleanup {
     my ($sig) = @_;
-    if ($verbose > 0) { print STDERR "$progname: caught signal $sig.\n"; }
+    if ($verbose > 0) { print STDERR blurb() . "caught signal $sig.\n"; }
     unlink $image_ppm, $image_tmp1, $image_tmp2;
     exit 1;
 }
     unlink $image_ppm, $image_tmp1, $image_tmp2;
     exit 1;
 }
@@ -1005,29 +1009,29 @@ sub nontrapping_system {
     if ($verbose > 1) {
         $_ = join(" ", @_);
         s/\"[^\"]+\"/\"...\"/g;
     if ($verbose > 1) {
         $_ = join(" ", @_);
         s/\"[^\"]+\"/\"...\"/g;
-        print STDERR "$progname: executing \"$_\"\n";
+        print STDERR blurb() . "executing \"$_\"\n";
     }
 
     my $rc = system @_;
 
     if ($rc == 0) {
         if ($verbose > 1) {
     }
 
     my $rc = system @_;
 
     if ($rc == 0) {
         if ($verbose > 1) {
-            print STDERR "$progname: subproc exited normally.\n";
+            print STDERR blurb() . "subproc exited normally.\n";
         }
     } elsif (($rc & 0xff) == 0) {
         $rc >>= 8;
         if ($verbose) {
         }
     } elsif (($rc & 0xff) == 0) {
         $rc >>= 8;
         if ($verbose) {
-            print "$progname: subproc exited with status $rc.\n";
+            print blurb() . "subproc exited with status $rc.\n";
         }
     } else {
         if ($rc & 0x80) {
             if ($verbose) {
         }
     } else {
         if ($rc & 0x80) {
             if ($verbose) {
-                print "$progname: subproc dumped core.\n";
+                print blurb() . "subproc dumped core.\n";
             }
             $rc &= ~0x80;
         }
         if ($verbose) {
             }
             $rc &= ~0x80;
         }
         if ($verbose) {
-            print "$progname: subproc died with signal $rc.\n";
+            print blurb() . "subproc died with signal $rc.\n";
         }
         # die that way ourselves.
         kill $rc, $$;
         }
         # die that way ourselves.
         kill $rc, $$;
@@ -1078,7 +1082,7 @@ sub image_to_pnm {
 
         local $SIG{ALRM}  = sub {
             if ($verbose > 0) {
 
         local $SIG{ALRM}  = sub {
             if ($verbose > 0) {
-                print STDERR "$progname: timed out ($cvt_timeout) for " .
+                print STDERR blurb() . "timed out ($cvt_timeout) for " .
                     "$cmd on \"$url\" in pid $pid\n";
             }
             kill ('TERM', $pid) if ($pid);
                     "$cmd on \"$url\" in pid $pid\n";
             }
             kill ('TERM', $pid) if ($pid);
@@ -1093,26 +1097,26 @@ sub image_to_pnm {
             $body = undef;
             close PIPE;
 
             $body = undef;
             close PIPE;
 
-            if ($verbose > 3) { print STDERR "$progname: awaiting $pid\n"; }
+            if ($verbose > 3) { print STDERR blurb() . "awaiting $pid\n"; }
             waitpid ($pid, 0);
             waitpid ($pid, 0);
-            if ($verbose > 3) { print STDERR "$progname: $pid completed\n"; }
+            if ($verbose > 3) { print STDERR blurb() . "$pid completed\n"; }
 
 
             my $size = (stat($output))[7];
             if ($size < 5) {
                 if ($verbose) {
 
 
             my $size = (stat($output))[7];
             if ($size < 5) {
                 if ($verbose) {
-                    print STDERR "$progname: $cmd on ${w}x$h \"$url\" failed" .
+                    print STDERR blurb() . "$cmd on ${w}x$h \"$url\" failed" .
                         " ($size bytes)\n";
                 }
                 return ();
             }
 
             if ($verbose > 1) {
                         " ($size bytes)\n";
                 }
                 return ();
             }
 
             if ($verbose > 1) {
-                print STDERR "$progname: created ${w}x$h $output ($cmd)\n";
+                print STDERR blurb() . "created ${w}x$h $output ($cmd)\n";
             }
             return ($w, $h);
         } else {
             }
             return ($w, $h);
         } else {
-            print STDERR "$progname: $cmd failed: $!\n";
+            print STDERR blurb() . "$cmd failed: $!\n";
             return ();
         }
     };
             return ();
         }
     };
@@ -1141,7 +1145,7 @@ sub x_output {
     # make sure the various programs we execute exist, right up front.
     foreach ("ppmmake", "giftopnm", "djpeg", "pnmpaste", "pnmscale",
              "pnmcut") {
     # make sure the various programs we execute exist, right up front.
     foreach ("ppmmake", "giftopnm", "djpeg", "pnmpaste", "pnmscale",
              "pnmcut") {
-        which ($_) || die "$progname: $_ not found on \$PATH.\n";
+        which ($_) || die blurb() . "$_ not found on \$PATH.\n";
     }
 
     if (which($win_cmd_1)) {
     }
 
     if (which($win_cmd_1)) {
@@ -1151,7 +1155,7 @@ sub x_output {
     } elsif (which($win_cmd_3)) {
         $ppm_to_root_window_cmd = $ppm_to_root_window_cmd_3;
      } else {
     } elsif (which($win_cmd_3)) {
         $ppm_to_root_window_cmd = $ppm_to_root_window_cmd_3;
      } else {
-        die "$progname: didn't find $win_cmd_1, $win_cmd_2, or $win_cmd_3 on \$PATH.\n";
+        die blurb() . "didn't find $win_cmd_1, $win_cmd_2, or $win_cmd_3 on \$PATH.\n";
     }
 
     $SIG{HUP}  = \&x_cleanup;
     }
 
     $SIG{HUP}  = \&x_cleanup;
@@ -1166,11 +1170,11 @@ sub x_output {
 
     if (!$img_width || !$img_height) {
         $_ = "xdpyinfo";
 
     if (!$img_width || !$img_height) {
         $_ = "xdpyinfo";
-        which ($_) || die "$progname: $_ not found on \$PATH.\n";
+        which ($_) || die blurb() . "$_ not found on \$PATH.\n";
         $_ = `$_`;
         ($img_width, $img_height) = m/dimensions: *(\d+)x(\d+) /;
         if (!defined($img_height)) {
         $_ = `$_`;
         ($img_width, $img_height) = m/dimensions: *(\d+)x(\d+) /;
         if (!defined($img_height)) {
-            die "$progname: xdpyinfo failed.\n";
+            die blurb() . "xdpyinfo failed.\n";
         }
     }
 
         }
     }
 
@@ -1184,7 +1188,7 @@ sub x_output {
             $bgimage = $background;
             
         } elsif (! $background =~ m@^[-a-z0-9 ]+$@i) {
             $bgimage = $background;
             
         } elsif (! $background =~ m@^[-a-z0-9 ]+$@i) {
-            print STDERR "$progname: not a color or readable file: " .
+            print STDERR blurb() . "not a color or readable file: " .
                 "$background\n";
             exit 1;
         } else {
                 "$background\n";
             exit 1;
         } else {
@@ -1197,7 +1201,7 @@ sub x_output {
     #
     $_ = "ppmmake '$bgcolor' $img_width $img_height";
     if ($verbose > 1) {
     #
     $_ = "ppmmake '$bgcolor' $img_width $img_height";
     if ($verbose > 1) {
-        print STDERR "$progname: creating base image: $_\n";
+        print STDERR blurb() . "creating base image: $_\n";
     }
     nontrapping_system "$_ > $image_ppm";
 
     }
     nontrapping_system "$_ > $image_ppm";
 
@@ -1223,13 +1227,13 @@ sub x_output {
             $ih = $2;
             $cmd = "";
         } else {
             $ih = $2;
             $cmd = "";
         } else {
-            die "$progname: $bgimage is not a GIF, JPEG, or PPM.\n";
+            die blurb() . "$bgimage is not a GIF, JPEG, or PPM.\n";
         }
 
         my $x = int (($img_width  - $iw) / 2);
         my $y = int (($img_height - $ih) / 2);
         if ($verbose > 1) {
         }
 
         my $x = int (($img_width  - $iw) / 2);
         my $y = int (($img_height - $ih) / 2);
         if ($verbose > 1) {
-            print STDERR "$progname: pasting $bgimage (${iw}x$ih) into base ".
+            print STDERR blurb() . "pasting $bgimage (${iw}x$ih) into base ".
                 "image at $x,$y\n";
         }
 
                 "image at $x,$y\n";
         }
 
@@ -1239,7 +1243,7 @@ sub x_output {
         $body = undef;
         close (IMG);
         if ($verbose > 1) {
         $body = undef;
         close (IMG);
         if ($verbose > 1) {
-            print STDERR "$progname: subproc exited normally.\n";
+            print STDERR blurb() . "subproc exited normally.\n";
         }
         rename ($image_tmp1, $image_ppm) ||
             die ("renaming $image_tmp1 to $image_ppm: $!\n");
         }
         rename ($image_tmp1, $image_ppm) ||
             die ("renaming $image_tmp1 to $image_ppm: $!\n");
@@ -1263,7 +1267,7 @@ sub handle_image {
     my ($base, $img, $body, $source) = @_;
 
     if ($verbose > 1) {
     my ($base, $img, $body, $source) = @_;
 
     if ($verbose > 1) {
-        print STDERR "$progname: got $img (" . length($body) . ")\n";
+        print STDERR blurb() . "got $img (" . length($body) . ")\n";
     }
 
     my ($iw, $ih) = image_to_pnm ($img, $body, $image_tmp1);
     }
 
     my ($iw, $ih) = image_to_pnm ($img, $body, $image_tmp1);
@@ -1278,14 +1282,14 @@ sub handle_image {
     #
     if ($filter_cmd) {
         if ($verbose > 1) {
     #
     if ($filter_cmd) {
         if ($verbose > 1) {
-            print STDERR "$progname: running $filter_cmd\n";
+            print STDERR blurb() . "running $filter_cmd\n";
         }
 
         my $rc = nontrapping_system "($filter_cmd) < $image_tmp1 >$image_tmp2";
         if ($rc != 0) {
             if ($verbose) {
         }
 
         my $rc = nontrapping_system "($filter_cmd) < $image_tmp1 >$image_tmp2";
         if ($rc != 0) {
             if ($verbose) {
-                print STDERR "$progname: failed command: \"$filter_cmd\"\n";
-                print STDERR "$progname: failed url: \"$img\" (${ow}x$oh)\n";
+                print STDERR blurb() . "failed command: \"$filter_cmd\"\n";
+                print STDERR blurb() . "failed url: \"$img\" (${ow}x$oh)\n";
             }
             return;
         }
             }
             return;
         }
@@ -1323,14 +1327,14 @@ sub handle_image {
         }
         if ($iw <= 10 || $ih <= 10) {
             if ($verbose > 1) {
         }
         if ($iw <= 10 || $ih <= 10) {
             if ($verbose > 1) {
-                print STDERR "$progname: scaling to ${iw}x$ih would " .
+                print STDERR blurb() . "scaling to ${iw}x$ih would " .
                     "have been bogus.\n";
             }
             return 0;
         }
 
         if ($verbose > 1) {
                     "have been bogus.\n";
             }
             return 0;
         }
 
         if ($verbose > 1) {
-            print STDERR "$progname: scaling to ${iw}x$ih\n";
+            print STDERR blurb() . "scaling to ${iw}x$ih\n";
         }
 
         $cmd .= " | pnmscale -xsize $iw -ysize $ih";
         }
 
         $cmd .= " | pnmscale -xsize $iw -ysize $ih";
@@ -1362,7 +1366,7 @@ sub handle_image {
     }
 
     if ($verbose > 2 && $crop_chance > 0.1) {
     }
 
     if ($verbose > 2 && $crop_chance > 0.1) {
-        print STDERR "$progname: crop chance: $crop_chance\n";
+        print STDERR blurb() . "crop chance: $crop_chance\n";
     }
 
     if (rand() < $crop_chance) {
     }
 
     if (rand() < $crop_chance) {
@@ -1388,7 +1392,7 @@ sub handle_image {
         if ($verbose > 1 &&
             ($crop_x != 0   || $crop_y != 0 ||
              $crop_w != $iw || $crop_h != $ih)) {
         if ($verbose > 1 &&
             ($crop_x != 0   || $crop_y != 0 ||
              $crop_w != $iw || $crop_h != $ih)) {
-            print STDERR "$progname: randomly cropping to " .
+            print STDERR blurb() . "randomly cropping to " .
                 "${crop_w}x$crop_h \@ $crop_x,$crop_y\n";
         }
     }
                 "${crop_w}x$crop_h \@ $crop_x,$crop_y\n";
         }
     }
@@ -1407,7 +1411,7 @@ sub handle_image {
         $y + $crop_h > $img_height) {
 
         if ($verbose > 1) {
         $y + $crop_h > $img_height) {
 
         if ($verbose > 1) {
-            print STDERR "$progname: cropping for effective paste of " .
+            print STDERR blurb() . "cropping for effective paste of " .
                 "${crop_w}x$crop_h \@ $x,$y\n";
         }
 
                 "${crop_w}x$crop_h \@ $x,$y\n";
         }
 
@@ -1426,13 +1430,13 @@ sub handle_image {
         $ih = $crop_h;
         $cmd .= " | pnmcut $crop_x $crop_y $iw $ih";
         if ($verbose > 1) {
         $ih = $crop_h;
         $cmd .= " | pnmcut $crop_x $crop_y $iw $ih";
         if ($verbose > 1) {
-            print STDERR "$progname: cropping to ${crop_w}x$crop_h \@ " .
+            print STDERR blurb() . "cropping to ${crop_w}x$crop_h \@ " .
                 "$crop_x,$crop_y\n";
         }
     }
 
     if ($verbose > 1) {
                 "$crop_x,$crop_y\n";
         }
     }
 
     if ($verbose > 1) {
-        print STDERR "$progname: pasting ${iw}x$ih \@ $x,$y in $image_ppm\n";
+        print STDERR blurb() . "pasting ${iw}x$ih \@ $x,$y in $image_ppm\n";
     }
 
     $cmd .= " | pnmpaste - $x $y $image_ppm";
     }
 
     $cmd .= " | pnmpaste - $x $y $image_ppm";
@@ -1442,8 +1446,8 @@ sub handle_image {
 
     if ($rc != 0) {
         if ($verbose) {
 
     if ($rc != 0) {
         if ($verbose) {
-            print STDERR "$progname: failed command: \"$cmd\"\n";
-            print STDERR "$progname: failed url: \"$img\" (${ow}x$oh)\n";
+            print STDERR blurb() . "failed command: \"$cmd\"\n";
+            print STDERR blurb() . "failed url: \"$img\" (${ow}x$oh)\n";
         }
         return;
     }
         }
         return;
     }
@@ -1461,7 +1465,7 @@ sub handle_image {
         $rc = nontrapping_system "($post_filter_cmd) < $image_ppm > $target";
         if ($rc != 0) {
             if ($verbose) {
         $rc = nontrapping_system "($post_filter_cmd) < $image_ppm > $target";
         if ($rc != 0) {
             if ($verbose) {
-                print STDERR "$progname: filter failed: " .
+                print STDERR blurb() . "filter failed: " .
                     "\"$post_filter_cmd\"\n";
             }
             return;
                     "\"$post_filter_cmd\"\n";
             }
             return;
@@ -1490,13 +1494,13 @@ sub handle_image {
 
             if ($rc != 0) {
                 if ($verbose) {
 
             if ($rc != 0) {
                 if ($verbose) {
-                    print STDERR "$progname: display failed: \"$cmd\"\n";
+                    print STDERR blurb() . "display failed: \"$cmd\"\n";
                 }
                 return;
             }
 
         } elsif ($verbose > 1) {
                 }
                 return;
             }
 
         } elsif ($verbose > 1) {
-            print STDERR "$progname: $target size is $tsize\n";
+            print STDERR blurb() . "$target size is $tsize\n";
         }
     }
 
         }
     }
 
@@ -1553,7 +1557,7 @@ sub main {
                 $img_width = $1;
                 $img_height = $2;
             } else {
                 $img_width = $1;
                 $img_height = $2;
             } else {
-                die "$progname: argument to \"-size\" must be" .
+                die blurb() . "argument to \"-size\" must be" .
                     " of the form \"640x400\"\n";
             }
         } elsif ($_ eq "-proxy" || $_ eq "-http-proxy") {
                     " of the form \"640x400\"\n";
             }
         } elsif ($_ eq "-proxy" || $_ eq "-http-proxy") {
@@ -1576,11 +1580,11 @@ sub main {
 
     if (!$root_p && !$no_output_p) {
         die "$copyright" .
 
     if (!$root_p && !$no_output_p) {
         die "$copyright" .
-            "$progname: the -root argument is mandatory (for now.)\n";
+            blurb() . "the -root argument is mandatory (for now.)\n";
     }
 
     if (!$no_output_p && !$ENV{DISPLAY}) {
     }
 
     if (!$no_output_p && !$ENV{DISPLAY}) {
-        die "$progname: \$DISPLAY is not set.\n";
+        die blurb() . "\$DISPLAY is not set.\n";
     }
 
     if ($urls_only_p) {
     }
 
     if ($urls_only_p) {
diff --git a/hacks/whirlwindwarp.c b/hacks/whirlwindwarp.c
new file mode 100644 (file)
index 0000000..d12f735
--- /dev/null
@@ -0,0 +1,368 @@
+/* xscreensaver, Copyright (c) 2000 Paul "Joey" Clark <pclark@bris.ac.uk>
+ *
+ * Permission to use, copy, modify, distribute, and sell this software and its
+ * documentation for any purpose is hereby granted without fee, provided that
+ * the above copyright notice appear in all copies and that both that
+ * copyright notice and this permission notice appear in supporting
+ * documentation.  No representations are made about the suitability of this
+ * software for any purpose.  It is provided "as is" without express or
+ * implied warranty.
+ *
+ * 19971004: Johannes Keukelaar <johannes@nada.kth.se>: Use helix screen
+ *           eraser.
+ */
+
+/* WhirlwindWarp: moving stars.  Ported from QBasic by Joey.
+   Version 1.2.  FF parameters now driven by a
+   dampened-walked velocity, making them smoother.
+
+   This code adapted from original program by jwz/jk above.
+   Freely distrubtable.  Please keep this tag with
+   this code, and add your own if you contribute.
+   I would be delighted to hear if have made use of this code.
+   If you find this code useful or have any queries, please
+   contact me: pclark@cs.bris.ac.uk / joeyclark@usa.net
+   Paul "Joey" Clark, hacking for humanity, Feb 99
+   www.cs.bris.ac.uk/~pclark | www.changetheworld.org.uk */
+
+#include <math.h>
+
+#include "screenhack.h"
+#include "erase.h"
+#include "hsv.h"
+
+static GC draw_gc, erase_gc;
+static unsigned int default_fg_pixel;
+
+/* Maximum number of points, tails, and fields (hard-coded) */
+#define maxps 1000
+#define maxts 30
+#define fs 10
+
+/* Screen width and height */
+static int scrwid,scrhei;
+
+/* Current x,y of stars in realspace */
+static float cx[maxps];
+static float cy[maxps];
+/* Previous x,y plots in pixelspace for removal later */
+static int tx[maxps*maxts];
+static int ty[maxps*maxts];
+/* The force fields and their parameters */
+static char *name[fs];
+static int fon[fs];     /* Is field on or off? */
+static float var[fs];   /* Current parameter */
+static float op[fs];    /* Optimum (central/mean) value */
+static float damp[fs];  /* Dampening (how much drawn between current and optimal) */
+static float force[fs]; /* Amount of change per moment */
+static float acc[fs];
+
+/* Number of points and tails */
+static int ps=500;
+static int ts=5;
+
+/* Show meters or not? */
+static Bool meters;
+
+static Bool init_whirlwindwarp(Display *dpy, Window window) {
+  XGCValues gcv;
+  Colormap cmap;
+  XWindowAttributes xgwa;
+  XGetWindowAttributes (dpy, window, &xgwa);
+  cmap = xgwa.colormap;
+  gcv.foreground = default_fg_pixel = get_pixel_resource ("foreground", "Foreground", dpy, cmap);
+  draw_gc = XCreateGC (dpy, window, GCForeground, &gcv);
+  gcv.foreground = get_pixel_resource ("background", "Background", dpy, cmap);
+  erase_gc = XCreateGC (dpy, window, GCForeground, &gcv);
+
+  ps = get_integer_resource ("points", "Integer");
+  ts = get_integer_resource ("tails", "Integer");
+  meters = get_boolean_resource ("meters", "Show meters");
+  if (ps>maxps || ts>maxts)
+    return 0;
+  return 1;
+}
+
+static float myrnd() { /* between -1.0 and +1.0 */
+  return 2.0*((float)((random()%10000000)/10000000.0)-0.5);
+}
+
+float mysgn(float x) {
+  return ( x < 0 ? -1 :
+           x > 0 ? +1 :
+                    0 );
+}
+
+void stars_newp(int p) {
+  cx[p]=myrnd();
+  cy[p]=myrnd();
+}
+
+/* Adjust a variable var about optimum op,
+     with damp = dampening about op
+         force = force of random perturbation */
+float stars_perturb(float var,float op,float damp,float force) {
+  var=op+damp*(var-op)+force*myrnd()/4.0;
+/*  if (fabs(var-op)>0.1)  // (to keep within bounds)
+    var=op+0.1*mysgn(var-op);*/
+  return var;
+}
+
+/* Get pixel coordinates of a star */
+int stars_scrpos_x(int p) {
+  return scrwid*(cx[p]+1.0)/2.0;
+}
+int stars_scrpos_y(int p) {
+  return scrhei*(cy[p]+1.0)/2.0;
+}
+
+/* Draw a meter of a forcefield's parameter */
+void stars_draw_meter(Display *dpy,Window window,GC draw_gc,int f) {
+  int x,y,w,h;
+  x=scrwid/2;
+  y=f*10;
+  w=(var[f]-op[f])*scrwid*4;
+  h=7;
+  if (w<0) {
+    w=-w;
+    x=x-w;
+  }
+  if (fon[f])
+    XFillRectangle(dpy,window,draw_gc,x,y,w,h);
+  else
+    XDrawRectangle(dpy,window,draw_gc,x,y,w,h);
+}
+
+/* Move a star according to acting forcefields */
+void stars_move(int p) {
+  float nx,ny;
+  float x=cx[p];
+  float y=cy[p];
+    if (fon[1]) {
+        x = x * var[1]; y = y * var[1];
+    }
+    if (fon[2]) {
+      nx=x*cos(var[2])+y*sin(var[2]);
+      ny=-x*sin(var[2])+y*cos(var[2]);
+      x=nx;
+      y=ny;
+    }
+    if (fon[3]) {
+      y=y*var[3];
+    }
+    if (fon[4]) {
+      x=(x-1.0)*var[3]+1.0;
+    }
+    if (fon[5]) {
+      x=x+var[5]*x;
+    }
+    if (fon[6]) {
+        x = mysgn(x) * pow(fabs(x),var[6]);
+        y = mysgn(y) * pow(fabs(y),var[6]);
+    }
+    if (fon[7]) {
+      if (fon[0]) {
+        if (fon[9]) {
+          x=x+var[7]*(-1.0+2.0*(float)(p%2));
+        } else {
+          x=x+var[7]*(-1.0+2.0*(float)((p%50)/49.0));
+        }
+      }
+    }
+    if (fon[8]) {
+      if (fon[0]) {
+        if (fon[9]) {
+          y=y+var[8]*(-1.0+2.0*(float)(p%2));
+        } else {
+          y=y+var[8]*(-1.0+2.0*(float)((p%50)/49.0));
+        }
+      }
+    }
+  cx[p]=x;
+  cy[p]=y;
+}
+
+static void do_whirlwindwarp(Display *dpy, Window window) {
+  Colormap cmap;
+  XWindowAttributes xgwa;
+  int got_color = 0;
+  XColor color[maxps];
+  XColor bgcolor;
+  int p,f,nt, sx,sy, resets,lastresets,cnt;
+
+  XClearWindow (dpy, window);
+  XGetWindowAttributes (dpy, window, &xgwa);
+  cmap = xgwa.colormap;
+  scrwid = xgwa.width;
+  scrhei = xgwa.height;
+
+  /* Setup colours */
+  hsv_to_rgb (0.0, 0.0, 0.0, &bgcolor.red, &bgcolor.green, &bgcolor.blue);
+  got_color = XAllocColor (dpy, cmap, &bgcolor);
+  for (p=0;p<ps;p++) {
+        if (!mono_p)
+          hsv_to_rgb (random()%360, .6+.4*myrnd(), .6+.4*myrnd(), &color[p].red, &color[p].green, &color[p].blue);
+          /* hsv_to_rgb (random()%360, 1.0, 1.0, &color[p].red, &color[p].green, &color[p].blue);   for stronger colours! */
+        if ((!mono_p) && (got_color = XAllocColor (dpy, cmap, &color[p]))) {
+        } else {
+          if (p>0)
+            color[p]=color[0];
+          else
+            color[p].pixel=default_fg_pixel;
+        }
+  }
+
+  /* Set up parameter movements for the different forcefields */
+  name[1] = "Velocity";
+  op[1] = 1; damp[1] = .999; force[1] = .002;
+  name[2] = "Rotation";
+  op[2] = 0; damp[2] = .999; force[2] = .002;
+  name[3] = "Drip";
+  op[3] = 1; damp[3] = .999; force[3] = .005;
+  name[4] = "Dribble";
+  op[4] = 1; damp[4] = .999; force[4] = .005;
+  name[5] = "Slide";
+  op[5] = 0; damp[5] = .999; force[5] = .002;
+  name[6] = "Accelerate";
+  op[6] = 1.0; damp[6] = .999; force[6] = .005;
+  name[7] = "xDisplace";
+  op[7] = 0; damp[7] = .999; force[7] = .005;
+  name[8] = "yDisplace";
+  op[8] = 0; damp[8] = .999; force[8] = .005;
+  /* 0 and 9 are options for splitting displacements [no var] */
+  name[0] = "Split";
+  op[0] = 0; damp[0] = 0; force[0] = 0;
+  name[9] = "2d/3d split";
+  op[9] = 0; damp[9] = 0; force[9] = 0;
+
+  /* Initialise parameters to optimum, all off */
+  for (f=0;f<fs;f++) {
+    var[f]=op[f];
+    fon[f]=0;
+    acc[f]=0;
+  }
+
+  /* Initialise stars */
+  for (p=0;p<ps;p++)
+    stars_newp(p);
+
+  /* tx[nt],ty[nt] remeber earlier screen plots (tails of stars)
+     which are deleted when nt comes round again */
+  nt=0;
+  resets=0;
+
+  while (1) {
+
+      /* Move current points */
+      lastresets=resets;
+      resets=0;
+      for (p=0;p<ps;p++) {
+        /* Erase old */
+        XSetForeground (dpy, draw_gc, bgcolor.pixel);
+        XDrawPoint(dpy,window,draw_gc,tx[nt],ty[nt]);
+
+        /* Move */
+        stars_move(p);
+        /* If moved off screen, create a new one */
+        if (cx[p]<-1.0 || cx[p]>+1.0 ||
+            cy[p]<-1.0 || cy[p]>+1.0 ||
+            fabs(cx[p])<.0001 || fabs(cy[p])<.0001) {
+          stars_newp(p);
+          resets++;
+        } else if (myrnd()>0.99) /* Reset at random */
+          stars_newp(p);
+
+        /* Draw point */
+        sx=stars_scrpos_x(p);
+        sy=stars_scrpos_y(p);
+        XSetForeground (dpy, draw_gc, color[p].pixel);
+        XDrawPoint(dpy,window,draw_gc,sx,sy);
+
+        /* Remember it for removal later */
+        tx[nt]=sx;
+        ty[nt]=sy;
+        nt=(nt+1)%(ps*ts);
+      }
+
+      /* Adjust force fields */
+      cnt=0;
+      for (f=0;f<fs;f++) {
+
+        if (meters) { /* Remove meter from display */
+          XSetForeground(dpy, draw_gc, bgcolor.pixel);
+          stars_draw_meter(dpy,window,draw_gc,f);
+        }
+
+        /* Adjust forcefield's parameter */
+        acc[f]=stars_perturb(acc[f],0,0.98,0.009);
+        var[f]=op[f]+(var[f]-op[f])*damp[f]+force[f]*acc[f];
+
+        if (myrnd()>0.998) /* Turn it on/off ? */
+          fon[f]=(myrnd()<0.0);
+          /* fon[f]=!fon[f]; */
+
+        if (meters) { /* Redraw the meter */
+          XSetForeground(dpy, draw_gc, color[f].pixel);
+          stars_draw_meter(dpy,window,draw_gc,f);
+        }
+
+        if (fon[f])
+          cnt++;
+      }
+      if (cnt==0) { /* Ensure at least one is on! */
+        f=random() % fs;
+        fon[f]=1;
+      }
+      if (meters) {
+        XSetForeground(dpy, draw_gc, bgcolor.pixel);
+        XDrawRectangle(dpy,window,draw_gc,0,0,lastresets*5,3);
+        XSetForeground(dpy, draw_gc, default_fg_pixel);
+        XDrawRectangle(dpy,window,draw_gc,0,0,resets*5,3);
+      }
+/*      if (resets*5>scrwid) {
+       Turn one off a field if too many points are flying off screen */
+      /* This was a problem when one of the force-fields was acting wrong,
+         but not really needed any more unless we need to debug new ones ...! */
+        /* for (f=0;f<fs;f++)
+            if (fon[f])
+            printf("%i",f);
+          printf("\n");
+          XSync (dpy, False);
+          screenhack_handle_events (dpy);
+         sleep(1);
+        do { // In fact this bit might go wrong if
+          f=random() % fs; // we have not ensured at least one is on (above)
+        } while (!fon[f]);
+        fon[f]=0;
+      }            */
+
+      XSync (dpy, False);
+      screenhack_handle_events (dpy);
+
+  }
+
+}
+
+
+char *progclass = "WhirlwindWarp";
+
+char *defaults [] = {
+  ".background:        black",
+  ".foreground:        white",
+  "*points:    400",
+  "*tails:     10",
+  "*meters:    false",
+  0
+};
+
+XrmOptionDescRec options [] = {
+  { "-points", ".points",      XrmoptionSepArg, 0 },
+  { "-tails",  ".tails",       XrmoptionSepArg, 0 },
+  { "-meters", ".meters",      XrmoptionNoArg, "true" },
+  { 0, 0, 0, 0 }
+};
+
+void screenhack(Display *dpy, Window window) {
+  if (init_whirlwindwarp(dpy, window))
+    do_whirlwindwarp(dpy, window);
+}
diff --git a/hacks/whirlwindwarp.man b/hacks/whirlwindwarp.man
new file mode 100644 (file)
index 0000000..4bcd29f
--- /dev/null
@@ -0,0 +1,60 @@
+.TH XScreenSaver 1 "13-aug-92" "X Version 11"
+.SH NAME
+whirlwindwarp - crazy moving stars
+.SH SYNOPSIS
+.B whirlwindwarp
+[\-display \fIhost:display.screen\fP] [\-foreground \fIcolor\fP] [\-background \fIcolor\fP] [\-window] [\-root] [\-mono] [\-install] [\-visual \fIvisual\fP] [\-points \fIinteger\fP] [\-tails \fIinteger\fP]
+.SH DESCRIPTION
+\fIwhirlwindwarp\fP plots stars moving according to various forcefields
+(simple 2D equations).
+.SH WARNING!
+This screensaver may be \fIdangerous\fP for your eyes.
+Please don't watch it for too long!
+.SH OPTIONS
+.I whirlwindwarp
+accepts the following options:
+.TP 8
+.B \-window
+Draw on a newly-created window.  This is the default.
+.TP 8
+.B \-root
+Draw on the root window.
+.TP 8
+.B \-mono 
+If on a color display, pretend we're on a monochrome display.
+.TP 8
+.B \-install
+Install a private colormap for the window.
+.TP 8
+.B \-visual \fIvisual\fP
+Specify which visual to use.  Legal values are the name of a visual class,
+or the id number (decimal or hex) of a specific visual.
+.TP 8
+.B \-points \fIinteger\fP
+The number of stars plotted (default 300).
+.TP 8
+.B \-tails \fIinteger\fP
+The length of the tail of each star (default 5).
+.SH ENVIRONMENT
+.PP
+.TP 8
+.B DISPLAY
+to get the default host and display number.
+.TP 8
+.B XENVIRONMENT
+to get the name of a resource file that overrides the global resources
+stored in the RESOURCE_MANAGER property.
+.SH SEE ALSO
+.BR X (1),
+.BR xscreensaver (1)
+.SH COPYRIGHT
+Copyright (c) Paul "Joey" Clark.  Permission to use, copy, modify,
+distribute, and sell this software and its documentation for any
+purpose is hereby granted without fee, provided that the above
+copyright notice appear in all copies and that both that copyright
+notice and this permission notice appear in supporting documentation.
+No representations are made about the suitability of this software for
+any purpose.  It is provided "as is" without express or implied
+warranty.
+.SH AUTHOR
+Paul "Joey" Clark <pclark@cs.bris.ac.uk> 10-Oct-00
index 0c2b613e07a7711507bbb361ad5f5e2649e6e467..c3e44705225b4cd8efedbc96bc671c70c57c38ca 100644 (file)
@@ -35,6 +35,8 @@ ERROR!  Sorry, xlockmore.h requires ANSI C (gcc, for example.)
 #ifdef USE_GL
 # include <GL/glx.h>
   extern GLXContext *init_GL (ModeInfo *);
 #ifdef USE_GL
 # include <GL/glx.h>
   extern GLXContext *init_GL (ModeInfo *);
+  extern void clear_gl_error (void);
+  extern void check_gl_error (const char *type);
 # define FreeAllGL(dpy) /* */
 #endif
 
 # define FreeAllGL(dpy) /* */
 #endif
 
index b1ec7595dd0aa7a10e31bc207061e69d4d83d1e4..5befa9b36e135efa9210b391d21ec25d844e3b82 100644 (file)
@@ -306,8 +306,8 @@ static void initBugs(void) {
 
   head = tail = 0;
 
 
   head = tail = 0;
 
-  bzero((char *)bugs, MAX_BUGS*sizeof(bug));
-  bzero((char *)targets, MAX_TARGETS*sizeof(bug));
+  memset((char *)bugs, 0,MAX_BUGS*sizeof(bug));
+  memset((char *)targets, 0, MAX_TARGETS*sizeof(bug));
 
   if (ntargets < 0) ntargets = (0.25+frand(0.75)*frand(1))*MAX_TARGETS;
   if (ntargets < 1) ntargets = 1;
 
   if (ntargets < 0) ntargets = (0.25+frand(0.75)*frand(1))*MAX_TARGETS;
   if (ntargets < 1) ntargets = 1;
@@ -368,7 +368,7 @@ static void addBugs(int numToAdd) {
 
   for (i = 0; i < numToAdd; i++) {
     b = &bugs[random()%nbugs];
 
   for (i = 0; i < numToAdd; i++) {
     b = &bugs[random()%nbugs];
-    bcopy((char *)b, (char *)&bugs[nbugs+i], sizeof(bug));
+    memcpy((char *)&bugs[nbugs+i], (char *)b, sizeof(bug));
     b->closest = &targets[random()%ntargets];
   }
 
     b->closest = &targets[random()%ntargets];
   }
 
@@ -384,7 +384,7 @@ static void addTargets(int numToAdd) {
 
   for (i = 0; i < numToAdd; i++) {
     b = &targets[random()%ntargets];
 
   for (i = 0; i < numToAdd; i++) {
     b = &targets[random()%ntargets];
-    bcopy((char *)b, (char *)&targets[ntargets+i], sizeof(bug));
+    memcpy((char *)&targets[ntargets+i], (char *)b, sizeof(bug));
     b->closest = &targets[random()%ntargets];
   }
 
     b->closest = &targets[random()%ntargets];
   }
 
@@ -736,8 +736,8 @@ void mutateBug(int which) {
     /* turn bug into target */
     if (ntargets < MAX_TARGETS-1 && nbugs > 1) {
       i = random() % nbugs;
     /* turn bug into target */
     if (ntargets < MAX_TARGETS-1 && nbugs > 1) {
       i = random() % nbugs;
-      bcopy((char *)&bugs[i], (char *)&targets[ntargets], sizeof(bug));
-      bcopy((char *)&bugs[nbugs-1], (char *)&bugs[i], sizeof(bug));
+      memcpy((char *)&targets[ntargets], (char *)&bugs[i], sizeof(bug));
+      memcpy((char *)&bugs[i], (char *)&bugs[nbugs-1], sizeof(bug));
       targets[ntargets].pos[0] = frand(maxx);
       targets[ntargets].pos[1] = frand(maxy);
       nbugs--;
       targets[ntargets].pos[0] = frand(maxx);
       targets[ntargets].pos[1] = frand(maxy);
       nbugs--;
@@ -754,7 +754,7 @@ void mutateBug(int which) {
       i = random() % ntargets;
 
       /* copy state into a new bug */
       i = random() % ntargets;
 
       /* copy state into a new bug */
-      bcopy((char *)&targets[i], (char *)&bugs[nbugs], sizeof(bug));
+      memcpy((char *)&bugs[nbugs], (char *)&targets[i], sizeof(bug));
       ntargets--;
 
       /* pick a target for the new bug */
       ntargets--;
 
       /* pick a target for the new bug */
@@ -770,7 +770,7 @@ void mutateBug(int which) {
       nbugs++;
       
       /* copy the last ntarget into the one we just deleted */
       nbugs++;
       
       /* copy the last ntarget into the one we just deleted */
-      bcopy((char *)&targets[ntargets], &targets[i], sizeof(bug));
+      memcpy(&targets[i], (char *)&targets[ntargets], sizeof(bug));
     }
   }
 }
     }
   }
 }
@@ -1013,6 +1013,8 @@ void screenhack(Display *d, Window w) {
   int startColor, numColors;
   double start, end;
   int cnt;
   int startColor, numColors;
   double start, end;
   int cnt;
+  int sleepCount = 0;
+  int delayAccum = 0;
 
   dpy = d;
   win = w;
 
   dpy = d;
   win = w;
@@ -1071,21 +1073,7 @@ void screenhack(Display *d, Window w) {
       */
 
       if (fps > MAX_FPS) {
       */
 
       if (fps > MAX_FPS) {
-#if 0    
-       if (trailLen >= MAX_TRAIL_LEN) {
-         addBugs(nbugs);
-         addTargets(ntargets);
-       } else {
-         /* make dt smaller, but use longer tail */
-         clearBugs();
-         dt = 0.1*trailLen/MAX_TRAIL_LEN;
-         trailLen = MAX_TRAIL_LEN;
-         computeColorIndices();
-         initBugs();
-       }
-#endif
        delay = (1.0/MAX_FPS - (timePerFrame + delay*1e-6))*1e6;
        delay = (1.0/MAX_FPS - (timePerFrame + delay*1e-6))*1e6;
-       
       } else if (dt*fps < MIN_FPS*DESIRED_DT) {
        /* need to speed things up somehow */
        if (0 && nbugs > 10) {
       } else if (dt*fps < MIN_FPS*DESIRED_DT) {
        /* need to speed things up somehow */
        if (0 && nbugs > 10) {
@@ -1114,7 +1102,19 @@ void screenhack(Display *d, Window w) {
     if (frand(1) < changeProb*2/100.0) randomSmallChange();
     if (frand(1) < changeProb*0.3/100.0) randomBigChange();
 #endif
     if (frand(1) < changeProb*2/100.0) randomSmallChange();
     if (frand(1) < changeProb*0.3/100.0) randomBigChange();
 #endif
-
-    if (delay > 0) usleep(delay);
+    
+    if (delay > 10000) usleep(delay);
+    else {
+      delayAccum += delay;
+      if (delayAccum > 10000) {
+       usleep(delayAccum);
+       delayAccum = 0;
+       sleepCount = 0;
+      }
+      if (++sleepCount > 2) {
+       sleepCount = 0;
+       usleep(10000);
+      }
+    }
   }
 }
   }
 }
diff --git a/hacks/zoom.c b/hacks/zoom.c
new file mode 100644 (file)
index 0000000..f6cb4b9
--- /dev/null
@@ -0,0 +1,200 @@
+/*
+ *  Copyright (C) 2000 James Macnicol
+ *
+ * Permission to use, copy, modify, distribute, and sell this software and its
+ * documentation for any purpose is hereby granted without fee, provided that
+ * the above copyright notice appear in all copies and that both that
+ * copyright notice and this permission notice appear in supporting
+ * documentation.  No representations are made about the suitability of this
+ * software for any purpose.  It is provided "as is" without express or 
+ * implied warranty.
+ */
+
+#include <math.h>
+#include "screenhack.h"
+#include <X11/Xutil.h>
+#include <sys/time.h>
+
+#ifndef MIN
+#define MIN(a, b) (((a) < (b))?(a):(b))
+#endif
+
+#ifndef MAX
+#define MAX(a, b) (((a) > (b))?(a):(b))
+#endif
+
+#define MINX 0.0
+#define MINY 0.0
+/* This should be *way* slower than the spotlight hack was */
+#define X_PERIOD 45000.0
+#define Y_PERIOD 36000.0
+
+static int sizex, sizey;
+
+static int delay;
+static int pixwidth, pixheight, pixspacex, pixspacey, lensoffsetx, lensoffsety;
+static Bool lenses;
+
+static GC window_gc;
+
+static XImage *orig_map;
+static Pixmap pm;
+
+static int tlx, tly, s;
+
+static long currentTimeInMs(void)
+{ 
+  struct timeval curTime;
+#ifdef GETTIMEOFDAY_TWO_ARGS
+  struct timezone tz = {0,0};
+  gettimeofday(&curTime, &tz);
+#else
+  gettimeofday(&curTime);
+#endif
+  return curTime.tv_sec*1000 + curTime.tv_usec/1000.0;
+}
+
+static void init_hack(Display *dpy, Window window)
+{
+  XGCValues gcv;
+  XWindowAttributes xgwa;
+  Colormap cmap;
+  unsigned long fg, bg;
+  long gcflags;
+  int nblocksx, nblocksy;
+
+  XGetWindowAttributes(dpy, window, &xgwa);
+  sizex = xgwa.width;
+  sizey = xgwa.height;
+  cmap = xgwa.colormap;
+  fg = get_pixel_resource("foreground", "Foreground", dpy, cmap);
+  bg = get_pixel_resource("background", "Background", dpy, cmap);
+
+  delay = get_integer_resource("delay", "Integer");
+  if (delay < 1)
+    delay = 1;
+  pixwidth = get_integer_resource("pixwidth", "Integer");
+  if (pixwidth < 1)
+    pixwidth = 1;
+  pixheight = get_integer_resource("pixheight", "Integer");
+  if (pixheight < 1)
+    pixheight = 1;
+  pixspacex = get_integer_resource("pixspacex", "Integer");
+  if (pixspacex < 0)
+    pixspacex = 0;
+  pixspacey = get_integer_resource("pixspacey", "Integer");
+  if (pixspacey < 0)
+    pixspacey = 0;
+  lenses = get_boolean_resource("lenses", "Boolean");
+  lensoffsetx = get_integer_resource("lensoffsetx", "Integer");
+  lensoffsetx = MAX(0, MIN(pixwidth, lensoffsetx));
+  lensoffsety = get_integer_resource("lensoffsety", "Integer");
+  lensoffsety = MAX(0, MIN(pixwidth, lensoffsety));
+
+  gcv.function = GXcopy;
+  gcv.subwindow_mode = IncludeInferiors;
+  gcflags = GCForeground|GCFunction;
+  gcv.foreground = bg;
+  if (!lenses && use_subwindow_mode_p(xgwa.screen, window))       /* see grabscreen.c */
+    gcflags |= GCSubwindowMode;
+  window_gc = XCreateGC(dpy, window, gcflags, &gcv);
+
+  grab_screen_image(xgwa.screen, window);
+  if (lenses) {
+    orig_map = NULL;
+    pm = XCreatePixmap(dpy, window, sizex, sizey, xgwa.depth);
+    XCopyArea(dpy, window, pm, window_gc, 0, 0, sizex, sizey, 0, 0);
+  } else {
+    orig_map = XGetImage(dpy, window, 0, 0, sizex, sizey, ~0L, ZPixmap);
+    pm = 0;
+  }
+
+  XFillRectangle(dpy, window, window_gc, 0, 0, sizex, sizey);
+  XSetWindowBackground(dpy, window, bg);
+
+  nblocksx = (int)ceil((double)sizex / (double)(pixwidth + pixspacex));
+  nblocksy = (int)ceil((double)sizey / (double)(pixheight + pixspacey));
+  if (lenses)
+    s = MAX((nblocksx - 1) * lensoffsetx + pixwidth, 
+           (nblocksy - 1) * lensoffsety + pixheight) * 2;
+  else
+    s = MAX(nblocksx, nblocksy) * 2;
+}
+
+static void onestep(Display *dpy, Window window)
+{
+  unsigned x, y, i, j;
+
+  long now;
+
+#define nrnd(x) (random() % (x))
+
+  now = currentTimeInMs();
+
+  /* find new x,y */
+  tlx = ((1. + sin(((float)now) / X_PERIOD * 2. * M_PI))/2.0)
+    * (sizex - s/2) /* -s/4 */ + MINX;
+  tly = ((1. + sin(((float)now) / Y_PERIOD * 2. * M_PI))/2.0)
+    * (sizey - s/2) /* -s/4 */ + MINY;
+
+  if (lenses) {
+    for (x = i = 0; x < sizex; x += (pixwidth + pixspacex), ++i)
+      for (y = j = 0; y < sizey; y += (pixheight + pixspacey), ++j) {
+       XCopyArea(dpy, pm /* src */, window /* dest */, window_gc,
+                 tlx + i * lensoffsetx /* src_x */, 
+                 tly + j * lensoffsety /* src_y */,
+                 pixwidth, pixheight,
+                 x /* dest_x */, y /* dest_y */);
+      }
+  } else {
+    for (x = i = 0; x < sizex; x += (pixwidth + pixspacex), ++i)
+      for (y = j = 0; y < sizey; y += (pixheight + pixspacey), ++j) {
+       XSetForeground(dpy, window_gc, XGetPixel(orig_map, tlx+i, tly+j));
+       XFillRectangle(dpy, window, window_gc, 
+                      i * (pixwidth + pixspacex),
+                      j * (pixheight + pixspacey), pixwidth, pixheight);
+      }
+  }
+}
+
+char *progclass = "Zoom";
+
+char *defaults[] = {
+  "*dontClearRoot: True",
+#ifdef __sgi /* really, HAVE_READ_DISPLAY_EXTENSION */
+  "*visualID: Best",
+#endif
+  "*lenses:      false",
+  "*delay:       10000",
+  "*pixwidth:    10",
+  "*pixheight:   10",
+  "*pixspacex:   2",
+  "*pixspacey:   2",
+  "*lensoffsetx: 5",
+  "*lensoffsety: 5",
+  0
+};
+
+XrmOptionDescRec options[] = {
+  { "-lenses", ".lenses", XrmoptionNoArg, "true" },
+  { "-delay", ".delay", XrmoptionSepArg, 0 },
+  { "-pixwidth", ".pixwidth", XrmoptionSepArg, 0 },
+  { "-pixheight", ".pixheight", XrmoptionSepArg, 0 },
+  { "-pixspacex", ".pixspacex", XrmoptionSepArg, 0 },
+  { "-pixspacey", ".pixspacex", XrmoptionSepArg, 0 },
+  { "-lensoffsetx", ".lensoffsetx", XrmoptionSepArg, 0 },
+  { "-lensoffsety", ".lensoffsety", XrmoptionSepArg, 0 },
+  { 0, 0, 0, 0 }
+};
+
+void screenhack(Display *dpy, Window window)
+{
+  init_hack(dpy, window);
+  while (1) {
+    onestep(dpy, window);
+    XSync(dpy, False);
+    if (delay)
+      usleep(delay);
+    screenhack_handle_events(dpy);
+  }
+}
diff --git a/hacks/zoom.man b/hacks/zoom.man
new file mode 100644 (file)
index 0000000..ec21d3c
--- /dev/null
@@ -0,0 +1,87 @@
+.TH XScreenSaver 1 "20-Nov-2000" "X Version 11"
+.SH NAME
+zoom - wander around magified desktop
+.SH SYNOPSIS
+.B zoom
+[\-display \fIhost:display.screen\fP] [\-foreground \fIcolor\fP] [\-background \fIcolor\fP] [\-window] [\-root] [\-mono] [\-install] [\-visual \fIvisual\fP] [\-delay \fIusecs\fP] [\-lenses] [\-pixwidth \fIpixels\fP] [\-pixheight \fIpixels\fP] [\-pixspacex \fIpixels\fP] [\-pixspacey \fIpixels\fP] [\-lensoffsetx \fIpixels\fP] [\-lensoffsety \fIpixels\fP]
+.SH DESCRIPTION
+The \fIzoom\fP program magnifies a portion of the desktop and moves around.
+.SH OPTIONS
+.I zoom
+accepts the following options:
+.TP 8
+.B \-window
+Draw on a newly-created window.  This is the default.
+.TP 8
+.B \-root
+Draw on the root window.
+.TP 8
+.B \-mono 
+If on a color display, pretend we're on a monochrome display.
+.TP 8
+.B \-install
+Install a private colormap for the window.
+.TP 8
+.B \-visual \fIvisual\fP
+Specify which visual to use.  Legal values are the name of a visual class,
+or the id number (decimal or hex) of a specific visual.
+.TP 8
+.B \-delay \fImicroseconds\fP
+Slow it down.
+.TP 8
+.B \-lenses
+Instead of doing magnification we just copy an offset region from the original
+image.  If lensoffsetx < pixwidth (and similarly for Y) then consecutive
+regions will overlap, giving the effect of looking through an array of
+lenses.
+.TP 8
+.B \-pixwidth \fIpixels\fP
+Width of the magnified pixels.
+.TP 8
+.B \-pixheight \fIpixels\fP
+Height of the magnified pixels.
+.TP 8
+.B \-pixspacex \fIpixels\fP
+Amount of black space between magnified pixels (X direction).
+.TP 8
+.B \-pixspacey \fIpixels\fP
+Amount of black space between magnified pixels (Y direction).
+.TP 8
+.B \-lensoffsetx \fIpixels\fP
+Distance in X direction between consective copied regions (only effective
+when 
+.I -lenses
+used).
+.TP 8
+.B \-lensoffsety \fIpixels\fP
+Distance in Y direction between consective copied regions (only effective
+when 
+.I -lenses
+used).
+.TP 8
+.SH ENVIRONMENT
+.PP
+.TP 8
+.B DISPLAY
+to get the default host and display number.
+.TP 8
+.B XENVIRONMENT
+to get the name of a resource file that overrides the global resources
+stored in the RESOURCE_MANAGER property.
+.SH SEE ALSO
+.BR X (1),
+.BR xscreensaver (1)
+.SH COPYRIGHT
+Copyright \(co 2000 by James Macnicol.  Permission to use, copy, modify, 
+distribute, and sell this software and its documentation for any purpose is 
+hereby granted without fee, provided that the above copyright notice appear 
+in all copies and that both that copyright notice and this permission notice
+appear in supporting documentation.  No representations are made about the 
+suitability of this software for any purpose.  It is provided "as is" without
+express or implied warranty.
+.SH AUTHOR
+James Macnicol <james.macnicol@mailexcite.com>, 20-Nov-2000.  Much code was
+shamelessly stolen from the 
+.B spotlight 
+hack and a few others.
+
index fd839f4f0932df3d665abcb6390a8096dd5a4b1e..5f96facb97123b55dee7fe855b77c9c8063b07fd 100644 (file)
--- a/setup.com
+++ b/setup.com
@@ -89,6 +89,7 @@ $ triangle    :== $'mydir'triangle
 $ truchet      :== $'mydir'truchet
 $ vines                :== $'mydir'vines
 $ wander       :== $'mydir'wander
 $ truchet      :== $'mydir'truchet
 $ vines                :== $'mydir'vines
 $ wander       :== $'mydir'wander
+$ whirlwindwarp        :== $'mydir'whirlwindwarp
 $ worm         :== $'mydir'worm
 $ xflame       :== $'mydir'xflame
 $ xjack                :== $'mydir'xjack
 $ worm         :== $'mydir'worm
 $ xflame       :== $'mydir'xflame
 $ xjack                :== $'mydir'xjack
@@ -99,6 +100,7 @@ $ xroger     :== $'mydir'xroger
 $ xspirograph  :== $'mydir'xspirograph
 $ xsublim      :== $'mydir'xsublim
 $ xteevee      :== $'mydir'xteevee
 $ xspirograph  :== $'mydir'xspirograph
 $ xsublim      :== $'mydir'xsublim
 $ xteevee      :== $'mydir'xteevee
+$ zoom         :== $'mydir'zoom
 $ set def [-.DRIVER]
 $ mydir  = mydisk+f$directory()
 $ xscreensaver :== $'mydir'xscreensaver
 $ set def [-.DRIVER]
 $ mydir  = mydisk+f$directory()
 $ xscreensaver :== $'mydir'xscreensaver
index 851b5b490dfce2006d43377b00173e249bb0d3c9..f3d6de8b49ebc8942972838a40b5fb846f8c7fe2 100644 (file)
@@ -348,7 +348,8 @@ fizzle (Display *dpy, Window window, GC gc,
         for( ix = 0, cx = 0; ix < width; ix += BX, cx++ ) {
           int xx = ix + (SKEWX(cx, cy) + x*((cx%(BX-1))+1))%BX;
           int yy = iy + (SKEWY(cx, cy) + y*((cy%(BY-1))+1))%BY;
         for( ix = 0, cx = 0; ix < width; ix += BX, cx++ ) {
           int xx = ix + (SKEWX(cx, cy) + x*((cx%(BX-1))+1))%BX;
           int yy = iy + (SKEWY(cx, cy) + y*((cy%(BY-1))+1))%BY;
-          XDrawPoint(dpy, window, gc, xx, yy);
+          if (xx < width && yy < height)
+            XDrawPoint(dpy, window, gc, xx, yy);
         }
       }
     }
         }
       }
     }
index 0d243a4a3757347077c57511ca0b87e5c443d389..c30eae69df562255db15b9745b9c9648809cd1da 100644 (file)
@@ -1,2 +1,2 @@
 static const char screensaver_id[] =
 static const char screensaver_id[] =
-       "@(#)xscreensaver 3.26 (10-Nov-2000), by Jamie Zawinski (jwz@jwz.org)";
+       "@(#)xscreensaver 3.27 (19-Jan-2001), by Jamie Zawinski (jwz@jwz.org)";
index fb83fe4f295f716e6718c24bb1ea0084de698fe2..0a52e160c2c76cc0fafab2680312249942f6279e 100644 (file)
@@ -1,4 +1,4 @@
-/* xscreensaver, Copyright (c) 1999 by Jamie Zawinski <jwz@jwz.org>
+/* xscreensaver, Copyright (c) 1999, 2000 by Jamie Zawinski <jwz@jwz.org>
  *
  * Permission to use, copy, modify, distribute, and sell this software and its
  * documentation for any purpose is hereby granted without fee, provided that
  *
  * Permission to use, copy, modify, distribute, and sell this software and its
  * documentation for any purpose is hereby granted without fee, provided that
 
 /* This file contains code for picking the best visual for GL programs by
    actually asking the GL library to figure it out for us.  The code in
 
 /* This file contains code for picking the best visual for GL programs by
    actually asking the GL library to figure it out for us.  The code in
-   visual.c might do a good job of this on most systems, but not, in
-   particular, on SGIs.
-
-   Why?  Because with the SGI O2 X server is weird.
-
-   GL programs tend to work best on a visual that is *half* as deep as the
-   depth of the screen, since that way, they can do double-buffering.  So
-   generally, if the screen is 24 bits deep, but a 12-bit TrueColor visual
-   is available, then that's the visual you should use.
-
-   But on the server that runs on the O2 (a machine that has serious hardware
-   support for GL) the 12-bit PseudoColor visual looks awful (you get a black
-   and white, flickery image.)  On these machines, the visual you want turns
-   out to be 0x31 -- this is but one of the eight 15-bit TrueColor visuals
-   (yes, 8, and yes, 15) that O2s provide.  This is the only visual that works
-   properly -- as far as `xdpyinfo' is concerned, all of the 15-bit TrueColor
-   visuals are identical, but some flicker like mad, and some have deeply
-   weird artifacts (hidden surfaces show through!)  I suppose these other
-   visuals must be tied to some arcane hardware feature...
-
-   So the bottom line is, there exists information about visuals which is
-   available to GL, but which is not available via Xlib calls.  So the only
-   way to know which visual to use (other than impirically) is to actually
-   call GLX routines.
+   visual.c might do a good job of this on most systems, but not on most
+   high end 3D cards (e.g., Silicon Graphics or nVidia.)
+
+   There exists information about visuals which is available to GL, but
+   which is not available via Xlib calls.  So the only way to know
+   which visual to use (other than impirically) is to actually call
+   glXChooseVisual().
  */
 
 #include "utils.h"
  */
 
 #include "utils.h"
 # include <GL/glx.h>
 #endif /* HAVE_GL */
 
 # include <GL/glx.h>
 #endif /* HAVE_GL */
 
+extern char *progname;
+
 Visual *
 get_gl_visual (Screen *screen)
 {
 #ifdef HAVE_GL
 Visual *
 get_gl_visual (Screen *screen)
 {
 #ifdef HAVE_GL
-  XVisualInfo *vi = 0;
   Display *dpy = DisplayOfScreen (screen);
   int screen_num = screen_number (screen);
   Display *dpy = DisplayOfScreen (screen);
   int screen_num = screen_number (screen);
-  int attrs[20];
-  int i = 0;
 
 
-  attrs[i++] = GLX_RGBA;
-  attrs[i++] = GLX_RED_SIZE;     attrs[i++] = 1;
-  attrs[i++] = GLX_GREEN_SIZE;   attrs[i++] = 1;
-  attrs[i++] = GLX_BLUE_SIZE;    attrs[i++] = 1;
-  attrs[i++] = GLX_DEPTH_SIZE;   attrs[i++] = 1;
-  attrs[i++] = GLX_DOUBLEBUFFER;
-  attrs[i++] = 0;
+# define R GLX_RED_SIZE
+# define G GLX_GREEN_SIZE
+# define B GLX_BLUE_SIZE
+# define D GLX_DEPTH_SIZE
+# define I GLX_BUFFER_SIZE
 
 
-  vi = glXChooseVisual (dpy, screen_num, attrs);
+  int attrs[][20] = {
+   { GLX_RGBA, R, 8, G, 8, B, 8, D, 8, GLX_DOUBLEBUFFER, 0 }, /* rgb double */
+   { GLX_RGBA, R, 4, G, 4, B, 4, D, 4, GLX_DOUBLEBUFFER, 0 },
+   { GLX_RGBA, R, 2, G, 2, B, 2, D, 2, GLX_DOUBLEBUFFER, 0 },
+   { GLX_RGBA, R, 8, G, 8, B, 8, D, 8,                   0 }, /* rgb single */
+   { GLX_RGBA, R, 4, G, 4, B, 4, D, 4,                   0 },
+   { GLX_RGBA, R, 2, G, 2, B, 2, D, 2,                   0 },
+   { I, 8,                       D, 8, GLX_DOUBLEBUFFER, 0 }, /* cmap double */
+   { I, 4,                       D, 4, GLX_DOUBLEBUFFER, 0 },
+   { I, 8,                       D, 8,                   0 }, /* cmap single */
+   { I, 4,                       D, 4,                   0 },
+   { GLX_RGBA, R, 1, G, 1, B, 1, D, 1,                   0 }  /* monochrome */
+  };
 
 
-  if (!vi)                             /* Try without double-buffering. */
+  int i;
+  for (i = 0; i < sizeof(attrs)/sizeof(*attrs); i++)
     {
     {
-      attrs[i-1] = 0;
-      vi = glXChooseVisual (dpy, screen_num, attrs);
+      XVisualInfo *vi = glXChooseVisual (dpy, screen_num, attrs[i]);
+      if (vi)
+        {
+          Visual *v = vi->visual;
+          XFree (vi);
+          /* describe_gl_visual (stderr, screen, v, False); */
+          return v;
+        }
     }
     }
+#endif /* !HAVE_GL */
+
+  return 0;
+}
+
+
+void
+describe_gl_visual (FILE *f, Screen *screen, Visual *visual,
+                    Bool private_cmap_p)
+{
+  describe_visual (f, screen, visual, private_cmap_p);
+
+#ifdef HAVE_GL
+  {
+    int status;
+    int value = False;
+
+    Display *dpy = DisplayOfScreen (screen);
+    XVisualInfo vi_in, *vi_out;
+    int out_count;
+
+    vi_in.screen = screen_number (screen);
+    vi_in.visualid = XVisualIDFromVisual (visual);
+    vi_out = XGetVisualInfo (dpy, (VisualScreenMask | VisualIDMask),
+                             &vi_in, &out_count);
+    if (! vi_out) abort ();
+
+    status = glXGetConfig (dpy, vi_out, GLX_USE_GL, &value);
+
+    if (status == GLX_NO_EXTENSION)
+      /* dpy does not support the GLX extension. */
+      return;
+
+    if (status == GLX_BAD_VISUAL || value == False)
+      /* this visual does not support GLX. */
+      return;
+    
+    if (!glXGetConfig (dpy, vi_out, GLX_LEVEL, &value) &&
+        value != 0)
+      printf ("    GLX level:         %d\n", value);
+
+    if (!glXGetConfig (dpy, vi_out, GLX_RGBA, &value) && value)
+      {
+        int r=0, g=0, b=0, a=0;
+        glXGetConfig (dpy, vi_out, GLX_RED_SIZE,   &r);
+        glXGetConfig (dpy, vi_out, GLX_GREEN_SIZE, &g);
+        glXGetConfig (dpy, vi_out, GLX_BLUE_SIZE,  &b);
+        glXGetConfig (dpy, vi_out, GLX_ALPHA_SIZE, &a);
+        printf ("    GLX type:          RGBA (%2d, %2d, %2d, %2d)\n",
+                r, g, b, a);
+
+        r=0, g=0, b=0, a=0;
+        glXGetConfig (dpy, vi_out, GLX_ACCUM_RED_SIZE,   &r);
+        glXGetConfig (dpy, vi_out, GLX_ACCUM_GREEN_SIZE, &g);
+        glXGetConfig (dpy, vi_out, GLX_ACCUM_BLUE_SIZE,  &b);
+        glXGetConfig (dpy, vi_out, GLX_ACCUM_ALPHA_SIZE, &a);
+        printf ("    GLX accum:         RGBA (%2d, %2d, %2d, %2d)\n",
+                r, g, b, a);
+      }
+    else
+      {
+        value = 0;
+        glXGetConfig (dpy, vi_out, GLX_BUFFER_SIZE, &value);
+        printf ("    GLX type:          indexed (%d)\n", value);
+      }
+
+# ifdef GLX_VISUAL_CAVEAT_EXT
+    if (!glXGetConfig (dpy, vi_out, GLX_VISUAL_CAVEAT_EXT, &value) &&
+        value != GLX_NONE_EXT)
+      printf ("    GLX rating:        %s\n",
+              (value == GLX_NONE_EXT ? "none" :
+               value == GLX_SLOW_VISUAL_EXT ? "slow" :
+#   ifdef GLX_NON_CONFORMANT_EXT
+               value == GLX_NON_CONFORMANT_EXT ? "non-conformant" :
+#   endif /* GLX_NON_CONFORMANT_EXT */
+               "???"));
+# endif /* GLX_VISUAL_CAVEAT_EXT */
+
+    if (!glXGetConfig (dpy, vi_out, GLX_DOUBLEBUFFER, &value))
+      printf ("    GLX double-buffer: %s\n", (value ? "yes" : "no"));
+
+    if (!glXGetConfig (dpy, vi_out, GLX_STEREO, &value) &&
+        value)
+      printf ("    GLX stereo:        %s\n", (value ? "yes" : "no"));
+
+    if (!glXGetConfig (dpy, vi_out, GLX_AUX_BUFFERS, &value) &&
+        value != 0)
+      printf ("    GLX aux buffers:   %d\n", value);
 
 
-  if (!vi)                             /* Try mono. */
+    if (!glXGetConfig (dpy, vi_out, GLX_DEPTH_SIZE, &value))
+      printf ("    GLX depth size:    %d\n", value);
+
+    if (!glXGetConfig (dpy, vi_out, GLX_STENCIL_SIZE, &value) &&
+        value != 0)
+      printf ("    GLX stencil size:  %d\n", value);
+
+# ifdef GLX_SAMPLE_BUFFERS_SGIS
+    if (!glXGetConfig (dpy, vi_out, GLX_SAMPLE_BUFFERS_SGIS, &value) &&
+        value != 0)
+      {
+        int bufs = value;
+        if (!glXGetConfig (dpy, vi_out, GLX_SAMPLES_SGIS, &value))
+          printf ("    GLX multisamplers: %d (%d)\n", bufs, value);
+      }
+# endif /* GLX_SAMPLE_BUFFERS_SGIS */
+
+    if (!glXGetConfig (dpy, vi_out, GLX_TRANSPARENT_TYPE_EXT, &value) &&
+        value != GLX_NONE_EXT)
+      {
+        if (value == GLX_NONE_EXT)
+          printf ("    GLX transparency:  none\n");
+        else if (value == GLX_TRANSPARENT_INDEX_EXT)
+          {
+            if (!glXGetConfig (dpy, vi_out, GLX_TRANSPARENT_INDEX_VALUE_EXT,
+                               &value))
+              printf ("    GLX transparency:  indexed (%d)\n", value);
+          }
+        else if (value == GLX_TRANSPARENT_RGB_EXT)
+          {
+            int r=0, g=0, b=0, a=0;
+            glXGetConfig (dpy, vi_out, GLX_TRANSPARENT_RED_VALUE_EXT,   &r);
+            glXGetConfig (dpy, vi_out, GLX_TRANSPARENT_GREEN_VALUE_EXT, &g);
+            glXGetConfig (dpy, vi_out, GLX_TRANSPARENT_BLUE_VALUE_EXT,  &b);
+            glXGetConfig (dpy, vi_out, GLX_TRANSPARENT_ALPHA_VALUE_EXT, &a);
+            printf ("    GLX transparency:  RGBA (%2d, %2d, %2d, %2d)\n",
+                    r, g, b, a);
+          }
+      }
+  }
+#endif  /* HAVE_GL */
+}
+
+
+Bool
+validate_gl_visual (FILE *out, Screen *screen, const char *window_desc,
+                    Visual *visual)
+{
+#ifdef HAVE_GL
+  int status;
+  int value = False;
+
+  Display *dpy = DisplayOfScreen (screen);
+  XVisualInfo vi_in, *vi_out;
+  int out_count;
+  unsigned int id;
+
+  vi_in.screen = screen_number (screen);
+  vi_in.visualid = XVisualIDFromVisual (visual);
+  vi_out = XGetVisualInfo (dpy, (VisualScreenMask | VisualIDMask),
+                             &vi_in, &out_count);
+  if (! vi_out) abort ();
+
+  status = glXGetConfig (dpy, vi_out, GLX_USE_GL, &value);
+
+  id = (unsigned int) vi_out->visualid;
+  XFree ((char *) vi_out);
+
+  if (status == GLX_NO_EXTENSION)
     {
     {
-      i = 0;
-      attrs[i++] = GLX_DOUBLEBUFFER;
-      attrs[i++] = 0;
-      vi = glXChooseVisual (dpy, screen_num, attrs);
+      fprintf (out, "%s: display \"%s\" does not support the GLX extension.\n",
+               progname, DisplayString (dpy));
+      return False;
     }
     }
-
-  if (!vi)                             /* Try mono without double-buffer. */
+  else if (status == GLX_BAD_VISUAL || value == False)
     {
     {
-      attrs[0] = 0;
-      vi = glXChooseVisual (dpy, screen_num, attrs);
+      fprintf (out,
+               "%s: %s's visual 0x%x does not support the GLX extension.\n",
+               progname, window_desc, id);
+      return False;
     }
     }
-
-  if (!vi)
-    return 0;
   else
     {
   else
     {
-      Visual *v = vi->visual;
-      XFree (vi);
-      return v;
+      return True;
     }
     }
+
 #else  /* !HAVE_GL */
 #else  /* !HAVE_GL */
-  return 0;
-#endif /* !HAVE_GL */
+
+  fprintf (out, "%s: GL support was not compiled in to this program.\n",
+           progname);
+  return False;
+
+#endif  /* !HAVE_GL */
 }
 }
index f7e8a7a58a2430f710aa8ec67aa9f3319adc15dd..ca01142d99a0a3c3abd829aaee12663667e8fb7e 100644 (file)
@@ -25,6 +25,8 @@ extern Visual *get_overlay_visual (Screen *, unsigned long *pixel_return);
 extern Bool has_writable_cells (Screen *screen, Visual *visual);
 extern Visual *id_to_visual (Screen *screen, int id);
 
 extern Bool has_writable_cells (Screen *screen, Visual *visual);
 extern Visual *id_to_visual (Screen *screen, int id);
 
-Visual *get_gl_visual (Screen *screen);
+extern Visual *get_gl_visual (Screen *);
+extern void describe_gl_visual (FILE *, Screen *, Visual *, Bool priv_cmap_p);
+extern Bool validate_gl_visual (FILE *, Screen *, const char *, Visual *);
 
 #endif /* __VISUAL_H__ */
 
 #endif /* __VISUAL_H__ */
index 8ff900d57ade90f58c253d56e12bbc6e04c4b190..957d8f1c7d2e9506a0087c43bef8dba1f551c4ce 100644 (file)
@@ -1,7 +1,7 @@
 Begin3
 Title:          xscreensaver
 Begin3
 Title:          xscreensaver
-Version:        3.26
-Entered-date:   10NOV00
+Version:        3.27
+Entered-date:   19JAN01
 Description:    A modular screen saver and locker for the X Window System.
                 Highly customizable: allows the use of any program that
                 can draw on the root window as a display mode.
 Description:    A modular screen saver and locker for the X Window System.
                 Highly customizable: allows the use of any program that
                 can draw on the root window as a display mode.
@@ -10,16 +10,16 @@ Keywords:       screen saver, screen lock, lock, xlock, X11
 Author:         jwz@jwz.org (Jamie Zawinski)
 Maintained-by:  jwz@jwz.org (Jamie Zawinski)
 Primary-site:   http://www.jwz.org/xscreensaver/
 Author:         jwz@jwz.org (Jamie Zawinski)
 Maintained-by:  jwz@jwz.org (Jamie Zawinski)
 Primary-site:   http://www.jwz.org/xscreensaver/
-                1328K xscreensaver-3.26.tar.gz
-                42K  xscreensaver.README
+                1341K xscreensaver-3.27.tar.gz
+                44K  xscreensaver.README
                 1K   xscreensaver.lsm
 Alternate-site: sunsite.unc.edu /pub/Linux/X11/screensavers/
                 1K   xscreensaver.lsm
 Alternate-site: sunsite.unc.edu /pub/Linux/X11/screensavers/
-                1328K xscreensaver-3.26.tar.gz
-                42K  xscreensaver.README
+                1341K xscreensaver-3.27.tar.gz
+                44K  xscreensaver.README
                 1K   xscreensaver.lsm
 Alternate-site: ftp.x.org /contrib/applications/
                 1K   xscreensaver.lsm
 Alternate-site: ftp.x.org /contrib/applications/
-                1328K xscreensaver-3.26.tar.gz
-                42K  xscreensaver.README
+                1341K xscreensaver-3.27.tar.gz
+                44K  xscreensaver.README
                 1K   xscreensaver.lsm
 Platforms:      Linux, Irix, SunOS, Solaris, HPUX, AIX, FreeBSD, NetBSD,
                 BSDI, SCO, OSF1, Ultrix, VMS.
                 1K   xscreensaver.lsm
 Platforms:      Linux, Irix, SunOS, Solaris, HPUX, AIX, FreeBSD, NetBSD,
                 BSDI, SCO, OSF1, Ultrix, VMS.
index 828bb137af083f4705b37ad593711ba318021615..e36ff473c7a7c6b90fd0d657f7075cef85697335 100644 (file)
@@ -1,5 +1,5 @@
 %define        name    xscreensaver
 %define        name    xscreensaver
-%define        version 3.26
+%define        version 3.27
 %define        release 1
 %define        serial  1
 %define        prefix  /usr/X11R6
 %define        release 1
 %define        serial  1
 %define        prefix  /usr/X11R6
@@ -102,6 +102,7 @@ list_files() {
     sed -n -e 's@.* /\([^ ]*\)$@/\1@p'                    |
     sed    -e "s@^$RPM_BUILD_ROOT@@"                      \
            -e "s@/bin/\.\./@/@"                           |
     sed -n -e 's@.* /\([^ ]*\)$@/\1@p'                    |
     sed    -e "s@^$RPM_BUILD_ROOT@@"                      \
            -e "s@/bin/\.\./@/@"                           |
+    sed    -e 's@\(.*/man/.*\)@\1\*@'                     |
     sort
 }
 
     sort
 }