[Orca-checkins] rev 129 - in trunk/orca: . src orcallator config lib lib/Orca packages/Digest-MD5-2.16 packages/Digest-MD5-2.16/t packages/Storable-1.0.13 packages/Storable-1.0.13/t

blair at orcaware.com blair at orcaware.com
Sat Jul 13 22:28:02 PDT 2002


Author: blair
Date: Fri, 28 Jun 2002 22:14:16 -0700
New Revision: 129

Modified:
   trunk/orca/CHANGES
   trunk/orca/FAQ
   trunk/orca/INSTALL
   trunk/orca/NEWS
   trunk/orca/README
   trunk/orca/config/aclocal.m4
   trunk/orca/config/config.guess
   trunk/orca/config/config.sub
   trunk/orca/configure
   trunk/orca/configure.in
   trunk/orca/lib/Orca/Constants.pm
   trunk/orca/lib/Orca/HTMLFile.pm
   trunk/orca/lib/Orca/OpenFileHash.pm
   trunk/orca/lib/Orca/SourceFile.pm
   trunk/orca/lib/homesteaders.cfg
   trunk/orca/orcallator/orcallator.cfg.in
   trunk/orca/orcallator/orcallator.se
   trunk/orca/packages/Digest-MD5-2.16/Changes
   trunk/orca/packages/Digest-MD5-2.16/MD5.pm
   trunk/orca/packages/Digest-MD5-2.16/MD5.xs
   trunk/orca/packages/Digest-MD5-2.16/Makefile.PL
   trunk/orca/packages/Digest-MD5-2.16/t/files.t
   trunk/orca/packages/Storable-1.0.13/ChangeLog
   trunk/orca/packages/Storable-1.0.13/Storable.pm
   trunk/orca/packages/Storable-1.0.13/Storable.xs
   trunk/orca/packages/Storable-1.0.13/t/freeze.t
   trunk/orca/src/orca.pl.in
Log:
Load orca-0.27b2 into trunk/orca.


Modified: trunk/orca/configure
==============================================================================
--- trunk/orca/configure	(original)
+++ trunk/orca/configure	Sat Jul 13 22:27:34 2002
@@ -1,38 +1,119 @@
 #! /bin/sh
-
 # Guess values for system-dependent variables and create Makefiles.
-# Generated automatically using autoconf version 2.13 
-# Copyright (C) 1992, 93, 94, 95, 96 Free Software Foundation, Inc.
+# Generated by Autoconf 2.52.
 #
+# Copyright 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001
+# Free Software Foundation, Inc.
 # This configure script is free software; the Free Software Foundation
 # gives unlimited permission to copy, distribute and modify it.
 
-# Defaults:
-ac_help=
+# Avoid depending upon Character Ranges.
+as_cr_letters='abcdefghijklmnopqrstuvwxyz'
+as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ'
+as_cr_Letters=$as_cr_letters$as_cr_LETTERS
+as_cr_digits='0123456789'
+as_cr_alnum=$as_cr_Letters$as_cr_digits
+
+# Sed expression to map a string onto a valid variable name.
+as_tr_sh="sed y%*+%pp%;s%[^_$as_cr_alnum]%_%g"
+
+# Sed expression to map a string onto a valid CPP name.
+as_tr_cpp="sed y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g"
+
+# Be Bourne compatible
+if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then
+  emulate sh
+  NULLCMD=:
+elif test -n "${BASH_VERSION+set}" && (set -o posix) >/dev/null 2>&1; then
+  set -o posix
+fi
+
+# Name of the executable.
+as_me=`echo "$0" |sed 's,.*[\\/],,'`
+
+if expr a : '\(a\)' >/dev/null 2>&1; then
+  as_expr=expr
+else
+  as_expr=false
+fi
+
+rm -f conf$$ conf$$.exe conf$$.file
+echo >conf$$.file
+if ln -s conf$$.file conf$$ 2>/dev/null; then
+  # We could just check for DJGPP; but this test a) works b) is more generic
+  # and c) will remain valid once DJGPP supports symlinks (DJGPP 2.04).
+  if test -f conf$$.exe; then
+    # Don't use ln at all; we don't have any links
+    as_ln_s='cp -p'
+  else
+    as_ln_s='ln -s'
+  fi
+elif ln conf$$.file conf$$ 2>/dev/null; then
+  as_ln_s=ln
+else
+  as_ln_s='cp -p'
+fi
+rm -f conf$$ conf$$.exe conf$$.file
+
+as_executable_p="test -f"
+
+# Support unset when possible.
+if (FOO=FOO; unset FOO) >/dev/null 2>&1; then
+  as_unset=unset
+else
+  as_unset=false
+fi
+
+# NLS nuisances.
+$as_unset LANG || test "${LANG+set}" != set || { LANG=C; export LANG; }
+$as_unset LC_ALL || test "${LC_ALL+set}" != set || { LC_ALL=C; export LC_ALL; }
+$as_unset LC_TIME || test "${LC_TIME+set}" != set || { LC_TIME=C; export LC_TIME; }
+$as_unset LC_CTYPE || test "${LC_CTYPE+set}" != set || { LC_CTYPE=C; export LC_CTYPE; }
+$as_unset LANGUAGE || test "${LANGUAGE+set}" != set || { LANGUAGE=C; export LANGUAGE; }
+$as_unset LC_COLLATE || test "${LC_COLLATE+set}" != set || { LC_COLLATE=C; export LC_COLLATE; }
+$as_unset LC_NUMERIC || test "${LC_NUMERIC+set}" != set || { LC_NUMERIC=C; export LC_NUMERIC; }
+$as_unset LC_MESSAGES || test "${LC_MESSAGES+set}" != set || { LC_MESSAGES=C; export LC_MESSAGES; }
+
+# IFS
+# We need space, tab and new line, in precisely that order.
+as_nl='
+'
+IFS=" 	$as_nl"
+
+# CDPATH.
+$as_unset CDPATH || test "${CDPATH+set}" != set || { CDPATH=:; export CDPATH; }
+
+# Name of the host.
+# hostname on some systems (SVR3.2, Linux) returns a bogus exit status,
+# so uname gets run too.
+ac_hostname=`(hostname || uname -n) 2>/dev/null | sed 1q`
+
+exec 6>&1
+
+#
+# Initializations.
+#
 ac_default_prefix=/usr/local
-# Any additions from configure.in:
-ac_help="$ac_help
-   --with-rrd-dir=DIR         directory were the RRD data files are stored"
-ac_help="$ac_help
-   --with-html-dir=DIR        location of the root output HTML directory"
-ac_help="$ac_help
-   --with-orcallator-dir=DIR  directory were orcallator output is stored"
-ac_help="$ac_help
-   --with-ncsa-log=FILE       location of the NCSA style web server access log"
-ac_help="$ac_help
-   --with-proxy-log=FILE      location of the proxy NCSA web server access log"
-ac_help="$ac_help
-   --with-squid-log=FILE      location of the Squid file log file"
+cross_compiling=no
+subdirs=
+MFLAGS= MAKEFLAGS=
+SHELL=${CONFIG_SHELL-/bin/sh}
+
+# Maximum number of lines to put in a shell here document.
+# This variable seems obsolete.  It should probably be removed, and
+# only ac_max_sed_lines should be used.
+: ${ac_max_here_lines=38}
+
+ac_unique_file="src/orca.pl.in"
 
 # Initialize some variables set by options.
+ac_init_help=
+ac_init_version=false
 # The variables have the same names as the options, with
 # dashes changed to underlines.
-build=NONE
-cache_file=./config.cache
+cache_file=/dev/null
 exec_prefix=NONE
-host=NONE
 no_create=
-nonopt=NONE
 no_recursion=
 prefix=NONE
 program_prefix=NONE
@@ -41,10 +122,15 @@
 silent=
 site=
 srcdir=
-target=NONE
 verbose=
 x_includes=NONE
 x_libraries=NONE
+
+# Installation directory options.
+# These are left unexpanded so users can "make install exec_prefix=/foo"
+# and all the variables that are supposed to be based on exec_prefix
+# by default will actually change.
+# Use braces instead of parens because sh, perl, etc. also accept them.
 bindir='${exec_prefix}/bin'
 sbindir='${exec_prefix}/sbin'
 libexecdir='${exec_prefix}/libexec'
@@ -58,17 +144,16 @@
 infodir='${prefix}/info'
 mandir='${prefix}/man'
 
-# Initialize some other variables.
-subdirs=
-MFLAGS= MAKEFLAGS=
-SHELL=${CONFIG_SHELL-/bin/sh}
-# Maximum number of lines to put in a shell here document.
-ac_max_here_lines=12
+# Identity of this package.
+PACKAGE_NAME=
+PACKAGE_TARNAME=
+PACKAGE_VERSION=
+PACKAGE_STRING=
+PACKAGE_BUGREPORT=
 
 ac_prev=
 for ac_option
 do
-
   # If the previous option needs an argument, assign it.
   if test -n "$ac_prev"; then
     eval "$ac_prev=\$ac_option"
@@ -76,59 +161,59 @@
     continue
   fi
 
-  case "$ac_option" in
-  -*=*) ac_optarg=`echo "$ac_option" | sed 's/[-_a-zA-Z0-9]*=//'` ;;
-  *) ac_optarg= ;;
-  esac
+  ac_optarg=`expr "x$ac_option" : 'x[^=]*=\(.*\)'`
 
   # Accept the important Cygnus configure options, so we can diagnose typos.
 
-  case "$ac_option" in
+  case $ac_option in
 
   -bindir | --bindir | --bindi | --bind | --bin | --bi)
     ac_prev=bindir ;;
   -bindir=* | --bindir=* | --bindi=* | --bind=* | --bin=* | --bi=*)
-    bindir="$ac_optarg" ;;
+    bindir=$ac_optarg ;;
 
   -build | --build | --buil | --bui | --bu)
-    ac_prev=build ;;
+    ac_prev=build_alias ;;
   -build=* | --build=* | --buil=* | --bui=* | --bu=*)
-    build="$ac_optarg" ;;
+    build_alias=$ac_optarg ;;
 
   -cache-file | --cache-file | --cache-fil | --cache-fi \
   | --cache-f | --cache- | --cache | --cach | --cac | --ca | --c)
     ac_prev=cache_file ;;
   -cache-file=* | --cache-file=* | --cache-fil=* | --cache-fi=* \
   | --cache-f=* | --cache-=* | --cache=* | --cach=* | --cac=* | --ca=* | --c=*)
-    cache_file="$ac_optarg" ;;
+    cache_file=$ac_optarg ;;
+
+  --config-cache | -C)
+    cache_file=config.cache ;;
 
   -datadir | --datadir | --datadi | --datad | --data | --dat | --da)
     ac_prev=datadir ;;
   -datadir=* | --datadir=* | --datadi=* | --datad=* | --data=* | --dat=* \
   | --da=*)
-    datadir="$ac_optarg" ;;
+    datadir=$ac_optarg ;;
 
   -disable-* | --disable-*)
-    ac_feature=`echo $ac_option|sed -e 's/-*disable-//'`
+    ac_feature=`expr "x$ac_option" : 'x-*disable-\(.*\)'`
     # Reject names that are not valid shell variable names.
-    if test -n "`echo $ac_feature| sed 's/[-a-zA-Z0-9_]//g'`"; then
-      { echo "configure: error: $ac_feature: invalid feature name" 1>&2; exit 1; }
-    fi
-    ac_feature=`echo $ac_feature| sed 's/-/_/g'`
-    eval "enable_${ac_feature}=no" ;;
+    expr "x$ac_feature" : ".*[^-_$as_cr_alnum]" >/dev/null &&
+      { echo "$as_me: error: invalid feature name: $ac_feature" >&2
+   { (exit 1); exit 1; }; }
+    ac_feature=`echo $ac_feature | sed 's/-/_/g'`
+    eval "enable_$ac_feature=no" ;;
 
   -enable-* | --enable-*)
-    ac_feature=`echo $ac_option|sed -e 's/-*enable-//' -e 's/=.*//'`
+    ac_feature=`expr "x$ac_option" : 'x-*enable-\([^=]*\)'`
     # Reject names that are not valid shell variable names.
-    if test -n "`echo $ac_feature| sed 's/[-_a-zA-Z0-9]//g'`"; then
-      { echo "configure: error: $ac_feature: invalid feature name" 1>&2; exit 1; }
-    fi
-    ac_feature=`echo $ac_feature| sed 's/-/_/g'`
-    case "$ac_option" in
-      *=*) ;;
+    expr "x$ac_feature" : ".*[^-_$as_cr_alnum]" >/dev/null &&
+      { echo "$as_me: error: invalid feature name: $ac_feature" >&2
+   { (exit 1); exit 1; }; }
+    ac_feature=`echo $ac_feature | sed 's/-/_/g'`
+    case $ac_option in
+      *=*) ac_optarg=`echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"`;;
       *) ac_optarg=yes ;;
     esac
-    eval "enable_${ac_feature}='$ac_optarg'" ;;
+    eval "enable_$ac_feature='$ac_optarg'" ;;
 
   -exec-prefix | --exec_prefix | --exec-prefix | --exec-prefi \
   | --exec-pref | --exec-pre | --exec-pr | --exec-p | --exec- \
@@ -137,95 +222,47 @@
   -exec-prefix=* | --exec_prefix=* | --exec-prefix=* | --exec-prefi=* \
   | --exec-pref=* | --exec-pre=* | --exec-pr=* | --exec-p=* | --exec-=* \
   | --exec=* | --exe=* | --ex=*)
-    exec_prefix="$ac_optarg" ;;
+    exec_prefix=$ac_optarg ;;
 
   -gas | --gas | --ga | --g)
     # Obsolete; use --with-gas.
     with_gas=yes ;;
 
-  -help | --help | --hel | --he)
-    # Omit some internal or obsolete options to make the list less imposing.
-    # This message is too long to be a string in the A/UX 3.1 sh.
-    cat << EOF
-Usage: configure [options] [host]
-Options: [defaults in brackets after descriptions]
-Configuration:
-  --cache-file=FILE       cache test results in FILE
-  --help                  print this message
-  --no-create             do not create output files
-  --quiet, --silent       do not print \`checking...' messages
-  --version               print the version of autoconf that created configure
-Directory and file names:
-  --prefix=PREFIX         install architecture-independent files in PREFIX
-                          [$ac_default_prefix]
-  --exec-prefix=EPREFIX   install architecture-dependent files in EPREFIX
-                          [same as prefix]
-  --bindir=DIR            user executables in DIR [EPREFIX/bin]
-  --sbindir=DIR           system admin executables in DIR [EPREFIX/sbin]
-  --libexecdir=DIR        program executables in DIR [EPREFIX/libexec]
-  --datadir=DIR           read-only architecture-independent data in DIR
-                          [PREFIX/share]
-  --sysconfdir=DIR        read-only single-machine data in DIR [PREFIX/etc]
-  --sharedstatedir=DIR    modifiable architecture-independent data in DIR
-                          [PREFIX/com]
-  --localstatedir=DIR     modifiable single-machine data in DIR [PREFIX/var]
-  --libdir=DIR            object code libraries in DIR [EPREFIX/lib]
-  --includedir=DIR        C header files in DIR [PREFIX/include]
-  --oldincludedir=DIR     C header files for non-gcc in DIR [/usr/include]
-  --infodir=DIR           info documentation in DIR [PREFIX/info]
-  --mandir=DIR            man documentation in DIR [PREFIX/man]
-  --srcdir=DIR            find the sources in DIR [configure dir or ..]
-  --program-prefix=PREFIX prepend PREFIX to installed program names
-  --program-suffix=SUFFIX append SUFFIX to installed program names
-  --program-transform-name=PROGRAM
-                          run sed PROGRAM on installed program names
-EOF
-    cat << EOF
-Host type:
-  --build=BUILD           configure for building on BUILD [BUILD=HOST]
-  --host=HOST             configure for HOST [guessed]
-  --target=TARGET         configure for TARGET [TARGET=HOST]
-Features and packages:
-  --disable-FEATURE       do not include FEATURE (same as --enable-FEATURE=no)
-  --enable-FEATURE[=ARG]  include FEATURE [ARG=yes]
-  --with-PACKAGE[=ARG]    use PACKAGE [ARG=yes]
-  --without-PACKAGE       do not use PACKAGE (same as --with-PACKAGE=no)
-  --x-includes=DIR        X include files are in DIR
-  --x-libraries=DIR       X library files are in DIR
-EOF
-    if test -n "$ac_help"; then
-      echo "--enable and --with options recognized:$ac_help"
-    fi
-    exit 0 ;;
+  -help | --help | --hel | --he | -h)
+    ac_init_help=long ;;
+  -help=r* | --help=r* | --hel=r* | --he=r* | -hr*)
+    ac_init_help=recursive ;;
+  -help=s* | --help=s* | --hel=s* | --he=s* | -hs*)
+    ac_init_help=short ;;
 
   -host | --host | --hos | --ho)
-    ac_prev=host ;;
+    ac_prev=host_alias ;;
   -host=* | --host=* | --hos=* | --ho=*)
-    host="$ac_optarg" ;;
+    host_alias=$ac_optarg ;;
 
   -includedir | --includedir | --includedi | --included | --include \
   | --includ | --inclu | --incl | --inc)
     ac_prev=includedir ;;
   -includedir=* | --includedir=* | --includedi=* | --included=* | --include=* \
   | --includ=* | --inclu=* | --incl=* | --inc=*)
-    includedir="$ac_optarg" ;;
+    includedir=$ac_optarg ;;
 
   -infodir | --infodir | --infodi | --infod | --info | --inf)
     ac_prev=infodir ;;
   -infodir=* | --infodir=* | --infodi=* | --infod=* | --info=* | --inf=*)
-    infodir="$ac_optarg" ;;
+    infodir=$ac_optarg ;;
 
   -libdir | --libdir | --libdi | --libd)
     ac_prev=libdir ;;
   -libdir=* | --libdir=* | --libdi=* | --libd=*)
-    libdir="$ac_optarg" ;;
+    libdir=$ac_optarg ;;
 
   -libexecdir | --libexecdir | --libexecdi | --libexecd | --libexec \
   | --libexe | --libex | --libe)
     ac_prev=libexecdir ;;
   -libexecdir=* | --libexecdir=* | --libexecdi=* | --libexecd=* | --libexec=* \
   | --libexe=* | --libex=* | --libe=*)
-    libexecdir="$ac_optarg" ;;
+    libexecdir=$ac_optarg ;;
 
   -localstatedir | --localstatedir | --localstatedi | --localstated \
   | --localstate | --localstat | --localsta | --localst \
@@ -234,12 +271,12 @@
   -localstatedir=* | --localstatedir=* | --localstatedi=* | --localstated=* \
   | --localstate=* | --localstat=* | --localsta=* | --localst=* \
   | --locals=* | --local=* | --loca=* | --loc=* | --lo=*)
-    localstatedir="$ac_optarg" ;;
+    localstatedir=$ac_optarg ;;
 
   -mandir | --mandir | --mandi | --mand | --man | --ma | --m)
     ac_prev=mandir ;;
   -mandir=* | --mandir=* | --mandi=* | --mand=* | --man=* | --ma=* | --m=*)
-    mandir="$ac_optarg" ;;
+    mandir=$ac_optarg ;;
 
   -nfp | --nfp | --nf)
     # Obsolete; use --without-fp.
@@ -260,26 +297,26 @@
   -oldincludedir=* | --oldincludedir=* | --oldincludedi=* | --oldincluded=* \
   | --oldinclude=* | --oldinclud=* | --oldinclu=* | --oldincl=* | --oldinc=* \
   | --oldin=* | --oldi=* | --old=* | --ol=* | --o=*)
-    oldincludedir="$ac_optarg" ;;
+    oldincludedir=$ac_optarg ;;
 
   -prefix | --prefix | --prefi | --pref | --pre | --pr | --p)
     ac_prev=prefix ;;
   -prefix=* | --prefix=* | --prefi=* | --pref=* | --pre=* | --pr=* | --p=*)
-    prefix="$ac_optarg" ;;
+    prefix=$ac_optarg ;;
 
   -program-prefix | --program-prefix | --program-prefi | --program-pref \
   | --program-pre | --program-pr | --program-p)
     ac_prev=program_prefix ;;
   -program-prefix=* | --program-prefix=* | --program-prefi=* \
   | --program-pref=* | --program-pre=* | --program-pr=* | --program-p=*)
-    program_prefix="$ac_optarg" ;;
+    program_prefix=$ac_optarg ;;
 
   -program-suffix | --program-suffix | --program-suffi | --program-suff \
   | --program-suf | --program-su | --program-s)
     ac_prev=program_suffix ;;
   -program-suffix=* | --program-suffix=* | --program-suffi=* \
   | --program-suff=* | --program-suf=* | --program-su=* | --program-s=*)
-    program_suffix="$ac_optarg" ;;
+    program_suffix=$ac_optarg ;;
 
   -program-transform-name | --program-transform-name \
   | --program-transform-nam | --program-transform-na \
@@ -296,7 +333,7 @@
   | --program-transfo=* | --program-transf=* \
   | --program-trans=* | --program-tran=* \
   | --progr-tra=* | --program-tr=* | --program-t=*)
-    program_transform_name="$ac_optarg" ;;
+    program_transform_name=$ac_optarg ;;
 
   -q | -quiet | --quiet | --quie | --qui | --qu | --q \
   | -silent | --silent | --silen | --sile | --sil)
@@ -306,7 +343,7 @@
     ac_prev=sbindir ;;
   -sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \
   | --sbi=* | --sb=*)
-    sbindir="$ac_optarg" ;;
+    sbindir=$ac_optarg ;;
 
   -sharedstatedir | --sharedstatedir | --sharedstatedi \
   | --sharedstated | --sharedstate | --sharedstat | --sharedsta \
@@ -317,58 +354,57 @@
   | --sharedstated=* | --sharedstate=* | --sharedstat=* | --sharedsta=* \
   | --sharedst=* | --shareds=* | --shared=* | --share=* | --shar=* \
   | --sha=* | --sh=*)
-    sharedstatedir="$ac_optarg" ;;
+    sharedstatedir=$ac_optarg ;;
 
   -site | --site | --sit)
     ac_prev=site ;;
   -site=* | --site=* | --sit=*)
-    site="$ac_optarg" ;;
+    site=$ac_optarg ;;
 
   -srcdir | --srcdir | --srcdi | --srcd | --src | --sr)
     ac_prev=srcdir ;;
   -srcdir=* | --srcdir=* | --srcdi=* | --srcd=* | --src=* | --sr=*)
-    srcdir="$ac_optarg" ;;
+    srcdir=$ac_optarg ;;
 
   -sysconfdir | --sysconfdir | --sysconfdi | --sysconfd | --sysconf \
   | --syscon | --sysco | --sysc | --sys | --sy)
     ac_prev=sysconfdir ;;
   -sysconfdir=* | --sysconfdir=* | --sysconfdi=* | --sysconfd=* | --sysconf=* \
   | --syscon=* | --sysco=* | --sysc=* | --sys=* | --sy=*)
-    sysconfdir="$ac_optarg" ;;
+    sysconfdir=$ac_optarg ;;
 
   -target | --target | --targe | --targ | --tar | --ta | --t)
-    ac_prev=target ;;
+    ac_prev=target_alias ;;
   -target=* | --target=* | --targe=* | --targ=* | --tar=* | --ta=* | --t=*)
-    target="$ac_optarg" ;;
+    target_alias=$ac_optarg ;;
 
   -v | -verbose | --verbose | --verbos | --verbo | --verb)
     verbose=yes ;;
 
-  -version | --version | --versio | --versi | --vers)
-    echo "configure generated by autoconf version 2.13"
-    exit 0 ;;
+  -version | --version | --versio | --versi | --vers | -V)
+    ac_init_version=: ;;
 
   -with-* | --with-*)
-    ac_package=`echo $ac_option|sed -e 's/-*with-//' -e 's/=.*//'`
+    ac_package=`expr "x$ac_option" : 'x-*with-\([^=]*\)'`
     # Reject names that are not valid shell variable names.
-    if test -n "`echo $ac_package| sed 's/[-_a-zA-Z0-9]//g'`"; then
-      { echo "configure: error: $ac_package: invalid package name" 1>&2; exit 1; }
-    fi
+    expr "x$ac_package" : ".*[^-_$as_cr_alnum]" >/dev/null &&
+      { echo "$as_me: error: invalid package name: $ac_package" >&2
+   { (exit 1); exit 1; }; }
     ac_package=`echo $ac_package| sed 's/-/_/g'`
-    case "$ac_option" in
-      *=*) ;;
+    case $ac_option in
+      *=*) ac_optarg=`echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"`;;
       *) ac_optarg=yes ;;
     esac
-    eval "with_${ac_package}='$ac_optarg'" ;;
+    eval "with_$ac_package='$ac_optarg'" ;;
 
   -without-* | --without-*)
-    ac_package=`echo $ac_option|sed -e 's/-*without-//'`
+    ac_package=`expr "x$ac_option" : 'x-*without-\(.*\)'`
     # Reject names that are not valid shell variable names.
-    if test -n "`echo $ac_package| sed 's/[-a-zA-Z0-9_]//g'`"; then
-      { echo "configure: error: $ac_package: invalid package name" 1>&2; exit 1; }
-    fi
-    ac_package=`echo $ac_package| sed 's/-/_/g'`
-    eval "with_${ac_package}=no" ;;
+    expr "x$ac_package" : ".*[^-_$as_cr_alnum]" >/dev/null &&
+      { echo "$as_me: error: invalid package name: $ac_package" >&2
+   { (exit 1); exit 1; }; }
+    ac_package=`echo $ac_package | sed 's/-/_/g'`
+    eval "with_$ac_package=no" ;;
 
   --x)
     # Obsolete; use --with-x.
@@ -379,98 +415,98 @@
     ac_prev=x_includes ;;
   -x-includes=* | --x-includes=* | --x-include=* | --x-includ=* | --x-inclu=* \
   | --x-incl=* | --x-inc=* | --x-in=* | --x-i=*)
-    x_includes="$ac_optarg" ;;
+    x_includes=$ac_optarg ;;
 
   -x-libraries | --x-libraries | --x-librarie | --x-librari \
   | --x-librar | --x-libra | --x-libr | --x-lib | --x-li | --x-l)
     ac_prev=x_libraries ;;
   -x-libraries=* | --x-libraries=* | --x-librarie=* | --x-librari=* \
   | --x-librar=* | --x-libra=* | --x-libr=* | --x-lib=* | --x-li=* | --x-l=*)
-    x_libraries="$ac_optarg" ;;
+    x_libraries=$ac_optarg ;;
 
-  -*) { echo "configure: error: $ac_option: invalid option; use --help to show usage" 1>&2; exit 1; }
+  -*) { echo "$as_me: error: unrecognized option: $ac_option
+Try \`$0 --help' for more information." >&2
+   { (exit 1); exit 1; }; }
     ;;
 
+  *=*)
+    ac_envvar=`expr "x$ac_option" : 'x\([^=]*\)='`
+    # Reject names that are not valid shell variable names.
+    expr "x$ac_envvar" : ".*[^_$as_cr_alnum]" >/dev/null &&
+      { echo "$as_me: error: invalid variable name: $ac_envvar" >&2
+   { (exit 1); exit 1; }; }
+    ac_optarg=`echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"`
+    eval "$ac_envvar='$ac_optarg'"
+    export $ac_envvar ;;
+
   *)
-    if test -n "`echo $ac_option| sed 's/[-a-z0-9.]//g'`"; then
-      echo "configure: warning: $ac_option: invalid host type" 1>&2
-    fi
-    if test "x$nonopt" != xNONE; then
-      { echo "configure: error: can only configure for one host and one target at a time" 1>&2; exit 1; }
-    fi
-    nonopt="$ac_option"
+    # FIXME: should be removed in autoconf 3.0.
+    echo "$as_me: WARNING: you should use --build, --host, --target" >&2
+    expr "x$ac_option" : ".*[^-._$as_cr_alnum]" >/dev/null &&
+      echo "$as_me: WARNING: invalid host type: $ac_option" >&2
+    : ${build_alias=$ac_option} ${host_alias=$ac_option} ${target_alias=$ac_option}
     ;;
 
   esac
 done
 
 if test -n "$ac_prev"; then
-  { echo "configure: error: missing argument to --`echo $ac_prev | sed 's/_/-/g'`" 1>&2; exit 1; }
-fi
-
-trap 'rm -fr conftest* confdefs* core core.* *.core $ac_clean_files; exit 1' 1 2 15
-
-# File descriptor usage:
-# 0 standard input
-# 1 file creation
-# 2 errors and warnings
-# 3 some systems may open it to /dev/tty
-# 4 used on the Kubota Titan
-# 6 checking for... messages and results
-# 5 compiler messages saved in config.log
-if test "$silent" = yes; then
-  exec 6>/dev/null
-else
-  exec 6>&1
+  ac_option=--`echo $ac_prev | sed 's/_/-/g'`
+  { echo "$as_me: error: missing argument to $ac_option" >&2
+   { (exit 1); exit 1; }; }
 fi
-exec 5>./config.log
 
-echo "\
-This file contains any messages produced by compilers while
-running configure, to aid debugging if configure makes a mistake.
-" 1>&5
+# Be sure to have absolute paths.
+for ac_var in exec_prefix prefix
+do
+  eval ac_val=$`echo $ac_var`
+  case $ac_val in
+    [\\/$]* | ?:[\\/]* | NONE | '' ) ;;
+    *)  { echo "$as_me: error: expected an absolute path for --$ac_var: $ac_val" >&2
+   { (exit 1); exit 1; }; };;
+  esac
+done
 
-# Strip out --no-create and --no-recursion so they do not pile up.
-# Also quote any args containing shell metacharacters.
-ac_configure_args=
-for ac_arg
+# Be sure to have absolute paths.
+for ac_var in bindir sbindir libexecdir datadir sysconfdir sharedstatedir \
+              localstatedir libdir includedir oldincludedir infodir mandir
 do
-  case "$ac_arg" in
-  -no-create | --no-create | --no-creat | --no-crea | --no-cre \
-  | --no-cr | --no-c) ;;
-  -no-recursion | --no-recursion | --no-recursio | --no-recursi \
-  | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r) ;;
-  *" "*|*"	"*|*[\[\]\~\#\$\^\&\*\(\)\{\}\\\|\;\<\>\?]*)
-  ac_configure_args="$ac_configure_args '$ac_arg'" ;;
-  *) ac_configure_args="$ac_configure_args $ac_arg" ;;
+  eval ac_val=$`echo $ac_var`
+  case $ac_val in
+    [\\/$]* | ?:[\\/]* ) ;;
+    *)  { echo "$as_me: error: expected an absolute path for --$ac_var: $ac_val" >&2
+   { (exit 1); exit 1; }; };;
   esac
 done
 
-# NLS nuisances.
-# Only set these to C if already set.  These must not be set unconditionally
-# because not all systems understand e.g. LANG=C (notably SCO).
-# Fixing LC_MESSAGES prevents Solaris sh from translating var values in `set'!
-# Non-C LC_CTYPE values break the ctype check.
-if test "${LANG+set}"   = set; then LANG=C;   export LANG;   fi
-if test "${LC_ALL+set}" = set; then LC_ALL=C; export LC_ALL; fi
-if test "${LC_MESSAGES+set}" = set; then LC_MESSAGES=C; export LC_MESSAGES; fi
-if test "${LC_CTYPE+set}"    = set; then LC_CTYPE=C;    export LC_CTYPE;    fi
+# There might be people who depend on the old broken behavior: `$host'
+# used to hold the argument of --host etc.
+build=$build_alias
+host=$host_alias
+target=$target_alias
+
+# FIXME: should be removed in autoconf 3.0.
+if test "x$host_alias" != x; then
+  if test "x$build_alias" = x; then
+    cross_compiling=maybe
+    echo "$as_me: WARNING: If you wanted to set the --build type, don't use --host.
+    If a cross compiler is detected then cross compile mode will be used." >&2
+  elif test "x$build_alias" != "x$host_alias"; then
+    cross_compiling=yes
+  fi
+fi
 
-# confdefs.h avoids OS command line length limits that DEFS can exceed.
-rm -rf conftest* confdefs.h
-# AIX cpp loses on an empty file, so make sure it contains at least a newline.
-echo > confdefs.h
+ac_tool_prefix=
+test -n "$host_alias" && ac_tool_prefix=$host_alias-
 
-# A filename unique to this package, relative to the directory that
-# configure is in, which we can look for to find out if srcdir is correct.
-ac_unique_file=src/orca.pl.in
+test "$silent" = yes && exec 6>/dev/null
 
 # Find the source files, if location was not specified.
 if test -z "$srcdir"; then
   ac_srcdir_defaulted=yes
   # Try the directory containing this script, then its parent.
   ac_prog=$0
-  ac_confdir=`echo $ac_prog|sed 's%/[^/][^/]*$%%'`
+  ac_confdir=`echo "$ac_prog" | sed 's%[\\/][^\\/][^\\/]*$%%'`
   test "x$ac_confdir" = "x$ac_prog" && ac_confdir=.
   srcdir=$ac_confdir
   if test ! -r $srcdir/$ac_unique_file; then
@@ -481,13 +517,310 @@
 fi
 if test ! -r $srcdir/$ac_unique_file; then
   if test "$ac_srcdir_defaulted" = yes; then
-    { echo "configure: error: can not find sources in $ac_confdir or .." 1>&2; exit 1; }
+    { echo "$as_me: error: cannot find sources in $ac_confdir or .." >&2
+   { (exit 1); exit 1; }; }
   else
-    { echo "configure: error: can not find sources in $srcdir" 1>&2; exit 1; }
+    { echo "$as_me: error: cannot find sources in $srcdir" >&2
+   { (exit 1); exit 1; }; }
   fi
 fi
-srcdir=`echo "${srcdir}" | sed 's%\([^/]\)/*$%\1%'`
+srcdir=`echo "$srcdir" | sed 's%\([^\\/]\)[\\/]*$%\1%'`
+ac_env_build_alias_set=${build_alias+set}
+ac_env_build_alias_value=$build_alias
+ac_cv_env_build_alias_set=${build_alias+set}
+ac_cv_env_build_alias_value=$build_alias
+ac_env_host_alias_set=${host_alias+set}
+ac_env_host_alias_value=$host_alias
+ac_cv_env_host_alias_set=${host_alias+set}
+ac_cv_env_host_alias_value=$host_alias
+ac_env_target_alias_set=${target_alias+set}
+ac_env_target_alias_value=$target_alias
+ac_cv_env_target_alias_set=${target_alias+set}
+ac_cv_env_target_alias_value=$target_alias
+ac_env_CC_set=${CC+set}
+ac_env_CC_value=$CC
+ac_cv_env_CC_set=${CC+set}
+ac_cv_env_CC_value=$CC
+ac_env_CFLAGS_set=${CFLAGS+set}
+ac_env_CFLAGS_value=$CFLAGS
+ac_cv_env_CFLAGS_set=${CFLAGS+set}
+ac_cv_env_CFLAGS_value=$CFLAGS
+ac_env_LDFLAGS_set=${LDFLAGS+set}
+ac_env_LDFLAGS_value=$LDFLAGS
+ac_cv_env_LDFLAGS_set=${LDFLAGS+set}
+ac_cv_env_LDFLAGS_value=$LDFLAGS
+ac_env_CPPFLAGS_set=${CPPFLAGS+set}
+ac_env_CPPFLAGS_value=$CPPFLAGS
+ac_cv_env_CPPFLAGS_set=${CPPFLAGS+set}
+ac_cv_env_CPPFLAGS_value=$CPPFLAGS
+
+#
+# Report the --help message.
+#
+if test "$ac_init_help" = "long"; then
+  # Omit some internal or obsolete options to make the list less imposing.
+  # This message is too long to be a string in the A/UX 3.1 sh.
+  cat <<EOF
+\`configure' configures this package to adapt to many kinds of systems.
+
+Usage: $0 [OPTION]... [VAR=VALUE]...
+
+To assign environment variables (e.g., CC, CFLAGS...), specify them as
+VAR=VALUE.  See below for descriptions of some of the useful variables.
+
+Defaults for the options are specified in brackets.
+
+Configuration:
+  -h, --help              display this help and exit
+      --help=short        display options specific to this package
+      --help=recursive    display the short help of all the included packages
+  -V, --version           display version information and exit
+  -q, --quiet, --silent   do not print \`checking...' messages
+      --cache-file=FILE   cache test results in FILE [disabled]
+  -C, --config-cache      alias for \`--cache-file=config.cache'
+  -n, --no-create         do not create output files
+      --srcdir=DIR        find the sources in DIR [configure dir or \`..']
+
+EOF
+
+  cat <<EOF
+Installation directories:
+  --prefix=PREFIX         install architecture-independent files in PREFIX
+                          [$ac_default_prefix]
+  --exec-prefix=EPREFIX   install architecture-dependent files in EPREFIX
+                          [PREFIX]
+
+By default, \`make install' will install all the files in
+\`$ac_default_prefix/bin', \`$ac_default_prefix/lib' etc.  You can specify
+an installation prefix other than \`$ac_default_prefix' using \`--prefix',
+for instance \`--prefix=\$HOME'.
+
+For better control, use the options below.
+
+Fine tuning of the installation directories:
+  --bindir=DIR           user executables [EPREFIX/bin]
+  --sbindir=DIR          system admin executables [EPREFIX/sbin]
+  --libexecdir=DIR       program executables [EPREFIX/libexec]
+  --datadir=DIR          read-only architecture-independent data [PREFIX/share]
+  --sysconfdir=DIR       read-only single-machine data [PREFIX/etc]
+  --sharedstatedir=DIR   modifiable architecture-independent data [PREFIX/com]
+  --localstatedir=DIR    modifiable single-machine data [PREFIX/var]
+  --libdir=DIR           object code libraries [EPREFIX/lib]
+  --includedir=DIR       C header files [PREFIX/include]
+  --oldincludedir=DIR    C header files for non-gcc [/usr/include]
+  --infodir=DIR          info documentation [PREFIX/info]
+  --mandir=DIR           man documentation [PREFIX/man]
+EOF
+
+  cat <<\EOF
+
+Program names:
+  --program-prefix=PREFIX            prepend PREFIX to installed program names
+  --program-suffix=SUFFIX            append SUFFIX to installed program names
+  --program-transform-name=PROGRAM   run sed PROGRAM on installed program names
+
+System types:
+  --build=BUILD     configure for building on BUILD [guessed]
+  --host=HOST       build programs to run on HOST [BUILD]
+  --target=TARGET   configure for building compilers for TARGET [HOST]
+EOF
+fi
+
+if test -n "$ac_init_help"; then
+
+  cat <<\EOF
+
+Optional Packages:
+  --with-PACKAGE[=ARG]    use PACKAGE [ARG=yes]
+  --without-PACKAGE       do not use PACKAGE (same as --with-PACKAGE=no)
+   --with-rrd-dir=DIR         directory were the RRD data files are stored
+   --with-html-dir=DIR        location of the root output HTML directory
+   --with-orcallator-dir=DIR  directory were orcallator output is stored
+   --with-ncsa-log=FILE       location of the NCSA style web server access log
+   --with-proxy-log=FILE      location of the proxy NCSA web server access log
+   --with-squid-log=FILE      location of the Squid file log file
+
+Some influential environment variables:
+  CC          C compiler command
+  CFLAGS      C compiler flags
+  LDFLAGS     linker flags, e.g. -L<lib dir> if you have libraries in a
+              nonstandard directory <lib dir>
+  CPPFLAGS    C/C++ preprocessor flags, e.g. -I<include dir> if you have
+              headers in a nonstandard directory <include dir>
+
+Use these variables to override the choices made by `configure' or to help
+it to find libraries and programs with nonstandard names/locations.
+
+EOF
+fi
+
+if test "$ac_init_help" = "recursive"; then
+  # If there are subdirs, report their specific --help.
+  ac_popdir=`pwd`
+  for ac_subdir in : $ac_subdirs_all; do test "x$ac_subdir" = x: && continue
+    cd $ac_subdir
+    # A "../" for each directory in /$ac_subdir.
+    ac_dots=`echo $ac_subdir |
+             sed 's,^\./,,;s,[^/]$,&/,;s,[^/]*/,../,g'`
+
+    case $srcdir in
+    .) # No --srcdir option.  We are building in place.
+      ac_sub_srcdir=$srcdir ;;
+    [\\/]* | ?:[\\/]* ) # Absolute path.
+      ac_sub_srcdir=$srcdir/$ac_subdir ;;
+    *) # Relative path.
+      ac_sub_srcdir=$ac_dots$srcdir/$ac_subdir ;;
+    esac
+
+    # Check for guested configure; otherwise get Cygnus style configure.
+    if test -f $ac_sub_srcdir/configure.gnu; then
+      echo
+      $SHELL $ac_sub_srcdir/configure.gnu  --help=recursive
+    elif test -f $ac_sub_srcdir/configure; then
+      echo
+      $SHELL $ac_sub_srcdir/configure  --help=recursive
+    elif test -f $ac_sub_srcdir/configure.ac ||
+           test -f $ac_sub_srcdir/configure.in; then
+      echo
+      $ac_configure --help
+    else
+      echo "$as_me: WARNING: no configuration information is in $ac_subdir" >&2
+    fi
+    cd $ac_popdir
+  done
+fi
+
+test -n "$ac_init_help" && exit 0
+if $ac_init_version; then
+  cat <<\EOF
+
+Copyright 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001
+Free Software Foundation, Inc.
+This configure script is free software; the Free Software Foundation
+gives unlimited permission to copy, distribute and modify it.
+EOF
+  exit 0
+fi
+exec 5>config.log
+cat >&5 <<EOF
+This file contains any messages produced by compilers while
+running configure, to aid debugging if configure makes a mistake.
+
+It was created by $as_me, which was
+generated by GNU Autoconf 2.52.  Invocation command line was
+
+  $ $0 $@
+
+EOF
+{
+cat <<_ASUNAME
+## ---------- ##
+## Platform.  ##
+## ---------- ##
+
+hostname = `(hostname || uname -n) 2>/dev/null | sed 1q`
+uname -m = `(uname -m) 2>/dev/null || echo unknown`
+uname -r = `(uname -r) 2>/dev/null || echo unknown`
+uname -s = `(uname -s) 2>/dev/null || echo unknown`
+uname -v = `(uname -v) 2>/dev/null || echo unknown`
+
+/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null || echo unknown`
+/bin/uname -X     = `(/bin/uname -X) 2>/dev/null     || echo unknown`
+
+/bin/arch              = `(/bin/arch) 2>/dev/null              || echo unknown`
+/usr/bin/arch -k       = `(/usr/bin/arch -k) 2>/dev/null       || echo unknown`
+/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null || echo unknown`
+hostinfo               = `(hostinfo) 2>/dev/null               || echo unknown`
+/bin/machine           = `(/bin/machine) 2>/dev/null           || echo unknown`
+/usr/bin/oslevel       = `(/usr/bin/oslevel) 2>/dev/null       || echo unknown`
+/bin/universe          = `(/bin/universe) 2>/dev/null          || echo unknown`
+
+PATH = $PATH
+
+_ASUNAME
+} >&5
+
+cat >&5 <<EOF
+## ------------ ##
+## Core tests.  ##
+## ------------ ##
+
+EOF
+
+# Keep a trace of the command line.
+# Strip out --no-create and --no-recursion so they do not pile up.
+# Also quote any args containing shell meta-characters.
+ac_configure_args=
+ac_sep=
+for ac_arg
+do
+  case $ac_arg in
+  -no-create | --no-create | --no-creat | --no-crea | --no-cre \
+  | --no-cr | --no-c) ;;
+  -no-recursion | --no-recursion | --no-recursio | --no-recursi \
+  | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r) ;;
+  *" "*|*"	"*|*[\[\]\~\#\$\^\&\*\(\)\{\}\\\|\;\<\>\?\"\']*)
+    ac_arg=`echo "$ac_arg" | sed "s/'/'\\\\\\\\''/g"`
+    ac_configure_args="$ac_configure_args$ac_sep'$ac_arg'"
+    ac_sep=" " ;;
+  *) ac_configure_args="$ac_configure_args$ac_sep$ac_arg"
+     ac_sep=" " ;;
+  esac
+  # Get rid of the leading space.
+done
+
+# When interrupted or exit'd, cleanup temporary files, and complete
+# config.log.  We remove comments because anyway the quotes in there
+# would cause problems or look ugly.
+trap 'exit_status=$?
+  # Save into config.log some information that might help in debugging.
+  echo >&5
+  echo "## ----------------- ##" >&5
+  echo "## Cache variables.  ##" >&5
+  echo "## ----------------- ##" >&5
+  echo >&5
+  # The following way of writing the cache mishandles newlines in values,
+{
+  (set) 2>&1 |
+    case `(ac_space='"'"' '"'"'; set | grep ac_space) 2>&1` in
+    *ac_space=\ *)
+      sed -n \
+        "s/'"'"'/'"'"'\\\\'"'"''"'"'/g;
+    	  s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='"'"'\\2'"'"'/p"
+      ;;
+    *)
+      sed -n \
+        "s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1=\\2/p"
+      ;;
+    esac;
+} >&5
+  sed "/^$/d" confdefs.h >conftest.log
+  if test -s conftest.log; then
+    echo >&5
+    echo "## ------------ ##" >&5
+    echo "## confdefs.h.  ##" >&5
+    echo "## ------------ ##" >&5
+    echo >&5
+    cat conftest.log >&5
+  fi
+  (echo; echo) >&5
+  test "$ac_signal" != 0 &&
+    echo "$as_me: caught signal $ac_signal" >&5
+  echo "$as_me: exit $exit_status" >&5
+  rm -rf conftest* confdefs* core core.* *.core conf$$* $ac_clean_files &&
+    exit $exit_status
+     ' 0
+for ac_signal in 1 2 13 15; do
+  trap 'ac_signal='$ac_signal'; { (exit 1); exit 1; }' $ac_signal
+done
+ac_signal=0
 
+# confdefs.h avoids OS command line length limits that DEFS can exceed.
+rm -rf conftest* confdefs.h
+# AIX cpp loses on an empty file, so make sure it contains at least a newline.
+echo >confdefs.h
+
+# Let the site file select an alternate cache file if it wants to.
 # Prefer explicitly selected file to automatically selected ones.
 if test -z "$CONFIG_SITE"; then
   if test "x$prefix" != xNONE; then
@@ -498,40 +831,107 @@
 fi
 for ac_site_file in $CONFIG_SITE; do
   if test -r "$ac_site_file"; then
-    echo "loading site script $ac_site_file"
+    { echo "$as_me:834: loading site script $ac_site_file" >&5
+echo "$as_me: loading site script $ac_site_file" >&6;}
+    cat "$ac_site_file" >&5
     . "$ac_site_file"
   fi
 done
 
 if test -r "$cache_file"; then
-  echo "loading cache $cache_file"
-  . $cache_file
+  # Some versions of bash will fail to source /dev/null (special
+  # files actually), so we avoid doing that.
+  if test -f "$cache_file"; then
+    { echo "$as_me:845: loading cache $cache_file" >&5
+echo "$as_me: loading cache $cache_file" >&6;}
+    case $cache_file in
+      [\\/]* | ?:[\\/]* ) . $cache_file;;
+      *)                      . ./$cache_file;;
+    esac
+  fi
 else
-  echo "creating cache $cache_file"
-  > $cache_file
+  { echo "$as_me:853: creating cache $cache_file" >&5
+echo "$as_me: creating cache $cache_file" >&6;}
+  >$cache_file
+fi
+
+# Check that the precious variables saved in the cache have kept the same
+# value.
+ac_cache_corrupted=false
+for ac_var in `(set) 2>&1 |
+               sed -n 's/^ac_env_\([a-zA-Z_0-9]*\)_set=.*/\1/p'`; do
+  eval ac_old_set=\$ac_cv_env_${ac_var}_set
+  eval ac_new_set=\$ac_env_${ac_var}_set
+  eval ac_old_val="\$ac_cv_env_${ac_var}_value"
+  eval ac_new_val="\$ac_env_${ac_var}_value"
+  case $ac_old_set,$ac_new_set in
+    set,)
+      { echo "$as_me:869: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5
+echo "$as_me: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&2;}
+      ac_cache_corrupted=: ;;
+    ,set)
+      { echo "$as_me:873: error: \`$ac_var' was not set in the previous run" >&5
+echo "$as_me: error: \`$ac_var' was not set in the previous run" >&2;}
+      ac_cache_corrupted=: ;;
+    ,);;
+    *)
+      if test "x$ac_old_val" != "x$ac_new_val"; then
+        { echo "$as_me:879: error: \`$ac_var' has changed since the previous run:" >&5
+echo "$as_me: error: \`$ac_var' has changed since the previous run:" >&2;}
+        { echo "$as_me:881:   former value:  $ac_old_val" >&5
+echo "$as_me:   former value:  $ac_old_val" >&2;}
+        { echo "$as_me:883:   current value: $ac_new_val" >&5
+echo "$as_me:   current value: $ac_new_val" >&2;}
+        ac_cache_corrupted=:
+      fi;;
+  esac
+  # Pass precious variables to config.status.  It doesn't matter if
+  # we pass some twice (in addition to the command line arguments).
+  if test "$ac_new_set" = set; then
+    case $ac_new_val in
+    *" "*|*"	"*|*[\[\]\~\#\$\^\&\*\(\)\{\}\\\|\;\<\>\?\"\']*)
+      ac_arg=$ac_var=`echo "$ac_new_val" | sed "s/'/'\\\\\\\\''/g"`
+      ac_configure_args="$ac_configure_args '$ac_arg'"
+      ;;
+    *) ac_configure_args="$ac_configure_args $ac_var=$ac_new_val"
+       ;;
+    esac
+  fi
+done
+if $ac_cache_corrupted; then
+  { echo "$as_me:902: error: changes in the environment can compromise the build" >&5
+echo "$as_me: error: changes in the environment can compromise the build" >&2;}
+  { { echo "$as_me:904: error: run \`make distclean' and/or \`rm $cache_file' and start over" >&5
+echo "$as_me: error: run \`make distclean' and/or \`rm $cache_file' and start over" >&2;}
+   { (exit 1); exit 1; }; }
 fi
 
 ac_ext=c
-# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options.
 ac_cpp='$CPP $CPPFLAGS'
-ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5'
-ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5'
-cross_compiling=$ac_cv_prog_cc_cross
-
-ac_exeext=
-ac_objext=o
-if (echo "testing\c"; echo 1,2,3) | grep c >/dev/null; then
-  # Stardent Vistra SVR4 grep lacks -e, says ghazi at caip.rutgers.edu.
-  if (echo -n testing; echo 1,2,3) | sed s/-n/xn/ | grep xn >/dev/null; then
-    ac_n= ac_c='
-' ac_t='	'
-  else
-    ac_n=-n ac_c= ac_t=
-  fi
+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compiler_gnu=$ac_cv_c_compiler_gnu
+
+case `echo "testing\c"; echo 1,2,3`,`echo -n testing; echo 1,2,3` in
+  *c*,-n*) ECHO_N= ECHO_C='
+' ECHO_T='	' ;;
+  *c*,*  ) ECHO_N=-n ECHO_C= ECHO_T= ;;
+  *)      ECHO_N= ECHO_C='\c' ECHO_T= ;;
+esac
+echo "#! $SHELL" >conftest.sh
+echo  "exit 0"   >>conftest.sh
+chmod +x conftest.sh
+if { (echo "$as_me:924: PATH=\".;.\"; conftest.sh") >&5
+  (PATH=".;."; conftest.sh) 2>&5
+  ac_status=$?
+  echo "$as_me:927: \$? = $ac_status" >&5
+  (exit $ac_status); }; then
+  ac_path_separator=';'
 else
-  ac_n= ac_c='\c' ac_t=
+  ac_path_separator=:
 fi
-
+PATH_SEPARATOR="$ac_path_separator"
+rm -f conftest.sh
 
 ac_aux_dir=
 for ac_dir in config $srcdir/config; do
@@ -543,104 +943,102 @@
     ac_aux_dir=$ac_dir
     ac_install_sh="$ac_aux_dir/install.sh -c"
     break
+  elif test -f $ac_dir/shtool; then
+    ac_aux_dir=$ac_dir
+    ac_install_sh="$ac_aux_dir/shtool install -c"
+    break
   fi
 done
 if test -z "$ac_aux_dir"; then
-  { echo "configure: error: can not find install-sh or install.sh in config $srcdir/config" 1>&2; exit 1; }
-fi
-ac_config_guess=$ac_aux_dir/config.guess
-ac_config_sub=$ac_aux_dir/config.sub
-ac_configure=$ac_aux_dir/configure # This should be Cygnus configure.
-
+  { { echo "$as_me:953: error: cannot find install-sh or install.sh in config $srcdir/config" >&5
+echo "$as_me: error: cannot find install-sh or install.sh in config $srcdir/config" >&2;}
+   { (exit 1); exit 1; }; }
+fi
+ac_config_guess="$SHELL $ac_aux_dir/config.guess"
+ac_config_sub="$SHELL $ac_aux_dir/config.sub"
+ac_configure="$SHELL $ac_aux_dir/configure" # This should be Cygnus configure.
 
-# Do some error checking and defaulting for the host and target type.
-# The inputs are:
-#    configure --host=HOST --target=TARGET --build=BUILD NONOPT
-#
-# The rules are:
-# 1. You are not allowed to specify --host, --target, and nonopt at the
-#    same time.
-# 2. Host defaults to nonopt.
-# 3. If nonopt is not specified, then host defaults to the current host,
-#    as determined by config.guess.
-# 4. Target and build default to nonopt.
-# 5. If nonopt is not specified, then target and build default to host.
+# Make sure we can run config.sub.
+$ac_config_sub sun4 >/dev/null 2>&1 ||
+  { { echo "$as_me:963: error: cannot run $ac_config_sub" >&5
+echo "$as_me: error: cannot run $ac_config_sub" >&2;}
+   { (exit 1); exit 1; }; }
+
+echo "$as_me:967: checking build system type" >&5
+echo $ECHO_N "checking build system type... $ECHO_C" >&6
+if test "${ac_cv_build+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  ac_cv_build_alias=$build_alias
+test -z "$ac_cv_build_alias" &&
+  ac_cv_build_alias=`$ac_config_guess`
+test -z "$ac_cv_build_alias" &&
+  { { echo "$as_me:976: error: cannot guess build type; you must specify one" >&5
+echo "$as_me: error: cannot guess build type; you must specify one" >&2;}
+   { (exit 1); exit 1; }; }
+ac_cv_build=`$ac_config_sub $ac_cv_build_alias` ||
+  { { echo "$as_me:980: error: $ac_config_sub $ac_cv_build_alias failed." >&5
+echo "$as_me: error: $ac_config_sub $ac_cv_build_alias failed." >&2;}
+   { (exit 1); exit 1; }; }
+
+fi
+echo "$as_me:985: result: $ac_cv_build" >&5
+echo "${ECHO_T}$ac_cv_build" >&6
+build=$ac_cv_build
+build_cpu=`echo $ac_cv_build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'`
+build_vendor=`echo $ac_cv_build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'`
+build_os=`echo $ac_cv_build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'`
+
+echo "$as_me:992: checking host system type" >&5
+echo $ECHO_N "checking host system type... $ECHO_C" >&6
+if test "${ac_cv_host+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  ac_cv_host_alias=$host_alias
+test -z "$ac_cv_host_alias" &&
+  ac_cv_host_alias=$ac_cv_build_alias
+ac_cv_host=`$ac_config_sub $ac_cv_host_alias` ||
+  { { echo "$as_me:1001: error: $ac_config_sub $ac_cv_host_alias failed" >&5
+echo "$as_me: error: $ac_config_sub $ac_cv_host_alias failed" >&2;}
+   { (exit 1); exit 1; }; }
+
+fi
+echo "$as_me:1006: result: $ac_cv_host" >&5
+echo "${ECHO_T}$ac_cv_host" >&6
+host=$ac_cv_host
+host_cpu=`echo $ac_cv_host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'`
+host_vendor=`echo $ac_cv_host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'`
+host_os=`echo $ac_cv_host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'`
+
+echo "$as_me:1013: checking target system type" >&5
+echo $ECHO_N "checking target system type... $ECHO_C" >&6
+if test "${ac_cv_target+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  ac_cv_target_alias=$target_alias
+test "x$ac_cv_target_alias" = "x" &&
+  ac_cv_target_alias=$ac_cv_host_alias
+ac_cv_target=`$ac_config_sub $ac_cv_target_alias` ||
+  { { echo "$as_me:1022: error: $ac_config_sub $ac_cv_target_alias failed" >&5
+echo "$as_me: error: $ac_config_sub $ac_cv_target_alias failed" >&2;}
+   { (exit 1); exit 1; }; }
+
+fi
+echo "$as_me:1027: result: $ac_cv_target" >&5
+echo "${ECHO_T}$ac_cv_target" >&6
+target=$ac_cv_target
+target_cpu=`echo $ac_cv_target | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'`
+target_vendor=`echo $ac_cv_target | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'`
+target_os=`echo $ac_cv_target | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'`
 
 # The aliases save the names the user supplied, while $host etc.
 # will get canonicalized.
-case $host---$target---$nonopt in
-NONE---*---* | *---NONE---* | *---*---NONE) ;;
-*) { echo "configure: error: can only configure for one host and one target at a time" 1>&2; exit 1; } ;;
-esac
-
-
-# Make sure we can run config.sub.
-if ${CONFIG_SHELL-/bin/sh} $ac_config_sub sun4 >/dev/null 2>&1; then :
-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
-echo "configure:584: checking host system type" >&5
-
-host_alias=$host
-case "$host_alias" in
-NONE)
-  case $nonopt in
-  NONE)
-    if host_alias=`${CONFIG_SHELL-/bin/sh} $ac_config_guess`; then :
-    else { echo "configure: error: can not guess host type; you must specify one" 1>&2; exit 1; }
-    fi ;;
-  *) host_alias=$nonopt ;;
-  esac ;;
-esac
-
-host=`${CONFIG_SHELL-/bin/sh} $ac_config_sub $host_alias`
-host_cpu=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'`
-host_vendor=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'`
-host_os=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'`
-echo "$ac_t""$host" 1>&6
-
-echo $ac_n "checking target system type""... $ac_c" 1>&6
-echo "configure:605: checking target system type" >&5
-
-target_alias=$target
-case "$target_alias" in
-NONE)
-  case $nonopt in
-  NONE) target_alias=$host_alias ;;
-  *) target_alias=$nonopt ;;
-  esac ;;
-esac
-
-target=`${CONFIG_SHELL-/bin/sh} $ac_config_sub $target_alias`
-target_cpu=`echo $target | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'`
-target_vendor=`echo $target | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'`
-target_os=`echo $target | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'`
-echo "$ac_t""$target" 1>&6
-
-echo $ac_n "checking build system type""... $ac_c" 1>&6
-echo "configure:623: checking build system type" >&5
-
-build_alias=$build
-case "$build_alias" in
-NONE)
-  case $nonopt in
-  NONE) build_alias=$host_alias ;;
-  *) build_alias=$nonopt ;;
-  esac ;;
-esac
-
-build=`${CONFIG_SHELL-/bin/sh} $ac_config_sub $build_alias`
-build_cpu=`echo $build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'`
-build_vendor=`echo $build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'`
-build_os=`echo $build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'`
-echo "$ac_t""$build" 1>&6
-
-test "$host_alias" != "$target_alias" &&
+test -n "$target_alias" &&
   test "$program_prefix$program_suffix$program_transform_name" = \
     NONENONEs,x,x, &&
   program_prefix=${target_alias}-
 
+# Minimum Autoconf version required.
 
 # Remember the command line arguments to configure for use when
 # configure is run again.  Also create the command line options for
@@ -648,8 +1046,6 @@
 ORCA_CONFIGURE_COMMAND_LINE=${1+"$@"}
 RRD_CONFIGURE_COMMAND_LINE="$ORCA_CONFIGURE_COMMAND_LINE --cache-file=../../config.cache"
 
-
-
 # Set this to yes to have configure always build all of the required
 # Perl Orca modules.  This is used to test the build more than
 # anything else.
@@ -665,390 +1061,745 @@
 DATA_DUMPER_VER=2.101
 DATE_PARSE_DIR=TimeDate-1.10
 DATE_PARSE_VER=2.20
-DIGEST_MD5_DIR=Digest-MD5-2.13
-DIGEST_MD5_VER=2.13
+DIGEST_MD5_DIR=Digest-MD5-2.16
+DIGEST_MD5_VER=2.16
 MATH_INTERPOLATE_DIR=Math-Interpolate-1.05
 MATH_INTERPOLATE_VER=1.05
 RRDTOOL_DIR=rrdtool-1.0.33
 RRDTOOL_VER=1.000331
-STORABLE_DIR=Storable-1.0.11
-STORABLE_VER=1.011
+STORABLE_DIR=Storable-1.0.13
+STORABLE_VER=1.012
 TIME_HIRES_DIR=Time-HiRes-01.20
 TIME_HIRES_VER=1.20
 
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
 # Get the current working directory and the config directory.
 cwd=`pwd`
 config_dir="$cwd/config"
 if test ! -d $config_dir; then
-  { echo "configure: error: *** Cannot find config directory." 1>&2; exit 1; }
+  { { echo "$as_me:1079: error: *** Cannot find config directory." >&5
+echo "$as_me: error: *** Cannot find config directory." >&2;}
+   { (exit 1); exit 1; }; }
 fi
 
-# Minimum Autoconf version required.
-
-
 # Define the directories where the source orcallator and RRD data files
 # will be installed.
+
 # Check whether --with-rrd-dir or --without-rrd-dir was given.
 if test "${with_rrd_dir+set}" = set; then
   withval="$with_rrd_dir"
-  
+
     case "$withval" in
       "" | y | ye | yes | n | no)
-         { echo "configure: error: *** You must supply an argument to the --with-rrd-dir option." 1>&2; exit 1; }
+         { { echo "$as_me:1093: error: *** You must supply an argument to the --with-rrd-dir option." >&5
+echo "$as_me: error: *** You must supply an argument to the --with-rrd-dir option." >&2;}
+   { (exit 1); exit 1; }; }
          ;;
       *) RRD_DIR="$withval"
          ;;
     esac
-  
+
 else
   : ${RRD_DIR=$localstatedir/orca/rrd}
 
-fi
-
+fi;
 RRD_DIR=`(
     test "x$prefix" = xNONE && prefix=$ac_default_prefix
     test "x$exec_prefix" = xNONE && exec_prefix=${prefix}
     eval echo "$RRD_DIR"
 )`
 
-
 # Check whether --with-html-dir or --without-html-dir was given.
 if test "${with_html_dir+set}" = set; then
   withval="$with_html_dir"
-  
+
     case "$withval" in
       "" | y | ye | yes | n | no)
-         { echo "configure: error: *** You must supply an argument to the --with-html-dir option." 1>&2; exit 1; }
+         { { echo "$as_me:1117: error: *** You must supply an argument to the --with-html-dir option." >&5
+echo "$as_me: error: *** You must supply an argument to the --with-html-dir option." >&2;}
+   { (exit 1); exit 1; }; }
          ;;
       *) HTML_DIR="$withval"
          ;;
     esac
-  
-else
-  { echo "configure: error: *** You must use the --with-html-dir argument and supply a value." 1>&2; exit 1; }
-
-fi
 
+else
+  { { echo "$as_me:1126: error: *** You must use the --with-html-dir argument and supply a value." >&5
+echo "$as_me: error: *** You must use the --with-html-dir argument and supply a value." >&2;}
+   { (exit 1); exit 1; }; }
 
+fi;
 
 # Check whether --with-orcallator-dir or --without-orcallator-dir was given.
 if test "${with_orcallator_dir+set}" = set; then
   withval="$with_orcallator_dir"
-  
+
     case "$withval" in
       "" | y | ye | yes | n | no)
-         { echo "configure: error: *** You must supply an argument to the --with-orcallator-dir option." 1>&2; exit 1; }
+         { { echo "$as_me:1138: error: *** You must supply an argument to the --with-orcallator-dir option." >&5
+echo "$as_me: error: *** You must supply an argument to the --with-orcallator-dir option." >&2;}
+   { (exit 1); exit 1; }; }
          ;;
       *) ORCALLATOR_DIR="$withval"
          ;;
     esac
-  
+
 else
   : ${ORCALLATOR_DIR=$localstatedir/orca/orcallator}
 
-fi
-
+fi;
 ORCALLATOR_DIR=`(
     test "x$prefix" = xNONE && prefix=$ac_default_prefix
     test "x$exec_prefix" = xNONE && exec_prefix=${prefix}
     eval echo "$ORCALLATOR_DIR"
 )`
 
-
 WATCH_WEB=
 NCSA_LOG=
+
 # Check whether --with-ncsa-log or --without-ncsa-log was given.
 if test "${with_ncsa_log+set}" = set; then
   withval="$with_ncsa_log"
-  
+
     case "$withval" in
       "" | y | ye | yes | n | no)
-         { echo "configure: error: *** You must supply an argument to the --with-ncsa-log option." 1>&2; exit 1; }
+         { { echo "$as_me:1165: error: *** You must supply an argument to the --with-ncsa-log option." >&5
+echo "$as_me: error: *** You must supply an argument to the --with-ncsa-log option." >&2;}
+   { (exit 1); exit 1; }; }
          ;;
       *) WEB_LOG="$withval"
          NCSA_LOG=yes
          WATCH_WEB="-DWATCH_WEB"
          ;;
     esac
-  
-
-fi
 
+fi;
 
 PROXY_LOG=
+
 # Check whether --with-proxy-log or --without-proxy-log was given.
 if test "${with_proxy_log+set}" = set; then
   withval="$with_proxy_log"
-  
+
     if test "$NCSA_LOG"; then
-      { echo "configure: error: *** You cannot use both --with-ncsa-log and --with-proxy-log." 1>&2; exit 1; }
+      { { echo "$as_me:1184: error: *** You cannot use both --with-ncsa-log and --with-proxy-log." >&5
+echo "$as_me: error: *** You cannot use both --with-ncsa-log and --with-proxy-log." >&2;}
+   { (exit 1); exit 1; }; }
     fi
     case "$withval" in
       "" | y | ye | yes | n | no)
-         { echo "configure: error: *** You must supply an argument to the --with-proxy-log option." 1>&2; exit 1; }
+         { { echo "$as_me:1190: error: *** You must supply an argument to the --with-proxy-log option." >&5
+echo "$as_me: error: *** You must supply an argument to the --with-proxy-log option." >&2;}
+   { (exit 1); exit 1; }; }
          ;;
       *) WEB_LOG="$withval"
          PROXY_LOG=yes
          WATCH_WEB="-DWATCH_WEB -DWATCH_PROXY"
          ;;
     esac
-  
-
-fi
 
+fi;
 
 # Check whether --with-squid-log or --without-squid-log was given.
 if test "${with_squid_log+set}" = set; then
   withval="$with_squid_log"
-  
+
     if test "$NCSA_LOG"; then
-      { echo "configure: error: *** You cannot use both --with-ncsa-log and --with-squid-log." 1>&2; exit 1; }
+      { { echo "$as_me:1207: error: *** You cannot use both --with-ncsa-log and --with-squid-log." >&5
+echo "$as_me: error: *** You cannot use both --with-ncsa-log and --with-squid-log." >&2;}
+   { (exit 1); exit 1; }; }
     fi
     if test "$PROXY_LOG"; then
-      { echo "configure: error: *** You cannot use both --with-proxy-log and --with-squid-log." 1>&2; exit 1; }
+      { { echo "$as_me:1212: error: *** You cannot use both --with-proxy-log and --with-squid-log." >&5
+echo "$as_me: error: *** You cannot use both --with-proxy-log and --with-squid-log." >&2;}
+   { (exit 1); exit 1; }; }
     fi
     case "$withval" in
       "" | y | ye | yes | n | no)
-         { echo "configure: error: *** You must supply an argument to the --with-squid-log option." 1>&2; exit 1; }
+         { { echo "$as_me:1218: error: *** You must supply an argument to the --with-squid-log option." >&5
+echo "$as_me: error: *** You must supply an argument to the --with-squid-log option." >&2;}
+   { (exit 1); exit 1; }; }
          ;;
       *) WEB_LOG="$withval"
          WATCH_WEB="-DWATCH_WEB -DWATCH_SQUID"
          ;;
     esac
-  
-
-fi
-
-
 
+fi;
 
 # To get a default CFLAGS for this build, check for a C compiler.  This
 # is also needed to be ready to compile any Perl modules.
-# 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:848: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
+ac_ext=c
+ac_cpp='$CPP $CPPFLAGS'
+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compiler_gnu=$ac_cv_c_compiler_gnu
+if test -n "$ac_tool_prefix"; then
+  # Extract the first word of "${ac_tool_prefix}gcc", so it can be a program name with args.
+set dummy ${ac_tool_prefix}gcc; ac_word=$2
+echo "$as_me:1239: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_CC+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
 else
   if test -n "$CC"; then
   ac_cv_prog_CC="$CC" # Let the user override the test.
 else
-  IFS="${IFS= 	}"; ac_save_ifs="$IFS"; IFS=":"
-  ac_dummy="$PATH"
-  for ac_dir in $ac_dummy; do
-    test -z "$ac_dir" && ac_dir=.
-    if test -f $ac_dir/$ac_word; then
-      ac_cv_prog_CC="gcc"
-      break
-    fi
-  done
-  IFS="$ac_save_ifs"
+  ac_save_IFS=$IFS; IFS=$ac_path_separator
+ac_dummy="$PATH"
+for ac_dir in $ac_dummy; do
+  IFS=$ac_save_IFS
+  test -z "$ac_dir" && ac_dir=.
+  $as_executable_p "$ac_dir/$ac_word" || continue
+ac_cv_prog_CC="${ac_tool_prefix}gcc"
+echo "$as_me:1254: found $ac_dir/$ac_word" >&5
+break
+done
+
 fi
 fi
-CC="$ac_cv_prog_CC"
+CC=$ac_cv_prog_CC
 if test -n "$CC"; then
-  echo "$ac_t""$CC" 1>&6
+  echo "$as_me:1262: result: $CC" >&5
+echo "${ECHO_T}$CC" >&6
 else
-  echo "$ac_t""no" 1>&6
+  echo "$as_me:1265: result: no" >&5
+echo "${ECHO_T}no" >&6
 fi
 
-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
-echo "configure:878: 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 test -n "$CC"; then
-  ac_cv_prog_CC="$CC" # Let the user override the test.
-else
-  IFS="${IFS= 	}"; ac_save_ifs="$IFS"; IFS=":"
-  ac_prog_rejected=no
-  ac_dummy="$PATH"
-  for ac_dir in $ac_dummy; do
-    test -z "$ac_dir" && ac_dir=.
-    if test -f $ac_dir/$ac_word; then
-      if test "$ac_dir/$ac_word" = "/usr/ucb/cc"; then
-        ac_prog_rejected=yes
-	continue
-      fi
-      ac_cv_prog_CC="cc"
-      break
-    fi
-  done
-  IFS="$ac_save_ifs"
-if test $ac_prog_rejected = yes; then
-  # We found a bogon in the path, so make sure we never use it.
-  set dummy $ac_cv_prog_CC
-  shift
-  if test $# -gt 0; then
-    # We chose a different compiler from the bogus one.
-    # However, it has the same basename, so the bogon will be chosen
-    # first if we set CC to just the basename; use the full file name.
-    shift
-    set dummy "$ac_dir/$ac_word" "$@"
-    shift
-    ac_cv_prog_CC="$@"
-  fi
 fi
+if test -z "$ac_cv_prog_CC"; then
+  ac_ct_CC=$CC
+  # Extract the first word of "gcc", so it can be a program name with args.
+set dummy gcc; ac_word=$2
+echo "$as_me:1274: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_ac_ct_CC+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$ac_ct_CC"; then
+  ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test.
+else
+  ac_save_IFS=$IFS; IFS=$ac_path_separator
+ac_dummy="$PATH"
+for ac_dir in $ac_dummy; do
+  IFS=$ac_save_IFS
+  test -z "$ac_dir" && ac_dir=.
+  $as_executable_p "$ac_dir/$ac_word" || continue
+ac_cv_prog_ac_ct_CC="gcc"
+echo "$as_me:1289: found $ac_dir/$ac_word" >&5
+break
+done
+
 fi
 fi
-CC="$ac_cv_prog_CC"
-if test -n "$CC"; then
-  echo "$ac_t""$CC" 1>&6
+ac_ct_CC=$ac_cv_prog_ac_ct_CC
+if test -n "$ac_ct_CC"; then
+  echo "$as_me:1297: result: $ac_ct_CC" >&5
+echo "${ECHO_T}$ac_ct_CC" >&6
+else
+  echo "$as_me:1300: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+  CC=$ac_ct_CC
 else
-  echo "$ac_t""no" 1>&6
+  CC="$ac_cv_prog_CC"
 fi
 
-  if test -z "$CC"; then
-    case "`uname -s`" in
-    *win32* | *WIN32*)
-      # 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:929: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
+if test -z "$CC"; then
+  if test -n "$ac_tool_prefix"; then
+  # Extract the first word of "${ac_tool_prefix}cc", so it can be a program name with args.
+set dummy ${ac_tool_prefix}cc; ac_word=$2
+echo "$as_me:1313: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_CC+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
 else
   if test -n "$CC"; then
   ac_cv_prog_CC="$CC" # Let the user override the test.
 else
-  IFS="${IFS= 	}"; ac_save_ifs="$IFS"; IFS=":"
-  ac_dummy="$PATH"
-  for ac_dir in $ac_dummy; do
-    test -z "$ac_dir" && ac_dir=.
-    if test -f $ac_dir/$ac_word; then
-      ac_cv_prog_CC="cl"
-      break
-    fi
-  done
-  IFS="$ac_save_ifs"
+  ac_save_IFS=$IFS; IFS=$ac_path_separator
+ac_dummy="$PATH"
+for ac_dir in $ac_dummy; do
+  IFS=$ac_save_IFS
+  test -z "$ac_dir" && ac_dir=.
+  $as_executable_p "$ac_dir/$ac_word" || continue
+ac_cv_prog_CC="${ac_tool_prefix}cc"
+echo "$as_me:1328: found $ac_dir/$ac_word" >&5
+break
+done
+
 fi
 fi
-CC="$ac_cv_prog_CC"
+CC=$ac_cv_prog_CC
 if test -n "$CC"; then
-  echo "$ac_t""$CC" 1>&6
+  echo "$as_me:1336: result: $CC" >&5
+echo "${ECHO_T}$CC" >&6
 else
-  echo "$ac_t""no" 1>&6
-fi
- ;;
-    esac
-  fi
-  test -z "$CC" && { echo "configure: error: no acceptable cc found in \$PATH" 1>&2; exit 1; }
+  echo "$as_me:1339: result: no" >&5
+echo "${ECHO_T}no" >&6
 fi
 
-echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works""... $ac_c" 1>&6
-echo "configure:961: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works" >&5
+fi
+if test -z "$ac_cv_prog_CC"; then
+  ac_ct_CC=$CC
+  # Extract the first word of "cc", so it can be a program name with args.
+set dummy cc; ac_word=$2
+echo "$as_me:1348: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_ac_ct_CC+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$ac_ct_CC"; then
+  ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test.
+else
+  ac_save_IFS=$IFS; IFS=$ac_path_separator
+ac_dummy="$PATH"
+for ac_dir in $ac_dummy; do
+  IFS=$ac_save_IFS
+  test -z "$ac_dir" && ac_dir=.
+  $as_executable_p "$ac_dir/$ac_word" || continue
+ac_cv_prog_ac_ct_CC="cc"
+echo "$as_me:1363: found $ac_dir/$ac_word" >&5
+break
+done
 
-ac_ext=c
-# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options.
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5'
-ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5'
-cross_compiling=$ac_cv_prog_cc_cross
+fi
+fi
+ac_ct_CC=$ac_cv_prog_ac_ct_CC
+if test -n "$ac_ct_CC"; then
+  echo "$as_me:1371: result: $ac_ct_CC" >&5
+echo "${ECHO_T}$ac_ct_CC" >&6
+else
+  echo "$as_me:1374: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
 
-cat > conftest.$ac_ext << EOF
+  CC=$ac_ct_CC
+else
+  CC="$ac_cv_prog_CC"
+fi
 
-#line 972 "configure"
-#include "confdefs.h"
+fi
+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 "$as_me:1387: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_CC+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$CC"; then
+  ac_cv_prog_CC="$CC" # Let the user override the test.
+else
+  ac_prog_rejected=no
+  ac_save_IFS=$IFS; IFS=$ac_path_separator
+ac_dummy="$PATH"
+for ac_dir in $ac_dummy; do
+  IFS=$ac_save_IFS
+  test -z "$ac_dir" && ac_dir=.
+  $as_executable_p "$ac_dir/$ac_word" || continue
+if test "$ac_dir/$ac_word" = "/usr/ucb/cc"; then
+  ac_prog_rejected=yes
+  continue
+fi
+ac_cv_prog_CC="cc"
+echo "$as_me:1407: found $ac_dir/$ac_word" >&5
+break
+done
 
-main(){return(0);}
-EOF
-if { (eval echo configure:977: \"$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_cross=no
-  else
-    ac_cv_prog_cc_cross=yes
+if test $ac_prog_rejected = yes; then
+  # We found a bogon in the path, so make sure we never use it.
+  set dummy $ac_cv_prog_CC
+  shift
+  if test $# != 0; then
+    # We chose a different compiler from the bogus one.
+    # However, it has the same basename, so the bogon will be chosen
+    # first if we set CC to just the basename; use the full file name.
+    shift
+    set dummy "$ac_dir/$ac_word" ${1+"$@"}
+    shift
+    ac_cv_prog_CC="$@"
   fi
+fi
+fi
+fi
+CC=$ac_cv_prog_CC
+if test -n "$CC"; then
+  echo "$as_me:1429: result: $CC" >&5
+echo "${ECHO_T}$CC" >&6
 else
-  echo "configure: failed program was:" >&5
-  cat conftest.$ac_ext >&5
-  ac_cv_prog_cc_works=no
+  echo "$as_me:1432: result: no" >&5
+echo "${ECHO_T}no" >&6
 fi
-rm -fr conftest*
-ac_ext=c
-# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options.
-ac_cpp='$CPP $CPPFLAGS'
-ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5'
-ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5'
-cross_compiling=$ac_cv_prog_cc_cross
-
-echo "$ac_t""$ac_cv_prog_cc_works" 1>&6
-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:1003: 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 "configure:1008: 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
-  cat > conftest.c <<EOF
-#ifdef __GNUC__
-  yes;
-#endif
-EOF
-if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:1017: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then
-  ac_cv_prog_gcc=yes
+
+fi
+if test -z "$CC"; then
+  if test -n "$ac_tool_prefix"; then
+  for ac_prog in cl
+  do
+    # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.
+set dummy $ac_tool_prefix$ac_prog; ac_word=$2
+echo "$as_me:1443: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_CC+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$CC"; then
+  ac_cv_prog_CC="$CC" # Let the user override the test.
 else
-  ac_cv_prog_gcc=no
+  ac_save_IFS=$IFS; IFS=$ac_path_separator
+ac_dummy="$PATH"
+for ac_dir in $ac_dummy; do
+  IFS=$ac_save_IFS
+  test -z "$ac_dir" && ac_dir=.
+  $as_executable_p "$ac_dir/$ac_word" || continue
+ac_cv_prog_CC="$ac_tool_prefix$ac_prog"
+echo "$as_me:1458: found $ac_dir/$ac_word" >&5
+break
+done
+
 fi
 fi
+CC=$ac_cv_prog_CC
+if test -n "$CC"; then
+  echo "$as_me:1466: result: $CC" >&5
+echo "${ECHO_T}$CC" >&6
+else
+  echo "$as_me:1469: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
 
-echo "$ac_t""$ac_cv_prog_gcc" 1>&6
+    test -n "$CC" && break
+  done
+fi
+if test -z "$CC"; then
+  ac_ct_CC=$CC
+  for ac_prog in cl
+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 "$as_me:1482: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_ac_ct_CC+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  if test -n "$ac_ct_CC"; then
+  ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test.
+else
+  ac_save_IFS=$IFS; IFS=$ac_path_separator
+ac_dummy="$PATH"
+for ac_dir in $ac_dummy; do
+  IFS=$ac_save_IFS
+  test -z "$ac_dir" && ac_dir=.
+  $as_executable_p "$ac_dir/$ac_word" || continue
+ac_cv_prog_ac_ct_CC="$ac_prog"
+echo "$as_me:1497: found $ac_dir/$ac_word" >&5
+break
+done
+
+fi
+fi
+ac_ct_CC=$ac_cv_prog_ac_ct_CC
+if test -n "$ac_ct_CC"; then
+  echo "$as_me:1505: result: $ac_ct_CC" >&5
+echo "${ECHO_T}$ac_ct_CC" >&6
+else
+  echo "$as_me:1508: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+  test -n "$ac_ct_CC" && break
+done
+
+  CC=$ac_ct_CC
+fi
+
+fi
+
+test -z "$CC" && { { echo "$as_me:1520: error: no acceptable cc found in \$PATH" >&5
+echo "$as_me: error: no acceptable cc found in \$PATH" >&2;}
+   { (exit 1); exit 1; }; }
+
+# Provide some information about the compiler.
+echo "$as_me:1525:" \
+     "checking for C compiler version" >&5
+ac_compiler=`set X $ac_compile; echo $2`
+{ (eval echo "$as_me:1528: \"$ac_compiler --version </dev/null >&5\"") >&5
+  (eval $ac_compiler --version </dev/null >&5) 2>&5
+  ac_status=$?
+  echo "$as_me:1531: \$? = $ac_status" >&5
+  (exit $ac_status); }
+{ (eval echo "$as_me:1533: \"$ac_compiler -v </dev/null >&5\"") >&5
+  (eval $ac_compiler -v </dev/null >&5) 2>&5
+  ac_status=$?
+  echo "$as_me:1536: \$? = $ac_status" >&5
+  (exit $ac_status); }
+{ (eval echo "$as_me:1538: \"$ac_compiler -V </dev/null >&5\"") >&5
+  (eval $ac_compiler -V </dev/null >&5) 2>&5
+  ac_status=$?
+  echo "$as_me:1541: \$? = $ac_status" >&5
+  (exit $ac_status); }
+
+cat >conftest.$ac_ext <<_ACEOF
+#line 1545 "configure"
+#include "confdefs.h"
 
-if test $ac_cv_prog_gcc = yes; then
-  GCC=yes
+int
+main ()
+{
+
+  ;
+  return 0;
+}
+_ACEOF
+ac_clean_files_save=$ac_clean_files
+ac_clean_files="$ac_clean_files a.out a.exe"
+# Try to create an executable without -o first, disregard a.out.
+# It will help us diagnose broken compilers, and finding out an intuition
+# of exeext.
+echo "$as_me:1561: checking for C compiler default output" >&5
+echo $ECHO_N "checking for C compiler default output... $ECHO_C" >&6
+ac_link_default=`echo "$ac_link" | sed 's/ -o *conftest[^ ]*//'`
+if { (eval echo "$as_me:1564: \"$ac_link_default\"") >&5
+  (eval $ac_link_default) 2>&5
+  ac_status=$?
+  echo "$as_me:1567: \$? = $ac_status" >&5
+  (exit $ac_status); }; then
+  # Find the output, starting from the most likely.  This scheme is
+# not robust to junk in `.', hence go to wildcards (a.*) only as a last
+# resort.
+for ac_file in `ls a.exe conftest.exe 2>/dev/null;
+                ls a.out conftest 2>/dev/null;
+                ls a.* conftest.* 2>/dev/null`; do
+  case $ac_file in
+    *.$ac_ext | *.o | *.obj | *.xcoff | *.tds | *.d | *.pdb ) ;;
+    a.out ) # We found the default executable, but exeext='' is most
+            # certainly right.
+            break;;
+    *.* ) ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'`
+          # FIXME: I believe we export ac_cv_exeext for Libtool --akim.
+          export ac_cv_exeext
+          break;;
+    * ) break;;
+  esac
+done
 else
-  GCC=
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+{ { echo "$as_me:1590: error: C compiler cannot create executables" >&5
+echo "$as_me: error: C compiler cannot create executables" >&2;}
+   { (exit 77); exit 77; }; }
+fi
+
+ac_exeext=$ac_cv_exeext
+echo "$as_me:1596: result: $ac_file" >&5
+echo "${ECHO_T}$ac_file" >&6
+
+# Check the compiler produces executables we can run.  If not, either
+# the compiler is broken, or we cross compile.
+echo "$as_me:1601: checking whether the C compiler works" >&5
+echo $ECHO_N "checking whether the C compiler works... $ECHO_C" >&6
+# FIXME: These cross compiler hacks should be removed for Autoconf 3.0
+# If not cross compiling, check that we can run a simple program.
+if test "$cross_compiling" != yes; then
+  if { ac_try='./$ac_file'
+  { (eval echo "$as_me:1607: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:1610: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+    cross_compiling=no
+  else
+    if test "$cross_compiling" = maybe; then
+	cross_compiling=yes
+    else
+	{ { echo "$as_me:1617: error: cannot run C compiled programs.
+If you meant to cross compile, use \`--host'." >&5
+echo "$as_me: error: cannot run C compiled programs.
+If you meant to cross compile, use \`--host'." >&2;}
+   { (exit 1); exit 1; }; }
+    fi
+  fi
 fi
+echo "$as_me:1625: result: yes" >&5
+echo "${ECHO_T}yes" >&6
+
+rm -f a.out a.exe conftest$ac_cv_exeext
+ac_clean_files=$ac_clean_files_save
+# Check the compiler produces executables we can run.  If not, either
+# the compiler is broken, or we cross compile.
+echo "$as_me:1632: checking whether we are cross compiling" >&5
+echo $ECHO_N "checking whether we are cross compiling... $ECHO_C" >&6
+echo "$as_me:1634: result: $cross_compiling" >&5
+echo "${ECHO_T}$cross_compiling" >&6
+
+echo "$as_me:1637: checking for executable suffix" >&5
+echo $ECHO_N "checking for executable suffix... $ECHO_C" >&6
+if { (eval echo "$as_me:1639: \"$ac_link\"") >&5
+  (eval $ac_link) 2>&5
+  ac_status=$?
+  echo "$as_me:1642: \$? = $ac_status" >&5
+  (exit $ac_status); }; then
+  # If both `conftest.exe' and `conftest' are `present' (well, observable)
+# catch `conftest.exe'.  For instance with Cygwin, `ls conftest' will
+# work properly (i.e., refer to `conftest.exe'), while it won't with
+# `rm'.
+for ac_file in `(ls conftest.exe; ls conftest; ls conftest.*) 2>/dev/null`; do
+  case $ac_file in
+    *.$ac_ext | *.o | *.obj | *.xcoff | *.tds | *.d | *.pdb ) ;;
+    *.* ) ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'`
+          export ac_cv_exeext
+          break;;
+    * ) break;;
+  esac
+done
+else
+  { { echo "$as_me:1658: error: cannot compute EXEEXT: cannot compile and link" >&5
+echo "$as_me: error: cannot compute EXEEXT: cannot compile and link" >&2;}
+   { (exit 1); exit 1; }; }
+fi
+
+rm -f conftest$ac_cv_exeext
+echo "$as_me:1664: result: $ac_cv_exeext" >&5
+echo "${ECHO_T}$ac_cv_exeext" >&6
+
+rm -f conftest.$ac_ext
+EXEEXT=$ac_cv_exeext
+ac_exeext=$EXEEXT
+echo "$as_me:1670: checking for object suffix" >&5
+echo $ECHO_N "checking for object suffix... $ECHO_C" >&6
+if test "${ac_cv_objext+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+#line 1676 "configure"
+#include "confdefs.h"
 
-ac_test_CFLAGS="${CFLAGS+set}"
-ac_save_CFLAGS="$CFLAGS"
-CFLAGS=
-echo $ac_n "checking whether ${CC-cc} accepts -g""... $ac_c" 1>&6
-echo "configure:1036: 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
+int
+main ()
+{
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.o conftest.obj
+if { (eval echo "$as_me:1688: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:1691: \$? = $ac_status" >&5
+  (exit $ac_status); }; then
+  for ac_file in `(ls conftest.o conftest.obj; ls conftest.*) 2>/dev/null`; do
+  case $ac_file in
+    *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb ) ;;
+    *) ac_cv_objext=`expr "$ac_file" : '.*\.\(.*\)'`
+       break;;
+  esac
+done
 else
-  echo 'void f(){}' > conftest.c
-if test -z "`${CC-cc} -g -c conftest.c 2>&1`"; then
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+{ { echo "$as_me:1703: error: cannot compute OBJEXT: cannot compile" >&5
+echo "$as_me: error: cannot compute OBJEXT: cannot compile" >&2;}
+   { (exit 1); exit 1; }; }
+fi
+
+rm -f conftest.$ac_cv_objext conftest.$ac_ext
+fi
+echo "$as_me:1710: result: $ac_cv_objext" >&5
+echo "${ECHO_T}$ac_cv_objext" >&6
+OBJEXT=$ac_cv_objext
+ac_objext=$OBJEXT
+echo "$as_me:1714: checking whether we are using the GNU C compiler" >&5
+echo $ECHO_N "checking whether we are using the GNU C compiler... $ECHO_C" >&6
+if test "${ac_cv_c_compiler_gnu+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+#line 1720 "configure"
+#include "confdefs.h"
+
+int
+main ()
+{
+#ifndef __GNUC__
+       choke me
+#endif
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:1735: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:1738: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:1741: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:1744: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  ac_compiler_gnu=yes
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_compiler_gnu=no
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+ac_cv_c_compiler_gnu=$ac_compiler_gnu
+
+fi
+echo "$as_me:1756: result: $ac_cv_c_compiler_gnu" >&5
+echo "${ECHO_T}$ac_cv_c_compiler_gnu" >&6
+GCC=`test $ac_compiler_gnu = yes && echo yes`
+ac_test_CFLAGS=${CFLAGS+set}
+ac_save_CFLAGS=$CFLAGS
+CFLAGS="-g"
+echo "$as_me:1762: checking whether $CC accepts -g" >&5
+echo $ECHO_N "checking whether $CC accepts -g... $ECHO_C" >&6
+if test "${ac_cv_prog_cc_g+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+#line 1768 "configure"
+#include "confdefs.h"
+
+int
+main ()
+{
+
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:1780: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:1783: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:1786: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:1789: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
   ac_cv_prog_cc_g=yes
 else
-  ac_cv_prog_cc_g=no
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+ac_cv_prog_cc_g=no
 fi
-rm -f conftest*
-
+rm -f conftest.$ac_objext conftest.$ac_ext
 fi
-
-echo "$ac_t""$ac_cv_prog_cc_g" 1>&6
+echo "$as_me:1799: result: $ac_cv_prog_cc_g" >&5
+echo "${ECHO_T}$ac_cv_prog_cc_g" >&6
 if test "$ac_test_CFLAGS" = set; then
-  CFLAGS="$ac_save_CFLAGS"
+  CFLAGS=$ac_save_CFLAGS
 elif test $ac_cv_prog_cc_g = yes; then
   if test "$GCC" = yes; then
     CFLAGS="-g -O2"
@@ -1062,425 +1813,551 @@
     CFLAGS=
   fi
 fi
+# Some people use a C++ compiler to compile C.  Since we use `exit',
+# in C++ we need to declare it.  In case someone uses the same compiler
+# for both compiling C and C++ we need to have the C++ compiler decide
+# the declaration of exit, since it's the most demanding environment.
+cat >conftest.$ac_ext <<_ACEOF
+#ifndef __cplusplus
+  choke me
+#endif
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:1826: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:1829: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:1832: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:1835: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  for ac_declaration in \
+   ''\
+   '#include <stdlib.h>' \
+   'extern "C" void std::exit (int) throw (); using std::exit;' \
+   'extern "C" void std::exit (int); using std::exit;' \
+   'extern "C" void exit (int) throw ();' \
+   'extern "C" void exit (int);' \
+   'void exit (int);'
+do
+  cat >conftest.$ac_ext <<_ACEOF
+#line 1847 "configure"
+#include "confdefs.h"
+#include <stdlib.h>
+$ac_declaration
+int
+main ()
+{
+exit (42);
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:1860: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:1863: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:1866: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:1869: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  :
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+continue
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+  cat >conftest.$ac_ext <<_ACEOF
+#line 1879 "configure"
+#include "confdefs.h"
+$ac_declaration
+int
+main ()
+{
+exit (42);
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:1891: \"$ac_compile\"") >&5
+  (eval $ac_compile) 2>&5
+  ac_status=$?
+  echo "$as_me:1894: \$? = $ac_status" >&5
+  (exit $ac_status); } &&
+         { ac_try='test -s conftest.$ac_objext'
+  { (eval echo "$as_me:1897: \"$ac_try\"") >&5
+  (eval $ac_try) 2>&5
+  ac_status=$?
+  echo "$as_me:1900: \$? = $ac_status" >&5
+  (exit $ac_status); }; }; then
+  break
+else
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+done
+rm -f conftest*
+if test -n "$ac_declaration"; then
+  echo '#ifdef __cplusplus' >>confdefs.h
+  echo $ac_declaration      >>confdefs.h
+  echo '#endif'             >>confdefs.h
+fi
 
-
-echo $ac_n "checking whether ${MAKE-make} sets \${MAKE}""... $ac_c" 1>&6
-echo "configure:1069: 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
 else
-  cat > conftestmake <<\EOF
+  echo "$as_me: failed program was:" >&5
+cat conftest.$ac_ext >&5
+fi
+rm -f conftest.$ac_objext conftest.$ac_ext
+ac_ext=c
+ac_cpp='$CPP $CPPFLAGS'
+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compiler_gnu=$ac_cv_c_compiler_gnu
+
+echo "$as_me:1927: checking whether ${MAKE-make} sets \${MAKE}" >&5
+echo $ECHO_N "checking whether ${MAKE-make} sets \${MAKE}... $ECHO_C" >&6
+set dummy ${MAKE-make}; ac_make=`echo "$2" | sed 'y,./+-,__p_,'`
+if eval "test \"\${ac_cv_prog_make_${ac_make}_set+set}\" = set"; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.make <<\EOF
 all:
 	@echo 'ac_maketemp="${MAKE}"'
 EOF
 # GNU make sometimes prints "make[1]: Entering...", which would confuse us.
-eval `${MAKE-make} -f conftestmake 2>/dev/null | grep temp=`
+eval `${MAKE-make} -f conftest.make 2>/dev/null | grep temp=`
 if test -n "$ac_maketemp"; then
   eval ac_cv_prog_make_${ac_make}_set=yes
 else
   eval ac_cv_prog_make_${ac_make}_set=no
 fi
-rm -f conftestmake
+rm -f conftest.make
 fi
 if eval "test \"`echo '$ac_cv_prog_make_'${ac_make}_set`\" = yes"; then
-  echo "$ac_t""yes" 1>&6
+  echo "$as_me:1947: result: yes" >&5
+echo "${ECHO_T}yes" >&6
   SET_MAKE=
 else
-  echo "$ac_t""no" 1>&6
+  echo "$as_me:1951: result: no" >&5
+echo "${ECHO_T}no" >&6
   SET_MAKE="MAKE=${MAKE-make}"
 fi
 
-if test "$program_transform_name" = s,x,x,; then
-  program_transform_name=
-else
-  # Double any \ or $.  echo might interpret backslashes.
-  cat <<\EOF_SED > conftestsed
-s,\\,\\\\,g; s,\$,$$,g
-EOF_SED
-  program_transform_name="`echo $program_transform_name|sed -f conftestsed`"
-  rm -f conftestsed
-fi
 test "$program_prefix" != NONE &&
-  program_transform_name="s,^,${program_prefix},; $program_transform_name"
+  program_transform_name="s,^,$program_prefix,;$program_transform_name"
 # Use a double $ so make ignores it.
 test "$program_suffix" != NONE &&
-  program_transform_name="s,\$\$,${program_suffix},; $program_transform_name"
-
-# sed with no file args requires a program.
-test "$program_transform_name" = "" && program_transform_name="s,x,x,"
+  program_transform_name="s,\$,$program_suffix,;$program_transform_name"
+# Double any \ or $.  echo might interpret backslashes.
+# By default was `s,x,x', remove it if useless.
+cat <<\_ACEOF >conftest.sed
+s/[\\$]/&&/g;s/;s,x,x,$//
+_ACEOF
+program_transform_name=`echo $program_transform_name | sed -f conftest.sed`
+rm conftest.sed
 
 # Extract the first word of "bzip2", so it can be a program name with args.
 set dummy bzip2; ac_word=$2
-echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1117: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_path_BZIP2'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
+echo "$as_me:1971: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_path_BZIP2+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
 else
-  case "$BZIP2" in
-  /*)
+  case $BZIP2 in
+  [\\/]* | ?:[\\/]*)
   ac_cv_path_BZIP2="$BZIP2" # Let the user override the test with a path.
   ;;
-  ?:/*)			 
-  ac_cv_path_BZIP2="$BZIP2" # Let the user override the test with a dos path.
-  ;;
   *)
-  IFS="${IFS= 	}"; ac_save_ifs="$IFS"; IFS=":"
-  ac_dummy="$PATH"
-  for ac_dir in $ac_dummy; do 
-    test -z "$ac_dir" && ac_dir=.
-    if test -f $ac_dir/$ac_word; then
-      ac_cv_path_BZIP2="$ac_dir/$ac_word"
-      break
-    fi
-  done
-  IFS="$ac_save_ifs"
+  ac_save_IFS=$IFS; IFS=$ac_path_separator
+ac_dummy="$PATH"
+for ac_dir in $ac_dummy; do
+  IFS=$ac_save_IFS
+  test -z "$ac_dir" && ac_dir=.
+  if $as_executable_p "$ac_dir/$ac_word"; then
+   ac_cv_path_BZIP2="$ac_dir/$ac_word"
+   echo "$as_me:1988: found $ac_dir/$ac_word" >&5
+   break
+fi
+done
+
   ;;
 esac
 fi
-BZIP2="$ac_cv_path_BZIP2"
+BZIP2=$ac_cv_path_BZIP2
+
 if test -n "$BZIP2"; then
-  echo "$ac_t""$BZIP2" 1>&6
+  echo "$as_me:1999: result: $BZIP2" >&5
+echo "${ECHO_T}$BZIP2" >&6
 else
-  echo "$ac_t""no" 1>&6
+  echo "$as_me:2002: result: no" >&5
+echo "${ECHO_T}no" >&6
 fi
 
 # Extract the first word of "bunzip2", so it can be a program name with args.
 set dummy bunzip2; ac_word=$2
-echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1152: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_path_BUNZIP2'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
+echo "$as_me:2008: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_path_BUNZIP2+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
 else
-  case "$BUNZIP2" in
-  /*)
+  case $BUNZIP2 in
+  [\\/]* | ?:[\\/]*)
   ac_cv_path_BUNZIP2="$BUNZIP2" # Let the user override the test with a path.
   ;;
-  ?:/*)			 
-  ac_cv_path_BUNZIP2="$BUNZIP2" # Let the user override the test with a dos path.
-  ;;
   *)
-  IFS="${IFS= 	}"; ac_save_ifs="$IFS"; IFS=":"
-  ac_dummy="$PATH"
-  for ac_dir in $ac_dummy; do 
-    test -z "$ac_dir" && ac_dir=.
-    if test -f $ac_dir/$ac_word; then
-      ac_cv_path_BUNZIP2="$ac_dir/$ac_word"
-      break
-    fi
-  done
-  IFS="$ac_save_ifs"
+  ac_save_IFS=$IFS; IFS=$ac_path_separator
+ac_dummy="$PATH"
+for ac_dir in $ac_dummy; do
+  IFS=$ac_save_IFS
+  test -z "$ac_dir" && ac_dir=.
+  if $as_executable_p "$ac_dir/$ac_word"; then
+   ac_cv_path_BUNZIP2="$ac_dir/$ac_word"
+   echo "$as_me:2025: found $ac_dir/$ac_word" >&5
+   break
+fi
+done
+
   ;;
 esac
 fi
-BUNZIP2="$ac_cv_path_BUNZIP2"
+BUNZIP2=$ac_cv_path_BUNZIP2
+
 if test -n "$BUNZIP2"; then
-  echo "$ac_t""$BUNZIP2" 1>&6
+  echo "$as_me:2036: result: $BUNZIP2" >&5
+echo "${ECHO_T}$BUNZIP2" >&6
 else
-  echo "$ac_t""no" 1>&6
+  echo "$as_me:2039: result: no" >&5
+echo "${ECHO_T}no" >&6
 fi
 
 # Extract the first word of "compress", so it can be a program name with args.
 set dummy compress; ac_word=$2
-echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1187: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_path_COMPRESS'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
+echo "$as_me:2045: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_path_COMPRESS+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
 else
-  case "$COMPRESS" in
-  /*)
+  case $COMPRESS in
+  [\\/]* | ?:[\\/]*)
   ac_cv_path_COMPRESS="$COMPRESS" # Let the user override the test with a path.
   ;;
-  ?:/*)			 
-  ac_cv_path_COMPRESS="$COMPRESS" # Let the user override the test with a dos path.
-  ;;
   *)
-  IFS="${IFS= 	}"; ac_save_ifs="$IFS"; IFS=":"
-  ac_dummy="$PATH"
-  for ac_dir in $ac_dummy; do 
-    test -z "$ac_dir" && ac_dir=.
-    if test -f $ac_dir/$ac_word; then
-      ac_cv_path_COMPRESS="$ac_dir/$ac_word"
-      break
-    fi
-  done
-  IFS="$ac_save_ifs"
+  ac_save_IFS=$IFS; IFS=$ac_path_separator
+ac_dummy="$PATH"
+for ac_dir in $ac_dummy; do
+  IFS=$ac_save_IFS
+  test -z "$ac_dir" && ac_dir=.
+  if $as_executable_p "$ac_dir/$ac_word"; then
+   ac_cv_path_COMPRESS="$ac_dir/$ac_word"
+   echo "$as_me:2062: found $ac_dir/$ac_word" >&5
+   break
+fi
+done
+
   ;;
 esac
 fi
-COMPRESS="$ac_cv_path_COMPRESS"
+COMPRESS=$ac_cv_path_COMPRESS
+
 if test -n "$COMPRESS"; then
-  echo "$ac_t""$COMPRESS" 1>&6
+  echo "$as_me:2073: result: $COMPRESS" >&5
+echo "${ECHO_T}$COMPRESS" >&6
 else
-  echo "$ac_t""no" 1>&6
+  echo "$as_me:2076: result: no" >&5
+echo "${ECHO_T}no" >&6
 fi
 
 # Extract the first word of "cut", so it can be a program name with args.
 set dummy cut; ac_word=$2
-echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1222: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_path_CUT'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
+echo "$as_me:2082: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_path_CUT+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
 else
-  case "$CUT" in
-  /*)
+  case $CUT in
+  [\\/]* | ?:[\\/]*)
   ac_cv_path_CUT="$CUT" # Let the user override the test with a path.
   ;;
-  ?:/*)			 
-  ac_cv_path_CUT="$CUT" # Let the user override the test with a dos path.
-  ;;
   *)
-  IFS="${IFS= 	}"; ac_save_ifs="$IFS"; IFS=":"
-  ac_dummy="$PATH"
-  for ac_dir in $ac_dummy; do 
-    test -z "$ac_dir" && ac_dir=.
-    if test -f $ac_dir/$ac_word; then
-      ac_cv_path_CUT="$ac_dir/$ac_word"
-      break
-    fi
-  done
-  IFS="$ac_save_ifs"
+  ac_save_IFS=$IFS; IFS=$ac_path_separator
+ac_dummy="$PATH"
+for ac_dir in $ac_dummy; do
+  IFS=$ac_save_IFS
+  test -z "$ac_dir" && ac_dir=.
+  if $as_executable_p "$ac_dir/$ac_word"; then
+   ac_cv_path_CUT="$ac_dir/$ac_word"
+   echo "$as_me:2099: found $ac_dir/$ac_word" >&5
+   break
+fi
+done
+
   test -z "$ac_cv_path_CUT" && ac_cv_path_CUT="cut"
   ;;
 esac
 fi
-CUT="$ac_cv_path_CUT"
+CUT=$ac_cv_path_CUT
+
 if test -n "$CUT"; then
-  echo "$ac_t""$CUT" 1>&6
+  echo "$as_me:2111: result: $CUT" >&5
+echo "${ECHO_T}$CUT" >&6
 else
-  echo "$ac_t""no" 1>&6
+  echo "$as_me:2114: result: no" >&5
+echo "${ECHO_T}no" >&6
 fi
 
 # Extract the first word of "expr", so it can be a program name with args.
 set dummy expr; ac_word=$2
-echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1258: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_path_EXPR'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
+echo "$as_me:2120: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_path_EXPR+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
 else
-  case "$EXPR" in
-  /*)
+  case $EXPR in
+  [\\/]* | ?:[\\/]*)
   ac_cv_path_EXPR="$EXPR" # Let the user override the test with a path.
   ;;
-  ?:/*)			 
-  ac_cv_path_EXPR="$EXPR" # Let the user override the test with a dos path.
-  ;;
   *)
-  IFS="${IFS= 	}"; ac_save_ifs="$IFS"; IFS=":"
-  ac_dummy="$PATH"
-  for ac_dir in $ac_dummy; do 
-    test -z "$ac_dir" && ac_dir=.
-    if test -f $ac_dir/$ac_word; then
-      ac_cv_path_EXPR="$ac_dir/$ac_word"
-      break
-    fi
-  done
-  IFS="$ac_save_ifs"
+  ac_save_IFS=$IFS; IFS=$ac_path_separator
+ac_dummy="$PATH"
+for ac_dir in $ac_dummy; do
+  IFS=$ac_save_IFS
+  test -z "$ac_dir" && ac_dir=.
+  if $as_executable_p "$ac_dir/$ac_word"; then
+   ac_cv_path_EXPR="$ac_dir/$ac_word"
+   echo "$as_me:2137: found $ac_dir/$ac_word" >&5
+   break
+fi
+done
+
   test -z "$ac_cv_path_EXPR" && ac_cv_path_EXPR="expr"
   ;;
 esac
 fi
-EXPR="$ac_cv_path_EXPR"
+EXPR=$ac_cv_path_EXPR
+
 if test -n "$EXPR"; then
-  echo "$ac_t""$EXPR" 1>&6
+  echo "$as_me:2149: result: $EXPR" >&5
+echo "${ECHO_T}$EXPR" >&6
 else
-  echo "$ac_t""no" 1>&6
+  echo "$as_me:2152: result: no" >&5
+echo "${ECHO_T}no" >&6
 fi
 
 for ac_prog in gtar gnutar tar
 do
-# Extract the first word of "$ac_prog", so it can be a program name with args.
+  # 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:1296: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_path_TAR'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
+echo "$as_me:2160: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_path_TAR+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
 else
-  case "$TAR" in
-  /*)
+  case $TAR in
+  [\\/]* | ?:[\\/]*)
   ac_cv_path_TAR="$TAR" # Let the user override the test with a path.
   ;;
-  ?:/*)			 
-  ac_cv_path_TAR="$TAR" # Let the user override the test with a dos path.
-  ;;
   *)
-  IFS="${IFS= 	}"; ac_save_ifs="$IFS"; IFS=":"
-  ac_dummy="$PATH"
-  for ac_dir in $ac_dummy; do 
-    test -z "$ac_dir" && ac_dir=.
-    if test -f $ac_dir/$ac_word; then
-      ac_cv_path_TAR="$ac_dir/$ac_word"
-      break
-    fi
-  done
-  IFS="$ac_save_ifs"
+  ac_save_IFS=$IFS; IFS=$ac_path_separator
+ac_dummy="$PATH"
+for ac_dir in $ac_dummy; do
+  IFS=$ac_save_IFS
+  test -z "$ac_dir" && ac_dir=.
+  if $as_executable_p "$ac_dir/$ac_word"; then
+   ac_cv_path_TAR="$ac_dir/$ac_word"
+   echo "$as_me:2177: found $ac_dir/$ac_word" >&5
+   break
+fi
+done
+
   ;;
 esac
 fi
-TAR="$ac_cv_path_TAR"
+TAR=$ac_cv_path_TAR
+
 if test -n "$TAR"; then
-  echo "$ac_t""$TAR" 1>&6
+  echo "$as_me:2188: result: $TAR" >&5
+echo "${ECHO_T}$TAR" >&6
 else
-  echo "$ac_t""no" 1>&6
+  echo "$as_me:2191: result: no" >&5
+echo "${ECHO_T}no" >&6
 fi
 
-test -n "$TAR" && break
+  test -n "$TAR" && break
 done
 
 # Extract the first word of "gzip", so it can be a program name with args.
 set dummy gzip; ac_word=$2
-echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1334: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_path_GZIP'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
+echo "$as_me:2200: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_path_GZIP+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
 else
-  case "$GZIP" in
-  /*)
+  case $GZIP in
+  [\\/]* | ?:[\\/]*)
   ac_cv_path_GZIP="$GZIP" # Let the user override the test with a path.
   ;;
-  ?:/*)			 
-  ac_cv_path_GZIP="$GZIP" # Let the user override the test with a dos path.
-  ;;
   *)
-  IFS="${IFS= 	}"; ac_save_ifs="$IFS"; IFS=":"
-  ac_dummy="$PATH"
-  for ac_dir in $ac_dummy; do 
-    test -z "$ac_dir" && ac_dir=.
-    if test -f $ac_dir/$ac_word; then
-      ac_cv_path_GZIP="$ac_dir/$ac_word"
-      break
-    fi
-  done
-  IFS="$ac_save_ifs"
+  ac_save_IFS=$IFS; IFS=$ac_path_separator
+ac_dummy="$PATH"
+for ac_dir in $ac_dummy; do
+  IFS=$ac_save_IFS
+  test -z "$ac_dir" && ac_dir=.
+  if $as_executable_p "$ac_dir/$ac_word"; then
+   ac_cv_path_GZIP="$ac_dir/$ac_word"
+   echo "$as_me:2217: found $ac_dir/$ac_word" >&5
+   break
+fi
+done
+
   ;;
 esac
 fi
-GZIP="$ac_cv_path_GZIP"
+GZIP=$ac_cv_path_GZIP
+
 if test -n "$GZIP"; then
-  echo "$ac_t""$GZIP" 1>&6
+  echo "$as_me:2228: result: $GZIP" >&5
+echo "${ECHO_T}$GZIP" >&6
 else
-  echo "$ac_t""no" 1>&6
+  echo "$as_me:2231: result: no" >&5
+echo "${ECHO_T}no" >&6
 fi
 
 # Extract the first word of "gunzip", so it can be a program name with args.
 set dummy gunzip; ac_word=$2
-echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1369: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_path_GUNZIP'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
+echo "$as_me:2237: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_path_GUNZIP+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
 else
-  case "$GUNZIP" in
-  /*)
+  case $GUNZIP in
+  [\\/]* | ?:[\\/]*)
   ac_cv_path_GUNZIP="$GUNZIP" # Let the user override the test with a path.
   ;;
-  ?:/*)			 
-  ac_cv_path_GUNZIP="$GUNZIP" # Let the user override the test with a dos path.
-  ;;
   *)
-  IFS="${IFS= 	}"; ac_save_ifs="$IFS"; IFS=":"
-  ac_dummy="$PATH"
-  for ac_dir in $ac_dummy; do 
-    test -z "$ac_dir" && ac_dir=.
-    if test -f $ac_dir/$ac_word; then
-      ac_cv_path_GUNZIP="$ac_dir/$ac_word"
-      break
-    fi
-  done
-  IFS="$ac_save_ifs"
+  ac_save_IFS=$IFS; IFS=$ac_path_separator
+ac_dummy="$PATH"
+for ac_dir in $ac_dummy; do
+  IFS=$ac_save_IFS
+  test -z "$ac_dir" && ac_dir=.
+  if $as_executable_p "$ac_dir/$ac_word"; then
+   ac_cv_path_GUNZIP="$ac_dir/$ac_word"
+   echo "$as_me:2254: found $ac_dir/$ac_word" >&5
+   break
+fi
+done
+
   ;;
 esac
 fi
-GUNZIP="$ac_cv_path_GUNZIP"
+GUNZIP=$ac_cv_path_GUNZIP
+
 if test -n "$GUNZIP"; then
-  echo "$ac_t""$GUNZIP" 1>&6
+  echo "$as_me:2265: result: $GUNZIP" >&5
+echo "${ECHO_T}$GUNZIP" >&6
 else
-  echo "$ac_t""no" 1>&6
+  echo "$as_me:2268: result: no" >&5
+echo "${ECHO_T}no" >&6
 fi
 
 for ac_prog in mawk gawk nawk awk
 do
-# Extract the first word of "$ac_prog", so it can be a program name with args.
+  # 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:1406: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_path_AWK'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
+echo "$as_me:2276: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_path_AWK+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
 else
-  case "$AWK" in
-  /*)
+  case $AWK in
+  [\\/]* | ?:[\\/]*)
   ac_cv_path_AWK="$AWK" # Let the user override the test with a path.
   ;;
-  ?:/*)			 
-  ac_cv_path_AWK="$AWK" # Let the user override the test with a dos path.
-  ;;
   *)
-  IFS="${IFS= 	}"; ac_save_ifs="$IFS"; IFS=":"
-  ac_dummy="$PATH"
-  for ac_dir in $ac_dummy; do 
-    test -z "$ac_dir" && ac_dir=.
-    if test -f $ac_dir/$ac_word; then
-      ac_cv_path_AWK="$ac_dir/$ac_word"
-      break
-    fi
-  done
-  IFS="$ac_save_ifs"
+  ac_save_IFS=$IFS; IFS=$ac_path_separator
+ac_dummy="$PATH"
+for ac_dir in $ac_dummy; do
+  IFS=$ac_save_IFS
+  test -z "$ac_dir" && ac_dir=.
+  if $as_executable_p "$ac_dir/$ac_word"; then
+   ac_cv_path_AWK="$ac_dir/$ac_word"
+   echo "$as_me:2293: found $ac_dir/$ac_word" >&5
+   break
+fi
+done
+
   ;;
 esac
 fi
-AWK="$ac_cv_path_AWK"
+AWK=$ac_cv_path_AWK
+
 if test -n "$AWK"; then
-  echo "$ac_t""$AWK" 1>&6
+  echo "$as_me:2304: result: $AWK" >&5
+echo "${ECHO_T}$AWK" >&6
 else
-  echo "$ac_t""no" 1>&6
+  echo "$as_me:2307: result: no" >&5
+echo "${ECHO_T}no" >&6
 fi
 
-test -n "$AWK" && break
+  test -n "$AWK" && break
 done
 
-
 # Include the file that defines BORP_PERL_RUN.
 # Extract the first word of "perl", so it can be a program name with args.
 set dummy perl; ac_word=$2
-echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1446: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_path_PERL'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
+echo "$as_me:2317: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_path_PERL+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
 else
-  case "$PERL" in
-  /*)
+  case $PERL in
+  [\\/]* | ?:[\\/]*)
   ac_cv_path_PERL="$PERL" # Let the user override the test with a path.
   ;;
-  ?:/*)			 
-  ac_cv_path_PERL="$PERL" # Let the user override the test with a dos path.
-  ;;
   *)
-  IFS="${IFS= 	}"; ac_save_ifs="$IFS"; IFS=":"
-  ac_dummy="$PATH"
-  for ac_dir in $ac_dummy; do 
-    test -z "$ac_dir" && ac_dir=.
-    if test -f $ac_dir/$ac_word; then
-      ac_cv_path_PERL="$ac_dir/$ac_word"
-      break
-    fi
-  done
-  IFS="$ac_save_ifs"
+  ac_save_IFS=$IFS; IFS=$ac_path_separator
+ac_dummy="$PATH"
+for ac_dir in $ac_dummy; do
+  IFS=$ac_save_IFS
+  test -z "$ac_dir" && ac_dir=.
+  if $as_executable_p "$ac_dir/$ac_word"; then
+   ac_cv_path_PERL="$ac_dir/$ac_word"
+   echo "$as_me:2334: found $ac_dir/$ac_word" >&5
+   break
+fi
+done
+
   test -z "$ac_cv_path_PERL" && ac_cv_path_PERL="NOT_FOUND"
   ;;
 esac
 fi
-PERL="$ac_cv_path_PERL"
+PERL=$ac_cv_path_PERL
+
 if test -n "$PERL"; then
-  echo "$ac_t""$PERL" 1>&6
+  echo "$as_me:2346: result: $PERL" >&5
+echo "${ECHO_T}$PERL" >&6
 else
-  echo "$ac_t""no" 1>&6
+  echo "$as_me:2349: result: no" >&5
+echo "${ECHO_T}no" >&6
 fi
 
 if test "x$PERL" = xNOT_FOUND; then
-  { echo "configure: error: *** Perl not found.  Please install Perl.  See INSTALL how to do this." 1>&2; exit 1; }
+  { { echo "$as_me:2354: error: *** Perl not found.  Please install Perl.  See INSTALL how to do this." >&5
+echo "$as_me: error: *** Perl not found.  Please install Perl.  See INSTALL how to do this." >&2;}
+   { (exit 1); exit 1; }; }
 else
-  
-  echo $ac_n "checking if '$PERL' will run Perl scripts""... $ac_c" 1>&6
-echo "configure:1484: checking if '$PERL' will run Perl scripts" >&5
+
+  echo "$as_me:2359: checking if '$PERL' will run Perl scripts" >&5
+echo $ECHO_N "checking if '$PERL' will run Perl scripts... $ECHO_C" >&6
   rm -f conftest.BZ
   cat > conftest.BZ <<EOF
 #!$PERL
@@ -1490,52 +2367,55 @@
   chmod +x conftest.BZ
   if ./conftest.BZ 2>/dev/null; then
     PERL_HEAD=PerlHead1
-    echo "$ac_t""yes" 1>&6
+    echo "$as_me:2370: result: yes" >&5
+echo "${ECHO_T}yes" >&6
   else
     PERL_HEAD=PerlHead2
-    echo "$ac_t""no" 1>&6
+    echo "$as_me:2374: result: no" >&5
+echo "${ECHO_T}no" >&6
   fi
   rm -f conftest.BZ
 
 fi
 PERL_HEAD="$cwd/config/$PERL_HEAD"
 
-
 # Determine the correct ps command to use to find out about process
 # information for itself.
 # Extract the first word of "ps", so it can be a program name with args.
 set dummy ps; ac_word=$2
-echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1510: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_path_PS'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
+echo "$as_me:2386: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_path_PS+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
 else
-  case "$PS" in
-  /*)
+  case $PS in
+  [\\/]* | ?:[\\/]*)
   ac_cv_path_PS="$PS" # Let the user override the test with a path.
   ;;
-  ?:/*)			 
-  ac_cv_path_PS="$PS" # Let the user override the test with a dos path.
-  ;;
   *)
-  IFS="${IFS= 	}"; ac_save_ifs="$IFS"; IFS=":"
-  ac_dummy="$PATH"
-  for ac_dir in $ac_dummy; do 
-    test -z "$ac_dir" && ac_dir=.
-    if test -f $ac_dir/$ac_word; then
-      ac_cv_path_PS="$ac_dir/$ac_word"
-      break
-    fi
-  done
-  IFS="$ac_save_ifs"
+  ac_save_IFS=$IFS; IFS=$ac_path_separator
+ac_dummy="$PATH"
+for ac_dir in $ac_dummy; do
+  IFS=$ac_save_IFS
+  test -z "$ac_dir" && ac_dir=.
+  if $as_executable_p "$ac_dir/$ac_word"; then
+   ac_cv_path_PS="$ac_dir/$ac_word"
+   echo "$as_me:2403: found $ac_dir/$ac_word" >&5
+   break
+fi
+done
+
   ;;
 esac
 fi
-PS="$ac_cv_path_PS"
+PS=$ac_cv_path_PS
+
 if test -n "$PS"; then
-  echo "$ac_t""$PS" 1>&6
+  echo "$as_me:2414: result: $PS" >&5
+echo "${ECHO_T}$PS" >&6
 else
-  echo "$ac_t""no" 1>&6
+  echo "$as_me:2417: result: no" >&5
+echo "${ECHO_T}no" >&6
 fi
 
 case "$target" in
@@ -1547,127 +2427,139 @@
     ;;
   *)
     PS_SELF="$PS aux | grep PID"
-    echo "configure: warning: *** If you know a better PS command than" 1>&2
-    echo "configure: warning: ***   '$PS_SELF'" 1>&2
-    echo "configure: warning: *** to get process information for your host," 1>&2
-    echo "configure: warning: *** please email the command the the output from" 1>&2
-    echo "configure: warning: *** ./config/config.guess to" 1>&2
-    echo "configure: warning: *** orca-developers at yahoogroups.com" 1>&2
+    { echo "$as_me:2430: WARNING: *** If you know a better PS command than" >&5
+echo "$as_me: WARNING: *** If you know a better PS command than" >&2;}
+    { echo "$as_me:2432: WARNING: ***   '$PS_SELF'" >&5
+echo "$as_me: WARNING: ***   '$PS_SELF'" >&2;}
+    { echo "$as_me:2434: WARNING: *** to get process information for your host," >&5
+echo "$as_me: WARNING: *** to get process information for your host," >&2;}
+    { echo "$as_me:2436: WARNING: *** please email the command and the output from" >&5
+echo "$as_me: WARNING: *** please email the command and the output from" >&2;}
+    { echo "$as_me:2438: WARNING: *** ./config/config.guess to" >&5
+echo "$as_me: WARNING: *** ./config/config.guess to" >&2;}
+    { echo "$as_me:2440: WARNING: *** orca-developers at yahoogroups.com" >&5
+echo "$as_me: WARNING: *** orca-developers at yahoogroups.com" >&2;}
     ;;
 esac
 if test "$PS_SELF"; then
-  echo $ac_n "checking for ps command""... $ac_c" 1>&6
-echo "configure:1561: checking for ps command" >&5
-  echo "$ac_t""$PS_SELF" 1>&6
-  
+  echo "$as_me:2445: checking for ps command" >&5
+echo $ECHO_N "checking for ps command... $ECHO_C" >&6
+  echo "$as_me:2447: result: $PS_SELF" >&5
+echo "${ECHO_T}$PS_SELF" >&6
+
 fi
 # Extract the first word of "se", so it can be a program name with args.
 set dummy se; ac_word=$2
-echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1568: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_path_SE'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
+echo "$as_me:2453: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_path_SE+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
 else
-  case "$SE" in
-  /*)
+  case $SE in
+  [\\/]* | ?:[\\/]*)
   ac_cv_path_SE="$SE" # Let the user override the test with a path.
   ;;
-  ?:/*)			 
-  ac_cv_path_SE="$SE" # Let the user override the test with a dos path.
-  ;;
   *)
-  IFS="${IFS= 	}"; ac_save_ifs="$IFS"; IFS=":"
-  ac_dummy="$PATH:/opt/RICHPse/bin"
-  for ac_dir in $ac_dummy; do 
-    test -z "$ac_dir" && ac_dir=.
-    if test -f $ac_dir/$ac_word; then
-      ac_cv_path_SE="$ac_dir/$ac_word"
-      break
-    fi
-  done
-  IFS="$ac_save_ifs"
+  ac_save_IFS=$IFS; IFS=$ac_path_separator
+ac_dummy="$PATH:/opt/RICHPse/bin"
+for ac_dir in $ac_dummy; do
+  IFS=$ac_save_IFS
+  test -z "$ac_dir" && ac_dir=.
+  if $as_executable_p "$ac_dir/$ac_word"; then
+   ac_cv_path_SE="$ac_dir/$ac_word"
+   echo "$as_me:2470: found $ac_dir/$ac_word" >&5
+   break
+fi
+done
+
   ;;
 esac
 fi
-SE="$ac_cv_path_SE"
+SE=$ac_cv_path_SE
+
 if test -n "$SE"; then
-  echo "$ac_t""$SE" 1>&6
+  echo "$as_me:2481: result: $SE" >&5
+echo "${ECHO_T}$SE" >&6
 else
-  echo "$ac_t""no" 1>&6
+  echo "$as_me:2484: result: no" >&5
+echo "${ECHO_T}no" >&6
 fi
 
 # Extract the first word of "uname", so it can be a program name with args.
 set dummy uname; ac_word=$2
-echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1603: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_path_UNAME'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
+echo "$as_me:2490: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_path_UNAME+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
 else
-  case "$UNAME" in
-  /*)
+  case $UNAME in
+  [\\/]* | ?:[\\/]*)
   ac_cv_path_UNAME="$UNAME" # Let the user override the test with a path.
   ;;
-  ?:/*)			 
-  ac_cv_path_UNAME="$UNAME" # Let the user override the test with a dos path.
-  ;;
   *)
-  IFS="${IFS= 	}"; ac_save_ifs="$IFS"; IFS=":"
-  ac_dummy="$PATH"
-  for ac_dir in $ac_dummy; do 
-    test -z "$ac_dir" && ac_dir=.
-    if test -f $ac_dir/$ac_word; then
-      ac_cv_path_UNAME="$ac_dir/$ac_word"
-      break
-    fi
-  done
-  IFS="$ac_save_ifs"
+  ac_save_IFS=$IFS; IFS=$ac_path_separator
+ac_dummy="$PATH"
+for ac_dir in $ac_dummy; do
+  IFS=$ac_save_IFS
+  test -z "$ac_dir" && ac_dir=.
+  if $as_executable_p "$ac_dir/$ac_word"; then
+   ac_cv_path_UNAME="$ac_dir/$ac_word"
+   echo "$as_me:2507: found $ac_dir/$ac_word" >&5
+   break
+fi
+done
+
   test -z "$ac_cv_path_UNAME" && ac_cv_path_UNAME="uname"
   ;;
 esac
 fi
-UNAME="$ac_cv_path_UNAME"
+UNAME=$ac_cv_path_UNAME
+
 if test -n "$UNAME"; then
-  echo "$ac_t""$UNAME" 1>&6
+  echo "$as_me:2519: result: $UNAME" >&5
+echo "${ECHO_T}$UNAME" >&6
 else
-  echo "$ac_t""no" 1>&6
+  echo "$as_me:2522: result: no" >&5
+echo "${ECHO_T}no" >&6
 fi
 
 # Extract the first word of "uncompress", so it can be a program name with args.
 set dummy uncompress; ac_word=$2
-echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1639: checking for $ac_word" >&5
-if eval "test \"`echo '$''{'ac_cv_path_UNCOMPRESS'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
+echo "$as_me:2528: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_path_UNCOMPRESS+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
 else
-  case "$UNCOMPRESS" in
-  /*)
+  case $UNCOMPRESS in
+  [\\/]* | ?:[\\/]*)
   ac_cv_path_UNCOMPRESS="$UNCOMPRESS" # Let the user override the test with a path.
   ;;
-  ?:/*)			 
-  ac_cv_path_UNCOMPRESS="$UNCOMPRESS" # Let the user override the test with a dos path.
-  ;;
   *)
-  IFS="${IFS= 	}"; ac_save_ifs="$IFS"; IFS=":"
-  ac_dummy="$PATH"
-  for ac_dir in $ac_dummy; do 
-    test -z "$ac_dir" && ac_dir=.
-    if test -f $ac_dir/$ac_word; then
-      ac_cv_path_UNCOMPRESS="$ac_dir/$ac_word"
-      break
-    fi
-  done
-  IFS="$ac_save_ifs"
+  ac_save_IFS=$IFS; IFS=$ac_path_separator
+ac_dummy="$PATH"
+for ac_dir in $ac_dummy; do
+  IFS=$ac_save_IFS
+  test -z "$ac_dir" && ac_dir=.
+  if $as_executable_p "$ac_dir/$ac_word"; then
+   ac_cv_path_UNCOMPRESS="$ac_dir/$ac_word"
+   echo "$as_me:2545: found $ac_dir/$ac_word" >&5
+   break
+fi
+done
+
   ;;
 esac
 fi
-UNCOMPRESS="$ac_cv_path_UNCOMPRESS"
+UNCOMPRESS=$ac_cv_path_UNCOMPRESS
+
 if test -n "$UNCOMPRESS"; then
-  echo "$ac_t""$UNCOMPRESS" 1>&6
+  echo "$as_me:2556: result: $UNCOMPRESS" >&5
+echo "${ECHO_T}$UNCOMPRESS" >&6
 else
-  echo "$ac_t""no" 1>&6
+  echo "$as_me:2559: result: no" >&5
+echo "${ECHO_T}no" >&6
 fi
 
-
 # Determine the correct flags to compress files depending upon the compress
 # programs available.
 COMPRESSOR=
@@ -1683,15 +2575,11 @@
   UNCOMPRESSOR_PIPE="$UNCOMPRESS -c"
 fi
 
-
-
 # Always build the orcallator files regardless of the operating system.
 BUILD_ORCALLATOR=yes
 ORCALLATOR_SUBDIR=orcallator
 INSTALL_LIB_RRDTOOL=
 
-
-
 # These commands can be used if the orcallator should not be built.
 # AC_MSG_CHECKING([for solaris host for orcallator install])
 # AC_MSG_RESULT($BUILD_ORCALLATOR)
@@ -1710,23 +2598,17 @@
 # options for RRDtool if it is not already declared.
 # expr "$ORCA_CONFIGURE_COMMAND_LINE" : "--enable-shared" >/dev/null 2>&1 || ORCA_CONFIGURE_COMMAND_LINE="$ORCA_CONFIGURE_COMMAND_LINE --enable-shared"
 
-
-
-
-
-
-
-
-  echo $ac_n "checking if Perl module Data::Dumper version $DATA_DUMPER_VER is installed""... $ac_c" 1>&6
-echo "configure:1722: checking if Perl module Data::Dumper version $DATA_DUMPER_VER is installed" >&5
+  echo "$as_me:2601: checking if Perl module Data::Dumper version $DATA_DUMPER_VER is installed" >&5
+echo $ECHO_N "checking if Perl module Data::Dumper version $DATA_DUMPER_VER is installed... $ECHO_C" >&6
   if $PERL ./config/check_for_perl_mod Data::Dumper $DATA_DUMPER_VER; then
     borp_cv_perl_data_dumper=yes
-    
+
   else
     borp_cv_perl_data_dumper=no
-    
+
   fi
-  echo "$ac_t""$borp_cv_perl_data_dumper" 1>&6
+  echo "$as_me:2610: result: $borp_cv_perl_data_dumper" >&5
+echo "${ECHO_T}$borp_cv_perl_data_dumper" >&6
 
 test "$ALWAYS_BUILD_PERL_MODULES" && borp_cv_perl_data_dumper=no
 if test "$borp_cv_perl_data_dumper" = no; then
@@ -1737,22 +2619,17 @@
   DISTCLEAN_DATA_DUMPER=distclean_data_dumper
 fi
 
-
-
-
-
-
-
-  echo $ac_n "checking if Perl module Date::Parse version $DATE_PARSE_VER is installed""... $ac_c" 1>&6
-echo "configure:1748: checking if Perl module Date::Parse version $DATE_PARSE_VER is installed" >&5
+  echo "$as_me:2622: checking if Perl module Date::Parse version $DATE_PARSE_VER is installed" >&5
+echo $ECHO_N "checking if Perl module Date::Parse version $DATE_PARSE_VER is installed... $ECHO_C" >&6
   if $PERL ./config/check_for_perl_mod Date::Parse $DATE_PARSE_VER; then
     borp_cv_perl_date_parse=yes
-    
+
   else
     borp_cv_perl_date_parse=no
-    
+
   fi
-  echo "$ac_t""$borp_cv_perl_date_parse" 1>&6
+  echo "$as_me:2631: result: $borp_cv_perl_date_parse" >&5
+echo "${ECHO_T}$borp_cv_perl_date_parse" >&6
 
 test "$ALWAYS_BUILD_PERL_MODULES" && borp_cv_perl_date_parse=no
 if test "$borp_cv_perl_date_parse" = no; then
@@ -1763,22 +2640,17 @@
   DISTCLEAN_DATE_PARSE=distclean_date_parse
 fi
 
-
-
-
-
-
-
-  echo $ac_n "checking if Perl module Digest::MD5 version $DIGEST_MD5_VER is installed""... $ac_c" 1>&6
-echo "configure:1774: checking if Perl module Digest::MD5 version $DIGEST_MD5_VER is installed" >&5
+  echo "$as_me:2643: checking if Perl module Digest::MD5 version $DIGEST_MD5_VER is installed" >&5
+echo $ECHO_N "checking if Perl module Digest::MD5 version $DIGEST_MD5_VER is installed... $ECHO_C" >&6
   if $PERL ./config/check_for_perl_mod Digest::MD5 $DIGEST_MD5_VER; then
     borp_cv_perl_digest_md5=yes
-    
+
   else
     borp_cv_perl_digest_md5=no
-    
+
   fi
-  echo "$ac_t""$borp_cv_perl_digest_md5" 1>&6
+  echo "$as_me:2652: result: $borp_cv_perl_digest_md5" >&5
+echo "${ECHO_T}$borp_cv_perl_digest_md5" >&6
 
 test "$ALWAYS_BUILD_PERL_MODULES" && borp_cv_perl_digest_md5=no
 if test "$borp_cv_perl_digest_md5" = no; then
@@ -1789,22 +2661,17 @@
   DISTCLEAN_DIGEST_MD5=distclean_digest_md5
 fi
 
-
-
-
-
-
-
-  echo $ac_n "checking if Perl module Math::Interpolate version $MATH_INTERPOLATE_VER is installed""... $ac_c" 1>&6
-echo "configure:1800: checking if Perl module Math::Interpolate version $MATH_INTERPOLATE_VER is installed" >&5
+  echo "$as_me:2664: checking if Perl module Math::Interpolate version $MATH_INTERPOLATE_VER is installed" >&5
+echo $ECHO_N "checking if Perl module Math::Interpolate version $MATH_INTERPOLATE_VER is installed... $ECHO_C" >&6
   if $PERL ./config/check_for_perl_mod Math::Interpolate $MATH_INTERPOLATE_VER; then
     borp_cv_perl_math_interpolate=yes
-    
+
   else
     borp_cv_perl_math_interpolate=no
-    
+
   fi
-  echo "$ac_t""$borp_cv_perl_math_interpolate" 1>&6
+  echo "$as_me:2673: result: $borp_cv_perl_math_interpolate" >&5
+echo "${ECHO_T}$borp_cv_perl_math_interpolate" >&6
 
 test "$ALWAYS_BUILD_PERL_MODULES" && borp_cv_perl_math_interpolate=no
 if test "$borp_cv_perl_math_interpolate" = no; then
@@ -1815,22 +2682,17 @@
   DISTCLEAN_MATH_INTERPOLATE=distclean_math_interpolate
 fi
 
-
-
-
-
-
-
-  echo $ac_n "checking if Perl module RRDs version $RRDTOOL_VER is installed""... $ac_c" 1>&6
-echo "configure:1826: checking if Perl module RRDs version $RRDTOOL_VER is installed" >&5
+  echo "$as_me:2685: checking if Perl module RRDs version $RRDTOOL_VER is installed" >&5
+echo $ECHO_N "checking if Perl module RRDs version $RRDTOOL_VER is installed... $ECHO_C" >&6
   if $PERL ./config/check_for_perl_mod RRDs $RRDTOOL_VER; then
     borp_cv_perl_rrds=yes
-    
+
   else
     borp_cv_perl_rrds=no
-    
+
   fi
-  echo "$ac_t""$borp_cv_perl_rrds" 1>&6
+  echo "$as_me:2694: result: $borp_cv_perl_rrds" >&5
+echo "${ECHO_T}$borp_cv_perl_rrds" >&6
 
 test "$ALWAYS_BUILD_PERL_MODULES" && borp_cv_perl_rrds=no
 if test "$borp_cv_perl_rrds" = no; then
@@ -1841,22 +2703,17 @@
   DISTCLEAN_RRDTOOL=distclean_rrdtool
 fi
 
-
-
-
-
-
-
-  echo $ac_n "checking if Perl module Storable version $STORABLE_VER is installed""... $ac_c" 1>&6
-echo "configure:1852: checking if Perl module Storable version $STORABLE_VER is installed" >&5
+  echo "$as_me:2706: checking if Perl module Storable version $STORABLE_VER is installed" >&5
+echo $ECHO_N "checking if Perl module Storable version $STORABLE_VER is installed... $ECHO_C" >&6
   if $PERL ./config/check_for_perl_mod Storable $STORABLE_VER; then
     borp_cv_perl_storable=yes
-    
+
   else
     borp_cv_perl_storable=no
-    
+
   fi
-  echo "$ac_t""$borp_cv_perl_storable" 1>&6
+  echo "$as_me:2715: result: $borp_cv_perl_storable" >&5
+echo "${ECHO_T}$borp_cv_perl_storable" >&6
 
 test "$ALWAYS_BUILD_PERL_MODULES" && borp_cv_perl_storable=no
 if test "$borp_cv_perl_storable" = no; then
@@ -1867,22 +2724,17 @@
   DISTCLEAN_STORABLE=distclean_storable
 fi
 
-
-
-
-
-
-
-  echo $ac_n "checking if Perl module Time::HiRes version $TIME_HIRES_VER is installed""... $ac_c" 1>&6
-echo "configure:1878: checking if Perl module Time::HiRes version $TIME_HIRES_VER is installed" >&5
+  echo "$as_me:2727: checking if Perl module Time::HiRes version $TIME_HIRES_VER is installed" >&5
+echo $ECHO_N "checking if Perl module Time::HiRes version $TIME_HIRES_VER is installed... $ECHO_C" >&6
   if $PERL ./config/check_for_perl_mod Time::HiRes $TIME_HIRES_VER; then
     borp_cv_perl_time_hires=yes
-    
+
   else
     borp_cv_perl_time_hires=no
-    
+
   fi
-  echo "$ac_t""$borp_cv_perl_time_hires" 1>&6
+  echo "$as_me:2736: result: $borp_cv_perl_time_hires" >&5
+echo "${ECHO_T}$borp_cv_perl_time_hires" >&6
 
 test "$ALWAYS_BUILD_PERL_MODULES" && borp_cv_perl_time_hires=no
 if test "$borp_cv_perl_time_hires" = no; then
@@ -1896,19 +2748,11 @@
   PERL_USE_TIME_HIRES="use Time::HiRes qw(time);"
 fi
 
-
-
-
-
-
-
 # Define the INSTALL and MKDIR variables to point to the scripts in
 # the config directory.
 INSTALL="$config_dir/install-sh -c"
 MKDIR="$config_dir/mkinstalldirs"
 
-
-
 #--------------------------------------------------------------------
 #	Generate the Makefiles and shell scripts with the
 #	variable substitutions.
@@ -1923,398 +2767,736 @@
                      orcallator/Makefile"
 fi
 
-trap '' 1 2 15
-cat > confcache <<\EOF
+ac_config_files="$ac_config_files Makefile config/PerlHead1 config/PerlHead2 lib/Makefile packages/Makefile src/Makefile src/orca.pl $ORCALLATOR_OUTPUT docs/Makefile contrib/Makefile contrib/rotate_orca_graphs/Makefile contrib/rotate_orca_graphs/rotate_orca_graphs.sh contrib/orcaservices/Makefile contrib/orcaservices/orcaservices.cfg contrib/orcaservices/orcaservices.pl contrib/orcaservices/orcaservices_running.pl contrib/orcaservices/restart_orcaservices.sh contrib/orcaservices/start_orcaservices.sh contrib/orcaservices/stop_orcaservices.sh contrib/orcaservices/S99orcaservices.sh"
+cat >confcache <<\_ACEOF
 # This file is a shell script that caches the results of configure
 # tests run on this system so they can be shared between configure
-# scripts and configure runs.  It is not useful on other systems.
-# If it contains results you don't want to keep, you may remove or edit it.
+# scripts and configure runs, see configure's option --config-cache.
+# It is not useful on other systems.  If it contains results you don't
+# want to keep, you may remove or edit it.
 #
-# By default, configure uses ./config.cache as the cache file,
-# creating it if it does not exist already.  You can give configure
-# the --cache-file=FILE option to use a different cache file; that is
-# what configure does when it calls configure scripts in
-# subdirectories, so they share the cache.
-# Giving --cache-file=/dev/null disables caching, for debugging configure.
-# config.status only pays attention to the cache file if you give it the
-# --recheck option to rerun configure.
+# config.status only pays attention to the cache file if you give it
+# the --recheck option to rerun configure.
 #
-EOF
+# `ac_cv_env_foo' variables (set or unset) will be overriden when
+# loading this file, other *unset* `ac_cv_foo' will be assigned the
+# following values.
+
+_ACEOF
+
 # The following way of writing the cache mishandles newlines in values,
 # but we know of no workaround that is simple, portable, and efficient.
 # So, don't put newlines in cache variables' values.
 # Ultrix sh set writes to stderr and can't be redirected directly,
 # and sets the high bit in the cache file unless we assign to the vars.
-(set) 2>&1 |
-  case `(ac_space=' '; set | grep ac_space) 2>&1` in
-  *ac_space=\ *)
-    # `set' does not quote correctly, so add quotes (double-quote substitution
-    # turns \\\\ into \\, and sed turns \\ into \).
-    sed -n \
-      -e "s/'/'\\\\''/g" \
-      -e "s/^\\([a-zA-Z0-9_]*_cv_[a-zA-Z0-9_]*\\)=\\(.*\\)/\\1=\${\\1='\\2'}/p"
-    ;;
-  *)
-    # `set' quotes correctly as required by POSIX, so do not add quotes.
-    sed -n -e 's/^\([a-zA-Z0-9_]*_cv_[a-zA-Z0-9_]*\)=\(.*\)/\1=${\1=\2}/p'
-    ;;
-  esac >> confcache
-if cmp -s $cache_file confcache; then
-  :
-else
+{
+  (set) 2>&1 |
+    case `(ac_space=' '; set | grep ac_space) 2>&1` in
+    *ac_space=\ *)
+      # `set' does not quote correctly, so add quotes (double-quote
+      # substitution turns \\\\ into \\, and sed turns \\ into \).
+      sed -n \
+        "s/'/'\\\\''/g;
+    	  s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\\2'/p"
+      ;;
+    *)
+      # `set' quotes correctly as required by POSIX, so do not add quotes.
+      sed -n \
+        "s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1=\\2/p"
+      ;;
+    esac;
+} |
+  sed '
+     t clear
+     : clear
+     s/^\([^=]*\)=\(.*[{}].*\)$/test "${\1+set}" = set || &/
+     t end
+     /^ac_cv_env/!s/^\([^=]*\)=\(.*\)$/\1=${\1=\2}/
+     : end' >>confcache
+if cmp -s $cache_file confcache; then :; else
   if test -w $cache_file; then
-    echo "updating cache $cache_file"
-    cat confcache > $cache_file
+    test "x$cache_file" != "x/dev/null" && echo "updating cache $cache_file"
+    cat confcache >$cache_file
   else
     echo "not updating unwritable cache $cache_file"
   fi
 fi
 rm -f confcache
 
-trap 'rm -fr conftest* confdefs* core core.* *.core $ac_clean_files; exit 1' 1 2 15
-
 test "x$prefix" = xNONE && prefix=$ac_default_prefix
 # Let make expand exec_prefix.
 test "x$exec_prefix" = xNONE && exec_prefix='${prefix}'
 
-# Any assignment to VPATH causes Sun make to only execute
-# the first set of double-colon rules, so remove it if not needed.
-# If there is a colon in the path, we need to keep it.
+# VPATH may cause trouble with some makes, so we remove $(srcdir),
+# ${srcdir} and @srcdir@ from VPATH if srcdir is ".", strip leading and
+# trailing colons and then remove the whole line if VPATH becomes empty
+# (actually we leave an empty line to preserve line numbers).
 if test "x$srcdir" = x.; then
-  ac_vpsub='/^[ 	]*VPATH[ 	]*=[^:]*$/d'
+  ac_vpsub='/^[ 	]*VPATH[ 	]*=/{
+s/:*\$(srcdir):*/:/;
+s/:*\${srcdir}:*/:/;
+s/:*@srcdir@:*/:/;
+s/^\([^=]*=[ 	]*\):*/\1/;
+s/:*$//;
+s/^[^=]*=[ 	]*$//;
+}'
 fi
 
-trap 'rm -f $CONFIG_STATUS conftest*; exit 1' 1 2 15
-
 # Transform confdefs.h into DEFS.
 # Protect against shell expansion while executing Makefile rules.
 # Protect against Makefile macro expansion.
-cat > conftest.defs <<\EOF
-s%#define \([A-Za-z_][A-Za-z0-9_]*\) *\(.*\)%-D\1=\2%g
-s%[ 	`~#$^&*(){}\\|;'"<>?]%\\&%g
-s%\[%\\&%g
-s%\]%\\&%g
-s%\$%$$%g
+#
+# If the first sed substitution is executed (which looks for macros that
+# take arguments), then we branch to the quote section.  Otherwise,
+# look for a macro that doesn't take arguments.
+cat >confdef2opt.sed <<\EOF
+t clear
+: clear
+s,^[ 	]*#[ 	]*define[ 	][ 	]*\([^ 	(][^ 	(]*([^)]*)\)[ 	]*\(.*\),-D\1=\2,g
+t quote
+s,^[ 	]*#[ 	]*define[ 	][ 	]*\([^ 	][^ 	]*\)[ 	]*\(.*\),-D\1=\2,g
+t quote
+d
+: quote
+s,[ 	`~#$^&*(){}\\|;'"<>?],\\&,g
+s,\[,\\&,g
+s,\],\\&,g
+s,\$,$$,g
+p
 EOF
-DEFS=`sed -f conftest.defs confdefs.h | tr '\012' ' '`
-rm -f conftest.defs
-
+# We use echo to avoid assuming a particular line-breaking character.
+# The extra dot is to prevent the shell from consuming trailing
+# line-breaks from the sub-command output.  A line-break within
+# single-quotes doesn't work because, if this script is created in a
+# platform that uses two characters for line-breaks (e.g., DOS), tr
+# would break.
+ac_LF_and_DOT=`echo; echo .`
+DEFS=`sed -n -f confdef2opt.sed confdefs.h | tr "$ac_LF_and_DOT" ' .'`
+rm -f confdef2opt.sed
 
-# Without the "./", some shells look in PATH for config.status.
 : ${CONFIG_STATUS=./config.status}
-
-echo creating $CONFIG_STATUS
-rm -f $CONFIG_STATUS
-cat > $CONFIG_STATUS <<EOF
-#! /bin/sh
+ac_clean_files_save=$ac_clean_files
+ac_clean_files="$ac_clean_files $CONFIG_STATUS"
+{ echo "$as_me:2880: creating $CONFIG_STATUS" >&5
+echo "$as_me: creating $CONFIG_STATUS" >&6;}
+cat >$CONFIG_STATUS <<_ACEOF
+#! $SHELL
 # Generated automatically by configure.
 # Run this file to recreate the current configuration.
-# This directory was configured as follows,
-# on host `(hostname || uname -n) 2>/dev/null | sed 1q`:
-#
-# $0 $ac_configure_args
-#
 # Compiler output produced by configure, useful for debugging
-# configure, is in ./config.log if it exists.
+# configure, is in config.log if it exists.
 
-ac_cs_usage="Usage: $CONFIG_STATUS [--recheck] [--version] [--help]"
-for ac_option
+debug=false
+SHELL=\${CONFIG_SHELL-$SHELL}
+ac_cs_invocation="\$0 \$@"
+
+_ACEOF
+
+cat >>$CONFIG_STATUS <<\_ACEOF
+# Be Bourne compatible
+if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then
+  emulate sh
+  NULLCMD=:
+elif test -n "${BASH_VERSION+set}" && (set -o posix) >/dev/null 2>&1; then
+  set -o posix
+fi
+
+# Name of the executable.
+as_me=`echo "$0" |sed 's,.*[\\/],,'`
+
+if expr a : '\(a\)' >/dev/null 2>&1; then
+  as_expr=expr
+else
+  as_expr=false
+fi
+
+rm -f conf$$ conf$$.exe conf$$.file
+echo >conf$$.file
+if ln -s conf$$.file conf$$ 2>/dev/null; then
+  # We could just check for DJGPP; but this test a) works b) is more generic
+  # and c) will remain valid once DJGPP supports symlinks (DJGPP 2.04).
+  if test -f conf$$.exe; then
+    # Don't use ln at all; we don't have any links
+    as_ln_s='cp -p'
+  else
+    as_ln_s='ln -s'
+  fi
+elif ln conf$$.file conf$$ 2>/dev/null; then
+  as_ln_s=ln
+else
+  as_ln_s='cp -p'
+fi
+rm -f conf$$ conf$$.exe conf$$.file
+
+as_executable_p="test -f"
+
+# Support unset when possible.
+if (FOO=FOO; unset FOO) >/dev/null 2>&1; then
+  as_unset=unset
+else
+  as_unset=false
+fi
+
+# NLS nuisances.
+$as_unset LANG || test "${LANG+set}" != set || { LANG=C; export LANG; }
+$as_unset LC_ALL || test "${LC_ALL+set}" != set || { LC_ALL=C; export LC_ALL; }
+$as_unset LC_TIME || test "${LC_TIME+set}" != set || { LC_TIME=C; export LC_TIME; }
+$as_unset LC_CTYPE || test "${LC_CTYPE+set}" != set || { LC_CTYPE=C; export LC_CTYPE; }
+$as_unset LANGUAGE || test "${LANGUAGE+set}" != set || { LANGUAGE=C; export LANGUAGE; }
+$as_unset LC_COLLATE || test "${LC_COLLATE+set}" != set || { LC_COLLATE=C; export LC_COLLATE; }
+$as_unset LC_NUMERIC || test "${LC_NUMERIC+set}" != set || { LC_NUMERIC=C; export LC_NUMERIC; }
+$as_unset LC_MESSAGES || test "${LC_MESSAGES+set}" != set || { LC_MESSAGES=C; export LC_MESSAGES; }
+
+# IFS
+# We need space, tab and new line, in precisely that order.
+as_nl='
+'
+IFS=" 	$as_nl"
+
+# CDPATH.
+$as_unset CDPATH || test "${CDPATH+set}" != set || { CDPATH=:; export CDPATH; }
+
+exec 6>&1
+
+_ACEOF
+
+# Files that config.status was made for.
+if test -n "$ac_config_files"; then
+  echo "config_files=\"$ac_config_files\"" >>$CONFIG_STATUS
+fi
+
+if test -n "$ac_config_headers"; then
+  echo "config_headers=\"$ac_config_headers\"" >>$CONFIG_STATUS
+fi
+
+if test -n "$ac_config_links"; then
+  echo "config_links=\"$ac_config_links\"" >>$CONFIG_STATUS
+fi
+
+if test -n "$ac_config_commands"; then
+  echo "config_commands=\"$ac_config_commands\"" >>$CONFIG_STATUS
+fi
+
+cat >>$CONFIG_STATUS <<\EOF
+
+ac_cs_usage="\
+\`$as_me' instantiates files from templates according to the
+current configuration.
+
+Usage: $0 [OPTIONS] [FILE]...
+
+  -h, --help       print this help, then exit
+  -V, --version    print version number, then exit
+  -d, --debug      don't remove temporary files
+      --recheck    update $as_me by reconfiguring in the same conditions
+  --file=FILE[:TEMPLATE]
+                   instantiate the configuration file FILE
+
+Configuration files:
+$config_files
+
+Report bugs to <bug-autoconf at gnu.org>."
+EOF
+
+cat >>$CONFIG_STATUS <<EOF
+ac_cs_version="\\
+config.status
+configured by $0, generated by GNU Autoconf 2.52,
+  with options \\"`echo "$ac_configure_args" | sed 's/[\\""\`\$]/\\\\&/g'`\\"
+
+Copyright 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001
+Free Software Foundation, Inc.
+This config.status script is free software; the Free Software Foundation
+gives unlimited permission to copy, distribute and modify it."
+srcdir=$srcdir
+EOF
+
+cat >>$CONFIG_STATUS <<\EOF
+# If no file are specified by the user, then we need to provide default
+# value.  By we need to know if files were specified by the user.
+ac_need_defaults=:
+while test $# != 0
 do
-  case "\$ac_option" in
+  case $1 in
+  --*=*)
+    ac_option=`expr "x$1" : 'x\([^=]*\)='`
+    ac_optarg=`expr "x$1" : 'x[^=]*=\(.*\)'`
+    shift
+    set dummy "$ac_option" "$ac_optarg" ${1+"$@"}
+    shift
+    ;;
+  -*);;
+  *) # This is not an option, so the user has probably given explicit
+     # arguments.
+     ac_need_defaults=false;;
+  esac
+
+  case $1 in
+  # Handling of the options.
+EOF
+cat >>$CONFIG_STATUS <<EOF
   -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r)
-    echo "running \${CONFIG_SHELL-/bin/sh} $0 $ac_configure_args --no-create --no-recursion"
-    exec \${CONFIG_SHELL-/bin/sh} $0 $ac_configure_args --no-create --no-recursion ;;
-  -version | --version | --versio | --versi | --vers | --ver | --ve | --v)
-    echo "$CONFIG_STATUS generated by autoconf version 2.13"
-    exit 0 ;;
-  -help | --help | --hel | --he | --h)
-    echo "\$ac_cs_usage"; exit 0 ;;
-  *) echo "\$ac_cs_usage"; exit 1 ;;
+    echo "running $SHELL $0 " $ac_configure_args " --no-create --no-recursion"
+    exec $SHELL $0 $ac_configure_args --no-create --no-recursion ;;
+EOF
+cat >>$CONFIG_STATUS <<\EOF
+  --version | --vers* | -V )
+    echo "$ac_cs_version"; exit 0 ;;
+  --he | --h)
+    # Conflict between --help and --header
+    { { echo "$as_me:3047: error: ambiguous option: $1
+Try \`$0 --help' for more information." >&5
+echo "$as_me: error: ambiguous option: $1
+Try \`$0 --help' for more information." >&2;}
+   { (exit 1); exit 1; }; };;
+  --help | --hel | -h )
+    echo "$ac_cs_usage"; exit 0 ;;
+  --debug | --d* | -d )
+    debug=: ;;
+  --file | --fil | --fi | --f )
+    shift
+    CONFIG_FILES="$CONFIG_FILES $1"
+    ac_need_defaults=false;;
+  --header | --heade | --head | --hea )
+    shift
+    CONFIG_HEADERS="$CONFIG_HEADERS $1"
+    ac_need_defaults=false;;
+
+  # This is an error.
+  -*) { { echo "$as_me:3066: error: unrecognized option: $1
+Try \`$0 --help' for more information." >&5
+echo "$as_me: error: unrecognized option: $1
+Try \`$0 --help' for more information." >&2;}
+   { (exit 1); exit 1; }; } ;;
+
+  *) ac_config_targets="$ac_config_targets $1" ;;
+
   esac
+  shift
 done
 
-ac_given_srcdir=$srcdir
+exec 5>>config.log
+cat >&5 << _ACEOF
 
-trap 'rm -fr `echo "Makefile
-	  config/PerlHead1
-	  config/PerlHead2
-	  lib/Makefile
-	  packages/Makefile
-	  src/Makefile
-	  src/orca.pl
-	  $ORCALLATOR_OUTPUT
-	  docs/Makefile
-	  contrib/Makefile
-	  contrib/rotate_orca_graphs/Makefile
-	  contrib/rotate_orca_graphs/rotate_orca_graphs.sh
-	  contrib/orcaservices/Makefile
-	  contrib/orcaservices/orcaservices.cfg
-	  contrib/orcaservices/orcaservices.pl
-	  contrib/orcaservices/orcaservices_running.pl
-	  contrib/orcaservices/restart_orcaservices.sh
-	  contrib/orcaservices/start_orcaservices.sh
-	  contrib/orcaservices/stop_orcaservices.sh
-	  contrib/orcaservices/S99orcaservices.sh" | sed "s/:[^ ]*//g"` conftest*; exit 1' 1 2 15
-EOF
-cat >> $CONFIG_STATUS <<EOF
-
-# Protect against being on the right side of a sed subst in config.status.
-sed 's/%@/@@/; s/@%/@@/; s/%g\$/@g/; /@g\$/s/[\\\\&%]/\\\\&/g;
- s/@@/%@/; s/@@/@%/; s/@g\$/%g/' > conftest.subs <<\\CEOF
-$ac_vpsub
-$extrasub
-s%@SHELL@%$SHELL%g
-s%@CFLAGS@%$CFLAGS%g
-s%@CPPFLAGS@%$CPPFLAGS%g
-s%@CXXFLAGS@%$CXXFLAGS%g
-s%@FFLAGS@%$FFLAGS%g
-s%@DEFS@%$DEFS%g
-s%@LDFLAGS@%$LDFLAGS%g
-s%@LIBS@%$LIBS%g
-s%@exec_prefix@%$exec_prefix%g
-s%@prefix@%$prefix%g
-s%@program_transform_name@%$program_transform_name%g
-s%@bindir@%$bindir%g
-s%@sbindir@%$sbindir%g
-s%@libexecdir@%$libexecdir%g
-s%@datadir@%$datadir%g
-s%@sysconfdir@%$sysconfdir%g
-s%@sharedstatedir@%$sharedstatedir%g
-s%@localstatedir@%$localstatedir%g
-s%@libdir@%$libdir%g
-s%@includedir@%$includedir%g
-s%@oldincludedir@%$oldincludedir%g
-s%@infodir@%$infodir%g
-s%@mandir@%$mandir%g
-s%@host@%$host%g
-s%@host_alias@%$host_alias%g
-s%@host_cpu@%$host_cpu%g
-s%@host_vendor@%$host_vendor%g
-s%@host_os@%$host_os%g
-s%@target@%$target%g
-s%@target_alias@%$target_alias%g
-s%@target_cpu@%$target_cpu%g
-s%@target_vendor@%$target_vendor%g
-s%@target_os@%$target_os%g
-s%@build@%$build%g
-s%@build_alias@%$build_alias%g
-s%@build_cpu@%$build_cpu%g
-s%@build_vendor@%$build_vendor%g
-s%@build_os@%$build_os%g
-s%@ORCA_CONFIGURE_COMMAND_LINE@%$ORCA_CONFIGURE_COMMAND_LINE%g
-s%@RRD_CONFIGURE_COMMAND_LINE@%$RRD_CONFIGURE_COMMAND_LINE%g
-s%@COMPRESS_ZLIB_DIR@%$COMPRESS_ZLIB_DIR%g
-s%@DATA_DUMPER_DIR@%$DATA_DUMPER_DIR%g
-s%@DATE_PARSE_DIR@%$DATE_PARSE_DIR%g
-s%@DIGEST_MD5_DIR@%$DIGEST_MD5_DIR%g
-s%@MATH_INTERPOLATE_DIR@%$MATH_INTERPOLATE_DIR%g
-s%@RRDTOOL_DIR@%$RRDTOOL_DIR%g
-s%@STORABLE_DIR@%$STORABLE_DIR%g
-s%@TIME_HIRES_DIR@%$TIME_HIRES_DIR%g
-s%@COMPRESS_ZLIB_VER@%$COMPRESS_ZLIB_VER%g
-s%@DATA_DUMPER_VER@%$DATA_DUMPER_VER%g
-s%@DATE_PARSE_VER@%$DATE_PARSE_VER%g
-s%@DIGEST_MD5_VER@%$DIGEST_MD5_VER%g
-s%@MATH_INTERPOLATE_VER@%$MATH_INTERPOLATE_VER%g
-s%@RRDTOOL_VER@%$RRDTOOL_VER%g
-s%@STORABLE_VER@%$STORABLE_VER%g
-s%@TIME_HIRES_VER@%$TIME_HIRES_VER%g
-s%@RRD_DIR@%$RRD_DIR%g
-s%@HTML_DIR@%$HTML_DIR%g
-s%@ORCALLATOR_DIR@%$ORCALLATOR_DIR%g
-s%@WATCH_WEB@%$WATCH_WEB%g
-s%@WEB_LOG@%$WEB_LOG%g
-s%@CC@%$CC%g
-s%@SET_MAKE@%$SET_MAKE%g
-s%@BZIP2@%$BZIP2%g
-s%@BUNZIP2@%$BUNZIP2%g
-s%@COMPRESS@%$COMPRESS%g
-s%@CUT@%$CUT%g
-s%@EXPR@%$EXPR%g
-s%@TAR@%$TAR%g
-s%@GZIP@%$GZIP%g
-s%@GUNZIP@%$GUNZIP%g
-s%@AWK@%$AWK%g
-s%@PERL@%$PERL%g
-s%@PERL_HEAD@%$PERL_HEAD%g
-s%@PS@%$PS%g
-s%@PS_SELF@%$PS_SELF%g
-s%@SE@%$SE%g
-s%@UNAME@%$UNAME%g
-s%@UNCOMPRESS@%$UNCOMPRESS%g
-s%@COMPRESSOR@%$COMPRESSOR%g
-s%@UNCOMPRESSOR_PIPE@%$UNCOMPRESSOR_PIPE%g
-s%@ORCALLATOR_SUBDIR@%$ORCALLATOR_SUBDIR%g
-s%@INSTALL_LIB_RRDTOOL@%$INSTALL_LIB_RRDTOOL%g
-s%@MAKE_COMPRESS_ZLIB@%$MAKE_COMPRESS_ZLIB%g
-s%@TEST_COMPRESS_ZLIB@%$TEST_COMPRESS_ZLIB%g
-s%@INSTALL_PERL_COMPRESS_ZLIB@%$INSTALL_PERL_COMPRESS_ZLIB%g
-s%@CLEAN_COMPRESS_ZLIB@%$CLEAN_COMPRESS_ZLIB%g
-s%@DISTCLEAN_COMPRESS_ZLIB@%$DISTCLEAN_COMPRESS_ZLIB%g
-s%@MAKE_DATA_DUMPER@%$MAKE_DATA_DUMPER%g
-s%@TEST_DATA_DUMPER@%$TEST_DATA_DUMPER%g
-s%@INSTALL_PERL_DATA_DUMPER@%$INSTALL_PERL_DATA_DUMPER%g
-s%@CLEAN_DATA_DUMPER@%$CLEAN_DATA_DUMPER%g
-s%@DISTCLEAN_DATA_DUMPER@%$DISTCLEAN_DATA_DUMPER%g
-s%@MAKE_DATE_PARSE@%$MAKE_DATE_PARSE%g
-s%@TEST_DATE_PARSE@%$TEST_DATE_PARSE%g
-s%@INSTALL_PERL_DATE_PARSE@%$INSTALL_PERL_DATE_PARSE%g
-s%@CLEAN_DATE_PARSE@%$CLEAN_DATE_PARSE%g
-s%@DISTCLEAN_DATE_PARSE@%$DISTCLEAN_DATE_PARSE%g
-s%@MAKE_DIGEST_MD5@%$MAKE_DIGEST_MD5%g
-s%@TEST_DIGEST_MD5@%$TEST_DIGEST_MD5%g
-s%@INSTALL_PERL_DIGEST_MD5@%$INSTALL_PERL_DIGEST_MD5%g
-s%@CLEAN_DIGEST_MD5@%$CLEAN_DIGEST_MD5%g
-s%@DISTCLEAN_DIGEST_MD5@%$DISTCLEAN_DIGEST_MD5%g
-s%@MAKE_MATH_INTERPOLATE@%$MAKE_MATH_INTERPOLATE%g
-s%@TEST_MATH_INTERPOLATE@%$TEST_MATH_INTERPOLATE%g
-s%@INSTALL_PERL_MATH_INTERPOLATE@%$INSTALL_PERL_MATH_INTERPOLATE%g
-s%@CLEAN_MATH_INTERPOLATE@%$CLEAN_MATH_INTERPOLATE%g
-s%@DISTCLEAN_MATH_INTERPOLATE@%$DISTCLEAN_MATH_INTERPOLATE%g
-s%@MAKE_RRDTOOL@%$MAKE_RRDTOOL%g
-s%@TEST_RRDTOOL@%$TEST_RRDTOOL%g
-s%@INSTALL_PERL_RRDTOOL@%$INSTALL_PERL_RRDTOOL%g
-s%@CLEAN_RRDTOOL@%$CLEAN_RRDTOOL%g
-s%@DISTCLEAN_RRDTOOL@%$DISTCLEAN_RRDTOOL%g
-s%@MAKE_STORABLE@%$MAKE_STORABLE%g
-s%@TEST_STORABLE@%$TEST_STORABLE%g
-s%@INSTALL_PERL_STORABLE@%$INSTALL_PERL_STORABLE%g
-s%@CLEAN_STORABLE@%$CLEAN_STORABLE%g
-s%@DISTCLEAN_STORABLE@%$DISTCLEAN_STORABLE%g
-s%@MAKE_TIME_HIRES@%$MAKE_TIME_HIRES%g
-s%@TEST_TIME_HIRES@%$TEST_TIME_HIRES%g
-s%@INSTALL_PERL_TIME_HIRES@%$INSTALL_PERL_TIME_HIRES%g
-s%@CLEAN_TIME_HIRES@%$CLEAN_TIME_HIRES%g
-s%@DISTCLEAN_TIME_HIRES@%$DISTCLEAN_TIME_HIRES%g
-s%@PERL_USE_TIME_HIRES@%$PERL_USE_TIME_HIRES%g
-s%@INSTALL@%$INSTALL%g
-s%@MKDIR@%$MKDIR%g
+## ----------------------- ##
+## Running config.status.  ##
+## ----------------------- ##
+
+This file was extended by $as_me 2.52, executed with
+  CONFIG_FILES    = $CONFIG_FILES
+  CONFIG_HEADERS  = $CONFIG_HEADERS
+  CONFIG_LINKS    = $CONFIG_LINKS
+  CONFIG_COMMANDS = $CONFIG_COMMANDS
+  > $ac_cs_invocation
+on `(hostname || uname -n) 2>/dev/null | sed 1q`
 
-CEOF
+_ACEOF
 EOF
 
-cat >> $CONFIG_STATUS <<\EOF
+cat >>$CONFIG_STATUS <<\EOF
+for ac_config_target in $ac_config_targets
+do
+  case "$ac_config_target" in
+  # Handling of arguments.
+  "Makefile" ) CONFIG_FILES="$CONFIG_FILES Makefile" ;;
+  "config/PerlHead1" ) CONFIG_FILES="$CONFIG_FILES config/PerlHead1" ;;
+  "config/PerlHead2" ) CONFIG_FILES="$CONFIG_FILES config/PerlHead2" ;;
+  "lib/Makefile" ) CONFIG_FILES="$CONFIG_FILES lib/Makefile" ;;
+  "packages/Makefile" ) CONFIG_FILES="$CONFIG_FILES packages/Makefile" ;;
+  "src/Makefile" ) CONFIG_FILES="$CONFIG_FILES src/Makefile" ;;
+  "src/orca.pl" ) CONFIG_FILES="$CONFIG_FILES src/orca.pl" ;;
+  "$ORCALLATOR_OUTPUT" ) CONFIG_FILES="$CONFIG_FILES $ORCALLATOR_OUTPUT" ;;
+  "docs/Makefile" ) CONFIG_FILES="$CONFIG_FILES docs/Makefile" ;;
+  "contrib/Makefile" ) CONFIG_FILES="$CONFIG_FILES contrib/Makefile" ;;
+  "contrib/rotate_orca_graphs/Makefile" ) CONFIG_FILES="$CONFIG_FILES contrib/rotate_orca_graphs/Makefile" ;;
+  "contrib/rotate_orca_graphs/rotate_orca_graphs.sh" ) CONFIG_FILES="$CONFIG_FILES contrib/rotate_orca_graphs/rotate_orca_graphs.sh" ;;
+  "contrib/orcaservices/Makefile" ) CONFIG_FILES="$CONFIG_FILES contrib/orcaservices/Makefile" ;;
+  "contrib/orcaservices/orcaservices.cfg" ) CONFIG_FILES="$CONFIG_FILES contrib/orcaservices/orcaservices.cfg" ;;
+  "contrib/orcaservices/orcaservices.pl" ) CONFIG_FILES="$CONFIG_FILES contrib/orcaservices/orcaservices.pl" ;;
+  "contrib/orcaservices/orcaservices_running.pl" ) CONFIG_FILES="$CONFIG_FILES contrib/orcaservices/orcaservices_running.pl" ;;
+  "contrib/orcaservices/restart_orcaservices.sh" ) CONFIG_FILES="$CONFIG_FILES contrib/orcaservices/restart_orcaservices.sh" ;;
+  "contrib/orcaservices/start_orcaservices.sh" ) CONFIG_FILES="$CONFIG_FILES contrib/orcaservices/start_orcaservices.sh" ;;
+  "contrib/orcaservices/stop_orcaservices.sh" ) CONFIG_FILES="$CONFIG_FILES contrib/orcaservices/stop_orcaservices.sh" ;;
+  "contrib/orcaservices/S99orcaservices.sh" ) CONFIG_FILES="$CONFIG_FILES contrib/orcaservices/S99orcaservices.sh" ;;
+  *) { { echo "$as_me:3121: error: invalid argument: $ac_config_target" >&5
+echo "$as_me: error: invalid argument: $ac_config_target" >&2;}
+   { (exit 1); exit 1; }; };;
+  esac
+done
 
-# Split the substitutions into bite-sized pieces for seds with
-# small command number limits, like on Digital OSF/1 and HP-UX.
-ac_max_sed_cmds=90 # Maximum number of lines to put in a sed script.
-ac_file=1 # Number of current file.
-ac_beg=1 # First line for current file.
-ac_end=$ac_max_sed_cmds # Line after last line for current file.
-ac_more_lines=:
-ac_sed_cmds=""
-while $ac_more_lines; do
-  if test $ac_beg -gt 1; then
-    sed "1,${ac_beg}d; ${ac_end}q" conftest.subs > conftest.s$ac_file
-  else
-    sed "${ac_end}q" conftest.subs > conftest.s$ac_file
-  fi
-  if test ! -s conftest.s$ac_file; then
-    ac_more_lines=false
-    rm -f conftest.s$ac_file
-  else
-    if test -z "$ac_sed_cmds"; then
-      ac_sed_cmds="sed -f conftest.s$ac_file"
+# If the user did not use the arguments to specify the items to instantiate,
+# then the envvar interface is used.  Set only those that are not.
+# We use the long form for the default assignment because of an extremely
+# bizarre bug on SunOS 4.1.3.
+if $ac_need_defaults; then
+  test "${CONFIG_FILES+set}" = set || CONFIG_FILES=$config_files
+fi
+
+# Create a temporary directory, and hook for its removal unless debugging.
+$debug ||
+{
+  trap 'exit_status=$?; rm -rf $tmp && exit $exit_status' 0
+  trap '{ (exit 1); exit 1; }' 1 2 13 15
+}
+
+# Create a (secure) tmp directory for tmp files.
+: ${TMPDIR=/tmp}
+{
+  tmp=`(umask 077 && mktemp -d -q "$TMPDIR/csXXXXXX") 2>/dev/null` &&
+  test -n "$tmp" && test -d "$tmp"
+}  ||
+{
+  tmp=$TMPDIR/cs$$-$RANDOM
+  (umask 077 && mkdir $tmp)
+} ||
+{
+   echo "$me: cannot create a temporary directory in $TMPDIR" >&2
+   { (exit 1); exit 1; }
+}
+
+EOF
+
+cat >>$CONFIG_STATUS <<EOF
+
+#
+# CONFIG_FILES section.
+#
+
+# No need to generate the scripts if there are no CONFIG_FILES.
+# This happens for instance when ./config.status config.h
+if test -n "\$CONFIG_FILES"; then
+  # Protect against being on the right side of a sed subst in config.status.
+  sed 's/,@/@@/; s/@,/@@/; s/,;t t\$/@;t t/; /@;t t\$/s/[\\\\&,]/\\\\&/g;
+   s/@@/,@/; s/@@/@,/; s/@;t t\$/,;t t/' >\$tmp/subs.sed <<\\CEOF
+s, at SHELL@,$SHELL,;t t
+s, at exec_prefix@,$exec_prefix,;t t
+s, at prefix@,$prefix,;t t
+s, at program_transform_name@,$program_transform_name,;t t
+s, at bindir@,$bindir,;t t
+s, at sbindir@,$sbindir,;t t
+s, at libexecdir@,$libexecdir,;t t
+s, at datadir@,$datadir,;t t
+s, at sysconfdir@,$sysconfdir,;t t
+s, at sharedstatedir@,$sharedstatedir,;t t
+s, at localstatedir@,$localstatedir,;t t
+s, at libdir@,$libdir,;t t
+s, at includedir@,$includedir,;t t
+s, at oldincludedir@,$oldincludedir,;t t
+s, at infodir@,$infodir,;t t
+s, at mandir@,$mandir,;t t
+s, at PACKAGE_NAME@,$PACKAGE_NAME,;t t
+s, at PACKAGE_TARNAME@,$PACKAGE_TARNAME,;t t
+s, at PACKAGE_VERSION@,$PACKAGE_VERSION,;t t
+s, at PACKAGE_STRING@,$PACKAGE_STRING,;t t
+s, at PACKAGE_BUGREPORT@,$PACKAGE_BUGREPORT,;t t
+s, at build_alias@,$build_alias,;t t
+s, at host_alias@,$host_alias,;t t
+s, at target_alias@,$target_alias,;t t
+s, at ECHO_C@,$ECHO_C,;t t
+s, at ECHO_N@,$ECHO_N,;t t
+s, at ECHO_T@,$ECHO_T,;t t
+s, at PATH_SEPARATOR@,$PATH_SEPARATOR,;t t
+s, at DEFS@,$DEFS,;t t
+s, at LIBS@,$LIBS,;t t
+s, at build@,$build,;t t
+s, at build_cpu@,$build_cpu,;t t
+s, at build_vendor@,$build_vendor,;t t
+s, at build_os@,$build_os,;t t
+s, at host@,$host,;t t
+s, at host_cpu@,$host_cpu,;t t
+s, at host_vendor@,$host_vendor,;t t
+s, at host_os@,$host_os,;t t
+s, at target@,$target,;t t
+s, at target_cpu@,$target_cpu,;t t
+s, at target_vendor@,$target_vendor,;t t
+s, at target_os@,$target_os,;t t
+s, at ORCA_CONFIGURE_COMMAND_LINE@,$ORCA_CONFIGURE_COMMAND_LINE,;t t
+s, at RRD_CONFIGURE_COMMAND_LINE@,$RRD_CONFIGURE_COMMAND_LINE,;t t
+s, at COMPRESS_ZLIB_DIR@,$COMPRESS_ZLIB_DIR,;t t
+s, at DATA_DUMPER_DIR@,$DATA_DUMPER_DIR,;t t
+s, at DATE_PARSE_DIR@,$DATE_PARSE_DIR,;t t
+s, at DIGEST_MD5_DIR@,$DIGEST_MD5_DIR,;t t
+s, at MATH_INTERPOLATE_DIR@,$MATH_INTERPOLATE_DIR,;t t
+s, at RRDTOOL_DIR@,$RRDTOOL_DIR,;t t
+s, at STORABLE_DIR@,$STORABLE_DIR,;t t
+s, at TIME_HIRES_DIR@,$TIME_HIRES_DIR,;t t
+s, at COMPRESS_ZLIB_VER@,$COMPRESS_ZLIB_VER,;t t
+s, at DATA_DUMPER_VER@,$DATA_DUMPER_VER,;t t
+s, at DATE_PARSE_VER@,$DATE_PARSE_VER,;t t
+s, at DIGEST_MD5_VER@,$DIGEST_MD5_VER,;t t
+s, at MATH_INTERPOLATE_VER@,$MATH_INTERPOLATE_VER,;t t
+s, at RRDTOOL_VER@,$RRDTOOL_VER,;t t
+s, at STORABLE_VER@,$STORABLE_VER,;t t
+s, at TIME_HIRES_VER@,$TIME_HIRES_VER,;t t
+s, at RRD_DIR@,$RRD_DIR,;t t
+s, at HTML_DIR@,$HTML_DIR,;t t
+s, at ORCALLATOR_DIR@,$ORCALLATOR_DIR,;t t
+s, at WATCH_WEB@,$WATCH_WEB,;t t
+s, at WEB_LOG@,$WEB_LOG,;t t
+s, at CC@,$CC,;t t
+s, at CFLAGS@,$CFLAGS,;t t
+s, at LDFLAGS@,$LDFLAGS,;t t
+s, at CPPFLAGS@,$CPPFLAGS,;t t
+s, at ac_ct_CC@,$ac_ct_CC,;t t
+s, at EXEEXT@,$EXEEXT,;t t
+s, at OBJEXT@,$OBJEXT,;t t
+s, at SET_MAKE@,$SET_MAKE,;t t
+s, at BZIP2@,$BZIP2,;t t
+s, at BUNZIP2@,$BUNZIP2,;t t
+s, at COMPRESS@,$COMPRESS,;t t
+s, at CUT@,$CUT,;t t
+s, at EXPR@,$EXPR,;t t
+s, at TAR@,$TAR,;t t
+s, at GZIP@,$GZIP,;t t
+s, at GUNZIP@,$GUNZIP,;t t
+s, at AWK@,$AWK,;t t
+s, at PERL@,$PERL,;t t
+s, at PERL_HEAD@,$PERL_HEAD,;t t
+s, at PS@,$PS,;t t
+s, at PS_SELF@,$PS_SELF,;t t
+s, at SE@,$SE,;t t
+s, at UNAME@,$UNAME,;t t
+s, at UNCOMPRESS@,$UNCOMPRESS,;t t
+s, at COMPRESSOR@,$COMPRESSOR,;t t
+s, at UNCOMPRESSOR_PIPE@,$UNCOMPRESSOR_PIPE,;t t
+s, at ORCALLATOR_SUBDIR@,$ORCALLATOR_SUBDIR,;t t
+s, at INSTALL_LIB_RRDTOOL@,$INSTALL_LIB_RRDTOOL,;t t
+s, at MAKE_COMPRESS_ZLIB@,$MAKE_COMPRESS_ZLIB,;t t
+s, at TEST_COMPRESS_ZLIB@,$TEST_COMPRESS_ZLIB,;t t
+s, at INSTALL_PERL_COMPRESS_ZLIB@,$INSTALL_PERL_COMPRESS_ZLIB,;t t
+s, at CLEAN_COMPRESS_ZLIB@,$CLEAN_COMPRESS_ZLIB,;t t
+s, at DISTCLEAN_COMPRESS_ZLIB@,$DISTCLEAN_COMPRESS_ZLIB,;t t
+s, at MAKE_DATA_DUMPER@,$MAKE_DATA_DUMPER,;t t
+s, at TEST_DATA_DUMPER@,$TEST_DATA_DUMPER,;t t
+s, at INSTALL_PERL_DATA_DUMPER@,$INSTALL_PERL_DATA_DUMPER,;t t
+s, at CLEAN_DATA_DUMPER@,$CLEAN_DATA_DUMPER,;t t
+s, at DISTCLEAN_DATA_DUMPER@,$DISTCLEAN_DATA_DUMPER,;t t
+s, at MAKE_DATE_PARSE@,$MAKE_DATE_PARSE,;t t
+s, at TEST_DATE_PARSE@,$TEST_DATE_PARSE,;t t
+s, at INSTALL_PERL_DATE_PARSE@,$INSTALL_PERL_DATE_PARSE,;t t
+s, at CLEAN_DATE_PARSE@,$CLEAN_DATE_PARSE,;t t
+s, at DISTCLEAN_DATE_PARSE@,$DISTCLEAN_DATE_PARSE,;t t
+s, at MAKE_DIGEST_MD5@,$MAKE_DIGEST_MD5,;t t
+s, at TEST_DIGEST_MD5@,$TEST_DIGEST_MD5,;t t
+s, at INSTALL_PERL_DIGEST_MD5@,$INSTALL_PERL_DIGEST_MD5,;t t
+s, at CLEAN_DIGEST_MD5@,$CLEAN_DIGEST_MD5,;t t
+s, at DISTCLEAN_DIGEST_MD5@,$DISTCLEAN_DIGEST_MD5,;t t
+s, at MAKE_MATH_INTERPOLATE@,$MAKE_MATH_INTERPOLATE,;t t
+s, at TEST_MATH_INTERPOLATE@,$TEST_MATH_INTERPOLATE,;t t
+s, at INSTALL_PERL_MATH_INTERPOLATE@,$INSTALL_PERL_MATH_INTERPOLATE,;t t
+s, at CLEAN_MATH_INTERPOLATE@,$CLEAN_MATH_INTERPOLATE,;t t
+s, at DISTCLEAN_MATH_INTERPOLATE@,$DISTCLEAN_MATH_INTERPOLATE,;t t
+s, at MAKE_RRDTOOL@,$MAKE_RRDTOOL,;t t
+s, at TEST_RRDTOOL@,$TEST_RRDTOOL,;t t
+s, at INSTALL_PERL_RRDTOOL@,$INSTALL_PERL_RRDTOOL,;t t
+s, at CLEAN_RRDTOOL@,$CLEAN_RRDTOOL,;t t
+s, at DISTCLEAN_RRDTOOL@,$DISTCLEAN_RRDTOOL,;t t
+s, at MAKE_STORABLE@,$MAKE_STORABLE,;t t
+s, at TEST_STORABLE@,$TEST_STORABLE,;t t
+s, at INSTALL_PERL_STORABLE@,$INSTALL_PERL_STORABLE,;t t
+s, at CLEAN_STORABLE@,$CLEAN_STORABLE,;t t
+s, at DISTCLEAN_STORABLE@,$DISTCLEAN_STORABLE,;t t
+s, at MAKE_TIME_HIRES@,$MAKE_TIME_HIRES,;t t
+s, at TEST_TIME_HIRES@,$TEST_TIME_HIRES,;t t
+s, at INSTALL_PERL_TIME_HIRES@,$INSTALL_PERL_TIME_HIRES,;t t
+s, at CLEAN_TIME_HIRES@,$CLEAN_TIME_HIRES,;t t
+s, at DISTCLEAN_TIME_HIRES@,$DISTCLEAN_TIME_HIRES,;t t
+s, at PERL_USE_TIME_HIRES@,$PERL_USE_TIME_HIRES,;t t
+s, at INSTALL@,$INSTALL,;t t
+s, at MKDIR@,$MKDIR,;t t
+CEOF
+
+EOF
+
+  cat >>$CONFIG_STATUS <<\EOF
+  # Split the substitutions into bite-sized pieces for seds with
+  # small command number limits, like on Digital OSF/1 and HP-UX.
+  ac_max_sed_lines=48
+  ac_sed_frag=1 # Number of current file.
+  ac_beg=1 # First line for current file.
+  ac_end=$ac_max_sed_lines # Line after last line for current file.
+  ac_more_lines=:
+  ac_sed_cmds=
+  while $ac_more_lines; do
+    if test $ac_beg -gt 1; then
+      sed "1,${ac_beg}d; ${ac_end}q" $tmp/subs.sed >$tmp/subs.frag
     else
-      ac_sed_cmds="$ac_sed_cmds | sed -f conftest.s$ac_file"
+      sed "${ac_end}q" $tmp/subs.sed >$tmp/subs.frag
     fi
-    ac_file=`expr $ac_file + 1`
-    ac_beg=$ac_end
-    ac_end=`expr $ac_end + $ac_max_sed_cmds`
-  fi
-done
-if test -z "$ac_sed_cmds"; then
-  ac_sed_cmds=cat
-fi
-EOF
+    if test ! -s $tmp/subs.frag; then
+      ac_more_lines=false
+    else
+      # The purpose of the label and of the branching condition is to
+      # speed up the sed processing (if there are no `@' at all, there
+      # is no need to browse any of the substitutions).
+      # These are the two extra sed commands mentioned above.
+      (echo ':t
+  /@[a-zA-Z_][a-zA-Z_0-9]*@/!b' && cat $tmp/subs.frag) >$tmp/subs-$ac_sed_frag.sed
+      if test -z "$ac_sed_cmds"; then
+  	ac_sed_cmds="sed -f $tmp/subs-$ac_sed_frag.sed"
+      else
+  	ac_sed_cmds="$ac_sed_cmds | sed -f $tmp/subs-$ac_sed_frag.sed"
+      fi
+      ac_sed_frag=`expr $ac_sed_frag + 1`
+      ac_beg=$ac_end
+      ac_end=`expr $ac_end + $ac_max_sed_lines`
+    fi
+  done
+  if test -z "$ac_sed_cmds"; then
+    ac_sed_cmds=cat
+  fi
+fi # test -n "$CONFIG_FILES"
 
-cat >> $CONFIG_STATUS <<EOF
-
-CONFIG_FILES=\${CONFIG_FILES-"Makefile
-	  config/PerlHead1
-	  config/PerlHead2
-	  lib/Makefile
-	  packages/Makefile
-	  src/Makefile
-	  src/orca.pl
-	  $ORCALLATOR_OUTPUT
-	  docs/Makefile
-	  contrib/Makefile
-	  contrib/rotate_orca_graphs/Makefile
-	  contrib/rotate_orca_graphs/rotate_orca_graphs.sh
-	  contrib/orcaservices/Makefile
-	  contrib/orcaservices/orcaservices.cfg
-	  contrib/orcaservices/orcaservices.pl
-	  contrib/orcaservices/orcaservices_running.pl
-	  contrib/orcaservices/restart_orcaservices.sh
-	  contrib/orcaservices/start_orcaservices.sh
-	  contrib/orcaservices/stop_orcaservices.sh
-	  contrib/orcaservices/S99orcaservices.sh"}
 EOF
-cat >> $CONFIG_STATUS <<\EOF
-for ac_file in .. $CONFIG_FILES; do if test "x$ac_file" != x..; then
+cat >>$CONFIG_STATUS <<\EOF
+for ac_file in : $CONFIG_FILES; do test "x$ac_file" = x: && continue
   # Support "outfile[:infile[:infile...]]", defaulting infile="outfile.in".
-  case "$ac_file" in
-  *:*) ac_file_in=`echo "$ac_file"|sed 's%[^:]*:%%'`
-       ac_file=`echo "$ac_file"|sed 's%:.*%%'` ;;
-  *) ac_file_in="${ac_file}.in" ;;
+  case $ac_file in
+  - | *:- | *:-:* ) # input from stdin
+        cat >$tmp/stdin
+        ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'`
+        ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;;
+  *:* ) ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'`
+        ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;;
+  * )   ac_file_in=$ac_file.in ;;
   esac
 
-  # Adjust a relative srcdir, top_srcdir, and INSTALL for subdirectories.
-
-  # Remove last slash and all that follows it.  Not all systems have dirname.
-  ac_dir=`echo $ac_file|sed 's%/[^/][^/]*$%%'`
+  # Compute @srcdir@, @top_srcdir@, and @INSTALL@ for subdirectories.
+  ac_dir=`$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
+         X"$ac_file" : 'X\(//\)[^/]' \| \
+         X"$ac_file" : 'X\(//\)$' \| \
+         X"$ac_file" : 'X\(/\)' \| \
+         .     : '\(.\)' 2>/dev/null ||
+echo X"$ac_file" |
+    sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
+  	  /^X\(\/\/\)[^/].*/{ s//\1/; q; }
+  	  /^X\(\/\/\)$/{ s//\1/; q; }
+  	  /^X\(\/\).*/{ s//\1/; q; }
+  	  s/.*/./; q'`
   if test "$ac_dir" != "$ac_file" && test "$ac_dir" != .; then
-    # The file is in a subdirectory.
-    test ! -d "$ac_dir" && mkdir "$ac_dir"
-    ac_dir_suffix="/`echo $ac_dir|sed 's%^\./%%'`"
+    { case "$ac_dir" in
+  [\\/]* | ?:[\\/]* ) as_incr_dir=;;
+  *)                      as_incr_dir=.;;
+esac
+as_dummy="$ac_dir"
+for as_mkdir_dir in `IFS='/\\'; set X $as_dummy; shift; echo "$@"`; do
+  case $as_mkdir_dir in
+    # Skip DOS drivespec
+    ?:) as_incr_dir=$as_mkdir_dir ;;
+    *)
+      as_incr_dir=$as_incr_dir/$as_mkdir_dir
+      test -d "$as_incr_dir" || mkdir "$as_incr_dir"
+    ;;
+  esac
+done; }
+
+    ac_dir_suffix="/`echo $ac_dir|sed 's,^\./,,'`"
     # A "../" for each directory in $ac_dir_suffix.
-    ac_dots=`echo $ac_dir_suffix|sed 's%/[^/]*%../%g'`
+    ac_dots=`echo "$ac_dir_suffix" | sed 's,/[^/]*,../,g'`
   else
     ac_dir_suffix= ac_dots=
   fi
 
-  case "$ac_given_srcdir" in
-  .)  srcdir=.
-      if test -z "$ac_dots"; then top_srcdir=.
-      else top_srcdir=`echo $ac_dots|sed 's%/$%%'`; fi ;;
-  /*) srcdir="$ac_given_srcdir$ac_dir_suffix"; top_srcdir="$ac_given_srcdir" ;;
+  case $srcdir in
+  .)  ac_srcdir=.
+      if test -z "$ac_dots"; then
+         ac_top_srcdir=.
+      else
+         ac_top_srcdir=`echo $ac_dots | sed 's,/$,,'`
+      fi ;;
+  [\\/]* | ?:[\\/]* )
+      ac_srcdir=$srcdir$ac_dir_suffix;
+      ac_top_srcdir=$srcdir ;;
   *) # Relative path.
-    srcdir="$ac_dots$ac_given_srcdir$ac_dir_suffix"
-    top_srcdir="$ac_dots$ac_given_srcdir" ;;
+    ac_srcdir=$ac_dots$srcdir$ac_dir_suffix
+    ac_top_srcdir=$ac_dots$srcdir ;;
   esac
 
-
-  echo creating "$ac_file"
-  rm -f "$ac_file"
-  configure_input="Generated automatically from `echo $ac_file_in|sed 's%.*/%%'` by configure."
-  case "$ac_file" in
-  *Makefile*) ac_comsub="1i\\
-# $configure_input" ;;
-  *) ac_comsub= ;;
-  esac
-
-  ac_file_inputs=`echo $ac_file_in|sed -e "s%^%$ac_given_srcdir/%" -e "s%:% $ac_given_srcdir/%g"`
-  sed -e "$ac_comsub
-s%@configure_input@%$configure_input%g
-s%@srcdir@%$srcdir%g
-s%@top_srcdir@%$top_srcdir%g
-" $ac_file_inputs | (eval "$ac_sed_cmds") > $ac_file
-fi; done
-rm -f conftest.s*
-
+  if test x"$ac_file" != x-; then
+    { echo "$as_me:3416: creating $ac_file" >&5
+echo "$as_me: creating $ac_file" >&6;}
+    rm -f "$ac_file"
+  fi
+  # Let's still pretend it is `configure' which instantiates (i.e., don't
+  # use $as_me), people would be surprised to read:
+  #    /* config.h.  Generated automatically by config.status.  */
+  configure_input="Generated automatically from `echo $ac_file_in |
+                                                 sed 's,.*/,,'` by configure."
+
+  # First look for the input files in the build tree, otherwise in the
+  # src tree.
+  ac_file_inputs=`IFS=:
+    for f in $ac_file_in; do
+      case $f in
+      -) echo $tmp/stdin ;;
+      [\\/$]*)
+         # Absolute (can't be DOS-style, as IFS=:)
+         test -f "$f" || { { echo "$as_me:3434: error: cannot find input file: $f" >&5
+echo "$as_me: error: cannot find input file: $f" >&2;}
+   { (exit 1); exit 1; }; }
+         echo $f;;
+      *) # Relative
+         if test -f "$f"; then
+           # Build tree
+           echo $f
+         elif test -f "$srcdir/$f"; then
+           # Source tree
+           echo $srcdir/$f
+         else
+           # /dev/null tree
+           { { echo "$as_me:3447: error: cannot find input file: $f" >&5
+echo "$as_me: error: cannot find input file: $f" >&2;}
+   { (exit 1); exit 1; }; }
+         fi;;
+      esac
+    done` || { (exit 1); exit 1; }
+EOF
+cat >>$CONFIG_STATUS <<EOF
+  sed "$ac_vpsub
+$extrasub
 EOF
-cat >> $CONFIG_STATUS <<EOF
+cat >>$CONFIG_STATUS <<\EOF
+:t
+/@[a-zA-Z_][a-zA-Z_0-9]*@/!b
+s, at configure_input@,$configure_input,;t t
+s, at srcdir@,$ac_srcdir,;t t
+s, at top_srcdir@,$ac_top_srcdir,;t t
+" $ac_file_inputs | (eval "$ac_sed_cmds") >$tmp/out
+  rm -f $tmp/stdin
+  if test x"$ac_file" != x-; then
+    mv $tmp/out $ac_file
+  else
+    cat $tmp/out
+    rm -f $tmp/out
+  fi
 
+done
 EOF
-cat >> $CONFIG_STATUS <<\EOF
 
-exit 0
+cat >>$CONFIG_STATUS <<\EOF
+
+{ (exit 0); exit 0; }
 EOF
 chmod +x $CONFIG_STATUS
-rm -fr confdefs* $ac_clean_files
-test "$no_create" = yes || ${CONFIG_SHELL-/bin/sh} $CONFIG_STATUS || exit 1
+ac_clean_files=$ac_clean_files_save
 
+# configure is writing to config.log, and then calls config.status.
+# config.status does its own redirection, appending to config.log.
+# Unfortunately, on DOS this fails, as config.log is still kept open
+# by configure, so config.status won't be able to write to it; its
+# output is simply discarded.  So we exec the FD to /dev/null,
+# effectively closing config.log, so it can be properly (re)opened and
+# appended to by config.status.  When coming back to configure, we
+# need to make the FD available again.
+if test "$no_create" != yes; then
+  ac_cs_success=:
+  exec 5>/dev/null
+  $SHELL $CONFIG_STATUS || ac_cs_success=false
+  exec 5>>config.log
+  # Use ||, not &&, to avoid exiting from the if with $? = 1, which
+  # would make configure fail if this is the last instruction.
+  $ac_cs_success || { (exit 1); exit 1; }
+fi
 
 # Build the RRDtool library if it is needed.
 if test "$borp_cv_perl_rdds" = no; then
@@ -2329,5 +3511,6 @@
 fi
 
 if test -z "$WEB_LOG"; then
-  echo "configure: warning: *** Unless you use a --with-*-log option orcallator will not gather WWW log data." 1>&2
+  { echo "$as_me:3514: WARNING: *** Unless you use a --with-*-log option orcallator will not gather WWW log data." >&5
+echo "$as_me: WARNING: *** Unless you use a --with-*-log option orcallator will not gather WWW log data." >&2;}
 fi

Modified: trunk/orca/configure.in
==============================================================================
--- trunk/orca/configure.in	(original)
+++ trunk/orca/configure.in	Sat Jul 13 22:27:34 2002
@@ -5,6 +5,9 @@
 AC_CONFIG_AUX_DIR(config)
 AC_CANONICAL_SYSTEM
 
+# Minimum Autoconf version required.
+AC_PREREQ(2.13)
+
 # Remember the command line arguments to configure for use when
 # configure is run again.  Also create the command line options for
 # RRD configure.
@@ -28,14 +31,14 @@
 DATA_DUMPER_VER=2.101
 DATE_PARSE_DIR=TimeDate-1.10
 DATE_PARSE_VER=2.20
-DIGEST_MD5_DIR=Digest-MD5-2.13
-DIGEST_MD5_VER=2.13
+DIGEST_MD5_DIR=Digest-MD5-2.16
+DIGEST_MD5_VER=2.16
 MATH_INTERPOLATE_DIR=Math-Interpolate-1.05
 MATH_INTERPOLATE_VER=1.05
 RRDTOOL_DIR=rrdtool-1.0.33
 RRDTOOL_VER=1.000331
-STORABLE_DIR=Storable-1.0.11
-STORABLE_VER=1.011
+STORABLE_DIR=Storable-1.0.13
+STORABLE_VER=1.012
 TIME_HIRES_DIR=Time-HiRes-01.20
 TIME_HIRES_VER=1.20
 
@@ -63,9 +66,6 @@
   AC_MSG_ERROR([*** Cannot find config directory.])
 fi
 
-# Minimum Autoconf version required.
-AC_PREREQ(2.13)
-
 # Define the directories where the source orcallator and RRD data files
 # will be installed.
 AC_ARG_WITH(rrd-dir,
@@ -222,7 +222,7 @@
     AC_MSG_WARN([*** If you know a better PS command than])
     AC_MSG_WARN([***   '$PS_SELF'])
     AC_MSG_WARN([*** to get process information for your host,])
-    AC_MSG_WARN([*** please email the command the the output from])
+    AC_MSG_WARN([*** please email the command and the output from])
     AC_MSG_WARN([*** ./config/config.guess to])
     AC_MSG_WARN([*** orca-developers at yahoogroups.com])
     ;;

Modified: trunk/orca/src/orca.pl.in
==============================================================================
--- trunk/orca/src/orca.pl.in	(original)
+++ trunk/orca/src/orca.pl.in	Sat Jul 13 22:27:34 2002
@@ -904,9 +904,9 @@
         }
       }
 
-      # At this point the HTML files for this set of of images have been
-      # opened.  Now create the summary HTML file that contains only the
-      # images for a particular plot for a particular subgroup.
+      # At this point the HTML files for this set of images have been
+      # opened.  Now create the summary HTML file that contains only
+      # the images for a particular plot for a particular subgroup.
       my $with_subgroup_name   = name_to_fsname($image->name, 5);
       my $legend_with_subgroup = replace_subgroup_name($image->plot_ref->{title},
                                                        $image->subgroup_name);
@@ -1185,11 +1185,11 @@
 record and display hourly, daily, monthly, and yearly data, such as
 MRTG and Cricket.  To see these other tools, examine
 
-  http://ee-staff.ethz.ch/~oetiker/webtools/mrtg/mrtg.html
+  http://people.ee.ethz.ch/~oetiker/webtools/mrtg/mrtg.html
 
 and
 
-  http://www.munitions.com/~jra/cricket/
+  http://cricket.sourceforge.net/
 
 =head1 INDEX
 
@@ -1223,7 +1223,7 @@
 
 A static example of Orca is at
 
-  http://www.gps.caltech.edu/~blair/orca/orca-example/
+  http://www.orcaware.com/orca/orca-example/
 
 Please inform me of any other sites using Orca and I will include them
 here.
@@ -1342,7 +1342,7 @@
 lists.
 
 If you wish to contact the author of Orca, Blair Zajac, directly,
-please email me at blair at gps.caltech.edu.
+please email me at blair at orcaware.com.
 
 =head1 RECOGNIZED SIGNALS
 
@@ -2017,7 +2017,7 @@
 
 =item B<DERIVE>
 
-will store the the derivative of the line going from the last to the
+will store the derivative of the line going from the last to the
 current value of the data source. This can be useful for gauges, for
 example, to measure the rate of people entering or leaving a
 room. Internally, derive works exactly like COUNTER but without

Modified: trunk/orca/README
==============================================================================
--- trunk/orca/README	(original)
+++ trunk/orca/README	Sat Jul 13 22:27:35 2002
@@ -22,7 +22,7 @@
 
 An example of the output generated by Orca is located at:
 
-    http://www.gps.caltech.edu/~blair/orca/orca-example/
+    http://www.orcaware.com/orca/orca-example/
 
 Orca is written completely in Perl.  To install, configure and use Orca,
 read the INSTALL file.  Some sample configuration files for Orca can be
@@ -65,18 +65,18 @@
     file designed to read the output of this orcallator.  Sample output
     from this set up is displayed at
 
-    http://www.gps.caltech.edu/~blair/orca/orca-example/
+    http://www.orcaware.com/orca/orca-example/
 
     Documentation on the data that orcallator.se collects can be viewed at
 
-    http://www.gps.caltech.edu/~blair/orca/docs/orcallator.html
+    http://www.orcaware.com/orca/docs/orcallator.html
 
 DOWNLOAD AT
 ============
 
 These tools are available for download from
 
-http://www.gps.caltech.edu/~blair/orca/
+http://www.orcaware.com/orca/
 
 MAILING LISTS
 =============
@@ -143,7 +143,7 @@
 orca-developers at yahoogroups.com, which I read and participate on.
 
 If you wish to contact me directly, my email address is
-blair at gps.caltech.edu.
+blair at orcaware.com.
 
 NAMING OF ORCA
 ==============

Modified: trunk/orca/orcallator/orcallator.cfg.in
==============================================================================
--- trunk/orca/orcallator/orcallator.cfg.in	(original)
+++ trunk/orca/orcallator/orcallator.cfg.in	Sat Jul 13 22:27:35 2002
@@ -1,7 +1,7 @@
 # Orca configuration file for orcallator files.
 
 # Require at least this version of Orca.
-require			Orca 0.263
+require			Orca 0.264
 
 # base_dir is prepended to the paths find_files, html_dir, rrd_dir,
 # and state_file only if the path does not match the regular
@@ -61,7 +61,7 @@
 #   generated RRD data files.
 
 group orcallator {
-find_files		@ORCALLATOR_DIR@/(.*)/(?:(?:orcallator)|(?:percol))-\d{4}-\d{2}-\d{2}(?:\.(?:Z|gz|bz2))?
+find_files		@ORCALLATOR_DIR@/(.*)/(?:(?:orcallator)|(?:percol))-\d{4}-\d{2}-\d{2}(?:-\d{3,})?(?:\.(?:Z|gz|bz2))?
 column_description	first_line
 date_source		column_name timestamp
 interval		300
@@ -103,8 +103,8 @@
 legend			15 minute average
 y_legend		Number Processes
 data_min		0
-data_max		100
-href			http://www.gps.caltech.edu/~blair/orca/docs/orcallator.html#processes_in_run_queue
+data_max		1000
+href			http://www.orcaware.com/orca/docs/orcallator.html#processes_in_run_queue
 }
 
 plot {
@@ -128,7 +128,23 @@
 plot_min		0
 plot_max		100
 rigid_min_max		1
-href			http://www.gps.caltech.edu/~blair/orca/docs/orcallator.html#cpu_usage
+href			http://www.orcaware.com/orca/docs/orcallator.html#cpu_usage
+}
+
+plot {
+title			%g Processes in Run Queue/Waiting/Swapped
+source			orcallator
+data			#runque
+data			#waiting
+data			#swpque
+line_type		area
+line_type		stack
+line_type		stack
+legend			# processes in run queue
+legend			# processes waiting for IO
+legend			# processes swapped
+y_legend		Number Processes
+data_min		0
 }
 
 plot {
@@ -143,7 +159,7 @@
 y_legend		New processes/s
 data_min		0
 data_max		100000
-href			http://www.gps.caltech.edu/~blair/orca/docs/orcallator.html#new_process_spawn_rate
+href			http://www.orcaware.com/orca/docs/orcallator.html#new_process_spawn_rate
 }
 
 plot {
@@ -160,7 +176,7 @@
 data_max		10000
 color			0000ff
 color			00ff00
-href			http://www.gps.caltech.edu/~blair/orca/docs/orcallator.html#number_system_processes
+href			http://www.orcaware.com/orca/docs/orcallator.html#number_system_processes
 }
 
 plot {
@@ -172,7 +188,7 @@
 y_legend		Number Processes
 data_min		0
 data_max		10000
-href			http://www.gps.caltech.edu/~blair/orca/docs/orcallator.html#number_web_server_processes
+href			http://www.orcaware.com/orca/docs/orcallator.html#number_web_server_processes
 }
 
 plot {
@@ -188,7 +204,7 @@
 data_min		0
 color			00ff00
 color			0000ff
-href			http://www.gps.caltech.edu/~blair/orca/docs/orcallator.html#web_server_hit_rate
+href			http://www.orcaware.com/orca/docs/orcallator.html#web_server_hit_rate
 }
 
 plot {
@@ -215,7 +231,7 @@
 plot_min		0
 plot_max		100
 rigid_min_max		1
-href			http://www.gps.caltech.edu/~blair/orca/docs/orcallator.html#web_server_file_size
+href			http://www.orcaware.com/orca/docs/orcallator.html#web_server_file_size
 }
 
 plot {
@@ -226,7 +242,7 @@
 legend			Bytes/s
 y_legend		Bytes/s
 data_min		0
-href			http://www.gps.caltech.edu/~blair/orca/docs/orcallator.html#web_server_data_transfer_rate
+href			http://www.orcaware.com/orca/docs/orcallator.html#web_server_data_transfer_rate
 }
 
 plot {
@@ -237,7 +253,7 @@
 legend			HTTP errors/s
 y_legend		Errors/s
 data_min		0
-href			http://www.gps.caltech.edu/~blair/orca/docs/orcallator.html#web_server_error_rate
+href			http://www.orcaware.com/orca/docs/orcallator.html#web_server_error_rate
 }
 
 # Interface bits per second for 10 Mbit interfaces.
@@ -253,14 +269,14 @@
 y_legend		Bits/s
 data_min		0
 data_max		10000000
-href			http://www.gps.caltech.edu/~blair/orca/docs/orcallator.html#interface_bits_per_second
+href			http://www.orcaware.com/orca/docs/orcallator.html#interface_bits_per_second
 }
 
 # Interface bits per second for 100 Mbit interfaces.
 plot {
 title			%g Interface Bits Per Second: $1
 source			orcallator
-data			1024 * 8 * ((?:(?:be)|(?:hme))\d+)InKB/s
+data			1024 * 8 * ((?:(?:be)|(?:dfme)|(?:eri)|(?:hme))\d+)InKB/s
 data			1024 * 8 * $1OuKB/s
 line_type		area
 line_type		line1
@@ -269,14 +285,14 @@
 y_legend		Bits/s
 data_min		0
 data_max		100000000
-href			http://www.gps.caltech.edu/~blair/orca/docs/orcallator.html#interface_bits_per_second
+href			http://www.orcaware.com/orca/docs/orcallator.html#interface_bits_per_second
 }
 
 # Interface bits per second for 1 Gbit interfaces.
 plot {
 title			%g Interface Bits Per Second: $1
 source			orcallator
-data			1024 * 8 * (v?ge\d+)InKB/s
+data			1024 * 8 * ((?:(?:v?ge)|(?:skge))\d+)InKB/s
 data			1024 * 8 * $1OuKB/s
 line_type		area
 line_type		line1
@@ -285,7 +301,7 @@
 y_legend		Bits/s
 data_min		0
 data_max		1000000000
-href			http://www.gps.caltech.edu/~blair/orca/docs/orcallator.html#interface_bits_per_second
+href			http://www.orcaware.com/orca/docs/orcallator.html#interface_bits_per_second
 }
 
 plot {
@@ -301,7 +317,7 @@
 data_min		0
 data_max		100000
 flush_regexps		1
-href			http://www.gps.caltech.edu/~blair/orca/docs/orcallator.html#interface_packets_per_second
+href			http://www.orcaware.com/orca/docs/orcallator.html#interface_packets_per_second
 }
 
 plot {
@@ -316,7 +332,7 @@
 y_legend		Errors/s
 data_min		0
 flush_regexps		1
-href			http://www.gps.caltech.edu/~blair/orca/docs/orcallator.html#interface_errors_per_second
+href			http://www.orcaware.com/orca/docs/orcallator.html#interface_errors_per_second
 }
 
 plot {
@@ -328,7 +344,7 @@
 y_legend		Defers/s
 data_min		0
 flush_regexps		1
-href			http://www.gps.caltech.edu/~blair/orca/docs/orcallator.html#interface_deferred_packet_rate
+href			http://www.orcaware.com/orca/docs/orcallator.html#interface_deferred_packet_rate
 }
 
 plot {
@@ -341,7 +357,7 @@
 data_min		0
 data_max		200
 flush_regexps		1
-href			http://www.gps.caltech.edu/~blair/orca/docs/orcallator.html#interface_collisions
+href			http://www.orcaware.com/orca/docs/orcallator.html#interface_collisions
 }
 
 plot {
@@ -353,7 +369,7 @@
 y_legend		Nocanput/s
 data_min		0
 flush_regexps		1
-href			http://www.gps.caltech.edu/~blair/orca/docs/orcallator.html#interface_nocanput_rate
+href			http://www.orcaware.com/orca/docs/orcallator.html#interface_nocanput_rate
 }
 
 plot {
@@ -368,7 +384,7 @@
 y_legend		Bits/s
 data_min		0
 data_max		1000000000
-href			http://www.gps.caltech.edu/~blair/orca/docs/orcallator.html#TCP_bits_per_second
+href			http://www.orcaware.com/orca/docs/orcallator.html#TCP_bits_per_second
 }
 
 plot {
@@ -383,7 +399,7 @@
 y_legend		Segments/s
 data_min		0
 data_max		20000
-href			http://www.gps.caltech.edu/~blair/orca/docs/orcallator.html#TCP_segments_per_second
+href			http://www.orcaware.com/orca/docs/orcallator.html#TCP_segments_per_second
 }
 
 plot {
@@ -398,7 +414,7 @@
 y_legend		Percent
 data_min		0
 data_max		200
-href			http://www.gps.caltech.edu/~blair/orca/docs/orcallator.html#TCP_retransmission_duplicate_received_percentage
+href			http://www.orcaware.com/orca/docs/orcallator.html#TCP_retransmission_duplicate_received_percentage
 }
 
 plot {
@@ -413,7 +429,7 @@
 y_legend		New Connections/s
 data_min		0
 data_max		10000
-href			http://www.gps.caltech.edu/~blair/orca/docs/orcallator.html#TCP_new_connection_rate
+href			http://www.orcaware.com/orca/docs/orcallator.html#TCP_new_connection_rate
 }
 
 plot {
@@ -425,7 +441,7 @@
 y_legend		Number Open TCP Connections
 data_min		0
 data_max		50000
-href			http://www.gps.caltech.edu/~blair/orca/docs/orcallator.html#TCP_number_open_connections
+href			http://www.orcaware.com/orca/docs/orcallator.html#TCP_number_open_connections
 }
 
 plot {
@@ -436,7 +452,7 @@
 legend			Number TCP resets/s
 y_legend		Resets/s
 data_min		0
-href			http://www.gps.caltech.edu/~blair/orca/docs/orcallator.html#TCP_reset_rate
+href			http://www.orcaware.com/orca/docs/orcallator.html#TCP_reset_rate
 }
 
 plot {
@@ -447,7 +463,7 @@
 legend			TCP attempt fails/s
 y_legend		TCP Attempt Fails/s
 data_min		0
-href			http://www.gps.caltech.edu/~blair/orca/docs/orcallator.html#TCP_attempt_fail_rate
+href			http://www.orcaware.com/orca/docs/orcallator.html#TCP_attempt_fail_rate
 }
 
 plot {
@@ -461,7 +477,7 @@
 legend			TCP half open drops
 y_legend		TCP Listen Drops/s
 data_min		0
-href			http://www.gps.caltech.edu/~blair/orca/docs/orcallator.html#TCP_listen_drop_rate
+href			http://www.orcaware.com/orca/docs/orcallator.html#TCP_listen_drop_rate
 }
 
 plot {
@@ -475,7 +491,7 @@
 legend			Sleeps on mutex/cpu
 y_legend		Sleeps on Mutex/s
 data_min		0
-href			http://www.gps.caltech.edu/~blair/orca/docs/orcallator.html#sleeps_mutex_rate
+href			http://www.orcaware.com/orca/docs/orcallator.html#sleeps_mutex_rate
 }
 
 plot {
@@ -497,7 +513,7 @@
 legend			NFS server calls/s
 y_legend		NFS Server Calls/s
 data_min		0
-href			http://www.gps.caltech.edu/~blair/orca/docs/orcallator.html#NFS_server_call_rate
+href			http://www.orcaware.com/orca/docs/orcallator.html#NFS_server_call_rate
 }
 
 plot {
@@ -515,7 +531,7 @@
 line_type		stack
 y_legend		NFS Server Calls/s
 data_min		0
-href			http://www.gps.caltech.edu/~blair/orca/docs/orcallator.html#NFS_server_call_distribution
+href			http://www.orcaware.com/orca/docs/orcallator.html#NFS_server_call_distribution
 }
 
 plot {
@@ -526,7 +542,7 @@
 legend			NFS client calls/s
 y_legend		NFS Client Calls/s
 data_min		0
-href			http://www.gps.caltech.edu/~blair/orca/docs/orcallator.html#NFS_client_call_rate
+href			http://www.orcaware.com/orca/docs/orcallator.html#NFS_client_call_rate
 }
 
 plot {
@@ -540,7 +556,7 @@
 legend			Bad transmits
 y_legend		Count/s
 data_min		0
-href			http://www.gps.caltech.edu/~blair/orca/docs/orcallator.html#NFS_timeouts_bad_transmits_rate
+href			http://www.orcaware.com/orca/docs/orcallator.html#NFS_timeouts_bad_transmits_rate
 }
 
 plot {
@@ -554,7 +570,7 @@
 legend			Writes/s
 y_legend		Ops/s
 data_min		0
-href			http://www.gps.caltech.edu/~blair/orca/docs/orcallator.html#disk_system_wide_reads_writes_per_second
+href			http://www.orcaware.com/orca/docs/orcallator.html#disk_system_wide_reads_writes_per_second
 }
 
 plot {
@@ -568,20 +584,20 @@
 legend			Write transfer rate
 y_legend		Bytes/s
 data_min		0
-href			http://www.gps.caltech.edu/~blair/orca/docs/orcallator.html#disk_system_wide_transfer_rate
+href			http://www.orcaware.com/orca/docs/orcallator.html#disk_system_wide_transfer_rate
 }
 
 plot {
 title			%g Disk Run Percent
 source			orcallator
-data			disk_runp_((?:c\d+t\d+d\d+)|(?:md\d+))
+data			disk_runp_((?:c\d+t\d+d\d+)|(?:[ms]d\d+))
 line_type		line2
 legend			$1
 y_legend		Run Percent
 data_min		0
 data_max		100
 plot_min		0
-href			http://www.gps.caltech.edu/~blair/orca/docs/orcallator.html#disk_run_percent
+href			http://www.orcaware.com/orca/docs/orcallator.html#disk_run_percent
 }
 
 plot {
@@ -595,7 +611,7 @@
 data_max		100
 plot_min		0
 plot_max		100
-href			http://www.gps.caltech.edu/~blair/orca/docs/orcallator.html#disk_space_percent_usage
+href			http://www.orcaware.com/orca/docs/orcallator.html#disk_space_percent_usage
 }
 
 plot {
@@ -609,7 +625,7 @@
 data_max		100
 plot_min		0
 plot_max		100
-href			http://www.gps.caltech.edu/~blair/orca/docs/orcallator.html#disk_inode_percent_usage
+href			http://www.orcaware.com/orca/docs/orcallator.html#disk_inode_percent_usage
 }
 
 plot {
@@ -624,7 +640,7 @@
 y_legend		Percent
 data_min		0
 data_max		100
-href			http://www.gps.caltech.edu/~blair/orca/docs/orcallator.html#cache_hit_percentages
+href			http://www.orcaware.com/orca/docs/orcallator.html#cache_hit_percentages
 }
 
 plot {
@@ -638,7 +654,7 @@
 legend			Inode cache
 y_legend		References/s
 data_min		0
-href			http://www.gps.caltech.edu/~blair/orca/docs/orcallator.html#cache_reference_rate
+href			http://www.orcaware.com/orca/docs/orcallator.html#cache_reference_rate
 }
 
 plot {
@@ -649,7 +665,7 @@
 legend			Inode w/page steals/s
 y_legend		Steals/s
 data_min		0
-href			http://www.gps.caltech.edu/~blair/orca/docs/orcallator.html#inode_steal_rate
+href			http://www.orcaware.com/orca/docs/orcallator.html#inode_steal_rate
 }
 
 plot {
@@ -661,7 +677,7 @@
 y_legend		Bytes
 base			1024
 data_min		0
-href			http://www.gps.caltech.edu/~blair/orca/docs/orcallator.html#memory_free
+href			http://www.orcaware.com/orca/docs/orcallator.html#memory_free
 }
 
 plot {
@@ -672,7 +688,7 @@
 legend			Page scan rate
 y_legend		Pages/s
 data_min		0
-href			http://www.gps.caltech.edu/~blair/orca/docs/orcallator.html#page_scan_rate
+href			http://www.orcaware.com/orca/docs/orcallator.html#page_scan_rate
 }
 
 plot {
@@ -683,7 +699,7 @@
 legend			Page residence time
 y_legend		Seconds
 data_min		0
-href			http://www.gps.caltech.edu/~blair/orca/docs/orcallator.html#page_residence_time
+href			http://www.orcaware.com/orca/docs/orcallator.html#page_residence_time
 }
 
 plot {
@@ -695,7 +711,7 @@
 y_legend		Bytes
 base			1024
 data_min		0
-href			http://www.gps.caltech.edu/~blair/orca/docs/orcallator.html#available_swap_space
+href			http://www.orcaware.com/orca/docs/orcallator.html#available_swap_space
 }
 
 plot {
@@ -719,7 +735,7 @@
 color			00ff00
 color			ff0000
 color			0000ff
-href			http://www.gps.caltech.edu/~blair/orca/docs/orcallator.html#page_usage
+href			http://www.orcaware.com/orca/docs/orcallator.html#page_usage
 }
 
 plot {
@@ -734,5 +750,5 @@
 y_legend		Number Of Pages
 data_min		0
 plot_min		0
-href			http://www.gps.caltech.edu/~blair/orca/docs/orcallator.html#pages_locked_IO
+href			http://www.orcaware.com/orca/docs/orcallator.html#pages_locked_IO
 }

Modified: trunk/orca/orcallator/orcallator.se
==============================================================================
--- trunk/orca/orcallator/orcallator.se	(original)
+++ trunk/orca/orcallator/orcallator.se	Sat Jul 13 22:27:36 2002
@@ -4,10 +4,57 @@
 // This program logs many different system quantities to a log file
 // for later processing.
 //
-// Author: Blair Zajac <blair at gps.caltech.edu>.
+// Author: Blair Zajac <blair at orcaware.com>.
 //
 // Portions copied from percollator.se written by Adrian Cockroft.
 //
+// Version 1.28:   Oct  2, 2001	No changes, bump version number to 1.28.
+// Version 1.28b7: Sep 29, 2001	Change the output log filename format from
+//				percol-%Y-%m-%d to percol-%Y-%m-%d-XXX, where
+//				XXX is a number starting at 0 that is
+//				incremented anytime the number of output
+//				columns changes or type of data stored in a
+//				column changes.  This is in addition to the
+//				creation of a new log filename when a new day
+//				starts.  Whenever the program needs to create
+//				a new log file for any reason, it will search
+//				for the smallest XXX so that there are no log
+//				files named percol-%Y-%m-%d-XXX{,.Z,.gz,.bz2}.
+//				If the COMPRESSOR environmental is set and any
+//				uncompressed files are found while looking for
+//				the smallest XXX, they are compressed with the
+//				COMPRESSOR command.
+// Version 1.28b6: Sep 28, 2001	Instead of outputting the number of CPUs only
+//				when WATCH_MUTEX is defined, output it when
+//				either WATCH_CPU or WATCH_MUTEX is defined.
+//				Only declare and update tmp_mutex if
+//				WATCH_MUTEX defined.
+// Version 1.28b5: Sep 28, 2001	Add three parameters that vmstat outputs,
+//				#runque, vmstat's `r' column, which is the
+//				number of processes in the run queue waiting
+//				to run on a CPU, #waiting, vmstat's `b' column,
+//				which is the number of processes blocked for
+//				resources (I/O, paging), and #swpque, vmstat's
+//				`w', the number of processes runnable but
+//				swapped out.  Increase MAX_COLUMNS from 512 to
+//				2048.  Check [wr]lentime to see if an EMC disk
+//				is using a fake disk for control.  EMC disks
+//				have a fake disk which commands are run over to
+//				configure the disk array or to get stats from;
+//				they are not real data transfers.  They can
+//				cause 1000 MB/sec writes to appear in the
+//				stats.  I still get them but not as often with
+//				this bit of code in.  If the I/O which occurred
+//				in the last five minutes is not greater than
+//				1/100sec then it is not a valid measurement
+//				anyway.  What happens is that we can have a
+//				small I/O, say 1024 bytes, in a 1/100sec =
+//				1024*100/sec.  I am thinking of making it
+//				wlentime+rlentime > 2 since I am still getting
+//				fake write spikes.  Make sure to define
+//				HAVE_EMC_DISK_CONTROL to enable this check.
+//				Patch contributed by Damon
+//				Atkins <Damon.Atkins at nabaus.com.au>.
 // Version 1.28b4: Mar 27, 2001	Recoded measure_disk() to access the RAWDISK
 //				interface to sys_kstat device information to
 //				allow the activity on Sun's A1000 and Clariion
@@ -142,8 +189,8 @@
 
 // The default sampling interval in seconds.
 #define SAMPLE_INTERVAL		300
-// The maximum number of colums of data.
-#define MAX_COLUMNS		512
+// The maximum number of columns of data.
+#define MAX_COLUMNS		2048
 
 // Define the different parts of the system you want to examine.
 #ifdef WATCH_OS
@@ -179,6 +226,7 @@
 #include <unistd.se>
 #include <string.se>
 #include <time.se>
+#include <stat.se>
 #include <kstat.se>
 #include <utsname.se>
 
@@ -206,7 +254,6 @@
 #endif
 
 #ifdef WATCH_WEB
-#include <stat.se>
 
 // Define this macro which returns the size index for a file of a
 // particular size.  This saves the overhead of a function call.
@@ -282,7 +329,9 @@
 lr_cpu_t	lr_cpu$cpu;
 lr_cpu_t	tmp_lrcpu;
 lr_mutex_t	lr_mutex$m;
+#ifdef WATCH_MUTEX 
 lr_mutex_t	tmp_mutex;
+#endif
 lr_net_t	lr_net$nr;
 lr_net_t	tmp_nr;
 lr_tcp_t	lr_tcp$tcp;
@@ -415,7 +464,7 @@
 // RAWDISK BEGIN
 #ifdef USE_RAWDISK
 #include <sys_kstat.se>
-// This extention accesses the sys_kstat.se interface to the kstat IO
+// This extension accesses the sys_kstat.se interface to the kstat IO
 // queues to extract info on drives not available in the kstat.se
 // kstat$disk interface.  Global data shared between function calls.
 struct RawDisk {
@@ -470,11 +519,11 @@
   // already identified how many physical devices are present and they
   // are listed first we limit our self to mapping the first
   // RAW_disk_count device name.
-  for (i=0; i<RAW_disk_count; i++) {
+  for (i=0; i<RAW_disk_count; ++i) {
     strcpy(long_name,GLOBAL_disk_info[i].long_name);
     if (long_name[0] == 'c' && strchr(long_name, 's') == nil) {
       strcpy(short_name,GLOBAL_disk_info[i].short_name);
-      for (j=0; j<RAW_disk_count;j++) {
+      for (j=0; j<RAW_disk_count; ++j) {
         if (strcmp(RAW_disk[j].short_name, short_name) == 0) {
           strcpy(RAW_disk[j].long_name, long_name);
           break;
@@ -537,7 +586,7 @@
           short_name[0] != 'n' &&
           strchr(short_name,',') == nil) {
         // Try to locate device.
-        for (rdisk=0; rdisk<RAW_disk_count;rdisk++) {
+        for (rdisk=0; rdisk<RAW_disk_count; ++rdisk) {
           if (strcmp(RAW_disk[rdisk].short_name, short_name) == 0) {
             break;
           }
@@ -662,22 +711,17 @@
 ulong		ofile;				// File pointer to the logging file.
 string		col_comment[MAX_COLUMNS];	// Comments for each column.
 string		col_data[MAX_COLUMNS];		// Data for each column.
+string		col_previous_comment[MAX_COLUMNS]; // Previous comments.
 int		current_column = 0;		// The current column.
+int		previous_number_columns = -1;	// Number columns printed last.
 int		print_header = 1;		// Flag to flush header.
 
-// Send the stored columns of information to the output.
-print_columns(string data[])
-{
-  int i;
-  for (i=0; i<current_column; i++) {
-    fprintf(ofile, "%s", data[i]);
-    if (i != current_column-1) {
-      fputc(' ', ofile);
-    }
-  }
-  fputc('\n', ofile);
-  fflush(ofile);
-}
+// This is a list of the extensions the compress programs add to the
+// compress filename.
+#define NUMBER_COMPRESS_SUFFIXES 3
+string		compression_suffixes[NUMBER_COMPRESS_SUFFIXES] = {".Z",
+                                                                  ".gz",
+                                                                  ".bz2"};
 
 // Add one column of comments and data to the buffers.
 put_output(string comment, string data)
@@ -690,58 +734,139 @@
 
   col_comment[current_column] = comment;
   col_data[current_column]    = data;
-  ++current_column;
+  current_column++;
 }
 
-flush_output() {
+// Send the stored columns of information to the output.
+print_columns(string data[])
+{
+  int i;
+  for (i=0; i<current_column; ++i) {
+    fprintf(ofile, "%s", data[i]);
+    if (i != current_column-1) {
+      fputc(' ', ofile);
+    }
+  }
+  fputc('\n', ofile);
+  fflush(ofile);
+}
+
+// Flush all of the stored output.
+print_output() {
   if (print_header != 0) {
     print_columns(col_comment);
     print_header = 0;
   }
   print_columns(col_data);
-  current_column = 0;
+
+  // Save the current number of columns stored and the column names so
+  // that the next set can be compared with to determine if the
+  // headers should be printed again.
+  col_previous_comment    = col_comment;
+  previous_number_columns = current_column - 1;
+  current_column          = 0;
 }
 
 // Sets ofile to the output file pointer.  Creates or appends to the
 // log file if OUTDIR is set, otherwise sets the file pointer to STDOUT.
 // It start a new log file each day.  It compresses the previous days
 // log file if the environmental variable COMPRESSOR is set.
-checkoutput(tm_t now) {
-  string outdir = getenv("OUTDIR");
-  string outname;
+check_output_log_filename(tm_t now) {
+  string output_directory = getenv("OUTDIR");
+  string output_filename;
+  string compressed_filename;
+  stat_t log_file_stat;
   tm_t   then;
   char   tm_buf[32];
+  int    file_number;
+  int    need_new_log_file;
+  int    exists;
+  int    result;
+  int    i;
 
-  if (outdir == nil) {
-    // No output dir so use stdout.
+  if (output_directory == nil) {
+    // No output directory so use stdout.
     if (ofile == 0) {
       //  First time, so print header and set ofile.
-      ofile = stdout;
+      ofile        = stdout;
       print_header = 1;
     }
     return;
   }
-  // Maintain daily output logfiles in OUTDIR.
-  if (now.tm_yday != then.tm_yday) {
-    // First time or day has changed, start new logfile.
+
+  // Check if a new output log is needed.  This happens when the day
+  // changes, if the number of columns changes or if the column
+  // comments change since the last measurement.
+  if (now.tm_yday             != then.tm_yday ||
+      previous_number_columns != (current_column - 1)) {
+    need_new_log_file = 1;
+  } else {
+    need_new_log_file = 0;
+    for (i=0; i<current_column; ++i) {
+      if (col_comment[i] != col_previous_comment[i]) {
+        need_new_log_file = 1;
+        break;
+      }
+    }
+  }
+
+  // Maintain daily output log files in OUTDIR.
+  if (need_new_log_file != 0) {
+    // Close and optionally compress the existing output file.  The
+    // first time through ofile will be 0.
     if (ofile != 0) {
-      // Close and optionally compress the existing output file.
-      fclose(ofile);
+      if (fclose(ofile) != 0) {
+        perror("cannot close output log file");
+      }
       if (compress != nil) {
-        system(sprintf(compress, outname));
+        system(sprintf(compress, output_filename));
       }
     }
+
+    // Get the new filename.  Check for already existing uncompressed
+    // log filenames and compressed log filenames.
+    file_number = 0;
     strftime(tm_buf, sizeof(tm_buf), "%Y-%m-%d", now);
-    outname = sprintf("%s/percol-%s", outdir, tm_buf);
-    // Open for append either way.
-    ofile = fopen(outname, "a");
+    while (1 == 1) {
+      exists          = 0;
+      output_filename = sprintf("%s/percol-%s-%03d", output_directory,
+                                                     tm_buf,
+                                                     file_number);
+      result          = stat(output_filename, log_file_stat);
+      if (result != -1) {
+        exists = 1;
+        if (compress != nil) {
+          system(sprintf(compress, output_filename));
+        }
+      } else {
+        for (i=0; i<NUMBER_COMPRESS_SUFFIXES; ++i) {
+          compressed_filename = sprintf("%s%s", output_filename,
+                                                compression_suffixes[i]);
+          result              = stat(compressed_filename, log_file_stat);
+          if (result != -1) {
+            exists = 1;
+            break;
+          }
+        }
+      }
+
+      if (exists != 0) {
+        file_number++;
+      } else {
+        break;
+      }
+    }
+
+    // Open the file for appending.
+    ofile = fopen(output_filename, "a");
     if (ofile == 0) {
-      perror("can't open output logfile");
+      perror("cannot open output log file");
       exit(1);
     }
-    // Always write header.
+
+    // Always write a new header.
     print_header = 1;
-    then = now;
+    then         = now;
   }
 }
 
@@ -816,7 +941,7 @@
 #ifdef WATCH_WEB
     measure_web(sleep_till);
 #else
-    sleep_till_and_count_new_proceses(sleep_till);
+    sleep_till_and_count_new_processes(sleep_till);
 #endif
 
     // Get the current time.
@@ -830,10 +955,10 @@
 #endif
 
     // Get a file descriptor to write to.  Maintains daily output files.
-    checkoutput(tm_now);
+    check_output_log_filename(tm_now);
 
     // Print the output.
-    flush_output();
+    print_output();
   }
   return 0;
 }
@@ -929,7 +1054,9 @@
 _measure_os()
 {
   tmp_lrcpu         = lr_cpu$cpu;
+#ifdef WATCH_MUTEX 
   tmp_mutex         = lr_mutex$m;
+#endif
   tmp_nr            = lr_net$nr;
   tmp_lrtcp         = lr_tcp$tcp;
 #ifdef WATCH_TCP
@@ -975,7 +1102,14 @@
   measure_mutex();
 #endif
 
-  // Take care of mount pointes.
+  // If the CPUs or mutexes are being monitored, then output the
+  // number online CPUs on the system.  The GLOBAL_pvm_ncpus variable
+  // is used after it has been updated in _measure_os().
+#if defined(WATCH_CPU) || defined (WATCH_MUTEX)
+  put_output("ncpus", sprintf("%5d", GLOBAL_pvm_ncpus));
+#endif
+
+  // Take care of mount points.
 #ifdef WATCH_MOUNTS
   measure_mounts();
 #endif
@@ -1069,7 +1203,7 @@
   put_output("  uptime",    sprintf("%8d", uptime));
 }
 
-sleep_till_and_count_new_proceses(long sleep_till)
+sleep_till_and_count_new_processes(long sleep_till)
 {
   long   now;
 #ifdef WATCH_CPU
@@ -1134,8 +1268,9 @@
 
   pvm = vmglobal_total();
 
-  // In SE 3.0 user_time and system_time are int and in SE 3.1 they are
-  // double, so cast everything to double using + 0.0.
+  // In SE 3.0 and below user_time and system_time are int and in SE
+  // 3.1 and above they are double, so cast everything to double using
+  // + 0.0.
   put_output(" usr%",    sprintf("%5.1f", pvm.user_time + 0.0));
   put_output(" sys%",    sprintf("%5.1f", pvm.system_time + 0.0));
   put_output(" wio%",    sprintf("%5.1f", pvm.wait_time + 0.0));
@@ -1144,6 +1279,9 @@
   put_output(" 5runq",   sprintf("%6.2f", tmp_kstat_misc.avenrun_5min/256.0));
   put_output("15runq",   sprintf("%6.2f", tmp_kstat_misc.avenrun_15min/256.0));
   put_output("#proc",    sprintf("%5lu",  tmp_kstat_misc.nproc));
+  put_output(" #runque", sprintf("%8.2f", pvm.runque + 0.0));
+  put_output("#waiting", sprintf("%8.2f", pvm.waiting + 0.0));
+  put_output(" #swpque", sprintf("%8.2f", pvm.swpque + 0.0));
   put_output("scanrate", sprintf("%8.3f", pvm.scan + 0.0));
 
   // Calculate the rate of new process spawning.
@@ -1165,8 +1303,7 @@
 measure_mutex()
 {
   put_output(" smtx",    sprintf("%5d", tmp_mutex.smtx));
-  put_output("smtx/cpu", sprintf("%8d", tmp_mutex.smtx/tmp_mutex.ncpus));
-  put_output("ncpus",    sprintf("%5d", tmp_mutex.ncpus));
+  put_output("smtx/cpu", sprintf("%8d", tmp_mutex.smtx/GLOBAL_pvm_ncpus));
 }
 #endif
 
@@ -1178,12 +1315,12 @@
   int i;
 
   current_count = 0;
-  for (i=0; i<tmp_nr.net_count; i++) {
+  for (i=0; i<tmp_nr.net_count; ++i) {
     // Skip unused interfaces.
 //  if (GLOBAL_net[i].up == 0) {
 //    continue;
 //  }
-    ++current_count;
+    current_count++;
     put_output(sprintf("%5sIpkt/s", tmp_nr.names[i]),
 	       sprintf("%11.3f", GLOBAL_net[i].ipackets));
     put_output(sprintf("%5sOpkt/s", tmp_nr.names[i]),
@@ -1294,7 +1431,7 @@
       }
 
       // Skip snapshot file systems to avoid output format changes as
-      // they are mounted and umounted.
+      // they are mounted and unmounted.
       if (tmp_mnt.mnt_mountp =~ "^/snapshots/") {
         continue;
       }
@@ -1303,7 +1440,7 @@
         continue;
       }
       vfs = vfs_array[0];
-      ++current_count;
+      current_count++;
 
       // Generate the format strings for the comment and for the data.
       comment_fmt    = sprintf("mnt%%c_%s", tmp_mnt.mnt_mountp);
@@ -1377,7 +1514,7 @@
   disk_count     = 0;
 
 #ifdef USE_RAWDISK
-  for (i=0; i<RAW_disk_count; i++) {
+  for (i=0; i<RAW_disk_count; ++i) {
     // Block the listing of tape drives for now.
     if (RAW_disk[i].short_name[1] == 't' && RAW_disk[i].short_name[0] == 's') {
       continue;
@@ -1389,28 +1526,66 @@
     disk_count++;
     put_output(sprintf("disk_runp_%s", RAW_disk[i].long_name),
                sprintf("%16.5f", RAW_disk[i].run_percent));
-    total_reads    += RAW_disk[i].reads;
-    total_writes   += RAW_disk[i].writes;
-    total_readk    += RAW_disk[i].kreads;
-    total_writek   += RAW_disk[i].kwrites;
-    mean_disk_busy += RAW_disk[i].run_percent;
-    if (RAW_disk[i].run_percent > peak_disk_busy) {
-       peak_disk_busy = RAW_disk[i].run_percent;
+
+    // Comments from Damon Atkins <Damon.Atkins at nabaus.com.au>.  Check
+    // [wr]lentime to see if an EMC is using a fake disk for control.
+    // EMC disks have a fake disk which commands are run over to
+    // configure the disk array or to get stats from; they are not
+    // real data transfers.  They cause 1000 MB/sec writes to appear
+    // in the stats.  I still get them but not as often with this bit
+    // of code in.  If the I/O which occurred in the last five minutes
+    // is not greater than 1/100sec then it is not a valid measurement
+    // anyway.  What happens is that we can have a small I/O, say 1024
+    // bytes, in a 1/100sec = 1024*100/sec.  I am thinking of making
+    // it wlentime+rlentime>2 since I am still getting fake write
+    // spikes.
+#ifdef HAVE_EMC_DISK_CONTROL
+    if ((pioGLOB_old_wlentime[i] + pioGLOB_old_rlentime[i]) > 1) {
+#endif
+      total_reads    += RAW_disk[i].reads;
+      total_writes   += RAW_disk[i].writes;
+      total_readk    += RAW_disk[i].kreads;
+      total_writek   += RAW_disk[i].kwrites;
+      mean_disk_busy += RAW_disk[i].run_percent;
+      if (RAW_disk[i].run_percent > peak_disk_busy) {
+         peak_disk_busy = RAW_disk[i].run_percent;
+      }
+#ifdef HAVE_EMC_DISK_CONTROL
     }
+#endif
   }
 #else
-  for (i=0; i<GLOBAL_disk_count; i++) {
+  for (i=0; i<GLOBAL_disk_count; ++i) {
     disk_count++;
     put_output(sprintf("disk_runp_%s", GLOBAL_disk[i].info.long_name),
                sprintf("%16.5f", GLOBAL_disk[i].run_percent));
-    total_reads    += GLOBAL_disk[i].reads;
-    total_writes   += GLOBAL_disk[i].writes;
-    total_readk    += GLOBAL_disk[i].kreads;
-    total_writek   += GLOBAL_disk[i].kwrites;
-    mean_disk_busy += GLOBAL_disk[i].run_percent;
-    if (GLOBAL_disk[i].run_percent > peak_disk_busy) {
-      peak_disk_busy = GLOBAL_disk[i].run_percent;
+
+    // Comments from Damon Atkins <Damon.Atkins at nabaus.com.au>.  Check
+    // [wr]lentime to see if an EMC is using a fake disk for control.
+    // EMC disks have a fake disk which commands are run over to
+    // configure the disk array or to get stats from; they are not
+    // real data transfers.  They cause 1000 MB/sec writes to appear
+    // in the stats.  I still get them but not as often with this bit
+    // of code in.  If the I/O which occurred in the last five minutes
+    // is not greater than 1/100sec then it is not a valid measurement
+    // anyway.  What happens is that we can have a small I/O, say 1024
+    // bytes, in a 1/100sec = 1024*100/sec.  I am thinking of making
+    // it wlentime+rlentime>2 since I am still getting fake write
+    // spikes.
+#ifdef HAVE_EMC_DISK_CONTROL
+    if ((pioGLOB_old_wlentime[i] + pioGLOB_old_rlentime[i]) > 1) {
+#endif
+      total_reads    += GLOBAL_disk[i].reads;
+      total_writes   += GLOBAL_disk[i].writes;
+      total_readk    += GLOBAL_disk[i].kreads;
+      total_writek   += GLOBAL_disk[i].kwrites;
+      mean_disk_busy += GLOBAL_disk[i].run_percent;
+      if (GLOBAL_disk[i].run_percent > peak_disk_busy) {
+        peak_disk_busy = GLOBAL_disk[i].run_percent;
+      }
+#ifdef HAVE_EMC_DISK_CONTROL
     }
+#endif
   }
 #endif
 
@@ -1601,7 +1776,7 @@
   /*
    * Yahoo log format.  Fields in square brackets will only appear in the
    * log file if the data actually exists (i.e. you will never see a null
-   * Referrer field).  Further, fields labelled here with "(CONFIG)" will
+   * Referrer field).  Further, fields labeled here with "(CONFIG)" will
    * only appear if they are enabled via the YahooLogOptions configuration
    * directive.
    *
@@ -1670,7 +1845,7 @@
     dwnld_totalz += z;
   }
 
-#else	/* common or netscape proxy formats */
+#else	/* common or Netscape proxy formats */
   strtok(nil, " ");		/* -.           */
   strtok(nil, " ");		/* -.           */
   strtok(nil, " [");		/* date.        */
@@ -1792,7 +1967,7 @@
   httpop_errors   = 0;
   httpop_searches = 0;
 
-  for (i=0; i<5; i++) {
+  for (i=0; i<5; ++i) {
     dwnld_size[i] = 0;
 #if WATCH_PROXY || WATCH_SQUID || WATCH_YAHOO
     www_dwnld_time_by_size[i] = 0.0;
@@ -1821,7 +1996,7 @@
     now = time(0);
     while (now < sleep_till) {
 #ifdef WATCH_CPU
-      sleep_till_and_count_new_proceses(now + 5);
+      sleep_till_and_count_new_processes(now + 5);
 #else
       sleep(5);
 #endif
@@ -1909,7 +2084,7 @@
     }
   }
   else {
-    sleep_till_and_count_new_proceses(sleep_till);
+    sleep_till_and_count_new_processes(sleep_till);
     www5_now = gethrtime();
   }
 
@@ -1928,7 +2103,7 @@
   }
 
 #if WATCH_PROXY || WATCH_SQUID || WATCH_YAHOO
-  for (i=0; i<5; i++) {
+  for (i=0; i<5; ++i) {
     if (dwnld_size[i] == 0) {
       www_dwnld_time_by_size[i] = 0.0;
     }

Modified: trunk/orca/config/config.guess
==============================================================================
--- trunk/orca/config/config.guess	(original)
+++ trunk/orca/config/config.guess	Sat Jul 13 22:27:37 2002
@@ -1,7 +1,10 @@
 #! /bin/sh
 # Attempt to guess a canonical system name.
-#   Copyright (C) 1992, 93, 94, 95, 96, 97, 1998 Free Software Foundation, Inc.
-#
+#   Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001
+#   Free Software Foundation, Inc.
+
+timestamp='2001-09-13'
+
 # This file is free software; you can redistribute it and/or modify it
 # under the terms of the GNU General Public License as published by
 # the Free Software Foundation; either version 2 of the License, or
@@ -22,36 +25,193 @@
 # the same distribution terms that you use for the rest of that program.
 
 # Written by Per Bothner <bothner at cygnus.com>.
-# The master version of this file is at the FSF in /home/gd/gnu/lib.
+# Please send patches to <config-patches at gnu.org>.
 #
 # This script attempts to guess a canonical system name similar to
 # config.sub.  If it succeeds, it prints the system name on stdout, and
 # exits with 0.  Otherwise, it exits with 1.
 #
 # The plan is that this can be called by configure scripts if you
-# don't specify an explicit system type (host/target name).
-#
-# Only a few systems have been added to this list; please add others
-# (but try to keep the structure clean).
-#
+# don't specify an explicit build system type.
+
+me=`echo "$0" | sed -e 's,.*/,,'`
+
+usage="\
+Usage: $0 [OPTION]
+
+Output the configuration name of the system \`$me' is run on.
+
+Operation modes:
+  -h, --help         print this help, then exit
+  -t, --time-stamp   print date of last modification, then exit
+  -v, --version      print version number, then exit
+
+Report bugs and patches to <config-patches at gnu.org>."
+
+version="\
+GNU config.guess ($timestamp)
+
+Originally written by Per Bothner.
+Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001
+Free Software Foundation, Inc.
+
+This is free software; see the source for copying conditions.  There is NO
+warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
+
+help="
+Try \`$me --help' for more information."
+
+# Parse command line
+while test $# -gt 0 ; do
+  case $1 in
+    --time-stamp | --time* | -t )
+       echo "$timestamp" ; exit 0 ;;
+    --version | -v )
+       echo "$version" ; exit 0 ;;
+    --help | --h* | -h )
+       echo "$usage"; exit 0 ;;
+    -- )     # Stop option processing
+       shift; break ;;
+    - )	# Use stdin as input.
+       break ;;
+    -* )
+       echo "$me: invalid option $1$help" >&2
+       exit 1 ;;
+    * )
+       break ;;
+  esac
+done
+
+if test $# != 0; then
+  echo "$me: too many arguments$help" >&2
+  exit 1
+fi
+
+
+dummy=dummy-$$
+trap 'rm -f $dummy.c $dummy.o $dummy.rel $dummy; exit 1' 1 2 15
+
+# CC_FOR_BUILD -- compiler used by this script.
+# Historically, `CC_FOR_BUILD' used to be named `HOST_CC'. We still
+# use `HOST_CC' if defined, but it is deprecated.
+
+set_cc_for_build='case $CC_FOR_BUILD,$HOST_CC,$CC in
+ ,,)    echo "int dummy(){}" > $dummy.c ;
+	for c in cc gcc c89 ; do
+	  ($c $dummy.c -c -o $dummy.o) >/dev/null 2>&1 ;
+	  if test $? = 0 ; then
+	     CC_FOR_BUILD="$c"; break ;
+	  fi ;
+	done ;
+	rm -f $dummy.c $dummy.o $dummy.rel ;
+	if test x"$CC_FOR_BUILD" = x ; then
+	  CC_FOR_BUILD=no_compiler_found ;
+	fi
+	;;
+ ,,*)   CC_FOR_BUILD=$CC ;;
+ ,*,*)  CC_FOR_BUILD=$HOST_CC ;;
+esac'
 
 # This is needed to find uname on a Pyramid OSx when run in the BSD universe.
-# (ghazi at noc.rutgers.edu 8/24/94.)
+# (ghazi at noc.rutgers.edu 1994-08-24)
 if (test -f /.attbin/uname) >/dev/null 2>&1 ; then
 	PATH=$PATH:/.attbin ; export PATH
 fi
 
 UNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown
 UNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown
-UNAME_SYSTEM=`(uname -s) 2>/dev/null` || UNAME_SYSTEM=unknown
+UNAME_SYSTEM=`(uname -s) 2>/dev/null`  || UNAME_SYSTEM=unknown
 UNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown
 
-dummy=dummy-$$
-trap 'rm -f $dummy.c $dummy.o $dummy; exit 1' 1 2 15
-
 # Note: order is significant - the case branches are not exclusive.
 
 case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
+    *:NetBSD:*:*)
+	# NetBSD (nbsd) targets should (where applicable) match one or
+	# more of the tupples: *-*-netbsdelf*, *-*-netbsdaout*,
+	# *-*-netbsdecoff* and *-*-netbsd*.  For targets that recently
+	# switched to ELF, *-*-netbsd* would select the old
+	# object file format.  This provides both forward
+	# compatibility and a consistent mechanism for selecting the
+	# object file format.
+	# Determine the machine/vendor (is the vendor relevant).
+	case "${UNAME_MACHINE}" in
+	    amiga) machine=m68k-unknown ;;
+	    arm32) machine=arm-unknown ;;
+	    atari*) machine=m68k-atari ;;
+	    sun3*) machine=m68k-sun ;;
+	    mac68k) machine=m68k-apple ;;
+	    macppc) machine=powerpc-apple ;;
+	    hp3[0-9][05]) machine=m68k-hp ;;
+	    ibmrt|romp-ibm) machine=romp-ibm ;;
+	    sparc*) machine=`uname -p`-unknown ;;
+	    *) machine=${UNAME_MACHINE}-unknown ;;
+	esac
+	# The Operating System including object format, if it has switched
+	# to ELF recently, or will in the future.
+	case "${UNAME_MACHINE}" in
+	    i386|sparc|amiga|arm*|hp300|mvme68k|vax|atari|luna68k|mac68k|news68k|next68k|pc532|sun3*|x68k)
+		eval $set_cc_for_build
+		if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \
+			| grep __ELF__ >/dev/null
+		then
+		    # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout).
+		    # Return netbsd for either.  FIX?
+		    os=netbsd
+		else
+		    os=netbsdelf
+		fi
+		;;
+	    *)
+	        os=netbsd
+		;;
+	esac
+	# The OS release
+	release=`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'`
+	# Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM:
+	# contains redundant information, the shorter form:
+	# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used.
+	echo "${machine}-${os}${release}"
+	exit 0 ;;
+    amiga:OpenBSD:*:*)
+	echo m68k-unknown-openbsd${UNAME_RELEASE}
+	exit 0 ;;
+    arc:OpenBSD:*:*)
+	echo mipsel-unknown-openbsd${UNAME_RELEASE}
+	exit 0 ;;
+    hp300:OpenBSD:*:*)
+	echo m68k-unknown-openbsd${UNAME_RELEASE}
+	exit 0 ;;
+    mac68k:OpenBSD:*:*)
+	echo m68k-unknown-openbsd${UNAME_RELEASE}
+	exit 0 ;;
+    macppc:OpenBSD:*:*)
+	echo powerpc-unknown-openbsd${UNAME_RELEASE}
+	exit 0 ;;
+    mvme68k:OpenBSD:*:*)
+	echo m68k-unknown-openbsd${UNAME_RELEASE}
+	exit 0 ;;
+    mvme88k:OpenBSD:*:*)
+	echo m88k-unknown-openbsd${UNAME_RELEASE}
+	exit 0 ;;
+    mvmeppc:OpenBSD:*:*)
+	echo powerpc-unknown-openbsd${UNAME_RELEASE}
+	exit 0 ;;
+    pmax:OpenBSD:*:*)
+	echo mipsel-unknown-openbsd${UNAME_RELEASE}
+	exit 0 ;;
+    sgi:OpenBSD:*:*)
+	echo mipseb-unknown-openbsd${UNAME_RELEASE}
+	exit 0 ;;
+    sun3:OpenBSD:*:*)
+	echo m68k-unknown-openbsd${UNAME_RELEASE}
+	exit 0 ;;
+    wgrisc:OpenBSD:*:*)
+	echo mipsel-unknown-openbsd${UNAME_RELEASE}
+	exit 0 ;;
+    *:OpenBSD:*:*)
+	echo ${UNAME_MACHINE}-unknown-openbsd${UNAME_RELEASE}
+	exit 0 ;;
     alpha:OSF1:*:*)
 	if test $UNAME_RELEASE = "V4.0"; then
 		UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'`
@@ -61,89 +221,85 @@
 	# A Xn.n version is an unreleased experimental baselevel.
 	# 1.2 uses "1.2" for uname -r.
 	cat <<EOF >$dummy.s
+	.data
+\$Lformat:
+	.byte 37,100,45,37,120,10,0	# "%d-%x\n"
+
+	.text
 	.globl main
+	.align 4
 	.ent main
 main:
-	.frame \$30,0,\$26,0
-	.prologue 0
-	.long 0x47e03d80 # implver $0
-	lda \$2,259
-	.long 0x47e20c21 # amask $2,$1
-	srl \$1,8,\$2
-	sll \$2,2,\$2
-	sll \$0,3,\$0
-	addl \$1,\$0,\$0
-	addl \$2,\$0,\$0
-	ret \$31,(\$26),1
+	.frame \$30,16,\$26,0
+	ldgp \$29,0(\$27)
+	.prologue 1
+	.long 0x47e03d80 # implver \$0
+	lda \$2,-1
+	.long 0x47e20c21 # amask \$2,\$1
+	lda \$16,\$Lformat
+	mov \$0,\$17
+	not \$1,\$18
+	jsr \$26,printf
+	ldgp \$29,0(\$26)
+	mov 0,\$16
+	jsr \$26,exit
 	.end main
 EOF
-	${CC-cc} $dummy.s -o $dummy 2>/dev/null
+	eval $set_cc_for_build
+	$CC_FOR_BUILD $dummy.s -o $dummy 2>/dev/null
 	if test "$?" = 0 ; then
-		./$dummy
-		case "$?" in
-			7)
+		case `./$dummy` in
+			0-0)
 				UNAME_MACHINE="alpha"
 				;;
-			15)
+			1-0)
 				UNAME_MACHINE="alphaev5"
 				;;
-			14)
+			1-1)
 				UNAME_MACHINE="alphaev56"
 				;;
-			10)
+			1-101)
 				UNAME_MACHINE="alphapca56"
 				;;
-			16)
+			2-303)
 				UNAME_MACHINE="alphaev6"
 				;;
+			2-307)
+				UNAME_MACHINE="alphaev67"
+				;;
+			2-1307)
+				UNAME_MACHINE="alphaev68"
+				;;
 		esac
 	fi
 	rm -f $dummy.s $dummy
-	echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[VTX]//' | tr [[A-Z]] [[a-z]]`
+	echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[VTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
+	exit 0 ;;
+    Alpha\ *:Windows_NT*:*)
+	# How do we know it's Interix rather than the generic POSIX subsystem?
+	# Should we change UNAME_MACHINE based on the output of uname instead
+	# of the specific Alpha model?
+	echo alpha-pc-interix
 	exit 0 ;;
     21064:Windows_NT:50:3)
 	echo alpha-dec-winnt3.5
 	exit 0 ;;
     Amiga*:UNIX_System_V:4.0:*)
-	echo m68k-cbm-sysv4
+	echo m68k-unknown-sysv4
 	exit 0;;
-    amiga:NetBSD:*:*)
-      echo m68k-cbm-netbsd${UNAME_RELEASE}
-      exit 0 ;;
-    amiga:OpenBSD:*:*)
-	echo m68k-unknown-openbsd${UNAME_RELEASE}
-	exit 0 ;;
     *:[Aa]miga[Oo][Ss]:*:*)
 	echo ${UNAME_MACHINE}-unknown-amigaos
 	exit 0 ;;
-    arc64:OpenBSD:*:*)
-	echo mips64el-unknown-openbsd${UNAME_RELEASE}
-	exit 0 ;;
-    arc:OpenBSD:*:*)
-	echo mipsel-unknown-openbsd${UNAME_RELEASE}
-	exit 0 ;;
-    hkmips:OpenBSD:*:*)
-	echo mips-unknown-openbsd${UNAME_RELEASE}
-	exit 0 ;;
-    pmax:OpenBSD:*:*)
-	echo mipsel-unknown-openbsd${UNAME_RELEASE}
-	exit 0 ;;
-    sgi:OpenBSD:*:*)
-	echo mips-unknown-openbsd${UNAME_RELEASE}
-	exit 0 ;;
-    wgrisc:OpenBSD:*:*)
-	echo mipsel-unknown-openbsd${UNAME_RELEASE}
+    *:OS/390:*:*)
+	echo i370-ibm-openedition
 	exit 0 ;;
     arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*)
 	echo arm-acorn-riscix${UNAME_RELEASE}
 	exit 0;;
-    arm32:NetBSD:*:*)
-	echo arm-unknown-netbsd`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'`
-	exit 0 ;;
-    SR2?01:HI-UX/MPP:*:*)
+    SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*)
 	echo hppa1.1-hitachi-hiuxmpp
 	exit 0;;
-    Pyramid*:OSx*:*:*|MIS*:OSx*:*:*|MIS*:SMP_DC-OSx*:*:*)
+    Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*)
 	# akee at wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE.
 	if test "`(/bin/universe) 2>/dev/null`" = att ; then
 		echo pyramid-pyramid-sysv3
@@ -151,7 +307,7 @@
 		echo pyramid-pyramid-bsd
 	fi
 	exit 0 ;;
-    NILE:*:*:dcosx)
+    NILE*:*:*:dcosx)
 	echo pyramid-pyramid-svr4
 	exit 0 ;;
     sun4H:SunOS:5.*:*)
@@ -196,36 +352,35 @@
     aushp:SunOS:*:*)
 	echo sparc-auspex-sunos${UNAME_RELEASE}
 	exit 0 ;;
-    atari*:NetBSD:*:*)
-	echo m68k-atari-netbsd${UNAME_RELEASE}
+    # The situation for MiNT is a little confusing.  The machine name
+    # can be virtually everything (everything which is not
+    # "atarist" or "atariste" at least should have a processor
+    # > m68000).  The system name ranges from "MiNT" over "FreeMiNT"
+    # to the lowercase version "mint" (or "freemint").  Finally
+    # the system name "TOS" denotes a system which is actually not
+    # MiNT.  But MiNT is downward compatible to TOS, so this should
+    # be no problem.
+    atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*)
+        echo m68k-atari-mint${UNAME_RELEASE}
 	exit 0 ;;
-    atari*:OpenBSD:*:*)
-	echo m68k-unknown-openbsd${UNAME_RELEASE}
-	exit 0 ;;
-    sun3*:NetBSD:*:*)
-	echo m68k-sun-netbsd${UNAME_RELEASE}
-	exit 0 ;;
-    sun3*:OpenBSD:*:*)
-	echo m68k-unknown-openbsd${UNAME_RELEASE}
-	exit 0 ;;
-    mac68k:NetBSD:*:*)
-	echo m68k-apple-netbsd${UNAME_RELEASE}
-	exit 0 ;;
-    mac68k:OpenBSD:*:*)
-	echo m68k-unknown-openbsd${UNAME_RELEASE}
-	exit 0 ;;
-    mvme68k:OpenBSD:*:*)
-	echo m68k-unknown-openbsd${UNAME_RELEASE}
-	exit 0 ;;
-    mvme88k:OpenBSD:*:*)
-	echo m88k-unknown-openbsd${UNAME_RELEASE}
+    atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*)
+	echo m68k-atari-mint${UNAME_RELEASE}
+        exit 0 ;;
+    *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*)
+        echo m68k-atari-mint${UNAME_RELEASE}
 	exit 0 ;;
+    milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*)
+        echo m68k-milan-mint${UNAME_RELEASE}
+        exit 0 ;;
+    hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*)
+        echo m68k-hades-mint${UNAME_RELEASE}
+        exit 0 ;;
+    *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*)
+        echo m68k-unknown-mint${UNAME_RELEASE}
+        exit 0 ;;
     powerpc:machten:*:*)
 	echo powerpc-apple-machten${UNAME_RELEASE}
 	exit 0 ;;
-    macppc:NetBSD:*:*)
-        echo powerpc-apple-netbsd${UNAME_RELEASE}
-        exit 0 ;;
     RISC*:Mach:*:*)
 	echo mips-dec-mach_bsd4.3
 	exit 0 ;;
@@ -235,12 +390,18 @@
     VAX*:ULTRIX*:*:*)
 	echo vax-dec-ultrix${UNAME_RELEASE}
 	exit 0 ;;
-    2020:CLIX:*:*)
+    2020:CLIX:*:* | 2430:CLIX:*:*)
 	echo clipper-intergraph-clix${UNAME_RELEASE}
 	exit 0 ;;
     mips:*:*:UMIPS | mips:*:*:RISCos)
+	eval $set_cc_for_build
 	sed 's/^	//' << EOF >$dummy.c
-	int main (argc, argv) int argc; char **argv; {
+#ifdef __cplusplus
+#include <stdio.h>  /* for printf() prototype */
+	int main (int argc, char *argv[]) {
+#else
+	int main (argc, argv) int argc; char *argv[]; {
+#endif
 	#if defined (host_mips) && defined (MIPSEB)
 	#if defined (SYSTYPE_SYSV)
 	  printf ("mips-mips-riscos%ssysv\n", argv[1]); exit (0);
@@ -255,12 +416,15 @@
 	  exit (-1);
 	}
 EOF
-	${CC-cc} $dummy.c -o $dummy \
+	$CC_FOR_BUILD $dummy.c -o $dummy \
 	  && ./$dummy `echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` \
-	  && rm $dummy.c $dummy && exit 0
+	  && rm -f $dummy.c $dummy && exit 0
 	rm -f $dummy.c $dummy
 	echo mips-mips-riscos${UNAME_RELEASE}
 	exit 0 ;;
+    Motorola:PowerMAX_OS:*:*)
+	echo powerpc-motorola-powermax
+	exit 0 ;;
     Night_Hawk:Power_UNIX:*:*)
 	echo powerpc-harris-powerunix
 	exit 0 ;;
@@ -276,15 +440,18 @@
     AViiON:dgux:*:*)
         # DG/UX returns AViiON for all architectures
         UNAME_PROCESSOR=`/usr/bin/uname -p`
-        if [ $UNAME_PROCESSOR = mc88100 -o $UNAME_PROCESSOR = mc88110 ] ; then
-	if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx \
-	     -o ${TARGET_BINARY_INTERFACE}x = x ] ; then
+	if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110 ]
+	then
+	    if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx ] || \
+	       [ ${TARGET_BINARY_INTERFACE}x = x ]
+	    then
 		echo m88k-dg-dgux${UNAME_RELEASE}
-	else
+	    else
 		echo m88k-dg-dguxbcs${UNAME_RELEASE}
+	    fi
+	else
+	    echo i586-dg-dgux${UNAME_RELEASE}
 	fi
-        else echo i586-dg-dgux${UNAME_RELEASE}
-        fi
  	exit 0 ;;
     M88*:DolphinOS:*:*)	# DolphinOS (SVR3)
 	echo m88k-dolphin-sysv3
@@ -305,11 +472,20 @@
     ????????:AIX?:[12].1:2)   # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX.
 	echo romp-ibm-aix      # uname -m gives an 8 hex-code CPU id
 	exit 0 ;;              # Note that: echo "'`uname -s`'" gives 'AIX '
-    i?86:AIX:*:*)
+    i*86:AIX:*:*)
 	echo i386-ibm-aix
 	exit 0 ;;
+    ia64:AIX:*:*)
+	if [ -x /usr/bin/oslevel ] ; then
+		IBM_REV=`/usr/bin/oslevel`
+	else
+		IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
+	fi
+	echo ${UNAME_MACHINE}-ibm-aix${IBM_REV}
+	exit 0 ;;
     *:AIX:2:3)
 	if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then
+		eval $set_cc_for_build
 		sed 's/^		//' << EOF >$dummy.c
 		#include <sys/systemcfg.h>
 
@@ -321,7 +497,7 @@
 			exit(0);
 			}
 EOF
-		${CC-cc} $dummy.c -o $dummy && ./$dummy && rm $dummy.c $dummy && exit 0
+		$CC_FOR_BUILD $dummy.c -o $dummy && ./$dummy && rm -f $dummy.c $dummy && exit 0
 		rm -f $dummy.c $dummy
 		echo rs6000-ibm-aix3.2.5
 	elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then
@@ -330,9 +506,9 @@
 		echo rs6000-ibm-aix3.2
 	fi
 	exit 0 ;;
-    *:AIX:*:4)
+    *:AIX:*:[45])
 	IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | head -1 | awk '{ print $1 }'`
-	if /usr/sbin/lsattr -EHl ${IBM_CPU_ID} | grep POWER >/dev/null 2>&1; then
+	if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then
 		IBM_ARCH=rs6000
 	else
 		IBM_ARCH=powerpc
@@ -340,7 +516,7 @@
 	if [ -x /usr/bin/oslevel ] ; then
 		IBM_REV=`/usr/bin/oslevel`
 	else
-		IBM_REV=4.${UNAME_RELEASE}
+		IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
 	fi
 	echo ${IBM_ARCH}-ibm-aix${IBM_REV}
 	exit 0 ;;
@@ -350,7 +526,7 @@
     ibmrt:4.4BSD:*|romp-ibm:BSD:*)
 	echo romp-ibm-bsd4.4
 	exit 0 ;;
-    ibmrt:*BSD:*|romp-ibm:BSD:*)            # covers RT/PC NetBSD and
+    ibmrt:*BSD:*|romp-ibm:BSD:*)            # covers RT/PC BSD and
 	echo romp-ibm-bsd${UNAME_RELEASE}   # 4.3 with uname added to
 	exit 0 ;;                           # report: romp-ibm BSD 4.3
     *:BOSX:*:*)
@@ -366,28 +542,49 @@
 	echo m68k-hp-bsd4.4
 	exit 0 ;;
     9000/[34678]??:HP-UX:*:*)
+	HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
 	case "${UNAME_MACHINE}" in
 	    9000/31? )            HP_ARCH=m68000 ;;
 	    9000/[34]?? )         HP_ARCH=m68k ;;
-	    9000/6?? | 9000/7?? | 9000/80[24] | 9000/8?[13679] | 9000/892 )
+	    9000/[678][0-9][0-9])
+              case "${HPUX_REV}" in
+                11.[0-9][0-9])
+                  if [ -x /usr/bin/getconf ]; then
+                    sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null`
+                    sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null`
+                    case "${sc_cpu_version}" in
+                      523) HP_ARCH="hppa1.0" ;; # CPU_PA_RISC1_0
+                      528) HP_ARCH="hppa1.1" ;; # CPU_PA_RISC1_1
+                      532)                      # CPU_PA_RISC2_0
+                        case "${sc_kernel_bits}" in
+                          32) HP_ARCH="hppa2.0n" ;;
+                          64) HP_ARCH="hppa2.0w" ;;
+                        esac ;;
+                    esac
+                  fi ;;
+              esac
+              if [ "${HP_ARCH}" = "" ]; then
+	      eval $set_cc_for_build
               sed 's/^              //' << EOF >$dummy.c
+
+              #define _HPUX_SOURCE
               #include <stdlib.h>
               #include <unistd.h>
-              
+
               int main ()
               {
               #if defined(_SC_KERNEL_BITS)
                   long bits = sysconf(_SC_KERNEL_BITS);
-              #endif 
+              #endif
                   long cpu  = sysconf (_SC_CPU_VERSION);
-              
-                  switch (cpu) 
+
+                  switch (cpu)
               	{
               	case CPU_PA_RISC1_0: puts ("hppa1.0"); break;
               	case CPU_PA_RISC1_1: puts ("hppa1.1"); break;
-              	case CPU_PA_RISC2_0: 
+              	case CPU_PA_RISC2_0:
               #if defined(_SC_KERNEL_BITS)
-              	    switch (bits) 
+              	    switch (bits)
               		{
               		case 64: puts ("hppa2.0w"); break;
               		case 32: puts ("hppa2.0n"); break;
@@ -395,19 +592,25 @@
               		} break;
               #else  /* !defined(_SC_KERNEL_BITS) */
               	    puts ("hppa2.0"); break;
-              #endif 
+              #endif
               	default: puts ("hppa1.0"); break;
               	}
                   exit (0);
               }
 EOF
-	(${CC-cc} $dummy.c -o $dummy 2>/dev/null ) && HP_ARCH=`./$dummy`
-	rm -f $dummy.c $dummy
+	    (CCOPTS= $CC_FOR_BUILD $dummy.c -o $dummy 2>/dev/null ) && HP_ARCH=`./$dummy`
+	    if test -z "$HP_ARCH"; then HP_ARCH=hppa; fi
+	    rm -f $dummy.c $dummy
+	fi ;;
 	esac
-	HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
 	echo ${HP_ARCH}-hp-hpux${HPUX_REV}
 	exit 0 ;;
+    ia64:HP-UX:*:*)
+	HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
+	echo ia64-hp-hpux${HPUX_REV}
+	exit 0 ;;
     3050*:HI-UX:*:*)
+	eval $set_cc_for_build
 	sed 's/^	//' << EOF >$dummy.c
 	#include <unistd.h>
 	int
@@ -433,7 +636,7 @@
 	  exit (0);
 	}
 EOF
-	${CC-cc} $dummy.c -o $dummy && ./$dummy && rm $dummy.c $dummy && exit 0
+	$CC_FOR_BUILD $dummy.c -o $dummy && ./$dummy && rm -f $dummy.c $dummy && exit 0
 	rm -f $dummy.c $dummy
 	echo unknown-hitachi-hiuxwe2
 	exit 0 ;;
@@ -443,13 +646,16 @@
     9000/8??:4.3bsd:*:*)
 	echo hppa1.0-hp-bsd
 	exit 0 ;;
+    *9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*)
+	echo hppa1.0-hp-mpeix
+	exit 0 ;;
     hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* )
 	echo hppa1.1-hp-osf
 	exit 0 ;;
     hp8??:OSF1:*:*)
 	echo hppa1.0-hp-osf
 	exit 0 ;;
-    i?86:OSF1:*:*)
+    i*86:OSF1:*:*)
 	if [ -x /usr/sbin/sysversion ] ; then
 	    echo ${UNAME_MACHINE}-unknown-osf1mk
 	else
@@ -481,60 +687,65 @@
 	echo xmp-cray-unicos
         exit 0 ;;
     CRAY*Y-MP:*:*:*)
-	echo ymp-cray-unicos${UNAME_RELEASE}
+	echo ymp-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
 	exit 0 ;;
     CRAY*[A-Z]90:*:*:*)
 	echo ${UNAME_MACHINE}-cray-unicos${UNAME_RELEASE} \
 	| sed -e 's/CRAY.*\([A-Z]90\)/\1/' \
-	      -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/
+	      -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \
+	      -e 's/\.[^.]*$/.X/'
 	exit 0 ;;
     CRAY*TS:*:*:*)
-	echo t90-cray-unicos${UNAME_RELEASE}
+	echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
+	exit 0 ;;
+    CRAY*T3D:*:*:*)
+	echo alpha-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
 	exit 0 ;;
     CRAY*T3E:*:*:*)
-	echo t3e-cray-unicosmk${UNAME_RELEASE}
+	echo alphaev5-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
+	exit 0 ;;
+    CRAY*SV1:*:*:*)
+	echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
 	exit 0 ;;
     CRAY-2:*:*:*)
 	echo cray2-cray-unicos
         exit 0 ;;
-    F300:UNIX_System_V:*:*)
-        FUJITSU_SYS=`uname -p | tr [A-Z] [a-z] | sed -e 's/\///'`
+    F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*)
+	FUJITSU_PROC=`uname -m | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
+        FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
         FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'`
-        echo "f300-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
+        echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
         exit 0 ;;
-    F301:UNIX_System_V:*:*)
-       echo f301-fujitsu-uxpv`echo $UNAME_RELEASE | sed 's/ .*//'`
-       exit 0 ;;
-    hp3[0-9][05]:NetBSD:*:*)
-	echo m68k-hp-netbsd${UNAME_RELEASE}
-	exit 0 ;;
-    hp300:OpenBSD:*:*)
-	echo m68k-unknown-openbsd${UNAME_RELEASE}
+    i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*)
+	echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE}
 	exit 0 ;;
     sparc*:BSD/OS:*:*)
 	echo sparc-unknown-bsdi${UNAME_RELEASE}
 	exit 0 ;;
-    i?86:BSD/386:*:* | i?86:BSD/OS:*:*)
-	echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE}
-	exit 0 ;;
     *:BSD/OS:*:*)
 	echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE}
 	exit 0 ;;
     *:FreeBSD:*:*)
 	echo ${UNAME_MACHINE}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`
 	exit 0 ;;
-    *:NetBSD:*:*)
-	echo ${UNAME_MACHINE}-unknown-netbsd`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'`
-	exit 0 ;;
-    *:OpenBSD:*:*)
-	echo ${UNAME_MACHINE}-unknown-openbsd`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'`
-	exit 0 ;;
     i*:CYGWIN*:*)
 	echo ${UNAME_MACHINE}-pc-cygwin
 	exit 0 ;;
     i*:MINGW*:*)
 	echo ${UNAME_MACHINE}-pc-mingw32
 	exit 0 ;;
+    i*:PW*:*)
+	echo ${UNAME_MACHINE}-pc-pw32
+	exit 0 ;;
+    i*:Windows_NT*:* | Pentium*:Windows_NT*:*)
+	# How do we know it's Interix rather than the generic POSIX subsystem?
+	# It also conflicts with pre-2.0 versions of AT&T UWIN. Should we
+	# UNAME_MACHINE based on the output of uname instead of i386?
+	echo i386-pc-interix
+	exit 0 ;;
+    i*:UWIN*:*)
+	echo ${UNAME_MACHINE}-pc-uwin
+	exit 0 ;;
     p*:CYGWIN*:*)
 	echo powerpcle-unknown-cygwin
 	exit 0 ;;
@@ -544,145 +755,130 @@
     *:GNU:*:*)
 	echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'`
 	exit 0 ;;
-    *:Linux:*:*)
-	# uname on the ARM produces all sorts of strangeness, and we need to
-	# filter it out.
-	case "$UNAME_MACHINE" in
-	  arm* | sa110*)	      UNAME_MACHINE="arm" ;;
+    i*86:Minix:*:*)
+	echo ${UNAME_MACHINE}-pc-minix
+	exit 0 ;;
+    arm*:Linux:*:*)
+	echo ${UNAME_MACHINE}-unknown-linux-gnu
+	exit 0 ;;
+    ia64:Linux:*:*)
+	echo ${UNAME_MACHINE}-unknown-linux
+	exit 0 ;;
+    m68*:Linux:*:*)
+	echo ${UNAME_MACHINE}-unknown-linux-gnu
+	exit 0 ;;
+    mips:Linux:*:*)
+	case `sed -n '/^byte/s/^.*: \(.*\) endian/\1/p' < /proc/cpuinfo` in
+	  big)    echo mips-unknown-linux-gnu && exit 0 ;;
+	  little) echo mipsel-unknown-linux-gnu && exit 0 ;;
 	esac
-
+	;;
+    ppc:Linux:*:*)
+	echo powerpc-unknown-linux-gnu
+	exit 0 ;;
+    ppc64:Linux:*:*)
+	echo powerpc64-unknown-linux-gnu
+	exit 0 ;;
+    alpha:Linux:*:*)
+	case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in
+	  EV5)   UNAME_MACHINE=alphaev5 ;;
+	  EV56)  UNAME_MACHINE=alphaev56 ;;
+	  PCA56) UNAME_MACHINE=alphapca56 ;;
+	  PCA57) UNAME_MACHINE=alphapca56 ;;
+	  EV6)   UNAME_MACHINE=alphaev6 ;;
+	  EV67)  UNAME_MACHINE=alphaev67 ;;
+	  EV68*) UNAME_MACHINE=alphaev68 ;;
+        esac
+	objdump --private-headers /bin/sh | grep ld.so.1 >/dev/null
+	if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi
+	echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC}
+	exit 0 ;;
+    parisc:Linux:*:* | hppa:Linux:*:*)
+	# Look for CPU level
+	case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in
+	  PA7*) echo hppa1.1-unknown-linux-gnu ;;
+	  PA8*) echo hppa2.0-unknown-linux-gnu ;;
+	  *)    echo hppa-unknown-linux-gnu ;;
+	esac
+	exit 0 ;;
+    parisc64:Linux:*:* | hppa64:Linux:*:*)
+	echo hppa64-unknown-linux-gnu
+	exit 0 ;;
+    s390:Linux:*:* | s390x:Linux:*:*)
+	echo ${UNAME_MACHINE}-ibm-linux
+	exit 0 ;;
+    sh*:Linux:*:*)
+	echo ${UNAME_MACHINE}-unknown-linux-gnu
+	exit 0 ;;
+    sparc:Linux:*:* | sparc64:Linux:*:*)
+	echo ${UNAME_MACHINE}-unknown-linux-gnu
+	exit 0 ;;
+    x86_64:Linux:*:*)
+	echo x86_64-unknown-linux-gnu
+	exit 0 ;;
+    i*86:Linux:*:*)
 	# The BFD linker knows what the default object file format is, so
-	# first see if it will tell us.
-	ld_help_string=`ld --help 2>&1`
-	ld_supported_emulations=`echo $ld_help_string \
-			 | sed -ne '/supported emulations:/!d
+	# first see if it will tell us. cd to the root directory to prevent
+	# problems with other programs or directories called `ld' in the path.
+	ld_supported_targets=`cd /; ld --help 2>&1 \
+			 | sed -ne '/supported targets:/!d
 				    s/[ 	][ 	]*/ /g
-				    s/.*supported emulations: *//
+				    s/.*supported targets: *//
 				    s/ .*//
 				    p'`
-        case "$ld_supported_emulations" in
-	  i?86linux)  echo "${UNAME_MACHINE}-pc-linux-gnuaout"      ; exit 0 ;;
-	  i?86coff)   echo "${UNAME_MACHINE}-pc-linux-gnucoff"      ; exit 0 ;;
-	  sparclinux) echo "${UNAME_MACHINE}-unknown-linux-gnuaout" ; exit 0 ;;
-	  armlinux)   echo "${UNAME_MACHINE}-unknown-linux-gnuaout" ; exit 0 ;;
-	  m68klinux)  echo "${UNAME_MACHINE}-unknown-linux-gnuaout" ; exit 0 ;;
-	  elf32ppc)   echo "powerpc-unknown-linux-gnu"              ; exit 0 ;;
+        case "$ld_supported_targets" in
+	  elf32-i386)
+		TENTATIVE="${UNAME_MACHINE}-pc-linux-gnu"
+		;;
+	  a.out-i386-linux)
+		echo "${UNAME_MACHINE}-pc-linux-gnuaout"
+		exit 0 ;;		
+	  coff-i386)
+		echo "${UNAME_MACHINE}-pc-linux-gnucoff"
+		exit 0 ;;
+	  "")
+		# Either a pre-BFD a.out linker (linux-gnuoldld) or
+		# one that does not give us useful --help.
+		echo "${UNAME_MACHINE}-pc-linux-gnuoldld"
+		exit 0 ;;
 	esac
-
-	if test "${UNAME_MACHINE}" = "alpha" ; then
-		sed 's/^	//'  <<EOF >$dummy.s
-		.globl main
-		.ent main
-	main:
-		.frame \$30,0,\$26,0
-		.prologue 0
-		.long 0x47e03d80 # implver $0
-		lda \$2,259
-		.long 0x47e20c21 # amask $2,$1
-		srl \$1,8,\$2
-		sll \$2,2,\$2
-		sll \$0,3,\$0
-		addl \$1,\$0,\$0
-		addl \$2,\$0,\$0
-		ret \$31,(\$26),1
-		.end main
-EOF
-		LIBC=""
-		${CC-cc} $dummy.s -o $dummy 2>/dev/null
-		if test "$?" = 0 ; then
-			./$dummy
-			case "$?" in
-			7)
-				UNAME_MACHINE="alpha"
-				;;
-			15)
-				UNAME_MACHINE="alphaev5"
-				;;
-			14)
-				UNAME_MACHINE="alphaev56"
-				;;
-			10)
-				UNAME_MACHINE="alphapca56"
-				;;
-			16)
-				UNAME_MACHINE="alphaev6"
-				;;
-			esac	
-
-			objdump --private-headers $dummy | \
-			  grep ld.so.1 > /dev/null
-			if test "$?" = 0 ; then
-				LIBC="libc1"
-			fi
-		fi	
-		rm -f $dummy.s $dummy
-		echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC} ; exit 0
-	elif test "${UNAME_MACHINE}" = "mips" ; then
-	  cat >$dummy.c <<EOF
-main(argc, argv)
-     int argc;
-     char *argv[];
-{
-#ifdef __MIPSEB__
-  printf ("%s-unknown-linux-gnu\n", argv[1]);
-#endif
-#ifdef __MIPSEL__
-  printf ("%sel-unknown-linux-gnu\n", argv[1]);
-#endif
-  return 0;
-}
-EOF
-	  ${CC-cc} $dummy.c -o $dummy 2>/dev/null && ./$dummy "${UNAME_MACHINE}" && rm $dummy.c $dummy && exit 0
-	  rm -f $dummy.c $dummy
-	else
-	  # Either a pre-BFD a.out linker (linux-gnuoldld)
-	  # or one that does not give us useful --help.
-	  # GCC wants to distinguish between linux-gnuoldld and linux-gnuaout.
-	  # If ld does not provide *any* "supported emulations:"
-	  # that means it is gnuoldld.
-	  echo "$ld_help_string" | grep >/dev/null 2>&1 "supported emulations:"
-	  test $? != 0 && echo "${UNAME_MACHINE}-pc-linux-gnuoldld" && exit 0
-
-	  case "${UNAME_MACHINE}" in
-	  i?86)
-	    VENDOR=pc;
-	    ;;
-	  *)
-	    VENDOR=unknown;
-	    ;;
-	  esac
-	  # Determine whether the default compiler is a.out or elf
-	  cat >$dummy.c <<EOF
+	# Determine whether the default compiler is a.out or elf
+	eval $set_cc_for_build
+	cat >$dummy.c <<EOF
 #include <features.h>
-main(argc, argv)
-     int argc;
-     char *argv[];
-{
+#ifdef __cplusplus
+#include <stdio.h>  /* for printf() prototype */
+	int main (int argc, char *argv[]) {
+#else
+	int main (argc, argv) int argc; char *argv[]; {
+#endif
 #ifdef __ELF__
 # ifdef __GLIBC__
 #  if __GLIBC__ >= 2
-    printf ("%s-${VENDOR}-linux-gnu\n", argv[1]);
+    printf ("%s-pc-linux-gnu\n", argv[1]);
 #  else
-    printf ("%s-${VENDOR}-linux-gnulibc1\n", argv[1]);
+    printf ("%s-pc-linux-gnulibc1\n", argv[1]);
 #  endif
 # else
-   printf ("%s-${VENDOR}-linux-gnulibc1\n", argv[1]);
+   printf ("%s-pc-linux-gnulibc1\n", argv[1]);
 # endif
 #else
-  printf ("%s-${VENDOR}-linux-gnuaout\n", argv[1]);
+  printf ("%s-pc-linux-gnuaout\n", argv[1]);
 #endif
   return 0;
 }
 EOF
-	  ${CC-cc} $dummy.c -o $dummy 2>/dev/null && ./$dummy "${UNAME_MACHINE}" && rm $dummy.c $dummy && exit 0
-	  rm -f $dummy.c $dummy
-	fi ;;
-# ptx 4.0 does uname -s correctly, with DYNIX/ptx in there.  earlier versions
-# are messed up and put the nodename in both sysname and nodename.
-    i?86:DYNIX/ptx:4*:*)
+	$CC_FOR_BUILD $dummy.c -o $dummy 2>/dev/null && ./$dummy "${UNAME_MACHINE}" && rm -f $dummy.c $dummy && exit 0
+	rm -f $dummy.c $dummy
+	test x"${TENTATIVE}" != x && echo "${TENTATIVE}" && exit 0
+	;;
+    i*86:DYNIX/ptx:4*:*)
+	# ptx 4.0 does uname -s correctly, with DYNIX/ptx in there.
+	# earlier versions are messed up and put the nodename in both
+	# sysname and nodename.
 	echo i386-sequent-sysv4
 	exit 0 ;;
-    i?86:UNIX_SV:4.2MP:2.*)
+    i*86:UNIX_SV:4.2MP:2.*)
         # Unixware is an offshoot of SVR4, but it has its own version
         # number series starting with 2...
         # I am not positive that other SVR4 systems won't match this,
@@ -690,14 +886,23 @@
         # Use sysv4.2uw... so that sysv4* matches it.
 	echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION}
 	exit 0 ;;
-    i?86:*:4.*:* | i?86:SYSTEM_V:4.*:*)
+    i*86:*:4.*:* | i*86:SYSTEM_V:4.*:*)
+	UNAME_REL=`echo ${UNAME_RELEASE} | sed 's/\/MP$//'`
 	if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then
-		echo ${UNAME_MACHINE}-univel-sysv${UNAME_RELEASE}
+		echo ${UNAME_MACHINE}-univel-sysv${UNAME_REL}
 	else
-		echo ${UNAME_MACHINE}-pc-sysv${UNAME_RELEASE}
+		echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL}
 	fi
 	exit 0 ;;
-    i?86:*:3.2:*)
+    i*86:*:5:[78]*)
+	case `/bin/uname -X | grep "^Machine"` in
+	    *486*)	     UNAME_MACHINE=i486 ;;
+	    *Pentium)	     UNAME_MACHINE=i586 ;;
+	    *Pent*|*Celeron) UNAME_MACHINE=i686 ;;
+	esac
+	echo ${UNAME_MACHINE}-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION}
+	exit 0 ;;
+    i*86:*:3.2:*)
 	if test -f /usr/options/cb.name; then
 		UNAME_REL=`sed -n 's/.*Version //p' </usr/options/cb.name`
 		echo ${UNAME_MACHINE}-pc-isc$UNAME_REL
@@ -706,19 +911,20 @@
 		(/bin/uname -X|egrep i80486 >/dev/null) && UNAME_MACHINE=i486
 		(/bin/uname -X|egrep '^Machine.*Pentium' >/dev/null) \
 			&& UNAME_MACHINE=i586
+		(/bin/uname -X|egrep '^Machine.*Pent ?II' >/dev/null) \
+			&& UNAME_MACHINE=i686
+		(/bin/uname -X|egrep '^Machine.*Pentium Pro' >/dev/null) \
+			&& UNAME_MACHINE=i686
 		echo ${UNAME_MACHINE}-pc-sco$UNAME_REL
 	else
 		echo ${UNAME_MACHINE}-pc-sysv32
 	fi
 	exit 0 ;;
-    i?86:UnixWare:*:*)
-	if /bin/uname -X 2>/dev/null >/dev/null ; then
-	  (/bin/uname -X|egrep '^Machine.*Pentium' >/dev/null) \
-	    && UNAME_MACHINE=i586
-	fi
-	echo ${UNAME_MACHINE}-unixware-${UNAME_RELEASE}-${UNAME_VERSION}
+    i*86:*DOS:*:*)
+	echo ${UNAME_MACHINE}-pc-msdosdjgpp
 	exit 0 ;;
     pc:*:*:*)
+	# Left here for compatibility:
         # uname -m prints for DJGPP always 'pc', but it prints nothing about
         # the processor, so we play safe by assuming i386.
 	echo i386-pc-msdosdjgpp
@@ -742,7 +948,7 @@
 	exit 0 ;;
     M68*:*:R3V[567]*:*)
 	test -r /sysV68 && echo 'm68k-motorola-sysv' && exit 0 ;;
-    3[34]??:*:4.0:3.0 | 3[34]??,*:*:4.0:3.0 | 4850:*:4.0:3.0)
+    3[34]??:*:4.0:3.0 | 3[34]??A:*:4.0:3.0 | 3[34]??,*:*:4.0:3.0 | 4850:*:4.0:3.0)
 	OS_REL=''
 	test -r /etc/.relid \
 	&& OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
@@ -753,24 +959,30 @@
     3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*)
         /bin/uname -p 2>/dev/null | grep 86 >/dev/null \
           && echo i486-ncr-sysv4 && exit 0 ;;
-    m68*:LynxOS:2.*:*)
+    m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*)
 	echo m68k-unknown-lynxos${UNAME_RELEASE}
 	exit 0 ;;
     mc68030:UNIX_System_V:4.*:*)
 	echo m68k-atari-sysv4
 	exit 0 ;;
-    i?86:LynxOS:2.*:*)
+    i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.0*:*)
 	echo i386-unknown-lynxos${UNAME_RELEASE}
 	exit 0 ;;
     TSUNAMI:LynxOS:2.*:*)
 	echo sparc-unknown-lynxos${UNAME_RELEASE}
 	exit 0 ;;
-    rs6000:LynxOS:2.*:* | PowerPC:LynxOS:2.*:*)
+    rs6000:LynxOS:2.*:*)
 	echo rs6000-unknown-lynxos${UNAME_RELEASE}
 	exit 0 ;;
+    PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.0*:*)
+	echo powerpc-unknown-lynxos${UNAME_RELEASE}
+	exit 0 ;;
     SM[BE]S:UNIX_SV:*:*)
 	echo mips-dde-sysv${UNAME_RELEASE}
 	exit 0 ;;
+    RM*:ReliantUNIX-*:*:*)
+	echo mips-sni-sysv4
+	exit 0 ;;
     RM*:SINIX-*:*:*)
 	echo mips-sni-sysv4
 	exit 0 ;;
@@ -782,8 +994,8 @@
 		echo ns32k-sni-sysv
 	fi
 	exit 0 ;;
-    PENTIUM:CPunix:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort
-                           # says <Richard.M.Bartel at ccMail.Census.GOV>
+    PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort
+                      # says <Richard.M.Bartel at ccMail.Census.GOV>
         echo i586-unisys-sysv4
         exit 0 ;;
     *:UNIX_System_V:4*:FTX*)
@@ -795,13 +1007,17 @@
 	# From seanf at swdc.stratus.com.
 	echo i860-stratus-sysv4
 	exit 0 ;;
+    *:VOS:*:*)
+	# From Paul.Green at stratus.com.
+	echo hppa1.1-stratus-vos
+	exit 0 ;;
     mc68*:A/UX:*:*)
 	echo m68k-apple-aux${UNAME_RELEASE}
 	exit 0 ;;
-    news*:NEWS-OS:*:6*)
+    news*:NEWS-OS:6*:*)
 	echo mips-sony-newsos6
 	exit 0 ;;
-    R3000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R4000:UNIX_SV:*:*)
+    R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*)
 	if [ -d /usr/nec ]; then
 	        echo mips-nec-sysv${UNAME_RELEASE}
 	else
@@ -829,11 +1045,76 @@
     *:Rhapsody:*:*)
 	echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE}
 	exit 0 ;;
+    *:Darwin:*:*)
+	echo `uname -p`-apple-darwin${UNAME_RELEASE}
+	exit 0 ;;
+    *:procnto*:*:* | *:QNX:[0123456789]*:*)
+	if test "${UNAME_MACHINE}" = "x86pc"; then
+		UNAME_MACHINE=pc
+	fi
+	echo `uname -p`-${UNAME_MACHINE}-nto-qnx
+	exit 0 ;;
+    *:QNX:*:4*)
+	echo i386-pc-qnx
+	exit 0 ;;
+    NSR-[KW]:NONSTOP_KERNEL:*:*)
+	echo nsr-tandem-nsk${UNAME_RELEASE}
+	exit 0 ;;
+    *:NonStop-UX:*:*)
+	echo mips-compaq-nonstopux
+	exit 0 ;;
+    BS2000:POSIX*:*:*)
+	echo bs2000-siemens-sysv
+	exit 0 ;;
+    DS/*:UNIX_System_V:*:*)
+	echo ${UNAME_MACHINE}-${UNAME_SYSTEM}-${UNAME_RELEASE}
+	exit 0 ;;
+    *:Plan9:*:*)
+	# "uname -m" is not consistent, so use $cputype instead. 386
+	# is converted to i386 for consistency with other x86
+	# operating systems.
+	if test "$cputype" = "386"; then
+	    UNAME_MACHINE=i386
+	else
+	    UNAME_MACHINE="$cputype"
+	fi
+	echo ${UNAME_MACHINE}-unknown-plan9
+	exit 0 ;;
+    i*86:OS/2:*:*)
+	# If we were able to find `uname', then EMX Unix compatibility
+	# is probably installed.
+	echo ${UNAME_MACHINE}-pc-os2-emx
+	exit 0 ;;
+    *:TOPS-10:*:*)
+	echo pdp10-unknown-tops10
+	exit 0 ;;
+    *:TENEX:*:*)
+	echo pdp10-unknown-tenex
+	exit 0 ;;
+    KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*)
+	echo pdp10-dec-tops20
+	exit 0 ;;
+    XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*)
+	echo pdp10-xkl-tops20
+	exit 0 ;;
+    *:TOPS-20:*:*)
+	echo pdp10-unknown-tops20
+	exit 0 ;;
+    *:ITS:*:*)
+	echo pdp10-unknown-its
+	exit 0 ;;
+    i*86:XTS-300:*:STOP)
+	echo ${UNAME_MACHINE}-unknown-stop
+	exit 0 ;;
+    i*86:atheos:*:*)
+	echo ${UNAME_MACHINE}-unknown-atheos
+	exit 0 ;;
 esac
 
 #echo '(No uname command or uname output not recognized.)' 1>&2
 #echo "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" 1>&2
 
+eval $set_cc_for_build
 cat >$dummy.c <<EOF
 #ifdef _SEQUENT_
 # include <sys/types.h>
@@ -920,11 +1201,24 @@
 #endif
 
 #if defined (vax)
-#if !defined (ultrix)
-  printf ("vax-dec-bsd\n"); exit (0);
-#else
-  printf ("vax-dec-ultrix\n"); exit (0);
-#endif
+# if !defined (ultrix)
+#  include <sys/param.h>
+#  if defined (BSD)
+#   if BSD == 43
+      printf ("vax-dec-bsd4.3\n"); exit (0);
+#   else
+#    if BSD == 199006
+      printf ("vax-dec-bsd4.3reno\n"); exit (0);
+#    else
+      printf ("vax-dec-bsd\n"); exit (0);
+#    endif
+#   endif
+#  else
+    printf ("vax-dec-bsd\n"); exit (0);
+#  endif
+# else
+    printf ("vax-dec-ultrix\n"); exit (0);
+# endif
 #endif
 
 #if defined (alliant) && defined (i860)
@@ -935,7 +1229,7 @@
 }
 EOF
 
-${CC-cc} $dummy.c -o $dummy 2>/dev/null && ./$dummy && rm $dummy.c $dummy && exit 0
+$CC_FOR_BUILD $dummy.c -o $dummy 2>/dev/null && ./$dummy && rm -f $dummy.c $dummy && exit 0
 rm -f $dummy.c $dummy
 
 # Apollos put the system type in the environment.
@@ -968,6 +1262,48 @@
     esac
 fi
 
-#echo '(Unable to guess system type)' 1>&2
+cat >&2 <<EOF
+$0: unable to guess system type
+
+This script, last modified $timestamp, has failed to recognize
+the operating system you are using. It is advised that you
+download the most up to date version of the config scripts from
+
+    ftp://ftp.gnu.org/pub/gnu/config/
+
+If the version you run ($0) is already up to date, please
+send the following data and any information you think might be
+pertinent to <config-patches at gnu.org> in order to provide the needed
+information to handle your system.
+
+config.guess timestamp = $timestamp
+
+uname -m = `(uname -m) 2>/dev/null || echo unknown`
+uname -r = `(uname -r) 2>/dev/null || echo unknown`
+uname -s = `(uname -s) 2>/dev/null || echo unknown`
+uname -v = `(uname -v) 2>/dev/null || echo unknown`
+
+/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null`
+/bin/uname -X     = `(/bin/uname -X) 2>/dev/null`
+
+hostinfo               = `(hostinfo) 2>/dev/null`
+/bin/universe          = `(/bin/universe) 2>/dev/null`
+/usr/bin/arch -k       = `(/usr/bin/arch -k) 2>/dev/null`
+/bin/arch              = `(/bin/arch) 2>/dev/null`
+/usr/bin/oslevel       = `(/usr/bin/oslevel) 2>/dev/null`
+/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null`
+
+UNAME_MACHINE = ${UNAME_MACHINE}
+UNAME_RELEASE = ${UNAME_RELEASE}
+UNAME_SYSTEM  = ${UNAME_SYSTEM}
+UNAME_VERSION = ${UNAME_VERSION}
+EOF
 
 exit 1
+
+# Local variables:
+# eval: (add-hook 'write-file-hooks 'time-stamp)
+# time-stamp-start: "timestamp='"
+# time-stamp-format: "%:y-%02m-%02d"
+# time-stamp-end: "'"
+# End:

Modified: trunk/orca/config/config.sub
==============================================================================
--- trunk/orca/config/config.sub	(original)
+++ trunk/orca/config/config.sub	Sat Jul 13 22:27:37 2002
@@ -1,6 +1,10 @@
 #! /bin/sh
-# Configuration validation subroutine script, version 1.1.
-#   Copyright (C) 1991, 92-97, 1998 Free Software Foundation, Inc.
+# Configuration validation subroutine script.
+#   Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001
+#   Free Software Foundation, Inc.
+
+timestamp='2001-09-14'
+
 # This file is (in principle) common to ALL GNU software.
 # The presence of a machine in this file suggests that SOME GNU software
 # can handle that machine.  It does not imply ALL GNU software can.
@@ -25,6 +29,8 @@
 # configuration script generated by Autoconf, you may include it under
 # the same distribution terms that you use for the rest of that program.
 
+# Please send patches to <config-patches at gnu.org>.
+#
 # Configuration subroutine to validate and canonicalize a configuration type.
 # Supply the specified configuration type as an argument.
 # If it is invalid, we print an error message on stderr and exit with code 1.
@@ -45,30 +51,73 @@
 #	CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM
 # It is wrong to echo any other type of specification.
 
-if [ x$1 = x ]
-then
-	echo Configuration name missing. 1>&2
-	echo "Usage: $0 CPU-MFR-OPSYS" 1>&2
-	echo "or     $0 ALIAS" 1>&2
-	echo where ALIAS is a recognized configuration type. 1>&2
-	exit 1
-fi
+me=`echo "$0" | sed -e 's,.*/,,'`
 
-# First pass through any local machine types.
-case $1 in
-	*local*)
-		echo $1
-		exit 0
-		;;
-	*)
-	;;
+usage="\
+Usage: $0 [OPTION] CPU-MFR-OPSYS
+       $0 [OPTION] ALIAS
+
+Canonicalize a configuration name.
+
+Operation modes:
+  -h, --help         print this help, then exit
+  -t, --time-stamp   print date of last modification, then exit
+  -v, --version      print version number, then exit
+
+Report bugs and patches to <config-patches at gnu.org>."
+
+version="\
+GNU config.sub ($timestamp)
+
+Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001
+Free Software Foundation, Inc.
+
+This is free software; see the source for copying conditions.  There is NO
+warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
+
+help="
+Try \`$me --help' for more information."
+
+# Parse command line
+while test $# -gt 0 ; do
+  case $1 in
+    --time-stamp | --time* | -t )
+       echo "$timestamp" ; exit 0 ;;
+    --version | -v )
+       echo "$version" ; exit 0 ;;
+    --help | --h* | -h )
+       echo "$usage"; exit 0 ;;
+    -- )     # Stop option processing
+       shift; break ;;
+    - )	# Use stdin as input.
+       break ;;
+    -* )
+       echo "$me: invalid option $1$help"
+       exit 1 ;;
+
+    *local*)
+       # First pass through any local machine types.
+       echo $1
+       exit 0;;
+
+    * )
+       break ;;
+  esac
+done
+
+case $# in
+ 0) echo "$me: missing argument$help" >&2
+    exit 1;;
+ 1) ;;
+ *) echo "$me: too many arguments$help" >&2
+    exit 1;;
 esac
 
 # Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any).
 # Here we must recognize all the valid KERNEL-OS combinations.
 maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'`
 case $maybe_os in
-  linux-gnu*)
+  nto-qnx* | linux-gnu* | storm-chaos* | os2-emx* | windows32-*)
     os=-$maybe_os
     basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`
     ;;
@@ -94,15 +143,33 @@
 	-convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\
 	-c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \
 	-harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \
-	-apple)
+	-apple | -axis)
+		os=
+		basic_machine=$1
+		;;
+	-sim | -cisco | -oki | -wec | -winbond)
 		os=
 		basic_machine=$1
 		;;
+	-scout)
+		;;
+	-wrs)
+		os=-vxworks
+		basic_machine=$1
+		;;
+	-chorusos*)
+		os=-chorusos
+		basic_machine=$1
+		;;
+ 	-chorusrdb)
+ 		os=-chorusrdb
+		basic_machine=$1
+ 		;;
 	-hiux*)
 		os=-hiuxwe2
 		;;
 	-sco5)
-		os=sco3.2v5
+		os=-sco3.2v5
 		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
 		;;
 	-sco4)
@@ -121,6 +188,9 @@
 		os=-sco3.2v2
 		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
 		;;
+	-udk*)
+		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
+		;;
 	-isc)
 		os=-isc2.2
 		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
@@ -143,26 +213,60 @@
 	-psos*)
 		os=-psos
 		;;
+	-mint | -mint[0-9]*)
+		basic_machine=m68k-atari
+		os=-mint
+		;;
 esac
 
 # Decode aliases for certain CPU-COMPANY combinations.
 case $basic_machine in
 	# Recognize the basic CPU types without company name.
 	# Some are omitted here because they have special meanings below.
-	tahoe | i860 | m32r | m68k | m68000 | m88k | ns32k | arc | arm \
-		| arme[lb] | pyramid | mn10200 | mn10300 | tron | a29k \
-		| 580 | i960 | h8300 | hppa | hppa1.0 | hppa1.1 | hppa2.0 \
-		| alpha | alphaev5 | alphaev56 | we32k | ns16k | clipper \
-		| i370 | sh | powerpc | powerpcle | 1750a | dsp16xx | pdp11 \
-		| mips64 | mipsel | mips64el | mips64orion | mips64orionel \
-		| mipstx39 | mipstx39el \
-		| sparc | sparclet | sparclite | sparc64 | v850)
+	1750a | 580 \
+	| a29k \
+	| alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \
+	| arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr \
+	| c4x | clipper \
+	| d10v | d30v | dsp16xx \
+	| fr30 \
+	| h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \
+	| i370 | i860 | i960 | ia64 \
+	| m32r | m68000 | m68k | m88k | mcore \
+	| mips16 | mips64 | mips64el | mips64orion | mips64orionel \
+	| mips64vr4100 | mips64vr4100el | mips64vr4300 \
+	| mips64vr4300el | mips64vr5000 | mips64vr5000el \
+	| mipsbe | mipseb | mipsel | mipsle | mipstx39 | mipstx39el \
+	| mipsisa32 \
+	| mn10200 | mn10300 \
+	| ns16k | ns32k \
+	| openrisc \
+	| pdp10 | pdp11 | pj | pjl \
+	| powerpc | powerpc64 | powerpc64le | powerpcle | ppcbe \
+	| pyramid \
+	| s390 | s390x \
+	| sh | sh[34] | sh[34]eb | shbe | shle \
+	| sparc | sparc64 | sparclet | sparclite | sparcv9 | sparcv9b \
+	| stormy16 | strongarm \
+	| tahoe | thumb | tic80 | tron \
+	| v850 \
+	| we32k \
+	| x86 | xscale \
+	| z8k)
+		basic_machine=$basic_machine-unknown
+		;;
+	m6811 | m68hc11 | m6812 | m68hc12)
+		# Motorola 68HC11/12.
 		basic_machine=$basic_machine-unknown
+		os=-none
+		;;
+	m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k)
 		;;
+
 	# We use `pc' rather than `unknown'
 	# because (1) that's what they normally are, and
 	# (2) the word "unknown" tends to confuse beginning users.
-	i[34567]86)
+	i*86 | x86_64)
 	  basic_machine=$basic_machine-pc
 	  ;;
 	# Object if more than one company name word.
@@ -171,27 +275,65 @@
 		exit 1
 		;;
 	# Recognize the basic CPU types with company name.
-	vax-* | tahoe-* | i[34567]86-* | i860-* | m32r-* | m68k-* | m68000-* \
-	      | m88k-* | sparc-* | ns32k-* | fx80-* | arc-* | arm-* | c[123]* \
-	      | mips-* | pyramid-* | tron-* | a29k-* | romp-* | rs6000-* \
-	      | power-* | none-* | 580-* | cray2-* | h8300-* | i960-* \
-	      | xmp-* | ymp-* | hppa-* | hppa1.0-* | hppa1.1-* | hppa2.0-* \
-	      | alpha-* | alphaev5-* | alphaev56-* | we32k-* | cydra-* \
-	      | ns16k-* | pn-* | np1-* | xps100-* | clipper-* | orion-* \
-	      | sparclite-* | pdp11-* | sh-* | powerpc-* | powerpcle-* \
-	      | sparc64-* | mips64-* | mipsel-* \
-	      | mips64el-* | mips64orion-* | mips64orionel-*  \
-	      | mipstx39-* | mipstx39el-* \
-	      | f301-*)
+	580-* \
+	| a29k-* \
+	| alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \
+	| alphapca5[67]-* | arc-* \
+	| arm-*  | armbe-* | armle-* | armv*-* \
+	| avr-* \
+	| bs2000-* \
+	| c[123]* | c30-* | [cjt]90-* | c54x-* \
+	| clipper-* | cray2-* | cydra-* \
+	| d10v-* | d30v-* \
+	| elxsi-* \
+	| f30[01]-* | f700-* | fr30-* | fx80-* \
+	| h8300-* | h8500-* \
+	| hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \
+	| i*86-* | i860-* | i960-* | ia64-* \
+	| m32r-* \
+	| m68000-* | m680[01234]0-* | m68360-* | m683?2-* | m68k-* \
+	| m88110-* | m88k-* | mcore-* \
+	| mips-* | mips16-* | mips64-* | mips64el-* | mips64orion-* \
+	| mips64orionel-* | mips64vr4100-* | mips64vr4100el-* \
+	| mips64vr4300-* | mips64vr4300el-* | mipsbe-* | mipseb-* \
+	| mipsle-* | mipsel-* | mipstx39-* | mipstx39el-* \
+	| none-* | np1-* | ns16k-* | ns32k-* \
+	| orion-* \
+	| pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \
+	| powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* | ppcbe-* \
+	| pyramid-* \
+	| romp-* | rs6000-* \
+	| s390-* | s390x-* \
+	| sh-* | sh[34]-* | sh[34]eb-* | shbe-* | shle-* \
+	| sparc-* | sparc64-* | sparc86x-* | sparclite-* \
+	| sparcv9-* | sparcv9b-* | stormy16-* | strongarm-* | sv1-* \
+	| t3e-* | tahoe-* | thumb-* | tic30-* | tic54x-* | tic80-* | tron-* \
+	| v850-* | vax-* \
+	| we32k-* \
+	| x86-* | x86_64-* | xmp-* | xps100-* | xscale-* \
+	| ymp-* \
+	| z8k-*)
 		;;
 	# Recognize the various machine names and aliases which stand
 	# for a CPU type and a company and sometimes even an OS.
+	386bsd)
+		basic_machine=i386-unknown
+		os=-bsd
+		;;
 	3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc)
 		basic_machine=m68000-att
 		;;
 	3b*)
 		basic_machine=we32k-att
 		;;
+	a29khif)
+		basic_machine=a29k-amd
+		os=-udi
+		;;
+	adobe68k)
+		basic_machine=m68010-adobe
+		os=-scout
+		;;
 	alliant | fx80)
 		basic_machine=fx80-alliant
 		;;
@@ -207,20 +349,24 @@
 		os=-sysv
 		;;
 	amiga | amiga-*)
-		basic_machine=m68k-cbm
+		basic_machine=m68k-unknown
 		;;
 	amigaos | amigados)
-		basic_machine=m68k-cbm
+		basic_machine=m68k-unknown
 		os=-amigaos
 		;;
 	amigaunix | amix)
-		basic_machine=m68k-cbm
+		basic_machine=m68k-unknown
 		os=-sysv4
 		;;
 	apollo68)
 		basic_machine=m68k-apollo
 		os=-sysv
 		;;
+	apollo68bsd)
+		basic_machine=m68k-apollo
+		os=-bsd
+		;;
 	aux)
 		basic_machine=m68k-apple
 		os=-aux
@@ -257,13 +403,16 @@
 		basic_machine=cray2-cray
 		os=-unicos
 		;;
-	[ctj]90-cray)
-		basic_machine=c90-cray
+	[cjt]90)
+		basic_machine=${basic_machine}-cray
 		os=-unicos
 		;;
 	crds | unos)
 		basic_machine=m68k-crds
 		;;
+	cris | cris-* | etrax*)
+		basic_machine=cris-axis
+		;;
 	da30 | da30-*)
 		basic_machine=m68k-da30
 		;;
@@ -297,6 +446,10 @@
 	encore | umax | mmax)
 		basic_machine=ns32k-encore
 		;;
+	es1800 | OSE68k | ose68k | ose | OSE)
+		basic_machine=m68k-ericsson
+		os=-ose
+		;;
 	fx2800)
 		basic_machine=i860-alliant
 		;;
@@ -307,6 +460,10 @@
 		basic_machine=tron-gmicro
 		os=-sysv
 		;;
+	go32)
+		basic_machine=i386-pc
+		os=-go32
+		;;
 	h3050r* | hiux*)
 		basic_machine=hppa1.1-hitachi
 		os=-hiuxwe2
@@ -315,6 +472,14 @@
 		basic_machine=h8300-hitachi
 		os=-hms
 		;;
+	h8300xray)
+		basic_machine=h8300-hitachi
+		os=-xray
+		;;
+	h8500hms)
+		basic_machine=h8500-hitachi
+		os=-hms
+		;;
 	harris)
 		basic_machine=m88k-harris
 		os=-sysv3
@@ -330,13 +495,30 @@
 		basic_machine=m68k-hp
 		os=-hpux
 		;;
+	hp3k9[0-9][0-9] | hp9[0-9][0-9])
+		basic_machine=hppa1.0-hp
+		;;
 	hp9k2[0-9][0-9] | hp9k31[0-9])
 		basic_machine=m68000-hp
 		;;
 	hp9k3[2-9][0-9])
 		basic_machine=m68k-hp
 		;;
-	hp9k7[0-9][0-9] | hp7[0-9][0-9] | hp9k8[0-9]7 | hp8[0-9]7)
+	hp9k6[0-9][0-9] | hp6[0-9][0-9])
+		basic_machine=hppa1.0-hp
+		;;
+	hp9k7[0-79][0-9] | hp7[0-79][0-9])
+		basic_machine=hppa1.1-hp
+		;;
+	hp9k78[0-9] | hp78[0-9])
+		# FIXME: really hppa2.0-hp
+		basic_machine=hppa1.1-hp
+		;;
+	hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893)
+		# FIXME: really hppa2.0-hp
+		basic_machine=hppa1.1-hp
+		;;
+	hp9k8[0-9][13679] | hp8[0-9][13679])
 		basic_machine=hppa1.1-hp
 		;;
 	hp9k8[0-9][0-9] | hp8[0-9][0-9])
@@ -345,27 +527,42 @@
 	hppa-next)
 		os=-nextstep3
 		;;
+	hppaosf)
+		basic_machine=hppa1.1-hp
+		os=-osf
+		;;
+	hppro)
+		basic_machine=hppa1.1-hp
+		os=-proelf
+		;;
 	i370-ibm* | ibm*)
 		basic_machine=i370-ibm
-		os=-mvs
 		;;
 # I'm not sure what "Sysv32" means.  Should this be sysv3.2?
-	i[34567]86v32)
+	i*86v32)
 		basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
 		os=-sysv32
 		;;
-	i[34567]86v4*)
+	i*86v4*)
 		basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
 		os=-sysv4
 		;;
-	i[34567]86v)
+	i*86v)
 		basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
 		os=-sysv
 		;;
-	i[34567]86sol2)
+	i*86sol2)
 		basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
 		os=-solaris2
 		;;
+	i386mach)
+		basic_machine=i386-mach
+		os=-mach
+		;;
+	i386-vsta | vsta)
+		basic_machine=i386-unknown
+		os=-vsta
+		;;
 	iris | iris4d)
 		basic_machine=mips-sgi
 		case $os in
@@ -391,9 +588,17 @@
 		basic_machine=ns32k-utek
 		os=-sysv
 		;;
+	mingw32)
+		basic_machine=i386-pc
+		os=-mingw32
+		;;
 	miniframe)
 		basic_machine=m68000-convergent
 		;;
+	*mint | -mint[0-9]* | *MiNT | *MiNT[0-9]*)
+		basic_machine=m68k-atari
+		os=-mint
+		;;
 	mipsel*-linux*)
 		basic_machine=mipsel-unknown
 		os=-linux-gnu
@@ -408,10 +613,34 @@
 	mips3*)
 		basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown
 		;;
+	mmix*)
+		basic_machine=mmix-knuth
+		os=-mmixware
+		;;
+	monitor)
+		basic_machine=m68k-rom68k
+		os=-coff
+		;;
+	msdos)
+		basic_machine=i386-pc
+		os=-msdos
+		;;
+	mvs)
+		basic_machine=i370-ibm
+		os=-mvs
+		;;
 	ncr3000)
 		basic_machine=i486-ncr
 		os=-sysv4
 		;;
+	netbsd386)
+		basic_machine=i386-unknown
+		os=-netbsd
+		;;
+	netwinder)
+		basic_machine=armv4l-rebel
+		os=-linux
+		;;
 	news | news700 | news800 | news900)
 		basic_machine=m68k-sony
 		os=-newsos
@@ -424,6 +653,10 @@
 		basic_machine=mips-sony
 		os=-newsos
 		;;
+	necv70)
+		basic_machine=v70-nec
+		os=-sysv
+		;;
 	next | m*-next )
 		basic_machine=m68k-next
 		case $os in
@@ -449,9 +682,32 @@
 		basic_machine=i960-intel
 		os=-nindy
 		;;
+	mon960)
+		basic_machine=i960-intel
+		os=-mon960
+		;;
+	nonstopux)
+		basic_machine=mips-compaq
+		os=-nonstopux
+		;;
 	np1)
 		basic_machine=np1-gould
 		;;
+	nsr-tandem)
+		basic_machine=nsr-tandem
+		;;
+	op50n-* | op60c-*)
+		basic_machine=hppa1.1-oki
+		os=-proelf
+		;;
+	OSE68000 | ose68000)
+		basic_machine=m68000-ericsson
+		os=-ose
+		;;
+	os68k)
+		basic_machine=m68k-none
+		os=-os68k
+		;;
 	pa-hitachi)
 		basic_machine=hppa1.1-hitachi
 		os=-hiuxwe2
@@ -469,28 +725,28 @@
         pc532 | pc532-*)
 		basic_machine=ns32k-pc532
 		;;
-	pentium | p5 | k5 | nexen)
+	pentium | p5 | k5 | k6 | nexgen)
 		basic_machine=i586-pc
 		;;
-	pentiumpro | p6 | k6 | 6x86)
+	pentiumpro | p6 | 6x86 | athlon)
 		basic_machine=i686-pc
 		;;
 	pentiumii | pentium2)
-		basic_machine=i786-pc
+		basic_machine=i686-pc
 		;;
-	pentium-* | p5-* | k5-* | nexen-*)
+	pentium-* | p5-* | k5-* | k6-* | nexgen-*)
 		basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'`
 		;;
-	pentiumpro-* | p6-* | k6-* | 6x86-*)
+	pentiumpro-* | p6-* | 6x86-* | athlon-*)
 		basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
 		;;
 	pentiumii-* | pentium2-*)
-		basic_machine=i786-`echo $basic_machine | sed 's/^[^-]*-//'`
+		basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
 		;;
 	pn)
 		basic_machine=pn-gould
 		;;
-	power)	basic_machine=rs6000-ibm
+	power)	basic_machine=power-ibm
 		;;
 	ppc)	basic_machine=powerpc-unknown
 	        ;;
@@ -502,15 +758,37 @@
 	ppcle-* | powerpclittle-*)
 		basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'`
 		;;
+	ppc64)	basic_machine=powerpc64-unknown
+	        ;;
+	ppc64-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'`
+		;;
+	ppc64le | powerpc64little | ppc64-le | powerpc64-little)
+		basic_machine=powerpc64le-unknown
+	        ;;
+	ppc64le-* | powerpc64little-*)
+		basic_machine=powerpc64le-`echo $basic_machine | sed 's/^[^-]*-//'`
+		;;
 	ps2)
 		basic_machine=i386-ibm
 		;;
+	pw32)
+		basic_machine=i586-unknown
+		os=-pw32
+		;;
+	rom68k)
+		basic_machine=m68k-rom68k
+		os=-coff
+		;;
 	rm[46]00)
 		basic_machine=mips-siemens
 		;;
 	rtpc | rtpc-*)
 		basic_machine=romp-ibm
 		;;
+	sa29200)
+		basic_machine=a29k-amd
+		os=-udi
+		;;
 	sequent)
 		basic_machine=i386-sequent
 		;;
@@ -518,6 +796,10 @@
 		basic_machine=sh-hitachi
 		os=-hms
 		;;
+	sparclite-wrs)
+		basic_machine=sparclite-wrs
+		os=-vxworks
+		;;
 	sps7)
 		basic_machine=m68k-bull
 		os=-sysv2
@@ -525,6 +807,13 @@
 	spur)
 		basic_machine=spur-unknown
 		;;
+	st2000)
+		basic_machine=m68k-tandem
+		;;
+	stratus)
+		basic_machine=i860-stratus
+		os=-sysv4
+		;;
 	sun2)
 		basic_machine=m68000-sun
 		;;
@@ -565,10 +854,22 @@
 	sun386 | sun386i | roadrunner)
 		basic_machine=i386-sun
 		;;
+	sv1)
+		basic_machine=sv1-cray
+		os=-unicos
+		;;
 	symmetry)
 		basic_machine=i386-sequent
 		os=-dynix
 		;;
+	t3e)
+		basic_machine=t3e-cray
+		os=-unicos
+		;;
+	tic54x | c54x*)
+		basic_machine=tic54x-unknown
+		os=-coff
+		;;
 	tx39)
 		basic_machine=mipstx39-unknown
 		;;
@@ -586,6 +887,10 @@
 		basic_machine=a29k-nyu
 		os=-sym1
 		;;
+	v810 | necv810)
+		basic_machine=v810-nec
+		os=-none
+		;;
 	vaxv)
 		basic_machine=vax-dec
 		os=-sysv
@@ -609,6 +914,18 @@
 		basic_machine=a29k-wrs
 		os=-vxworks
 		;;
+	w65*)
+		basic_machine=w65-wdc
+		os=-none
+		;;
+	w89k-*)
+		basic_machine=hppa1.1-winbond
+		os=-proelf
+		;;
+	windows32)
+		basic_machine=i386-pc
+		os=-windows32-msvcrt
+		;;
 	xmp)
 		basic_machine=xmp-cray
 		os=-unicos
@@ -616,6 +933,10 @@
         xps | xps100)
 		basic_machine=xps100-honeywell
 		;;
+	z8k-*-coff)
+		basic_machine=z8k-unknown
+		os=-sim
+		;;
 	none)
 		basic_machine=none-none
 		os=-none
@@ -623,6 +944,15 @@
 
 # Here we handle the default manufacturer of certain CPU types.  It is in
 # some cases the only manufacturer, in others, it is the most popular.
+	w89k)
+		basic_machine=hppa1.1-winbond
+		;;
+	op50n)
+		basic_machine=hppa1.1-oki
+		;;
+	op60c)
+		basic_machine=hppa1.1-oki
+		;;
 	mips)
 		if [ x$os = x-linux-gnu ]; then
 			basic_machine=mips-unknown
@@ -639,13 +969,20 @@
 	vax)
 		basic_machine=vax-dec
 		;;
+	pdp10)
+		# there are many clones, so DEC is not a safe bet
+		basic_machine=pdp10-unknown
+		;;
 	pdp11)
 		basic_machine=pdp11-dec
 		;;
 	we32k)
 		basic_machine=we32k-att
 		;;
-	sparc)
+	sh3 | sh4 | sh3eb | sh4eb)
+		basic_machine=sh-unknown
+		;;
+	sparc | sparcv9 | sparcv9b)
 		basic_machine=sparc-sun
 		;;
         cydra)
@@ -657,6 +994,19 @@
 	orion105)
 		basic_machine=clipper-highlevel
 		;;
+	mac | mpw | mac-mpw)
+		basic_machine=m68k-apple
+		;;
+	pmac | pmac-mpw)
+		basic_machine=powerpc-apple
+		;;
+	c4x*)
+		basic_machine=c4x-none
+		os=-coff
+		;;
+	*-unknown)
+		# Make sure to match an already-canonicalized machine name.
+		;;
 	*)
 		echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2
 		exit 1
@@ -710,14 +1060,37 @@
 	      | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \
 	      | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \
 	      | -hiux* | -386bsd* | -netbsd* | -openbsd* | -freebsd* | -riscix* \
-	      | -lynxos* | -bosx* | -nextstep* | -cxux* | -aout* | -elf* \
+	      | -lynxos* | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \
 	      | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \
 	      | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \
+	      | -chorusos* | -chorusrdb* \
 	      | -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \
-	      | -mingw32* | -linux-gnu* | -uxpv* | -beos* | -rhapsody* \
-	      | -openstep*)
+	      | -mingw32* | -linux-gnu* | -uxpv* | -beos* | -mpeix* | -udk* \
+	      | -interix* | -uwin* | -rhapsody* | -darwin* | -opened* \
+	      | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \
+	      | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \
+	      | -os2* | -vos*)
 	# Remember, each alternative MUST END IN *, to match a version number.
 		;;
+	-qnx*)
+		case $basic_machine in
+		    x86-* | i*86-*)
+			;;
+		    *)
+			os=-nto$os
+			;;
+		esac
+		;;
+	-nto*)
+		os=-nto-qnx
+		;;
+	-sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \
+	      | -windows* | -osx | -abug | -netware* | -os9* | -beos* \
+	      | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*)
+		;;
+	-mac*)
+		os=`echo $os | sed -e 's|mac|macos|'`
+		;;
 	-linux*)
 		os=`echo $os | sed -e 's|linux|linux-gnu|'`
 		;;
@@ -727,6 +1100,12 @@
 	-sunos6*)
 		os=`echo $os | sed -e 's|sunos6|solaris3|'`
 		;;
+	-opened*)
+		os=-openedition
+		;;
+	-wince*)
+		os=-wince
+		;;
 	-osfrose*)
 		os=-osfrose
 		;;
@@ -742,12 +1121,18 @@
 	-acis*)
 		os=-aos
 		;;
+	-386bsd)
+		os=-bsd
+		;;
 	-ctix* | -uts*)
 		os=-sysv
 		;;
 	-ns2 )
 	        os=-nextstep2
 		;;
+	-nsk*)
+		os=-nsk
+		;;
 	# Preserve the version number of sinix5.
 	-sinix5.*)
 		os=`echo $os | sed -e 's|sinix|sysv|'`
@@ -773,9 +1158,18 @@
 	# This must come after -sysvr4.
 	-sysv*)
 		;;
+	-ose*)
+		os=-ose
+		;;
+	-es1800*)
+		os=-ose
+		;;
 	-xenix)
 		os=-xenix
 		;;
+        -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*)
+	        os=-mint
+		;;
 	-none)
 		;;
 	*)
@@ -801,9 +1195,15 @@
 	*-acorn)
 		os=-riscix1.2
 		;;
+	arm*-rebel)
+		os=-linux
+		;;
 	arm*-semi)
 		os=-aout
 		;;
+	pdp10-*)
+		os=-tops20
+		;;
         pdp11-*)
 		os=-none
 		;;
@@ -822,6 +1222,15 @@
 		# default.
 		# os=-sunos4
 		;;
+	m68*-cisco)
+		os=-aout
+		;;
+	mips*-cisco)
+		os=-elf
+		;;
+	mips*-*)
+		os=-elf
+		;;
 	*-tti)	# must be before sparc entry or we get the wrong os.
 		os=-sysv3
 		;;
@@ -834,6 +1243,15 @@
 	*-ibm)
 		os=-aix
 		;;
+	*-wec)
+		os=-proelf
+		;;
+	*-winbond)
+		os=-proelf
+		;;
+	*-oki)
+		os=-proelf
+		;;
 	*-hp)
 		os=-hpux
 		;;
@@ -894,9 +1312,21 @@
 	*-masscomp)
 		os=-rtu
 		;;
-	f301-fujitsu)
+	f30[01]-fujitsu | f700-fujitsu)
 		os=-uxpv
 		;;
+	*-rom68k)
+		os=-coff
+		;;
+	*-*bug)
+		os=-coff
+		;;
+	*-apple)
+		os=-macos
+		;;
+	*-atari*)
+		os=-mint
+		;;
 	*)
 		os=-none
 		;;
@@ -918,9 +1348,15 @@
 			-aix*)
 				vendor=ibm
 				;;
+			-beos*)
+				vendor=be
+				;;
 			-hpux*)
 				vendor=hp
 				;;
+			-mpeix*)
+				vendor=hp
+				;;
 			-hiux*)
 				vendor=hitachi
 				;;
@@ -936,7 +1372,7 @@
 			-genix*)
 				vendor=ns
 				;;
-			-mvs*)
+			-mvs* | -opened*)
 				vendor=ibm
 				;;
 			-ptx*)
@@ -948,9 +1384,29 @@
 			-aux*)
 				vendor=apple
 				;;
+			-hms*)
+				vendor=hitachi
+				;;
+			-mpw* | -macos*)
+				vendor=apple
+				;;
+			-*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*)
+				vendor=atari
+				;;
+			-vos*)
+				vendor=stratus
+				;;
 		esac
 		basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"`
 		;;
 esac
 
 echo $basic_machine$os
+exit 0
+
+# Local variables:
+# eval: (add-hook 'write-file-hooks 'time-stamp)
+# time-stamp-start: "timestamp='"
+# time-stamp-format: "%:y-%02m-%02d"
+# time-stamp-end: "'"
+# End:

Modified: trunk/orca/config/aclocal.m4
==============================================================================
--- trunk/orca/config/aclocal.m4	(original)
+++ trunk/orca/config/aclocal.m4	Sat Jul 13 22:27:37 2002
@@ -1,14 +1,15 @@
-dnl config/aclocal.m4 generated automatically by aclocal 1.4
+# config/aclocal.m4 generated automatically by aclocal 1.5
 
-dnl Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc.
-dnl This file is free software; the Free Software Foundation
-dnl gives unlimited permission to copy and/or distribute it,
-dnl with or without modifications, as long as this notice is preserved.
+# Copyright 1996, 1997, 1998, 1999, 2000, 2001
+# Free Software Foundation, Inc.
+# This file is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
 
-dnl This program is distributed in the hope that it will be useful,
-dnl but WITHOUT ANY WARRANTY, to the extent permitted by law; without
-dnl even the implied warranty of MERCHANTABILITY or FITNESS FOR A
-dnl PARTICULAR PURPOSE.
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
 
 dnl Check if the requested modules are install in this perl module.
 dnl Do not cache this result, since the user may easy install the

Modified: trunk/orca/INSTALL
==============================================================================
--- trunk/orca/INSTALL	(original)
+++ trunk/orca/INSTALL	Sat Jul 13 22:27:37 2002
@@ -142,10 +142,10 @@
     Name			Required Version	Included With Orca
     ----------------------------------------------------------------------
     Data::Dumper		2.101 or greater	2.101
-    Digest::MD5			2.13 or greater		2.13
+    Digest::MD5			2.16 or greater		2.16
     Math::IntervalSearch	1.05 or greater		1.05
     RRDs			1.0.33 or greater	1.0.33
-    Storable			1.0.11 or greater	1.0.11
+    Storable			1.0.13 or greater	1.0.13
 
     All five of these modules are included with the Orca distribution
     in the packages directory.  When you configure Orca in step 3),
@@ -173,10 +173,10 @@
 
     Digest::MD5
 
-      http://www.perl.com/CPAN/authors/id/G/GA/GAAS/Digest-MD5-2.13.tar.gz
+      http://www.perl.com/CPAN/authors/id/G/GA/GAAS/Digest-MD5-2.16.tar.gz
 
-      % gunzip -c Digest-MD5-2.13.tar.gz | tar xvf -
-      % cd Digest-MD5-2.13
+      % gunzip -c Digest-MD5-2.16.tar.gz | tar xvf -
+      % cd Digest-MD5-2.16
       % perl Makefile.PL
       % make
       % make test
@@ -213,10 +213,10 @@
 
     Storable
 
-      http://www.perl.com/CPAN/authors/id/R/RA/RAM/Storable-1.0.11.tar.gz
+      http://www.perl.com/CPAN/authors/id/R/RA/RAM/Storable-1.0.13.tar.gz
 
-      % gunzip -c Storable-1.0.11.tar.gz | tar xvf -
-      % cd Storable-1.0.11
+      % gunzip -c Storable-1.0.13.tar.gz | tar xvf -
+      % cd Storable-1.0.13
       % perl Makefile.PL
       % make
       % make test

Modified: trunk/orca/lib/homesteaders.cfg
==============================================================================
--- trunk/orca/lib/homesteaders.cfg	(original)
+++ trunk/orca/lib/homesteaders.cfg	Sat Jul 13 22:27:37 2002
@@ -86,7 +86,7 @@
   <font face="Arial,Helvetica">
     Please email requests for enhancements, comments, or suggestions
     to Dr. Blair Zajac
-    <a href="mailto:blair at gps.caltech.edu">&lt;blair at gps.caltech.edu&gt;</a>.
+    <a href="mailto:blair at orcaware.com">&lt;blair at orcaware.com&gt;</a>.
   </font>
 
 # These are the same plot except one of them do not allow deletions.

Modified: trunk/orca/lib/Orca/HTMLFile.pm
==============================================================================
--- trunk/orca/lib/Orca/HTMLFile.pm	(original)
+++ trunk/orca/lib/Orca/HTMLFile.pm	Sat Jul 13 22:27:37 2002
@@ -63,17 +63,17 @@
 <table cellpadding=0 border=0>
   <tr>
     <td width=350 valign=center>
-      <a href="http://www.gps.caltech.edu/~blair/orca/">
+      <a href="http://www.orcaware.com/orca/">
         <img width=186 height=45 border=0 src="orca.gif" alt="Orca Home Page"></a>
       <br>
       <font FACE="Arial,Helvetica" size=2>
         Orca-$ORCA_VERSION by
-        <a href="http://www.gps.caltech.edu/~blair/">Blair Zajac</a>
-        <a href="mailto:blair\@blair.gps.caltech.edu">blair\@gps.caltech.edu</a>.
+        <a href="http://www.orcaware.com/">Blair Zajac</a>
+        <a href="mailto:blair\@orcaware.com">blair\@orcaware.com</a>.
       </font>
     </td>
     <td width=120 valign=center>
-      <a href="http://ee-staff.ethz.ch/~oetiker/webtools/rrdtool">
+      <a href="http://people.ee.ethz.ch/~oetiker/webtools/rrdtool/">
         <img width=120 height=34 border=0 src="rrdtool.gif" alt="RRDTool Home Page"></a>
     </td>
   </tr>

Modified: trunk/orca/lib/Orca/OpenFileHash.pm
==============================================================================
--- trunk/orca/lib/Orca/OpenFileHash.pm	(original)
+++ trunk/orca/lib/Orca/OpenFileHash.pm	Sat Jul 13 22:27:37 2002
@@ -212,6 +212,16 @@
   }
 }
 
+sub is_pipe {
+  my ($self, $fid) = @_;
+
+  if (defined (my $ref = $self->[I_HASH]{$fid})) {
+    return $ref->[I_FID_IS_PIPE];
+  } else {
+    return;
+  }
+}
+
 sub is_open {
   defined $_[0]->[I_HASH]{$_[1]};
 }

Modified: trunk/orca/lib/Orca/Constants.pm
==============================================================================
--- trunk/orca/lib/Orca/Constants.pm	(original)
+++ trunk/orca/lib/Orca/Constants.pm	Sat Jul 13 22:27:37 2002
@@ -20,7 +20,7 @@
 # IS_WIN32		If Orca is running on a Windows platform.
 use vars         qw($ORCA_VERSION $ORCA_RRD_VERSION);
 push(@EXPORT_OK, qw($ORCA_VERSION $ORCA_RRD_VERSION DAY_SECONDS IS_WIN32));
-$ORCA_VERSION        =  '0.263';
+$ORCA_VERSION        =  '0.264';
 $ORCA_RRD_VERSION    =  19990222;
 sub DAY_SECONDS      () { 24*60*60 };
 sub IS_WIN32         () { $^O eq 'MSWin32' };
@@ -46,12 +46,12 @@
   @RRA_ROW_COUNTS =   ( 2400,  1488,   1200,  1098);
 }
 
-# Define all of the the different possible plots to create.  This
-# structure allows allows the user via the configuration file to turn
-# off particular plots to create, such the monthly one.  In addition
-# to the plot types that are structured in the RRD via its RRA's,
-# there is an additional hourly plot that is listed before the daily
-# plot and an additional quarterly plot (100 days) created between the
+# Define all of the different possible plots to create.  This
+# structure allows the user via the configuration file to turn off
+# particular plots to create, such the monthly one.  In addition to
+# the plot types that are structured in the RRD via its RRA's, there
+# is an additional hourly plot that is listed before the daily plot
+# and an additional quarterly plot (100 days) created between the
 # monthly and yearly plots.  The quarterly plot is updated daily.
 #
 # For each plot type, the first value in the array reference is the

Modified: trunk/orca/lib/Orca/SourceFile.pm
==============================================================================
--- trunk/orca/lib/Orca/SourceFile.pm	(original)
+++ trunk/orca/lib/Orca/SourceFile.pm	Sat Jul 13 22:27:38 2002
@@ -524,11 +524,18 @@
     # not changing the original plot structure.  Look through each
     # element of each data and look for names appearing in the column
     # description array.  If there is a match for this file, then
-    # convert the element to an index the @_ array where the data will
-    # be pulled from.  If there is not a match, then see if the
-    # element matches a name from one of the other column names from
-    # the same group.  In this case the data argument for this file
-    # will not be used.
+    # convert the element to index the @_ array where the data will be
+    # pulled from.  If there is not a match, then see if the element
+    # matches a name from one of the other column names from the same
+    # group.  In this case the data argument for this file will not be
+    # used.
+
+    # To allow data gathering program to send unknown values to Orca,
+    # check if any of the substituted values equals 'U' and return
+    # immediately the value 'U' to pass to RRDtool.  Keep track of the
+    # substituted values.
+    my %substituted_values;
+
     my @datas;
     foreach my $one_data (@{$plot->{data}}) {
       push(@datas, [@$one_data]);
@@ -540,8 +547,9 @@
         my $element = $datas[$j][$k];
         my $pos;
         if (defined ($pos = $column_description{$element})) {
-          $datas[$j][$k]  = "\$_[$pos]";
           $match_one_data = 1;
+          $datas[$j][$k]  = "\$_[$pos]";
+          $substituted_values{"\$_[$pos]"} = 1;
         } elsif (defined $group_column_names[$group_index]{$element}) {
           my $m = $old_i + 1;
           if ($required) {
@@ -580,10 +588,14 @@
     for (my $j=0; $j<@datas; ++$j) {
       my $data_expression;
       if (defined $datas[$j]) {
-        $data_expression = "@{$datas[$j]}";
-        my $sub_expr     = "sub { $data_expression }";
-        my $sub_expr_md5 = md5($data_expression);
-        my $eval_result  = $choose_data_sub_cache{$sub_expr_md5};
+        my $sub_expr = "sub {\n";
+        foreach my $s (sort keys %substituted_values) {
+          $sub_expr .= "  if (!defined($s) || $s eq 'U') {    return 'U';\n  }\n";
+        }
+        $data_expression  = "@{$datas[$j]}";
+        $sub_expr        .= "  $data_expression;\n}";
+        my $sub_expr_md5  = md5($data_expression);
+        my $eval_result   = $choose_data_sub_cache{$sub_expr_md5};
         unless (defined $eval_result) {
           $eval_result = 1;
           my $test_value;
@@ -802,13 +814,14 @@
   # Try to get a file descriptor to open the file.  Skip the first
   # line if the first line is used for column descriptions.
 
-  my $opened_new_fd = !$fd;
+  my $opened_new_fd = 0;
   unless ($fd) {
     unless ($fd = $open_file_cache->open($fid, $file_mtime)) {
       warn "$0: warning: cannot open `$sfile_fids[$fid]' for reading: $!\n";
       return 0;
     }
     <$fd> if $self->[I_FIRST_LINE];
+    $opened_new_fd = 1;
   }
 
   my $date_column_index = $self->[I_DATE_COLUMN_INDEX];
@@ -893,16 +906,17 @@
   # close the descriptor, reopen it and read all the rest of the data.
   # If neither of these cases is true, then close the file if the file
   # should be reopened next time.
-  if ($file_status == -1 or ($file_status == 2 and !$opened_new_fd)) {
+  if ($file_status == 2 and !$opened_new_fd) {
     $open_file_cache->close($fid) or
       warn "$0: warning: cannot close `$sfile_fids[$fid]' for reading: $!\n";
-    if ($file_status != -1) {
-      # Setting the last_read_time to -1 will force load_new_data to
-      # read it.
-      $self->[I_LAST_READ_TIME] = -1;
-      $number_added += $self->load_new_data;
-    }
-  } elsif ($close_once_done or $self->[I_REOPEN]) {
+    # Setting the last_read_time to -1 will force load_new_data to
+    # read it.
+    $self->[I_LAST_READ_TIME] = -1;
+    $number_added += $self->load_new_data;
+  } elsif ($file_status == -1 or
+           $close_once_done   or
+           $self->[I_REOPEN]  or
+           $open_file_cache->is_pipe($fid)) {
     $open_file_cache->close($fid) or
       warn "$0: warning: cannot close `$sfile_fids[$fid]' for reading: $!\n";
   }

Modified: trunk/orca/FAQ
==============================================================================
--- trunk/orca/FAQ	(original)
+++ trunk/orca/FAQ	Sat Jul 13 22:27:38 2002
@@ -3,7 +3,7 @@
 
 Please email submissions to the FAQ to orca-users at yahoogroups.com.
 
-Version: 1.06 May 10, 2001
+Version: 1.07 May 24, 2001
 
 General
 -------
@@ -45,11 +45,13 @@
        line 285"?
  3.10) Why do I get the error "Fatal: member: XXXXX vanished!: Near
        line YYY"?
- 3.11) Why don't I get plots for my Veritas filesystems?
- 3.12) Why don't I get plots for my RSM filesystems?
- 3.13) Why don't I get any Interface Bits Per Second data for my qe
+ 3.11) What do I do when I get the message "Fatal: subscript: 2 out of
+       range for: GLOBAL_net[2]: Near line 178"?
+ 3.12) Why don't I get plots for my Veritas filesystems?
+ 3.13) Why don't I get plots for my RSM filesystems?
+ 3.14) Why don't I get any Interface Bits Per Second data for my qe
        board?
- 3.14) Orcallator.se core dumps.
+ 3.15) Orcallator.se core dumps.
 
 General
 -------
@@ -289,14 +291,35 @@
        If a particular define does not fix the problem, then don't run
        SE with it.
 
- 3.11) Why don't I get plots for my Veritas filesystems?
+ 3.11) What do I do when I get the message "Fatal: subscript: 2 out of
+       range for: GLOBAL_net[2]: Near line 178"?
+
+       Try adding the following string "-DMAX_IF=XYZ" where XYZ is
+       larger than the total number of interfaces you have on the
+       system to se's command line.
+
+       For example, if you had 9 separate interfaces on the system,
+       then you could edit start_orcallator like this:
+
+         --- start_orcallator.sh.in.FCS  Sat Oct 28 15:04:33 2000
+         +++ start_orcallator.sh.in      Thu May 24 08:55:39 2001
+         @@ -31,6 +31,7 @@
+          #SE_PATCHES="$SE_PATCHES -DLE_PATCH"
+          #SE_PATCHES="$SE_PATCHES -DHME_PATCH"
+          #SE_PATCHES="$SE_PATCHES -DHME_PATCH_IFSPEED"
+         +SE_PATCHES="$SE_PATCHES -DMAX_IF=10"
+ 
+          # Check if the SE executable was found upon configure.
+          if test -z "$SE"; then
+
+ 3.12) Why don't I get plots for my Veritas filesystems?
 
        Version 1.13 or later of orcallator.se should be able to
        generate filesystem statistics for Veritas filesystems.  The
        first thing to try is to upgrade to the latest SE and
        orcallator.se release.
 
- 3.12) Why don't I get plots for my RSM filesystems?
+ 3.13) Why don't I get plots for my RSM filesystems?
 
        I don't think orcallator.se records data from RSM disks.
 
@@ -313,7 +336,7 @@
        have access to a system with RSM on it, this is something
        that somebody else will need to take on.  Hint, hint...
 
- 3.13) Why don't I get any Interface Bits Per Second data for my qe
+ 3.14) Why don't I get any Interface Bits Per Second data for my qe
        board?
 
        Most likely you are either running Solaris 7 or older or
@@ -361,7 +384,7 @@
                case NETIF_BF:
                  kstat$bf.number$ = number$ - (if_max[NETIF_QE] + 1);
 
- 3.14) Orcallator.se core dumps.
+ 3.15) Orcallator.se core dumps.
 
        Some of the SE include files can cause core dumps if there are
        oddities on the system.  Apply the following patches:

Modified: trunk/orca/CHANGES
==============================================================================
--- trunk/orca/CHANGES	(original)
+++ trunk/orca/CHANGES	Sat Jul 13 22:27:38 2002
@@ -1,3 +1,201 @@
+Tue Oct  2 18:18:29 PDT 2001
+
+	* Release Orca version 0.27b2.
+
+Tue Oct  2 17:56:22 PDT 2001 <blair at orcaware.com> Blair Zajac
+
+	* orcallator/orcallator.se: No changes, just bump version
+	  number to 1.28.
+
+Tue Oct  2 17:56:22 PDT 2001 <blair at orcaware.com> Blair Zajac
+
+	* config/config.guess: Upgrade from ftp://ftp.gnu.org/gnu/config
+	* config/config.sub: Ditto.
+
+Tue Oct  2 17:51:46 PDT 2001 <blair at orcaware.com> Blair Zajac
+
+	* orcallator/orcallator.cfg.in: Require version 0.264 of orca
+	  to load the configuration file.
+
+Sat Sep 29 19:00:49 PDT 2001 <blair at orcaware.com> Blair Zajac
+
+	* configure.in: Remove a redundant word in a comment.
+	* configure: Ditto.
+	* src/orca.pl.in: Ditto.
+	* lib/Orca/Constants.pm: Ditto.
+
+Sat Sep 29 18:30:03 PDT 2001 <blair at orcaware.com> Blair Zajac
+
+	* orcallator/orcallator.se: Upgrade to orcallator.se 1.28b7.
+	  Change the output log filename format from percol-%Y-%m-%d
+	  to percol-%Y-%m-%d-XXX, where XXX is a number starting at 0
+	  that is incremented anytime the number of output columns
+	  changes or type of data stored in a column changes.  This is
+	  in addition to the creation of a new log filename when a new
+	  day starts.  Whenever the program needs to create a new log
+	  file for any reason, it will search for the smallest XXX so
+	  that there are no log files named
+	  percol-%Y-%m-%d-XXX{,.Z,.gz,.bz2}.  If the COMPRESSOR
+	  environmental is set and any uncompressed files are found
+	  while looking for the smallest XXX, they are compressed with
+	  the COMPRESSOR command.
+	* orcallator/orcallator.cfg.in: Update find_files to find the
+	  new log files generated by orcallator.se 1.28b7.
+
+Fri Sep 28 17:13:43 PDT 2001 <blair at orcaware.com> Blair Zajac
+
+	* orcallator/orcallator.cfg.in: Add a new plot titled
+	  "Processes in Run Queue/Waiting/Swapped" to plot the new
+	  data recorded in orcallator.se 1.28b5, #runque, #waiting and
+	  #swpque.
+	* orcallator/orcallator.se: Upgrade to orcallator.se 1.28b6.
+	  Instead of outputting the number of CPUs only when
+	  WATCH_MUTEX is defined, output it when either WATCH_CPU or
+	  WATCH_MUTEX is defined.  Only declare and update tmp_mutex
+	  if WATCH_MUTEX defined.
+	* orcallator/orcallator.se: Upgrade to orcallator.se 1.28b5.
+	  Add three parameters that vmstat outputs, #runque, vmstat's
+	  `r' column, which is the number of processes in the run
+	  queue waiting to run on a CPU, #waiting, vmstat's `b'
+	  column, which is the number of processes blocked for
+	  resourceses (I/O, paging), and #swpque, vmstat's `w', the
+	  number of proceses runnable but swapped out.  Increase
+	  MAX_COLUMNS from 512 to 2048.  Check [wr]lentime to see if
+	  an EMC is using a fake disk for control.  EMC disks have a
+	  fake disk which commands are run over to configure the disk
+	  array or to get stats from; they are not real data
+	  transfers. They cause 1000 MB/sec writes to appear in the
+	  stats.  I still get them but not as often with this bit of
+	  code in.  If the I/O which occurred in the last five minutes
+	  is not greater than 1/100sec then it is not a very valid
+	  stat anyway.  What hapens is that we can have a small I/O,
+	  say 1024 bytes, in a 1/100sec = 1024*100/sec.  I am thinking
+	  of making it wlentime+rlentime > 2 since I am still geting
+	  fake write spikes.  Make sure to define
+	  HAVE_EMC_DISK_CONTROL to enable this check.  Patch
+	  contributed by Damon Atkins <Damon.Atkins at nabaus.com.au>.
+
+Fri Sep  7 09:54:10 PDT 2001 <blair at orcaware.com> Blair Zajac
+
+	* packages: Include and require Digest::MD5 2.16.
+	* configure.in: Ditto.
+	* configure: Ditto.
+	* INSTALL: Ditto.
+	* NEWS: Ditto.
+
+Wed Aug 29 10:09:29 PDT 2001 <blair at orcaware.com> Blair Zajac
+
+	* packages: Include and require Storable 1.013.
+	* configure.in: Ditto.
+	* configure: Ditto.
+	* INSTALL: Ditto.
+	* NEWS: Ditto.
+
+Mon Aug 27 23:09:11 PDT 2001
+
+	* src/orca.pl.in: Update URLs to RRDtool's and Cricket's home
+	  page.
+	* lib/Orca/HTMLFile: Update URL to RRDtool's home page.
+
+Mon Aug 27 22:05:57 PDT 2001
+
+	* packages: Include and require Digest::MD5 2.15.
+	* configure.in: Ditto.
+	* configure: Ditto.
+	* INSTALL: Ditto.
+	* NEWS: Ditto.
+
+Fri Aug 24 11:12:31 PDT 2001
+
+	* config/config.guess: Upgrade from ftp://ftp.gnu.org/gnu/config
+	* config/config.sub: Ditto.
+
+Fri Aug 24 09:57:36 PDT 2001
+
+	* lib/Orca/OpenFileHash.pm: Add a new method is_pipe that
+	  returns true if the given file id opened a pipe instead of
+	  just opening a file.
+	* lib/Orca/SourceFile.pm: To fix a bug where Orca would leave
+	  around many defunct bunzip2, gunzip or uncompress processes
+	  when reading compressed input data files.  Now when
+	  load_new_data has reached the end of the input data file,
+	  use the new OpenFileHash->is_pipe method to determine if the
+	  file descriptor was opened with a bunzip2, gunzip or
+	  uncompress pipe, and if so, close the file descriptor, since
+	  there cannot be anyway for additional data to appear after a
+	  pipe has been closed.  This will close and remove the
+	  defunct processes from the system.
+
+Wed Aug 15 12:27:07 PDT 2001
+
+	* README: Change all the links to Orca's home page from
+	  http://www.gps.caltech.edu/~blair/orca/ to
+	  http://www.orcaware.com/orca/.
+	* src/orca.pl.in: Ditto.
+	* lib/Orca/HTMLFile.pm: Ditto.
+	* orcallator/orcallator.cfg.in: Ditto.
+	* Orca/HTMLFile.pm: Ditto.
+	* Orca/HTMLFile.pm: Change the email address
+	  blair at gps.caltech.edu to blair at orcaware.com.
+
+Wed Aug 15 11:00:14 PDT 2001
+
+	* README: Change the email address blair at gps.caltech.edu to
+	  blair at orcaware.com.
+	* NEWS: Ditto.
+	* src/orca.pl.in: Ditto.
+	* orcallator/orcallator.se: Ditto.
+	* lib/homesteaders.cfg: Ditto.
+
+Wed Jul 18 08:18:17 PDT 2001
+
+	* configure.in: Include Digest::MD5 2.14 but continue to
+	  require version 2.13.
+	* configure: Ditto.
+	* packages: Ditto.
+	* INSTALL: Ditto.
+
+Wed Jul 11 16:08:15 PDT 2001
+
+	* config/config.guess: Upgrade from ftp://ftp.gnu.org/pub/gnu/config
+	* config/config.sub: Ditto.
+
+Mon Jul  2 22:58:04 PDT 2001
+
+	* configure.in: Include and require Storable 1.0.12.
+	* configure: Ditto.
+	* packages: Ditto.
+	* INSTALL: Ditto.
+
+Mon Jun 18 07:48:04 PDT 2001
+
+	* orcallator/orcallator.cfg.in: Have the Disk Run Percent plot
+	  match for disk_runp_sd\d+ in addition to disk_runp_md\d+ in
+	  the orcallator.se generated output files.
+
+Sun Jun 10 08:31:55 PDT 2001
+
+	* lib/Orca/SourceFile.pm: Now have the anonymous subroutines
+	  for processing input source files check if any of the input
+	  values are either undefined or equal to 'U'.  If so, then
+	  return immediately a 'U' to pass to RRDtool instead of
+	  performing mathematical operations on a string value.
+
+Mon Jun  4 00:50:28 PDT 2001
+
+	* config/config.guess: Upgrade from ftp://ftp.gnu.org/pub/gnu/config
+	* config/config.sub: Ditto.
+
+Thu May 24 12:09:18 PDT 2001
+
+	* orcallator/orcallator.cfg.in: Add an eri device as another
+	  100 Mbit card.
+
+Thu May 24 08:59:23 PDT 2001
+
+	* FAQ: Add the an answer to handle the problem "Fatal: subscript:
+	  2 out of range for: GLOBAL_net[2]: Near line 178".
+
 Thu May 10 17:24:54 PDT 2001
 
 	* Release Orca version 0.27b1.
@@ -8,7 +206,7 @@
 	* NEWS: Ditto.
 	* FAQ: Ditto.
 	* src/orca.pl.in: Spell check.
-	* orcallator/orcallator.se: Upgrade to orcallator.se 1.28b3.
+	* orcallator/orcallator.se: Upgrade to orcallator.se 1.28b4.
 	  Recoded measure_disk() to access the RAWDISK interface to
 	  sys_kstat device information to allow the activity on Sun's
 	  A1000 and Clariion Raid controller drives to be seen.
@@ -1002,7 +1200,7 @@
 Tue Jun  1 21:53:15 PDT 1999
 
 	* For orcallator.se, if the WEB_SERVER environmental variable
-	  is set, then the value of of WEB_SERVER is used to count the
+	  is set, then the value of WEB_SERVER is used to count the
 	  number of web server processes.  If WEB_SERVER is not
 	  defined it defaults to httpd.
 
@@ -1115,8 +1313,8 @@
 	  with RRD files with a version different than
 	  $ORCA_RRD_VERSION.
 
-	* Thanks to a configure file and some data from from Eric
-	  Blaise <Eric.Blaise at socgen.com>, Orca can now handle plots
+	* Thanks to a configure file and some data from Eric Blaise
+	  <Eric.Blaise at socgen.com>, Orca can now handle plots
 	  containing columns of data that do not exist in all input
 	  source data files.
 

Modified: trunk/orca/NEWS
==============================================================================
--- trunk/orca/NEWS	(original)
+++ trunk/orca/NEWS	Sat Jul 13 22:27:38 2002
@@ -1,3 +1,78 @@
+NEW IN ORCA 0.27b2
+==================
+
+ 1) Orca has a new home page:
+
+      http://www.orcaware.com/
+
+    All of the links in Orca, orcallator.se and the orcallator.se
+    configuration file have been updated to point to the new web site.
+
+ 2) To allow input data files to represent that a measurement is not
+    available or could not be measured, the letter 'U' can be placed
+    where the numerical data would normally appear.  This is better
+    than storing an out-of-range value in the input data files.  The
+    'U' is passed to RRDtool which properly handles this unknown
+    value.
+
+ 3) Fix a bug where Orca would leave around many defunct bunzip2,
+    gunzip or uncompress processes when reading compressed input
+    data files using a separate process to pipe in the uncompressed
+    data.  Orca now closes the pipe when the end of file has been
+    reached allowing the system to reap the defunct processes.
+
+ 4) Include and require Digest::MD5 2.16 and Storable 1.0.13.
+
+The following changes are what's new in orcallator.se 1.28 and the
+orcallator.cfg file since version 1.23 which was included with Orca
+0.26.  All of the changes below are taken advantage of in the included
+orcallator.cfg and start_orcallator files.
+
+ 5) In orcallator.cfg.in, the Disk Run Percent plots also match for
+    disk_runp_sd\d+ in addition to disk_runp_md\d+.
+
+ 6) Change the output log filename format from percol-%Y-%m-%d to
+    percol-%Y-%m-%d-XXX, where XXX is a number starting at 0 that is
+    incremented anytime the number of output columns changes or type
+    of data stored in a column changes.  This is in addition to the
+    creation of a new log filename when a new day starts.  Whenever
+    the program needs to create a new log file for any reason, it will
+    search for the smallest XXX so that there are no log files named
+    percol-%Y-%m-%d-XXX{,.Z,.gz,.bz2}.  If the COMPRESSOR
+    environmental is set and any uncompressed files are found while
+    looking for the smallest XXX, they are compressed with the
+    COMPRESSOR command.  orcallator.cfg.in's find_files has been
+    updated to find the new log filenames generated by orcallator.se
+    1.28.
+
+ 7) Instead of outputting the number of CPUs only when WATCH_MUTEX is
+    defined, output it when either WATCH_CPU or WATCH_MUTEX is
+    defined.  Only declare and update tmp_mutex if WATCH_MUTEX
+    defined.
+
+ 8) Add three parameters that vmstat outputs to the output files that
+    orcallator.se generates, #runque, vmstat's `r' column, which is
+    the number of processes in the run queue waiting to run on a CPU,
+    #waiting, vmstat's `b' column, which is the number of processes
+    blocked for resourceses (I/O, paging), and #swpque, vmstat's `w',
+    the number of proceses runnable but swapped out.  In
+    orcallator.cfg.in add a new plot titled "Processes in Run
+    Queue/Waiting/Swapped" to plot the new measurements.
+
+ 9) Check [wr]lentime to see if an EMC is using a fake disk for
+    control.  EMC disks have a fake disk which commands are run over
+    to configure the disk array or to get stats from; they are not
+    real data transfers. They cause 1000 MB/sec writes to appear in
+    the stats.  I still get them but not as often with this bit of
+    code in.  If the I/O which occurred in the last five minutes is
+    not greater than 1/100sec then it is not a very valid stat anyway.
+    What hapens is that we can have a small I/O, say 1024 bytes, in a
+    1/100sec = 1024*100/sec.  Make sure to define
+    HAVE_EMC_DISK_CONTROL to enable this check.  Patch contributed by
+    Damon Atkins <Damon.Atkins at nabaus.com.au>.
+
+10) Increase MAX_COLUMNS from 512 to 2048.
+
 NEW IN ORCA 0.27b1
 ==================
 
@@ -136,13 +211,12 @@
 18) Include and require the following package updates: Digest::MD5
     2.13, RRDtool 1.0.33 and Storable 1.0.11.
 
-19) The email address blair at akamai.com that I used no longer works, as
-    I have left Akamai.  I can be reached at blair at gps.caltech.edu.
+19) I have a new email address, blair at orcaware.com.
 
-    These following changes are what's new in orcallator.se 1.28 and
-    the orcallator.cfg file since version 1.23 which was included with
-    Orca 0.26.  All of the changes below are taken advantage of in the
-    included orcallator.cfg and start_orcallator files.
+The following changes are what's new in orcallator.se 1.28 and the
+orcallator.cfg file since version 1.23 which was included with Orca
+0.26.  All of the changes below are taken advantage of in the included
+orcallator.cfg and start_orcallator files.
 
 20) When orcallator.se was running on a system with an older version
     of SE the p_vmstat.scan variable is an integer and the sprintf to
@@ -234,10 +308,10 @@
     was used.  This reduces Orca's memory usage by 10%, since only one
     copy of a long filename is needed.
 
-    These following changes are what's new in orcallator.se 1.23 and
-    the orcallator.cfg file since version 1.20 which was included with
-    Orca 0.25.  All of the changes below are taken advantage of in the
-    included orcallator.cfg and start_orcallator files.
+The following changes are what's new in orcallator.se 1.23 and the
+orcallator.cfg file since version 1.20 which was included with Orca
+0.25.  All of the changes below are taken advantage of in the included
+orcallator.cfg and start_orcallator files.
 
 12) Include code to record and plot the NFS v2 and v3 server
     statistics.  The new statistics are: nfss_calls, the number of NFS
@@ -375,10 +449,10 @@
     Include Data::Dumper 2.101, Digest::MD5 2.09, Storable 0.6.5, with
     Orca.
 
-    These following changes are what's new in orcallator.se 1.19 since
-    version 1.7 which was included with Orca 0.23.  All of the changes
-    below are taken advantage of in the included orcallator.cfg and
-    start_orcallator files.
+The following changes are what's new in orcallator.se 1.19 since
+version 1.7 which was included with Orca 0.23.  All of the changes
+below are taken advantage of in the included orcallator.cfg and
+start_orcallator files.
 
 15) Orcallator.se now has a web page describing the various
     measurements it makes.  See

Modified: trunk/orca/packages/Digest-MD5-2.16/MD5.pm
==============================================================================
--- trunk/orca/packages/Digest-MD5-2.16/MD5.pm	(original)
+++ trunk/orca/packages/Digest-MD5-2.16/MD5.pm	Sat Jul 13 22:27:38 2002
@@ -3,7 +3,7 @@
 use strict;
 use vars qw($VERSION @ISA @EXPORT_OK);
 
-$VERSION = '2.13';  # $Date: 2001/03/14 05:50:15 $
+$VERSION = '2.16';  # $Date: 2001/09/07 05:45:14 $
 
 require Exporter;
 *import = \&Exporter::import;
@@ -16,11 +16,18 @@
     Digest::MD5->bootstrap($VERSION);
 };
 if ($@) {
-    # Try to load the pure perl version
-    require Digest::Perl::MD5;
-
-    Digest::Perl::MD5->import(qw(md5 md5_hex md5_base64));
-    push(@ISA, "Digest::Perl::MD5");  # make OO interface work
+    my $olderr = $@;
+    eval {
+	# Try to load the pure perl version
+	require Digest::Perl::MD5;
+
+	Digest::Perl::MD5->import(qw(md5 md5_hex md5_base64));
+	push(@ISA, "Digest::Perl::MD5");  # make OO interface work
+    };
+    if ($@) {
+	# restore the original error
+	die $olderr;
+    }
 }
 else {
     *reset = \&new;
@@ -88,6 +95,10 @@
 
 Same as md5(), but will return the digest as a base64 encoded string.
 
+The base64 encoded string returned is not padded to be a multiple of 4
+bytes long.  If you want interoperability with other base64 encoded
+md5 digests you might want to append the string "==" to the result.
+
 =back
 
 =head1 METHODS
@@ -142,6 +153,10 @@
 Same as $md5->digest, but will return the digest as a base64 encoded
 string.
 
+The base64 encoded string returned is not padded to be a multiple of 4
+bytes long.  If you want interoperability with other base64 encoded
+md5 digests you might want to append the string "==" to the result.
+
 =back
 
 
@@ -215,7 +230,7 @@
 This library is free software; you can redistribute it and/or
 modify it under the same terms as Perl itself.
 
- Copyright 1998-2000 Gisle Aas.
+ Copyright 1998-2001 Gisle Aas.
  Copyright 1995-1996 Neil Winton.
  Copyright 1991-1992 RSA Data Security, Inc.
 

Modified: trunk/orca/packages/Digest-MD5-2.16/t/files.t
==============================================================================
--- trunk/orca/packages/Digest-MD5-2.16/t/files.t	(original)
+++ trunk/orca/packages/Digest-MD5-2.16/t/files.t	Sat Jul 13 22:27:38 2002
@@ -7,10 +7,10 @@
 # This is the output of: 'md5sum Changes README MD5.pm MD5.xs rfc1321.txt'
 #
 my $EXPECT = <<EOT;
-832bac36f489f93a3d6dadd20d55b105  Changes
+df6bb160e273cbf342bd1a947ebb155f  Changes
 e2447354c8b24340bc49e38f8d00bf3b  README
-dcc1f89cf6144d81e5f9d291d9849ef1  MD5.pm
-61debd0ec12e131e1ba220e2f3ad2d26  MD5.xs
+bf8c3c72d071d1c0303fc9e311820708  MD5.pm
+abcee0576dd82eca765f54bace61c434  MD5.xs
 754b9db19f79dbc4992f7166eb0f37ce  rfc1321.txt
 EOT
 

Modified: trunk/orca/packages/Digest-MD5-2.16/Makefile.PL
==============================================================================
--- trunk/orca/packages/Digest-MD5-2.16/Makefile.PL	(original)
+++ trunk/orca/packages/Digest-MD5-2.16/Makefile.PL	Sat Jul 13 22:27:38 2002
@@ -12,9 +12,7 @@
     @extra,
     'dist'         => { COMPRESS => 'gzip -9f', SUFFIX => 'gz', },
 );
-exit;
 
-#--------------
 
 
 sub free_u32_alignment
@@ -36,6 +34,10 @@
 #include "EXTERN.h"
 #include "perl.h"
 
+#ifdef printf
+ #undef printf
+#endif
+
 int main(int argc, char** argv, char** env)
 {
 #if BYTEORDER == 0x1234 || BYTEORDER == 0x4321

Modified: trunk/orca/packages/Digest-MD5-2.16/Changes
==============================================================================
--- trunk/orca/packages/Digest-MD5-2.16/Changes	(original)
+++ trunk/orca/packages/Digest-MD5-2.16/Changes	Sat Jul 13 22:27:38 2002
@@ -1,3 +1,38 @@
+2001-09-07   Gisle Aas <gisle at ActiveState.com>
+
+   Release 2.16
+
+   Sync up with the bleadperl version:
+      - use SvPVbyte() if avaiable
+      - fixes to make the code 'gcc -Wall'-clean
+
+
+
+2001-08-27   Gisle Aas <gisle at ActiveState.com>
+
+   Release 2.15
+
+   Avoid exit() in Makefile.PL and bleedperls redefinition of printf
+   in the alignment test program.
+   Patch by Doug MacEachern <dougm at covalent.net>.
+
+
+
+2001-07-18   Gisle Aas <gisle at ActiveState.com>
+
+   Release 2.14
+
+   Try to warn if the functional interface is used as methods,
+   i.e. Digest::MD5->md5_hex("foo") will make noise if -w is
+   enabled.
+
+   Document the missing padding for the base64 digests.
+
+   If both XS bootstrap and locating Digest::Perl::MD5 fails
+   reraise the original XS bootstrap exception.
+
+
+
 2001-03-13   Gisle Aas <gisle at ActiveState.com>
 
    Release 2.13

Modified: trunk/orca/packages/Digest-MD5-2.16/MD5.xs
==============================================================================
--- trunk/orca/packages/Digest-MD5-2.16/MD5.xs	(original)
+++ trunk/orca/packages/Digest-MD5-2.16/MD5.xs	Sat Jul 13 22:27:38 2002
@@ -1,4 +1,4 @@
-/* $Id: MD5.xs,v 1.26 2000/09/18 14:27:44 gisle Exp $ */
+/* $Id: MD5.xs,v 1.29 2001/09/07 05:33:57 gisle Exp $ */
 
 /* 
  * This library is free software; you can redistribute it and/or
@@ -44,7 +44,14 @@
 }
 #endif
 
-/*#define MD5_DEBUG /**/
+#include "patchlevel.h"
+#if PATCHLEVEL <= 4 && !defined(PL_dowarn)
+   #define PL_dowarn dowarn
+#endif
+
+#ifndef SvPVbyte
+   #define SvPVbyte SvPV
+#endif
 
 /* Perl does not guarantee that U32 is exactly 32 bits.  Some system
  * has no integral type with exactly 32 bits.  For instance, A Cray has
@@ -137,7 +144,7 @@
 
 /* F, G, H and I are basic MD5 functions.
  */
-#define F(x, y, z) (((x) & ((y) ^ (z)) ^ (z)))
+#define F(x, y, z) ((((x) & ((y) ^ (z))) ^ (z)))
 #define G(x, y, z) F(z, x, y)
 #define H(x, y, z) ((x) ^ (y) ^ (z))
 #define I(x, y, z) ((y) ^ ((x) | (~z)))
@@ -195,7 +202,9 @@
 static void
 MD5Transform(MD5_CTX* ctx, const U8* buf, STRLEN blocks)
 {
+#ifdef MD5_DEBUG
     static int tcount = 0;
+#endif
 
     U32 A = ctx->A;
     U32 B = ctx->B;
@@ -553,7 +562,7 @@
 	STRLEN len;
     PPCODE:
 	for (i = 1; i < items; i++) {
-	    data = (unsigned char *)(SvPV(ST(i), len));
+	    data = (unsigned char *)(SvPVbyte(ST(i), len));
 	    MD5Update(context, data, len);
 	}
 	XSRETURN(1);  /* self */
@@ -617,8 +626,16 @@
 	unsigned char digeststr[16];
     PPCODE:
 	MD5Init(&ctx);
+	if (PL_dowarn && items > 1) {
+	    data = (unsigned char *)SvPVbyte(ST(0), len);
+	    if (len == 11 && memEQ("Digest::MD5", data, 11)) {
+	         char *f = (ix == F_BIN) ? "md5" :
+                           (ix == F_HEX) ? "md5_hex" : "md5_base64";
+	         warn("&Digest::MD5::%s function probably called as method", f);
+            }
+	}
 	for (i = 0; i < items; i++) {
-	    data = (unsigned char *)(SvPV(ST(i), len));
+	    data = (unsigned char *)(SvPVbyte(ST(i), len));
 	    MD5Update(&ctx, data, len);
 	}
 	MD5Final(digeststr, &ctx);

Modified: trunk/orca/packages/Storable-1.0.13/t/freeze.t
==============================================================================
--- trunk/orca/packages/Storable-1.0.13/t/freeze.t	(original)
+++ trunk/orca/packages/Storable-1.0.13/t/freeze.t	Sat Jul 13 22:27:38 2002
@@ -1,6 +1,6 @@
 #!./perl
 
-# $Id: freeze.t,v 1.0 2000/09/01 19:40:41 ram Exp $
+# $Id: freeze.t,v 1.0.1.1 2001/07/01 11:25:16 ram Exp $
 #
 #  Copyright (c) 1995-2000, Raphael Manfredi
 #  
@@ -8,15 +8,19 @@
 #  in the README file that comes with the distribution.
 #
 # $Log: freeze.t,v $
+# Revision 1.0.1.1  2001/07/01 11:25:16  ram
+# patch12: added test cases for mem corruption during thaw()
+#
 # Revision 1.0  2000/09/01 19:40:41  ram
 # Baseline for first official release.
 #
 
 require 't/dump.pl';
+sub ok;
 
 use Storable qw(freeze nfreeze thaw);
 
-print "1..15\n";
+print "1..19\n";
 
 $a = 'toto';
 $b = \$a;
@@ -106,3 +110,26 @@
 print "not " if $@;
 print "ok 15\n";
 
+# Test cleanup bug found by Claudio Garcia -- RAM, 08/06/2001
+my $thaw_me = 'asdasdasdasd';
+
+eval {
+	my $thawed = thaw $thaw_me;
+};
+ok 16, $@;
+
+my %to_be_frozen = (foo => 'bar');
+my $frozen;
+eval {
+	$frozen = freeze \%to_be_frozen;
+};
+ok 17, !$@;
+
+freeze {};
+eval { thaw $thaw_me };
+eval { $frozen = freeze { foo => {} } };
+ok 18, !$@;
+
+thaw $frozen;			# used to segfault here
+ok 19, 1;
+

Modified: trunk/orca/packages/Storable-1.0.13/Storable.xs
==============================================================================
--- trunk/orca/packages/Storable-1.0.13/Storable.xs	(original)
+++ trunk/orca/packages/Storable-1.0.13/Storable.xs	Sat Jul 13 22:27:39 2002
@@ -3,7 +3,7 @@
  */
 
 /*
- * $Id: Storable.xs,v 1.0.1.8 2001/03/15 00:20:55 ram Exp $
+ * $Id: Storable.xs,v 1.0.1.10 2001/08/28 21:52:14 ram Exp $
  *
  *  Copyright (c) 1995-2000, Raphael Manfredi
  *  
@@ -11,6 +11,14 @@
  *  in the README file that comes with the distribution.
  *
  * $Log: Storable.xs,v $
+ * Revision 1.0.1.10  2001/08/28 21:52:14  ram
+ * patch13: removed spurious debugging messages
+ *
+ * Revision 1.0.1.9  2001/07/01 11:25:02  ram
+ * patch12: fixed memory corruption on croaks during thaw()
+ * patch12: made code compile cleanly with -Wall (Jarkko Hietaniemi)
+ * patch12: changed tagnum and classnum from I32 to IV in context
+ *
  * Revision 1.0.1.8  2001/03/15 00:20:55  ram
  * patch11: last version was wrongly compiling with assertions on
  *
@@ -272,21 +280,23 @@
 typedef struct stcxt {
 	int entry;			/* flags recursion */
 	int optype;			/* type of traversal operation */
-    HV *hseen;			/* which objects have been seen, store time */
-    AV *hook_seen;		/* which SVs were returned by STORABLE_freeze() */
-    AV *aseen;			/* which objects have been seen, retrieve time */
-    HV *hclass;			/* which classnames have been seen, store time */
-    AV *aclass;			/* which classnames have been seen, retrieve time */
-    HV *hook;			/* cache for hook methods per class name */
-    I32 tagnum;			/* incremented at store time for each seen object */
-    I32 classnum;		/* incremented at store time for each seen classname */
-    int netorder;		/* true if network order used */
-    int s_tainted;		/* true if input source is tainted, at retrieve time */
-    int forgive_me;		/* whether to be forgiving... */
-    int canonical;		/* whether to store hashes sorted by key */
+	HV *hseen;			/* which objects have been seen, store time */
+	AV *hook_seen;		/* which SVs were returned by STORABLE_freeze() */
+	AV *aseen;			/* which objects have been seen, retrieve time */
+	HV *hclass;			/* which classnames have been seen, store time */
+	AV *aclass;			/* which classnames have been seen, retrieve time */
+	HV *hook;			/* cache for hook methods per class name */
+	IV tagnum;			/* incremented at store time for each seen object */
+	IV classnum;		/* incremented at store time for each seen classname */
+	int netorder;		/* true if network order used */
+	int s_tainted;		/* true if input source is tainted, at retrieve time */
+	int forgive_me;		/* whether to be forgiving... */
+	int canonical;		/* whether to store hashes sorted by key */
 	int s_dirty;		/* context is dirty due to CROAK() -- can be cleaned */
-    struct extendable keybuf;	/* for hash key retrieval */
-    struct extendable membuf;	/* for memory store/retrieve operations */
+	int membuf_ro;		/* true means membuf is read-only and msaved is rw */
+	struct extendable keybuf;	/* for hash key retrieval */
+	struct extendable membuf;	/* for memory store/retrieve operations */
+	struct extendable msaved;	/* where potentially valid mbuf is saved */
 	PerlIO *fio;		/* where I/O are performed, NULL for memory */
 	int ver_major;		/* major of version for retrieved object */
 	int ver_minor;		/* minor of version for retrieved object */
@@ -400,7 +410,7 @@
 } while (0)
 #define KBUFCHK(x) do {			\
 	if (x >= ksiz) {			\
-		TRACEME(("** extending kbuf to %d bytes", x+1)); \
+		TRACEME(("** extending kbuf to %d bytes (had %d)", x+1, ksiz)); \
 		Renew(kbuf, x+1, char);	\
 		ksiz = x+1;				\
 	}							\
@@ -441,10 +451,34 @@
 #define MBUF_SIZE()		(mptr - mbase)
 
 /*
+ * MBUF_SAVE_AND_LOAD
+ * MBUF_RESTORE
+ *
+ * Those macros are used in do_retrieve() to save the current memory
+ * buffer into cxt->msaved, before MBUF_LOAD() can be used to retrieve
+ * data from a string.
+ */
+#define MBUF_SAVE_AND_LOAD(in) do {		\
+	ASSERT(!cxt->membuf_ro, ("mbase not already saved")); \
+	cxt->membuf_ro = 1;					\
+	TRACEME(("saving mbuf"));			\
+	StructCopy(&cxt->membuf, &cxt->msaved, struct extendable); \
+	MBUF_LOAD(in);						\
+} while (0)
+
+#define MBUF_RESTORE() do {				\
+	ASSERT(cxt->membuf_ro, ("mbase is read-only")); \
+	cxt->membuf_ro = 0;					\
+	TRACEME(("restoring mbuf"));		\
+	StructCopy(&cxt->msaved, &cxt->membuf, struct extendable); \
+} while (0)
+
+/*
  * Use SvPOKp(), because SvPOK() fails on tainted scalars.
  * See store_scalar() for other usage of this workaround.
  */
 #define MBUF_LOAD(v) do {				\
+	ASSERT(cxt->membuf_ro, ("mbase is read-only")); \
 	if (!SvPOKp(v))						\
 		CROAK(("Not a scalar string"));	\
 	mptr = mbase = SvPV(v, msiz);		\
@@ -454,7 +488,9 @@
 #define MBUF_XTEND(x) do {			\
 	int nsz = (int) round_mgrow((x)+msiz);	\
 	int offset = mptr - mbase;		\
-	TRACEME(("** extending mbase to %d bytes", nsz));	\
+	ASSERT(!cxt->membuf_ro, ("mbase is not read-only")); \
+	TRACEME(("** extending mbase from %d to %d bytes (wants %d new)", \
+		msiz, nsz, (x)));			\
 	Renew(mbase, nsz, char);		\
 	msiz = nsz;						\
 	mptr = mbase + offset;			\
@@ -927,6 +963,19 @@
 }
 
 /*
+ * reset_context
+ *
+ * Called at the end of every context cleaning, to perform common reset
+ * operations.
+ */
+static void reset_context(stcxt_t *cxt)
+{
+	cxt->entry = 0;
+	cxt->s_dirty = 0;
+	cxt->optype &= ~(ST_STORE|ST_RETRIEVE);		/* Leave ST_CLONE alone */
+}
+
+/*
  * init_store_context
  *
  * Initialize a new store context for real recursion.
@@ -1036,13 +1085,17 @@
 	 * Insert real values into hashes where we stored faked pointers.
 	 */
 
-	hv_iterinit(cxt->hseen);
-	while (he = hv_iternext(cxt->hseen))
-		HeVAL(he) = &PL_sv_undef;
-
-	hv_iterinit(cxt->hclass);
-	while (he = hv_iternext(cxt->hclass))
-		HeVAL(he) = &PL_sv_undef;
+	if (cxt->hseen) {
+		hv_iterinit(cxt->hseen);
+		while ((he = hv_iternext(cxt->hseen)))	/* Extra () for -Wall, grr.. */
+			HeVAL(he) = &PL_sv_undef;
+	}
+
+	if (cxt->hclass) {
+		hv_iterinit(cxt->hclass);
+		while ((he = hv_iternext(cxt->hclass)))	/* Extra () for -Wall, grr.. */
+			HeVAL(he) = &PL_sv_undef;
+	}
 
 	/*
 	 * And now dispose of them...
@@ -1082,8 +1135,7 @@
 		sv_free((SV *) hook_seen);
 	}
 
-	cxt->entry = 0;
-	cxt->s_dirty = 0;
+	reset_context(cxt);
 }
 
 /*
@@ -1163,8 +1215,7 @@
 		sv_free((SV *) hseen);		/* optional HV, for backward compat. */
 	}
 
-	cxt->entry = 0;
-	cxt->s_dirty = 0;
+	reset_context(cxt);
 }
 
 /*
@@ -1172,19 +1223,26 @@
  *
  * A workaround for the CROAK bug: cleanup the last context.
  */
-static void clean_context(cxt)
-stcxt_t *cxt;
+static void clean_context(stcxt_t *cxt)
 {
 	TRACEME(("clean_context"));
 
 	ASSERT(cxt->s_dirty, ("dirty context"));
 
+	if (cxt->membuf_ro)
+		MBUF_RESTORE();
+
+	ASSERT(!cxt->membuf_ro, ("mbase is not read-only"));
+
 	if (cxt->optype & ST_RETRIEVE)
 		clean_retrieve_context(cxt);
-	else
+	else if (cxt->optype & ST_STORE)
 		clean_store_context(cxt);
+	else
+		reset_context(cxt);
 
 	ASSERT(!cxt->s_dirty, ("context is clean"));
+	ASSERT(cxt->entry == 0, ("context is reset"));
 }
 
 /*
@@ -1206,6 +1264,8 @@
 	cxt->prev = parent_cxt;
 	SET_STCXT(cxt);
 
+	ASSERT(!cxt->s_dirty, ("clean context"));
+
 	return cxt;
 }
 
@@ -1232,6 +1292,8 @@
 
 	Safefree(cxt);
 	SET_STCXT(prev);
+
+	ASSERT(cxt, ("context not void"));
 }
 
 /***
@@ -1296,7 +1358,6 @@
 {
 	GV *gv;
 	SV *sv;
-	SV **svh;
 
 	/*
 	 * The following code is the same as the one performed by UNIVERSAL::can
@@ -1767,7 +1828,7 @@
 			continue;
 		}
 		TRACEME(("(#%d) item", i));
-		if (ret = store(cxt, *sav))
+		if ((ret = store(cxt, *sav)))	/* Extra () for -Wall, grr... */
 			return ret;
 	}
 
@@ -1875,7 +1936,7 @@
 			
 			TRACEME(("(#%d) value 0x%"UVxf, i, PTR2UV(val)));
 
-			if (ret = store(cxt, val))
+			if ((ret = store(cxt, val)))	/* Extra () for -Wall, grr... */
 				goto out;
 
 			/*
@@ -1921,7 +1982,7 @@
 
 			TRACEME(("(#%d) value 0x%"UVxf, i, PTR2UV(val)));
 
-			if (ret = store(cxt, val))
+			if ((ret = store(cxt, val)))	/* Extra () for -Wall, grr... */
 				goto out;
 
 			/*
@@ -2004,7 +2065,7 @@
 	 * accesses on the retrieved object will indeed call the magic methods...
 	 */
 
-	if (ret = store(cxt, mg->mg_obj))
+	if ((ret = store(cxt, mg->mg_obj)))		/* Extra () for -Wall, grr... */
 		return ret;
 
 	TRACEME(("ok (tied)"));
@@ -2043,12 +2104,12 @@
 		PUTMARK(SX_TIED_KEY);
 		TRACEME(("store_tied_item: storing OBJ 0x%"UVxf, PTR2UV(mg->mg_obj)));
 
-		if (ret = store(cxt, mg->mg_obj))
+		if ((ret = store(cxt, mg->mg_obj)))		/* Extra () for -Wall, grr... */
 			return ret;
 
 		TRACEME(("store_tied_item: storing PTR 0x%"UVxf, PTR2UV(mg->mg_ptr)));
 
-		if (ret = store(cxt, (SV *) mg->mg_ptr))
+		if ((ret = store(cxt, (SV *) mg->mg_ptr)))	/* Idem, for -Wall */
 			return ret;
 	} else {
 		I32 idx = mg->mg_len;
@@ -2057,7 +2118,7 @@
 		PUTMARK(SX_TIED_IDX);
 		TRACEME(("store_tied_item: storing OBJ 0x%"UVxf, PTR2UV(mg->mg_obj)));
 
-		if (ret = store(cxt, mg->mg_obj))
+		if ((ret = store(cxt, mg->mg_obj)))		/* Idem, for -Wall */
 			return ret;
 
 		TRACEME(("store_tied_item: storing IDX %d", idx));
@@ -2137,8 +2198,8 @@
 	I32 classnum;
 	int ret;
 	int clone = cxt->optype & ST_CLONE;
-	char mtype;				/* for blessed ref to tied structures */
-	unsigned char eflags;	/* used when object type is SHT_EXTRA */
+	char mtype = '\0';				/* for blessed ref to tied structures */
+	unsigned char eflags = '\0';	/* used when object type is SHT_EXTRA */
 
 	TRACEME(("store_hook, class \"%s\", tagged #%d", HvNAME(pkg), cxt->tagnum));
 
@@ -2279,7 +2340,7 @@
 		 * Serialize entry if not done already, and get its tag.
 		 */
 
-		if (svh = hv_fetch(cxt->hseen, (char *) &xsv, sizeof(xsv), FALSE))
+		if ((svh = hv_fetch(cxt->hseen, (char *) &xsv, sizeof(xsv), FALSE)))
 			goto sv_seen;		/* Avoid moving code too far to the right */
 
 		TRACEME(("listed object %d at 0x%"UVxf" is unknown", i-1, PTR2UV(xsv)));
@@ -2304,7 +2365,7 @@
 		} else
 			PUTMARK(flags);
 
-		if (ret = store(cxt, xsv))		/* Given by hook for us to store */
+		if ((ret = store(cxt, xsv)))	/* Given by hook for us to store */
 			return ret;
 
 		svh = hv_fetch(cxt->hseen, (char *) &xsv, sizeof(xsv), FALSE);
@@ -2481,7 +2542,7 @@
 		 * [<magic object>]
 		 */
 
-		if (ret = store(cxt, mg->mg_obj))
+		if ((ret = store(cxt, mg->mg_obj)))	/* Extra () for -Wall, grr... */
 			return ret;
 	}
 
@@ -2618,8 +2679,8 @@
 	 * Store placeholder string as a scalar instead...
 	 */
 
-	(void) sprintf(buf, "You lost %s(0x%"UVxf")\0", sv_reftype(sv, FALSE),
-		       PTR2UV(sv));
+	(void) sprintf(buf, "You lost %s(0x%"UVxf")%c", sv_reftype(sv, FALSE),
+		       PTR2UV(sv), (char) 0);
 
 	len = strlen(buf);
 	STORE_SCALAR(buf, len);
@@ -2702,7 +2763,6 @@
 {
 	SV **svh;
 	int ret;
-	SV *tag;
 	int type;
 	HV *hseen = cxt->hseen;
 
@@ -3001,7 +3061,6 @@
  */
 SV *mstore(SV *sv)
 {
-	dSTCXT;
 	SV *out;
 
 	TRACEME(("mstore"));
@@ -3020,7 +3079,6 @@
  */
 SV *net_mstore(SV *sv)
 {
-	dSTCXT;
 	SV *out;
 
 	TRACEME(("net_mstore"));
@@ -3086,7 +3144,7 @@
 
 	sva = av_fetch(cxt->aclass, idx, FALSE);
 	if (!sva)
-		CROAK(("Class name #%d should have been seen already", idx));
+		CROAK(("Class name #%"IVdf" should have been seen already", (IV) idx));
 
 	class = SvPVX(*sva);	/* We know it's a PV, by construction */
 
@@ -3187,7 +3245,6 @@
 	SV *sv;
 	SV *rv;
 	int obj_type;
-	I32 classname;
 	int clone = cxt->optype & ST_CLONE;
 	char mtype = '\0';
 	unsigned int extra_type = 0;
@@ -3281,7 +3338,8 @@
 
 		sva = av_fetch(cxt->aclass, idx, FALSE);
 		if (!sva)
-			CROAK(("Class name #%d should have been seen already", idx));
+			CROAK(("Class name #%"IVdf" should have been seen already",
+				(IV) idx));
 
 		class = SvPVX(*sva);	/* We know it's a PV, by construction */
 		TRACEME(("class ID %d => %s", idx, class));
@@ -3382,7 +3440,8 @@
 			tag = ntohl(tag);
 			svh = av_fetch(cxt->aseen, tag, FALSE);
 			if (!svh)
-				CROAK(("Object #%d should have been retrieved already", tag));
+				CROAK(("Object #%"IVdf" should have been retrieved already",
+					(IV) tag));
 			xsv = *svh;
 			ary[i] = SvREFCNT_inc(xsv);
 		}
@@ -4006,15 +4065,17 @@
 {
 	SV *sv;
 	int siv;
+	signed char tmp;	/* Workaround for AIX cc bug --H.Merijn Brand */
 
 	TRACEME(("retrieve_byte (#%d)", cxt->tagnum));
 
 	GETMARK(siv);
 	TRACEME(("small integer read as %d", (unsigned char) siv));
-	sv = newSViv((unsigned char) siv - 128);
+	tmp = (unsigned char) siv - 128;
+	sv = newSViv(tmp);
 	SEEN(sv, cname);	/* Associate this new scalar with tag "tagnum" */
 
-	TRACEME(("byte %d", (unsigned char) siv - 128));
+	TRACEME(("byte %d", tmp));
 	TRACEME(("ok (retrieve_byte at 0x%"UVxf")", PTR2UV(sv)));
 
 	return sv;
@@ -4149,7 +4210,6 @@
 	I32 i;
 	HV *hv;
 	SV *sv;
-	static SV *sv_h_undef = (SV *) 0;		/* hv_store() bug */
 
 	TRACEME(("retrieve_hash (#%d)", cxt->tagnum));
 
@@ -4281,7 +4341,7 @@
 	I32 size;
 	I32 i;
 	HV *hv;
-	SV *sv;
+	SV *sv = (SV *) 0;
 	int c;
 	static SV *sv_h_undef = (SV *) 0;		/* hv_store() bug */
 
@@ -4457,7 +4517,7 @@
 	 * information to check.
 	 */
 
-	if (cxt->netorder = (use_network_order & 0x1))
+	if ((cxt->netorder = (use_network_order & 0x1)))	/* Extra () for -Wall */
 		return &PL_sv_undef;			/* No byte ordering info */
 
 	sprintf(byteorder, "%lx", (unsigned long) BYTEORDER);
@@ -4528,7 +4588,8 @@
 			I32 tagn;
 			svh = hv_fetch(cxt->hseen, (char *) &tag, sizeof(tag), FALSE);
 			if (!svh)
-				CROAK(("Old tag 0x%x should have been mapped already", tag));
+				CROAK(("Old tag 0x%"UVxf" should have been mapped already",
+					(UV) tag));
 			tagn = SvIV(*svh);	/* Mapped tag number computed earlier below */
 
 			/*
@@ -4537,7 +4598,8 @@
 
 			svh = av_fetch(cxt->aseen, tagn, FALSE);
 			if (!svh)
-				CROAK(("Object #%d should have been retrieved already", tagn));
+				CROAK(("Object #%"IVdf" should have been retrieved already",
+					(IV) tagn));
 			sv = *svh;
 			TRACEME(("has retrieved #%d at 0x%"UVxf, tagn, PTR2UV(sv)));
 			SvREFCNT_inc(sv);	/* One more reference to this same sv */
@@ -4563,7 +4625,6 @@
 	 * Regular post-0.6 binary format.
 	 */
 
-again:
 	GETMARK(type);
 
 	TRACEME(("retrieve type = %d", type));
@@ -4578,7 +4639,8 @@
 		tag = ntohl(tag);
 		svh = av_fetch(cxt->aseen, tag, FALSE);
 		if (!svh)
-			CROAK(("Object #%d should have been retrieved already", tag));
+			CROAK(("Object #%"IVdf" should have been retrieved already",
+				(IV) tag));
 		sv = *svh;
 		TRACEME(("had retrieved #%d at 0x%"UVxf, tag, PTR2UV(sv)));
 		SvREFCNT_inc(sv);	/* One more reference to this same sv */
@@ -4649,7 +4711,7 @@
 	dSTCXT;
 	SV *sv;
 	int is_tainted;				/* Is input source tainted? */
-	struct extendable msave;	/* Where potentially valid mbuf is saved */
+	int pre_06_fmt = 0;			/* True with pre Storable 0.6 formats */
 
 	TRACEME(("do_retrieve (optype = 0x%x)", optype));
 
@@ -4697,11 +4759,8 @@
 
 	KBUFINIT();			 		/* Allocate hash key reading pool once */
 
-	if (!f && in) {
-		StructCopy(&cxt->membuf, &msave, struct extendable);
-		MBUF_LOAD(in);
-	}
-
+	if (!f && in)
+		MBUF_SAVE_AND_LOAD(in);
 
 	/*
 	 * Magic number verifications.
@@ -4743,7 +4802,9 @@
 	 */
 
 	if (!f && in)
-		StructCopy(&msave, &cxt->membuf, struct extendable);
+		MBUF_RESTORE();
+
+	pre_06_fmt = cxt->hseen != NULL;	/* Before we clean context */
 
 	/*
 	 * The "root" context is never freed.
@@ -4772,15 +4833,15 @@
 	 *
 	 * Build a reference to the SV returned by pretrieve even if it is
 	 * already one and not a scalar, for consistency reasons.
-	 *
-	 * NB: although context might have been cleaned, the value of `cxt->hseen'
-	 * remains intact, and can be used as a flag.
 	 */
 
-	if (cxt->hseen) {			/* Was not handling overloading by then */
+	if (pre_06_fmt) {			/* Was not handling overloading by then */
 		SV *rv;
-		if (sv_type(sv) == svis_REF && (rv = SvRV(sv)) && SvOBJECT(rv))
+		TRACEME(("fixing for old formats -- pre 0.6"));
+		if (sv_type(sv) == svis_REF && (rv = SvRV(sv)) && SvOBJECT(rv)) {
+			TRACEME(("ended do_retrieve() with an object -- pre 0.6"));
 			return sv;
+		}
 	}
 
 	/*
@@ -4801,15 +4862,18 @@
 	 */
 
 	if (SvOBJECT(sv)) {
-		HV *stash = (HV *) SvSTASH (sv);
+		HV *stash = (HV *) SvSTASH(sv);
 		SV *rv = newRV_noinc(sv);
 		if (stash && Gv_AMG(stash)) {
 			SvAMAGIC_on(rv);
 			TRACEME(("restored overloading on root reference"));
 		}
+		TRACEME(("ended do_retrieve() with an object"));
 		return rv;
 	}
 
+	TRACEME(("regular do_retrieve() end"));
+
 	return newRV_noinc(sv);
 }
 

Modified: trunk/orca/packages/Storable-1.0.13/Storable.pm
==============================================================================
--- trunk/orca/packages/Storable-1.0.13/Storable.pm	(original)
+++ trunk/orca/packages/Storable-1.0.13/Storable.pm	Sat Jul 13 22:27:39 2002
@@ -1,4 +1,4 @@
-;# $Id: Storable.pm,v 1.0.1.10 2001/03/15 00:20:25 ram Exp $
+;# $Id: Storable.pm,v 1.0.1.12 2001/08/28 21:51:51 ram Exp $
 ;#
 ;#  Copyright (c) 1995-2000, Raphael Manfredi
 ;#  
@@ -6,6 +6,13 @@
 ;#  in the README file that comes with the distribution.
 ;#
 ;# $Log: Storable.pm,v $
+;# Revision 1.0.1.12  2001/08/28 21:51:51  ram
+;# patch13: fixed truncation race with lock_retrieve() in lock_store()
+;#
+;# Revision 1.0.1.11  2001/07/01 11:22:14  ram
+;# patch12: systematically use "=over 4" for POD linters
+;# patch12: updated version number
+;#
 ;# Revision 1.0.1.10  2001/03/15 00:20:25  ram
 ;# patch11: updated version number
 ;#
@@ -59,7 +66,7 @@
 use AutoLoader;
 use vars qw($forgive_me $VERSION);
 
-$VERSION = '1.011';
+$VERSION = '1.013';
 *AUTOLOAD = \&AutoLoader::AUTOLOAD;		# Grrr...
 
 #
@@ -168,9 +175,8 @@
 	logcroak "not a reference" unless ref($self);
 	logcroak "wrong argument number" unless @_ == 2;	# No @foo in arglist
 	local *FILE;
-	open(FILE, ">$file") || logcroak "can't create $file: $!";
-	binmode FILE;				# Archaic systems...
 	if ($use_locking) {
+		open(FILE, ">>$file") || logcroak "can't write into $file: $!";
 		unless (&CAN_FLOCK) {
 			logcarp "Storable::lock_store: fcntl/flock emulation broken on $^O";
 			return undef;
@@ -179,7 +185,10 @@
 			logcroak "can't get exclusive lock on $file: $!";
 		truncate FILE, 0;
 		# Unlocking will happen when FILE is closed
+	} else {
+		open(FILE, ">$file") || logcroak "can't create $file: $!";
 	}
+	binmode FILE;				# Archaic systems...
 	my $da = $@;				# Don't mess if called from exception handler
 	my $ret;
 	# Call C routine nstore or pstore, depending on network order
@@ -527,7 +536,7 @@
 
 Here is the hooking interface:
 
-=over
+=over 4
 
 =item C<STORABLE_freeze> I<obj>, I<cloning>
 
@@ -596,7 +605,7 @@
 Predicates are not exportable.  They must be called by explicitely prefixing
 them with the Storable package name.
 
-=over
+=over 4
 
 =item C<Storable::last_op_in_netorder>
 
@@ -623,7 +632,7 @@
 
 There are a few things you need to know however:
 
-=over
+=over 4
 
 =item *
 

Modified: trunk/orca/packages/Storable-1.0.13/ChangeLog
==============================================================================
--- trunk/orca/packages/Storable-1.0.13/ChangeLog	(original)
+++ trunk/orca/packages/Storable-1.0.13/ChangeLog	Sat Jul 13 22:27:39 2002
@@ -1,3 +1,30 @@
+Tue Aug 28 23:53:20 MEST 2001   Raphael Manfredi <Raphael_Manfredi at pobox.com>
+
+. Description:
+
+	Fixed truncation race with lock_retrieve() in lock_store().
+	The file has to be truncated only once the exclusive lock is held.
+
+	Removed spurious debugging messages in .xs file.
+
+Sun Jul  1 13:27:32 MEST 2001   Raphael Manfredi <Raphael_Manfredi at pobox.com>
+
+. Description:
+
+	Systematically use "=over 4" for POD linters.
+	Apparently, POD linters are much stricter than would
+	otherwise be needed, but that's OK.
+
+	Fixed memory corruption on croaks during thaw().  Thanks
+	to Claudio Garcia for reproducing this bug and providing the
+	code to exercise it.  Added test cases for this bug, adapted
+	from Claudio's code.
+
+	Made code compile cleanly with -Wall (from Jarkko Hietaniemi).
+
+	Changed tagnum and classnum from I32 to IV in context.  Also
+	from Jarkko.
+
 Thu Mar 15 01:22:32 MET 2001   Raphael Manfredi <Raphael_Manfredi at pobox.com>
 
 . Description:




More information about the Orca-checkins mailing list