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