Forgot that odbc had its own copies of config.sub/config.guess.
authorTom Lane
Tue, 21 Mar 2000 06:35:22 +0000 (06:35 +0000)
committerTom Lane
Tue, 21 Mar 2000 06:35:22 +0000 (06:35 +0000)
Update those to latest Autoconf sources, too.

src/interfaces/odbc/config.guess
src/interfaces/odbc/config.sub

index a1563dabf1a5d0b2c087970a5d880e971b203e7d..20c971aae9a1b7f8df88854189999d2a58c32fe9 100755 (executable)
@@ -1,6 +1,7 @@
 #! /bin/sh
 # Attempt to guess a canonical system name.
-#   Copyright (C) 1992, 93, 94, 95, 1996 Free Software Foundation, Inc.
+#   Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000
+#   Free Software Foundation, Inc.
 #
 # This file is free software; you can redistribute it and/or modify it
 # under the terms of the GNU General Public License as published by
@@ -22,7 +23,7 @@
 # the same distribution terms that you use for the rest of that program.
 
 # Written by Per Bothner .
-# The master version of this file is at the FSF in /home/gd/gnu/lib.
+# Please send patches to .
 #
 # This script attempts to guess a canonical system name similar to
 # config.sub.  If it succeeds, it prints the system name on stdout, and
 # (but try to keep the structure clean).
 #
 
+# Use $HOST_CC if defined. $CC may point to a cross-compiler
+if test x"$CC_FOR_BUILD" = x; then
+  if test x"$HOST_CC" != x; then
+    CC_FOR_BUILD="$HOST_CC"
+  else
+    if test x"$CC" != x; then
+      CC_FOR_BUILD="$CC"
+    else
+      CC_FOR_BUILD=cc
+    fi
+  fi
+fi
+
+
 # This is needed to find uname on a Pyramid OSx when run in the BSD universe.
 # ([email protected] 8/24/94.)
 if (test -f /.attbin/uname) >/dev/null 2>&1 ; then
@@ -46,17 +61,113 @@ UNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown
 UNAME_SYSTEM=`(uname -s) 2>/dev/null` || UNAME_SYSTEM=unknown
 UNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown
 
-trap 'rm -f dummy.c dummy.o dummy; exit 1' 1 2 15
+dummy=dummy-$$
+trap 'rm -f $dummy.c $dummy.o $dummy; exit 1' 1 2 15
 
 # Note: order is significant - the case branches are not exclusive.
 
 case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
+    *:NetBSD:*:*)
+   # Netbsd (nbsd) targets should (where applicable) match one or
+   # more of the tupples: *-*-netbsdelf*, *-*-netbsdaout*,
+   # *-*-netbsdecoff* and *-*-netbsd*.  For targets that recently
+   # switched to ELF, *-*-netbsd* would select the old
+   # object file format.  This provides both forward
+   # compatibility and a consistent mechanism for selecting the
+   # object file format.
+   # Determine the machine/vendor (is the vendor relevant).
+   case "${UNAME_MACHINE}" in
+       amiga) machine=m68k-cbm ;;
+       arm32) machine=arm-unknown ;;
+       atari*) machine=m68k-atari ;;
+       sun3*) machine=m68k-sun ;;
+       mac68k) machine=m68k-apple ;;
+       macppc) machine=powerpc-apple ;;
+       hp3[0-9][05]) machine=m68k-hp ;;
+       ibmrt|romp-ibm) machine=romp-ibm ;;
+       *) machine=${UNAME_MACHINE}-unknown ;;
+   esac
+   # The Operating System including object format.
+   if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \
+       | grep __ELF__ >/dev/null
+   then
+       # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout).
+       # Return netbsd for either.  FIX?
+       os=netbsd
+   else
+       os=netbsdelf
+   fi
+   # The OS release
+   release=`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'`
+   # Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM:
+   # contains redundant information, the shorter form:
+   # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used.
+   echo "${machine}-${os}${release}"
+   exit 0 ;;
     alpha:OSF1:*:*)
+   if test $UNAME_RELEASE = "V4.0"; then
+       UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'`
+   fi
    # A Vn.n version is a released version.
    # A Tn.n version is a released field test version.
    # A Xn.n version is an unreleased experimental baselevel.
    # 1.2 uses "1.2" for uname -r.
-   echo alpha-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[VTX]//'`
+   cat <$dummy.s
+   .data
+\$Lformat:
+   .byte 37,100,45,37,120,10,0 # "%d-%x\n"
+
+   .text
+   .globl main
+   .align 4
+   .ent main
+main:
+   .frame \$30,16,\$26,0
+   ldgp \$29,0(\$27)
+   .prologue 1
+   .long 0x47e03d80 # implver \$0
+   lda \$2,-1
+   .long 0x47e20c21 # amask \$2,\$1
+   lda \$16,\$Lformat
+   mov \$0,\$17
+   not \$1,\$18
+   jsr \$26,printf
+   ldgp \$29,0(\$26)
+   mov 0,\$16
+   jsr \$26,exit
+   .end main
+EOF
+   $CC_FOR_BUILD $dummy.s -o $dummy 2>/dev/null
+   if test "$?" = 0 ; then
+       case `./$dummy` in
+           0-0)
+               UNAME_MACHINE="alpha"
+               ;;
+           1-0)
+               UNAME_MACHINE="alphaev5"
+               ;;
+           1-1)
+               UNAME_MACHINE="alphaev56"
+               ;;
+           1-101)
+               UNAME_MACHINE="alphapca56"
+               ;;
+           2-303)
+               UNAME_MACHINE="alphaev6"
+               ;;
+           2-307)
+               UNAME_MACHINE="alphaev67"
+               ;;
+       esac
+   fi
+   rm -f $dummy.s $dummy
+   echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[VTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
+   exit 0 ;;
+    Alpha\ *:Windows_NT*:*)
+   # How do we know it's Interix rather than the generic POSIX subsystem?
+   # Should we change UNAME_MACHINE based on the output of uname instead
+   # of the specific Alpha model?
+   echo alpha-pc-interix
    exit 0 ;;
     21064:Windows_NT:50:3)
    echo alpha-dec-winnt3.5
@@ -64,16 +175,40 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
     Amiga*:UNIX_System_V:4.0:*)
    echo m68k-cbm-sysv4
    exit 0;;
-    amiga:NetBSD:*:*)
-      echo m68k-cbm-netbsd${UNAME_RELEASE}
-      exit 0 ;;
     amiga:OpenBSD:*:*)
-      echo m68k-cbm-openbsd${UNAME_RELEASE}
-      exit 0 ;;
+   echo m68k-unknown-openbsd${UNAME_RELEASE}
+   exit 0 ;;
+    *:[Aa]miga[Oo][Ss]:*:*)
+   echo ${UNAME_MACHINE}-unknown-amigaos
+   exit 0 ;;
+    arc64:OpenBSD:*:*)
+   echo mips64el-unknown-openbsd${UNAME_RELEASE}
+   exit 0 ;;
+    arc:OpenBSD:*:*)
+   echo mipsel-unknown-openbsd${UNAME_RELEASE}
+   exit 0 ;;
+    hkmips:OpenBSD:*:*)
+   echo mips-unknown-openbsd${UNAME_RELEASE}
+   exit 0 ;;
+    pmax:OpenBSD:*:*)
+   echo mipsel-unknown-openbsd${UNAME_RELEASE}
+   exit 0 ;;
+    sgi:OpenBSD:*:*)
+   echo mips-unknown-openbsd${UNAME_RELEASE}
+   exit 0 ;;
+    wgrisc:OpenBSD:*:*)
+   echo mipsel-unknown-openbsd${UNAME_RELEASE}
+   exit 0 ;;
+    *:OS/390:*:*)
+   echo i370-ibm-openedition
+   exit 0 ;;
     arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*)
    echo arm-acorn-riscix${UNAME_RELEASE}
    exit 0;;
-    Pyramid*:OSx*:*:*|MIS*:OSx*:*:*)
+    SR2?01:HI-UX/MPP:*:*)
+   echo hppa1.1-hitachi-hiuxmpp
+   exit 0;;
+    Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*)
    # [email protected] (Earle F. Ake) contributed MIS and NILE.
    if test "`(/bin/universe) 2>/dev/null`" = att ; then
        echo pyramid-pyramid-sysv3
@@ -81,9 +216,12 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
        echo pyramid-pyramid-bsd
    fi
    exit 0 ;;
-    NILE:*:*:dcosx)
+    NILE*:*:*:dcosx)
    echo pyramid-pyramid-svr4
    exit 0 ;;
+    sun4H:SunOS:5.*:*)
+   echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
+   exit 0 ;;
     sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*)
    echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
    exit 0 ;;
@@ -108,26 +246,61 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
     sun3*:SunOS:*:*)
    echo m68k-sun-sunos${UNAME_RELEASE}
    exit 0 ;;
+    sun*:*:4.2BSD:*)
+   UNAME_RELEASE=`(head -1 /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null`
+   test "x${UNAME_RELEASE}" = "x" && UNAME_RELEASE=3
+   case "`/bin/arch`" in
+       sun3)
+       echo m68k-sun-sunos${UNAME_RELEASE}
+       ;;
+       sun4)
+       echo sparc-sun-sunos${UNAME_RELEASE}
+       ;;
+   esac
+   exit 0 ;;
     aushp:SunOS:*:*)
    echo sparc-auspex-sunos${UNAME_RELEASE}
    exit 0 ;;
-    atari*:NetBSD:*:*)
-   echo m68k-atari-netbsd${UNAME_RELEASE}
-   exit 0 ;;
     atari*:OpenBSD:*:*)
-   echo m68k-atari-openbsd${UNAME_RELEASE}
-   exit 0 ;;
-    sun3*:NetBSD:*:*)
-   echo m68k-sun-netbsd${UNAME_RELEASE}
+   echo m68k-unknown-openbsd${UNAME_RELEASE}
+   exit 0 ;;
+    # The situation for MiNT is a little confusing.  The machine name
+    # can be virtually everything (everything which is not
+    # "atarist" or "atariste" at least should have a processor 
+    # > m68000).  The system name ranges from "MiNT" over "FreeMiNT"
+    # to the lowercase version "mint" (or "freemint").  Finally
+    # the system name "TOS" denotes a system which is actually not
+    # MiNT.  But MiNT is downward compatible to TOS, so this should
+    # be no problem.
+    atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*)
+        echo m68k-atari-mint${UNAME_RELEASE}
+   exit 0 ;;
+    atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*)
+   echo m68k-atari-mint${UNAME_RELEASE}
+        exit 0 ;;
+    *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*)
+        echo m68k-atari-mint${UNAME_RELEASE}
    exit 0 ;;
+    milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*)
+        echo m68k-milan-mint${UNAME_RELEASE}
+        exit 0 ;;
+    hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*)
+        echo m68k-hades-mint${UNAME_RELEASE}
+        exit 0 ;;
+    *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*)
+        echo m68k-unknown-mint${UNAME_RELEASE}
+        exit 0 ;;
     sun3*:OpenBSD:*:*)
-   echo m68k-sun-openbsd${UNAME_RELEASE}
-   exit 0 ;;
-    mac68k:NetBSD:*:*)
-   echo m68k-apple-netbsd${UNAME_RELEASE}
+   echo m68k-unknown-openbsd${UNAME_RELEASE}
    exit 0 ;;
     mac68k:OpenBSD:*:*)
-   echo m68k-apple-openbsd${UNAME_RELEASE}
+   echo m68k-unknown-openbsd${UNAME_RELEASE}
+   exit 0 ;;
+    mvme68k:OpenBSD:*:*)
+   echo m68k-unknown-openbsd${UNAME_RELEASE}
+   exit 0 ;;
+    mvme88k:OpenBSD:*:*)
+   echo m88k-unknown-openbsd${UNAME_RELEASE}
    exit 0 ;;
     powerpc:machten:*:*)
    echo powerpc-apple-machten${UNAME_RELEASE}
@@ -141,9 +314,17 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
     VAX*:ULTRIX*:*:*)
    echo vax-dec-ultrix${UNAME_RELEASE}
    exit 0 ;;
+    2020:CLIX:*:* | 2430:CLIX:*:*)
+   echo clipper-intergraph-clix${UNAME_RELEASE}
+   exit 0 ;;
     mips:*:*:UMIPS | mips:*:*:RISCos)
-   sed 's/^    //' << EOF >dummy.c
-   int main (argc, argv) int argc; char **argv; {
+   sed 's/^    //' << EOF >$dummy.c
+#ifdef __cplusplus
+#include   /* for printf() prototype */
+   int main (int argc, char *argv[]) {
+#else
+   int main (argc, argv) int argc; char *argv[]; {
+#endif
    #if defined (host_mips) && defined (MIPSEB)
    #if defined (SYSTYPE_SYSV)
      printf ("mips-mips-riscos%ssysv\n", argv[1]); exit (0);
@@ -158,10 +339,10 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
      exit (-1);
    }
 EOF
-   ${CC-cc} dummy.c -o dummy \
-     && ./dummy `echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` \
-     && rm dummy.c dummy && exit 0
-   rm -f dummy.c dummy
+   $CC_FOR_BUILD $dummy.c -o $dummy \
+     && ./$dummy `echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` \
+     && rm $dummy.c $dummy && exit 0
+   rm -f $dummy.c $dummy
    echo mips-mips-riscos${UNAME_RELEASE}
    exit 0 ;;
     Night_Hawk:Power_UNIX:*:*)
@@ -179,16 +360,18 @@ EOF
     AViiON:dgux:*:*)
         # DG/UX returns AViiON for all architectures
         UNAME_PROCESSOR=`/usr/bin/uname -p`
-        if [ $UNAME_PROCESSOR = mc88100 -o $UNAME_PROCESSOR = mc88110 ] ; then
-   if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx \
-        -o ${TARGET_BINARY_INTERFACE}x = m88kdguxx \
-        -o ${TARGET_BINARY_INTERFACE}x = x ] ; then
+   if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110]
+   then
+       if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx ] || \
+          [ ${TARGET_BINARY_INTERFACE}x = x ]
+       then
        echo m88k-dg-dgux${UNAME_RELEASE}
-   else
+       else
        echo m88k-dg-dguxbcs${UNAME_RELEASE}
+       fi
+   else
+       echo i586-dg-dgux${UNAME_RELEASE}
    fi
-        else echo i586-dg-dgux${UNAME_RELEASE}
-        fi
    exit 0 ;;
     M88*:DolphinOS:*:*)    # DolphinOS (SVR3)
    echo m88k-dolphin-sysv3
@@ -214,7 +397,7 @@ EOF
    exit 0 ;;
     *:AIX:2:3)
    if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then
-       sed 's/^        //' << EOF >dummy.c
+       sed 's/^        //' << EOF >$dummy.c
        #include 
 
        main()
@@ -225,8 +408,8 @@ EOF
            exit(0);
            }
 EOF
-       ${CC-cc} dummy.c -o dummy && ./dummy && rm dummy.c dummy && exit 0
-       rm -f dummy.c dummy
+       $CC_FOR_BUILD $dummy.c -o $dummy && ./$dummy && rm $dummy.c $dummy && exit 0
+       rm -f $dummy.c $dummy
        echo rs6000-ibm-aix3.2.5
    elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then
        echo rs6000-ibm-aix3.2.4
@@ -235,7 +418,8 @@ EOF
    fi
    exit 0 ;;
     *:AIX:*:4)
-   if /usr/sbin/lsattr -EHl proc0 | grep POWER >/dev/null 2>&1; then
+   IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | head -1 | awk '{ print $1 }'`
+   if /usr/sbin/lsattr -EHl ${IBM_CPU_ID} | grep POWER >/dev/null 2>&1; then
        IBM_ARCH=rs6000
    else
        IBM_ARCH=powerpc
@@ -253,7 +437,7 @@ EOF
     ibmrt:4.4BSD:*|romp-ibm:BSD:*)
    echo romp-ibm-bsd4.4
    exit 0 ;;
-    ibmrt:*BSD:*|romp-ibm:BSD:*)            # covers RT/PC NetBSD and
+    ibmrt:*BSD:*|romp-ibm:BSD:*)            # covers RT/PC BSD and
    echo romp-ibm-bsd${UNAME_RELEASE}   # 4.3 with uname added to
    exit 0 ;;                           # report: romp-ibm BSD 4.3
     *:BOSX:*:*)
@@ -268,18 +452,50 @@ EOF
     hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*)
    echo m68k-hp-bsd4.4
    exit 0 ;;
-    9000/[3478]??:HP-UX:*:*)
+    9000/[34678]??:HP-UX:*:*)
    case "${UNAME_MACHINE}" in
        9000/31? )            HP_ARCH=m68000 ;;
        9000/[34]?? )         HP_ARCH=m68k ;;
-       9000/7?? | 9000/8?[1679] ) HP_ARCH=hppa1.1 ;;
-       9000/8?? )            HP_ARCH=hppa1.0 ;;
+       9000/[678][0-9][0-9])
+              sed 's/^              //' << EOF >$dummy.c
+              #include 
+              #include 
+
+              int main ()
+              {
+              #if defined(_SC_KERNEL_BITS)
+                  long bits = sysconf(_SC_KERNEL_BITS);
+              #endif
+                  long cpu  = sysconf (_SC_CPU_VERSION);
+
+                  switch (cpu)
+               {
+               case CPU_PA_RISC1_0: puts ("hppa1.0"); break;
+               case CPU_PA_RISC1_1: puts ("hppa1.1"); break;
+               case CPU_PA_RISC2_0:
+              #if defined(_SC_KERNEL_BITS)
+                   switch (bits)
+                   {
+                   case 64: puts ("hppa2.0w"); break;
+                   case 32: puts ("hppa2.0n"); break;
+                   default: puts ("hppa2.0"); break;
+                   } break;
+              #else  /* !defined(_SC_KERNEL_BITS) */
+                   puts ("hppa2.0"); break;
+              #endif
+               default: puts ("hppa1.0"); break;
+               }
+                  exit (0);
+              }
+EOF
+   (CCOPTS= $CC_FOR_BUILD $dummy.c -o $dummy 2>/dev/null ) && HP_ARCH=`./$dummy`
+   rm -f $dummy.c $dummy
    esac
    HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
    echo ${HP_ARCH}-hp-hpux${HPUX_REV}
    exit 0 ;;
     3050*:HI-UX:*:*)
-   sed 's/^    //' << EOF >dummy.c
+   sed 's/^    //' << EOF >$dummy.c
    #include 
    int
    main ()
@@ -304,8 +520,8 @@ EOF
      exit (0);
    }
 EOF
-   ${CC-cc} dummy.c -o dummy && ./dummy && rm dummy.c dummy && exit 0
-   rm -f dummy.c dummy
+   $CC_FOR_BUILD $dummy.c -o $dummy && ./$dummy && rm $dummy.c $dummy && exit 0
+   rm -f $dummy.c $dummy
    echo unknown-hitachi-hiuxwe2
    exit 0 ;;
     9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* )
@@ -314,6 +530,9 @@ EOF
     9000/8??:4.3bsd:*:*)
    echo hppa1.0-hp-bsd
    exit 0 ;;
+    *9??*:MPE/iX:*:*)
+   echo hppa1.0-hp-mpeix
+   exit 0 ;;
     hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* )
    echo hppa1.1-hp-osf
    exit 0 ;;
@@ -330,6 +549,9 @@ EOF
     parisc*:Lites*:*:*)
    echo hppa1.1-hp-lites
    exit 0 ;;
+    hppa*:OpenBSD:*:*)
+   echo hppa-unknown-openbsd
+   exit 0 ;;
     C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*)
    echo c1-convex-bsd
         exit 0 ;;
@@ -360,101 +582,304 @@ EOF
          -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/
    exit 0 ;;
     CRAY*TS:*:*:*)
-   echo t90-cray-unicos${UNAME_RELEASE}
+   echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
+   exit 0 ;;
+    CRAY*T3E:*:*:*)
+   echo alpha-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
+   exit 0 ;;
+    CRAY*SV1:*:*:*)
+   echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'    
    exit 0 ;;
     CRAY-2:*:*:*)
    echo cray2-cray-unicos
         exit 0 ;;
     F300:UNIX_System_V:*:*)
-        FUJITSU_SYS=`uname -p | tr [A-Z] [a-z] | sed -e 's/\///'`
+        FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
         FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'`
         echo "f300-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
         exit 0 ;;
     F301:UNIX_System_V:*:*)
        echo f301-fujitsu-uxpv`echo $UNAME_RELEASE | sed 's/ .*//'`
        exit 0 ;;
-    hp3[0-9][05]:NetBSD:*:*)
-   echo m68k-hp-netbsd${UNAME_RELEASE}
+    hp300:OpenBSD:*:*)
+   echo m68k-unknown-openbsd${UNAME_RELEASE}
    exit 0 ;;
-    hp3[0-9][05]:OpenBSD:*:*)
-   echo m68k-hp-openbsd${UNAME_RELEASE}
-   exit 0 ;;
-    i?86:BSD/386:*:* | *:BSD/OS:*:*)
+    i?86:BSD/386:*:* | i?86:BSD/OS:*:*)
    echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE}
    exit 0 ;;
+    sparc*:BSD/OS:*:*)
+   echo sparc-unknown-bsdi${UNAME_RELEASE}
+   exit 0 ;;
+    *:BSD/OS:*:*)
+   echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE}
+   exit 0 ;;
     *:FreeBSD:*:*)
+   if test -x /usr/bin/objformat; then
+       if test "elf" = "`/usr/bin/objformat`"; then
+       echo ${UNAME_MACHINE}-unknown-freebsdelf`echo ${UNAME_RELEASE}|sed -e 's/[-_].*//'`
+       exit 0
+       fi
+   fi
    echo ${UNAME_MACHINE}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`
    exit 0 ;;
-    *:NetBSD:*:*)
-   echo ${UNAME_MACHINE}-unknown-netbsd`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'`
-   exit 0 ;;
     *:OpenBSD:*:*)
    echo ${UNAME_MACHINE}-unknown-openbsd`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'`
    exit 0 ;;
     i*:CYGWIN*:*)
-   echo i386-pc-cygwin32
+   echo ${UNAME_MACHINE}-pc-cygwin
+   exit 0 ;;
+    i*:MINGW*:*)
+   echo ${UNAME_MACHINE}-pc-mingw32
+   exit 0 ;;
+    i*:Windows_NT*:* | Pentium*:Windows_NT*:*)
+   # How do we know it's Interix rather than the generic POSIX subsystem?
+   # It also conflicts with pre-2.0 versions of AT&T UWIN. Should we
+   # UNAME_MACHINE based on the output of uname instead of i386?
+   echo i386-pc-interix
+   exit 0 ;;
+    i*:UWIN*:*)
+   echo ${UNAME_MACHINE}-pc-uwin
    exit 0 ;;
     p*:CYGWIN*:*)
-   echo powerpcle-unknown-cygwin32
+   echo powerpcle-unknown-cygwin
    exit 0 ;;
     prep*:SunOS:5.*:*)
    echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
    exit 0 ;;
     *:GNU:*:*)
-   echo `echo ${UNAME_MACHINE}|sed -e 's,/.*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'`
+   echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'`
    exit 0 ;;
     *:Linux:*:*)
+
    # The BFD linker knows what the default object file format is, so
-   # first see if it will tell us.
-   ld_help_string=`ld --help 2>&1`
-   if echo "$ld_help_string" | grep >/dev/null 2>&1 "supported emulations: elf_i.86"; then
-     echo "${UNAME_MACHINE}-pc-linux-gnu" ; exit 0
-   elif echo "$ld_help_string" | grep >/dev/null 2>&1 "supported emulations: i.86linux"; then
-     echo "${UNAME_MACHINE}-pc-linux-gnuaout" ; exit 0
-   elif echo "$ld_help_string" | grep >/dev/null 2>&1 "supported emulations: i.86coff"; then
-     echo "${UNAME_MACHINE}-pc-linux-gnucoff" ; exit 0
-   elif echo "$ld_help_string" | grep >/dev/null 2>&1 "supported emulations: m68kelf"; then
-     echo "${UNAME_MACHINE}-unknown-linux-gnu" ; exit 0
-   elif echo "$ld_help_string" | grep >/dev/null 2>&1 "supported emulations: m68klinux"; then
-     echo "${UNAME_MACHINE}-unknown-linux-gnuaout" ; exit 0
-   elif echo "$ld_help_string" | grep >/dev/null 2>&1 "supported emulations: elf32ppc"; then
-     echo "powerpc-unknown-linux-gnu" ; exit 0
-   elif test "${UNAME_MACHINE}" = "alpha" ; then
-     echo alpha-unknown-linux-gnu ; exit 0
-   elif test "${UNAME_MACHINE}" = "sparc" ; then
-     echo sparc-unknown-linux-gnu ; exit 0
-   else
-     # Either a pre-BFD a.out linker (linux-gnuoldld) or one that does not give us
-     # useful --help.  Gcc wants to distinguish between linux-gnuoldld and linux-gnuaout.
-     test ! -d /usr/lib/ldscripts/. \
-       && echo "${UNAME_MACHINE}-pc-linux-gnuoldld" && exit 0
-     # Determine whether the default compiler is a.out or elf
-     cat >dummy.c <
+   # first see if it will tell us. cd to the root directory to prevent
+   # problems with other programs or directories called `ld' in the path.
+   ld_help_string=`cd /; ld --help 2>&1`
+   ld_supported_emulations=`echo $ld_help_string \
+            | sed -ne '/supported emulations:/!d
+                   s/[     ][  ]*/ /g
+                   s/.*supported emulations: *//
+                   s/ .*//
+                   p'`
+        case "$ld_supported_emulations" in
+     *ia64)
+       echo "${UNAME_MACHINE}-unknown-linux"
+       exit 0
+       ;;
+     i?86linux)
+       echo "${UNAME_MACHINE}-pc-linux-gnuaout"
+       exit 0
+       ;;
+     i?86coff)
+       echo "${UNAME_MACHINE}-pc-linux-gnucoff"
+       exit 0
+       ;;
+     sparclinux)
+       echo "${UNAME_MACHINE}-unknown-linux-gnuaout"
+       exit 0
+       ;;
+     armlinux)
+       echo "${UNAME_MACHINE}-unknown-linux-gnuaout"
+       exit 0
+       ;;
+     elf32arm*)
+       echo "${UNAME_MACHINE}-unknown-linux-gnuoldld"
+       exit 0
+       ;;
+     armelf_linux*)
+       echo "${UNAME_MACHINE}-unknown-linux-gnu"
+       exit 0
+       ;;
+     m68klinux)
+       echo "${UNAME_MACHINE}-unknown-linux-gnuaout"
+       exit 0
+       ;;
+     elf32ppc | elf32ppclinux)
+       # Determine Lib Version
+       cat >$dummy.c <
+#include 
+#if defined(__GLIBC__)
+extern char __libc_version[];
+extern char __libc_release[];
+#endif
 main(argc, argv)
-int argc;
-char *argv[];
+     int argc;
+     char *argv[];
 {
+#if defined(__GLIBC__)
+  printf("%s %s\n", __libc_version, __libc_release);
+#else
+  printf("unkown\n");
+#endif
+  return 0;
+}
+EOF
+       LIBC=""
+       $CC_FOR_BUILD $dummy.c -o $dummy 2>/dev/null
+       if test "$?" = 0 ; then
+           ./$dummy | grep 1\.99 > /dev/null
+           if test "$?" = 0 ; then
+               LIBC="libc1"
+           fi
+       fi  
+       rm -f $dummy.c $dummy
+       echo powerpc-unknown-linux-gnu${LIBC}
+       exit 0
+       ;;
+   esac
+
+   if test "${UNAME_MACHINE}" = "alpha" ; then
+       cat <$dummy.s
+           .data
+       \$Lformat:
+           .byte 37,100,45,37,120,10,0 # "%d-%x\n"
+
+           .text
+           .globl main
+           .align 4
+           .ent main
+       main:
+           .frame \$30,16,\$26,0
+           ldgp \$29,0(\$27)
+           .prologue 1
+           .long 0x47e03d80 # implver \$0
+           lda \$2,-1
+           .long 0x47e20c21 # amask \$2,\$1
+           lda \$16,\$Lformat
+           mov \$0,\$17
+           not \$1,\$18
+           jsr \$26,printf
+           ldgp \$29,0(\$26)
+           mov 0,\$16
+           jsr \$26,exit
+           .end main
+EOF
+       LIBC=""
+       $CC_FOR_BUILD $dummy.s -o $dummy 2>/dev/null
+       if test "$?" = 0 ; then
+           case `./$dummy` in
+           0-0)
+               UNAME_MACHINE="alpha"
+               ;;
+           1-0)
+               UNAME_MACHINE="alphaev5"
+               ;;
+           1-1)
+               UNAME_MACHINE="alphaev56"
+               ;;
+           1-101)
+               UNAME_MACHINE="alphapca56"
+               ;;
+           2-303)
+               UNAME_MACHINE="alphaev6"
+               ;;
+           2-307)
+               UNAME_MACHINE="alphaev67"
+               ;;
+           esac
+
+           objdump --private-headers $dummy | \
+             grep ld.so.1 > /dev/null
+           if test "$?" = 0 ; then
+               LIBC="libc1"
+           fi
+       fi
+       rm -f $dummy.s $dummy
+       echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC} ; exit 0
+   elif test "${UNAME_MACHINE}" = "mips" ; then
+     cat >$dummy.c <
+#ifdef __cplusplus
+#include   /* for printf() prototype */
+   int main (int argc, char *argv[]) {
+#else
+   int main (argc, argv) int argc; char *argv[]; {
+#endif
+#ifdef __MIPSEB__
+  printf ("%s-unknown-linux-gnu\n", argv[1]);
+#endif
+#ifdef __MIPSEL__
+  printf ("%sel-unknown-linux-gnu\n", argv[1]);
+#endif
+  return 0;
+}
+EOF
+     $CC_FOR_BUILD $dummy.c -o $dummy 2>/dev/null && ./$dummy "${UNAME_MACHINE}" && rm $dummy.c $dummy && exit 0
+     rm -f $dummy.c $dummy
+   elif test "${UNAME_MACHINE}" = "s390"; then
+     echo s390-ibm-linux && exit 0
+   else
+     # Either a pre-BFD a.out linker (linux-gnuoldld)
+     # or one that does not give us useful --help.
+     # GCC wants to distinguish between linux-gnuoldld and linux-gnuaout.
+     # If ld does not provide *any* "supported emulations:"
+     # that means it is gnuoldld.
+     echo "$ld_help_string" | grep >/dev/null 2>&1 "supported emulations:"
+     test $? != 0 && echo "${UNAME_MACHINE}-pc-linux-gnuoldld" && exit 0
+
+     case "${UNAME_MACHINE}" in
+     i?86)
+       VENDOR=pc;
+       ;;
+     *)
+       VENDOR=unknown;
+       ;;
+     esac
+     # Determine whether the default compiler is a.out or elf
+     cat >$dummy.c <
+#include 
+#ifdef __cplusplus
+#include   /* for printf() prototype */
+   int main (int argc, char *argv[]) {
+#else
+   int main (argc, argv) int argc; char *argv[]; {
+#endif
 #ifdef __ELF__
-  printf ("%s-pc-linux-gnu\n", argv[1]);
+# ifdef __GLIBC__
+#  if __GLIBC__ >= 2
+    printf ("%s-${VENDOR}-linux-gnu\n", argv[1]);
+#  else
+    printf ("%s-${VENDOR}-linux-gnulibc1\n", argv[1]);
+#  endif
+# else
+   printf ("%s-${VENDOR}-linux-gnulibc1\n", argv[1]);
+# endif
 #else
-  printf ("%s-pc-linux-gnuaout\n", argv[1]);
+  printf ("%s-${VENDOR}-linux-gnuaout\n", argv[1]);
 #endif
   return 0;
 }
 EOF
-     ${CC-cc} dummy.c -o dummy 2>/dev/null && ./dummy "${UNAME_MACHINE}" && rm dummy.c dummy && exit 0
-     rm -f dummy.c dummy
+     $CC_FOR_BUILD $dummy.c -o $dummy 2>/dev/null && ./$dummy "${UNAME_MACHINE}" && rm $dummy.c $dummy && exit 0
+     rm -f $dummy.c $dummy
    fi ;;
 # ptx 4.0 does uname -s correctly, with DYNIX/ptx in there.  earlier versions
 # are messed up and put the nodename in both sysname and nodename.
     i?86:DYNIX/ptx:4*:*)
    echo i386-sequent-sysv4
    exit 0 ;;
+    i?86:UNIX_SV:4.2MP:2.*)
+        # Unixware is an offshoot of SVR4, but it has its own version
+        # number series starting with 2...
+        # I am not positive that other SVR4 systems won't match this,
+   # I just have to hope.  -- rms.
+        # Use sysv4.2uw... so that sysv4* matches it.
+   echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION}
+   exit 0 ;;
     i?86:*:4.*:* | i?86:SYSTEM_V:4.*:*)
+   UNAME_REL=`echo ${UNAME_RELEASE} | sed 's/\/MP$//'`
    if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then
-       echo ${UNAME_MACHINE}-univel-sysv${UNAME_RELEASE}
+       echo ${UNAME_MACHINE}-univel-sysv${UNAME_REL}
    else
-       echo ${UNAME_MACHINE}-pc-sysv${UNAME_RELEASE}
+       echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL}
+   fi
+   exit 0 ;;
+    i?86:*:5:7*)
+        # Fixed at (any) Pentium or better
+        UNAME_MACHINE=i586
+        if [ ${UNAME_SYSTEM} = "UnixWare" ] ; then
+       echo ${UNAME_MACHINE}-sco-sysv${UNAME_RELEASE}uw${UNAME_VERSION}
+   else
+       echo ${UNAME_MACHINE}-pc-sysv${UNAME_RELEASE}
    fi
    exit 0 ;;
     i?86:*:3.2:*)
@@ -466,11 +891,24 @@ EOF
        (/bin/uname -X|egrep i80486 >/dev/null) && UNAME_MACHINE=i486
        (/bin/uname -X|egrep '^Machine.*Pentium' >/dev/null) \
            && UNAME_MACHINE=i586
+       (/bin/uname -X|egrep '^Machine.*Pent ?II' >/dev/null) \
+           && UNAME_MACHINE=i686
+       (/bin/uname -X|egrep '^Machine.*Pentium Pro' >/dev/null) \
+           && UNAME_MACHINE=i686
        echo ${UNAME_MACHINE}-pc-sco$UNAME_REL
    else
        echo ${UNAME_MACHINE}-pc-sysv32
    fi
    exit 0 ;;
+    i?86:*DOS:*:*)
+   echo ${UNAME_MACHINE}-pc-msdosdjgpp
+   exit 0 ;;
+    pc:*:*:*)
+   # Left here for compatibility:
+        # uname -m prints for DJGPP always 'pc', but it prints nothing about
+        # the processor, so we play safe by assuming i386.
+   echo i386-pc-msdosdjgpp
+        exit 0 ;;
     Intel:Mach:3*:*)
    echo i386-pc-mach3
    exit 0 ;;
@@ -507,7 +945,7 @@ EOF
     mc68030:UNIX_System_V:4.*:*)
    echo m68k-atari-sysv4
    exit 0 ;;
-    i?86:LynxOS:2.*:*)
+    i?86:LynxOS:2.*:* | i?86:LynxOS:3.[01]*:*)
    echo i386-unknown-lynxos${UNAME_RELEASE}
    exit 0 ;;
     TSUNAMI:LynxOS:2.*:*)
@@ -519,6 +957,9 @@ EOF
     SM[BE]S:UNIX_SV:*:*)
    echo mips-dde-sysv${UNAME_RELEASE}
    exit 0 ;;
+    RM*:ReliantUNIX-*:*:*)
+   echo mips-sni-sysv4
+   exit 0 ;;
     RM*:SINIX-*:*:*)
    echo mips-sni-sysv4
    exit 0 ;;
@@ -530,6 +971,10 @@ EOF
        echo ns32k-sni-sysv
    fi
    exit 0 ;;
+    PENTIUM:CPunix:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort
+                           # says 
+        echo i586-unisys-sysv4
+        exit 0 ;;
     *:UNIX_System_V:4*:FTX*)
    # From Gerald Hewes .
    # How about differentiating between stratus architectures? -djm
@@ -542,23 +987,52 @@ EOF
     mc68*:A/UX:*:*)
    echo m68k-apple-aux${UNAME_RELEASE}
    exit 0 ;;
-    R3000:*System_V*:*:* | R4000:UNIX_SYSV:*:*)
+    news*:NEWS-OS:*:6*)
+   echo mips-sony-newsos6
+   exit 0 ;;
+    R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*)
    if [ -d /usr/nec ]; then
            echo mips-nec-sysv${UNAME_RELEASE}
    else
            echo mips-unknown-sysv${UNAME_RELEASE}
    fi
         exit 0 ;;
-    PENTIUM:CPunix:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort
-                           # says 
-        echo i586-unisys-sysv4
-        exit 0 ;;
+    BeBox:BeOS:*:*)    # BeOS running on hardware made by Be, PPC only.
+   echo powerpc-be-beos
+   exit 0 ;;
+    BeMac:BeOS:*:*)    # BeOS running on Mac or Mac clone, PPC only.
+   echo powerpc-apple-beos
+   exit 0 ;;
+    BePC:BeOS:*:*) # BeOS running on Intel PC compatible.
+   echo i586-pc-beos
+   exit 0 ;;
+    SX-4:SUPER-UX:*:*)
+   echo sx4-nec-superux${UNAME_RELEASE}
+   exit 0 ;;
+    SX-5:SUPER-UX:*:*)
+   echo sx5-nec-superux${UNAME_RELEASE}
+   exit 0 ;;
+    Power*:Rhapsody:*:*)
+   echo powerpc-apple-rhapsody${UNAME_RELEASE}
+   exit 0 ;;
+    *:Rhapsody:*:*)
+   echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE}
+   exit 0 ;;
+    Power*:Mac*OS:*:*)
+   echo powerpc-apple-macos${UNAME_RELEASE}
+   exit 0 ;;
+    *:Mac*OS:*:*)
+   echo ${UNAME_MACHINE}-apple-macos${UNAME_RELEASE}
+   exit 0 ;;
+    *:QNX:*:4*)
+   echo i386-qnx-qnx${UNAME_VERSION}
+   exit 0 ;;
 esac
 
 #echo '(No uname command or uname output not recognized.)' 1>&2
 #echo "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" 1>&2
 
-cat >dummy.c <
+cat >$dummy.c <
 #ifdef _SEQUENT_
 # include 
 # include 
@@ -596,7 +1070,10 @@ main ()
 #endif
   int version;
   version=`(hostinfo | sed -n 's/.*NeXT Mach \([0-9]*\).*/\1/p') 2>/dev/null`;
-  printf ("%s-next-nextstep%d\n", __ARCHITECTURE__, version);
+  if (version < 4)
+    printf ("%s-next-nextstep%d\n", __ARCHITECTURE__, version);
+  else
+    printf ("%s-next-openstep%d\n", __ARCHITECTURE__, version);
   exit (0);
 #endif
 
@@ -656,8 +1133,8 @@ main ()
 }
 EOF
 
-${CC-cc} dummy.c -o dummy 2>/dev/null && ./dummy && rm dummy.c dummy && exit 0
-rm -f dummy.c dummy
+$CC_FOR_BUILD $dummy.c -o $dummy 2>/dev/null && ./$dummy && rm $dummy.c $dummy && exit 0
+rm -f $dummy.c $dummy
 
 # Apollos put the system type in the environment.
 
index 0859eab7b8a954b88e59f176ccb82e9f4fdbc9ee..00b90f8841cf337ef3abbc6db36129572ae16200 100755 (executable)
@@ -1,6 +1,8 @@
 #! /bin/sh
 # Configuration validation subroutine script, version 1.1.
-#   Copyright (C) 1991, 92, 93, 94, 95, 1996 Free Software Foundation, Inc.
+#   Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000
+#   Free Software Foundation, Inc.
+#
 # This file is (in principle) common to ALL GNU software.
 # The presence of a machine in this file suggests that SOME GNU software
 # can handle that machine.  It does not imply ALL GNU software can.
@@ -25,6 +27,9 @@
 # configuration script generated by Autoconf, you may include it under
 # the same distribution terms that you use for the rest of that program.
 
+# Written by Per Bothner .
+# Please send patches to .
+#
 # Configuration subroutine to validate and canonicalize a configuration type.
 # Supply the specified configuration type as an argument.
 # If it is invalid, we print an error message on stderr and exit with code 1.
@@ -98,11 +103,21 @@ case $os in
        os=
        basic_machine=$1
        ;;
+   -sim | -cisco | -oki | -wec | -winbond)
+       os=
+       basic_machine=$1
+       ;;
+   -scout)
+       ;;
+   -wrs)
+       os=-vxworks
+       basic_machine=$1
+       ;;
    -hiux*)
        os=-hiuxwe2
        ;;
    -sco5)
-       os=sco3.2v5
+       os=-sco3.2v5
        basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
        ;;
    -sco4)
@@ -121,6 +136,9 @@ case $os in
        os=-sco3.2v2
        basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
        ;;
+   -udk*)
+       basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
+       ;;
    -isc)
        os=-isc2.2
        basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
@@ -143,25 +161,38 @@ case $os in
    -psos*)
        os=-psos
        ;;
+   -mint | -mint[0-9]*)
+       basic_machine=m68k-atari
+       os=-mint
+       ;;
 esac
 
 # Decode aliases for certain CPU-COMPANY combinations.
 case $basic_machine in
    # Recognize the basic CPU types without company name.
    # Some are omitted here because they have special meanings below.
-   tahoe | i860 | m68k | m68000 | m88k | ns32k | arm \
-       | arme[lb] | pyramid \
-       | tron | a29k | 580 | i960 | h8300 | hppa | hppa1.0 | hppa1.1 \
-       | alpha | we32k | ns16k | clipper | i370 | sh \
-       | powerpc | powerpcle | 1750a | dsp16xx | mips64 | mipsel \
-       | pdp11 | mips64el | mips64orion | mips64orionel \
-       | sparc | sparclet | sparclite | sparc64)
+   tahoe | i860 | ia64 | m32r | m68k | m68000 | m88k | ns32k | arc | arm \
+       | arme[lb] | pyramid | mn10200 | mn10300 | tron | a29k \
+       | 580 | i960 | h8300 \
+       | hppa | hppa1.0 | hppa1.1 | hppa2.0 | hppa2.0w | hppa2.0n \
+       | alpha | alphaev[4-8] | alphaev56 | alphapca5[67] \
+       | alphaev6[78] \
+       | we32k | ns16k | clipper | i370 | sh | powerpc | powerpcle \
+       | 1750a | dsp16xx | pdp11 | mips16 | mips64 | mipsel | mips64el \
+       | mips64orion | mips64orionel | mipstx39 | mipstx39el \
+       | mips64vr4300 | mips64vr4300el | mips64vr4100 | mips64vr4100el \
+       | mips64vr5000 | miprs64vr5000el | mcore \
+       | sparc | sparclet | sparclite | sparc64 | sparcv9 | v850 | c4x \
+       | thumb | d10v | fr30 | avr)
        basic_machine=$basic_machine-unknown
        ;;
+   m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | z8k | v70 | h8500 | w65 | pj | pjl)
+       ;;
+
    # We use `pc' rather than `unknown'
    # because (1) that's what they normally are, and
    # (2) the word "unknown" tends to confuse beginning users.
-   i[3456]86)
+   i[34567]86)
      basic_machine=$basic_machine-pc
      ;;
    # Object if more than one company name word.
@@ -170,23 +201,46 @@ case $basic_machine in
        exit 1
        ;;
    # Recognize the basic CPU types with company name.
-   vax-* | tahoe-* | i[3456]86-* | i860-* | m68k-* | m68000-* | m88k-* \
-         | sparc-* | ns32k-* | fx80-* | arm-* | c[123]* \
-         | mips-* | pyramid-* | tron-* | a29k-* | romp-* | rs6000-* | power-* \
-         | none-* | 580-* | cray2-* | h8300-* | i960-* | xmp-* | ymp-* \
-         | hppa-* | hppa1.0-* | hppa1.1-* | alpha-* | we32k-* | cydra-* | ns16k-* \
-         | pn-* | np1-* | xps100-* | clipper-* | orion-* | sparclite-* \
-         | pdp11-* | sh-* | powerpc-* | powerpcle-* | sparc64-* | mips64-* | mipsel-* \
-         | mips64el-* | mips64orion-* | mips64orionel-* | f301-*)
+   # FIXME: clean up the formatting here.
+   vax-* | tahoe-* | i[34567]86-* | i860-* | ia64-* | m32r-* | m68k-* | m68000-* \
+         | m88k-* | sparc-* | ns32k-* | fx80-* | arc-* | arm-* | c[123]* \
+         | mips-* | pyramid-* | tron-* | a29k-* | romp-* | rs6000-* \
+         | power-* | none-* | 580-* | cray2-* | h8300-* | h8500-* | i960-* \
+         | xmp-* | ymp-* \
+         | hppa-* | hppa1.0-* | hppa1.1-* | hppa2.0-* | hppa2.0w-* | hppa2.0n-* \
+         | alpha-* | alphaev[4-8]-* | alphaev56-* | alphapca5[67]-* \
+         | alphaev6[78]-* \
+         | we32k-* | cydra-* | ns16k-* | pn-* | np1-* | xps100-* \
+         | clipper-* | orion-* \
+         | sparclite-* | pdp11-* | sh-* | powerpc-* | powerpcle-* \
+         | sparc64-* | sparcv9-* | sparc86x-* | mips16-* | mips64-* | mipsel-* \
+         | mips64el-* | mips64orion-* | mips64orionel-* \
+         | mips64vr4100-* | mips64vr4100el-* | mips64vr4300-* | mips64vr4300el-* \
+         | mipstx39-* | mipstx39el-* | mcore-* \
+         | f301-* | armv*-* | s390-* | sv1-* | t3e-* \
+         | m88110-* | m680[01234]0-* | m683?2-* | m68360-* | z8k-* | d10v-* \
+         | thumb-* | v850-* | d30v-* | tic30-* | c30-* | fr30-* )
        ;;
    # Recognize the various machine names and aliases which stand
    # for a CPU type and a company and sometimes even an OS.
+   386bsd)
+       basic_machine=i386-unknown
+       os=-bsd
+       ;;
    3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc)
        basic_machine=m68000-att
        ;;
    3b*)
        basic_machine=we32k-att
        ;;
+   a29khif)
+       basic_machine=a29k-amd
+       os=-udi
+       ;;
+   adobe68k)
+       basic_machine=m68010-adobe
+       os=-scout
+       ;;
    alliant | fx80)
        basic_machine=fx80-alliant
        ;;
@@ -204,9 +258,9 @@ case $basic_machine in
    amiga | amiga-*)
        basic_machine=m68k-cbm
        ;;
-   amigados)
+   amigaos | amigados)
        basic_machine=m68k-cbm
-       os=-amigados
+       os=-amigaos
        ;;
    amigaunix | amix)
        basic_machine=m68k-cbm
@@ -216,6 +270,10 @@ case $basic_machine in
        basic_machine=m68k-apollo
        os=-sysv
        ;;
+   apollo68bsd)
+       basic_machine=m68k-apollo
+       os=-bsd
+       ;;
    aux)
        basic_machine=m68k-apple
        os=-aux
@@ -292,6 +350,10 @@ case $basic_machine in
    encore | umax | mmax)
        basic_machine=ns32k-encore
        ;;
+   es1800 | OSE68k | ose68k | ose | OSE)
+       basic_machine=m68k-ericsson
+       os=-ose
+       ;;
    fx2800)
        basic_machine=i860-alliant
        ;;
@@ -310,6 +372,14 @@ case $basic_machine in
        basic_machine=h8300-hitachi
        os=-hms
        ;;
+   h8300xray)
+       basic_machine=h8300-hitachi
+       os=-xray
+       ;;
+   h8500hms)
+       basic_machine=h8500-hitachi
+       os=-hms
+       ;;
    harris)
        basic_machine=m88k-harris
        os=-sysv3
@@ -325,13 +395,30 @@ case $basic_machine in
        basic_machine=m68k-hp
        os=-hpux
        ;;
+   hp3k9[0-9][0-9] | hp9[0-9][0-9])
+       basic_machine=hppa1.0-hp
+       ;;
    hp9k2[0-9][0-9] | hp9k31[0-9])
        basic_machine=m68000-hp
        ;;
    hp9k3[2-9][0-9])
        basic_machine=m68k-hp
        ;;
-   hp9k7[0-9][0-9] | hp7[0-9][0-9] | hp9k8[0-9]7 | hp8[0-9]7)
+   hp9k6[0-9][0-9] | hp6[0-9][0-9])
+       basic_machine=hppa1.0-hp
+       ;;
+   hp9k7[0-79][0-9] | hp7[0-79][0-9])
+       basic_machine=hppa1.1-hp
+       ;;
+   hp9k78[0-9] | hp78[0-9])
+       # FIXME: really hppa2.0-hp
+       basic_machine=hppa1.1-hp
+       ;;
+   hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893)
+       # FIXME: really hppa2.0-hp
+       basic_machine=hppa1.1-hp
+       ;;
+   hp9k8[0-9][13679] | hp8[0-9][13679])
        basic_machine=hppa1.1-hp
        ;;
    hp9k8[0-9][0-9] | hp8[0-9][0-9])
@@ -340,27 +427,53 @@ case $basic_machine in
    hppa-next)
        os=-nextstep3
        ;;
+   hppaosf)
+       basic_machine=hppa1.1-hp
+       os=-osf
+       ;;
+   hppro)
+       basic_machine=hppa1.1-hp
+       os=-proelf
+       ;;
    i370-ibm* | ibm*)
        basic_machine=i370-ibm
-       os=-mvs
        ;;
 # I'm not sure what "Sysv32" means.  Should this be sysv3.2?
-   i[3456]86v32)
+   i[34567]86v32)
        basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
        os=-sysv32
        ;;
-   i[3456]86v4*)
+   i[34567]86v4*)
        basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
        os=-sysv4
        ;;
-   i[3456]86v)
+   i[34567]86v)
        basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
        os=-sysv
        ;;
-   i[3456]86sol2)
+   i[34567]86sol2)
        basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
        os=-solaris2
        ;;
+   i386mach)
+       basic_machine=i386-mach
+       os=-mach
+       ;;
+   i386-vsta | vsta)
+       basic_machine=i386-unknown
+       os=-vsta
+       ;;
+   i386-go32 | go32)
+       basic_machine=i386-unknown
+       os=-go32
+       ;;
+   i386-mingw32 | mingw32)
+       basic_machine=i386-unknown
+       os=-mingw32
+       ;;
+   i386-qnx | qnx)
+       basic_machine=i386-qnx
+       ;;
    iris | iris4d)
        basic_machine=mips-sgi
        case $os in
@@ -389,16 +502,52 @@ case $basic_machine in
    miniframe)
        basic_machine=m68000-convergent
        ;;
+   *mint | -mint[0-9]* | *MiNT | *MiNT[0-9]*)
+       basic_machine=m68k-atari
+       os=-mint
+       ;;
+   mipsel*-linux*)
+       basic_machine=mipsel-unknown
+       os=-linux-gnu
+       ;;
+   mips*-linux*)
+       basic_machine=mips-unknown
+       os=-linux-gnu
+       ;;
    mips3*-*)
        basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`
        ;;
    mips3*)
        basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown
        ;;
+   mmix*)
+       basic_machine=mmix-knuth
+       os=-mmixware
+       ;;
+   monitor)
+       basic_machine=m68k-rom68k
+       os=-coff
+       ;;
+   msdos)
+       basic_machine=i386-unknown
+       os=-msdos
+       ;;
+   mvs)
+       basic_machine=i370-ibm
+       os=-mvs
+       ;;
    ncr3000)
        basic_machine=i486-ncr
        os=-sysv4
        ;;
+   netbsd386)
+       basic_machine=i386-unknown
+       os=-netbsd
+       ;;
+   netwinder)
+       basic_machine=armv4l-rebel
+       os=-linux
+       ;;
    news | news700 | news800 | news900)
        basic_machine=m68k-sony
        os=-newsos
@@ -411,6 +560,10 @@ case $basic_machine in
        basic_machine=mips-sony
        os=-newsos
        ;;
+   necv70)
+       basic_machine=v70-nec
+       os=-sysv
+       ;;
    next | m*-next )
        basic_machine=m68k-next
        case $os in
@@ -436,9 +589,25 @@ case $basic_machine in
        basic_machine=i960-intel
        os=-nindy
        ;;
+   mon960)
+       basic_machine=i960-intel
+       os=-mon960
+       ;;
    np1)
        basic_machine=np1-gould
        ;;
+   op50n-* | op60c-*)
+       basic_machine=hppa1.1-oki
+       os=-proelf
+       ;;
+   OSE68000 | ose68000)
+       basic_machine=m68000-ericsson
+       os=-ose
+       ;;
+   os68k)
+       basic_machine=m68k-none
+       os=-os68k
+       ;;
    pa-hitachi)
        basic_machine=hppa1.1-hitachi
        os=-hiuxwe2
@@ -456,25 +625,23 @@ case $basic_machine in
         pc532 | pc532-*)
        basic_machine=ns32k-pc532
        ;;
-   pentium | p5)
-       basic_machine=i586-intel
+   pentium | p5 | k5 | k6 | nexen)
+       basic_machine=i586-pc
+       ;;
+   pentiumpro | p6 | 6x86)
+       basic_machine=i686-pc
        ;;
-   pentiumpro | p6)
-       basic_machine=i686-intel
+   pentiumii | pentium2)
+       basic_machine=i786-pc
        ;;
-   pentium-* | p5-*)
+   pentium-* | p5-* | k5-* | k6-* | nexen-*)
        basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'`
        ;;
-   pentiumpro-* | p6-*)
+   pentiumpro-* | p6-* | 6x86-*)
        basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
        ;;
-   k5)
-       # We don't have specific support for AMD's K5 yet, so just call it a Pentium
-       basic_machine=i586-amd
-       ;;
-   nexen)
-       # We don't have specific support for Nexgen yet, so just call it a Pentium
-       basic_machine=i586-nexgen
+   pentiumii-* | pentium2-*)
+       basic_machine=i786-`echo $basic_machine | sed 's/^[^-]*-//'`
        ;;
    pn)
        basic_machine=pn-gould
@@ -494,12 +661,20 @@ case $basic_machine in
    ps2)
        basic_machine=i386-ibm
        ;;
+   rom68k)
+       basic_machine=m68k-rom68k
+       os=-coff
+       ;;
    rm[46]00)
        basic_machine=mips-siemens
        ;;
    rtpc | rtpc-*)
        basic_machine=romp-ibm
        ;;
+   sa29200)
+       basic_machine=a29k-amd
+       os=-udi
+       ;;
    sequent)
        basic_machine=i386-sequent
        ;;
@@ -507,6 +682,10 @@ case $basic_machine in
        basic_machine=sh-hitachi
        os=-hms
        ;;
+   sparclite-wrs)
+       basic_machine=sparclite-wrs
+       os=-vxworks
+       ;;
    sps7)
        basic_machine=m68k-bull
        os=-sysv2
@@ -514,6 +693,13 @@ case $basic_machine in
    spur)
        basic_machine=spur-unknown
        ;;
+   st2000)
+       basic_machine=m68k-tandem
+       ;;
+   stratus)
+       basic_machine=i860-stratus
+       os=-sysv4
+       ;;
    sun2)
        basic_machine=m68000-sun
        ;;
@@ -554,10 +740,24 @@ case $basic_machine in
    sun386 | sun386i | roadrunner)
        basic_machine=i386-sun
        ;;
+   sv1)
+       basic_machine=sv1-cray
+       os=-unicos
+       ;;
    symmetry)
        basic_machine=i386-sequent
        os=-dynix
        ;;
+   t3e)
+       basic_machine=t3e-cray
+       os=-unicos
+       ;;
+   tx39)
+       basic_machine=mipstx39-unknown
+       ;;
+   tx39el)
+       basic_machine=mipstx39el-unknown
+       ;;
    tower | tower-32)
        basic_machine=m68k-ncr
        ;;
@@ -569,6 +769,10 @@ case $basic_machine in
        basic_machine=a29k-nyu
        os=-sym1
        ;;
+   v810 | necv810)
+       basic_machine=v810-nec
+       os=-none
+       ;;
    vaxv)
        basic_machine=vax-dec
        os=-sysv
@@ -577,7 +781,7 @@ case $basic_machine in
        basic_machine=vax-dec
        os=-vms
        ;;
-       vpp*|vx|vx-*)
+   vpp*|vx|vx-*)
                basic_machine=f301-fujitsu
                ;;
    vxworks960)
@@ -592,6 +796,14 @@ case $basic_machine in
        basic_machine=a29k-wrs
        os=-vxworks
        ;;
+   w65*)
+       basic_machine=w65-wdc
+       os=-none
+       ;;
+   w89k-*)
+       basic_machine=hppa1.1-winbond
+       os=-proelf
+       ;;
    xmp)
        basic_machine=xmp-cray
        os=-unicos
@@ -599,6 +811,10 @@ case $basic_machine in
         xps | xps100)
        basic_machine=xps100-honeywell
        ;;
+   z8k-*-coff)
+       basic_machine=z8k-unknown
+       os=-sim
+       ;;
    none)
        basic_machine=none-none
        os=-none
@@ -606,8 +822,21 @@ case $basic_machine in
 
 # Here we handle the default manufacturer of certain CPU types.  It is in
 # some cases the only manufacturer, in others, it is the most popular.
+   w89k)
+       basic_machine=hppa1.1-winbond
+       ;;
+   op50n)
+       basic_machine=hppa1.1-oki
+       ;;
+   op60c)
+       basic_machine=hppa1.1-oki
+       ;;
    mips)
-       basic_machine=mips-mips
+       if [ x$os = x-linux-gnu ]; then
+           basic_machine=mips-unknown
+       else
+           basic_machine=mips-mips
+       fi
        ;;
    romp)
        basic_machine=romp-ibm
@@ -624,7 +853,7 @@ case $basic_machine in
    we32k)
        basic_machine=we32k-att
        ;;
-   sparc)
+   sparc | sparcv9)
        basic_machine=sparc-sun
        ;;
         cydra)
@@ -636,6 +865,16 @@ case $basic_machine in
    orion105)
        basic_machine=clipper-highlevel
        ;;
+   mac | mpw | mac-mpw)
+       basic_machine=m68k-apple
+       ;;
+   pmac | pmac-mpw)
+       basic_machine=powerpc-apple
+       ;;
+   c4x*)
+       basic_machine=c4x-none
+       os=-coff
+       ;;
    *)
        echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2
        exit 1
@@ -668,11 +907,11 @@ case $os in
    -solaris)
        os=-solaris2
        ;;
-   -unixware* | svr4*)
+   -svr4*)
        os=-sysv4
        ;;
-   -univel*)
-       os=-sysv4
+   -unixware*)
+       os=-sysv4.2uw
        ;;
    -gnu/linux*)
        os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'`
@@ -684,17 +923,26 @@ case $os in
    -gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \
          | -*vms* | -sco* | -esix* | -isc* | -aix* | -sunos | -sunos[34]*\
          | -hpux* | -unos* | -osf* | -luna* | -dgux* | -solaris* | -sym* \
-         | -amigados* | -msdos* | -newsos* | -unicos* | -aof* | -aos* \
+         | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \
+         | -aos* \
          | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \
          | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \
          | -hiux* | -386bsd* | -netbsd* | -openbsd* | -freebsd* | -riscix* \
-         | -lynxos* | -bosx* | -nextstep* | -cxux* | -aout* | -elf* \
+         | -lynxos* | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \
          | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \
          | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \
-         | -cygwin32* | -pe* | -psos* | -moss* | -proelf* | -rtems* \
-         | -linux-gnu* | -uxpv*)
+         | -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \
+         | -mingw32* | -linux-gnu* | -uxpv* | -beos* | -mpeix* | -udk* \
+         | -interix* | -uwin* | -rhapsody* | -opened* | -openstep* | -oskit*)
    # Remember, each alternative MUST END IN *, to match a version number.
        ;;
+   -sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \
+         | -windows* | -osx | -abug | -netware* | -os9* | -beos* \
+         | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*)
+       ;;
+   -mac*)
+       os=`echo $os | sed -e 's|mac|macos|'`
+       ;;
    -linux*)
        os=`echo $os | sed -e 's|linux|linux-gnu|'`
        ;;
@@ -704,6 +952,12 @@ case $os in
    -sunos6*)
        os=`echo $os | sed -e 's|sunos6|solaris3|'`
        ;;
+   -opened*)
+       os=-openedition
+       ;;
+   -wince*)
+       os=-wince
+       ;;
    -osfrose*)
        os=-osfrose
        ;;
@@ -719,6 +973,9 @@ case $os in
    -acis*)
        os=-aos
        ;;
+   -386bsd)
+       os=-bsd
+       ;;
    -ctix* | -uts*)
        os=-sysv
        ;;
@@ -738,6 +995,9 @@ case $os in
    -oss*)
        os=-sysv3
        ;;
+        -qnx)
+       os=-qnx4
+       ;;
    -svr4)
        os=-sysv4
        ;;
@@ -750,9 +1010,21 @@ case $os in
    # This must come after -sysvr4.
    -sysv*)
        ;;
+   -ose*)
+       os=-ose
+       ;;
+   -es1800*)
+       os=-ose
+       ;;
    -xenix)
        os=-xenix
        ;;
+        -*mint | -*MiNT)
+           os=-mint
+       ;;
+        -neutrino* | -nto*)
+                os=-neutrino
+                ;;
    -none)
        ;;
    *)
@@ -778,6 +1050,9 @@ case $basic_machine in
    *-acorn)
        os=-riscix1.2
        ;;
+   arm*-rebel)
+       os=-linux
+       ;;
    arm*-semi)
        os=-aout
        ;;
@@ -799,15 +1074,36 @@ case $basic_machine in
        # default.
        # os=-sunos4
        ;;
+   m68*-cisco)
+       os=-aout
+       ;;
+   mips*-cisco)
+       os=-elf
+       ;;
+   mips*-*)
+       os=-elf
+       ;;
    *-tti)  # must be before sparc entry or we get the wrong os.
        os=-sysv3
        ;;
    sparc-* | *-sun)
        os=-sunos4.1.1
        ;;
+   *-be)
+       os=-beos
+       ;;
    *-ibm)
        os=-aix
        ;;
+   *-wec)
+       os=-proelf
+       ;;
+   *-winbond)
+       os=-proelf
+       ;;
+   *-oki)
+       os=-proelf
+       ;;
    *-hp)
        os=-hpux
        ;;
@@ -818,7 +1114,7 @@ case $basic_machine in
        os=-sysv
        ;;
    *-cbm)
-       os=-amigados
+       os=-amigaos
        ;;
    *-dg)
        os=-dgux
@@ -871,6 +1167,18 @@ case $basic_machine in
    f301-fujitsu)
        os=-uxpv
        ;;
+   *-rom68k)
+       os=-coff
+       ;;
+   *-*bug)
+       os=-coff
+       ;;
+   *-apple)
+       os=-macos
+       ;;
+   *-atari*)
+       os=-mint
+       ;;
    *)
        os=-none
        ;;
@@ -892,9 +1200,15 @@ case $basic_machine in
            -aix*)
                vendor=ibm
                ;;
+           -beos*)
+               vendor=be
+               ;;
            -hpux*)
                vendor=hp
                ;;
+           -mpeix*)
+               vendor=hp
+               ;;
            -hiux*)
                vendor=hitachi
                ;;
@@ -910,7 +1224,7 @@ case $basic_machine in
            -genix*)
                vendor=ns
                ;;
-           -mvs*)
+           -mvs* | -opened*)
                vendor=ibm
                ;;
            -ptx*)
@@ -922,6 +1236,18 @@ case $basic_machine in
            -aux*)
                vendor=apple
                ;;
+           -hms*)
+               vendor=hitachi
+               ;;
+           -mpw* | -macos*)
+               vendor=apple
+               ;;
+           -*mint | -*MiNT)
+               vendor=atari
+               ;;
+           -neutrino* | -nto*)
+               vendor=qnx
+                                ;;
        esac
        basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"`
        ;;