|
|
1.1 ! root 1: #!/bin/sh ! 2: # This script attempts to guess a canonical system name. ! 3: # Copyright (C) 1992, 1993 Free Software Foundation, Inc. ! 4: # ! 5: # This file is free software; you can redistribute it and/or modify it ! 6: # under the terms of the GNU General Public License as published by ! 7: # the Free Software Foundation; either version 2 of the License, or ! 8: # (at your option) any later version. ! 9: # ! 10: # This program is distributed in the hope that it will be useful, but ! 11: # WITHOUT ANY WARRANTY; without even the implied warranty of ! 12: # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ! 13: # General Public License for more details. ! 14: # ! 15: # You should have received a copy of the GNU General Public License ! 16: # along with this program; if not, write to the Free Software ! 17: # Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ ! 18: ! 19: # ! 20: # This script attempts to guess a canonical system name similar to ! 21: # config.sub. If it succeeds, it prints the system name on stdout, and ! 22: # exits with 0. Otherwise, it exits with 1. ! 23: # ! 24: # The plan is that this can be called by configure scripts if you ! 25: # don't specify an explicit system type (host/target name). ! 26: # ! 27: # Only a few systems have been added to this list; please add others ! 28: # (but try to keep the structure clean). ! 29: # ! 30: ! 31: UNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown ! 32: UNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown ! 33: UNAME_SYSTEM=`(uname -s) 2>/dev/null` || UNAME_SYSTEM=unknown ! 34: UNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown ! 35: ! 36: # Note: order is significant - the case branches are not exclusive. ! 37: ! 38: case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in ! 39: alpha:OSF1:1.*:*) ! 40: # 1.2 uses "1.2" for uname -r. ! 41: echo alpha-dec-osf${UNAME_RELEASE} ! 42: exit 0 ;; ! 43: alpha:OSF1:V1.*:*) ! 44: # 1.3 uses "V1.3" for uname -r. ! 45: echo alpha-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^V//'` ! 46: exit 0 ;; ! 47: arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*) ! 48: echo arm-acorn-riscix${UNAME_RELEASE} ! 49: exit 0;; ! 50: sun4*:SunOS:5.*:*) ! 51: echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` ! 52: exit 0 ;; ! 53: sun4*:SunOS:6*:*) ! 54: # According to config.sub, this is the proper way to canonicalize ! 55: # SunOS6. Hard to guess exactly what SunOS6 will be like, but ! 56: # it's likely to be more like Solaris than SunOS4. ! 57: echo sparc-sun-solaris3`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` ! 58: exit 0 ;; ! 59: sun4*:SunOS:*:*) ! 60: echo sparc-sun-sunos${UNAME_RELEASE} ! 61: exit 0 ;; ! 62: sun3*:SunOS:*:*) ! 63: echo m68k-sun-sunos${UNAME_RELEASE} ! 64: exit 0 ;; ! 65: RISC*:ULTRIX:*:*) ! 66: echo mips-dec-ultrix${UNAME_RELEASE} ! 67: exit 0 ;; ! 68: VAX*:ULTRIX*:*:*) ! 69: echo vax-dec-ultrix${UNAME_RELEASE} ! 70: exit 0 ;; ! 71: mips:*:5*:RISCos) ! 72: echo mips-mips-riscos${UNAME_RELEASE} ! 73: exit 0 ;; ! 74: m88k:*:4*:R4*) ! 75: echo m88k-motorola-sysv4 ! 76: exit 0 ;; ! 77: m88k:*:3*:R3*) ! 78: echo m88k-motorola-sysv3 ! 79: exit 0 ;; ! 80: AViiON:dgux:*:*) ! 81: echo m88k-dg-dgux${UNAME_RELEASE} ! 82: exit 0 ;; ! 83: M88*:*:R3*:*) ! 84: # Delta 88k system running SVR3 ! 85: echo m88k-motorola-sysv3 ! 86: exit 0 ;; ! 87: *:IRIX:*:*) ! 88: echo mips-sgi-irix${UNAME_RELEASE} ! 89: exit 0 ;; ! 90: i[34]86:AIX:*:*) ! 91: echo i386-ibm-aix ! 92: exit 0 ;; ! 93: *:AIX:2:3) ! 94: echo rs6000-ibm-aix3.2 ! 95: exit 0 ;; ! 96: *:AIX:*:*) ! 97: echo rs6000-ibm-aix ! 98: exit 0 ;; ! 99: *:BOSX:*:*) ! 100: echo rs6000-bull-bosx ! 101: exit 0 ;; ! 102: DPX/2?00:B.O.S.:*:*) ! 103: echo m68k-bull-sysv3 ! 104: exit 0 ;; ! 105: 9000/31?:HP-UX:*:*) ! 106: echo m68000-hp-hpux ! 107: exit 0 ;; ! 108: 9000/[34]??:HP-UX:*:*) ! 109: echo m68k-hp-hpux ! 110: exit 0 ;; ! 111: 9000/[34]??:4.3bsd:1.*:*) ! 112: echo m68k-hp-bsd ! 113: exit 0 ;; ! 114: hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*) ! 115: echo m68k-hp-bsd4.4 ! 116: exit 0 ;; ! 117: 9000/7??:HP-UX:*:* | 9000/8?7:HP-UX:*:* ) ! 118: echo hppa1.1-hp-hpux ! 119: exit 0 ;; ! 120: 9000/8??:HP-UX:*:*) ! 121: echo hppa1.0-hp-hpux ! 122: exit 0 ;; ! 123: 3050*:HI-UX:*:*) ! 124: sed 's/^ //' << EOF >dummy.c ! 125: #include <unistd.h> ! 126: int ! 127: main () ! 128: { ! 129: long cpu = sysconf (_SC_CPU_VERSION); ! 130: if (CPU_IS_HP_MC68K (cpu)) ! 131: puts ("m68k-hitachi-hiuxwe2"); ! 132: else if (CPU_IS_PA_RISC (cpu)) ! 133: { ! 134: switch (cpu) ! 135: { ! 136: case CPU_PA_RISC1_0: puts ("hppa1.0-hitachi-hiuxwe2"); break; ! 137: case CPU_PA_RISC1_1: puts ("hppa1.1-hitachi-hiuxwe2"); break; ! 138: case CPU_PA_RISC2_0: puts ("hppa2.0-hitachi-hiuxwe2"); break; ! 139: default: puts ("hppa-hitachi-hiuxwe2"); break; ! 140: } ! 141: } ! 142: else puts ("unknown-hitachi-hiuxwe2"); ! 143: exit (0); ! 144: } ! 145: EOF ! 146: ${CC-cc} dummy.c -o dummy && ./dummy && rm dummy.c dummy && exit 0 ! 147: rm -f dummy.c dummy ! 148: echo unknown-hitachi-hiuxwe2 ! 149: exit 0 ;; ! 150: 9000/7??:4.3bsd:*:* | 9000/8?7:4.3bsd:*:* ) ! 151: echo hppa1.1-hp-bsd ! 152: exit 0 ;; ! 153: 9000/8??:4.3bsd:*:*) ! 154: echo hppa1.0-hp-bsd ! 155: exit 0 ;; ! 156: C1*:ConvexOS:*:*) ! 157: echo c1-convex-bsd ! 158: exit 0 ;; ! 159: C2*:ConvexOS:*:*) ! 160: echo c2-convex-bsd ! 161: exit 0 ;; ! 162: CRAY*X-MP:UNICOS:*:*) ! 163: echo xmp-cray-unicos ! 164: exit 0 ;; ! 165: CRAY*Y-MP:UNICOS:*:*) ! 166: echo ymp-cray-unicos ! 167: exit 0 ;; ! 168: CRAY-2:UNICOS:*:*) ! 169: echo cray2-cray-unicos ! 170: exit 0 ;; ! 171: hp3[0-9][05]:NetBSD:*:*) ! 172: echo m68k-hp-netbsd${UNAME_RELEASE} ! 173: exit 0 ;; ! 174: i[34]86:NetBSD:*:*) ! 175: echo ${UNAME_MACHINE}-unknown-netbsd${UNAME_RELEASE} ! 176: exit 0 ;; ! 177: i[34]86:Linux:*:*) ! 178: echo ${UNAME_MACHINE}-unknown-linux ! 179: exit 0 ;; ! 180: i[34]86:UNIX_SV:4.*:*) ! 181: if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then ! 182: echo ${UNAME_MACHINE}-univel-sysv${UNAME_RELEASE} ! 183: else ! 184: echo ${UNAME_MACHINE}-unknown-sysv${UNAME_RELEASE} ! 185: fi ! 186: exit 0 ;; ! 187: i[34]86:*:3.2:*) ! 188: if /bin/uname -X 2>/dev/null >/dev/null ; then ! 189: UNAME_REL=`(/bin/uname -X|egrep Release|sed -e 's/.*= //')` ! 190: (/bin/uname -X|egrep i80486 >/dev/null) && UNAME_MACHINE=i486 ! 191: echo ${UNAME_MACHINE}-unknown-sco$UNAME_REL ! 192: else ! 193: echo ${UNAME_MACHINE}-unknown-sysv3.2 ! 194: fi ! 195: exit 0 ;; ! 196: mini*:CTIX:SYS*5:*) ! 197: # "miniframe" ! 198: echo m68010-convergent-sysv ! 199: exit 0 ;; ! 200: M680[234]0:*:R3V[567]*:*) ! 201: test -r /sysV68 && echo 'm68k-motorola-sysv' && exit 0 ;; ! 202: 3[34]??:*:4.0:*) ! 203: uname -p 2>/dev/null | grep 86 >/dev/null \ ! 204: && echo i486-ncr-sysv4 && exit 0 ;; ! 205: m680[234]0:LynxOS:2.2*:*) ! 206: echo m68k-lynx-lynxos${UNAME_RELEASE} ! 207: exit 0 ;; ! 208: i[34]86:LynxOS:2.2*:*) ! 209: echo i386-lynx-lynxos${UNAME_RELEASE} ! 210: exit 0 ;; ! 211: TSUNAMI:LynxOS:2.2*:*) ! 212: echo sparc-lynx-lynxos${UNAME_RELEASE} ! 213: exit 0 ;; ! 214: esac ! 215: ! 216: #echo '(No uname command or uname output not recognized.)' 1>&2 ! 217: #echo "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" 1>&2 ! 218: ! 219: cat >dummy.c <<EOF ! 220: main() ! 221: { ! 222: #if defined (sony) ! 223: #if defined (MIPSEB) ! 224: #else ! 225: printf("m68k-sony-newsos\n"); exit(0); ! 226: #endif ! 227: #endif ! 228: ! 229: #if defined (__arm) && defined (__acorn) && defined (__unix) ! 230: printf("arm-acorn-riscix"); exit (0); ! 231: #endif ! 232: ! 233: #if defined(hp300) && !defined(hpux) ! 234: printf("m68k-hp-bsd\n"); exit(0); ! 235: #endif ! 236: ! 237: #if defined(NeXT) ! 238: printf("m68k-next-bsd\n"); exit(0); ! 239: #endif ! 240: ! 241: #if defined (MULTIMAX) || defined (n16) ! 242: #if defined (UMAXV) ! 243: printf("ns32k-encore-sysv\n"); exit(0); ! 244: #else ! 245: #if defined (CMU) ! 246: printf("ns32k-encore-mach\n"); exit(0); ! 247: #else ! 248: printf("ns32k-encore-bsd\n"); exit(0); ! 249: #endif ! 250: #endif ! 251: #endif ! 252: ! 253: #if defined(__386BSD__) || (defined(__bsdi__) && defined(__i386__)) ! 254: printf("i386-unknown-bsd\n"); exit(0); ! 255: #endif ! 256: ! 257: #if defined(sequent) ! 258: #if defined(i386) ! 259: printf("i386-sequent-dynix\n"); exit(0); ! 260: #endif ! 261: #if defined (ns32000) ! 262: printf("ns32k-sequent-dynix\n"); exit(0); ! 263: #endif ! 264: #endif ! 265: ! 266: #if defined(_SEQUENT_) ! 267: printf("i386-sequent-ptx\n"); exit(0); ! 268: #endif ! 269: ! 270: exit (1); ! 271: } ! 272: EOF ! 273: ! 274: ${CC-cc} dummy.c -o dummy && ./dummy && rm dummy.c dummy && exit 0 ! 275: rm -f dummy.c dummy ! 276: ! 277: #echo '(Unable to guess system type)' 1>&2 ! 278: ! 279: exit 1
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.