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