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