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