OSDN Git Service

* Makefile.in (STAGESTUFF): Add libgcc libgcc.mk.
[pf3gnuchains/gcc-fork.git] / gcc / configure
index 634da9a..206c32f 100755 (executable)
@@ -29,7 +29,11 @@ ac_help="$ac_help
   --with-gxx-include-dir=DIR
                           specifies directory to put g++ header files."
 ac_help="$ac_help
-  --enable-checking       enable expensive run-time checks."
+  --enable-checking[=LIST]
+                         enable expensive run-time checks.  With LIST,
+                         enable only specific categories of checks.
+                         Categories are: misc,tree,rtl,gc,gcac; default
+                         is misc,tree,rtl"
 ac_help="$ac_help
   --disable-cpp           don't provide a user-visible C preprocessor."
 ac_help="$ac_help
@@ -37,20 +41,7 @@ ac_help="$ac_help
                           install the user visible C preprocessor in DIR
                           (relative to PREFIX) as well as PREFIX/bin."
 ac_help="$ac_help
-  --enable-cpplib         use cpplib for the C preprocessor."
-ac_help="$ac_help
-  --enable-c-cpplib       link cpplib directly into C and C++ compilers
-                          (EXPERIMENTAL) (implies --enable-cpplib)."
-ac_help="$ac_help
-  --enable-c-mbchar       enable multibyte characters for C and C++."
-ac_help="$ac_help
-  --disable-fast-fixincludes
-                         Disable the new fast fixincludes.
-                         Run the old fixincludes script unconditionally"
-ac_help="$ac_help
-  --enable-haifa          use the experimental scheduler.
-  --disable-haifa         don't use the experimental scheduler for the
-                          targets which normally enable it."
+  --enable-c-mbchar       Enable multibyte characters for C and C++."
 ac_help="$ac_help
   --enable-threads        enable thread usage for target GCC.
   --enable-threads=LIB    use LIB thread package for target GCC."
@@ -58,9 +49,7 @@ ac_help="$ac_help
   --enable-objc-gc       enable the use of Boehm's garbage collector with
                          the GNU Objective-C runtime."
 ac_help="$ac_help
-  --enable-java-gc=TYPE   choose garbage collector [boehm]"
-ac_help="$ac_help
-  --enable-dwarf2        enable DWARF2 debugging as default."
+  --with-dwarf2          force the default debug format to be DWARF2."
 ac_help="$ac_help
   --enable-nls            use Native Language Support (disabled by default)"
 ac_help="$ac_help
@@ -69,6 +58,25 @@ ac_help="$ac_help
   --with-included-gettext use the GNU gettext library included here"
 ac_help="$ac_help
   --with-catgets          use catgets functions if available"
+ac_help="$ac_help
+  --disable-win32-registry
+                          Disable lookup of installation paths in the
+                         Registry on Windows hosts.
+  --enable-win32-registry Enable registry lookup (default).
+  --enable-win32-registry=KEY
+                          Use KEY instead of GCC version as the last portion
+                         of the registry key."
+ac_help="$ac_help
+  --with-gc={simple,page} Choose the garbage collection mechanism to use
+                           with the compiler."
+ac_help="$ac_help
+  --enable-new-gxx-abi
+                         select the new abi for g++. You must select an ABI
+                         at configuration time, so that the correct runtime
+                         support is built. You cannot mix ABIs."
+ac_help="$ac_help
+  --enable-libstdcxx-v3 
+                         enable libstdc++-v3 for building and installation"
 
 # Initialize some variables set by options.
 # The variables have the same names as the options, with
@@ -86,7 +94,6 @@ program_suffix=NONE
 program_transform_name=s,x,x,
 silent=
 site=
-sitefile=
 srcdir=
 target=NONE
 verbose=
@@ -201,7 +208,6 @@ Configuration:
   --help                  print this message
   --no-create             do not create output files
   --quiet, --silent       do not print \`checking...' messages
-  --site-file=FILE        use FILE as the site file
   --version               print the version of autoconf that created configure
 Directory and file names:
   --prefix=PREFIX         install architecture-independent files in PREFIX
@@ -372,11 +378,6 @@ EOF
   -site=* | --site=* | --sit=*)
     site="$ac_optarg" ;;
 
-  -site-file | --site-file | --site-fil | --site-fi | --site-f)
-    ac_prev=sitefile ;;
-  -site-file=* | --site-file=* | --site-fil=* | --site-fi=* | --site-f=*)
-    sitefile="$ac_optarg" ;;
-
   -srcdir | --srcdir | --srcdi | --srcd | --src | --sr)
     ac_prev=srcdir ;;
   -srcdir=* | --srcdir=* | --srcdi=* | --srcd=* | --src=* | --sr=*)
@@ -542,16 +543,12 @@ fi
 srcdir=`echo "${srcdir}" | sed 's%\([^/]\)/*$%\1%'`
 
 # Prefer explicitly selected file to automatically selected ones.
-if test -z "$sitefile"; then
-  if test -z "$CONFIG_SITE"; then
-    if test "x$prefix" != xNONE; then
-      CONFIG_SITE="$prefix/share/config.site $prefix/etc/config.site"
-    else
-      CONFIG_SITE="$ac_default_prefix/share/config.site $ac_default_prefix/etc/config.site"
-    fi
+if test -z "$CONFIG_SITE"; then
+  if test "x$prefix" != xNONE; then
+    CONFIG_SITE="$prefix/share/config.site $prefix/etc/config.site"
+  else
+    CONFIG_SITE="$ac_default_prefix/share/config.site $ac_default_prefix/etc/config.site"
   fi
-else
-  CONFIG_SITE="$sitefile"
 fi
 for ac_site_file in $CONFIG_SITE; do
   if test -r "$ac_site_file"; then
@@ -606,7 +603,7 @@ copy=cp
 # - two terminals occur directly after each other
 # - the path contains an element with a dot in it
 echo $ac_n "checking LIBRARY_PATH variable""... $ac_c" 1>&6
-echo "configure:610: checking LIBRARY_PATH variable" >&5
+echo "configure:607: checking LIBRARY_PATH variable" >&5
 case ${LIBRARY_PATH} in
   [:\;]* | *[:\;] | *[:\;][:\;]* |  *[:\;]. | .[:\;]*| . | *[:\;].[:\;]* )
     library_path_setting="contains current directory"
@@ -631,7 +628,7 @@ fi
 # - two terminals occur directly after each other
 # - the path contains an element with a dot in it
 echo $ac_n "checking GCC_EXEC_PREFIX variable""... $ac_c" 1>&6
-echo "configure:635: checking GCC_EXEC_PREFIX variable" >&5
+echo "configure:632: checking GCC_EXEC_PREFIX variable" >&5
 case ${GCC_EXEC_PREFIX} in
   [:\;]* | *[:\;] | *[:\;][:\;]* |  *[:\;]. | .[:\;]*| . | *[:\;].[:\;]* )
     gcc_exec_prefix_setting="contains current directory"
@@ -774,14 +771,61 @@ fi
 # Check whether --enable-checking or --disable-checking was given.
 if test "${enable_checking+set}" = set; then
   enableval="$enable_checking"
-  case "${enableval}" in
-yes)   cat >> confdefs.h <<\EOF
-#define ENABLE_CHECKING 1
-EOF
- ;;
+  ac_checking=
+ac_tree_checking=
+ac_rtl_checking=
+ac_gc_checking=
+ac_gc_always_collect=
+case "${enableval}" in
+yes)   ac_checking=1 ; ac_tree_checking=1 ; ac_rtl_checking=1 ;;
 no)    ;;
-*)     { echo "configure: error: bad value ${enableval} given for checking option" 1>&2; exit 1; } ;;
+*)     IFS="${IFS=     }"; ac_save_IFS="$IFS" IFS="$IFS,"
+       set fnord $enableval; shift
+       IFS="$ac_save_IFS"
+       for check
+       do
+               case $check in
+               misc)   ac_checking=1 ;;
+               tree)   ac_tree_checking=1 ;;
+               rtl)    ac_rtl_checking=1 ;;
+               gc)     ac_gc_checking=1 ;;
+               gcac)   ac_gc_always_collect=1 ;;
+               *)      { echo "configure: error: unknown check category $check" 1>&2; exit 1; } ;;
+               esac
+       done
+       ;;
 esac
+if test x$ac_checking != x ; then
+  cat >> confdefs.h <<\EOF
+#define ENABLE_CHECKING 1
+EOF
+
+fi
+if test x$ac_tree_checking != x ; then
+  cat >> confdefs.h <<\EOF
+#define ENABLE_TREE_CHECKING 1
+EOF
+
+fi
+if test x$ac_rtl_checking != x ; then
+  cat >> confdefs.h <<\EOF
+#define ENABLE_RTL_CHECKING 1
+EOF
+
+fi
+if test x$ac_gc_checking != x ; then
+  cat >> confdefs.h <<\EOF
+#define ENABLE_GC_CHECKING 1
+EOF
+
+fi
+if test x$ac_gc_always_collect != x ; then
+  cat >> confdefs.h <<\EOF
+#define ENABLE_GC_ALWAYS_COLLECT 1
+EOF
+
+fi
+
 fi
 
 
@@ -805,58 +849,17 @@ fi
 fi
 
 
-# Use cpplib+cppmain for the preprocessor, but don't link it with the compiler.
-cpp_main=cccp
-# Check whether --enable-cpplib or --disable-cpplib was given.
-if test "${enable_cpplib+set}" = set; then
-  enableval="$enable_cpplib"
-  if test x$enable_cpplib != xno; then
-  cpp_main=cppmain
-fi
-fi
-
-
-# Link cpplib into the compiler proper, for C/C++/ObjC.
-# Check whether --enable-c-cpplib or --disable-c-cpplib was given.
-if test "${enable_c_cpplib+set}" = set; then
-  enableval="$enable_c_cpplib"
-  if test x$enable_c_cpplib != xno; then
-  extra_c_objs="${extra_c_objs} libcpp.a"
-  extra_cxx_objs="${extra_cxx_objs} ../libcpp.a"
-  extra_c_flags="${extra_c_flags} -DUSE_CPPLIB=1"
-  cpp_main=cppmain
-fi
-fi
-
 
 # Enable Multibyte Characters for C/C++
 # Check whether --enable-c-mbchar or --disable-c-mbchar was given.
 if test "${enable_c_mbchar+set}" = set; then
   enableval="$enable_c_mbchar"
   if test x$enable_c_mbchar != xno; then
-  extra_c_flags=-DMULTIBYTE_CHARS=1
-fi
-fi
-
-
-# Disable fast fixincludes
-# Check whether --enable-fast-fixincludes or --disable-fast-fixincludes was given.
-if test "${enable_fast_fixincludes+set}" = set; then
-  enableval="$enable_fast_fixincludes"
-  if test x$enable_fast_fixincludes = xno ; then
-  cp $srcdir/fixincludes ./fixinc.sh
-fi
+  extra_c_flags="${extra_c_flags} -DMULTIBYTE_CHARS=1"
 fi
-
-
-# Enable Haifa scheduler.
-# Check whether --enable-haifa or --disable-haifa was given.
-if test "${enable_haifa+set}" = set; then
-  enableval="$enable_haifa"
-  :
 fi
 
-
+  
 # Enable threads
 # Pass with no value to take the default
 # Pass with a value to specify a thread package
@@ -895,7 +898,7 @@ esac
 # Check whether --enable-objc-gc or --disable-objc-gc was given.
 if test "${enable_objc_gc+set}" = set; then
   enableval="$enable_objc_gc"
-  if [ x$enable_objc_gc = xno ]; then
+  if test x$enable_objc_gc = xno; then
        objc_boehm_gc=''
 else
        objc_boehm_gc=1
@@ -905,16 +908,6 @@ else
 fi
 
 
-# Check whether --enable-java-gc or --disable-java-gc was given.
-if test "${enable_java_gc+set}" = set; then
-  enableval="$enable_java_gc"
-  
-  JAVAGC=$enableval
-else
-  JAVAGC=boehm
-fi
-
-
 # Check whether --with-dwarf2 or --without-dwarf2 was given.
 if test "${with_dwarf2+set}" = set; then
   withval="$with_dwarf2"
@@ -972,7 +965,7 @@ else { echo "configure: error: can not run $ac_config_sub" 1>&2; exit 1; }
 fi
 
 echo $ac_n "checking host system type""... $ac_c" 1>&6
-echo "configure:976: checking host system type" >&5
+echo "configure:969: checking host system type" >&5
 
 host_alias=$host
 case "$host_alias" in
@@ -993,7 +986,7 @@ 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:997: checking target system type" >&5
+echo "configure:990: checking target system type" >&5
 
 target_alias=$target
 case "$target_alias" in
@@ -1011,7 +1004,7 @@ 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:1015: checking build system type" >&5
+echo "configure:1008: checking build system type" >&5
 
 build_alias=$build
 case "$build_alias" in
@@ -1038,7 +1031,7 @@ test "$host_alias" != "$target_alias" &&
 # 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:1042: checking for $ac_word" >&5
+echo "configure:1035: 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
@@ -1068,7 +1061,7 @@ if test -z "$CC"; then
   # Extract the first word of "cc", so it can be a program name with args.
 set dummy cc; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1072: checking for $ac_word" >&5
+echo "configure:1065: 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
@@ -1119,7 +1112,7 @@ fi
       # Extract the first word of "cl", so it can be a program name with args.
 set dummy cl; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1123: checking for $ac_word" >&5
+echo "configure:1116: 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
@@ -1151,7 +1144,7 @@ fi
 fi
 
 echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works""... $ac_c" 1>&6
-echo "configure:1155: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works" >&5
+echo "configure:1148: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works" >&5
 
 ac_ext=c
 # CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options.
@@ -1162,12 +1155,12 @@ cross_compiling=$ac_cv_prog_cc_cross
 
 cat > conftest.$ac_ext << EOF
 
-#line 1166 "configure"
+#line 1159 "configure"
 #include "confdefs.h"
 
 main(){return(0);}
 EOF
-if { (eval echo configure:1171: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:1164: \"$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
@@ -1193,12 +1186,12 @@ if test $ac_cv_prog_cc_works = no; then
   { echo "configure: error: installation or configuration problem: C compiler cannot create executables." 1>&2; exit 1; }
 fi
 echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler""... $ac_c" 1>&6
-echo "configure:1197: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler" >&5
+echo "configure:1190: 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:1202: checking whether we are using GNU C" >&5
+echo "configure:1195: 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
@@ -1207,7 +1200,7 @@ else
   yes;
 #endif
 EOF
-if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:1211: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then
+if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:1204: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then
   ac_cv_prog_gcc=yes
 else
   ac_cv_prog_gcc=no
@@ -1226,7 +1219,7 @@ 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:1230: checking whether ${CC-cc} accepts -g" >&5
+echo "configure:1223: checking whether ${CC-cc} accepts -g" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_cc_g'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -1257,6 +1250,100 @@ else
   fi
 fi
 
+if test "x$CC" != xcc; then
+  echo $ac_n "checking whether $CC and cc understand -c and -o together""... $ac_c" 1>&6
+echo "configure:1256: checking whether $CC and cc understand -c and -o together" >&5
+else
+  echo $ac_n "checking whether cc understands -c and -o together""... $ac_c" 1>&6
+echo "configure:1259: checking whether cc understands -c and -o together" >&5
+fi
+set dummy $CC; ac_cc="`echo $2 |
+                      sed -e 's/[^a-zA-Z0-9_]/_/g' -e 's/^[0-9]/_/'`"
+if eval "test \"`echo '$''{'ac_cv_prog_cc_${ac_cc}_c_o'+set}'`\" = set"; then
+  echo $ac_n "(cached) $ac_c" 1>&6
+else
+  echo 'foo(){}' > conftest.c
+# Make sure it works both with $CC and with simple cc.
+# We do the test twice because some compilers refuse to overwrite an
+# existing .o file with -o, though they will create one.
+ac_try='${CC-cc} -c conftest.c -o conftest.o 1>&5'
+if { (eval echo configure:1271: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } &&
+   test -f conftest.o && { (eval echo configure:1272: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; };
+then
+  eval ac_cv_prog_cc_${ac_cc}_c_o=yes
+  if test "x$CC" != xcc; then
+    # Test first that cc exists at all.
+    if { ac_try='cc -c conftest.c 1>&5'; { (eval echo configure:1277: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; }; then
+      ac_try='cc -c conftest.c -o conftest.o 1>&5'
+      if { (eval echo configure:1279: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } &&
+        test -f conftest.o && { (eval echo configure:1280: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; };
+      then
+        # cc works too.
+        :
+      else
+        # cc exists but doesn't like -o.
+        eval ac_cv_prog_cc_${ac_cc}_c_o=no
+      fi
+    fi
+  fi
+else
+  eval ac_cv_prog_cc_${ac_cc}_c_o=no
+fi
+rm -f conftest*
+
+fi
+if eval "test \"`echo '$ac_cv_prog_cc_'${ac_cc}_c_o`\" = yes"; then
+  echo "$ac_t""yes" 1>&6
+else
+  echo "$ac_t""no" 1>&6
+  cat >> confdefs.h <<\EOF
+#define NO_MINUS_C_MINUS_O 1
+EOF
+
+fi
+
+
+
+echo $ac_n "checking for long double""... $ac_c" 1>&6
+echo "configure:1309: checking for long double" >&5
+if eval "test \"`echo '$''{'gcc_cv_c_long_double'+set}'`\" = set"; then
+  echo $ac_n "(cached) $ac_c" 1>&6
+else
+  if test "$GCC" = yes; then
+  gcc_cv_c_long_double=yes
+else
+cat > conftest.$ac_ext <<EOF
+#line 1317 "configure"
+#include "confdefs.h"
+
+int main() {
+/* The Stardent Vistra knows sizeof(long double), but does not support it.  */
+long double foo = 0.0;
+/* On Ultrix 4.3 cc, long double is 4 and double is 8.  */
+switch (0) case 0: case (sizeof(long double) >= sizeof(double)):;
+; return 0; }
+EOF
+if { (eval echo configure:1327: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+  rm -rf conftest*
+  gcc_cv_c_long_double=yes
+else
+  echo "configure: failed program was:" >&5
+  cat conftest.$ac_ext >&5
+  rm -rf conftest*
+  gcc_cv_c_long_double=no
+fi
+rm -f conftest*
+fi
+fi
+
+echo "$ac_t""$gcc_cv_c_long_double" 1>&6
+if test $gcc_cv_c_long_double = yes; then
+  cat >> confdefs.h <<\EOF
+#define HAVE_LONG_DOUBLE 1
+EOF
+
+fi
+
 
 # If the native compiler is GCC, we can enable warnings even in stage1.  
 # That's useful for people building cross-compilers, or just running a
@@ -1269,7 +1356,7 @@ fi
 
 
 echo $ac_n "checking whether ${MAKE-make} sets \${MAKE}""... $ac_c" 1>&6
-echo "configure:1273: checking whether ${MAKE-make} sets \${MAKE}" >&5
+echo "configure:1360: 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
@@ -1297,7 +1384,7 @@ fi
 
 
 echo $ac_n "checking whether a default assembler was specified""... $ac_c" 1>&6
-echo "configure:1301: checking whether a default assembler was specified" >&5
+echo "configure:1388: checking whether a default assembler was specified" >&5
 if test x"${DEFAULT_ASSEMBLER+set}" = x"set"; then
     if test x"$gas_flag" = x"no"; then
        echo "$ac_t""yes ($DEFAULT_ASSEMBLER)" 1>&6
@@ -1309,7 +1396,7 @@ else
 fi
 
 echo $ac_n "checking whether a default linker was specified""... $ac_c" 1>&6
-echo "configure:1313: checking whether a default linker was specified" >&5
+echo "configure:1400: checking whether a default linker was specified" >&5
 if test x"${DEFAULT_LINKER+set}" = x"set"; then
     if test x"$gnu_ld_flag" = x"no"; then
        echo "$ac_t""yes ($DEFAULT_LINKER)" 1>&6
@@ -1321,12 +1408,12 @@ else
 fi
 
 # Find some useful tools
-for ac_prog in mawk gawk nawk awk
+for ac_prog in gawk mawk nawk awk
 do
 # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1330: checking for $ac_word" >&5
+echo "configure:1417: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_AWK'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -1358,7 +1445,7 @@ done
 # Extract the first word of "flex", so it can be a program name with args.
 set dummy flex; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1362: checking for $ac_word" >&5
+echo "configure:1449: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_LEX'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -1392,7 +1479,7 @@ then
   *) ac_lib=l ;;
   esac
   echo $ac_n "checking for yywrap in -l$ac_lib""... $ac_c" 1>&6
-echo "configure:1396: checking for yywrap in -l$ac_lib" >&5
+echo "configure:1483: checking for yywrap in -l$ac_lib" >&5
 ac_lib_var=`echo $ac_lib'_'yywrap | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -1400,7 +1487,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-l$ac_lib  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 1404 "configure"
+#line 1491 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -1411,7 +1498,7 @@ int main() {
 yywrap()
 ; return 0; }
 EOF
-if { (eval echo configure:1415: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:1502: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -1434,7 +1521,7 @@ fi
 fi
 
 echo $ac_n "checking whether ln works""... $ac_c" 1>&6
-echo "configure:1438: checking whether ln works" >&5
+echo "configure:1525: checking whether ln works" >&5
 if eval "test \"`echo '$''{'gcc_cv_prog_LN'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -1466,7 +1553,7 @@ else
 fi
 
 echo $ac_n "checking whether ln -s works""... $ac_c" 1>&6
-echo "configure:1470: checking whether ln -s works" >&5
+echo "configure:1557: checking whether ln -s works" >&5
 if eval "test \"`echo '$''{'gcc_cv_prog_LN_S'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -1498,19 +1585,19 @@ else
 fi
 
 echo $ac_n "checking for volatile""... $ac_c" 1>&6
-echo "configure:1502: checking for volatile" >&5
+echo "configure:1589: checking for volatile" >&5
 if eval "test \"`echo '$''{'gcc_cv_c_volatile'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 1507 "configure"
+#line 1594 "configure"
 #include "confdefs.h"
 
 int main() {
 volatile int foo;
 ; return 0; }
 EOF
-if { (eval echo configure:1514: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:1601: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   gcc_cv_c_volatile=yes
 else
@@ -1533,7 +1620,7 @@ fi
 # Extract the first word of "ranlib", so it can be a program name with args.
 set dummy ranlib; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1537: checking for $ac_word" >&5
+echo "configure:1624: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_RANLIB'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -1565,7 +1652,7 @@ do
 # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1569: checking for $ac_word" >&5
+echo "configure:1656: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_YACC'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -1606,7 +1693,7 @@ test -n "$YACC" || YACC="yacc"
 # SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff"
 # ./install, which can be erroneously created by make from ./install.sh.
 echo $ac_n "checking for a BSD compatible install""... $ac_c" 1>&6
-echo "configure:1610: checking for a BSD compatible install" >&5
+echo "configure:1697: checking for a BSD compatible install" >&5
 if test -z "$INSTALL"; then
 if eval "test \"`echo '$''{'ac_cv_path_install'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -1657,7 +1744,7 @@ test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
 
 
 echo $ac_n "checking how to run the C preprocessor""... $ac_c" 1>&6
-echo "configure:1661: checking how to run the C preprocessor" >&5
+echo "configure:1748: checking how to run the C preprocessor" >&5
 # On Suns, sometimes $CPP names a directory.
 if test -n "$CPP" && test -d "$CPP"; then
   CPP=
@@ -1672,13 +1759,13 @@ else
   # On the NeXT, cc -E runs the code through the compiler's parser,
   # not just through cpp.
   cat > conftest.$ac_ext <<EOF
-#line 1676 "configure"
+#line 1763 "configure"
 #include "confdefs.h"
 #include <assert.h>
 Syntax Error
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:1682: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:1769: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
 if test -z "$ac_err"; then
   :
@@ -1689,13 +1776,13 @@ else
   rm -rf conftest*
   CPP="${CC-cc} -E -traditional-cpp"
   cat > conftest.$ac_ext <<EOF
-#line 1693 "configure"
+#line 1780 "configure"
 #include "confdefs.h"
 #include <assert.h>
 Syntax Error
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:1699: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:1786: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
 if test -z "$ac_err"; then
   :
@@ -1706,13 +1793,13 @@ else
   rm -rf conftest*
   CPP="${CC-cc} -nologo -E"
   cat > conftest.$ac_ext <<EOF
-#line 1710 "configure"
+#line 1797 "configure"
 #include "confdefs.h"
 #include <assert.h>
 Syntax Error
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:1716: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:1803: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
 if test -z "$ac_err"; then
   :
@@ -1737,12 +1824,12 @@ fi
 echo "$ac_t""$CPP" 1>&6
 
 echo $ac_n "checking for ANSI C header files""... $ac_c" 1>&6
-echo "configure:1741: checking for ANSI C header files" >&5
+echo "configure:1828: checking for ANSI C header files" >&5
 if eval "test \"`echo '$''{'ac_cv_header_stdc'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 1746 "configure"
+#line 1833 "configure"
 #include "confdefs.h"
 #include <stdlib.h>
 #include <stdarg.h>
@@ -1750,7 +1837,7 @@ else
 #include <float.h>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:1754: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:1841: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
 if test -z "$ac_err"; then
   rm -rf conftest*
@@ -1767,7 +1854,7 @@ rm -f conftest*
 if test $ac_cv_header_stdc = yes; then
   # SunOS 4.x string.h does not declare mem*, contrary to ANSI.
 cat > conftest.$ac_ext <<EOF
-#line 1771 "configure"
+#line 1858 "configure"
 #include "confdefs.h"
 #include <string.h>
 EOF
@@ -1785,7 +1872,7 @@ fi
 if test $ac_cv_header_stdc = yes; then
   # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI.
 cat > conftest.$ac_ext <<EOF
-#line 1789 "configure"
+#line 1876 "configure"
 #include "confdefs.h"
 #include <stdlib.h>
 EOF
@@ -1806,7 +1893,7 @@ if test "$cross_compiling" = yes; then
   :
 else
   cat > conftest.$ac_ext <<EOF
-#line 1810 "configure"
+#line 1897 "configure"
 #include "confdefs.h"
 #include <ctype.h>
 #define ISLOWER(c) ('a' <= (c) && (c) <= 'z')
@@ -1817,7 +1904,7 @@ if (XOR (islower (i), ISLOWER (i)) || toupper (i) != TOUPPER (i)) exit(2);
 exit (0); }
 
 EOF
-if { (eval echo configure:1821: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
+if { (eval echo configure:1908: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
 then
   :
 else
@@ -1841,12 +1928,12 @@ EOF
 fi
 
 echo $ac_n "checking whether time.h and sys/time.h may both be included""... $ac_c" 1>&6
-echo "configure:1845: checking whether time.h and sys/time.h may both be included" >&5
+echo "configure:1932: checking whether time.h and sys/time.h may both be included" >&5
 if eval "test \"`echo '$''{'ac_cv_header_time'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 1850 "configure"
+#line 1937 "configure"
 #include "confdefs.h"
 #include <sys/types.h>
 #include <sys/time.h>
@@ -1855,7 +1942,7 @@ int main() {
 struct tm *tp;
 ; return 0; }
 EOF
-if { (eval echo configure:1859: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:1946: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   ac_cv_header_time=yes
 else
@@ -1876,12 +1963,12 @@ EOF
 fi
 
 echo $ac_n "checking whether string.h and strings.h may both be included""... $ac_c" 1>&6
-echo "configure:1880: checking whether string.h and strings.h may both be included" >&5
+echo "configure:1967: checking whether string.h and strings.h may both be included" >&5
 if eval "test \"`echo '$''{'gcc_cv_header_string'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 1885 "configure"
+#line 1972 "configure"
 #include "confdefs.h"
 #include <string.h>
 #include <strings.h>
@@ -1889,7 +1976,7 @@ int main() {
 
 ; return 0; }
 EOF
-if { (eval echo configure:1893: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:1980: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   gcc_cv_header_string=yes
 else
@@ -1910,12 +1997,12 @@ EOF
 fi
 
 echo $ac_n "checking for sys/wait.h that is POSIX.1 compatible""... $ac_c" 1>&6
-echo "configure:1914: checking for sys/wait.h that is POSIX.1 compatible" >&5
+echo "configure:2001: checking for sys/wait.h that is POSIX.1 compatible" >&5
 if eval "test \"`echo '$''{'ac_cv_header_sys_wait_h'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 1919 "configure"
+#line 2006 "configure"
 #include "confdefs.h"
 #include <sys/types.h>
 #include <sys/wait.h>
@@ -1931,7 +2018,7 @@ wait (&s);
 s = WIFEXITED (s) ? WEXITSTATUS (s) : 1;
 ; return 0; }
 EOF
-if { (eval echo configure:1935: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:2022: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   ac_cv_header_sys_wait_h=yes
 else
@@ -1951,21 +2038,24 @@ EOF
 
 fi
 
-for ac_hdr in limits.h stddef.h string.h strings.h stdlib.h time.h fcntl.h unistd.h stab.h sys/file.h sys/time.h sys/resource.h sys/param.h sys/times.h sys/stat.h direct.h
+for ac_hdr in limits.h stddef.h string.h strings.h stdlib.h time.h \
+                fcntl.h unistd.h stab.h sys/file.h sys/time.h \
+                sys/resource.h sys/param.h sys/times.h sys/stat.h \
+                direct.h malloc.h
 do
 ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
-echo "configure:1959: checking for $ac_hdr" >&5
+echo "configure:2049: checking for $ac_hdr" >&5
 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 1964 "configure"
+#line 2054 "configure"
 #include "confdefs.h"
 #include <$ac_hdr>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:1969: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:2059: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
 if test -z "$ac_err"; then
   rm -rf conftest*
@@ -1995,17 +2085,17 @@ done
 # Check for thread headers.
 ac_safe=`echo "thread.h" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for thread.h""... $ac_c" 1>&6
-echo "configure:1999: checking for thread.h" >&5
+echo "configure:2089: checking for thread.h" >&5
 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 2004 "configure"
+#line 2094 "configure"
 #include "confdefs.h"
 #include <thread.h>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:2009: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:2099: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
 if test -z "$ac_err"; then
   rm -rf conftest*
@@ -2029,17 +2119,17 @@ fi
 
 ac_safe=`echo "pthread.h" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for pthread.h""... $ac_c" 1>&6
-echo "configure:2033: checking for pthread.h" >&5
+echo "configure:2123: checking for pthread.h" >&5
 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 2038 "configure"
+#line 2128 "configure"
 #include "confdefs.h"
 #include <pthread.h>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:2043: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:2133: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
 if test -z "$ac_err"; then
   rm -rf conftest*
@@ -2066,7 +2156,7 @@ fi
 # Extract the first word of "gnatbind", so it can be a program name with args.
 set dummy gnatbind; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2070: checking for $ac_word" >&5
+echo "configure:2160: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_prog_gnat'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -2094,51 +2184,129 @@ else
 fi
 
 
-# See if the system preprocessor understands the ANSI C preprocessor
-# stringification operator.
-echo $ac_n "checking whether cpp understands the stringify operator""... $ac_c" 1>&6
-echo "configure:2101: checking whether cpp understands the stringify operator" >&5
-if eval "test \"`echo '$''{'gcc_cv_c_have_stringify'+set}'`\" = set"; then
+# Do we have a single-tree copy of texinfo?
+if test -f $srcdir/../texinfo/Makefile.in; then
+  MAKEINFO='$(objdir)/../texinfo/makeinfo/makeinfo'
+  gcc_cv_prog_makeinfo_modern=yes
+  echo "$ac_t""Using makeinfo from the unified source tree." 1>&6
+else
+  # See if makeinfo has been installed and is modern enough
+  # that we can use it.
+  # Extract the first word of "makeinfo", so it can be a program name with args.
+set dummy makeinfo; ac_word=$2
+echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
+echo "configure:2199: checking for $ac_word" >&5
+if eval "test \"`echo '$''{'ac_cv_prog_MAKEINFO'+set}'`\" = set"; then
+  echo $ac_n "(cached) $ac_c" 1>&6
+else
+  if test -n "$MAKEINFO"; then
+  ac_cv_prog_MAKEINFO="$MAKEINFO" # 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_MAKEINFO="makeinfo"
+      break
+    fi
+  done
+  IFS="$ac_save_ifs"
+fi
+fi
+MAKEINFO="$ac_cv_prog_MAKEINFO"
+if test -n "$MAKEINFO"; then
+  echo "$ac_t""$MAKEINFO" 1>&6
+else
+  echo "$ac_t""no" 1>&6
+fi
+
+if test -n "$MAKEINFO"; then
+  # Found it, now check the version.
+  echo $ac_n "checking for modern makeinfo""... $ac_c" 1>&6
+echo "configure:2228: checking for modern makeinfo" >&5
+if eval "test \"`echo '$''{'gcc_cv_prog_makeinfo_modern'+set}'`\" = set"; then
+  echo $ac_n "(cached) $ac_c" 1>&6
+else
+    ac_prog_version=`$MAKEINFO --version 2>&1 |
+                   sed -n 's/^.*GNU texinfo.* \([0-9][0-9.]*\).*$/\1/p'`
+  echo "configure:2234: version of makeinfo is $ac_prog_version" >&5
+  case $ac_prog_version in
+    '')     gcc_cv_prog_makeinfo_modern=no;;
+    3.1[2-9] | 3.[2-9][0-9] | 4.* | 1.6[89] | 1.7[0-9])
+            gcc_cv_prog_makeinfo_modern=yes;;
+    *)      gcc_cv_prog_makeinfo_modern=no;;
+  esac
+
+fi
+
+echo "$ac_t""$gcc_cv_prog_makeinfo_modern" 1>&6
+else
+  gcc_cv_prog_makeinfo_modern=no
+fi
+
+fi
+
+if test $gcc_cv_prog_makeinfo_modern = no; then
+  echo "configure: warning: 
+*** Makeinfo is missing or too old.
+*** Info documentation will not be built or installed." 1>&2
+  BUILD_INFO=
+  INSTALL_INFO=
+else
+  BUILD_INFO=info              
+  INSTALL_INFO=install-info    
+fi
+
+# See if the stage1 system preprocessor understands the ANSI C
+# preprocessor stringification operator.
+
+
+echo $ac_n "checking for preprocessor stringizing operator""... $ac_c" 1>&6
+echo "configure:2267: checking for preprocessor stringizing operator" >&5
+if eval "test \"`echo '$''{'ac_cv_c_stringize'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 2106 "configure"
+#line 2272 "configure"
 #include "confdefs.h"
 
-int main() {
-#define S(x)   #x
-char *test = S(foo);
-; return 0; }
+#define x(y) #y
+
+char *s = x(teststring);
+
 EOF
-if { (eval echo configure:2114: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
+  egrep "#teststring" >/dev/null 2>&1; then
   rm -rf conftest*
-  gcc_cv_c_have_stringify=yes
+  ac_cv_c_stringize=no
 else
-  echo "configure: failed program was:" >&5
-  cat conftest.$ac_ext >&5
   rm -rf conftest*
-  gcc_cv_c_have_stringify=no
+  ac_cv_c_stringize=yes
 fi
 rm -f conftest*
+
 fi
 
-echo "$ac_t""$gcc_cv_c_have_stringify" 1>&6
-if test $gcc_cv_c_have_stringify = yes; then
-  cat >> confdefs.h <<\EOF
-#define HAVE_CPP_STRINGIFY 1
+if test "${ac_cv_c_stringize}" = yes
+then
+        cat >> confdefs.h <<\EOF
+#define HAVE_STRINGIZE 1
 EOF
 
 fi
+echo "$ac_t""${ac_cv_c_stringize}" 1>&6
+
 
 # Use <inttypes.h> only if it exists,
 # doesn't clash with <sys/types.h>, and declares intmax_t.
 echo $ac_n "checking for inttypes.h""... $ac_c" 1>&6
-echo "configure:2137: checking for inttypes.h" >&5
+echo "configure:2305: checking for inttypes.h" >&5
 if eval "test \"`echo '$''{'gcc_cv_header_inttypes_h'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 2142 "configure"
+#line 2310 "configure"
 #include "confdefs.h"
 #include <sys/types.h>
 #include <inttypes.h>
@@ -2146,7 +2314,7 @@ int main() {
 intmax_t i = -1;
 ; return 0; }
 EOF
-if { (eval echo configure:2150: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:2318: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   gcc_cv_header_inttypes_h=yes
 else
@@ -2166,18 +2334,66 @@ EOF
 
 fi
 
-for ac_func in strtoul bsearch strerror putenv popen bcopy bzero bcmp \
+#
+# Determine if enumerated bitfields are unsigned.   ISO C says they can 
+# be either signed or unsigned.
+#
+echo $ac_n "checking for unsigned enumerated bitfields""... $ac_c" 1>&6
+echo "configure:2343: checking for unsigned enumerated bitfields" >&5
+if eval "test \"`echo '$''{'gcc_cv_enum_bf_unsigned'+set}'`\" = set"; then
+  echo $ac_n "(cached) $ac_c" 1>&6
+else
+  if test "$cross_compiling" = yes; then
+  gcc_cv_enum_bf_unsigned=yes
+else
+  cat > conftest.$ac_ext <<EOF
+#line 2351 "configure"
+#include "confdefs.h"
+#include <stdlib.h>
+enum t { BLAH = 128 } ;
+struct s_t { enum t member : 8; } s ;
+int main(void)
+{            
+        s.member = BLAH;
+        if (s.member < 0) exit(1);
+        exit(0);
+
+}
+EOF
+if { (eval echo configure:2364: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
+then
+  gcc_cv_enum_bf_unsigned=yes
+else
+  echo "configure: failed program was:" >&5
+  cat conftest.$ac_ext >&5
+  rm -fr conftest*
+  gcc_cv_enum_bf_unsigned=no
+fi
+rm -fr conftest*
+fi
+
+fi
+
+echo "$ac_t""$gcc_cv_enum_bf_unsigned" 1>&6
+if test $gcc_cv_enum_bf_unsigned = yes; then
+  cat >> confdefs.h <<\EOF
+#define ENUM_BITFIELDS_ARE_UNSIGNED 1
+EOF
+
+fi
+
+for ac_func in strtoul bsearch putenv popen bcopy bzero bcmp \
        index rindex strchr strrchr kill getrlimit setrlimit atoll atoq \
        sysconf isascii gettimeofday strsignal putc_unlocked fputc_unlocked \
-       fputs_unlocked
+       fputs_unlocked getrusage valloc
 do
 echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
-echo "configure:2176: checking for $ac_func" >&5
+echo "configure:2392: checking for $ac_func" >&5
 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 2181 "configure"
+#line 2397 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char $ac_func(); below.  */
@@ -2200,7 +2416,7 @@ $ac_func();
 
 ; return 0; }
 EOF
-if { (eval echo configure:2204: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:2420: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_func_$ac_func=yes"
 else
@@ -2229,12 +2445,12 @@ done
 #AC_CHECK_TYPE(wchar_t, unsigned int)
 
 echo $ac_n "checking for vprintf""... $ac_c" 1>&6
-echo "configure:2233: checking for vprintf" >&5
+echo "configure:2449: checking for vprintf" >&5
 if eval "test \"`echo '$''{'ac_cv_func_vprintf'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 2238 "configure"
+#line 2454 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char vprintf(); below.  */
@@ -2257,7 +2473,7 @@ vprintf();
 
 ; return 0; }
 EOF
-if { (eval echo configure:2261: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:2477: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_func_vprintf=yes"
 else
@@ -2281,12 +2497,12 @@ fi
 
 if test "$ac_cv_func_vprintf" != yes; then
 echo $ac_n "checking for _doprnt""... $ac_c" 1>&6
-echo "configure:2285: checking for _doprnt" >&5
+echo "configure:2501: checking for _doprnt" >&5
 if eval "test \"`echo '$''{'ac_cv_func__doprnt'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 2290 "configure"
+#line 2506 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char _doprnt(); below.  */
@@ -2309,7 +2525,7 @@ _doprnt();
 
 ; return 0; }
 EOF
-if { (eval echo configure:2313: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:2529: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_func__doprnt=yes"
 else
@@ -2345,7 +2561,7 @@ fi
 
 
 echo $ac_n "checking whether the printf functions support %p""... $ac_c" 1>&6
-echo "configure:2349: checking whether the printf functions support %p" >&5
+echo "configure:2565: checking whether the printf functions support %p" >&5
 if eval "test \"`echo '$''{'gcc_cv_func_printf_ptr'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -2353,20 +2569,20 @@ else
   gcc_cv_func_printf_ptr=no
 else
   cat > conftest.$ac_ext <<EOF
-#line 2357 "configure"
+#line 2573 "configure"
 #include "confdefs.h"
 #include <stdio.h>
 
-main()
+int main()
 {
   char buf[64];
   char *p = buf, *q = NULL;
   sprintf(buf, "%p", p);
   sscanf(buf, "%p", &q);
-  exit (p != q);
+  return (p != q);
 }
 EOF
-if { (eval echo configure:2370: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
+if { (eval echo configure:2586: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
 then
   gcc_cv_func_printf_ptr=yes
 else
@@ -2399,12 +2615,12 @@ case "${host}" in
   ;;
 esac
 echo $ac_n "checking for pid_t""... $ac_c" 1>&6
-echo "configure:2403: checking for pid_t" >&5
+echo "configure:2619: checking for pid_t" >&5
 if eval "test \"`echo '$''{'ac_cv_type_pid_t'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 2408 "configure"
+#line 2624 "configure"
 #include "confdefs.h"
 #include <sys/types.h>
 #if STDC_HEADERS
@@ -2433,17 +2649,17 @@ fi
 
 ac_safe=`echo "vfork.h" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for vfork.h""... $ac_c" 1>&6
-echo "configure:2437: checking for vfork.h" >&5
+echo "configure:2653: checking for vfork.h" >&5
 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 2442 "configure"
+#line 2658 "configure"
 #include "confdefs.h"
 #include <vfork.h>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:2447: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:2663: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
 if test -z "$ac_err"; then
   rm -rf conftest*
@@ -2468,18 +2684,18 @@ else
 fi
 
 echo $ac_n "checking for working vfork""... $ac_c" 1>&6
-echo "configure:2472: checking for working vfork" >&5
+echo "configure:2688: checking for working vfork" >&5
 if eval "test \"`echo '$''{'ac_cv_func_vfork_works'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   if test "$cross_compiling" = yes; then
   echo $ac_n "checking for vfork""... $ac_c" 1>&6
-echo "configure:2478: checking for vfork" >&5
+echo "configure:2694: checking for vfork" >&5
 if eval "test \"`echo '$''{'ac_cv_func_vfork'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 2483 "configure"
+#line 2699 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char vfork(); below.  */
@@ -2502,7 +2718,7 @@ vfork();
 
 ; return 0; }
 EOF
-if { (eval echo configure:2506: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:2722: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_func_vfork=yes"
 else
@@ -2524,7 +2740,7 @@ fi
 ac_cv_func_vfork_works=$ac_cv_func_vfork
 else
   cat > conftest.$ac_ext <<EOF
-#line 2528 "configure"
+#line 2744 "configure"
 #include "confdefs.h"
 /* Thanks to Paul Eggert for this test.  */
 #include <stdio.h>
@@ -2619,7 +2835,7 @@ main() {
   }
 }
 EOF
-if { (eval echo configure:2623: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
+if { (eval echo configure:2839: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
 then
   ac_cv_func_vfork_works=yes
 else
@@ -2641,122 +2857,306 @@ EOF
 
 fi
 
-
-for ac_func in malloc realloc calloc free bcopy bzero bcmp \
-       index rindex getenv atol sbrk abort atof strerror getcwd getwd \
-       strsignal putc_unlocked fputs_unlocked strstr
+for ac_hdr in unistd.h
 do
-echo $ac_n "checking whether $ac_func must be declared""... $ac_c" 1>&6
-echo "configure:2651: checking whether $ac_func must be declared" >&5
-if eval "test \"`echo '$''{'gcc_cv_decl_needed_$ac_func'+set}'`\" = set"; then
+ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
+echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
+echo "configure:2865: checking for $ac_hdr" >&5
+if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 2656 "configure"
+#line 2870 "configure"
 #include "confdefs.h"
-
-#include <stdio.h>
-#ifdef STRING_WITH_STRINGS
-# include <string.h>
-# include <strings.h>
-#else
-# ifdef HAVE_STRING_H
-#  include <string.h>
-# else
-#  ifdef HAVE_STRINGS_H
-#   include <strings.h>
-#  endif
-# endif
-#endif
-#ifdef HAVE_STDLIB_H
-#include <stdlib.h>
-#endif
-#ifdef HAVE_UNISTD_H
-#include <unistd.h>
-#endif
-#ifndef HAVE_RINDEX
-#define rindex strrchr
-#endif
-#ifndef HAVE_INDEX
-#define index strchr
-#endif
-
-int main() {
-char *(*pfn) = (char *(*)) $ac_func
-; return 0; }
+#include <$ac_hdr>
 EOF
-if { (eval echo configure:2689: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
+{ (eval echo configure:2875: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
+if test -z "$ac_err"; then
   rm -rf conftest*
-  eval "gcc_cv_decl_needed_$ac_func=no"
+  eval "ac_cv_header_$ac_safe=yes"
 else
+  echo "$ac_err" >&5
   echo "configure: failed program was:" >&5
   cat conftest.$ac_ext >&5
   rm -rf conftest*
-  eval "gcc_cv_decl_needed_$ac_func=yes"
+  eval "ac_cv_header_$ac_safe=no"
 fi
 rm -f conftest*
 fi
-
-if eval "test \"`echo '$gcc_cv_decl_needed_'$ac_func`\" = yes"; then
+if eval "test \"`echo '$ac_cv_header_'$ac_safe`\" = yes"; then
   echo "$ac_t""yes" 1>&6
-  gcc_tr_decl=NEED_DECLARATION_`echo $ac_func | tr 'abcdefghijklmnopqrstuvwxyz' 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'`
+    ac_tr_hdr=HAVE_`echo $ac_hdr | sed 'y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%'`
   cat >> confdefs.h <<EOF
-#define $gcc_tr_decl 1
+#define $ac_tr_hdr 1
 EOF
-
 else
   echo "$ac_t""no" 1>&6
 fi
-
 done
 
-
-for ac_func in getrlimit setrlimit
+for ac_func in getpagesize
 do
-echo $ac_n "checking whether $ac_func must be declared""... $ac_c" 1>&6
-echo "configure:2718: checking whether $ac_func must be declared" >&5
-if eval "test \"`echo '$''{'gcc_cv_decl_needed_$ac_func'+set}'`\" = set"; then
+echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
+echo "configure:2904: checking for $ac_func" >&5
+if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 2723 "configure"
+#line 2909 "configure"
 #include "confdefs.h"
+/* System header to define __stub macros and hopefully few prototypes,
+    which can conflict with char $ac_func(); below.  */
+#include <assert.h>
+/* Override any gcc2 internal prototype to avoid an error.  */
+/* We use char because int might match the return type of a gcc2
+    builtin and then its argument prototype would still apply.  */
+char $ac_func();
 
-#include <stdio.h>
-#ifdef STRING_WITH_STRINGS
-# include <string.h>
-# include <strings.h>
+int main() {
+
+/* The GNU C library defines this for functions which it implements
+    to always fail with ENOSYS.  Some functions are actually named
+    something starting with __ and the normal name is an alias.  */
+#if defined (__stub_$ac_func) || defined (__stub___$ac_func)
+choke me
 #else
-# ifdef HAVE_STRING_H
-#  include <string.h>
-# else
-#  ifdef HAVE_STRINGS_H
-#   include <strings.h>
-#  endif
-# endif
-#endif
-#ifdef HAVE_STDLIB_H
-#include <stdlib.h>
-#endif
-#ifdef HAVE_UNISTD_H
-#include <unistd.h>
-#endif
-#ifndef HAVE_RINDEX
-#define rindex strrchr
-#endif
-#ifndef HAVE_INDEX
-#define index strchr
+$ac_func();
 #endif
+
+; return 0; }
+EOF
+if { (eval echo configure:2932: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+  rm -rf conftest*
+  eval "ac_cv_func_$ac_func=yes"
+else
+  echo "configure: failed program was:" >&5
+  cat conftest.$ac_ext >&5
+  rm -rf conftest*
+  eval "ac_cv_func_$ac_func=no"
+fi
+rm -f conftest*
+fi
+
+if eval "test \"`echo '$ac_cv_func_'$ac_func`\" = yes"; then
+  echo "$ac_t""yes" 1>&6
+    ac_tr_func=HAVE_`echo $ac_func | tr 'abcdefghijklmnopqrstuvwxyz' 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'`
+  cat >> confdefs.h <<EOF
+#define $ac_tr_func 1
+EOF
+else
+  echo "$ac_t""no" 1>&6
+fi
+done
+
+echo $ac_n "checking for working mmap from /dev/zero""... $ac_c" 1>&6
+echo "configure:2957: checking for working mmap from /dev/zero" >&5
+if eval "test \"`echo '$''{'ac_cv_func_mmap_anywhere'+set}'`\" = set"; then
+  echo $ac_n "(cached) $ac_c" 1>&6
+else
+  if test "$cross_compiling" = yes; then
+  ac_cv_func_mmap_anywhere=no
+else
+  cat > conftest.$ac_ext <<EOF
+#line 2965 "configure"
+#include "confdefs.h"
+
+/* Test by Richard Henderson and Alexandre Oliva.
+   Check whether mmap from /dev/zero works. */
 #include <sys/types.h>
-#ifdef HAVE_SYS_RESOURCE_H
-#include <sys/resource.h>
-#endif
+#include <fcntl.h>
+#include <sys/mman.h>
+
+/* This mess was copied from the GNU getpagesize.h.  */
+#ifndef HAVE_GETPAGESIZE
+# ifdef HAVE_UNISTD_H
+#  include <unistd.h>
+# endif
+
+/* Assume that all systems that can run configure have sys/param.h.  */
+# ifndef HAVE_SYS_PARAM_H
+#  define HAVE_SYS_PARAM_H 1
+# endif
+
+# ifdef _SC_PAGESIZE
+#  define getpagesize() sysconf(_SC_PAGESIZE)
+# else /* no _SC_PAGESIZE */
+#  ifdef HAVE_SYS_PARAM_H
+#   include <sys/param.h>
+#   ifdef EXEC_PAGESIZE
+#    define getpagesize() EXEC_PAGESIZE
+#   else /* no EXEC_PAGESIZE */
+#    ifdef NBPG
+#     define getpagesize() NBPG * CLSIZE
+#     ifndef CLSIZE
+#      define CLSIZE 1
+#     endif /* no CLSIZE */
+#    else /* no NBPG */
+#     ifdef NBPC
+#      define getpagesize() NBPC
+#     else /* no NBPC */
+#      ifdef PAGESIZE
+#       define getpagesize() PAGESIZE
+#      endif /* PAGESIZE */
+#     endif /* no NBPC */
+#    endif /* no NBPG */
+#   endif /* no EXEC_PAGESIZE */
+#  else /* no HAVE_SYS_PARAM_H */
+#   define getpagesize() 8192  /* punt totally */
+#  endif /* no HAVE_SYS_PARAM_H */
+# endif /* no _SC_PAGESIZE */
+
+#endif /* no HAVE_GETPAGESIZE */
+
+int main()
+{
+  char *x;
+  int fd, pg;
+
+  fd = open("/dev/zero", O_RDWR);
+  if (fd < 0)
+    exit(1);
+
+  pg = getpagesize();
+  x = (char*)mmap(0, pg, PROT_READ|PROT_WRITE, MAP_PRIVATE, fd, 0);
+  if (x == (char *) -1)
+    exit(2);
+
+  *(int *)x += 1;
+
+  if (munmap(x, pg) < 0)
+    exit(3);
+
+  exit(0);
+}
+EOF
+if { (eval echo configure:3037: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
+then
+  ac_cv_func_mmap_anywhere=yes
+else
+  echo "configure: failed program was:" >&5
+  cat conftest.$ac_ext >&5
+  rm -fr conftest*
+  ac_cv_func_mmap_anywhere=no
+fi
+rm -fr conftest*
+fi
+
+fi
+
+echo "$ac_t""$ac_cv_func_mmap_anywhere" 1>&6
+if test $ac_cv_func_mmap_anywhere = yes; then
+  cat >> confdefs.h <<\EOF
+#define HAVE_MMAP_ANYWHERE 1
+EOF
+
+fi
+
+echo $ac_n "checking for working mmap of a file""... $ac_c" 1>&6
+echo "configure:3060: checking for working mmap of a file" >&5
+if eval "test \"`echo '$''{'ac_cv_func_mmap_file'+set}'`\" = set"; then
+  echo $ac_n "(cached) $ac_c" 1>&6
+else
+  # Create a file one thousand bytes long.
+for i in 1 2 3 4 5 6 7 8 9 0
+do for j in 1 2 3 4 5 6 7 8 9 0
+do echo $i $j xxxxx
+done
+done > conftestdata$$
+
+if test "$cross_compiling" = yes; then
+  ac_cv_func_mmap_file=no
+else
+  cat > conftest.$ac_ext <<EOF
+#line 3075 "configure"
+#include "confdefs.h"
+
+/* Test by Zack Weinberg.  Modified from MMAP_ANYWHERE test by
+   Richard Henderson and Alexandre Oliva.
+   Check whether read-only mmap of a plain file works. */
+#include <sys/types.h>
+#include <sys/stat.h>
+#include <fcntl.h>
+#include <sys/mman.h>
 
+int main()
+{
+  char *x;
+  int fd;
+  struct stat st;
+
+  fd = open("conftestdata$$", O_RDONLY);
+  if (fd < 0)
+    exit(1);
+
+  if (fstat (fd, &st))
+    exit(2);
+
+  x = (char*)mmap(0, st.st_size, PROT_READ, MAP_PRIVATE, fd, 0);
+  if (x == (char *) -1)
+    exit(3);
+
+  if (x[0] != '1' || x[1] != ' ' || x[2] != '1' || x[3] != ' ')
+    exit(4);
+
+  if (munmap(x, st.st_size) < 0)
+    exit(5);
+
+  exit(0);
+}
+EOF
+if { (eval echo configure:3112: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
+then
+  ac_cv_func_mmap_file=yes
+else
+  echo "configure: failed program was:" >&5
+  cat conftest.$ac_ext >&5
+  rm -fr conftest*
+  ac_cv_func_mmap_file=no
+fi
+rm -fr conftest*
+fi
+
+fi
+
+echo "$ac_t""$ac_cv_func_mmap_file" 1>&6
+if test $ac_cv_func_mmap_file = yes; then
+  cat >> confdefs.h <<\EOF
+#define HAVE_MMAP_FILE 1
+EOF
+
+fi
+
+
+# We will need to find libiberty.h and ansidecl.h
+saved_CFLAGS="$CFLAGS"
+CFLAGS="$CFLAGS -I${srcdir} -I${srcdir}/../include"
+for ac_func in bcopy bzero bcmp \
+       index rindex getenv atol sbrk abort atof getcwd getwd \
+       strsignal putc_unlocked fputs_unlocked strstr environ \
+       malloc realloc calloc free
+do
+echo $ac_n "checking whether $ac_func must be declared""... $ac_c" 1>&6
+echo "configure:3144: checking whether $ac_func must be declared" >&5
+if eval "test \"`echo '$''{'gcc_cv_decl_needed_$ac_func'+set}'`\" = set"; then
+  echo $ac_n "(cached) $ac_c" 1>&6
+else
+  cat > conftest.$ac_ext <<EOF
+#line 3149 "configure"
+#include "confdefs.h"
+
+#include "gansidecl.h"
+#include "system.h"
 int main() {
-char *(*pfn) = (char *(*)) $ac_func
+#ifndef $ac_func
+char *(*pfn) = (char *(*)) $ac_func ;
+#endif
 ; return 0; }
 EOF
-if { (eval echo configure:2760: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:3160: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   eval "gcc_cv_decl_needed_$ac_func=no"
 else
@@ -2769,66 +3169,156 @@ rm -f conftest*
 fi
 
 if eval "test \"`echo '$gcc_cv_decl_needed_'$ac_func`\" = yes"; then
-  echo "$ac_t""yes" 1>&6
-  gcc_tr_decl=NEED_DECLARATION_`echo $ac_func | tr 'abcdefghijklmnopqrstuvwxyz' 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'`
+  echo "$ac_t""yes" 1>&6 ;   ac_tr_decl=NEED_DECLARATION_`echo $ac_func | tr 'abcdefghijklmnopqrstuvwxyz' 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'`
   cat >> confdefs.h <<EOF
-#define $gcc_tr_decl 1
+#define $ac_tr_decl 1
 EOF
-
 else
-  echo "$ac_t""no" 1>&6
+  echo "$ac_t""no" 1>&6 ; :
 fi
 
 done
+if test x = y ; then
+  cat >> confdefs.h <<EOF
+#define NEED_DECLARATION_BCOPY 1
+EOF
+ cat >> confdefs.h <<EOF
+#define NEED_DECLARATION_BZERO 1
+EOF
+ cat >> confdefs.h <<EOF
+#define NEED_DECLARATION_BCMP 1
+EOF
+ \
+       cat >> confdefs.h <<EOF
+#define NEED_DECLARATION_INDEX 1
+EOF
+ cat >> confdefs.h <<EOF
+#define NEED_DECLARATION_RINDEX 1
+EOF
+ cat >> confdefs.h <<EOF
+#define NEED_DECLARATION_GETENV 1
+EOF
+ cat >> confdefs.h <<EOF
+#define NEED_DECLARATION_ATOL 1
+EOF
+ cat >> confdefs.h <<EOF
+#define NEED_DECLARATION_SBRK 1
+EOF
+ cat >> confdefs.h <<EOF
+#define NEED_DECLARATION_ABORT 1
+EOF
+ cat >> confdefs.h <<EOF
+#define NEED_DECLARATION_ATOF 1
+EOF
+ cat >> confdefs.h <<EOF
+#define NEED_DECLARATION_GETCWD 1
+EOF
+ cat >> confdefs.h <<EOF
+#define NEED_DECLARATION_GETWD 1
+EOF
+ \
+       cat >> confdefs.h <<EOF
+#define NEED_DECLARATION_STRSIGNAL 1
+EOF
+ cat >> confdefs.h <<EOF
+#define NEED_DECLARATION_PUTC_UNLOCKED 1
+EOF
+ cat >> confdefs.h <<EOF
+#define NEED_DECLARATION_FPUTS_UNLOCKED 1
+EOF
+ cat >> confdefs.h <<EOF
+#define NEED_DECLARATION_STRSTR 1
+EOF
+ cat >> confdefs.h <<EOF
+#define NEED_DECLARATION_ENVIRON 1
+EOF
+ \
+       cat >> confdefs.h <<EOF
+#define NEED_DECLARATION_MALLOC 1
+EOF
+ cat >> confdefs.h <<EOF
+#define NEED_DECLARATION_REALLOC 1
+EOF
+ cat >> confdefs.h <<EOF
+#define NEED_DECLARATION_CALLOC 1
+EOF
+ cat >> confdefs.h <<EOF
+#define NEED_DECLARATION_FREE 1
+EOF
+fi
 
 
-echo $ac_n "checking for sys_siglist declaration in signal.h or unistd.h""... $ac_c" 1>&6
-echo "configure:2787: checking for sys_siglist declaration in signal.h or unistd.h" >&5
-if eval "test \"`echo '$''{'ac_cv_decl_sys_siglist'+set}'`\" = set"; then
+for ac_func in getrlimit setrlimit getrusage
+do
+echo $ac_n "checking whether $ac_func must be declared""... $ac_c" 1>&6
+echo "configure:3256: checking whether $ac_func must be declared" >&5
+if eval "test \"`echo '$''{'gcc_cv_decl_needed_$ac_func'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 2792 "configure"
+#line 3261 "configure"
 #include "confdefs.h"
-#include <sys/types.h>
-#include <signal.h>
-/* NetBSD declares sys_siglist in unistd.h.  */
-#ifdef HAVE_UNISTD_H
-#include <unistd.h>
+
+#include "gansidecl.h"
+#include "system.h"
+#ifdef HAVE_SYS_RESOURCE_H
+#include <sys/resource.h>
 #endif
+
 int main() {
-char *msg = *(sys_siglist + 1);
+#ifndef $ac_func
+char *(*pfn) = (char *(*)) $ac_func ;
+#endif
 ; return 0; }
 EOF
-if { (eval echo configure:2804: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:3276: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
-  ac_cv_decl_sys_siglist=yes
+  eval "gcc_cv_decl_needed_$ac_func=no"
 else
   echo "configure: failed program was:" >&5
   cat conftest.$ac_ext >&5
   rm -rf conftest*
-  ac_cv_decl_sys_siglist=no
+  eval "gcc_cv_decl_needed_$ac_func=yes"
 fi
 rm -f conftest*
 fi
 
-echo "$ac_t""$ac_cv_decl_sys_siglist" 1>&6
-if test $ac_cv_decl_sys_siglist = yes; then
-  cat >> confdefs.h <<\EOF
-#define SYS_SIGLIST_DECLARED 1
+if eval "test \"`echo '$gcc_cv_decl_needed_'$ac_func`\" = yes"; then
+  echo "$ac_t""yes" 1>&6 ;   ac_tr_decl=NEED_DECLARATION_`echo $ac_func | tr 'abcdefghijklmnopqrstuvwxyz' 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'`
+  cat >> confdefs.h <<EOF
+#define $ac_tr_decl 1
 EOF
+else
+  echo "$ac_t""no" 1>&6 ; :
+fi
 
+done
+if test x = y ; then
+  cat >> confdefs.h <<EOF
+#define NEED_DECLARATION_GETRLIMIT 1
+EOF
+ cat >> confdefs.h <<EOF
+#define NEED_DECLARATION_SETRLIMIT 1
+EOF
+ cat >> confdefs.h <<EOF
+#define NEED_DECLARATION_GETRUSAGE 1
+EOF
 fi
 
 
+# Restore CFLAGS from before the gcc_AC_NEED_DECLARATIONS tests.
+CFLAGS="$saved_CFLAGS"
+
 # mkdir takes a single argument on some systems. 
 echo $ac_n "checking if mkdir takes one argument""... $ac_c" 1>&6
-echo "configure:2827: checking if mkdir takes one argument" >&5
+echo "configure:3317: checking if mkdir takes one argument" >&5
 if eval "test \"`echo '$''{'gcc_cv_mkdir_takes_one_arg'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 2832 "configure"
+#line 3322 "configure"
 #include "confdefs.h"
 
 #include <sys/types.h>
@@ -2845,7 +3335,7 @@ int main() {
 mkdir ("foo", 0);
 ; return 0; }
 EOF
-if { (eval echo configure:2849: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:3339: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   gcc_cv_mkdir_takes_one_arg=no
 else
@@ -2924,8 +3414,9 @@ for machine in $build $host $target; do
        gnu_ld="$gnu_ld_flag"
        enable_threads=$enable_threads_flag
 
-       # Set default cpu_type, tm_file and xm_file so it can be updated in
-       # each machine entry.
+       # Set default cpu_type, tm_file, tm_p_file and xm_file so it can be
+       # updated in each machine entry.
+       tm_p_file=
        cpu_type=`echo $machine | sed 's/-.*$//'`
        case $machine in
        alpha*-*-*)
@@ -2949,6 +3440,9 @@ for machine in $build $host $target; do
        mips*-*-*)
                cpu_type=mips
                ;;
+       pj*-*-*)
+               cpu_type=pj
+               ;;
        powerpc*-*-*)
                cpu_type=rs6000
                ;;
@@ -2962,7 +3456,17 @@ for machine in $build $host $target; do
 
        tm_file=${cpu_type}/${cpu_type}.h
        xm_file=${cpu_type}/xm-${cpu_type}.h
-       
+       if test -f ${srcdir}/config/${cpu_type}/${cpu_type}-protos.h;
+       then
+               tm_p_file=${cpu_type}/${cpu_type}-protos.h;
+       fi
+       # On a.out targets, we need to use collect2.
+       case $machine in
+       *-*-*aout*)
+               use_collect2=yes
+               ;;
+       esac    
+
        # Common parts for linux-gnu and openbsd systems
        case $machine in
        *-*-linux-gnu*)
@@ -3030,7 +3534,7 @@ for machine in $build $host $target; do
 
                xm_file="alpha/xm-alpha-interix.h xm-interix.h"
                xmake_file="x-interix alpha/t-pe"
-               tmake_file="alpha/t-interix alpha/t-ieee"
+               tmake_file="alpha/t-alpha alpha/t-interix alpha/t-ieee"
                if test x$enable_threads = xyes ; then
                        thread_file='posix'
                fi
@@ -3043,7 +3547,7 @@ for machine in $build $host $target; do
        alpha*-*-linux-gnuecoff*)
                tm_file="${tm_file} alpha/linux-ecoff.h alpha/linux.h"
                target_cpu_default="MASK_GAS"
-               tmake_file="alpha/t-ieee"
+               tmake_file="alpha/t-alpha alpha/t-ieee"
                gas=no
                xmake_file=none
                gas=yes gnu_ld=yes
@@ -3051,8 +3555,8 @@ for machine in $build $host $target; do
        alpha*-*-linux-gnulibc1*)
                tm_file="${tm_file} alpha/elf.h alpha/linux.h alpha/linux-elf.h"
                target_cpu_default="MASK_GAS"
-               tmake_file="t-linux t-linux-gnulibc1 alpha/t-linux alpha/t-crtbe alpha/t-ieee"
-               extra_parts="crtbegin.o crtend.o"
+               tmake_file="t-linux t-linux-gnulibc1 alpha/t-alpha alpha/t-crtbe alpha/t-ieee"
+               extra_parts="crtbegin.o crtend.o crtbeginS.o crtendS.o"
                xmake_file=none
                gas=yes gnu_ld=yes
                if test x$enable_threads = xyes; then
@@ -3062,8 +3566,8 @@ for machine in $build $host $target; do
        alpha*-*-linux-gnu*)
                tm_file="${tm_file} alpha/elf.h alpha/linux.h alpha/linux-elf.h"
                target_cpu_default="MASK_GAS"
-               tmake_file="t-linux alpha/t-linux alpha/t-crtbe alpha/t-ieee"
-               extra_parts="crtbegin.o crtend.o"
+               tmake_file="t-linux alpha/t-crtbe alpha/t-alpha alpha/t-ieee"
+               extra_parts="crtbegin.o crtend.o crtbeginS.o crtendS.o"
                xmake_file=none
                gas=yes gnu_ld=yes
                if test x$enable_threads = xyes; then
@@ -3073,8 +3577,8 @@ for machine in $build $host $target; do
        alpha*-*-netbsd*)
                tm_file="${tm_file} alpha/elf.h alpha/netbsd.h alpha/netbsd-elf.h"
                target_cpu_default="MASK_GAS"
-               tmake_file="alpha/t-crtbe alpha/t-ieee"
-               extra_parts="crtbegin.o crtend.o"
+               tmake_file="alpha/t-crtbe alpha/t-alpha alpha/t-ieee"
+               extra_parts="crtbegin.o crtend.o crtbeginS.o crtendS.o"
                xmake_file=none
                gas=yes gnu_ld=yes
                ;;
@@ -3082,7 +3586,7 @@ for machine in $build $host $target; do
        alpha*-*-openbsd*)
                # default x-alpha is only appropriate for dec-osf.
                target_cpu_default="MASK_GAS"
-               tmake_file="alpha/t-ieee"
+               tmake_file="alpha/t-alpha alpha/t-ieee"
                ;;
                
        alpha*-dec-osf*)
@@ -3095,7 +3599,7 @@ for machine in $build $host $target; do
                        extra_passes="mips-tfile mips-tdump"
                fi
                use_collect2=yes
-               tmake_file="alpha/t-ieee"
+               tmake_file="alpha/t-alpha alpha/t-ieee"
                case $machine in
                  *-*-osf1*)
                    tm_file="${tm_file} alpha/osf.h alpha/osf12.h alpha/osf2or3.h"
@@ -3109,16 +3613,19 @@ for machine in $build $host $target; do
                    # a broken tar, so we use cpio instead.
                    install_headers_dir=install-headers-cpio
                    ;;
+                 *-*-osf5*)
+                   tm_file="${tm_file} alpha/osf.h alpha/osf5.h"
+                   ;;
                esac
                case $machine in
-                 *-*-osf4.0[b-z] | *-*-osf4.[1-9]*)
+                 *-*-osf4.0[b-z] | *-*-osf4.[1-9]* | *-*-osf5*)
                    target_cpu_default=MASK_SUPPORT_ARCH
                    ;;
                esac
                ;;
        alpha*-*-vxworks*)
                tm_file="${tm_file} dbx.h alpha/vxworks.h"
-               tmake_file="alpha/t-ieee"
+               tmake_file="alpha/t-alpha alpha/t-ieee"
                if  x$gas != xyes 
                then
                        extra_passes="mips-tfile mips-tdump"
@@ -3129,7 +3636,7 @@ for machine in $build $host $target; do
        alpha*-*-winnt*)
                tm_file="${tm_file} alpha/alpha32.h alpha/win-nt.h winnt/win-nt.h"
                xm_file="${xm_file} config/winnt/xm-winnt.h alpha/xm-winnt.h"
-               tmake_file="t-libc-ok alpha/t-ieee"
+               tmake_file="t-libc-ok alpha/t-alpha alpha/t-ieee"
                xmake_file=winnt/x-winnt
                extra_host_objs=oldnames.o
                extra_gcc_objs="spawnv.o oldnames.o"
@@ -3144,18 +3651,18 @@ for machine in $build $host $target; do
        alpha*-dec-vms*)
                tm_file=alpha/vms.h
                xm_file="${xm_file} alpha/xm-vms.h"
-               tmake_file="alpha/t-vms alpha/t-ieee"
+               tmake_file="alpha/t-alpha alpha/t-vms alpha/t-ieee"
                ;;
        arc-*-elf*)
                extra_parts="crtinit.o crtfini.o"
                ;;
        arm-*-coff* | armel-*-coff*)
                tm_file=arm/coff.h
-               tmake_file=arm/t-bare
+               tmake_file=arm/t-arm-coff
                ;;
        arm-*-vxworks*)
                tm_file=arm/vxarm.h
-               tmake_file=arm/t-bare
+               tmake_file=arm/t-arm-coff
                thread_file='vxworks'
                ;;
        arm-*-riscix1.[01]*)            # Acorn RISC machine (early versions)
@@ -3183,9 +3690,8 @@ for machine in $build $host $target; do
                ;;
        arm*-*-netbsd*)
                tm_file=arm/netbsd.h
-               xm_file="arm/xm-netbsd.h ${xm_file}"
                tmake_file="t-netbsd arm/t-netbsd"
-       use_collect2=yes
+               use_collect2=yes
                ;;
        arm*-*-linux-gnuaout*)          # ARM GNU/Linux with a.out
                cpu_type=arm
@@ -3194,15 +3700,31 @@ for machine in $build $host $target; do
                tmake_file=arm/t-linux
                gnu_ld=yes
                ;;
-       arm*-*-linux-gnu*)              # ARM GNU/Linux with ELF
+       arm*-*-linux-gnuoldld*)         # ARM GNU/Linux with old ELF linker
                xm_file=arm/xm-linux.h
                xmake_file=x-linux
+               tm_file="arm/linux-oldld.h arm/linux-elf.h"
                case $machine in
                armv2*-*-*)
-                       tm_file=arm/linux-elf26.h
+                       tm_file="arm/linux-elf26.h $tm_file"
                        ;;
-               *)
-                       tm_file=arm/linux-elf.h
+               esac
+               tmake_file="t-linux arm/t-linux"
+               extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
+               gnu_ld=yes
+               case x${enable_threads} in
+               x | xyes | xpthreads | xposix)
+                       thread_file='posix'
+                       ;;
+               esac
+               ;;
+       arm*-*-linux-gnu*)              # ARM GNU/Linux with ELF
+               xm_file=arm/xm-linux.h
+               xmake_file=x-linux
+               tm_file="arm/linux-elf.h"
+               case $machine in
+               armv2*-*-*)
+                       tm_file="arm/linux-elf26.h $tm_file"
                        ;;
                esac
                tmake_file="t-linux arm/t-linux"
@@ -3220,16 +3742,20 @@ for machine in $build $host $target; do
                ;;
        arm*-*-aout)
                tm_file=arm/aout.h
-               tmake_file=arm/t-bare
+               tmake_file=arm/t-arm-aout
                ;;
         arm*-*-ecos-elf)
                tm_file=arm/ecos-elf.h
-               tmake_file=arm/t-elf
+               tmake_file=arm/t-arm-elf
                ;; 
        arm*-*-elf)
                tm_file=arm/unknown-elf.h
                tmake_file=arm/t-arm-elf
                ;;
+       arm*-*-conix*)
+               tm_file=arm/conix-elf.h
+               tmake_file=arm/t-arm-elf
+               ;;
         arm*-*-oabi)
                tm_file=arm/unknown-elf-oabi.h
                tmake_file=arm/t-arm-elf
@@ -3237,7 +3763,9 @@ for machine in $build $host $target; do
        arm-*-pe*)
                tm_file=arm/pe.h
                tmake_file=arm/t-pe
-               extra_objs=pe.o
+               extra_objs="pe.o"
+               ;;
+       avr-*-*)
                ;;
        c1-convex-*)                    # Convex C1
                target_cpu_default=1
@@ -3271,11 +3799,19 @@ for machine in $build $host $target; do
                extra_parts="crtbegin.o crtend.o"
                install_headers_dir=install-headers-cpio
                ;;
+       d30v-*)
+               float_format=i64
+               ;;
        dsp16xx-*)
                ;;
        elxsi-elxsi-*)
                use_collect2=yes
                ;;
+       fr30-*-elf)
+               tm_file="fr30/fr30.h"
+               tmake_file=fr30/t-fr30
+               extra_parts="crti.o crtn.o crtbegin.o crtend.o"
+               ;;
 # This hasn't been upgraded to GCC 2.
 #      fx80-alliant-*)                 # Alliant FX/80
 #              ;;
@@ -3299,36 +3835,36 @@ for machine in $build $host $target; do
                ;;
        hppa1.1-*-pro*)
                target_cpu_default="(MASK_JUMP_IN_DELAY | MASK_PORTABLE_RUNTIME | MASK_GAS | MASK_NO_SPACE_REGS | MASK_SOFT_FLOAT)"
-               tm_file="${tm_file} elfos.h pa/elf.h pa/pa-pro-end.h libgloss.h"
+               tm_file="${tm_file} pa/pa32-regs.h elfos.h pa/elf.h pa/pa-pro-end.h libgloss.h"
                xm_file=pa/xm-papro.h
                tmake_file=pa/t-pro
                ;;
        hppa1.1-*-osf*)
                target_cpu_default="MASK_PA_11"
-               tm_file="${tm_file} pa/som.h pa/pa-osf.h"
+               tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-osf.h"
                use_collect2=yes
                ;;
        hppa1.1-*-rtems*)
                target_cpu_default="(MASK_JUMP_IN_DELAY | MASK_PORTABLE_RUNTIME | MASK_GAS | MASK_NO_SPACE_REGS | MASK_SOFT_FLOAT)"
-               tm_file="${tm_file} elfos.h pa/elf.h pa/pa-pro-end.h libgloss.h pa/rtems.h"
+               tm_file="${tm_file} pa/pa32-regs.h elfos.h pa/elf.h pa/pa-pro-end.h libgloss.h pa/rtems.h"
                xm_file=pa/xm-papro.h
                tmake_file=pa/t-pro
                ;;
        hppa1.0-*-osf*)
-               tm_file="${tm_file} pa/som.h pa/pa-osf.h"
+               tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-osf.h"
                use_collect2=yes
                ;;
        hppa1.1-*-bsd*)
-               tm_file="${tm_file} pa/som.h"
+               tm_file="${tm_file} pa/pa32-regs.h pa/som.h"
                target_cpu_default="MASK_PA_11"
                use_collect2=yes
                ;;
        hppa1.0-*-bsd*)
-               tm_file="${tm_file} pa/som.h"
+               tm_file="${tm_file} pa/pa32-regs.h pa/som.h"
                use_collect2=yes
                ;;
        hppa1.0-*-hpux7*)
-               tm_file="pa/pa-oldas.h ${tm_file} pa/som.h pa/pa-hpux7.h"
+               tm_file="pa/pa-oldas.h ${tm_file} pa/pa32-regs.h pa/som.h pa/pa-hpux7.h"
                xm_file=pa/xm-pahpux.h
                xmake_file=pa/x-pa-hpux
                if test x$gas = xyes
@@ -3339,7 +3875,7 @@ for machine in $build $host $target; do
                use_collect2=yes
                ;;
        hppa1.0-*-hpux8.0[0-2]*)
-               tm_file="${tm_file} pa/som.h pa/pa-hpux.h"
+               tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-hpux.h"
                xm_file=pa/xm-pahpux.h
                xmake_file=pa/x-pa-hpux
                if test x$gas = xyes
@@ -3353,7 +3889,7 @@ for machine in $build $host $target; do
                ;;
        hppa1.1-*-hpux8.0[0-2]*)
                target_cpu_default="MASK_PA_11"
-               tm_file="${tm_file} pa/som.h pa/pa-hpux.h"
+               tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-hpux.h"
                xm_file=pa/xm-pahpux.h
                xmake_file=pa/x-pa-hpux
                if test x$gas = xyes
@@ -3367,7 +3903,7 @@ for machine in $build $host $target; do
                ;;
        hppa1.1-*-hpux8*)
                target_cpu_default="MASK_PA_11"
-               tm_file="${tm_file} pa/som.h pa/pa-hpux.h"
+               tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-hpux.h"
                xm_file=pa/xm-pahpux.h
                xmake_file=pa/x-pa-hpux
                if test x$gas = xyes
@@ -3378,7 +3914,7 @@ for machine in $build $host $target; do
                use_collect2=yes
                ;;
        hppa1.0-*-hpux8*)
-               tm_file="${tm_file} pa/som.h pa/pa-hpux.h"
+               tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-hpux.h"
                xm_file=pa/xm-pahpux.h
                xmake_file=pa/x-pa-hpux
                if test x$gas = xyes
@@ -3390,7 +3926,8 @@ for machine in $build $host $target; do
                ;;
        hppa1.1-*-hpux10* | hppa2*-*-hpux10*)
                target_cpu_default="MASK_PA_11"
-               tm_file="${tm_file} pa/som.h pa/pa-hpux.h pa/pa-hpux10.h"
+               tm_file="${tm_file} pa/pa32-regs.h pa/long_double.h pa/som.h pa/pa-hpux.h pa/pa-hpux10.h"
+               float_format=i128
                xm_file=pa/xm-pahpux.h
                xmake_file=pa/x-pa-hpux
                tmake_file=pa/t-pa
@@ -3409,7 +3946,8 @@ for machine in $build $host $target; do
                use_collect2=yes
                ;;
        hppa1.0-*-hpux10*)
-               tm_file="${tm_file} pa/som.h pa/pa-hpux.h pa/pa-hpux10.h"
+               tm_file="${tm_file} pa/pa32-regs.h pa/long_double.h pa/som.h pa/pa-hpux.h pa/pa-hpux10.h"
+               float_format=i128
                xm_file=pa/xm-pahpux.h
                xmake_file=pa/x-pa-hpux
                tmake_file=pa/t-pa
@@ -3429,18 +3967,19 @@ for machine in $build $host $target; do
                ;;
        hppa1.1-*-hpux11* | hppa2*-*-hpux11*)
                target_cpu_default="MASK_PA_11"
-               tm_file="${tm_file} pa/som.h pa/pa-hpux.h pa/pa-hpux11.h"
+               tm_file="${tm_file} pa/pa32-regs.h pa/long_double.h pa/som.h pa/pa-hpux.h pa/pa-hpux11.h"
+               float_format=i128
                xm_file=pa/xm-pahpux.h
                xmake_file=pa/x-pa-hpux
                tmake_file=pa/t-pa
-               if [ x$gas = xyes ]
+               if test x$gas = xyes
                then
                        tm_file="${tm_file} pa/pa-gas.h"
                fi
-#              if [[ x$enable_threads = x ]]; then
+#              if test x$enable_threads = x; then
 #                  enable_threads=$have_pthread_h
 #              fi
-#              if [[ x$enable_threads = xyes ]]; then
+#              if test x$enable_threads = xyes; then
 #                      thread_file='dce'
 #                      tmake_file="${tmake_file} pa/t-dce-thr"
 #              fi
@@ -3448,17 +3987,18 @@ for machine in $build $host $target; do
                use_collect2=yes
                ;;
        hppa1.0-*-hpux11*)
-               tm_file="${tm_file} pa/som.h pa/pa-hpux.h pa/pa-hpux11.h"
+               tm_file="${tm_file} pa/pa32-regs.h pa/long_double.h pa/som.h pa/pa-hpux.h pa/pa-hpux11.h"
+               float_format=i128
                xm_file=pa/xm-pahpux.h
                xmake_file=pa/x-pa-hpux
-               if [ x$gas = xyes ]
+               if test x$gas = xyes
                then
                        tm_file="${tm_file} pa/pa-gas.h"
                fi
-#              if [[ x$enable_threads = x ]]; then
+#              if test x$enable_threads = x; then
 #                  enable_threads=$have_pthread_h
 #              fi
-#              if [[ x$enable_threads = xyes ]]; then
+#              if test x$enable_threads = xyes; then
 #                      thread_file='dce'
 #                      tmake_file="${tmake_file} pa/t-dce-thr"
 #              fi
@@ -3467,7 +4007,7 @@ for machine in $build $host $target; do
                ;;
        hppa1.1-*-hpux* | hppa2*-*-hpux*)
                target_cpu_default="MASK_PA_11"
-               tm_file="${tm_file} pa/som.h pa/pa-hpux.h pa/pa-hpux9.h"
+               tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-hpux.h pa/pa-hpux9.h"
                xm_file=pa/xm-pahpux.h
                xmake_file=pa/x-pa-hpux
                if test x$gas = xyes
@@ -3478,7 +4018,7 @@ for machine in $build $host $target; do
                use_collect2=yes
                ;;
        hppa1.0-*-hpux*)
-               tm_file="${tm_file} pa/som.h pa/pa-hpux.h pa/pa-hpux9.h"
+               tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-hpux.h pa/pa-hpux9.h"
                xm_file=pa/xm-pahpux.h
                xmake_file=pa/x-pa-hpux
                if test x$gas = xyes
@@ -3490,7 +4030,7 @@ for machine in $build $host $target; do
                ;;
        hppa1.1-*-hiux* | hppa2*-*-hiux*)
                target_cpu_default="MASK_PA_11"
-               tm_file="${tm_file} pa/som.h pa/pa-hpux.h pa/pa-hiux.h"
+               tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-hpux.h pa/pa-hiux.h"
                xm_file=pa/xm-pahpux.h
                xmake_file=pa/x-pa-hpux
                if test x$gas = xyes
@@ -3501,7 +4041,7 @@ for machine in $build $host $target; do
                use_collect2=yes
                ;;
        hppa1.0-*-hiux*)
-               tm_file="${tm_file} pa/som.h pa/pa-hpux.h pa/pa-hiux.h"
+               tm_file="${tm_file} pa/pa32-regs.h pa/som.h pa/pa-hpux.h pa/pa-hiux.h"
                xm_file=pa/xm-pahpux.h
                xmake_file=pa/x-pa-hpux
                if test x$gas = xyes
@@ -3512,11 +4052,43 @@ for machine in $build $host $target; do
                use_collect2=yes
                ;;
        hppa*-*-lites*)
-               tm_file="${tm_file} elfos.h pa/elf.h"
+               tm_file="${tm_file} pa/pa32-regs.h elfos.h pa/elf.h"
                target_cpu_default="MASK_PA_11"
                use_collect2=yes
                ;;
+       hppa*-*-mpeix*)
+               tm_file="${tm_file} pa/pa-mpeix.h"
+               xm_file=pa/xm-pampeix.h 
+               xmake_file=pa/x-pa-mpeix 
+               echo "You must use gas. Assuming it is already installed." 
+               install_headers_dir=install-headers-tar
+               use_collect2=yes 
+               ;; 
+       i370-*-opened*)                  # IBM 360/370/390 Architecture
+               xm_file=i370/xm-oe.h
+               tm_file=i370/oe.h
+               xmake_file=i370/x-oe
+               tmake_file=i370/t-oe
+               ;;
        i370-*-mvs*)
+               xm_file=i370/xm-mvs.h
+               tm_file=i370/mvs.h
+               tmake_file=i370/t-mvs
+               ;;
+       i370-*-linux*)
+               xm_file="xm-linux.h i370/xm-linux.h"
+               xmake_file=x-linux
+               tm_file="i370/linux.h ${tm_file}"
+               tmake_file="t-linux i370/t-linux"
+               # broken_install=yes
+               extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
+               # extra_parts="crtbegin.o crtend.o"
+               gnu_ld=yes
+               gas=yes
+               elf=yes
+               if test x$enable_threads = xyes; then
+                       thread_file='posix'
+               fi
                ;;
        i[34567]86-*-elf*)
                xm_file="${xm_file} xm-svr4.h i386/xm-sysv4.h"
@@ -3539,7 +4111,7 @@ for machine in $build $host $target; do
                xmake_file=i386/x-aix
                ;;
        i[34567]86-ncr-sysv4*)          # NCR 3000 - ix86 running system V.4
-               xm_file="xm-siglist.h xm-alloca.h ${xm_file}"
+               xm_file="xm-alloca.h ${xm_file}"
                xm_defines="USG POSIX SMALL_ARG_MAX"
                xmake_file=i386/x-ncr3000
                if test x$stabs = xyes -a x$gas = xyes
@@ -3588,7 +4160,7 @@ for machine in $build $host $target; do
                install_headers_dir=install-headers-cpio
                ;;
        i[34567]86-sequent-ptx4* | i[34567]86-sequent-sysv4*)
-               xm_file="xm-siglist.h xm-alloca.h ${xm_file}"
+               xm_file="xm-alloca.h ${xm_file}"
                xm_defines="USG POSIX SMALL_ARG_MAX"
                xmake_file=x-svr4
                tm_file=i386/ptx4-i.h
@@ -3610,6 +4182,22 @@ for machine in $build $host $target; do
                tm_file=i386/i386-aout.h
                tmake_file=i386/t-i386bare
                ;;
+       i[34567]86-*-beospe*)
+               xm_file=i386/xm-beos.h
+               xm_defines="USE_C_ALLOCA"
+               tmake_file=i386/t-beos
+               tm_file=i386/beos-pe.h
+               xmake_file=i386/x-beos
+               extra_objs=winnt.o
+               ;;
+       i[34567]86-*-beoself* | i[34567]86-*-beos*)
+               xm_file=i386/xm-beos.h
+               tmake_file='i386/t-beos i386/t-crtpic'
+               tm_file=i386/beos-elf.h
+               xmake_file=i386/x-beos
+               extra_objs=winnt.o
+               extra_parts='crtbegin.o crtend.o'
+               ;;
        i[34567]86-*-bsdi* | i[34567]86-*-bsd386*)
                tm_file=i386/bsd386.h
 #              tmake_file=t-libc-ok
@@ -3621,21 +4209,27 @@ for machine in $build $host $target; do
 #              use_collect2=yes
                ;;
        i[34567]86-*-freebsdelf*)
-               tm_file="i386/i386.h i386/att.h svr4.h i386/freebsd-elf.h i386/perform.h"
+               tm_file="i386/i386.h i386/att.h svr4.h freebsd.h i386/freebsd-elf.h i386/perform.h"
                extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
                tmake_file=t-freebsd
                gas=yes
                gnu_ld=yes
                stabs=yes
+               case x${enable_threads} in
+               xyes | xpthreads | xposix)
+                       thread_file='posix'
+                       tmake_file="${tmake_file} t-freebsd-thread"
+                       ;;
+               esac
                ;;
        i[34567]86-*-freebsd*)
-               tm_file=i386/freebsd.h
+               tm_file="i386/freebsd.h i386/perform.h"
                tmake_file=t-freebsd
                ;;
        i[34567]86-*-netbsd*)
                tm_file=i386/netbsd.h
                tmake_file=t-netbsd
-       use_collect2=yes
+               use_collect2=yes
                ;;
        i[34567]86-*-openbsd*)
                # we need collect2 until our bug is fixed...
@@ -3769,18 +4363,19 @@ for machine in $build $host $target; do
                tm_file=i386/go32-rtems.h
                tmake_file="i386/t-go32 t-rtems"
                ;;
-       i[34567]86-*-rtemself*)
+       i[34567]86-*-rtemscoff*)
                cpu_type=i386
-               tm_file=i386/rtemself.h
+               tm_file=i386/rtems.h
                tmake_file="i386/t-i386bare t-rtems"
                ;;
-       i[34567]86-*-rtems*)
+       i[34567]86-*-rtems*|i[34567]86-*-rtemself*)
                cpu_type=i386
-               tm_file=i386/rtems.h
-               tmake_file="i386/t-i386bare t-rtems"
+               tm_file=i386/rtemself.h
+               extra_parts="crtbegin.o crtend.o crti.o crtn.o"
+               tmake_file="i386/t-rtems-i386 i386/t-crtstuff t-rtems"
                ;;
        i[34567]86-*-sco3.2v5*) # 80386 running SCO Open Server 5
-               xm_file="xm-siglist.h xm-alloca.h ${xm_file} i386/xm-sco5.h"
+               xm_file="xm-alloca.h ${xm_file} i386/xm-sco5.h"
                xm_defines="USG SVR3"
                xmake_file=i386/x-sco5
                install_headers_dir=install-headers-cpio
@@ -3796,7 +4391,7 @@ for machine in $build $host $target; do
                ;;
        i[34567]86-*-sco3.2v4*)         # 80386 running SCO 3.2v4 system
                xm_file="${xm_file} i386/xm-sco.h"
-               xm_defines="USG SVR3 BROKEN_LDEXP SMALL_ARG_MAX NO_SYS_SIGLIST"
+               xm_defines="USG SVR3 BROKEN_LDEXP SMALL_ARG_MAX"
                xmake_file=i386/x-sco4
                install_headers_dir=install-headers-cpio
                 if test x$stabs = xyes
@@ -3809,7 +4404,10 @@ for machine in $build $host $target; do
                        tmake_file=i386/t-crtstuff
                        extra_parts="crtbegin.o crtend.o"
                fi
-               truncate_target=yes
+               # The default EAFS filesystem supports long file names.
+               # Truncating the target makes $host != $target which
+               # makes gcc think it is doing a cross-compile.
+               # truncate_target=yes
                ;;
        i[34567]86-*-sco*)              # 80386 running SCO system
                xm_file=i386/xm-sco.h
@@ -3828,23 +4426,32 @@ for machine in $build $host $target; do
                truncate_target=yes
                ;;
        i[34567]86-*-solaris2*)
-               xm_file="xm-siglist.h xm-alloca.h ${xm_file}"
+               xm_file="xm-alloca.h ${xm_file}"
                xm_defines="USG POSIX SMALL_ARG_MAX"
-               if test x$stabs = xyes
-               then
-                       tm_file=i386/sol2dbg.h
-               else
-                       tm_file=i386/sol2.h
+               tm_file=i386/sol2.h
+               if test x$gas = xyes; then
+                       # Only needed if gas does not support -s
+                       tm_file="i386/sol2gas.h ${tm_file}"
                fi
                tmake_file=i386/t-sol2
                extra_parts="crt1.o crti.o crtn.o gcrt1.o gmon.o crtbegin.o crtend.o"
                xmake_file=x-svr4
-               if test x$enable_threads = xyes; then
+               if test x${enable_threads} = x; then
+                   enable_threads=$have_pthread_h
+                   if test x${enable_threads} = x; then
+                       enable_threads=$have_thread_h
+                   fi
+               fi
+               if test x${enable_threads} = xyes; then
+                   if test x${have_pthread_h} = xyes; then
+                       thread_file='posix'
+                   else
                        thread_file='solaris'
+                   fi
                fi
                ;;
        i[34567]86-*-sysv5*)           # Intel x86 on System V Release 5
-               xm_file="xm-alloca.h xm-siglist.h ${xm_file}"
+               xm_file="xm-alloca.h ${xm_file}"
                xm_defines="USG POSIX"
                tm_file=i386/sysv5.h
                if test x$stabs = xyes
@@ -3859,7 +4466,7 @@ for machine in $build $host $target; do
               fi
                ;;
        i[34567]86-*-sysv4*)            # Intel 80386's running system V.4
-               xm_file="xm-siglist.h xm-alloca.h ${xm_file}"
+               xm_file="xm-alloca.h ${xm_file}"
                xm_defines="USG POSIX SMALL_ARG_MAX"
                tm_file=i386/sysv4.h
                if test x$stabs = xyes
@@ -3871,7 +4478,7 @@ for machine in $build $host $target; do
                extra_parts="crtbegin.o crtend.o"
                ;;
        i[34567]86-*-udk*)      # Intel x86 on SCO UW/OSR5 Dev Kit
-               xm_file="xm-alloca.h xm-siglist.h ${xm_file}"
+               xm_file="xm-alloca.h ${xm_file}"
                xm_defines="USG POSIX"
                tm_file=i386/udk.h
                tmake_file="i386/t-crtpic i386/t-udk"
@@ -3963,7 +4570,7 @@ for machine in $build $host $target; do
        i[34567]86-*-uwin*)
                tm_file=i386/uwin.h
                xm_file="${xm_file} i386/xm-uwin.h"
-               xm_defines="USG NO_STAB_H NO_SYS_SIGLIST"
+               xm_defines="USG NO_STAB_H"
                tmake_file="i386/t-cygwin i386/t-uwin"
                extra_objs=winnt.o
                xmake_file=i386/x-cygwin
@@ -3975,7 +4582,7 @@ for machine in $build $host $target; do
        i[34567]86-*-interix*)
                tm_file="i386/i386-interix.h interix.h"
                xm_file="i386/xm-i386-interix.h xm-interix.h"
-               xm_defines="USG NO_SYS_SIGLIST"
+               xm_defines="USG"
                tmake_file="i386/t-interix"
                extra_objs=interix.o
                xmake_file=x-interix
@@ -4003,7 +4610,7 @@ for machine in $build $host $target; do
                fi
                ;;
        i[34567]86-dg-dgux*)
-               xm_file="xm-alloca.h xm-siglist.h ${xm_file}"
+               xm_file="xm-alloca.h ${xm_file}"
                xm_defines="USG POSIX"
                out_file=i386/dgux.c
                tm_file=i386/dgux.h
@@ -4079,6 +4686,27 @@ for machine in $build $host $target; do
        i960-*-*)                       # Default i960 environment.
                use_collect2=yes
                ;;
+       ia64*-*-elf*)
+               tm_file=ia64/elf.h
+               tmake_file="ia64/t-ia64"
+               target_cpu_default="0"
+               if test x$gas = xyes
+               then
+                       target_cpu_default="${target_cpu_default}|MASK_GNU_AS"
+               fi
+               if test x$gnu_ld = xyes
+               then
+                       target_cpu_default="${target_cpu_default}|MASK_GNU_LD"
+               fi
+               ;;
+       ia64*-*-linux*)
+               tm_file=ia64/linux.h
+               tmake_file="t-linux ia64/t-ia64"
+               target_cpu_default="MASK_GNU_AS|MASK_GNU_LD"
+               if test x$enable_threads = xyes; then
+                       thread_file='posix'
+               fi
+               ;;
        m32r-*-elf*)
                extra_parts="crtinit.o crtfini.o"
                ;;
@@ -4096,8 +4724,8 @@ for machine in $build $host $target; do
                extra_headers=math-68881.h
                ;;
        m68000-hp-hpux*)                # HP 9000 series 300
-               xm_file="xm_alloca.h ${xm_file}"
-               xm_defines="USG NO_SYS_SIGLIST"
+               xm_file="xm-alloca.h ${xm_file}"
+               xm_defines="USG"
                if test x$gas = xyes
                then
                        xmake_file=m68k/x-hp320g
@@ -4202,7 +4830,6 @@ for machine in $build $host $target; do
        m68k-motorola-sysv*)
                tm_file=m68k/mot3300.h
                xm_file="xm-alloca.h m68k/xm-mot3300.h ${xm_file}"
-               xm_defines=NO_SYS_SIGLIST
                if test x$gas = xyes
                then
                        xmake_file=m68k/x-mot3300-gas
@@ -4298,8 +4925,8 @@ for machine in $build $host $target; do
                extra_headers=math-68881.h
                ;;
        m68k-hp-hpux7*) # HP 9000 series 300 running HPUX version 7.
-               xm_file="xm_alloca.h ${xm_file}"
-               xm_defines="USG NO_SYS_SIGLIST"
+               xm_file="xm-alloca.h ${xm_file}"
+               xm_defines="USG"
                if test x$gas = xyes
                then
                        xmake_file=m68k/x-hp320g
@@ -4314,8 +4941,8 @@ for machine in $build $host $target; do
                float_format=m68k
                ;;
        m68k-hp-hpux*)  # HP 9000 series 300
-               xm_file="xm_alloca.h ${xm_file}"
-               xm_defines="USG NO_SYS_SIGLIST"
+               xm_file="xm-alloca.h ${xm_file}"
+               xm_defines="USG"
                if test x$gas = xyes
                then
                        xmake_file=m68k/x-hp320g
@@ -4367,7 +4994,7 @@ for machine in $build $host $target; do
                use_collect2=yes
                float_format=m68k
                 ;;
-       m68k-next-nextstep3*)
+       m68k-next-nextstep[34]*)
                tm_file=m68k/next.h
                xm_file="m68k/xm-next.h ${xm_file}"
                tmake_file=m68k/t-next
@@ -4422,7 +5049,7 @@ for machine in $build $host $target; do
                float_format=m68k
                ;;
        m68020-*-elf* | m68k-*-elf*)
-               tm_file="m68k/m68020-elf.h libgloss.h"
+               tm_file="m68k/m68020-elf.h"
                xm_file=m68k/xm-m68kv.h
                tmake_file=m68k/t-m68kelf
                header_files=math-68881.h
@@ -4444,7 +5071,7 @@ for machine in $build $host $target; do
                tm_file=m68k/netbsd.h
                tmake_file=t-netbsd
                float_format=m68k
-       use_collect2=yes
+               use_collect2=yes
                ;;
        m68k*-*-openbsd*)
                float_format=m68k
@@ -4508,13 +5135,18 @@ for machine in $build $host $target; do
                extra_headers=math-68881.h
                float_format=m68k
                ;;
-       m68k-*-rtems*)
+       m68k-*-rtemscoff*)
                tmake_file="m68k/t-m68kbare t-rtems"
                tm_file=m68k/rtems.h
                extra_headers=math-68881.h
                float_format=m68k
                ;;
-
+       m68k-*-rtemself*|m68k-*-rtems*)
+               tmake_file="m68k/t-m68kbare t-rtems m68k/t-crtstuff"
+               tm_file=m68k/rtemself.h
+               extra_headers=math-68881.h
+               float_format=m68k
+               ;;
        m88k-dg-dgux*)
                case $machine in
                  m88k-dg-dguxbcs*)
@@ -4589,6 +5221,14 @@ for machine in $build $host $target; do
                xmake_file=m88k/x-sysv4
                tmake_file=m88k/t-sysv4
                ;;
+       mcore-*-elf)
+               tm_file=mcore/mcore-elf.h
+               tmake_file=mcore/t-mcore
+               ;;
+       mcore-*-pe*)
+               tm_file=mcore/mcore-pe.h
+               tmake_file=mcore/t-mcore-pe
+               ;;
        mips-sgi-irix6*)                # SGI System V.4., IRIX 6
                if test "x$gnu_ld" = xyes
                then
@@ -4604,7 +5244,7 @@ for machine in $build $host $target; do
 #              fi
                ;;
        mips-wrs-vxworks)
-               tm_file="mips/elf.h libgloss.h mips/vxworks.h"
+               tm_file="mips/elf.h mips/vxworks.h"
                tmake_file=mips/t-ecoff
                gas=yes
                gnu_ld=yes
@@ -4771,22 +5411,23 @@ for machine in $build $host $target; do
                ;;
        mips*-*-linux*)                         # Linux MIPS, either endian.
                xmake_file=x-linux
-               xm_file="xm-siglist.h ${xm_file}"
                case $machine in
                        mipsel-*)  tm_file="mips/elfl.h mips/linux.h" ;;
                        *)         tm_file="mips/elf.h mips/linux.h" ;;
                esac
-               extra_parts="crtbegin.o crtend.o"
+               extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
                gnu_ld=yes
                gas=yes
+               if test x$enable_threads = xyes; then
+                       thread_file='posix'
+               fi
                ;;
        mips*el-*-openbsd*)     # mips little endian
                target_cpu_default="MASK_GAS|MASK_ABICALLS"
-               tm_file=mips/openbsd.h
                ;;
        mips*-*-openbsd*)               # mips big endian
                target_cpu_default="MASK_GAS|MASK_ABICALLS"
-               tm_file=mips/openbsd-be.h
+               tm_file="mips/openbsd-be.h ${tm_file}"
                ;;
        mips-sony-bsd* | mips-sony-newsos*)     # Sony NEWS 3600 or risc/news.
                tm_file="mips/news4.h ${tm_file}"
@@ -4812,7 +5453,6 @@ for machine in $build $host $target; do
                if test x$stabs = xyes; then
                        tm_file="${tm_file} dbx.h"
                fi
-               xm_file="xm-siglist.h ${xm_file}"
                xm_defines=USG
                if test x$gas = xyes
                then
@@ -4830,7 +5470,6 @@ for machine in $build $host $target; do
                if test x$stabs = xyes; then
                        tm_file="${tm_file} dbx.h"
                fi
-               xm_file="xm-siglist.h ${xm_file}"
                xm_defines=USG
                xmake_file=mips/x-sysv
                if test x$gas = xyes
@@ -4903,7 +5542,6 @@ for machine in $build $host $target; do
                if test x$stabs = xyes; then
                        tm_file="${tm_file} dbx.h"
                fi
-               xm_file="xm-siglist.h ${xm_file}"
                xmake_file=mips/x-sysv
                if test x$gas = xyes
                then
@@ -5007,7 +5645,7 @@ for machine in $build $host $target; do
                tmake_file=mips/t-ecoff
                ;;
        mipsel-*-elf*)
-               tm_file="mips/elfl.h libgloss.h"
+               tm_file="mips/elfl.h"
                tmake_file=mips/t-elf
                ;;
        mips-*-elf*)
@@ -5019,7 +5657,7 @@ for machine in $build $host $target; do
                tmake_file=mips/t-elf
                ;;
        mips64orionel-*-elf*)
-               tm_file="mips/elforion.h mips/elfl64.h libgloss.h"
+               tm_file="mips/elforion.h mips/elfl64.h"
                tmake_file=mips/t-elf
                ;;
        mips64-*-elf*)
@@ -5027,12 +5665,12 @@ for machine in $build $host $target; do
                tmake_file=mips/t-elf
                ;;
        mips64orion-*-elf*)
-               tm_file="mips/elforion.h mips/elf64.h libgloss.h"
+               tm_file="mips/elforion.h mips/elf64.h"
                tmake_file=mips/t-elf
                ;;
        mips64orion-*-rtems*)
                tm_file="mips/elforion.h mips/elf64.h mips/rtems64.h"
-               tmake_file="mips/t-ecoff t-rtems"
+               tmake_file="mips/t-elf t-rtems"
                ;;
        mipstx39el-*-elf*)
                tm_file="mips/r3900.h mips/elfl.h mips/abi64.h"
@@ -5058,6 +5696,7 @@ for machine in $build $host $target; do
                fi
                ;;
        mn10200-*-*)
+               float_format=i32
                cpu_type=mn10200
                tm_file="mn10200/mn10200.h"
                if test x$stabs = xyes
@@ -5117,21 +5756,34 @@ for machine in $build $host $target; do
                xm_file="ns32k/xm-netbsd.h ${xm_file}"
                # On NetBSD, the headers are already okay, except for math.h.
                tmake_file=t-netbsd
-       use_collect2=yes
+               use_collect2=yes
                ;;
         pdp11-*-bsd)
                tm_file="${tm_file} pdp11/2bsd.h"
                 ;;
         pdp11-*-*)
                ;;
+        avr-*-*)
+               ;;
        ns32k-*-openbsd*)
                # Nothing special
                ;;
-       pyramid-*-*)
-               cpu_type=pyr
-               xmake_file=pyr/x-pyr
-               use_collect2=yes
-               ;;
+# This has not been updated to GCC 2.
+#      pyramid-*-*)
+#              cpu_type=pyr
+#              xmake_file=pyr/x-pyr
+#              use_collect2=yes
+#              ;;
+
+       pj*-linux*)
+               tm_file="svr4.h pj/linux.h ${tm_file}"
+               ;;
+       pj-*)
+               ;;
+       pjl-*)
+               tm_file="svr4.h pj/pjl.h ${tm_file}"
+               ;;
+
        romp-*-aos*)
                use_collect2=yes
                ;;
@@ -5152,79 +5804,57 @@ for machine in $build $host $target; do
                tmake_file=rs6000/t-beos
                xmake_file=rs6000/x-beos
                ;;
-       powerpc-*-sysv* | powerpc-*-elf*)
+       powerpc-*-sysv*)
                tm_file=rs6000/sysv4.h
-               xm_file="xm-siglist.h rs6000/xm-sysv4.h"
+               xm_file="rs6000/xm-sysv4.h"
                xm_defines="USG POSIX"
                extra_headers=ppc-asm.h
-               if test x$gas = xyes
-               then
-                       tmake_file="rs6000/t-ppcos rs6000/t-ppccomm"
-               else
-                       tmake_file="rs6000/t-ppc rs6000/t-ppccomm"
-               fi
+               tmake_file="rs6000/t-ppcos rs6000/t-ppccomm"
                xmake_file=rs6000/x-sysv4
                ;;
        powerpc-*-eabiaix*)
-               tm_file=rs6000/eabiaix.h
+               tm_file="rs6000/sysv4.h rs6000/eabi.h rs6000/eabiaix.h"
                tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm"
                extra_headers=ppc-asm.h
                ;;
        powerpc-*-eabisim*)
-               tm_file=rs6000/eabisim.h
+               tm_file="rs6000/sysv4.h rs6000/eabi.h rs6000/eabisim.h"
+               tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm"
+               extra_headers=ppc-asm.h
+               ;;
+       powerpc-*-elf*)
+               tm_file="rs6000/sysv4.h"
                tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm"
                extra_headers=ppc-asm.h
                ;;
        powerpc-*-eabi*)
-               tm_file=rs6000/eabi.h
-               if test x$gas = xyes
-               then
-                       tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm"
-               else
-                       tmake_file="rs6000/t-ppc rs6000/t-ppccomm"
-               fi
+               tm_file="rs6000/sysv4.h rs6000/eabi.h"
+               tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm"
                extra_headers=ppc-asm.h
                ;;
        powerpc-*-rtems*)
-               tm_file=rs6000/rtems.h
-               if test x$gas = xyes
-               then
-                    tmake_file="rs6000/t-ppcgas t-rtems rs6000/t-ppccomm"
-               else
-                    tmake_file="rs6000/t-ppc t-rtems rs6000/t-ppccomm"
-               fi
+               tm_file="rs6000/sysv4.h rs6000/eabi.h rs6000/rtems.h"
+               tmake_file="rs6000/t-ppcgas t-rtems rs6000/t-ppccomm"
                extra_headers=ppc-asm.h
                ;;
        powerpc-*-linux-gnulibc1)
-               tm_file=rs6000/linux.h
+               tm_file="rs6000/sysv4.h rs6000/linux.h"
                xm_file=rs6000/xm-sysv4.h
                out_file=rs6000/rs6000.c
-               if test x$gas = xyes
-               then
-                       tmake_file="rs6000/t-ppcos t-linux t-linux-gnulibc1 rs6000/t-ppccomm"
-               else
-                       tmake_file="rs6000/t-ppc t-linux t-linux-gnulibc1 rs6000/t-ppccomm"
-               fi
+               tmake_file="rs6000/t-ppcos t-linux t-linux-gnulibc1 rs6000/t-ppccomm"
                xmake_file=x-linux
-               extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
                extra_headers=ppc-asm.h
                if test x$enable_threads = xyes; then
                        thread_file='posix'
                fi
                ;;
        powerpc-*-linux-gnu*)
-               tm_file=rs6000/linux.h
-               xm_file="xm-siglist.h rs6000/xm-sysv4.h"
+               tm_file="rs6000/sysv4.h rs6000/linux.h"
+               xm_file="rs6000/xm-sysv4.h"
                xm_defines="USG ${xm_defines}"
                out_file=rs6000/rs6000.c
-               if test x$gas = xyes
-               then
-                       tmake_file="rs6000/t-ppcos t-linux rs6000/t-ppccomm"
-               else
-                       tmake_file="rs6000/t-ppc t-linux rs6000/t-ppccomm"
-               fi
+               tmake_file="rs6000/t-ppcos t-linux rs6000/t-ppccomm"
                xmake_file=x-linux
-               extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
                extra_headers=ppc-asm.h
                if test x$enable_threads = xyes; then
                        thread_file='posix'
@@ -5232,72 +5862,50 @@ for machine in $build $host $target; do
                ;;
         powerpc-wrs-vxworks*)
                 cpu_type=rs6000
-               xm_file="xm-siglist.h rs6000/xm-sysv4.h"
+               xm_file="rs6000/xm-sysv4.h"
                xm_defines="USG POSIX"
-                tm_file=rs6000/vxppc.h
+                tm_file="rs6000/sysv4.h rs6000/vxppc.h"
                 tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm"
                extra_headers=ppc-asm.h
                thread_file='vxworks'
                 ;;
-       powerpcle-*-sysv* | powerpcle-*-elf*)
-               tm_file=rs6000/sysv4le.h
-               xm_file="xm-siglist.h rs6000/xm-sysv4.h"
+        powerpcle-wrs-vxworks*)
+                cpu_type=rs6000
+               xm_file="rs6000/xm-sysv4.h"
                xm_defines="USG POSIX"
-               if test x$gas = xyes
-               then
-                       tmake_file="rs6000/t-ppcos rs6000/t-ppccomm"
-               else
-                       tmake_file="rs6000/t-ppc rs6000/t-ppccomm"
-               fi
+                tm_file="rs6000/sysv4.h rs6000/sysv4le.h rs6000/vxppc.h"
+                tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm"
+               extra_headers=ppc-asm.h
+               thread_file='vxworks'
+                ;;
+       powerpcle-*-sysv*)
+               tm_file="rs6000/sysv4.h rs6000/sysv4le.h"
+               xm_file="rs6000/xm-sysv4.h"
+               xm_defines="USG POSIX"
+               tmake_file="rs6000/t-ppcos rs6000/t-ppccomm"
                xmake_file=rs6000/x-sysv4
                extra_headers=ppc-asm.h
                ;;
-       powerpcle-*-eabisim*)
-               tm_file=rs6000/eabilesim.h
+       powerpcle-*-elf*)
+               tm_file="rs6000/sysv4.h rs6000/sysv4le.h"
                tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm"
                extra_headers=ppc-asm.h
                ;;
-       powerpcle-*-eabi*)
-               tm_file=rs6000/eabile.h
-               if test x$gas = xyes
-               then
-                       tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm"
-               else
-                       tmake_file="rs6000/t-ppc rs6000/t-ppccomm"
-               fi
-               extra_headers=ppc-asm.h
-               ;;
-        powerpcle-*-winnt* )
-                tm_file=rs6000/win-nt.h
-                tmake_file=rs6000/t-winnt
-#               extra_objs=pe.o
-               if test x$enable_threads = xyes; then
-                       thread_file='win32'
-               fi
+       powerpcle-*-eabisim*)
+               tm_file="rs6000/sysv4.h rs6000/sysv4le.h rs6000/eabi.h rs6000/eabisim.h"
+               tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm"
                extra_headers=ppc-asm.h
                ;;
-       powerpcle-*-pe | powerpcle-*-cygwin*)
-               tm_file=rs6000/cygwin.h
-               xm_file="rs6000/xm-cygwin.h ${xm_file}"
-               tmake_file=rs6000/t-winnt
-               xmake_file=rs6000/x-cygwin
-#              extra_objs=pe.o
-               if test x$enable_threads = xyes; then
-                       thread_file='win32'
-               fi
-               exeext=.exe
+       powerpcle-*-eabi*)
+               tm_file="rs6000/sysv4.h rs6000/sysv4le.h rs6000/eabi.h"
+               tmake_file="rs6000/t-ppcgas rs6000/t-ppccomm"
                extra_headers=ppc-asm.h
                ;;
        powerpcle-*-solaris2*)
-               tm_file=rs6000/sol2.h
-               xm_file="xm-siglist.h rs6000/xm-sysv4.h"
+               tm_file="rs6000/sysv4.h rs6000/sysv4le.h rs6000/sol2.h"
+               xm_file="rs6000/xm-sysv4.h"
                xm_defines="USG POSIX"
-               if test x$gas = xyes
-               then
-                       tmake_file="rs6000/t-ppcos rs6000/t-ppccomm"
-               else
-                       tmake_file="rs6000/t-ppc rs6000/t-ppccomm"
-               fi
+               tmake_file="rs6000/t-ppcos rs6000/t-ppccomm"
                xmake_file=rs6000/x-sysv4
                extra_headers=ppc-asm.h
                ;;
@@ -5330,32 +5938,23 @@ for machine in $build $host $target; do
                then
                        xmake_file=rs6000/x-aix41-gld
                else
-                       xmake_file=rs6000/x-aix41
+                       tmake_file="rs6000/t-newas rs6000/t-aix41"
                fi
+               xmake_file=rs6000/x-aix41
                float_format=none
                use_collect2=yes
                ;;
        rs6000-ibm-aix4.[3456789]* | powerpc-ibm-aix4.[3456789]*)
                tm_file=rs6000/aix43.h
-               if test x$host != x$target
-               then
-                       tmake_file=rs6000/t-xaix43
-               else
-                       tmake_file=rs6000/t-aix43
-               fi
-               xmake_file=rs6000/x-aix43
+               tmake_file=rs6000/t-aix43
+               xmake_file=rs6000/x-aix41
                float_format=none
                use_collect2=yes
                ;;
        rs6000-ibm-aix[56789].* | powerpc-ibm-aix[56789].*)
                tm_file=rs6000/aix43.h
-               if test x$host != x$target
-               then
-                       tmake_file=rs6000/t-xaix43
-               else
-                       tmake_file=rs6000/t-aix43
-               fi
-               xmake_file=rs6000/x-aix43
+               tmake_file=rs6000/t-aix43
+               xmake_file=rs6000/x-aix41
                float_format=none
                use_collect2=yes
                ;;
@@ -5415,7 +6014,7 @@ for machine in $build $host $target; do
        sparc-*-netbsd*)
                tm_file=sparc/netbsd.h
                tmake_file=t-netbsd
-       use_collect2=yes
+               use_collect2=yes
                ;;
        sparc-*-openbsd*)
                # we need collect2 until our bug is fixed...
@@ -5469,12 +6068,24 @@ for machine in $build $host $target; do
                tmake_file=sparc/t-sunos41
                xmake_file=x-lynx
                ;;
-       sparc-*-rtems*)
+       sparc-*-rtemsaout*)
                tmake_file="sparc/t-sparcbare t-rtems"
                tm_file=sparc/rtems.h
                ;;
+       sparc-*-rtems*|sparc-*-rtemself*)
+               tm_file="sparc/rtemself.h"
+               tmake_file="sparc/t-elf t-rtems"
+               extra_parts="crti.o crtn.o crtbegin.o crtend.o"
+               #float_format=i128
+               float_format=i64
+               ;;
        sparcv9-*-solaris2*)
-               tm_file=sparc/sol2-sld-64.h
+               if test x$gnu_ld = xyes
+               then
+                       tm_file=sparc/sol2-64.h
+               else
+                       tm_file=sparc/sol2-sld-64.h
+               fi
                xm_file="sparc/xm-sysv4-64.h sparc/xm-sol2.h"
                xm_defines="USG POSIX"
                tmake_file="sparc/t-sol2 sparc/t-sol2-64"
@@ -5496,12 +6107,21 @@ for machine in $build $host $target; do
                fi
                ;;
         sparc-hal-solaris2*)
-                xm_file=sparc/xm-sol2.h
+                xm_file="sparc/xm-sysv4.h sparc/xm-sol2.h"
+                xm_defines="USG POSIX"
                 tm_file="sparc/sol2.h sparc/hal.h"
                 tmake_file="sparc/t-halos sparc/t-sol2"
                 xmake_file=sparc/x-sysv4
                 extra_parts="crt1.o crti.o crtn.o gmon.o crtbegin.o crtend.o"
-                broken_install=yes
+                case $machine in
+                *-*-solaris2.[0-4])
+                        float_format=i128
+                ;;
+                *)
+                        float_format=none
+                        ;;
+                esac
+               thread_file='solaris'
                 ;;
        sparc-*-solaris2*)
                if test x$gnu_ld = xyes
@@ -5510,12 +6130,24 @@ for machine in $build $host $target; do
                else
                        tm_file=sparc/sol2-sld.h
                fi
-               xm_file="xm-siglist.h sparc/xm-sysv4.h sparc/xm-sol2.h"
+               xm_file="sparc/xm-sysv4.h sparc/xm-sol2.h"
                xm_defines="USG POSIX"
                tmake_file=sparc/t-sol2
                xmake_file=sparc/x-sysv4
                extra_parts="crt1.o crti.o crtn.o gcrt1.o gmon.o crtbegin.o crtend.o"
                case $machine in
+               *-*-solaris2.[0-6] | *-*-solaris2.[0-6].*) ;;
+               *-*-solaris2*)
+                       if test x$gnu_ld = xyes
+                       then
+                               tm_file=sparc/sol2-64.h
+                       else
+                               tm_file=sparc/sol2-sld-64.h
+                       fi
+                       tmake_file="$tmake_file sparc/t-sol2-64"
+                       ;;
+               esac
+               case $machine in
                *-*-solaris2.[0-4])
                        float_format=i128
                        ;;
@@ -5556,14 +6188,14 @@ for machine in $build $host $target; do
                ;;
        sparc-*-sysv4*)
                tm_file=sparc/sysv4.h
-               xm_file="xm-siglist.h sparc/xm-sysv4.h"
+               xm_file="sparc/xm-sysv4.h"
                xm_defines="USG POSIX"
                tmake_file=t-svr4
                xmake_file=sparc/x-sysv4
                extra_parts="crtbegin.o crtend.o"
                ;;
        sparc-*-vxsim*)
-               xm_file="xm-siglist.h sparc/xm-sysv4.h sparc/xm-sol2.h"
+               xm_file="sparc/xm-sysv4.h sparc/xm-sol2.h"
                xm_defines="USG POSIX"
                tm_file=sparc/vxsim.h
                tmake_file=sparc/t-vxsparc
@@ -5581,6 +6213,20 @@ for machine in $build $host $target; do
                tm_file="sparc/lite.h aoutos.h libgloss.h"
                tmake_file=sparc/t-sparclite
                ;;
+       sparclite-*-elf*)
+               tm_file="sparc/liteelf.h"
+               tmake_file=sparc/t-sparclite
+                extra_parts="crtbegin.o crtend.o"
+               ;;
+       sparc86x-*-aout*)
+               tm_file="sparc/sp86x-aout.h aoutos.h libgloss.h"
+               tmake_file=sparc/t-sp86x
+               ;;
+       sparc86x-*-elf*)        
+               tm_file="sparc/sp86x-elf.h"
+               tmake_file=sparc/t-sp86x
+                extra_parts="crtbegin.o crtend.o"
+               ;;
        sparc64-*-aout*)
                tmake_file=sparc/t-sp64
                tm_file=sparc/sp64-aout.h
@@ -5597,6 +6243,9 @@ for machine in $build $host $target; do
                xmake_file=x-linux
                extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
                gnu_ld=yes
+               if test x$enable_threads = xyes; then
+                       thread_file='posix'
+               fi
                float_format=sparc
                ;;
 # This hasn't been upgraded to GCC 2.
@@ -5605,56 +6254,31 @@ for machine in $build $host $target; do
 #              ;;
 #      tahoe-*-bsd*)                   # tahoe running BSD
 #              ;;
-       thumb-*-coff* | thumbel-*-coff*)
-               tm_file=arm/tcoff.h
-               out_file=arm/thumb.c
-               xm_file=arm/xm-thumb.h
-               md_file=arm/thumb.md
-               tmake_file=arm/t-thumb
-               ;;
-       thumb-*-elf* | thumbel-*-elf*)
-               tm_file=arm/telf.h
-               out_file=arm/thumb.c
-               xm_file=arm/xm-thumb.h
-               md_file=arm/thumb.md
-               tmake_file=arm/t-thumb-elf
-               ;;
-       thumb-*-linux-gnu*)
-               tm_file=arm/linux-telf.h
-               out_file=arm/thumb.c
-               xm_file=arm/xm-thumb.h
-               md_file=arm/thumb.md
-               tmake_file=arm/t-thumb-linux
-               ;;
-       thumb-*-uclinux*)
-               tm_file=arm/uclinux-telf.h
-               out_file=arm/thumb.c
-               md_file=arm/thumb.md
-               tmake_file=arm/t-thumb-linux
-               xm_file=arm/xm-thumb.h
-               ;;
-       thumb-wrs-vxworks)
-               tm_file=arm/tcoff.h
-               out_file=arm/thumb.c
-               xm_file=arm/xm-thumb.h
-               md_file=arm/thumb.md
-               tmake_file=arm/t-thumb
-               thread_file='vxworks'
-               ;;
-       thumb-*-pe)
-               tm_file=arm/tpe.h
-               out_file=arm/thumb.c
-               xm_file=arm/xm-thumb.h
-               md_file=arm/thumb.md
-               tmake_file=arm/t-pe-thumb
-               extra_objs=pe.o
+
+       thumb*-*-*)
+               { echo "configure: error: 
+*** The Thumb targets have been depreciated.  The equivalent
+*** ARM based toolchain can now generated Thumb instructions
+*** when the -mthumb switch is given to the compiler." 1>&2; exit 1; }
                ;;
 # This hasn't been upgraded to GCC 2.
 #      tron-*-*)
 #              cpu_type=gmicro
 #              use_collect2=yes
 #              ;;
+       v850-*-rtems*)
+               cpu_type=v850
+               tm_file="v850/rtems.h"
+               xm_file="v850/xm-v850.h"
+               tmake_file="v850/t-v850 t-rtems"
+               if test x$stabs = xyes
+               then
+                       tm_file="${tm_file} dbx.h"
+               fi
+               use_collect2=no
+               ;;
        v850-*-*)
+               target_cpu_default="TARGET_CPU_generic"
                cpu_type=v850
                tm_file="v850/v850.h"
                xm_file="v850/xm-v850.h"
@@ -5678,7 +6302,7 @@ for machine in $build $host $target; do
                tm_file="${tm_file} netbsd.h vax/netbsd.h"
                tmake_file=t-netbsd
                float_format=vax
-       use_collect2=yes
+               use_collect2=yes
                ;;
        vax-*-openbsd*)
                tmake_file="${tmake_file} vax/t-openbsd"
@@ -5756,6 +6380,9 @@ for machine in $build $host $target; do
                ;;
        alpha*-*-*)
                case $machine in
+                       alphaev6[78]*)
+                               target_cpu_default2="MASK_CPU_EV6|MASK_BWX|MASK_MAX|MASK_FIX|MASK_CIX"
+                               ;;
                        alphaev6*)
                                target_cpu_default2="MASK_CPU_EV6|MASK_BWX|MASK_MAX|MASK_FIX"
                                ;;
@@ -5789,7 +6416,7 @@ for machine in $build $host $target; do
 
                        # Distinguish cores, and major variants
                        # arm7m doesn't exist, but D & I don't affect code
-                       xarm23678 | xarm250 | xarm67010 \
+                       xarm[23678] | xarm250 | xarm[67][01]0 \
                        | xarm7m | xarm7dm | xarm7dmi | xarm7tdmi \
                        | xarm7100 | xarm7500 | xarm7500fe | xarm810 \
                        | xstrongarm | xstrongarm110 | xstrongarm1100)
@@ -5816,16 +6443,16 @@ for machine in $build $host $target; do
                then
                        if test x$gnu_ld = xyes
                        then
-                               target_cpu_default2=20
+                               target_cpu_default2="MASK_GAS|MASK_SPLIT_ADDR"
                        else
-                               target_cpu_default2=16
+                               target_cpu_default2="MASK_GAS"
                        fi
                fi
                ;;
        mips*-*-*)
                if test x$gas = xyes
                then
-                       target_cpu_default2=16
+                       target_cpu_default2="MASK_GAS"
                fi
                ;;
        powerpc*-*-* | rs6000-*-*)
@@ -5949,7 +6576,7 @@ then tmake_file=$cpu_type/t-$cpu_type
 fi
 
 if test x"$dwarf2" = xyes
-then tm_file="tm-dwarf2.h $tm_file"
+then tm_file="$tm_file tm-dwarf2.h"
 fi
 
 if test x$float_format = x
@@ -5961,14 +6588,6 @@ then float_h_file=Makefile.in
 else float_h_file=float-$float_format.h
 fi
 
-if test x$enable_haifa = x
-then
-  case $target in
-    alpha*-* | hppa*-* | powerpc*-* | rs6000-* | *sparc*-* | m32r*-*)
-      enable_haifa=yes;;
-  esac
-fi
-
 # Handle cpp installation.
 if test x$enable_cpp != xno
 then
@@ -6069,9 +6688,9 @@ fi
 xm_file="gansidecl.h ${xm_file}"
 tm_file="gansidecl.h ${tm_file}"
 
-vars="host_xm_file tm_file xm_file build_xm_file"
-links="config.h tm.h tconfig.h hconfig.h"
-defines="host_xm_defines null_defines xm_defines build_xm_defines"
+vars="host_xm_file tm_file tm_p_file xm_file build_xm_file"
+links="config.h tm.h tm_p.h tconfig.h hconfig.h"
+defines="host_xm_defines null_defines null_defines xm_defines build_xm_defines"
 
 rm -f config.bak
 if test -f config.status; then mv -f config.status config.bak; fi
@@ -6084,6 +6703,8 @@ do
        set $defines; define=$1; shift; defines=$*
 
        rm -f $link
+       # Make sure the file is created, even if it is empty.
+       echo >$link
 
        # Define TARGET_CPU_DEFAULT if the system wants one.
        # This substitutes for lots of *.h files.
@@ -6128,7 +6749,7 @@ if test "${with_gcc_version_trigger+set}" = set; then
 else
        gcc_version_trigger=${srcdir}/version.c
 fi
-gcc_version=`sed -e 's/.*\"\([^ \"]*\)[ \"].*/\1/' < ${gcc_version_trigger}`
+gcc_version=`grep version_string ${gcc_version_trigger} | sed -e 's/.*\"\([^ \"]*\)[ \"].*/\1/'`
 
 # Internationalization
 PACKAGE=gcc
@@ -6158,7 +6779,7 @@ fi
 
 
         echo $ac_n "checking for strerror in -lcposix""... $ac_c" 1>&6
-echo "configure:6162: checking for strerror in -lcposix" >&5
+echo "configure:6783: checking for strerror in -lcposix" >&5
 ac_lib_var=`echo cposix'_'strerror | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -6166,7 +6787,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lcposix  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 6170 "configure"
+#line 6791 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -6177,7 +6798,7 @@ int main() {
 strerror()
 ; return 0; }
 EOF
-if { (eval echo configure:6181: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:6802: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -6200,12 +6821,12 @@ fi
   
 
 echo $ac_n "checking for working const""... $ac_c" 1>&6
-echo "configure:6204: checking for working const" >&5
+echo "configure:6825: checking for working const" >&5
 if eval "test \"`echo '$''{'ac_cv_c_const'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 6209 "configure"
+#line 6830 "configure"
 #include "confdefs.h"
 
 int main() {
@@ -6254,7 +6875,7 @@ ccp = (char const *const *) p;
 
 ; return 0; }
 EOF
-if { (eval echo configure:6258: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:6879: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   ac_cv_c_const=yes
 else
@@ -6275,21 +6896,21 @@ EOF
 fi
 
 echo $ac_n "checking for inline""... $ac_c" 1>&6
-echo "configure:6279: checking for inline" >&5
+echo "configure:6900: checking for inline" >&5
 if eval "test \"`echo '$''{'ac_cv_c_inline'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   ac_cv_c_inline=no
 for ac_kw in inline __inline__ __inline; do
   cat > conftest.$ac_ext <<EOF
-#line 6286 "configure"
+#line 6907 "configure"
 #include "confdefs.h"
 
 int main() {
 } $ac_kw foo() {
 ; return 0; }
 EOF
-if { (eval echo configure:6293: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:6914: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   ac_cv_c_inline=$ac_kw; break
 else
@@ -6315,12 +6936,12 @@ EOF
 esac
 
 echo $ac_n "checking for off_t""... $ac_c" 1>&6
-echo "configure:6319: checking for off_t" >&5
+echo "configure:6940: checking for off_t" >&5
 if eval "test \"`echo '$''{'ac_cv_type_off_t'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 6324 "configure"
+#line 6945 "configure"
 #include "confdefs.h"
 #include <sys/types.h>
 #if STDC_HEADERS
@@ -6348,12 +6969,12 @@ EOF
 fi
 
 echo $ac_n "checking for size_t""... $ac_c" 1>&6
-echo "configure:6352: checking for size_t" >&5
+echo "configure:6973: checking for size_t" >&5
 if eval "test \"`echo '$''{'ac_cv_type_size_t'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 6357 "configure"
+#line 6978 "configure"
 #include "confdefs.h"
 #include <sys/types.h>
 #if STDC_HEADERS
@@ -6383,19 +7004,19 @@ fi
 # The Ultrix 4.2 mips builtin alloca declared by alloca.h only works
 # for constant arguments.  Useless!
 echo $ac_n "checking for working alloca.h""... $ac_c" 1>&6
-echo "configure:6387: checking for working alloca.h" >&5
+echo "configure:7008: checking for working alloca.h" >&5
 if eval "test \"`echo '$''{'ac_cv_header_alloca_h'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 6392 "configure"
+#line 7013 "configure"
 #include "confdefs.h"
 #include <alloca.h>
 int main() {
 char *p = alloca(2 * sizeof(int));
 ; return 0; }
 EOF
-if { (eval echo configure:6399: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:7020: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   ac_cv_header_alloca_h=yes
 else
@@ -6416,12 +7037,12 @@ EOF
 fi
 
 echo $ac_n "checking for alloca""... $ac_c" 1>&6
-echo "configure:6420: checking for alloca" >&5
+echo "configure:7041: checking for alloca" >&5
 if eval "test \"`echo '$''{'ac_cv_func_alloca_works'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 6425 "configure"
+#line 7046 "configure"
 #include "confdefs.h"
 
 #ifdef __GNUC__
@@ -6449,7 +7070,7 @@ int main() {
 char *p = (char *) alloca(1);
 ; return 0; }
 EOF
-if { (eval echo configure:6453: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:7074: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   ac_cv_func_alloca_works=yes
 else
@@ -6474,195 +7095,49 @@ if test $ac_cv_func_alloca_works = no; then
   # that cause trouble.  Some versions do not even contain alloca or
   # contain a buggy version.  If you still want to use their alloca,
   # use ar to extract alloca.o from them instead of compiling alloca.c.
-  ALLOCA=alloca.${ac_objext}
-  cat >> confdefs.h <<\EOF
-#define C_ALLOCA 1
-EOF
-
-
-echo $ac_n "checking whether alloca needs Cray hooks""... $ac_c" 1>&6
-echo "configure:6485: checking whether alloca needs Cray hooks" >&5
-if eval "test \"`echo '$''{'ac_cv_os_cray'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
-else
-  cat > conftest.$ac_ext <<EOF
-#line 6490 "configure"
-#include "confdefs.h"
-#if defined(CRAY) && ! defined(CRAY2)
-webecray
-#else
-wenotbecray
-#endif
-
-EOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  egrep "webecray" >/dev/null 2>&1; then
-  rm -rf conftest*
-  ac_cv_os_cray=yes
-else
-  rm -rf conftest*
-  ac_cv_os_cray=no
-fi
-rm -f conftest*
-
-fi
-
-echo "$ac_t""$ac_cv_os_cray" 1>&6
-if test $ac_cv_os_cray = yes; then
-for ac_func in _getb67 GETB67 getb67; do
-  echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
-echo "configure:6515: checking for $ac_func" >&5
-if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
-else
-  cat > conftest.$ac_ext <<EOF
-#line 6520 "configure"
-#include "confdefs.h"
-/* System header to define __stub macros and hopefully few prototypes,
-    which can conflict with char $ac_func(); below.  */
-#include <assert.h>
-/* Override any gcc2 internal prototype to avoid an error.  */
-/* We use char because int might match the return type of a gcc2
-    builtin and then its argument prototype would still apply.  */
-char $ac_func();
-
-int main() {
-
-/* The GNU C library defines this for functions which it implements
-    to always fail with ENOSYS.  Some functions are actually named
-    something starting with __ and the normal name is an alias.  */
-#if defined (__stub_$ac_func) || defined (__stub___$ac_func)
-choke me
-#else
-$ac_func();
-#endif
-
-; return 0; }
-EOF
-if { (eval echo configure:6543: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-  rm -rf conftest*
-  eval "ac_cv_func_$ac_func=yes"
-else
-  echo "configure: failed program was:" >&5
-  cat conftest.$ac_ext >&5
-  rm -rf conftest*
-  eval "ac_cv_func_$ac_func=no"
-fi
-rm -f conftest*
-fi
-
-if eval "test \"`echo '$ac_cv_func_'$ac_func`\" = yes"; then
-  echo "$ac_t""yes" 1>&6
-  cat >> confdefs.h <<EOF
-#define CRAY_STACKSEG_END $ac_func
-EOF
-
-  break
-else
-  echo "$ac_t""no" 1>&6
-fi
-
-done
-fi
-
-echo $ac_n "checking stack direction for C alloca""... $ac_c" 1>&6
-echo "configure:6570: checking stack direction for C alloca" >&5
-if eval "test \"`echo '$''{'ac_cv_c_stack_direction'+set}'`\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
-else
-  if test "$cross_compiling" = yes; then
-  ac_cv_c_stack_direction=0
-else
-  cat > conftest.$ac_ext <<EOF
-#line 6578 "configure"
-#include "confdefs.h"
-find_stack_direction ()
-{
-  static char *addr = 0;
-  auto char dummy;
-  if (addr == 0)
-    {
-      addr = &dummy;
-      return find_stack_direction ();
-    }
-  else
-    return (&dummy > addr) ? 1 : -1;
-}
-main ()
-{
-  exit (find_stack_direction() < 0);
-}
-EOF
-if { (eval echo configure:6597: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
-then
-  ac_cv_c_stack_direction=1
-else
-  echo "configure: failed program was:" >&5
-  cat conftest.$ac_ext >&5
-  rm -fr conftest*
-  ac_cv_c_stack_direction=-1
-fi
-rm -fr conftest*
-fi
-
-fi
-
-echo "$ac_t""$ac_cv_c_stack_direction" 1>&6
-cat >> confdefs.h <<EOF
-#define STACK_DIRECTION $ac_cv_c_stack_direction
+  ALLOCA=alloca.${ac_objext}
+  cat >> confdefs.h <<\EOF
+#define C_ALLOCA 1
 EOF
 
-fi
 
-for ac_hdr in unistd.h
-do
-ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
-echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
-echo "configure:6622: checking for $ac_hdr" >&5
-if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
+echo $ac_n "checking whether alloca needs Cray hooks""... $ac_c" 1>&6
+echo "configure:7106: checking whether alloca needs Cray hooks" >&5
+if eval "test \"`echo '$''{'ac_cv_os_cray'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 6627 "configure"
+#line 7111 "configure"
 #include "confdefs.h"
-#include <$ac_hdr>
+#if defined(CRAY) && ! defined(CRAY2)
+webecray
+#else
+wenotbecray
+#endif
+
 EOF
-ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:6632: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
-ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
-if test -z "$ac_err"; then
+if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
+  egrep "webecray" >/dev/null 2>&1; then
   rm -rf conftest*
-  eval "ac_cv_header_$ac_safe=yes"
+  ac_cv_os_cray=yes
 else
-  echo "$ac_err" >&5
-  echo "configure: failed program was:" >&5
-  cat conftest.$ac_ext >&5
   rm -rf conftest*
-  eval "ac_cv_header_$ac_safe=no"
+  ac_cv_os_cray=no
 fi
 rm -f conftest*
+
 fi
-if eval "test \"`echo '$ac_cv_header_'$ac_safe`\" = yes"; then
-  echo "$ac_t""yes" 1>&6
-    ac_tr_hdr=HAVE_`echo $ac_hdr | sed 'y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%'`
-  cat >> confdefs.h <<EOF
-#define $ac_tr_hdr 1
-EOF
-else
-  echo "$ac_t""no" 1>&6
-fi
-done
 
-for ac_func in getpagesize
-do
-echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
-echo "configure:6661: checking for $ac_func" >&5
+echo "$ac_t""$ac_cv_os_cray" 1>&6
+if test $ac_cv_os_cray = yes; then
+for ac_func in _getb67 GETB67 getb67; do
+  echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
+echo "configure:7136: checking for $ac_func" >&5
 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 6666 "configure"
+#line 7141 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char $ac_func(); below.  */
@@ -6685,7 +7160,7 @@ $ac_func();
 
 ; return 0; }
 EOF
-if { (eval echo configure:6689: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:7164: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_func_$ac_func=yes"
 else
 
 if eval "test \"`echo '$ac_cv_func_'$ac_func`\" = yes"; then
   echo "$ac_t""yes" 1>&6
-    ac_tr_func=HAVE_`echo $ac_func | tr 'abcdefghijklmnopqrstuvwxyz' 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'`
   cat >> confdefs.h <<EOF
-#define $ac_tr_func 1
+#define CRAY_STACKSEG_END $ac_func
 EOF
+
+  break
 else
   echo "$ac_t""no" 1>&6
 fi
+
 done
+fi
 
-echo $ac_n "checking for working mmap""... $ac_c" 1>&6
-echo "configure:6714: checking for working mmap" >&5
-if eval "test \"`echo '$''{'ac_cv_func_mmap_fixed_mapped'+set}'`\" = set"; then
+echo $ac_n "checking stack direction for C alloca""... $ac_c" 1>&6
+echo "configure:7191: checking stack direction for C alloca" >&5
+if eval "test \"`echo '$''{'ac_cv_c_stack_direction'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   if test "$cross_compiling" = yes; then
-  ac_cv_func_mmap_fixed_mapped=no
+  ac_cv_c_stack_direction=0
 else
   cat > conftest.$ac_ext <<EOF
-#line 6722 "configure"
+#line 7199 "configure"
 #include "confdefs.h"
-
-/* Thanks to Mike Haertel and Jim Avera for this test.
-   Here is a matrix of mmap possibilities:
-       mmap private not fixed
-       mmap private fixed at somewhere currently unmapped
-       mmap private fixed at somewhere already mapped
-       mmap shared not fixed
-       mmap shared fixed at somewhere currently unmapped
-       mmap shared fixed at somewhere already mapped
-   For private mappings, we should verify that changes cannot be read()
-   back from the file, nor mmap's back from the file at a different
-   address.  (There have been systems where private was not correctly
-   implemented like the infamous i386 svr4.0, and systems where the
-   VM page cache was not coherent with the filesystem buffer cache
-   like early versions of FreeBSD and possibly contemporary NetBSD.)
-   For shared mappings, we should conversely verify that changes get
-   propogated back to all the places they're supposed to be.
-
-   Grep wants private fixed already mapped.
-   The main things grep needs to know about mmap are:
-   * does it exist and is it safe to write into the mmap'd area
-   * how to use it (BSD variants)  */
-#include <sys/types.h>
-#include <fcntl.h>
-#include <sys/mman.h>
-
-/* This mess was copied from the GNU getpagesize.h.  */
-#ifndef HAVE_GETPAGESIZE
-# ifdef HAVE_UNISTD_H
-#  include <unistd.h>
-# endif
-
-/* Assume that all systems that can run configure have sys/param.h.  */
-# ifndef HAVE_SYS_PARAM_H
-#  define HAVE_SYS_PARAM_H 1
-# endif
-
-# ifdef _SC_PAGESIZE
-#  define getpagesize() sysconf(_SC_PAGESIZE)
-# else /* no _SC_PAGESIZE */
-#  ifdef HAVE_SYS_PARAM_H
-#   include <sys/param.h>
-#   ifdef EXEC_PAGESIZE
-#    define getpagesize() EXEC_PAGESIZE
-#   else /* no EXEC_PAGESIZE */
-#    ifdef NBPG
-#     define getpagesize() NBPG * CLSIZE
-#     ifndef CLSIZE
-#      define CLSIZE 1
-#     endif /* no CLSIZE */
-#    else /* no NBPG */
-#     ifdef NBPC
-#      define getpagesize() NBPC
-#     else /* no NBPC */
-#      ifdef PAGESIZE
-#       define getpagesize() PAGESIZE
-#      endif /* PAGESIZE */
-#     endif /* no NBPC */
-#    endif /* no NBPG */
-#   endif /* no EXEC_PAGESIZE */
-#  else /* no HAVE_SYS_PARAM_H */
-#   define getpagesize() 8192  /* punt totally */
-#  endif /* no HAVE_SYS_PARAM_H */
-# endif /* no _SC_PAGESIZE */
-
-#endif /* no HAVE_GETPAGESIZE */
-
-#ifdef __cplusplus
-extern "C" { void *malloc(unsigned); }
-#else
-char *malloc();
-#endif
-
-int
-main()
+find_stack_direction ()
 {
-       char *data, *data2, *data3;
-       int i, pagesize;
-       int fd;
-
-       pagesize = getpagesize();
-
-       /*
-        * First, make a file with some known garbage in it.
-        */
-       data = malloc(pagesize);
-       if (!data)
-               exit(1);
-       for (i = 0; i < pagesize; ++i)
-               *(data + i) = rand();
-       umask(0);
-       fd = creat("conftestmmap", 0600);
-       if (fd < 0)
-               exit(1);
-       if (write(fd, data, pagesize) != pagesize)
-               exit(1);
-       close(fd);
-
-       /*
-        * Next, try to mmap the file at a fixed address which
-        * already has something else allocated at it.  If we can,
-        * also make sure that we see the same garbage.
-        */
-       fd = open("conftestmmap", O_RDWR);
-       if (fd < 0)
-               exit(1);
-       data2 = malloc(2 * pagesize);
-       if (!data2)
-               exit(1);
-       data2 += (pagesize - ((int) data2 & (pagesize - 1))) & (pagesize - 1);
-       if (data2 != mmap(data2, pagesize, PROT_READ | PROT_WRITE,
-           MAP_PRIVATE | MAP_FIXED, fd, 0L))
-               exit(1);
-       for (i = 0; i < pagesize; ++i)
-               if (*(data + i) != *(data2 + i))
-                       exit(1);
-
-       /*
-        * Finally, make sure that changes to the mapped area
-        * do not percolate back to the file as seen by read().
-        * (This is a bug on some variants of i386 svr4.0.)
-        */
-       for (i = 0; i < pagesize; ++i)
-               *(data2 + i) = *(data2 + i) + 1;
-       data3 = malloc(pagesize);
-       if (!data3)
-               exit(1);
-       if (read(fd, data3, pagesize) != pagesize)
-               exit(1);
-       for (i = 0; i < pagesize; ++i)
-               if (*(data + i) != *(data3 + i))
-                       exit(1);
-       close(fd);
-       unlink("conftestmmap");
-       exit(0);
+  static char *addr = 0;
+  auto char dummy;
+  if (addr == 0)
+    {
+      addr = &dummy;
+      return find_stack_direction ();
+    }
+  else
+    return (&dummy > addr) ? 1 : -1;
+}
+main ()
+{
+  exit (find_stack_direction() < 0);
 }
-
 EOF
-if { (eval echo configure:6862: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
+if { (eval echo configure:7218: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
 then
-  ac_cv_func_mmap_fixed_mapped=yes
+  ac_cv_c_stack_direction=1
 else
   echo "configure: failed program was:" >&5
   cat conftest.$ac_ext >&5
   rm -fr conftest*
-  ac_cv_func_mmap_fixed_mapped=no
+  ac_cv_c_stack_direction=-1
 fi
 rm -fr conftest*
 fi
 
 fi
 
-echo "$ac_t""$ac_cv_func_mmap_fixed_mapped" 1>&6
-if test $ac_cv_func_mmap_fixed_mapped = yes; then
-  cat >> confdefs.h <<\EOF
-#define HAVE_MMAP 1
+echo "$ac_t""$ac_cv_c_stack_direction" 1>&6
+cat >> confdefs.h <<EOF
+#define STACK_DIRECTION $ac_cv_c_stack_direction
 EOF
 
 fi
 
-                              
+                           
    for ac_hdr in argz.h limits.h locale.h nl_types.h malloc.h string.h \
 unistd.h sys/param.h
 do
 ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
-echo "configure:6890: checking for $ac_hdr" >&5
+echo "configure:7245: checking for $ac_hdr" >&5
 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 6895 "configure"
+#line 7250 "configure"
 #include "confdefs.h"
 #include <$ac_hdr>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:6900: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:7255: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
 if test -z "$ac_err"; then
   rm -rf conftest*
@@ -6926,12 +7281,12 @@ done
 strdup __argz_count __argz_stringify __argz_next
 do
 echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
-echo "configure:6930: checking for $ac_func" >&5
+echo "configure:7285: checking for $ac_func" >&5
 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 6935 "configure"
+#line 7290 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char $ac_func(); below.  */
@@ -6954,7 +7309,7 @@ $ac_func();
 
 ; return 0; }
 EOF
-if { (eval echo configure:6958: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:7313: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_func_$ac_func=yes"
 else
@@ -6983,12 +7338,12 @@ done
      for ac_func in stpcpy
 do
 echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
-echo "configure:6987: checking for $ac_func" >&5
+echo "configure:7342: checking for $ac_func" >&5
 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 6992 "configure"
+#line 7347 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char $ac_func(); below.  */
@@ -7011,7 +7366,7 @@ $ac_func();
 
 ; return 0; }
 EOF
-if { (eval echo configure:7015: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:7370: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_func_$ac_func=yes"
 else
@@ -7045,19 +7400,19 @@ EOF
 
    if test $ac_cv_header_locale_h = yes; then
     echo $ac_n "checking for LC_MESSAGES""... $ac_c" 1>&6
-echo "configure:7049: checking for LC_MESSAGES" >&5
+echo "configure:7404: checking for LC_MESSAGES" >&5
 if eval "test \"`echo '$''{'am_cv_val_LC_MESSAGES'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 7054 "configure"
+#line 7409 "configure"
 #include "confdefs.h"
 #include <locale.h>
 int main() {
 return LC_MESSAGES
 ; return 0; }
 EOF
-if { (eval echo configure:7061: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:7416: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   am_cv_val_LC_MESSAGES=yes
 else
@@ -7078,7 +7433,7 @@ EOF
     fi
   fi
    echo $ac_n "checking whether NLS is requested""... $ac_c" 1>&6
-echo "configure:7082: checking whether NLS is requested" >&5
+echo "configure:7437: checking whether NLS is requested" >&5
         # Check whether --enable-nls or --disable-nls was given.
 if test "${enable_nls+set}" = set; then
   enableval="$enable_nls"
@@ -7098,7 +7453,7 @@ fi
 EOF
 
       echo $ac_n "checking whether included gettext is requested""... $ac_c" 1>&6
-echo "configure:7102: checking whether included gettext is requested" >&5
+echo "configure:7457: checking whether included gettext is requested" >&5
       # Check whether --with-included-gettext or --without-included-gettext was given.
 if test "${with_included_gettext+set}" = set; then
   withval="$with_included_gettext"
@@ -7117,17 +7472,17 @@ fi
 
        ac_safe=`echo "libintl.h" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for libintl.h""... $ac_c" 1>&6
-echo "configure:7121: checking for libintl.h" >&5
+echo "configure:7476: checking for libintl.h" >&5
 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 7126 "configure"
+#line 7481 "configure"
 #include "confdefs.h"
 #include <libintl.h>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:7131: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:7486: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
 if test -z "$ac_err"; then
   rm -rf conftest*
@@ -7144,19 +7499,19 @@ fi
 if eval "test \"`echo '$ac_cv_header_'$ac_safe`\" = yes"; then
   echo "$ac_t""yes" 1>&6
   echo $ac_n "checking for gettext in libc""... $ac_c" 1>&6
-echo "configure:7148: checking for gettext in libc" >&5
+echo "configure:7503: checking for gettext in libc" >&5
 if eval "test \"`echo '$''{'gt_cv_func_gettext_libc'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 7153 "configure"
+#line 7508 "configure"
 #include "confdefs.h"
 #include <libintl.h>
 int main() {
 return (int) gettext ("")
 ; return 0; }
 EOF
-if { (eval echo configure:7160: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:7515: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   gt_cv_func_gettext_libc=yes
 else
@@ -7172,7 +7527,7 @@ echo "$ac_t""$gt_cv_func_gettext_libc" 1>&6
 
           if test "$gt_cv_func_gettext_libc" != "yes"; then
             echo $ac_n "checking for bindtextdomain in -lintl""... $ac_c" 1>&6
-echo "configure:7176: checking for bindtextdomain in -lintl" >&5
+echo "configure:7531: checking for bindtextdomain in -lintl" >&5
 ac_lib_var=`echo intl'_'bindtextdomain | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -7180,7 +7535,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lintl  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 7184 "configure"
+#line 7539 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -7191,7 +7546,7 @@ int main() {
 bindtextdomain()
 ; return 0; }
 EOF
-if { (eval echo configure:7195: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:7550: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -7207,12 +7562,12 @@ fi
 if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then
   echo "$ac_t""yes" 1>&6
   echo $ac_n "checking for gettext in libintl""... $ac_c" 1>&6
-echo "configure:7211: checking for gettext in libintl" >&5
+echo "configure:7566: checking for gettext in libintl" >&5
 if eval "test \"`echo '$''{'gt_cv_func_gettext_libintl'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   echo $ac_n "checking for gettext in -lintl""... $ac_c" 1>&6
-echo "configure:7216: checking for gettext in -lintl" >&5
+echo "configure:7571: checking for gettext in -lintl" >&5
 ac_lib_var=`echo intl'_'gettext | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -7220,7 +7575,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lintl  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 7224 "configure"
+#line 7579 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -7231,7 +7586,7 @@ int main() {
 gettext()
 ; return 0; }
 EOF
-if { (eval echo configure:7235: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:7590: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -7270,7 +7625,7 @@ EOF
              # Extract the first word of "msgfmt", so it can be a program name with args.
 set dummy msgfmt; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:7274: checking for $ac_word" >&5
+echo "configure:7629: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_path_MSGFMT'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -7304,12 +7659,12 @@ fi
                for ac_func in dcgettext
 do
 echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
-echo "configure:7308: checking for $ac_func" >&5
+echo "configure:7663: checking for $ac_func" >&5
 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 7313 "configure"
+#line 7668 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char $ac_func(); below.  */
@@ -7332,7 +7687,7 @@ $ac_func();
 
 ; return 0; }
 EOF
-if { (eval echo configure:7336: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:7691: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_func_$ac_func=yes"
 else
@@ -7359,7 +7714,7 @@ done
                # Extract the first word of "gmsgfmt", so it can be a program name with args.
 set dummy gmsgfmt; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:7363: checking for $ac_word" >&5
+echo "configure:7718: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_path_GMSGFMT'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -7395,7 +7750,7 @@ fi
                # Extract the first word of "xgettext", so it can be a program name with args.
 set dummy xgettext; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:7399: checking for $ac_word" >&5
+echo "configure:7754: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_path_XGETTEXT'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -7427,7 +7782,7 @@ else
 fi
 
                cat > conftest.$ac_ext <<EOF
-#line 7431 "configure"
+#line 7786 "configure"
 #include "confdefs.h"
 
 int main() {
@@ -7435,7 +7790,7 @@ extern int _nl_msg_cat_cntr;
                               return _nl_msg_cat_cntr
 ; return 0; }
 EOF
-if { (eval echo configure:7439: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:7794: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   CATOBJEXT=.gmo
                   DATADIRNAME=share
@@ -7458,7 +7813,7 @@ fi
 
         if test "$CATOBJEXT" = "NONE"; then
          echo $ac_n "checking whether catgets can be used""... $ac_c" 1>&6
-echo "configure:7462: checking whether catgets can be used" >&5
+echo "configure:7817: checking whether catgets can be used" >&5
          # Check whether --with-catgets or --without-catgets was given.
 if test "${with_catgets+set}" = set; then
   withval="$with_catgets"
@@ -7471,7 +7826,7 @@ fi
 
          if test "$nls_cv_use_catgets" = "yes"; then
                    echo $ac_n "checking for main in -li""... $ac_c" 1>&6
-echo "configure:7475: checking for main in -li" >&5
+echo "configure:7830: checking for main in -li" >&5
 ac_lib_var=`echo i'_'main | sed 'y%./+-%__p_%'`
 if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -7479,14 +7834,14 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-li  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 7483 "configure"
+#line 7838 "configure"
 #include "confdefs.h"
 
 int main() {
 main()
 ; return 0; }
 EOF
-if { (eval echo configure:7490: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:7845: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -7514,12 +7869,12 @@ else
 fi
 
            echo $ac_n "checking for catgets""... $ac_c" 1>&6
-echo "configure:7518: checking for catgets" >&5
+echo "configure:7873: checking for catgets" >&5
 if eval "test \"`echo '$''{'ac_cv_func_catgets'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 7523 "configure"
+#line 7878 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char catgets(); below.  */
@@ -7542,7 +7897,7 @@ catgets();
 
 ; return 0; }
 EOF
-if { (eval echo configure:7546: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:7901: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_func_catgets=yes"
 else
@@ -7564,7 +7919,7 @@ EOF
               # Extract the first word of "gencat", so it can be a program name with args.
 set dummy gencat; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:7568: checking for $ac_word" >&5
+echo "configure:7923: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_path_GENCAT'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -7600,7 +7955,7 @@ fi
                 # Extract the first word of "gmsgfmt", so it can be a program name with args.
 set dummy gmsgfmt; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:7604: checking for $ac_word" >&5
+echo "configure:7959: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_path_GMSGFMT'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -7637,7 +7992,7 @@ fi
                   # Extract the first word of "msgfmt", so it can be a program name with args.
 set dummy msgfmt; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:7641: checking for $ac_word" >&5
+echo "configure:7996: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_path_GMSGFMT'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -7672,7 +8027,7 @@ fi
                 # Extract the first word of "xgettext", so it can be a program name with args.
 set dummy xgettext; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:7676: checking for $ac_word" >&5
+echo "configure:8031: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_path_XGETTEXT'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -7730,7 +8085,7 @@ fi
         # Extract the first word of "msgfmt", so it can be a program name with args.
 set dummy msgfmt; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:7734: checking for $ac_word" >&5
+echo "configure:8089: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_path_MSGFMT'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -7764,7 +8119,7 @@ fi
         # Extract the first word of "gmsgfmt", so it can be a program name with args.
 set dummy gmsgfmt; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:7768: checking for $ac_word" >&5
+echo "configure:8123: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_path_GMSGFMT'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -7800,7 +8155,7 @@ fi
         # Extract the first word of "xgettext", so it can be a program name with args.
 set dummy xgettext; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:7804: checking for $ac_word" >&5
+echo "configure:8159: checking for $ac_word" >&5
 if eval "test \"`echo '$''{'ac_cv_path_XGETTEXT'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -7893,7 +8248,7 @@ fi
        LINGUAS=
      else
        echo $ac_n "checking for catalogs to be installed""... $ac_c" 1>&6
-echo "configure:7897: checking for catalogs to be installed" >&5
+echo "configure:8252: checking for catalogs to be installed" >&5
        NEW_LINGUAS=
        for lang in ${LINGUAS=$ALL_LINGUAS}; do
          case "$ALL_LINGUAS" in
@@ -7921,17 +8276,17 @@ echo "configure:7897: checking for catalogs to be installed" >&5
    if test "$CATOBJEXT" = ".cat"; then
      ac_safe=`echo "linux/version.h" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for linux/version.h""... $ac_c" 1>&6
-echo "configure:7925: checking for linux/version.h" >&5
+echo "configure:8280: checking for linux/version.h" >&5
 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 7930 "configure"
+#line 8285 "configure"
 #include "confdefs.h"
 #include <linux/version.h>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:7935: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:8290: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
 if test -z "$ac_err"; then
   rm -rf conftest*
@@ -7997,6 +8352,52 @@ fi
   
 XGETTEXT="AWK='$AWK' \$(SHELL) \$(top_srcdir)/exgettext $XGETTEXT"
 
+# Windows32 Registry support for specifying GCC installation paths.
+# Check whether --enable-win32-registry or --disable-win32-registry was given.
+if test "${enable_win32_registry+set}" = set; then
+  enableval="$enable_win32_registry"
+  :
+fi
+
+
+echo $ac_n "checking whether windows registry support is requested""... $ac_c" 1>&6
+echo "configure:8365: checking whether windows registry support is requested" >&5
+if test x$enable_win32_registry != xno; then
+  cat >> confdefs.h <<\EOF
+#define ENABLE_WIN32_REGISTRY 1
+EOF
+
+  echo "$ac_t""yes" 1>&6
+else
+  echo "$ac_t""no" 1>&6
+fi
+
+# Check if user specified a different registry key.
+case x${enable_win32_registry} in
+x | xyes)
+  # default.
+  gcc_cv_win32_registry_key="$VERSION"
+  ;;
+xno)
+  # no registry lookup.
+  gcc_cv_win32_registry_key=''
+  ;;
+*)
+  # user-specified key.
+  gcc_cv_win32_registry_key="$enable_win32_registry"
+  ;;
+esac
+
+if test x$enable_win32_registry != xno; then
+  echo $ac_n "checking registry key on windows hosts""... $ac_c" 1>&6
+echo "configure:8394: checking registry key on windows hosts" >&5
+  cat >> confdefs.h <<EOF
+#define WIN32_REGISTRY_KEY "$gcc_cv_win32_registry_key"
+EOF
+
+  echo "$ac_t""$gcc_cv_win32_registry_key" 1>&6
+fi
+
 # Get an absolute path to the GCC top-level source directory
 holddir=`pwd`
 cd $srcdir
@@ -8165,7 +8566,7 @@ fi
 
 # Figure out what assembler alignment features are present.
 echo $ac_n "checking assembler alignment features""... $ac_c" 1>&6
-echo "configure:8169: checking assembler alignment features" >&5
+echo "configure:8570: checking assembler alignment features" >&5
 gcc_cv_as=
 gcc_cv_as_alignment_features=
 gcc_cv_as_gas_srcdir=`echo $srcdir | sed -e 's,/gcc$,,'`/gas
@@ -8286,7 +8687,7 @@ fi
 echo "$ac_t""$gcc_cv_as_alignment_features" 1>&6
 
 echo $ac_n "checking assembler subsection support""... $ac_c" 1>&6
-echo "configure:8290: checking assembler subsection support" >&5
+echo "configure:8691: checking assembler subsection support" >&5
 gcc_cv_as_subsections=
 if test x$gcc_cv_as != x; then
        # Check if we have .subsection
@@ -8325,60 +8726,159 @@ EOF
 fi
 echo "$ac_t""$gcc_cv_as_subsections" 1>&6
 
+echo $ac_n "checking assembler weak support""... $ac_c" 1>&6
+echo "configure:8731: checking assembler weak support" >&5
+gcc_cv_as_weak=
+if test x$gcc_cv_as != x; then
+       # Check if we have .weak
+       echo "  .weak foobar" > conftest.s
+       if $gcc_cv_as -o conftest.o conftest.s > /dev/null 2>&1; then
+               cat >> confdefs.h <<\EOF
+#define HAVE_GAS_WEAK 1
+EOF
+
+               gcc_cv_as_weak="yes"
+       fi
+       rm -f conftest.s conftest.o conftest.nm1 conftest.nm2
+fi
+echo "$ac_t""$gcc_cv_as_weak" 1>&6
+
+echo $ac_n "checking assembler hidden support""... $ac_c" 1>&6
+echo "configure:8748: checking assembler hidden support" >&5
+gcc_cv_as_hidden=
+if test x$gcc_cv_as != x; then
+       # Check if we have .hidden
+       echo "  .hidden foobar" > conftest.s
+       echo "foobar:" >> conftest.s
+       if $gcc_cv_as -o conftest.o conftest.s > /dev/null 2>&1; then
+               cat >> confdefs.h <<\EOF
+#define HAVE_GAS_HIDDEN 1
+EOF
+
+               gcc_cv_as_hidden="yes"
+       fi
+       rm -f conftest.s conftest.o conftest.nm1 conftest.nm2
+fi
+echo "$ac_t""$gcc_cv_as_hidden" 1>&6
+
 case "$target" in 
   sparc*-*-*)
     echo $ac_n "checking assembler .register pseudo-op support""... $ac_c" 1>&6
-echo "configure:8332: checking assembler .register pseudo-op support" >&5
-    gcc_cv_as_register_pseudo_op=
-    if test x$gcc_cv_as != x; then
-       # Check if we have .register
-       echo ".register %g2, #scratch" > conftest.s
-       if $gcc_cv_as -o conftest.o conftest.s > /dev/null 2>&1; then
+echo "configure:8768: checking assembler .register pseudo-op support" >&5
+if eval "test \"`echo '$''{'gcc_cv_as_register_pseudo_op'+set}'`\" = set"; then
+  echo $ac_n "(cached) $ac_c" 1>&6
+else
+  
+       gcc_cv_as_register_pseudo_op=unknown
+       if test x$gcc_cv_as != x; then
+           # Check if we have .register
+           echo ".register %g2, #scratch" > conftest.s
+           if $gcc_cv_as -o conftest.o conftest.s > /dev/null 2>&1; then
                gcc_cv_as_register_pseudo_op=yes
-               cat >> confdefs.h <<\EOF
+           else
+               gcc_cv_as_register_pseudo_op=no
+           fi
+           rm -f conftest.s conftest.o
+       fi
+    
+fi
+
+echo "$ac_t""$gcc_cv_as_register_pseudo_op" 1>&6
+    if test "x$gcc_cv_as_register_pseudo_op" = xyes; then
+       cat >> confdefs.h <<\EOF
 #define HAVE_AS_REGISTER_PSEUDO_OP 1
 EOF
 
-       fi
-       rm -f conftest.s conftest.o
     fi
-    echo "$ac_t""$gcc_cv_as_register_pseudo_op" 1>&6
 
-    echo $ac_n "checking assembler offsetable %lo() support""... $ac_c" 1>&6
-echo "configure:8349: checking assembler offsetable %lo() support" >&5
-    gcc_cv_as_offsetable_lo10=
-    if test x$gcc_cv_as != x; then
-       # Check if assembler has offsetable %lo()
-       echo "or %g1, %lo(ab) + 12, %g1" > conftest.s
-       echo "or %g1, %lo(ab + 12), %g1" > conftest1.s
-       gcc_cv_as_flags64="-xarch=v9"
-       if ! $gcc_cv_as $gcc_cv_as_flags64 -o conftest.o conftest.s > /dev/null 2>&1; then
-               gcc_cv_as_flags64="-64"
-               if ! $gcc_cv_as $gcc_cv_as_flags64 -o conftest.o conftest.s > /dev/null 2>&1; then
-                       gcc_cv_as_flags64=""
+    case "$tm_file" in
+    *64*)
+       echo $ac_n "checking for 64 bit support in assembler ($gcc_cv_as)""... $ac_c" 1>&6
+echo "configure:8798: checking for 64 bit support in assembler ($gcc_cv_as)" >&5
+if eval "test \"`echo '$''{'gcc_cv_as_flags64'+set}'`\" = set"; then
+  echo $ac_n "(cached) $ac_c" 1>&6
+else
+  
+               if test -n "$gcc_cv_as"; then
+                   echo ".xword foo" > conftest.s
+                   gcc_cv_as_flags64=no
+                   for flag in "-xarch=v9" "-64 -Av9"; do
+                       if $gcc_cv_as $flag -o conftest.o conftest.s \
+                           > /dev/null 2>&1; then
+                           gcc_cv_as_flags64=$flag
+                           break
+                       fi
+                   done
+                   rm -f conftest.s conftest.o
+               else
+                   if test "$gas" = yes; then
+                       gcc_cv_as_flags64="-64 -Av9"
+                   else
+                       gcc_cv_as_flags64="-xarch=v9"
+                   fi
                fi
+       
+fi
+
+echo "$ac_t""$gcc_cv_as_flags64" 1>&6
+       if test "x$gcc_cv_as_flags64" = xno; then
+
+           tmake_file=`echo " $tmake_file " | sed -e 's, sparc/t-sol2-64 , ,' -e 's,^ ,,' -e 's, $,,'`
+           dep_tmake_file=`echo " $dep_tmake_file " | sed -e 's, [^ ]*/config/sparc/t-sol2-64 , ,' -e 's,^ ,,' -e 's, $,,'`
+
+       else
+           cat >> confdefs.h <<EOF
+#define AS_SPARC64_FLAG "$gcc_cv_as_flags64"
+EOF
+
        fi
-       if test -n "$gcc_cv_as_flags64" ; then
-               if $gcc_cv_as $gcc_cv_as_flags64 -o conftest1.o conftest1.s > /dev/null 2>&1; then
-                       if cmp conftest.o conftest1.o > /dev/null 2>&1; then
-                               :
-                       else
-                               gcc_cv_as_offsetable_lo10=yes
-                               cat >> confdefs.h <<\EOF
+       ;;
+    *) gcc_cv_as_flags64=${gcc_cv_as_flags64-no}
+       ;;
+    esac
+
+    if test "x$gcc_cv_as_flags64" != xno; then
+       echo $ac_n "checking for assembler offsetable %lo() support""... $ac_c" 1>&6
+echo "configure:8843: checking for assembler offsetable %lo() support" >&5
+if eval "test \"`echo '$''{'gcc_cv_as_offsetable_lo10'+set}'`\" = set"; then
+  echo $ac_n "(cached) $ac_c" 1>&6
+else
+  
+           gcc_cv_as_offsetable_lo10=unknown
+           if test "x$gcc_cv_as" != x; then
+               # Check if assembler has offsetable %lo()
+               echo "or %g1, %lo(ab) + 12, %g1" > conftest.s
+               echo "or %g1, %lo(ab + 12), %g1" > conftest1.s
+               if $gcc_cv_as $gcc_cv_as_flags64 -o conftest.o conftest.s \
+                       > /dev/null 2>&1 &&
+                  $gcc_cv_as $gcc_cv_as_flags64 -o conftest1.o conftest1.s \
+                       > /dev/null 2>&1; then
+                   if cmp conftest.o conftest1.o > /dev/null 2>&1; then
+                       gcc_cv_as_offsetable_lo10=no
+                   else
+                       gcc_cv_as_offsetable_lo10=yes
+                   fi
+               else
+                   gcc_cv_as_offsetable_lo10=no
+               fi
+               rm -f conftest.s conftest.o conftest1.s conftest1.o
+           fi
+       
+fi
+
+echo "$ac_t""$gcc_cv_as_offsetable_lo10" 1>&6
+       if test "x$gcc_cv_as_offsetable_lo10" = xyes; then
+           cat >> confdefs.h <<\EOF
 #define HAVE_AS_OFFSETABLE_LO10 1
 EOF
 
-                       fi
-               fi
        fi
-       rm -f conftest.s conftest.o conftest1.s conftest1.o
     fi
-    echo "$ac_t""$gcc_cv_as_offsetable_lo10" 1>&6
     ;;
 
   i[34567]86-*-*)
     echo $ac_n "checking assembler instructions""... $ac_c" 1>&6
-echo "configure:8382: checking assembler instructions" >&5
+echo "configure:8882: checking assembler instructions" >&5
     gcc_cv_as_instructions=
     if test x$gcc_cv_as != x; then
        set "filds fists" "filds mem; fists mem"
@@ -8463,6 +8963,69 @@ if test $thread_file != single; then
 fi
 
 
+# Find out what GC implementation we want, or may, use.
+# Check whether --with-gc or --without-gc was given.
+if test "${with_gc+set}" = set; then
+  withval="$with_gc"
+  case "$withval" in
+  simple | page)
+    GGC=ggc-$withval
+    ;;
+  *)
+    { echo "configure: error: $withval is an invalid option to --with-gc" 1>&2; exit 1; }
+    ;;
+esac
+else
+  if test $ac_cv_func_mmap_anywhere = yes \
+    || test $ac_cv_func_valloc = yes; then
+  GGC=ggc-page
+else
+  GGC=ggc-simple
+fi
+fi
+
+
+echo "Using $GGC for garbage collection."
+
+# Build a new-abi (c++) system
+# Check whether --enable-new-gxx-abi or --disable-new-gxx-abi was given.
+if test "${enable_new_gxx_abi+set}" = set; then
+  enableval="$enable_new_gxx_abi"
+  cat >> confdefs.h <<\EOF
+#define ENABLE_NEW_GXX_ABI 1
+EOF
+
+GXX_ABI_FLAG='-fnew-abi'
+echo "Building a new-abi g++ compiler."
+
+fi
+
+
+
+# Build a new-libstdc++ system (ie libstdc++-v3)
+echo $ac_n "checking for libstdc++ to install""... $ac_c" 1>&6
+echo "configure:9008: checking for libstdc++ to install" >&5
+# Check whether --enable-libstdcxx-v3 or --disable-libstdcxx-v3 was given.
+if test "${enable_libstdcxx_v3+set}" = set; then
+  enableval="$enable_libstdcxx_v3"
+  enable_libstdcxx_v3=yes
+else
+  enable_libstdcxx_v3=no
+fi
+
+
+if test x$enable_libstdcxx_v3 = xyes; then
+  echo "$ac_t""v3" 1>&6
+  ac_esn=1
+else
+  echo "$ac_t""v2" 1>&6
+  ac_esn=0
+fi
+cat >> confdefs.h <<EOF
+#define ENABLE_STD_NAMESPACE $ac_esn
+EOF
+
+
 # Make empty files to contain the specs and options for each language.
 # Then add #include lines to for a compiler that has specs and/or options.
 
@@ -8494,7 +9057,7 @@ all_boot_languages=
 all_compilers=
 all_stagestuff=
 all_diff_excludes=
-all_outputs='Makefile intl/Makefile po/Makefile.in fixinc/Makefile'
+all_outputs='Makefile intl/Makefile po/Makefile.in fixinc/Makefile gccbug mklibgcc'
 # List of language makefile fragments.
 all_lang_makefiles=
 all_headers=
@@ -8611,26 +9174,6 @@ if test x$with_newlib = xyes; then
 fi
 
 
-# Override SCHED_OBJ and SCHED_CFLAGS to enable the Haifa scheduler.
-sched_prefix=
-sched_cflags=
-if test x$enable_haifa = xyes; then
-    echo "Using the Haifa scheduler."
-    sched_prefix=haifa-
-    sched_cflags=-DHAIFA
-fi
-
-
-if test x$enable_haifa != x; then
-    # Explicitly remove files that need to be recompiled for the Haifa scheduler.
-    for x in genattrtab.o toplev.o *sched.o; do
-       if test -f $x; then
-           echo "Removing $x"
-           rm -f $x
-       fi
-    done
-fi
-
 # If $(exec_prefix) exists and is not the same as $(prefix), then compute an
 # absolute path for gcc_tooldir based on inserting the number of up-directory
 # movements required to get from $(exec_prefix) to $(prefix) into the basic
@@ -8734,9 +9277,6 @@ ${CONFIG_SHELL-/bin/sh} $srcdir/configure.frag $srcdir "$subdirs" "$dep_host_xma
 
 
 
-
-
-
 # Echo that links are built
 if test x$host = x$target
 then
@@ -8921,6 +9461,7 @@ s%@build_cpu@%$build_cpu%g
 s%@build_vendor@%$build_vendor%g
 s%@build_os@%$build_os%g
 s%@CC@%$CC%g
+s%@NO_MINUS_C_MINUS_O@%$NO_MINUS_C_MINUS_O%g
 s%@stage1_warn_cflags@%$stage1_warn_cflags%g
 s%@SET_MAKE@%$SET_MAKE%g
 s%@AWK@%$AWK%g
@@ -8935,6 +9476,9 @@ s%@INSTALL_PROGRAM@%$INSTALL_PROGRAM%g
 s%@INSTALL_DATA@%$INSTALL_DATA%g
 s%@CPP@%$CPP%g
 s%@gnat@%$gnat%g
+s%@MAKEINFO@%$MAKEINFO%g
+s%@BUILD_INFO@%$BUILD_INFO%g
+s%@INSTALL_INFO@%$INSTALL_INFO%g
 s%@vfprintf@%$vfprintf%g
 s%@doprint@%$doprint%g
 s%@manext@%$manext%g
@@ -8964,12 +9508,12 @@ s%@GT_YES@%$GT_YES%g
 s%@MKINSTALLDIRS@%$MKINSTALLDIRS%g
 s%@l@%$l%g
 s%@gthread_flags@%$gthread_flags%g
+s%@GGC@%$GGC%g
+s%@GXX_ABI_FLAG@%$GXX_ABI_FLAG%g
 s%@build_canonical@%$build_canonical%g
 s%@host_canonical@%$host_canonical%g
 s%@target_subdir@%$target_subdir%g
 s%@inhibit_libc@%$inhibit_libc%g
-s%@sched_prefix@%$sched_prefix%g
-s%@sched_cflags@%$sched_cflags%g
 s%@gcc_tooldir@%$gcc_tooldir%g
 s%@dollar@%$dollar%g
 s%@objdir@%$objdir%g
@@ -8988,7 +9532,6 @@ s%@build_xm_file_list@%$build_xm_file_list%g
 s%@cc_set_by_configure@%$cc_set_by_configure%g
 s%@quoted_cc_set_by_configure@%$quoted_cc_set_by_configure%g
 s%@cpp_install_dir@%$cpp_install_dir%g
-s%@cpp_main@%$cpp_main%g
 s%@dep_host_xmake_file@%$dep_host_xmake_file%g
 s%@dep_tmake_file@%$dep_tmake_file%g
 s%@extra_c_flags@%$extra_c_flags%g
@@ -9000,7 +9543,6 @@ s%@extra_objs@%$extra_objs%g
 s%@extra_parts@%$extra_parts%g
 s%@extra_passes@%$extra_passes%g
 s%@extra_programs@%$extra_programs%g
-s%@fixinc_defs@%$fixinc_defs%g
 s%@float_h_file@%$float_h_file%g
 s%@gcc_gxx_include_dir@%$gcc_gxx_include_dir%g
 s%@gcc_version@%$gcc_version%g
@@ -9009,7 +9551,6 @@ s%@host_exeext@%$host_exeext%g
 s%@host_extra_gcc_objs@%$host_extra_gcc_objs%g
 s%@host_xm_file_list@%$host_xm_file_list%g
 s%@install@%$install%g
-s%@JAVAGC@%$JAVAGC%g
 s%@lang_options_files@%$lang_options_files%g
 s%@lang_specs_files@%$lang_specs_files%g
 s%@lang_tree_files@%$lang_tree_files%g