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