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