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