2009-12-17 Stan Shebs <stan@codesourcery.com>
[deliverable/binutils-gdb.git] / config.guess
CommitLineData
252b5132
RH
1#! /bin/sh
2# Attempt to guess a canonical system name.
b020f6ac 3# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
7ee5dbeb 4# 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009
9f1e7fd3 5# Free Software Foundation, Inc.
ac73857d 6
e12dec02 7timestamp='2009-11-19'
ac73857d 8
252b5132
RH
9# This file is free software; you can redistribute it and/or modify it
10# under the terms of the GNU General Public License as published by
11# the Free Software Foundation; either version 2 of the License, or
12# (at your option) any later version.
13#
14# This program is distributed in the hope that it will be useful, but
15# WITHOUT ANY WARRANTY; without even the implied warranty of
16# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
17# General Public License for more details.
18#
19# You should have received a copy of the GNU General Public License
20# along with this program; if not, write to the Free Software
1d9c9cd7
KC
21# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA
22# 02110-1301, USA.
252b5132
RH
23#
24# As a special exception to the GNU General Public License, if you
25# distribute this file as part of a program that contains a
26# configuration script generated by Autoconf, you may include it under
27# the same distribution terms that you use for the rest of that program.
28
1d9c9cd7 29
707a0b5c
NC
30# Originally written by Per Bothner. Please send patches (context
31# diff format) to <config-patches@gnu.org> and include a ChangeLog
32# entry.
252b5132
RH
33#
34# This script attempts to guess a canonical system name similar to
35# config.sub. If it succeeds, it prints the system name on stdout, and
36# exits with 0. Otherwise, it exits with 1.
37#
707a0b5c
NC
38# You can get the latest version of this script from:
39# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD
252b5132 40
ac73857d
AC
41me=`echo "$0" | sed -e 's,.*/,,'`
42
43usage="\
44Usage: $0 [OPTION]
45
35590697 46Output the configuration name of the system \`$me' is run on.
ac73857d
AC
47
48Operation modes:
35590697
AJ
49 -h, --help print this help, then exit
50 -t, --time-stamp print date of last modification, then exit
51 -v, --version print version number, then exit
52
53Report bugs and patches to <config-patches@gnu.org>."
54
55version="\
56GNU config.guess ($timestamp)
57
58Originally written by Per Bothner.
9f1e7fd3
BE
59Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001,
602002, 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc.
35590697
AJ
61
62This is free software; see the source for copying conditions. There is NO
63warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
ac73857d
AC
64
65help="
66Try \`$me --help' for more information."
67
68# Parse command line
69while test $# -gt 0 ; do
35590697
AJ
70 case $1 in
71 --time-stamp | --time* | -t )
1d9c9cd7 72 echo "$timestamp" ; exit ;;
35590697 73 --version | -v )
1d9c9cd7 74 echo "$version" ; exit ;;
ac73857d 75 --help | --h* | -h )
1d9c9cd7 76 echo "$usage"; exit ;;
ac73857d
AC
77 -- ) # Stop option processing
78 shift; break ;;
79 - ) # Use stdin as input.
80 break ;;
81 -* )
35590697 82 echo "$me: invalid option $1$help" >&2
ac73857d
AC
83 exit 1 ;;
84 * )
85 break ;;
86 esac
87done
88
89if test $# != 0; then
90 echo "$me: too many arguments$help" >&2
91 exit 1
92fi
93
51759676 94trap 'exit 1' 1 2 15
ada59422 95
51759676
CD
96# CC_FOR_BUILD -- compiler used by this script. Note that the use of a
97# compiler to aid in system detection is discouraged as it requires
98# temporary files to be created and, as you can see below, it is a
99# headache to deal with in a portable fashion.
35590697 100
35590697
AJ
101# Historically, `CC_FOR_BUILD' used to be named `HOST_CC'. We still
102# use `HOST_CC' if defined, but it is deprecated.
103
3f234ef5 104# Portable tmp directory creation inspired by the Autoconf team.
51759676 105
3f234ef5
CD
106set_cc_for_build='
107trap "exitcode=\$?; (rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null) && exit \$exitcode" 0 ;
108trap "rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null; exit 1" 1 2 13 15 ;
109: ${TMPDIR=/tmp} ;
49b9e644 110 { tmp=`(umask 077 && mktemp -d "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } ||
3f234ef5 111 { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir $tmp) ; } ||
00c22daa 112 { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir $tmp) && echo "Warning: creating insecure temp directory" >&2 ; } ||
3f234ef5
CD
113 { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } ;
114dummy=$tmp/dummy ;
115tmpfiles="$dummy.c $dummy.o $dummy.rel $dummy" ;
51759676
CD
116case $CC_FOR_BUILD,$HOST_CC,$CC in
117 ,,) echo "int x;" > $dummy.c ;
5f284831 118 for c in cc gcc c89 c99 ; do
3f234ef5 119 if ($c -c -o $dummy.o $dummy.c) >/dev/null 2>&1 ; then
82208dc5
AM
120 CC_FOR_BUILD="$c"; break ;
121 fi ;
122 done ;
35590697 123 if test x"$CC_FOR_BUILD" = x ; then
82208dc5 124 CC_FOR_BUILD=no_compiler_found ;
35590697
AJ
125 fi
126 ;;
127 ,,*) CC_FOR_BUILD=$CC ;;
128 ,*,*) CC_FOR_BUILD=$HOST_CC ;;
1d9c9cd7 129esac ; set_cc_for_build= ;'
ada59422 130
252b5132 131# This is needed to find uname on a Pyramid OSx when run in the BSD universe.
82208dc5 132# (ghazi@noc.rutgers.edu 1994-08-24)
252b5132
RH
133if (test -f /.attbin/uname) >/dev/null 2>&1 ; then
134 PATH=$PATH:/.attbin ; export PATH
135fi
136
137UNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown
138UNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown
35590697 139UNAME_SYSTEM=`(uname -s) 2>/dev/null` || UNAME_SYSTEM=unknown
252b5132
RH
140UNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown
141
252b5132
RH
142# Note: order is significant - the case branches are not exclusive.
143
144case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
ada59422 145 *:NetBSD:*:*)
9c07660b 146 # NetBSD (nbsd) targets should (where applicable) match one or
ada59422
AC
147 # more of the tupples: *-*-netbsdelf*, *-*-netbsdaout*,
148 # *-*-netbsdecoff* and *-*-netbsd*. For targets that recently
149 # switched to ELF, *-*-netbsd* would select the old
150 # object file format. This provides both forward
151 # compatibility and a consistent mechanism for selecting the
152 # object file format.
0e254642
AM
153 #
154 # Note: NetBSD doesn't particularly care about the vendor
155 # portion of the name. We always set it to "unknown".
5f284831
MM
156 sysctl="sysctl -n hw.machine_arch"
157 UNAME_MACHINE_ARCH=`(/sbin/$sysctl 2>/dev/null || \
158 /usr/sbin/$sysctl 2>/dev/null || echo unknown)`
0e254642 159 case "${UNAME_MACHINE_ARCH}" in
4b37028f 160 armeb) machine=armeb-unknown ;;
0e254642
AM
161 arm*) machine=arm-unknown ;;
162 sh3el) machine=shl-unknown ;;
163 sh3eb) machine=sh-unknown ;;
0cfa5389 164 sh5el) machine=sh5le-unknown ;;
0e254642 165 *) machine=${UNAME_MACHINE_ARCH}-unknown ;;
ada59422 166 esac
35590697
AJ
167 # The Operating System including object format, if it has switched
168 # to ELF recently, or will in the future.
0e254642
AM
169 case "${UNAME_MACHINE_ARCH}" in
170 arm*|i386|m68k|ns32k|sh3*|sparc|vax)
82208dc5 171 eval $set_cc_for_build
35590697 172 if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \
2262bbf4 173 | grep -q __ELF__
35590697
AJ
174 then
175 # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout).
176 # Return netbsd for either. FIX?
177 os=netbsd
178 else
179 os=netbsdelf
180 fi
181 ;;
182 *)
183 os=netbsd
184 ;;
185 esac
ada59422 186 # The OS release
3f234ef5
CD
187 # Debian GNU/NetBSD machines have a different userland, and
188 # thus, need a distinct triplet. However, they do not need
189 # kernel version information, so it can be replaced with a
190 # suitable tag, in the style of linux-gnu.
191 case "${UNAME_VERSION}" in
192 Debian*)
193 release='-gnu'
194 ;;
195 *)
196 release=`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'`
197 ;;
198 esac
ada59422
AC
199 # Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM:
200 # contains redundant information, the shorter form:
201 # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used.
202 echo "${machine}-${os}${release}"
1d9c9cd7 203 exit ;;
9c07660b 204 *:OpenBSD:*:*)
1d9c9cd7
KC
205 UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'`
206 echo ${UNAME_MACHINE_ARCH}-unknown-openbsd${UNAME_RELEASE}
207 exit ;;
1e600082
AC
208 *:ekkoBSD:*:*)
209 echo ${UNAME_MACHINE}-unknown-ekkobsd${UNAME_RELEASE}
1d9c9cd7 210 exit ;;
ec49b2b8
NC
211 *:SolidBSD:*:*)
212 echo ${UNAME_MACHINE}-unknown-solidbsd${UNAME_RELEASE}
213 exit ;;
1e600082 214 macppc:MirBSD:*:*)
17bcf627 215 echo powerpc-unknown-mirbsd${UNAME_RELEASE}
1d9c9cd7 216 exit ;;
1e600082
AC
217 *:MirBSD:*:*)
218 echo ${UNAME_MACHINE}-unknown-mirbsd${UNAME_RELEASE}
1d9c9cd7 219 exit ;;
252b5132 220 alpha:OSF1:*:*)
eb1352ed
NC
221 case $UNAME_RELEASE in
222 *4.0)
252b5132 223 UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'`
eb1352ed
NC
224 ;;
225 *5.*)
226 UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $4}'`
227 ;;
228 esac
ee3fd329
AM
229 # According to Compaq, /usr/sbin/psrinfo has been available on
230 # OSF/1 and Tru64 systems produced since 1995. I hope that
231 # covers most systems running today. This code pipes the CPU
232 # types through head -n 1, so we only detect the type of CPU 0.
233 ALPHA_CPU_TYPE=`/usr/sbin/psrinfo -v | sed -n -e 's/^ The alpha \(.*\) processor.*$/\1/p' | head -n 1`
234 case "$ALPHA_CPU_TYPE" in
235 "EV4 (21064)")
236 UNAME_MACHINE="alpha" ;;
237 "EV4.5 (21064)")
238 UNAME_MACHINE="alpha" ;;
239 "LCA4 (21066/21068)")
240 UNAME_MACHINE="alpha" ;;
241 "EV5 (21164)")
242 UNAME_MACHINE="alphaev5" ;;
243 "EV5.6 (21164A)")
244 UNAME_MACHINE="alphaev56" ;;
245 "EV5.6 (21164PC)")
246 UNAME_MACHINE="alphapca56" ;;
247 "EV5.7 (21164PC)")
248 UNAME_MACHINE="alphapca57" ;;
249 "EV6 (21264)")
250 UNAME_MACHINE="alphaev6" ;;
251 "EV6.7 (21264A)")
252 UNAME_MACHINE="alphaev67" ;;
253 "EV6.8CB (21264C)")
254 UNAME_MACHINE="alphaev68" ;;
255 "EV6.8AL (21264B)")
256 UNAME_MACHINE="alphaev68" ;;
257 "EV6.8CX (21264D)")
258 UNAME_MACHINE="alphaev68" ;;
259 "EV6.9A (21264/EV69A)")
260 UNAME_MACHINE="alphaev69" ;;
261 "EV7 (21364)")
262 UNAME_MACHINE="alphaev7" ;;
263 "EV7.9 (21364A)")
264 UNAME_MACHINE="alphaev79" ;;
265 esac
eb1352ed 266 # A Pn.n version is a patched version.
252b5132
RH
267 # A Vn.n version is a released version.
268 # A Tn.n version is a released field test version.
269 # A Xn.n version is an unreleased experimental baselevel.
270 # 1.2 uses "1.2" for uname -r.
eb1352ed 271 echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[PVTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
1d9c9cd7 272 exit ;;
ada59422
AC
273 Alpha\ *:Windows_NT*:*)
274 # How do we know it's Interix rather than the generic POSIX subsystem?
275 # Should we change UNAME_MACHINE based on the output of uname instead
276 # of the specific Alpha model?
277 echo alpha-pc-interix
1d9c9cd7 278 exit ;;
252b5132
RH
279 21064:Windows_NT:50:3)
280 echo alpha-dec-winnt3.5
1d9c9cd7 281 exit ;;
252b5132 282 Amiga*:UNIX_System_V:4.0:*)
6e8dd58f 283 echo m68k-unknown-sysv4
1d9c9cd7 284 exit ;;
252b5132
RH
285 *:[Aa]miga[Oo][Ss]:*:*)
286 echo ${UNAME_MACHINE}-unknown-amigaos
1d9c9cd7 287 exit ;;
b020f6ac
L
288 *:[Mm]orph[Oo][Ss]:*:*)
289 echo ${UNAME_MACHINE}-unknown-morphos
1d9c9cd7 290 exit ;;
ada59422
AC
291 *:OS/390:*:*)
292 echo i370-ibm-openedition
1d9c9cd7 293 exit ;;
57d1eb1a
DD
294 *:z/VM:*:*)
295 echo s390-ibm-zvmoe
1d9c9cd7 296 exit ;;
1e600082
AC
297 *:OS400:*:*)
298 echo powerpc-ibm-os400
1d9c9cd7 299 exit ;;
252b5132
RH
300 arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*)
301 echo arm-acorn-riscix${UNAME_RELEASE}
1d9c9cd7
KC
302 exit ;;
303 arm:riscos:*:*|arm:RISCOS:*:*)
304 echo arm-unknown-riscos
305 exit ;;
9dec4c71 306 SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*)
252b5132 307 echo hppa1.1-hitachi-hiuxmpp
1d9c9cd7 308 exit ;;
ada59422 309 Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*)
252b5132
RH
310 # akee@wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE.
311 if test "`(/bin/universe) 2>/dev/null`" = att ; then
312 echo pyramid-pyramid-sysv3
313 else
314 echo pyramid-pyramid-bsd
315 fi
1d9c9cd7 316 exit ;;
ada59422 317 NILE*:*:*:dcosx)
252b5132 318 echo pyramid-pyramid-svr4
1d9c9cd7 319 exit ;;
00c22daa
L
320 DRS?6000:unix:4.0:6*)
321 echo sparc-icl-nx6
1d9c9cd7 322 exit ;;
57d1eb1a 323 DRS?6000:UNIX_SV:4.2*:7* | DRS?6000:isis:4.2*:7*)
51759676 324 case `/usr/bin/uname -p` in
1d9c9cd7 325 sparc) echo sparc-icl-nx7; exit ;;
51759676 326 esac ;;
7ee5dbeb
BE
327 s390x:SunOS:*:*)
328 echo ${UNAME_MACHINE}-ibm-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
329 exit ;;
252b5132
RH
330 sun4H:SunOS:5.*:*)
331 echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
1d9c9cd7 332 exit ;;
252b5132
RH
333 sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*)
334 echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
1d9c9cd7 335 exit ;;
f00a3165 336 i86pc:SunOS:5.*:* | i86xen:SunOS:5.*:*)
bc67ad83
BE
337 eval $set_cc_for_build
338 SUN_ARCH="i386"
339 # If there is a compiler, see if it is configured for 64-bit objects.
340 # Note that the Sun cc does not turn __LP64__ into 1 like gcc does.
341 # This test works for both compilers.
342 if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then
7d6d7764 343 if (echo '#ifdef __amd64'; echo IS_64BIT_ARCH; echo '#endif') | \
bc67ad83
BE
344 (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \
345 grep IS_64BIT_ARCH >/dev/null
346 then
347 SUN_ARCH="x86_64"
348 fi
349 fi
350 echo ${SUN_ARCH}-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
1d9c9cd7 351 exit ;;
252b5132
RH
352 sun4*:SunOS:6*:*)
353 # According to config.sub, this is the proper way to canonicalize
354 # SunOS6. Hard to guess exactly what SunOS6 will be like, but
355 # it's likely to be more like Solaris than SunOS4.
356 echo sparc-sun-solaris3`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
1d9c9cd7 357 exit ;;
252b5132
RH
358 sun4*:SunOS:*:*)
359 case "`/usr/bin/arch -k`" in
360 Series*|S4*)
361 UNAME_RELEASE=`uname -v`
362 ;;
363 esac
364 # Japanese Language versions have a version number like `4.1.3-JL'.
365 echo sparc-sun-sunos`echo ${UNAME_RELEASE}|sed -e 's/-/_/'`
1d9c9cd7 366 exit ;;
252b5132
RH
367 sun3*:SunOS:*:*)
368 echo m68k-sun-sunos${UNAME_RELEASE}
1d9c9cd7 369 exit ;;
252b5132 370 sun*:*:4.2BSD:*)
39121370 371 UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null`
252b5132
RH
372 test "x${UNAME_RELEASE}" = "x" && UNAME_RELEASE=3
373 case "`/bin/arch`" in
374 sun3)
375 echo m68k-sun-sunos${UNAME_RELEASE}
376 ;;
377 sun4)
378 echo sparc-sun-sunos${UNAME_RELEASE}
379 ;;
380 esac
1d9c9cd7 381 exit ;;
252b5132
RH
382 aushp:SunOS:*:*)
383 echo sparc-auspex-sunos${UNAME_RELEASE}
1d9c9cd7 384 exit ;;
ada59422
AC
385 # The situation for MiNT is a little confusing. The machine name
386 # can be virtually everything (everything which is not
ac73857d 387 # "atarist" or "atariste" at least should have a processor
ada59422
AC
388 # > m68000). The system name ranges from "MiNT" over "FreeMiNT"
389 # to the lowercase version "mint" (or "freemint"). Finally
390 # the system name "TOS" denotes a system which is actually not
391 # MiNT. But MiNT is downward compatible to TOS, so this should
392 # be no problem.
393 atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*)
394 echo m68k-atari-mint${UNAME_RELEASE}
1d9c9cd7 395 exit ;;
ada59422
AC
396 atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*)
397 echo m68k-atari-mint${UNAME_RELEASE}
1d9c9cd7 398 exit ;;
ada59422
AC
399 *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*)
400 echo m68k-atari-mint${UNAME_RELEASE}
1d9c9cd7 401 exit ;;
ada59422
AC
402 milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*)
403 echo m68k-milan-mint${UNAME_RELEASE}
1d9c9cd7 404 exit ;;
ada59422
AC
405 hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*)
406 echo m68k-hades-mint${UNAME_RELEASE}
1d9c9cd7 407 exit ;;
ada59422
AC
408 *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*)
409 echo m68k-unknown-mint${UNAME_RELEASE}
1d9c9cd7 410 exit ;;
1e600082
AC
411 m68k:machten:*:*)
412 echo m68k-apple-machten${UNAME_RELEASE}
1d9c9cd7 413 exit ;;
252b5132
RH
414 powerpc:machten:*:*)
415 echo powerpc-apple-machten${UNAME_RELEASE}
1d9c9cd7 416 exit ;;
252b5132
RH
417 RISC*:Mach:*:*)
418 echo mips-dec-mach_bsd4.3
1d9c9cd7 419 exit ;;
252b5132
RH
420 RISC*:ULTRIX:*:*)
421 echo mips-dec-ultrix${UNAME_RELEASE}
1d9c9cd7 422 exit ;;
252b5132
RH
423 VAX*:ULTRIX*:*:*)
424 echo vax-dec-ultrix${UNAME_RELEASE}
1d9c9cd7 425 exit ;;
ada59422 426 2020:CLIX:*:* | 2430:CLIX:*:*)
252b5132 427 echo clipper-intergraph-clix${UNAME_RELEASE}
1d9c9cd7 428 exit ;;
252b5132 429 mips:*:*:UMIPS | mips:*:*:RISCos)
9c07660b 430 eval $set_cc_for_build
ada59422
AC
431 sed 's/^ //' << EOF >$dummy.c
432#ifdef __cplusplus
433#include <stdio.h> /* for printf() prototype */
434 int main (int argc, char *argv[]) {
435#else
436 int main (argc, argv) int argc; char *argv[]; {
437#endif
252b5132
RH
438 #if defined (host_mips) && defined (MIPSEB)
439 #if defined (SYSTYPE_SYSV)
440 printf ("mips-mips-riscos%ssysv\n", argv[1]); exit (0);
441 #endif
442 #if defined (SYSTYPE_SVR4)
443 printf ("mips-mips-riscos%ssvr4\n", argv[1]); exit (0);
444 #endif
445 #if defined (SYSTYPE_BSD43) || defined(SYSTYPE_BSD)
446 printf ("mips-mips-riscos%sbsd\n", argv[1]); exit (0);
447 #endif
448 #endif
449 exit (-1);
450 }
451EOF
1d9c9cd7
KC
452 $CC_FOR_BUILD -o $dummy $dummy.c &&
453 dummyarg=`echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` &&
454 SYSTEM_NAME=`$dummy $dummyarg` &&
455 { echo "$SYSTEM_NAME"; exit; }
252b5132 456 echo mips-mips-riscos${UNAME_RELEASE}
1d9c9cd7 457 exit ;;
82208dc5
AM
458 Motorola:PowerMAX_OS:*:*)
459 echo powerpc-motorola-powermax
1d9c9cd7 460 exit ;;
707960fe
NC
461 Motorola:*:4.3:PL8-*)
462 echo powerpc-harris-powermax
1d9c9cd7 463 exit ;;
3f234ef5 464 Night_Hawk:*:*:PowerMAX_OS | Synergy:PowerMAX_OS:*:*)
4b37028f 465 echo powerpc-harris-powermax
1d9c9cd7 466 exit ;;
252b5132
RH
467 Night_Hawk:Power_UNIX:*:*)
468 echo powerpc-harris-powerunix
1d9c9cd7 469 exit ;;
252b5132
RH
470 m88k:CX/UX:7*:*)
471 echo m88k-harris-cxux7
1d9c9cd7 472 exit ;;
252b5132
RH
473 m88k:*:4*:R4*)
474 echo m88k-motorola-sysv4
1d9c9cd7 475 exit ;;
252b5132
RH
476 m88k:*:3*:R3*)
477 echo m88k-motorola-sysv3
1d9c9cd7 478 exit ;;
252b5132
RH
479 AViiON:dgux:*:*)
480 # DG/UX returns AViiON for all architectures
481 UNAME_PROCESSOR=`/usr/bin/uname -p`
ac73857d 482 if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110 ]
ada59422
AC
483 then
484 if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx ] || \
485 [ ${TARGET_BINARY_INTERFACE}x = x ]
486 then
252b5132 487 echo m88k-dg-dgux${UNAME_RELEASE}
ada59422 488 else
252b5132 489 echo m88k-dg-dguxbcs${UNAME_RELEASE}
ada59422
AC
490 fi
491 else
492 echo i586-dg-dgux${UNAME_RELEASE}
252b5132 493 fi
1d9c9cd7 494 exit ;;
252b5132
RH
495 M88*:DolphinOS:*:*) # DolphinOS (SVR3)
496 echo m88k-dolphin-sysv3
1d9c9cd7 497 exit ;;
252b5132
RH
498 M88*:*:R3*:*)
499 # Delta 88k system running SVR3
500 echo m88k-motorola-sysv3
1d9c9cd7 501 exit ;;
252b5132
RH
502 XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3)
503 echo m88k-tektronix-sysv3
1d9c9cd7 504 exit ;;
252b5132
RH
505 Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD)
506 echo m68k-tektronix-bsd
1d9c9cd7 507 exit ;;
252b5132
RH
508 *:IRIX*:*:*)
509 echo mips-sgi-irix`echo ${UNAME_RELEASE}|sed -e 's/-/_/g'`
1d9c9cd7 510 exit ;;
252b5132 511 ????????:AIX?:[12].1:2) # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX.
1d9c9cd7
KC
512 echo romp-ibm-aix # uname -m gives an 8 hex-code CPU id
513 exit ;; # Note that: echo "'`uname -s`'" gives 'AIX '
82208dc5 514 i*86:AIX:*:*)
252b5132 515 echo i386-ibm-aix
1d9c9cd7 516 exit ;;
b3e0dc8e
PB
517 ia64:AIX:*:*)
518 if [ -x /usr/bin/oslevel ] ; then
519 IBM_REV=`/usr/bin/oslevel`
520 else
521 IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
522 fi
523 echo ${UNAME_MACHINE}-ibm-aix${IBM_REV}
1d9c9cd7 524 exit ;;
252b5132
RH
525 *:AIX:2:3)
526 if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then
9c07660b 527 eval $set_cc_for_build
ada59422 528 sed 's/^ //' << EOF >$dummy.c
252b5132
RH
529 #include <sys/systemcfg.h>
530
531 main()
532 {
533 if (!__power_pc())
534 exit(1);
535 puts("powerpc-ibm-aix3.2.5");
536 exit(0);
537 }
538EOF
1d9c9cd7
KC
539 if $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy`
540 then
541 echo "$SYSTEM_NAME"
542 else
543 echo rs6000-ibm-aix3.2.5
544 fi
252b5132
RH
545 elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then
546 echo rs6000-ibm-aix3.2.4
547 else
548 echo rs6000-ibm-aix3.2
549 fi
1d9c9cd7 550 exit ;;
9f1e7fd3 551 *:AIX:*:[456])
39121370 552 IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'`
b3e0dc8e 553 if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then
252b5132
RH
554 IBM_ARCH=rs6000
555 else
556 IBM_ARCH=powerpc
557 fi
558 if [ -x /usr/bin/oslevel ] ; then
559 IBM_REV=`/usr/bin/oslevel`
560 else
b3e0dc8e 561 IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
252b5132
RH
562 fi
563 echo ${IBM_ARCH}-ibm-aix${IBM_REV}
1d9c9cd7 564 exit ;;
252b5132
RH
565 *:AIX:*:*)
566 echo rs6000-ibm-aix
1d9c9cd7 567 exit ;;
252b5132
RH
568 ibmrt:4.4BSD:*|romp-ibm:BSD:*)
569 echo romp-ibm-bsd4.4
1d9c9cd7 570 exit ;;
ada59422 571 ibmrt:*BSD:*|romp-ibm:BSD:*) # covers RT/PC BSD and
252b5132 572 echo romp-ibm-bsd${UNAME_RELEASE} # 4.3 with uname added to
1d9c9cd7 573 exit ;; # report: romp-ibm BSD 4.3
252b5132
RH
574 *:BOSX:*:*)
575 echo rs6000-bull-bosx
1d9c9cd7 576 exit ;;
252b5132
RH
577 DPX/2?00:B.O.S.:*:*)
578 echo m68k-bull-sysv3
1d9c9cd7 579 exit ;;
252b5132
RH
580 9000/[34]??:4.3bsd:1.*:*)
581 echo m68k-hp-bsd
1d9c9cd7 582 exit ;;
252b5132
RH
583 hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*)
584 echo m68k-hp-bsd4.4
1d9c9cd7 585 exit ;;
252b5132 586 9000/[34678]??:HP-UX:*:*)
35590697 587 HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
252b5132
RH
588 case "${UNAME_MACHINE}" in
589 9000/31? ) HP_ARCH=m68000 ;;
590 9000/[34]?? ) HP_ARCH=m68k ;;
ada59422 591 9000/[678][0-9][0-9])
0e254642
AM
592 if [ -x /usr/bin/getconf ]; then
593 sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null`
35590697
AJ
594 sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null`
595 case "${sc_cpu_version}" in
596 523) HP_ARCH="hppa1.0" ;; # CPU_PA_RISC1_0
597 528) HP_ARCH="hppa1.1" ;; # CPU_PA_RISC1_1
598 532) # CPU_PA_RISC2_0
599 case "${sc_kernel_bits}" in
600 32) HP_ARCH="hppa2.0n" ;;
601 64) HP_ARCH="hppa2.0w" ;;
0e254642 602 '') HP_ARCH="hppa2.0" ;; # HP-UX 10.20
35590697
AJ
603 esac ;;
604 esac
0e254642
AM
605 fi
606 if [ "${HP_ARCH}" = "" ]; then
607 eval $set_cc_for_build
608 sed 's/^ //' << EOF >$dummy.c
ac73857d
AC
609
610 #define _HPUX_SOURCE
252b5132
RH
611 #include <stdlib.h>
612 #include <unistd.h>
ada59422 613
252b5132
RH
614 int main ()
615 {
616 #if defined(_SC_KERNEL_BITS)
617 long bits = sysconf(_SC_KERNEL_BITS);
ada59422 618 #endif
252b5132 619 long cpu = sysconf (_SC_CPU_VERSION);
ada59422
AC
620
621 switch (cpu)
252b5132
RH
622 {
623 case CPU_PA_RISC1_0: puts ("hppa1.0"); break;
624 case CPU_PA_RISC1_1: puts ("hppa1.1"); break;
ada59422 625 case CPU_PA_RISC2_0:
252b5132 626 #if defined(_SC_KERNEL_BITS)
ada59422 627 switch (bits)
252b5132
RH
628 {
629 case 64: puts ("hppa2.0w"); break;
630 case 32: puts ("hppa2.0n"); break;
631 default: puts ("hppa2.0"); break;
632 } break;
633 #else /* !defined(_SC_KERNEL_BITS) */
634 puts ("hppa2.0"); break;
ada59422 635 #endif
252b5132
RH
636 default: puts ("hppa1.0"); break;
637 }
638 exit (0);
639 }
640EOF
3f234ef5
CD
641 (CCOPTS= $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null) && HP_ARCH=`$dummy`
642 test -z "$HP_ARCH" && HP_ARCH=hppa
0e254642 643 fi ;;
252b5132 644 esac
3f234ef5
CD
645 if [ ${HP_ARCH} = "hppa2.0w" ]
646 then
1d9c9cd7
KC
647 eval $set_cc_for_build
648
649 # hppa2.0w-hp-hpux* has a 64-bit kernel and a compiler generating
650 # 32-bit code. hppa64-hp-hpux* has the same kernel and a compiler
651 # generating 64-bit code. GNU and HP use different nomenclature:
652 #
653 # $ CC_FOR_BUILD=cc ./config.guess
654 # => hppa2.0w-hp-hpux11.23
655 # $ CC_FOR_BUILD="cc +DA2.0w" ./config.guess
656 # => hppa64-hp-hpux11.23
657
658 if echo __LP64__ | (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) |
2262bbf4 659 grep -q __LP64__
3f234ef5
CD
660 then
661 HP_ARCH="hppa2.0w"
662 else
663 HP_ARCH="hppa64"
664 fi
665 fi
252b5132 666 echo ${HP_ARCH}-hp-hpux${HPUX_REV}
1d9c9cd7 667 exit ;;
35590697
AJ
668 ia64:HP-UX:*:*)
669 HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
670 echo ia64-hp-hpux${HPUX_REV}
1d9c9cd7 671 exit ;;
252b5132 672 3050*:HI-UX:*:*)
9c07660b 673 eval $set_cc_for_build
ada59422 674 sed 's/^ //' << EOF >$dummy.c
252b5132
RH
675 #include <unistd.h>
676 int
677 main ()
678 {
679 long cpu = sysconf (_SC_CPU_VERSION);
680 /* The order matters, because CPU_IS_HP_MC68K erroneously returns
681 true for CPU_PA_RISC1_0. CPU_IS_PA_RISC returns correct
682 results, however. */
683 if (CPU_IS_PA_RISC (cpu))
684 {
685 switch (cpu)
686 {
687 case CPU_PA_RISC1_0: puts ("hppa1.0-hitachi-hiuxwe2"); break;
688 case CPU_PA_RISC1_1: puts ("hppa1.1-hitachi-hiuxwe2"); break;
689 case CPU_PA_RISC2_0: puts ("hppa2.0-hitachi-hiuxwe2"); break;
690 default: puts ("hppa-hitachi-hiuxwe2"); break;
691 }
692 }
693 else if (CPU_IS_HP_MC68K (cpu))
694 puts ("m68k-hitachi-hiuxwe2");
695 else puts ("unknown-hitachi-hiuxwe2");
696 exit (0);
697 }
698EOF
1d9c9cd7
KC
699 $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` &&
700 { echo "$SYSTEM_NAME"; exit; }
252b5132 701 echo unknown-hitachi-hiuxwe2
1d9c9cd7 702 exit ;;
252b5132
RH
703 9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* )
704 echo hppa1.1-hp-bsd
1d9c9cd7 705 exit ;;
252b5132
RH
706 9000/8??:4.3bsd:*:*)
707 echo hppa1.0-hp-bsd
1d9c9cd7 708 exit ;;
82208dc5 709 *9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*)
ada59422 710 echo hppa1.0-hp-mpeix
1d9c9cd7 711 exit ;;
252b5132
RH
712 hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* )
713 echo hppa1.1-hp-osf
1d9c9cd7 714 exit ;;
252b5132
RH
715 hp8??:OSF1:*:*)
716 echo hppa1.0-hp-osf
1d9c9cd7 717 exit ;;
82208dc5 718 i*86:OSF1:*:*)
252b5132
RH
719 if [ -x /usr/sbin/sysversion ] ; then
720 echo ${UNAME_MACHINE}-unknown-osf1mk
721 else
722 echo ${UNAME_MACHINE}-unknown-osf1
723 fi
1d9c9cd7 724 exit ;;
252b5132
RH
725 parisc*:Lites*:*:*)
726 echo hppa1.1-hp-lites
1d9c9cd7 727 exit ;;
252b5132
RH
728 C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*)
729 echo c1-convex-bsd
1d9c9cd7 730 exit ;;
252b5132
RH
731 C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*)
732 if getsysinfo -f scalar_acc
733 then echo c32-convex-bsd
734 else echo c2-convex-bsd
735 fi
1d9c9cd7 736 exit ;;
252b5132
RH
737 C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*)
738 echo c34-convex-bsd
1d9c9cd7 739 exit ;;
252b5132
RH
740 C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*)
741 echo c38-convex-bsd
1d9c9cd7 742 exit ;;
252b5132
RH
743 C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*)
744 echo c4-convex-bsd
1d9c9cd7 745 exit ;;
252b5132 746 CRAY*Y-MP:*:*:*)
82208dc5 747 echo ymp-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
1d9c9cd7 748 exit ;;
252b5132
RH
749 CRAY*[A-Z]90:*:*:*)
750 echo ${UNAME_MACHINE}-cray-unicos${UNAME_RELEASE} \
751 | sed -e 's/CRAY.*\([A-Z]90\)/\1/' \
82208dc5
AM
752 -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \
753 -e 's/\.[^.]*$/.X/'
1d9c9cd7 754 exit ;;
252b5132 755 CRAY*TS:*:*:*)
ada59422 756 echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
1d9c9cd7 757 exit ;;
35590697
AJ
758 CRAY*T3E:*:*:*)
759 echo alphaev5-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
1d9c9cd7 760 exit ;;
ada59422 761 CRAY*SV1:*:*:*)
ac73857d 762 echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
1d9c9cd7 763 exit ;;
3f234ef5 764 *:UNICOS/mp:*:*)
eb1352ed 765 echo craynv-cray-unicosmp${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
1d9c9cd7 766 exit ;;
35590697
AJ
767 F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*)
768 FUJITSU_PROC=`uname -m | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
252b5132
RH
769 FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
770 FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'`
35590697 771 echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
1d9c9cd7 772 exit ;;
1e600082
AC
773 5000:UNIX_System_V:4.*:*)
774 FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
775 FUJITSU_REL=`echo ${UNAME_RELEASE} | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/ /_/'`
776 echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
1d9c9cd7 777 exit ;;
82208dc5 778 i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*)
252b5132 779 echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE}
1d9c9cd7 780 exit ;;
ada59422
AC
781 sparc*:BSD/OS:*:*)
782 echo sparc-unknown-bsdi${UNAME_RELEASE}
1d9c9cd7 783 exit ;;
ada59422
AC
784 *:BSD/OS:*:*)
785 echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE}
1d9c9cd7 786 exit ;;
1e600082 787 *:FreeBSD:*:*)
ec49b2b8
NC
788 case ${UNAME_MACHINE} in
789 pc98)
790 echo i386-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
49b9e644
BE
791 amd64)
792 echo x86_64-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
ec49b2b8
NC
793 *)
794 echo ${UNAME_MACHINE}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
795 esac
1d9c9cd7 796 exit ;;
ada59422 797 i*:CYGWIN*:*)
8de032f2 798 echo ${UNAME_MACHINE}-pc-cygwin
1d9c9cd7 799 exit ;;
98a1bbc5 800 *:MINGW*:*)
252b5132 801 echo ${UNAME_MACHINE}-pc-mingw32
1d9c9cd7
KC
802 exit ;;
803 i*:windows32*:*)
804 # uname -m includes "-pc" on this system.
805 echo ${UNAME_MACHINE}-mingw32
806 exit ;;
6e8dd58f
PB
807 i*:PW*:*)
808 echo ${UNAME_MACHINE}-pc-pw32
1d9c9cd7 809 exit ;;
e12dec02 810 *:Interix*:*)
98a1bbc5 811 case ${UNAME_MACHINE} in
f00a3165 812 x86)
98a1bbc5
BE
813 echo i586-pc-interix${UNAME_RELEASE}
814 exit ;;
e12dec02 815 authenticamd | genuineintel | EM64T)
98a1bbc5
BE
816 echo x86_64-unknown-interix${UNAME_RELEASE}
817 exit ;;
9f1e7fd3
BE
818 IA64)
819 echo ia64-unknown-interix${UNAME_RELEASE}
820 exit ;;
98a1bbc5 821 esac ;;
3f234ef5
CD
822 [345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*)
823 echo i${UNAME_MACHINE}-pc-mks
1d9c9cd7 824 exit ;;
7ee5dbeb
BE
825 8664:Windows_NT:*)
826 echo x86_64-pc-mks
827 exit ;;
252b5132 828 i*:Windows_NT*:* | Pentium*:Windows_NT*:*)
ada59422 829 # How do we know it's Interix rather than the generic POSIX subsystem?
252b5132 830 # It also conflicts with pre-2.0 versions of AT&T UWIN. Should we
ada59422 831 # UNAME_MACHINE based on the output of uname instead of i386?
3f234ef5 832 echo i586-pc-interix
1d9c9cd7 833 exit ;;
252b5132
RH
834 i*:UWIN*:*)
835 echo ${UNAME_MACHINE}-pc-uwin
1d9c9cd7 836 exit ;;
be01d343 837 amd64:CYGWIN*:*:* | x86_64:CYGWIN*:*:*)
1d9c9cd7
KC
838 echo x86_64-unknown-cygwin
839 exit ;;
252b5132 840 p*:CYGWIN*:*)
ada59422 841 echo powerpcle-unknown-cygwin
1d9c9cd7 842 exit ;;
252b5132
RH
843 prep*:SunOS:5.*:*)
844 echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
1d9c9cd7 845 exit ;;
252b5132 846 *:GNU:*:*)
1e600082 847 # the GNU system
252b5132 848 echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'`
1d9c9cd7 849 exit ;;
1e600082
AC
850 *:GNU/*:*:*)
851 # other systems with GNU libc and userland
852 echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-gnu
1d9c9cd7 853 exit ;;
6e8dd58f
PB
854 i*86:Minix:*:*)
855 echo ${UNAME_MACHINE}-pc-minix
1d9c9cd7 856 exit ;;
707a0b5c
NC
857 alpha:Linux:*:*)
858 case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in
859 EV5) UNAME_MACHINE=alphaev5 ;;
860 EV56) UNAME_MACHINE=alphaev56 ;;
861 PCA56) UNAME_MACHINE=alphapca56 ;;
862 PCA57) UNAME_MACHINE=alphapca56 ;;
863 EV6) UNAME_MACHINE=alphaev6 ;;
864 EV67) UNAME_MACHINE=alphaev67 ;;
865 EV68*) UNAME_MACHINE=alphaev68 ;;
866 esac
867 objdump --private-headers /bin/sh | grep -q ld.so.1
868 if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi
869 echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC}
870 exit ;;
b3e0dc8e 871 arm*:Linux:*:*)
ad25e7d5
BE
872 eval $set_cc_for_build
873 if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \
874 | grep -q __ARM_EABI__
875 then
876 echo ${UNAME_MACHINE}-unknown-linux-gnu
877 else
878 echo ${UNAME_MACHINE}-unknown-linux-gnueabi
879 fi
1d9c9cd7 880 exit ;;
17bcf627
BE
881 avr32*:Linux:*:*)
882 echo ${UNAME_MACHINE}-unknown-linux-gnu
883 exit ;;
00c22daa
L
884 cris:Linux:*:*)
885 echo cris-axis-linux-gnu
1d9c9cd7 886 exit ;;
eb1352ed
NC
887 crisv32:Linux:*:*)
888 echo crisv32-axis-linux-gnu
1d9c9cd7 889 exit ;;
fe69863c
DD
890 frv:Linux:*:*)
891 echo frv-unknown-linux-gnu
1d9c9cd7 892 exit ;;
707a0b5c 893 i*86:Linux:*:*)
e12dec02
PB
894 LIBC=gnu
895 eval $set_cc_for_build
896 sed 's/^ //' << EOF >$dummy.c
897 #ifdef __dietlibc__
898 LIBC=dietlibc
899 #endif
900EOF
901 eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^LIBC'`
902 echo "${UNAME_MACHINE}-pc-linux-${LIBC}"
707a0b5c 903 exit ;;
b3e0dc8e 904 ia64:Linux:*:*)
5f284831 905 echo ${UNAME_MACHINE}-unknown-linux-gnu
1d9c9cd7 906 exit ;;
eb1352ed
NC
907 m32r*:Linux:*:*)
908 echo ${UNAME_MACHINE}-unknown-linux-gnu
1d9c9cd7 909 exit ;;
b3e0dc8e
PB
910 m68*:Linux:*:*)
911 echo ${UNAME_MACHINE}-unknown-linux-gnu
1d9c9cd7 912 exit ;;
7ee5dbeb 913 mips:Linux:*:* | mips64:Linux:*:*)
3f234ef5
CD
914 eval $set_cc_for_build
915 sed 's/^ //' << EOF >$dummy.c
916 #undef CPU
7ee5dbeb
BE
917 #undef ${UNAME_MACHINE}
918 #undef ${UNAME_MACHINE}el
3f234ef5 919 #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL)
7ee5dbeb 920 CPU=${UNAME_MACHINE}el
3f234ef5
CD
921 #else
922 #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB)
7ee5dbeb 923 CPU=${UNAME_MACHINE}
3f234ef5
CD
924 #else
925 CPU=
926 #endif
927 #endif
928EOF
e12dec02 929 eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^CPU'`
1d9c9cd7 930 test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; }
b3e0dc8e 931 ;;
be01d343
PB
932 or32:Linux:*:*)
933 echo or32-unknown-linux-gnu
934 exit ;;
bc67ad83
BE
935 padre:Linux:*:*)
936 echo sparc-unknown-linux-gnu
937 exit ;;
707a0b5c
NC
938 parisc64:Linux:*:* | hppa64:Linux:*:*)
939 echo hppa64-unknown-linux-gnu
940 exit ;;
b3e0dc8e
PB
941 parisc:Linux:*:* | hppa:Linux:*:*)
942 # Look for CPU level
943 case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in
944 PA7*) echo hppa1.1-unknown-linux-gnu ;;
945 PA8*) echo hppa2.0-unknown-linux-gnu ;;
946 *) echo hppa-unknown-linux-gnu ;;
947 esac
1d9c9cd7 948 exit ;;
707a0b5c
NC
949 ppc64:Linux:*:*)
950 echo powerpc64-unknown-linux-gnu
951 exit ;;
952 ppc:Linux:*:*)
953 echo powerpc-unknown-linux-gnu
1d9c9cd7 954 exit ;;
b3e0dc8e
PB
955 s390:Linux:*:* | s390x:Linux:*:*)
956 echo ${UNAME_MACHINE}-ibm-linux
1d9c9cd7 957 exit ;;
1e600082
AC
958 sh64*:Linux:*:*)
959 echo ${UNAME_MACHINE}-unknown-linux-gnu
1d9c9cd7 960 exit ;;
b3e0dc8e
PB
961 sh*:Linux:*:*)
962 echo ${UNAME_MACHINE}-unknown-linux-gnu
1d9c9cd7 963 exit ;;
b3e0dc8e
PB
964 sparc:Linux:*:* | sparc64:Linux:*:*)
965 echo ${UNAME_MACHINE}-unknown-linux-gnu
1d9c9cd7 966 exit ;;
ec49b2b8
NC
967 vax:Linux:*:*)
968 echo ${UNAME_MACHINE}-dec-linux-gnu
969 exit ;;
b3e0dc8e
PB
970 x86_64:Linux:*:*)
971 echo x86_64-unknown-linux-gnu
1d9c9cd7 972 exit ;;
ad25e7d5
BE
973 xtensa*:Linux:*:*)
974 echo ${UNAME_MACHINE}-unknown-linux-gnu
0cfa5389 975 exit ;;
82208dc5
AM
976 i*86:DYNIX/ptx:4*:*)
977 # ptx 4.0 does uname -s correctly, with DYNIX/ptx in there.
978 # earlier versions are messed up and put the nodename in both
979 # sysname and nodename.
252b5132 980 echo i386-sequent-sysv4
1d9c9cd7 981 exit ;;
82208dc5 982 i*86:UNIX_SV:4.2MP:2.*)
252b5132
RH
983 # Unixware is an offshoot of SVR4, but it has its own version
984 # number series starting with 2...
985 # I am not positive that other SVR4 systems won't match this,
986 # I just have to hope. -- rms.
987 # Use sysv4.2uw... so that sysv4* matches it.
988 echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION}
1d9c9cd7 989 exit ;;
3f234ef5
CD
990 i*86:OS/2:*:*)
991 # If we were able to find `uname', then EMX Unix compatibility
992 # is probably installed.
993 echo ${UNAME_MACHINE}-pc-os2-emx
1d9c9cd7 994 exit ;;
3f234ef5
CD
995 i*86:XTS-300:*:STOP)
996 echo ${UNAME_MACHINE}-unknown-stop
1d9c9cd7 997 exit ;;
3f234ef5
CD
998 i*86:atheos:*:*)
999 echo ${UNAME_MACHINE}-unknown-atheos
1d9c9cd7
KC
1000 exit ;;
1001 i*86:syllable:*:*)
1e600082 1002 echo ${UNAME_MACHINE}-pc-syllable
1d9c9cd7 1003 exit ;;
2262bbf4 1004 i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.[02]*:*)
3f234ef5 1005 echo i386-unknown-lynxos${UNAME_RELEASE}
1d9c9cd7 1006 exit ;;
3f234ef5
CD
1007 i*86:*DOS:*:*)
1008 echo ${UNAME_MACHINE}-pc-msdosdjgpp
1d9c9cd7 1009 exit ;;
82208dc5 1010 i*86:*:4.*:* | i*86:SYSTEM_V:4.*:*)
ada59422 1011 UNAME_REL=`echo ${UNAME_RELEASE} | sed 's/\/MP$//'`
252b5132 1012 if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then
ada59422 1013 echo ${UNAME_MACHINE}-univel-sysv${UNAME_REL}
252b5132 1014 else
ada59422
AC
1015 echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL}
1016 fi
1d9c9cd7
KC
1017 exit ;;
1018 i*86:*:5:[678]*)
1019 # UnixWare 7.x, OpenUNIX and OpenServer 6.
82208dc5
AM
1020 case `/bin/uname -X | grep "^Machine"` in
1021 *486*) UNAME_MACHINE=i486 ;;
1022 *Pentium) UNAME_MACHINE=i586 ;;
1023 *Pent*|*Celeron) UNAME_MACHINE=i686 ;;
1024 esac
1025 echo ${UNAME_MACHINE}-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION}
1d9c9cd7 1026 exit ;;
82208dc5 1027 i*86:*:3.2:*)
252b5132
RH
1028 if test -f /usr/options/cb.name; then
1029 UNAME_REL=`sed -n 's/.*Version //p' </usr/options/cb.name`
1030 echo ${UNAME_MACHINE}-pc-isc$UNAME_REL
1031 elif /bin/uname -X 2>/dev/null >/dev/null ; then
51759676
CD
1032 UNAME_REL=`(/bin/uname -X|grep Release|sed -e 's/.*= //')`
1033 (/bin/uname -X|grep i80486 >/dev/null) && UNAME_MACHINE=i486
1034 (/bin/uname -X|grep '^Machine.*Pentium' >/dev/null) \
252b5132 1035 && UNAME_MACHINE=i586
51759676 1036 (/bin/uname -X|grep '^Machine.*Pent *II' >/dev/null) \
252b5132 1037 && UNAME_MACHINE=i686
51759676 1038 (/bin/uname -X|grep '^Machine.*Pentium Pro' >/dev/null) \
252b5132 1039 && UNAME_MACHINE=i686
252b5132
RH
1040 echo ${UNAME_MACHINE}-pc-sco$UNAME_REL
1041 else
1042 echo ${UNAME_MACHINE}-pc-sysv32
1043 fi
1d9c9cd7 1044 exit ;;
252b5132 1045 pc:*:*:*)
ada59422 1046 # Left here for compatibility:
252b5132 1047 # uname -m prints for DJGPP always 'pc', but it prints nothing about
15f8a1ed
EZ
1048 # the processor, so we play safe by assuming i586.
1049 # Note: whatever this is, it MUST be the same as what config.sub
1050 # prints for the "djgpp" host, or else GDB configury will decide that
1051 # this is a cross-build.
1052 echo i586-pc-msdosdjgpp
1d9c9cd7 1053 exit ;;
252b5132
RH
1054 Intel:Mach:3*:*)
1055 echo i386-pc-mach3
1d9c9cd7 1056 exit ;;
252b5132
RH
1057 paragon:*:*:*)
1058 echo i860-intel-osf1
1d9c9cd7 1059 exit ;;
252b5132
RH
1060 i860:*:4.*:*) # i860-SVR4
1061 if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then
1062 echo i860-stardent-sysv${UNAME_RELEASE} # Stardent Vistra i860-SVR4
1063 else # Add other i860-SVR4 vendors below as they are discovered.
1064 echo i860-unknown-sysv${UNAME_RELEASE} # Unknown i860-SVR4
1065 fi
1d9c9cd7 1066 exit ;;
252b5132
RH
1067 mini*:CTIX:SYS*5:*)
1068 # "miniframe"
1069 echo m68010-convergent-sysv
1d9c9cd7 1070 exit ;;
fd31a171
AC
1071 mc68k:UNIX:SYSTEM5:3.51m)
1072 echo m68k-convergent-sysv
1d9c9cd7 1073 exit ;;
3f234ef5
CD
1074 M680?0:D-NIX:5.3:*)
1075 echo m68k-diab-dnix
1d9c9cd7 1076 exit ;;
eb1352ed 1077 M68*:*:R3V[5678]*:*)
1d9c9cd7 1078 test -r /sysV68 && { echo 'm68k-motorola-sysv'; exit; } ;;
eb1352ed 1079 3[345]??:*:4.0:3.0 | 3[34]??A:*:4.0:3.0 | 3[34]??,*:*:4.0:3.0 | 3[34]??/*:*:4.0:3.0 | 4400:*:4.0:3.0 | 4850:*:4.0:3.0 | SKA40:*:4.0:3.0 | SDS2:*:4.0:3.0 | SHG2:*:4.0:3.0 | S7501*:*:4.0:3.0)
252b5132
RH
1080 OS_REL=''
1081 test -r /etc/.relid \
1082 && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
1083 /bin/uname -p 2>/dev/null | grep 86 >/dev/null \
1d9c9cd7 1084 && { echo i486-ncr-sysv4.3${OS_REL}; exit; }
252b5132 1085 /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
1d9c9cd7 1086 && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;;
252b5132
RH
1087 3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*)
1088 /bin/uname -p 2>/dev/null | grep 86 >/dev/null \
1d9c9cd7 1089 && { echo i486-ncr-sysv4; exit; } ;;
0000e2bf
BE
1090 NCR*:*:4.2:* | MPRAS*:*:4.2:*)
1091 OS_REL='.3'
1092 test -r /etc/.relid \
1093 && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
1094 /bin/uname -p 2>/dev/null | grep 86 >/dev/null \
1095 && { echo i486-ncr-sysv4.3${OS_REL}; exit; }
1096 /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
1097 && { echo i586-ncr-sysv4.3${OS_REL}; exit; }
1098 /bin/uname -p 2>/dev/null | /bin/grep pteron >/dev/null \
1099 && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;;
82208dc5 1100 m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*)
252b5132 1101 echo m68k-unknown-lynxos${UNAME_RELEASE}
1d9c9cd7 1102 exit ;;
252b5132
RH
1103 mc68030:UNIX_System_V:4.*:*)
1104 echo m68k-atari-sysv4
1d9c9cd7 1105 exit ;;
252b5132
RH
1106 TSUNAMI:LynxOS:2.*:*)
1107 echo sparc-unknown-lynxos${UNAME_RELEASE}
1d9c9cd7 1108 exit ;;
9dec4c71 1109 rs6000:LynxOS:2.*:*)
252b5132 1110 echo rs6000-unknown-lynxos${UNAME_RELEASE}
1d9c9cd7 1111 exit ;;
2262bbf4 1112 PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.[02]*:*)
9dec4c71 1113 echo powerpc-unknown-lynxos${UNAME_RELEASE}
1d9c9cd7 1114 exit ;;
252b5132
RH
1115 SM[BE]S:UNIX_SV:*:*)
1116 echo mips-dde-sysv${UNAME_RELEASE}
1d9c9cd7 1117 exit ;;
ada59422
AC
1118 RM*:ReliantUNIX-*:*:*)
1119 echo mips-sni-sysv4
1d9c9cd7 1120 exit ;;
252b5132
RH
1121 RM*:SINIX-*:*:*)
1122 echo mips-sni-sysv4
1d9c9cd7 1123 exit ;;
252b5132
RH
1124 *:SINIX-*:*:*)
1125 if uname -p 2>/dev/null >/dev/null ; then
1126 UNAME_MACHINE=`(uname -p) 2>/dev/null`
1127 echo ${UNAME_MACHINE}-sni-sysv4
1128 else
1129 echo ns32k-sni-sysv
1130 fi
1d9c9cd7 1131 exit ;;
82208dc5
AM
1132 PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort
1133 # says <Richard.M.Bartel@ccMail.Census.GOV>
252b5132 1134 echo i586-unisys-sysv4
1d9c9cd7 1135 exit ;;
252b5132
RH
1136 *:UNIX_System_V:4*:FTX*)
1137 # From Gerald Hewes <hewes@openmarket.com>.
1138 # How about differentiating between stratus architectures? -djm
1139 echo hppa1.1-stratus-sysv4
1d9c9cd7 1140 exit ;;
252b5132
RH
1141 *:*:*:FTX*)
1142 # From seanf@swdc.stratus.com.
1143 echo i860-stratus-sysv4
1d9c9cd7
KC
1144 exit ;;
1145 i*86:VOS:*:*)
1146 # From Paul.Green@stratus.com.
1147 echo ${UNAME_MACHINE}-stratus-vos
1148 exit ;;
82208dc5
AM
1149 *:VOS:*:*)
1150 # From Paul.Green@stratus.com.
1151 echo hppa1.1-stratus-vos
1d9c9cd7 1152 exit ;;
252b5132
RH
1153 mc68*:A/UX:*:*)
1154 echo m68k-apple-aux${UNAME_RELEASE}
1d9c9cd7 1155 exit ;;
6e8dd58f 1156 news*:NEWS-OS:6*:*)
252b5132 1157 echo mips-sony-newsos6
1d9c9cd7 1158 exit ;;
ada59422 1159 R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*)
252b5132
RH
1160 if [ -d /usr/nec ]; then
1161 echo mips-nec-sysv${UNAME_RELEASE}
1162 else
1163 echo mips-unknown-sysv${UNAME_RELEASE}
1164 fi
1d9c9cd7 1165 exit ;;
252b5132
RH
1166 BeBox:BeOS:*:*) # BeOS running on hardware made by Be, PPC only.
1167 echo powerpc-be-beos
1d9c9cd7 1168 exit ;;
252b5132
RH
1169 BeMac:BeOS:*:*) # BeOS running on Mac or Mac clone, PPC only.
1170 echo powerpc-apple-beos
1d9c9cd7 1171 exit ;;
252b5132
RH
1172 BePC:BeOS:*:*) # BeOS running on Intel PC compatible.
1173 echo i586-pc-beos
1d9c9cd7 1174 exit ;;
a1f93a5e
BE
1175 BePC:Haiku:*:*) # Haiku running on Intel PC compatible.
1176 echo i586-pc-haiku
1177 exit ;;
ada59422
AC
1178 SX-4:SUPER-UX:*:*)
1179 echo sx4-nec-superux${UNAME_RELEASE}
1d9c9cd7 1180 exit ;;
ada59422
AC
1181 SX-5:SUPER-UX:*:*)
1182 echo sx5-nec-superux${UNAME_RELEASE}
1d9c9cd7 1183 exit ;;
fd31a171
AC
1184 SX-6:SUPER-UX:*:*)
1185 echo sx6-nec-superux${UNAME_RELEASE}
1d9c9cd7 1186 exit ;;
0cfa5389
BE
1187 SX-7:SUPER-UX:*:*)
1188 echo sx7-nec-superux${UNAME_RELEASE}
1189 exit ;;
1190 SX-8:SUPER-UX:*:*)
1191 echo sx8-nec-superux${UNAME_RELEASE}
1192 exit ;;
98a1bbc5
BE
1193 SX-8R:SUPER-UX:*:*)
1194 echo sx8r-nec-superux${UNAME_RELEASE}
1195 exit ;;
ada59422
AC
1196 Power*:Rhapsody:*:*)
1197 echo powerpc-apple-rhapsody${UNAME_RELEASE}
1d9c9cd7 1198 exit ;;
ada59422
AC
1199 *:Rhapsody:*:*)
1200 echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE}
1d9c9cd7 1201 exit ;;
ac73857d 1202 *:Darwin:*:*)
eb1352ed
NC
1203 UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown
1204 case $UNAME_PROCESSOR in
707a0b5c
NC
1205 i386)
1206 eval $set_cc_for_build
1207 if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then
1208 if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \
1209 (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \
1210 grep IS_64BIT_ARCH >/dev/null
1211 then
1212 UNAME_PROCESSOR="x86_64"
1213 fi
1214 fi ;;
eb1352ed 1215 unknown) UNAME_PROCESSOR=powerpc ;;
ee3fd329
AM
1216 esac
1217 echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE}
1d9c9cd7 1218 exit ;;
ac73857d 1219 *:procnto*:*:* | *:QNX:[0123456789]*:*)
5f284831
MM
1220 UNAME_PROCESSOR=`uname -p`
1221 if test "$UNAME_PROCESSOR" = "x86"; then
1222 UNAME_PROCESSOR=i386
ac73857d
AC
1223 UNAME_MACHINE=pc
1224 fi
5f284831 1225 echo ${UNAME_PROCESSOR}-${UNAME_MACHINE}-nto-qnx${UNAME_RELEASE}
1d9c9cd7 1226 exit ;;
ada59422 1227 *:QNX:*:4*)
ac73857d 1228 echo i386-pc-qnx
1d9c9cd7
KC
1229 exit ;;
1230 NSE-?:NONSTOP_KERNEL:*:*)
1231 echo nse-tandem-nsk${UNAME_RELEASE}
1232 exit ;;
1e600082 1233 NSR-?:NONSTOP_KERNEL:*:*)
ac73857d 1234 echo nsr-tandem-nsk${UNAME_RELEASE}
1d9c9cd7 1235 exit ;;
35590697
AJ
1236 *:NonStop-UX:*:*)
1237 echo mips-compaq-nonstopux
1d9c9cd7 1238 exit ;;
ac73857d
AC
1239 BS2000:POSIX*:*:*)
1240 echo bs2000-siemens-sysv
1d9c9cd7 1241 exit ;;
ac73857d
AC
1242 DS/*:UNIX_System_V:*:*)
1243 echo ${UNAME_MACHINE}-${UNAME_SYSTEM}-${UNAME_RELEASE}
1d9c9cd7 1244 exit ;;
6e8dd58f
PB
1245 *:Plan9:*:*)
1246 # "uname -m" is not consistent, so use $cputype instead. 386
1247 # is converted to i386 for consistency with other x86
1248 # operating systems.
1249 if test "$cputype" = "386"; then
1250 UNAME_MACHINE=i386
1251 else
1252 UNAME_MACHINE="$cputype"
1253 fi
1254 echo ${UNAME_MACHINE}-unknown-plan9
1d9c9cd7 1255 exit ;;
9dec4c71
MS
1256 *:TOPS-10:*:*)
1257 echo pdp10-unknown-tops10
1d9c9cd7 1258 exit ;;
9dec4c71
MS
1259 *:TENEX:*:*)
1260 echo pdp10-unknown-tenex
1d9c9cd7 1261 exit ;;
9dec4c71
MS
1262 KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*)
1263 echo pdp10-dec-tops20
1d9c9cd7 1264 exit ;;
9dec4c71
MS
1265 XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*)
1266 echo pdp10-xkl-tops20
1d9c9cd7 1267 exit ;;
9dec4c71
MS
1268 *:TOPS-20:*:*)
1269 echo pdp10-unknown-tops20
1d9c9cd7 1270 exit ;;
9dec4c71
MS
1271 *:ITS:*:*)
1272 echo pdp10-unknown-its
1d9c9cd7 1273 exit ;;
1e600082
AC
1274 SEI:*:*:SEIUX)
1275 echo mips-sei-seiux${UNAME_RELEASE}
1d9c9cd7 1276 exit ;;
1e600082
AC
1277 *:DragonFly:*:*)
1278 echo ${UNAME_MACHINE}-unknown-dragonfly`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`
1d9c9cd7 1279 exit ;;
eb1352ed
NC
1280 *:*VMS:*:*)
1281 UNAME_MACHINE=`(uname -p) 2>/dev/null`
1282 case "${UNAME_MACHINE}" in
1d9c9cd7
KC
1283 A*) echo alpha-dec-vms ; exit ;;
1284 I*) echo ia64-dec-vms ; exit ;;
1285 V*) echo vax-dec-vms ; exit ;;
57d1eb1a
DD
1286 esac ;;
1287 *:XENIX:*:SysV)
1288 echo i386-pc-xenix
1d9c9cd7
KC
1289 exit ;;
1290 i*86:skyos:*:*)
1291 echo ${UNAME_MACHINE}-pc-skyos`echo ${UNAME_RELEASE}` | sed -e 's/ .*$//'
1292 exit ;;
ec49b2b8
NC
1293 i*86:rdos:*:*)
1294 echo ${UNAME_MACHINE}-pc-rdos
1295 exit ;;
0000e2bf
BE
1296 i*86:AROS:*:*)
1297 echo ${UNAME_MACHINE}-pc-aros
1298 exit ;;
252b5132
RH
1299esac
1300
1301#echo '(No uname command or uname output not recognized.)' 1>&2
1302#echo "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" 1>&2
1303
9c07660b 1304eval $set_cc_for_build
ada59422 1305cat >$dummy.c <<EOF
252b5132
RH
1306#ifdef _SEQUENT_
1307# include <sys/types.h>
1308# include <sys/utsname.h>
1309#endif
1310main ()
1311{
1312#if defined (sony)
1313#if defined (MIPSEB)
1314 /* BFD wants "bsd" instead of "newsos". Perhaps BFD should be changed,
1315 I don't know.... */
1316 printf ("mips-sony-bsd\n"); exit (0);
1317#else
1318#include <sys/param.h>
1319 printf ("m68k-sony-newsos%s\n",
1320#ifdef NEWSOS4
1321 "4"
1322#else
1323 ""
1324#endif
1325 ); exit (0);
1326#endif
1327#endif
1328
1329#if defined (__arm) && defined (__acorn) && defined (__unix)
1d9c9cd7 1330 printf ("arm-acorn-riscix\n"); exit (0);
252b5132
RH
1331#endif
1332
1333#if defined (hp300) && !defined (hpux)
1334 printf ("m68k-hp-bsd\n"); exit (0);
1335#endif
1336
1337#if defined (NeXT)
1338#if !defined (__ARCHITECTURE__)
1339#define __ARCHITECTURE__ "m68k"
1340#endif
1341 int version;
1342 version=`(hostinfo | sed -n 's/.*NeXT Mach \([0-9]*\).*/\1/p') 2>/dev/null`;
ada59422
AC
1343 if (version < 4)
1344 printf ("%s-next-nextstep%d\n", __ARCHITECTURE__, version);
1345 else
1346 printf ("%s-next-openstep%d\n", __ARCHITECTURE__, version);
252b5132
RH
1347 exit (0);
1348#endif
1349
1350#if defined (MULTIMAX) || defined (n16)
1351#if defined (UMAXV)
1352 printf ("ns32k-encore-sysv\n"); exit (0);
1353#else
1354#if defined (CMU)
1355 printf ("ns32k-encore-mach\n"); exit (0);
1356#else
1357 printf ("ns32k-encore-bsd\n"); exit (0);
1358#endif
1359#endif
1360#endif
1361
1362#if defined (__386BSD__)
1363 printf ("i386-pc-bsd\n"); exit (0);
1364#endif
1365
1366#if defined (sequent)
1367#if defined (i386)
1368 printf ("i386-sequent-dynix\n"); exit (0);
1369#endif
1370#if defined (ns32000)
1371 printf ("ns32k-sequent-dynix\n"); exit (0);
1372#endif
1373#endif
1374
1375#if defined (_SEQUENT_)
1376 struct utsname un;
1377
1378 uname(&un);
1379
1380 if (strncmp(un.version, "V2", 2) == 0) {
1381 printf ("i386-sequent-ptx2\n"); exit (0);
1382 }
1383 if (strncmp(un.version, "V1", 2) == 0) { /* XXX is V1 correct? */
1384 printf ("i386-sequent-ptx1\n"); exit (0);
1385 }
1386 printf ("i386-sequent-ptx\n"); exit (0);
1387
1388#endif
1389
1390#if defined (vax)
9dec4c71
MS
1391# if !defined (ultrix)
1392# include <sys/param.h>
1393# if defined (BSD)
1394# if BSD == 43
1395 printf ("vax-dec-bsd4.3\n"); exit (0);
1396# else
1397# if BSD == 199006
1398 printf ("vax-dec-bsd4.3reno\n"); exit (0);
1399# else
1400 printf ("vax-dec-bsd\n"); exit (0);
1401# endif
1402# endif
1403# else
1404 printf ("vax-dec-bsd\n"); exit (0);
1405# endif
1406# else
1407 printf ("vax-dec-ultrix\n"); exit (0);
1408# endif
252b5132
RH
1409#endif
1410
1411#if defined (alliant) && defined (i860)
1412 printf ("i860-alliant-bsd\n"); exit (0);
1413#endif
1414
1415 exit (1);
1416}
1417EOF
1418
1d9c9cd7
KC
1419$CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null && SYSTEM_NAME=`$dummy` &&
1420 { echo "$SYSTEM_NAME"; exit; }
252b5132
RH
1421
1422# Apollos put the system type in the environment.
1423
1d9c9cd7 1424test -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit; }
252b5132
RH
1425
1426# Convex versions that predate uname can use getsysinfo(1)
1427
1428if [ -x /usr/convex/getsysinfo ]
1429then
1430 case `getsysinfo -f cpu_type` in
1431 c1*)
1432 echo c1-convex-bsd
1d9c9cd7 1433 exit ;;
252b5132
RH
1434 c2*)
1435 if getsysinfo -f scalar_acc
1436 then echo c32-convex-bsd
1437 else echo c2-convex-bsd
1438 fi
1d9c9cd7 1439 exit ;;
252b5132
RH
1440 c34*)
1441 echo c34-convex-bsd
1d9c9cd7 1442 exit ;;
252b5132
RH
1443 c38*)
1444 echo c38-convex-bsd
1d9c9cd7 1445 exit ;;
252b5132
RH
1446 c4*)
1447 echo c4-convex-bsd
1d9c9cd7 1448 exit ;;
252b5132
RH
1449 esac
1450fi
1451
ac73857d
AC
1452cat >&2 <<EOF
1453$0: unable to guess system type
1454
9dec4c71
MS
1455This script, last modified $timestamp, has failed to recognize
1456the operating system you are using. It is advised that you
1457download the most up to date version of the config scripts from
ac73857d 1458
19090595 1459 http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD
1d9c9cd7 1460and
19090595 1461 http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD
ac73857d
AC
1462
1463If the version you run ($0) is already up to date, please
1464send the following data and any information you think might be
1465pertinent to <config-patches@gnu.org> in order to provide the needed
1466information to handle your system.
1467
9dec4c71 1468config.guess timestamp = $timestamp
ac73857d
AC
1469
1470uname -m = `(uname -m) 2>/dev/null || echo unknown`
1471uname -r = `(uname -r) 2>/dev/null || echo unknown`
1472uname -s = `(uname -s) 2>/dev/null || echo unknown`
1473uname -v = `(uname -v) 2>/dev/null || echo unknown`
1474
1475/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null`
1476/bin/uname -X = `(/bin/uname -X) 2>/dev/null`
1477
1478hostinfo = `(hostinfo) 2>/dev/null`
1479/bin/universe = `(/bin/universe) 2>/dev/null`
1480/usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null`
1481/bin/arch = `(/bin/arch) 2>/dev/null`
1482/usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null`
1483/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null`
1484
1485UNAME_MACHINE = ${UNAME_MACHINE}
1486UNAME_RELEASE = ${UNAME_RELEASE}
1487UNAME_SYSTEM = ${UNAME_SYSTEM}
1488UNAME_VERSION = ${UNAME_VERSION}
1489EOF
252b5132
RH
1490
1491exit 1
ac73857d
AC
1492
1493# Local variables:
1494# eval: (add-hook 'write-file-hooks 'time-stamp)
35590697 1495# time-stamp-start: "timestamp='"
ac73857d
AC
1496# time-stamp-format: "%:y-%02m-%02d"
1497# time-stamp-end: "'"
1498# End:
This page took 0.52048 seconds and 4 git commands to generate.