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