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