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