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