diff options
author | Damien Miller <djm@mindrot.org> | 2000-06-12 23:01:02 +1000 |
---|---|---|
committer | Damien Miller <djm@mindrot.org> | 2000-06-12 23:01:02 +1000 |
commit | b405d6108b3943f85b192cd64292542d9f2669dc (patch) | |
tree | 5901d3d145409876cd707d77f04bdf48930b0bb8 /config.guess | |
parent | a6e407e8498e2bf1ee35731ead928b5bbc94730e (diff) |
Latest versions
Diffstat (limited to 'config.guess')
-rwxr-xr-x | config.guess | 1270 |
1 files changed, 1270 insertions, 0 deletions
diff --git a/config.guess b/config.guess new file mode 100755 index 000000000..b4faaedca --- /dev/null +++ b/config.guess | |||
@@ -0,0 +1,1270 @@ | |||
1 | #! /bin/sh | ||
2 | # Attempt to guess a canonical system name. | ||
3 | # Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000 | ||
4 | # Free Software Foundation, Inc. | ||
5 | |||
6 | version='2000-05-30' | ||
7 | |||
8 | # This file is free software; you can redistribute it and/or modify it | ||
9 | # under the terms of the GNU General Public License as published by | ||
10 | # the Free Software Foundation; either version 2 of the License, or | ||
11 | # (at your option) any later version. | ||
12 | # | ||
13 | # This program is distributed in the hope that it will be useful, but | ||
14 | # WITHOUT ANY WARRANTY; without even the implied warranty of | ||
15 | # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
16 | # General Public License for more details. | ||
17 | # | ||
18 | # You should have received a copy of the GNU General Public License | ||
19 | # along with this program; if not, write to the Free Software | ||
20 | # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. | ||
21 | # | ||
22 | # As a special exception to the GNU General Public License, if you | ||
23 | # distribute this file as part of a program that contains a | ||
24 | # configuration script generated by Autoconf, you may include it under | ||
25 | # the same distribution terms that you use for the rest of that program. | ||
26 | |||
27 | # Written by Per Bothner <bothner@cygnus.com>. | ||
28 | # Please send patches to <config-patches@gnu.org>. | ||
29 | # | ||
30 | # This script attempts to guess a canonical system name similar to | ||
31 | # config.sub. If it succeeds, it prints the system name on stdout, and | ||
32 | # exits with 0. Otherwise, it exits with 1. | ||
33 | # | ||
34 | # The plan is that this can be called by configure scripts if you | ||
35 | # don't specify an explicit system type (host/target name). | ||
36 | # | ||
37 | # Only a few systems have been added to this list; please add others | ||
38 | # (but try to keep the structure clean). | ||
39 | # | ||
40 | |||
41 | me=`echo "$0" | sed -e 's,.*/,,'` | ||
42 | |||
43 | usage="\ | ||
44 | Usage: $0 [OPTION] | ||
45 | |||
46 | Output the configuration name of this system. | ||
47 | |||
48 | Operation modes: | ||
49 | -h, --help print this help, then exit | ||
50 | -V, --version print version number, then exit" | ||
51 | |||
52 | help=" | ||
53 | Try \`$me --help' for more information." | ||
54 | |||
55 | # Parse command line | ||
56 | while test $# -gt 0 ; do | ||
57 | case "$1" in | ||
58 | --version | --vers* | -V ) | ||
59 | echo "$version" ; exit 0 ;; | ||
60 | --help | --h* | -h ) | ||
61 | echo "$usage"; exit 0 ;; | ||
62 | -- ) # Stop option processing | ||
63 | shift; break ;; | ||
64 | - ) # Use stdin as input. | ||
65 | break ;; | ||
66 | -* ) | ||
67 | exec >&2 | ||
68 | echo "$me: invalid option $1" | ||
69 | echo "$help" | ||
70 | exit 1 ;; | ||
71 | * ) | ||
72 | break ;; | ||
73 | esac | ||
74 | done | ||
75 | |||
76 | if test $# != 0; then | ||
77 | echo "$me: too many arguments$help" >&2 | ||
78 | exit 1 | ||
79 | fi | ||
80 | |||
81 | # Use $HOST_CC if defined. $CC may point to a cross-compiler | ||
82 | if test x"$CC_FOR_BUILD" = x; then | ||
83 | if test x"$HOST_CC" != x; then | ||
84 | CC_FOR_BUILD="$HOST_CC" | ||
85 | else | ||
86 | if test x"$CC" != x; then | ||
87 | CC_FOR_BUILD="$CC" | ||
88 | else | ||
89 | CC_FOR_BUILD=cc | ||
90 | fi | ||
91 | fi | ||
92 | fi | ||
93 | |||
94 | |||
95 | # This is needed to find uname on a Pyramid OSx when run in the BSD universe. | ||
96 | # (ghazi@noc.rutgers.edu 8/24/94.) | ||
97 | if (test -f /.attbin/uname) >/dev/null 2>&1 ; then | ||
98 | PATH=$PATH:/.attbin ; export PATH | ||
99 | fi | ||
100 | |||
101 | UNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown | ||
102 | UNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown | ||
103 | UNAME_SYSTEM=`(uname -s) 2>/dev/null` || UNAME_SYSTEM=unknown | ||
104 | UNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown | ||
105 | |||
106 | dummy=dummy-$$ | ||
107 | trap 'rm -f $dummy.c $dummy.o $dummy; exit 1' 1 2 15 | ||
108 | |||
109 | # Note: order is significant - the case branches are not exclusive. | ||
110 | |||
111 | case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in | ||
112 | *:NetBSD:*:*) | ||
113 | # Netbsd (nbsd) targets should (where applicable) match one or | ||
114 | # more of the tupples: *-*-netbsdelf*, *-*-netbsdaout*, | ||
115 | # *-*-netbsdecoff* and *-*-netbsd*. For targets that recently | ||
116 | # switched to ELF, *-*-netbsd* would select the old | ||
117 | # object file format. This provides both forward | ||
118 | # compatibility and a consistent mechanism for selecting the | ||
119 | # object file format. | ||
120 | # Determine the machine/vendor (is the vendor relevant). | ||
121 | case "${UNAME_MACHINE}" in | ||
122 | amiga) machine=m68k-cbm ;; | ||
123 | arm32) machine=arm-unknown ;; | ||
124 | atari*) machine=m68k-atari ;; | ||
125 | sun3*) machine=m68k-sun ;; | ||
126 | mac68k) machine=m68k-apple ;; | ||
127 | macppc) machine=powerpc-apple ;; | ||
128 | hp3[0-9][05]) machine=m68k-hp ;; | ||
129 | ibmrt|romp-ibm) machine=romp-ibm ;; | ||
130 | *) machine=${UNAME_MACHINE}-unknown ;; | ||
131 | esac | ||
132 | # The Operating System including object format. | ||
133 | if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \ | ||
134 | | grep __ELF__ >/dev/null | ||
135 | then | ||
136 | # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout). | ||
137 | # Return netbsd for either. FIX? | ||
138 | os=netbsd | ||
139 | else | ||
140 | os=netbsdelf | ||
141 | fi | ||
142 | # The OS release | ||
143 | release=`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'` | ||
144 | # Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM: | ||
145 | # contains redundant information, the shorter form: | ||
146 | # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used. | ||
147 | echo "${machine}-${os}${release}" | ||
148 | exit 0 ;; | ||
149 | alpha:OSF1:*:*) | ||
150 | if test $UNAME_RELEASE = "V4.0"; then | ||
151 | UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'` | ||
152 | fi | ||
153 | # A Vn.n version is a released version. | ||
154 | # A Tn.n version is a released field test version. | ||
155 | # A Xn.n version is an unreleased experimental baselevel. | ||
156 | # 1.2 uses "1.2" for uname -r. | ||
157 | cat <<EOF >$dummy.s | ||
158 | .data | ||
159 | \$Lformat: | ||
160 | .byte 37,100,45,37,120,10,0 # "%d-%x\n" | ||
161 | |||
162 | .text | ||
163 | .globl main | ||
164 | .align 4 | ||
165 | .ent main | ||
166 | main: | ||
167 | .frame \$30,16,\$26,0 | ||
168 | ldgp \$29,0(\$27) | ||
169 | .prologue 1 | ||
170 | .long 0x47e03d80 # implver \$0 | ||
171 | lda \$2,-1 | ||
172 | .long 0x47e20c21 # amask \$2,\$1 | ||
173 | lda \$16,\$Lformat | ||
174 | mov \$0,\$17 | ||
175 | not \$1,\$18 | ||
176 | jsr \$26,printf | ||
177 | ldgp \$29,0(\$26) | ||
178 | mov 0,\$16 | ||
179 | jsr \$26,exit | ||
180 | .end main | ||
181 | EOF | ||
182 | $CC_FOR_BUILD $dummy.s -o $dummy 2>/dev/null | ||
183 | if test "$?" = 0 ; then | ||
184 | case `./$dummy` in | ||
185 | 0-0) | ||
186 | UNAME_MACHINE="alpha" | ||
187 | ;; | ||
188 | 1-0) | ||
189 | UNAME_MACHINE="alphaev5" | ||
190 | ;; | ||
191 | 1-1) | ||
192 | UNAME_MACHINE="alphaev56" | ||
193 | ;; | ||
194 | 1-101) | ||
195 | UNAME_MACHINE="alphapca56" | ||
196 | ;; | ||
197 | 2-303) | ||
198 | UNAME_MACHINE="alphaev6" | ||
199 | ;; | ||
200 | 2-307) | ||
201 | UNAME_MACHINE="alphaev67" | ||
202 | ;; | ||
203 | esac | ||
204 | fi | ||
205 | rm -f $dummy.s $dummy | ||
206 | echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[VTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'` | ||
207 | exit 0 ;; | ||
208 | Alpha\ *:Windows_NT*:*) | ||
209 | # How do we know it's Interix rather than the generic POSIX subsystem? | ||
210 | # Should we change UNAME_MACHINE based on the output of uname instead | ||
211 | # of the specific Alpha model? | ||
212 | echo alpha-pc-interix | ||
213 | exit 0 ;; | ||
214 | 21064:Windows_NT:50:3) | ||
215 | echo alpha-dec-winnt3.5 | ||
216 | exit 0 ;; | ||
217 | Amiga*:UNIX_System_V:4.0:*) | ||
218 | echo m68k-cbm-sysv4 | ||
219 | exit 0;; | ||
220 | amiga:OpenBSD:*:*) | ||
221 | echo m68k-unknown-openbsd${UNAME_RELEASE} | ||
222 | exit 0 ;; | ||
223 | *:[Aa]miga[Oo][Ss]:*:*) | ||
224 | echo ${UNAME_MACHINE}-unknown-amigaos | ||
225 | exit 0 ;; | ||
226 | arc64:OpenBSD:*:*) | ||
227 | echo mips64el-unknown-openbsd${UNAME_RELEASE} | ||
228 | exit 0 ;; | ||
229 | arc:OpenBSD:*:*) | ||
230 | echo mipsel-unknown-openbsd${UNAME_RELEASE} | ||
231 | exit 0 ;; | ||
232 | hkmips:OpenBSD:*:*) | ||
233 | echo mips-unknown-openbsd${UNAME_RELEASE} | ||
234 | exit 0 ;; | ||
235 | pmax:OpenBSD:*:*) | ||
236 | echo mipsel-unknown-openbsd${UNAME_RELEASE} | ||
237 | exit 0 ;; | ||
238 | sgi:OpenBSD:*:*) | ||
239 | echo mips-unknown-openbsd${UNAME_RELEASE} | ||
240 | exit 0 ;; | ||
241 | wgrisc:OpenBSD:*:*) | ||
242 | echo mipsel-unknown-openbsd${UNAME_RELEASE} | ||
243 | exit 0 ;; | ||
244 | *:OS/390:*:*) | ||
245 | echo i370-ibm-openedition | ||
246 | exit 0 ;; | ||
247 | arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*) | ||
248 | echo arm-acorn-riscix${UNAME_RELEASE} | ||
249 | exit 0;; | ||
250 | SR2?01:HI-UX/MPP:*:*) | ||
251 | echo hppa1.1-hitachi-hiuxmpp | ||
252 | exit 0;; | ||
253 | Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*) | ||
254 | # akee@wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE. | ||
255 | if test "`(/bin/universe) 2>/dev/null`" = att ; then | ||
256 | echo pyramid-pyramid-sysv3 | ||
257 | else | ||
258 | echo pyramid-pyramid-bsd | ||
259 | fi | ||
260 | exit 0 ;; | ||
261 | NILE*:*:*:dcosx) | ||
262 | echo pyramid-pyramid-svr4 | ||
263 | exit 0 ;; | ||
264 | sun4H:SunOS:5.*:*) | ||
265 | echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` | ||
266 | exit 0 ;; | ||
267 | sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*) | ||
268 | echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` | ||
269 | exit 0 ;; | ||
270 | i86pc:SunOS:5.*:*) | ||
271 | echo i386-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` | ||
272 | exit 0 ;; | ||
273 | sun4*:SunOS:6*:*) | ||
274 | # According to config.sub, this is the proper way to canonicalize | ||
275 | # SunOS6. Hard to guess exactly what SunOS6 will be like, but | ||
276 | # it's likely to be more like Solaris than SunOS4. | ||
277 | echo sparc-sun-solaris3`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` | ||
278 | exit 0 ;; | ||
279 | sun4*:SunOS:*:*) | ||
280 | case "`/usr/bin/arch -k`" in | ||
281 | Series*|S4*) | ||
282 | UNAME_RELEASE=`uname -v` | ||
283 | ;; | ||
284 | esac | ||
285 | # Japanese Language versions have a version number like `4.1.3-JL'. | ||
286 | echo sparc-sun-sunos`echo ${UNAME_RELEASE}|sed -e 's/-/_/'` | ||
287 | exit 0 ;; | ||
288 | sun3*:SunOS:*:*) | ||
289 | echo m68k-sun-sunos${UNAME_RELEASE} | ||
290 | exit 0 ;; | ||
291 | sun*:*:4.2BSD:*) | ||
292 | UNAME_RELEASE=`(head -1 /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null` | ||
293 | test "x${UNAME_RELEASE}" = "x" && UNAME_RELEASE=3 | ||
294 | case "`/bin/arch`" in | ||
295 | sun3) | ||
296 | echo m68k-sun-sunos${UNAME_RELEASE} | ||
297 | ;; | ||
298 | sun4) | ||
299 | echo sparc-sun-sunos${UNAME_RELEASE} | ||
300 | ;; | ||
301 | esac | ||
302 | exit 0 ;; | ||
303 | aushp:SunOS:*:*) | ||
304 | echo sparc-auspex-sunos${UNAME_RELEASE} | ||
305 | exit 0 ;; | ||
306 | atari*:OpenBSD:*:*) | ||
307 | echo m68k-unknown-openbsd${UNAME_RELEASE} | ||
308 | exit 0 ;; | ||
309 | # The situation for MiNT is a little confusing. The machine name | ||
310 | # can be virtually everything (everything which is not | ||
311 | # "atarist" or "atariste" at least should have a processor | ||
312 | # > m68000). The system name ranges from "MiNT" over "FreeMiNT" | ||
313 | # to the lowercase version "mint" (or "freemint"). Finally | ||
314 | # the system name "TOS" denotes a system which is actually not | ||
315 | # MiNT. But MiNT is downward compatible to TOS, so this should | ||
316 | # be no problem. | ||
317 | atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*) | ||
318 | echo m68k-atari-mint${UNAME_RELEASE} | ||
319 | exit 0 ;; | ||
320 | atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*) | ||
321 | echo m68k-atari-mint${UNAME_RELEASE} | ||
322 | exit 0 ;; | ||
323 | *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*) | ||
324 | echo m68k-atari-mint${UNAME_RELEASE} | ||
325 | exit 0 ;; | ||
326 | milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*) | ||
327 | echo m68k-milan-mint${UNAME_RELEASE} | ||
328 | exit 0 ;; | ||
329 | hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*) | ||
330 | echo m68k-hades-mint${UNAME_RELEASE} | ||
331 | exit 0 ;; | ||
332 | *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*) | ||
333 | echo m68k-unknown-mint${UNAME_RELEASE} | ||
334 | exit 0 ;; | ||
335 | sun3*:OpenBSD:*:*) | ||
336 | echo m68k-unknown-openbsd${UNAME_RELEASE} | ||
337 | exit 0 ;; | ||
338 | mac68k:OpenBSD:*:*) | ||
339 | echo m68k-unknown-openbsd${UNAME_RELEASE} | ||
340 | exit 0 ;; | ||
341 | mvme68k:OpenBSD:*:*) | ||
342 | echo m68k-unknown-openbsd${UNAME_RELEASE} | ||
343 | exit 0 ;; | ||
344 | mvme88k:OpenBSD:*:*) | ||
345 | echo m88k-unknown-openbsd${UNAME_RELEASE} | ||
346 | exit 0 ;; | ||
347 | powerpc:machten:*:*) | ||
348 | echo powerpc-apple-machten${UNAME_RELEASE} | ||
349 | exit 0 ;; | ||
350 | RISC*:Mach:*:*) | ||
351 | echo mips-dec-mach_bsd4.3 | ||
352 | exit 0 ;; | ||
353 | RISC*:ULTRIX:*:*) | ||
354 | echo mips-dec-ultrix${UNAME_RELEASE} | ||
355 | exit 0 ;; | ||
356 | VAX*:ULTRIX*:*:*) | ||
357 | echo vax-dec-ultrix${UNAME_RELEASE} | ||
358 | exit 0 ;; | ||
359 | 2020:CLIX:*:* | 2430:CLIX:*:*) | ||
360 | echo clipper-intergraph-clix${UNAME_RELEASE} | ||
361 | exit 0 ;; | ||
362 | mips:*:*:UMIPS | mips:*:*:RISCos) | ||
363 | sed 's/^ //' << EOF >$dummy.c | ||
364 | #ifdef __cplusplus | ||
365 | #include <stdio.h> /* for printf() prototype */ | ||
366 | int main (int argc, char *argv[]) { | ||
367 | #else | ||
368 | int main (argc, argv) int argc; char *argv[]; { | ||
369 | #endif | ||
370 | #if defined (host_mips) && defined (MIPSEB) | ||
371 | #if defined (SYSTYPE_SYSV) | ||
372 | printf ("mips-mips-riscos%ssysv\n", argv[1]); exit (0); | ||
373 | #endif | ||
374 | #if defined (SYSTYPE_SVR4) | ||
375 | printf ("mips-mips-riscos%ssvr4\n", argv[1]); exit (0); | ||
376 | #endif | ||
377 | #if defined (SYSTYPE_BSD43) || defined(SYSTYPE_BSD) | ||
378 | printf ("mips-mips-riscos%sbsd\n", argv[1]); exit (0); | ||
379 | #endif | ||
380 | #endif | ||
381 | exit (-1); | ||
382 | } | ||
383 | EOF | ||
384 | $CC_FOR_BUILD $dummy.c -o $dummy \ | ||
385 | && ./$dummy `echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` \ | ||
386 | && rm $dummy.c $dummy && exit 0 | ||
387 | rm -f $dummy.c $dummy | ||
388 | echo mips-mips-riscos${UNAME_RELEASE} | ||
389 | exit 0 ;; | ||
390 | Night_Hawk:Power_UNIX:*:*) | ||
391 | echo powerpc-harris-powerunix | ||
392 | exit 0 ;; | ||
393 | m88k:CX/UX:7*:*) | ||
394 | echo m88k-harris-cxux7 | ||
395 | exit 0 ;; | ||
396 | m88k:*:4*:R4*) | ||
397 | echo m88k-motorola-sysv4 | ||
398 | exit 0 ;; | ||
399 | m88k:*:3*:R3*) | ||
400 | echo m88k-motorola-sysv3 | ||
401 | exit 0 ;; | ||
402 | AViiON:dgux:*:*) | ||
403 | # DG/UX returns AViiON for all architectures | ||
404 | UNAME_PROCESSOR=`/usr/bin/uname -p` | ||
405 | if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110 ] | ||
406 | then | ||
407 | if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx ] || \ | ||
408 | [ ${TARGET_BINARY_INTERFACE}x = x ] | ||
409 | then | ||
410 | echo m88k-dg-dgux${UNAME_RELEASE} | ||
411 | else | ||
412 | echo m88k-dg-dguxbcs${UNAME_RELEASE} | ||
413 | fi | ||
414 | else | ||
415 | echo i586-dg-dgux${UNAME_RELEASE} | ||
416 | fi | ||
417 | exit 0 ;; | ||
418 | M88*:DolphinOS:*:*) # DolphinOS (SVR3) | ||
419 | echo m88k-dolphin-sysv3 | ||
420 | exit 0 ;; | ||
421 | M88*:*:R3*:*) | ||
422 | # Delta 88k system running SVR3 | ||
423 | echo m88k-motorola-sysv3 | ||
424 | exit 0 ;; | ||
425 | XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3) | ||
426 | echo m88k-tektronix-sysv3 | ||
427 | exit 0 ;; | ||
428 | Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD) | ||
429 | echo m68k-tektronix-bsd | ||
430 | exit 0 ;; | ||
431 | *:IRIX*:*:*) | ||
432 | echo mips-sgi-irix`echo ${UNAME_RELEASE}|sed -e 's/-/_/g'` | ||
433 | exit 0 ;; | ||
434 | ????????:AIX?:[12].1:2) # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX. | ||
435 | echo romp-ibm-aix # uname -m gives an 8 hex-code CPU id | ||
436 | exit 0 ;; # Note that: echo "'`uname -s`'" gives 'AIX ' | ||
437 | i?86:AIX:*:*) | ||
438 | echo i386-ibm-aix | ||
439 | exit 0 ;; | ||
440 | *:AIX:2:3) | ||
441 | if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then | ||
442 | sed 's/^ //' << EOF >$dummy.c | ||
443 | #include <sys/systemcfg.h> | ||
444 | |||
445 | main() | ||
446 | { | ||
447 | if (!__power_pc()) | ||
448 | exit(1); | ||
449 | puts("powerpc-ibm-aix3.2.5"); | ||
450 | exit(0); | ||
451 | } | ||
452 | EOF | ||
453 | $CC_FOR_BUILD $dummy.c -o $dummy && ./$dummy && rm $dummy.c $dummy && exit 0 | ||
454 | rm -f $dummy.c $dummy | ||
455 | echo rs6000-ibm-aix3.2.5 | ||
456 | elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then | ||
457 | echo rs6000-ibm-aix3.2.4 | ||
458 | else | ||
459 | echo rs6000-ibm-aix3.2 | ||
460 | fi | ||
461 | exit 0 ;; | ||
462 | *:AIX:*:4) | ||
463 | IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | head -1 | awk '{ print $1 }'` | ||
464 | if /usr/sbin/lsattr -EHl ${IBM_CPU_ID} | grep POWER >/dev/null 2>&1; then | ||
465 | IBM_ARCH=rs6000 | ||
466 | else | ||
467 | IBM_ARCH=powerpc | ||
468 | fi | ||
469 | if [ -x /usr/bin/oslevel ] ; then | ||
470 | IBM_REV=`/usr/bin/oslevel` | ||
471 | else | ||
472 | IBM_REV=4.${UNAME_RELEASE} | ||
473 | fi | ||
474 | echo ${IBM_ARCH}-ibm-aix${IBM_REV} | ||
475 | exit 0 ;; | ||
476 | *:AIX:*:*) | ||
477 | echo rs6000-ibm-aix | ||
478 | exit 0 ;; | ||
479 | ibmrt:4.4BSD:*|romp-ibm:BSD:*) | ||
480 | echo romp-ibm-bsd4.4 | ||
481 | exit 0 ;; | ||
482 | ibmrt:*BSD:*|romp-ibm:BSD:*) # covers RT/PC BSD and | ||
483 | echo romp-ibm-bsd${UNAME_RELEASE} # 4.3 with uname added to | ||
484 | exit 0 ;; # report: romp-ibm BSD 4.3 | ||
485 | *:BOSX:*:*) | ||
486 | echo rs6000-bull-bosx | ||
487 | exit 0 ;; | ||
488 | DPX/2?00:B.O.S.:*:*) | ||
489 | echo m68k-bull-sysv3 | ||
490 | exit 0 ;; | ||
491 | 9000/[34]??:4.3bsd:1.*:*) | ||
492 | echo m68k-hp-bsd | ||
493 | exit 0 ;; | ||
494 | hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*) | ||
495 | echo m68k-hp-bsd4.4 | ||
496 | exit 0 ;; | ||
497 | 9000/[34678]??:HP-UX:*:*) | ||
498 | case "${UNAME_MACHINE}" in | ||
499 | 9000/31? ) HP_ARCH=m68000 ;; | ||
500 | 9000/[34]?? ) HP_ARCH=m68k ;; | ||
501 | 9000/[678][0-9][0-9]) | ||
502 | sed 's/^ //' << EOF >$dummy.c | ||
503 | |||
504 | #define _HPUX_SOURCE | ||
505 | #include <stdlib.h> | ||
506 | #include <unistd.h> | ||
507 | |||
508 | int main () | ||
509 | { | ||
510 | #if defined(_SC_KERNEL_BITS) | ||
511 | long bits = sysconf(_SC_KERNEL_BITS); | ||
512 | #endif | ||
513 | long cpu = sysconf (_SC_CPU_VERSION); | ||
514 | |||
515 | switch (cpu) | ||
516 | { | ||
517 | case CPU_PA_RISC1_0: puts ("hppa1.0"); break; | ||
518 | case CPU_PA_RISC1_1: puts ("hppa1.1"); break; | ||
519 | case CPU_PA_RISC2_0: | ||
520 | #if defined(_SC_KERNEL_BITS) | ||
521 | switch (bits) | ||
522 | { | ||
523 | case 64: puts ("hppa2.0w"); break; | ||
524 | case 32: puts ("hppa2.0n"); break; | ||
525 | default: puts ("hppa2.0"); break; | ||
526 | } break; | ||
527 | #else /* !defined(_SC_KERNEL_BITS) */ | ||
528 | puts ("hppa2.0"); break; | ||
529 | #endif | ||
530 | default: puts ("hppa1.0"); break; | ||
531 | } | ||
532 | exit (0); | ||
533 | } | ||
534 | EOF | ||
535 | (CCOPTS= $CC_FOR_BUILD $dummy.c -o $dummy 2>/dev/null ) && HP_ARCH=`./$dummy` | ||
536 | rm -f $dummy.c $dummy | ||
537 | esac | ||
538 | HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'` | ||
539 | echo ${HP_ARCH}-hp-hpux${HPUX_REV} | ||
540 | exit 0 ;; | ||
541 | 3050*:HI-UX:*:*) | ||
542 | sed 's/^ //' << EOF >$dummy.c | ||
543 | #include <unistd.h> | ||
544 | int | ||
545 | main () | ||
546 | { | ||
547 | long cpu = sysconf (_SC_CPU_VERSION); | ||
548 | /* The order matters, because CPU_IS_HP_MC68K erroneously returns | ||
549 | true for CPU_PA_RISC1_0. CPU_IS_PA_RISC returns correct | ||
550 | results, however. */ | ||
551 | if (CPU_IS_PA_RISC (cpu)) | ||
552 | { | ||
553 | switch (cpu) | ||
554 | { | ||
555 | case CPU_PA_RISC1_0: puts ("hppa1.0-hitachi-hiuxwe2"); break; | ||
556 | case CPU_PA_RISC1_1: puts ("hppa1.1-hitachi-hiuxwe2"); break; | ||
557 | case CPU_PA_RISC2_0: puts ("hppa2.0-hitachi-hiuxwe2"); break; | ||
558 | default: puts ("hppa-hitachi-hiuxwe2"); break; | ||
559 | } | ||
560 | } | ||
561 | else if (CPU_IS_HP_MC68K (cpu)) | ||
562 | puts ("m68k-hitachi-hiuxwe2"); | ||
563 | else puts ("unknown-hitachi-hiuxwe2"); | ||
564 | exit (0); | ||
565 | } | ||
566 | EOF | ||
567 | $CC_FOR_BUILD $dummy.c -o $dummy && ./$dummy && rm $dummy.c $dummy && exit 0 | ||
568 | rm -f $dummy.c $dummy | ||
569 | echo unknown-hitachi-hiuxwe2 | ||
570 | exit 0 ;; | ||
571 | 9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* ) | ||
572 | echo hppa1.1-hp-bsd | ||
573 | exit 0 ;; | ||
574 | 9000/8??:4.3bsd:*:*) | ||
575 | echo hppa1.0-hp-bsd | ||
576 | exit 0 ;; | ||
577 | *9??*:MPE/iX:*:*) | ||
578 | echo hppa1.0-hp-mpeix | ||
579 | exit 0 ;; | ||
580 | hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* ) | ||
581 | echo hppa1.1-hp-osf | ||
582 | exit 0 ;; | ||
583 | hp8??:OSF1:*:*) | ||
584 | echo hppa1.0-hp-osf | ||
585 | exit 0 ;; | ||
586 | i?86:OSF1:*:*) | ||
587 | if [ -x /usr/sbin/sysversion ] ; then | ||
588 | echo ${UNAME_MACHINE}-unknown-osf1mk | ||
589 | else | ||
590 | echo ${UNAME_MACHINE}-unknown-osf1 | ||
591 | fi | ||
592 | exit 0 ;; | ||
593 | parisc*:Lites*:*:*) | ||
594 | echo hppa1.1-hp-lites | ||
595 | exit 0 ;; | ||
596 | hppa*:OpenBSD:*:*) | ||
597 | echo hppa-unknown-openbsd | ||
598 | exit 0 ;; | ||
599 | C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*) | ||
600 | echo c1-convex-bsd | ||
601 | exit 0 ;; | ||
602 | C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*) | ||
603 | if getsysinfo -f scalar_acc | ||
604 | then echo c32-convex-bsd | ||
605 | else echo c2-convex-bsd | ||
606 | fi | ||
607 | exit 0 ;; | ||
608 | C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*) | ||
609 | echo c34-convex-bsd | ||
610 | exit 0 ;; | ||
611 | C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*) | ||
612 | echo c38-convex-bsd | ||
613 | exit 0 ;; | ||
614 | C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*) | ||
615 | echo c4-convex-bsd | ||
616 | exit 0 ;; | ||
617 | CRAY*X-MP:*:*:*) | ||
618 | echo xmp-cray-unicos | ||
619 | exit 0 ;; | ||
620 | CRAY*Y-MP:*:*:*) | ||
621 | echo ymp-cray-unicos${UNAME_RELEASE} | ||
622 | exit 0 ;; | ||
623 | CRAY*[A-Z]90:*:*:*) | ||
624 | echo ${UNAME_MACHINE}-cray-unicos${UNAME_RELEASE} \ | ||
625 | | sed -e 's/CRAY.*\([A-Z]90\)/\1/' \ | ||
626 | -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ | ||
627 | exit 0 ;; | ||
628 | CRAY*TS:*:*:*) | ||
629 | echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' | ||
630 | exit 0 ;; | ||
631 | CRAY*T3E:*:*:*) | ||
632 | echo alpha-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' | ||
633 | exit 0 ;; | ||
634 | CRAY*SV1:*:*:*) | ||
635 | echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' | ||
636 | exit 0 ;; | ||
637 | CRAY-2:*:*:*) | ||
638 | echo cray2-cray-unicos | ||
639 | exit 0 ;; | ||
640 | F300:UNIX_System_V:*:*) | ||
641 | FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'` | ||
642 | FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'` | ||
643 | echo "f300-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}" | ||
644 | exit 0 ;; | ||
645 | F301:UNIX_System_V:*:*) | ||
646 | echo f301-fujitsu-uxpv`echo $UNAME_RELEASE | sed 's/ .*//'` | ||
647 | exit 0 ;; | ||
648 | hp300:OpenBSD:*:*) | ||
649 | echo m68k-unknown-openbsd${UNAME_RELEASE} | ||
650 | exit 0 ;; | ||
651 | i?86:BSD/386:*:* | i?86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*) | ||
652 | echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE} | ||
653 | exit 0 ;; | ||
654 | sparc*:BSD/OS:*:*) | ||
655 | echo sparc-unknown-bsdi${UNAME_RELEASE} | ||
656 | exit 0 ;; | ||
657 | *:BSD/OS:*:*) | ||
658 | echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE} | ||
659 | exit 0 ;; | ||
660 | *:FreeBSD:*:*) | ||
661 | echo ${UNAME_MACHINE}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` | ||
662 | exit 0 ;; | ||
663 | *:OpenBSD:*:*) | ||
664 | echo ${UNAME_MACHINE}-unknown-openbsd`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'` | ||
665 | exit 0 ;; | ||
666 | i*:CYGWIN*:*) | ||
667 | echo ${UNAME_MACHINE}-pc-cygwin | ||
668 | exit 0 ;; | ||
669 | i*:MINGW*:*) | ||
670 | echo ${UNAME_MACHINE}-pc-mingw32 | ||
671 | exit 0 ;; | ||
672 | i*:Windows_NT*:* | Pentium*:Windows_NT*:*) | ||
673 | # How do we know it's Interix rather than the generic POSIX subsystem? | ||
674 | # It also conflicts with pre-2.0 versions of AT&T UWIN. Should we | ||
675 | # UNAME_MACHINE based on the output of uname instead of i386? | ||
676 | echo i386-pc-interix | ||
677 | exit 0 ;; | ||
678 | i*:UWIN*:*) | ||
679 | echo ${UNAME_MACHINE}-pc-uwin | ||
680 | exit 0 ;; | ||
681 | p*:CYGWIN*:*) | ||
682 | echo powerpcle-unknown-cygwin | ||
683 | exit 0 ;; | ||
684 | prep*:SunOS:5.*:*) | ||
685 | echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` | ||
686 | exit 0 ;; | ||
687 | *:GNU:*:*) | ||
688 | echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'` | ||
689 | exit 0 ;; | ||
690 | *:Linux:*:*) | ||
691 | |||
692 | # The BFD linker knows what the default object file format is, so | ||
693 | # first see if it will tell us. cd to the root directory to prevent | ||
694 | # problems with other programs or directories called `ld' in the path. | ||
695 | ld_help_string=`cd /; ld --help 2>&1` | ||
696 | ld_supported_emulations=`echo $ld_help_string \ | ||
697 | | sed -ne '/supported emulations:/!d | ||
698 | s/[ ][ ]*/ /g | ||
699 | s/.*supported emulations: *// | ||
700 | s/ .*// | ||
701 | p'` | ||
702 | case "$ld_supported_emulations" in | ||
703 | *ia64) | ||
704 | echo "${UNAME_MACHINE}-unknown-linux" | ||
705 | exit 0 | ||
706 | ;; | ||
707 | i?86linux) | ||
708 | echo "${UNAME_MACHINE}-pc-linux-gnuaout" | ||
709 | exit 0 | ||
710 | ;; | ||
711 | elf_i?86) | ||
712 | echo "${UNAME_MACHINE}-pc-linux" | ||
713 | exit 0 | ||
714 | ;; | ||
715 | i?86coff) | ||
716 | echo "${UNAME_MACHINE}-pc-linux-gnucoff" | ||
717 | exit 0 | ||
718 | ;; | ||
719 | sparclinux) | ||
720 | echo "${UNAME_MACHINE}-unknown-linux-gnuaout" | ||
721 | exit 0 | ||
722 | ;; | ||
723 | armlinux) | ||
724 | echo "${UNAME_MACHINE}-unknown-linux-gnuaout" | ||
725 | exit 0 | ||
726 | ;; | ||
727 | elf32arm*) | ||
728 | echo "${UNAME_MACHINE}-unknown-linux-gnuoldld" | ||
729 | exit 0 | ||
730 | ;; | ||
731 | armelf_linux*) | ||
732 | echo "${UNAME_MACHINE}-unknown-linux-gnu" | ||
733 | exit 0 | ||
734 | ;; | ||
735 | m68klinux) | ||
736 | echo "${UNAME_MACHINE}-unknown-linux-gnuaout" | ||
737 | exit 0 | ||
738 | ;; | ||
739 | elf32ppc | elf32ppclinux) | ||
740 | # Determine Lib Version | ||
741 | cat >$dummy.c <<EOF | ||
742 | #include <features.h> | ||
743 | #if defined(__GLIBC__) | ||
744 | extern char __libc_version[]; | ||
745 | extern char __libc_release[]; | ||
746 | #endif | ||
747 | main(argc, argv) | ||
748 | int argc; | ||
749 | char *argv[]; | ||
750 | { | ||
751 | #if defined(__GLIBC__) | ||
752 | printf("%s %s\n", __libc_version, __libc_release); | ||
753 | #else | ||
754 | printf("unkown\n"); | ||
755 | #endif | ||
756 | return 0; | ||
757 | } | ||
758 | EOF | ||
759 | LIBC="" | ||
760 | $CC_FOR_BUILD $dummy.c -o $dummy 2>/dev/null | ||
761 | if test "$?" = 0 ; then | ||
762 | ./$dummy | grep 1\.99 > /dev/null | ||
763 | if test "$?" = 0 ; then | ||
764 | LIBC="libc1" | ||
765 | fi | ||
766 | fi | ||
767 | rm -f $dummy.c $dummy | ||
768 | echo powerpc-unknown-linux-gnu${LIBC} | ||
769 | exit 0 | ||
770 | ;; | ||
771 | shelf_linux) | ||
772 | echo "${UNAME_MACHINE}-unknown-linux-gnu" | ||
773 | exit 0 | ||
774 | ;; | ||
775 | esac | ||
776 | |||
777 | if test "${UNAME_MACHINE}" = "alpha" ; then | ||
778 | cat <<EOF >$dummy.s | ||
779 | .data | ||
780 | \$Lformat: | ||
781 | .byte 37,100,45,37,120,10,0 # "%d-%x\n" | ||
782 | |||
783 | .text | ||
784 | .globl main | ||
785 | .align 4 | ||
786 | .ent main | ||
787 | main: | ||
788 | .frame \$30,16,\$26,0 | ||
789 | ldgp \$29,0(\$27) | ||
790 | .prologue 1 | ||
791 | .long 0x47e03d80 # implver \$0 | ||
792 | lda \$2,-1 | ||
793 | .long 0x47e20c21 # amask \$2,\$1 | ||
794 | lda \$16,\$Lformat | ||
795 | mov \$0,\$17 | ||
796 | not \$1,\$18 | ||
797 | jsr \$26,printf | ||
798 | ldgp \$29,0(\$26) | ||
799 | mov 0,\$16 | ||
800 | jsr \$26,exit | ||
801 | .end main | ||
802 | EOF | ||
803 | LIBC="" | ||
804 | $CC_FOR_BUILD $dummy.s -o $dummy 2>/dev/null | ||
805 | if test "$?" = 0 ; then | ||
806 | case `./$dummy` in | ||
807 | 0-0) | ||
808 | UNAME_MACHINE="alpha" | ||
809 | ;; | ||
810 | 1-0) | ||
811 | UNAME_MACHINE="alphaev5" | ||
812 | ;; | ||
813 | 1-1) | ||
814 | UNAME_MACHINE="alphaev56" | ||
815 | ;; | ||
816 | 1-101) | ||
817 | UNAME_MACHINE="alphapca56" | ||
818 | ;; | ||
819 | 2-303) | ||
820 | UNAME_MACHINE="alphaev6" | ||
821 | ;; | ||
822 | 2-307) | ||
823 | UNAME_MACHINE="alphaev67" | ||
824 | ;; | ||
825 | esac | ||
826 | |||
827 | objdump --private-headers $dummy | \ | ||
828 | grep ld.so.1 > /dev/null | ||
829 | if test "$?" = 0 ; then | ||
830 | LIBC="libc1" | ||
831 | fi | ||
832 | fi | ||
833 | rm -f $dummy.s $dummy | ||
834 | echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC} ; exit 0 | ||
835 | elif test "${UNAME_MACHINE}" = "mips" ; then | ||
836 | cat >$dummy.c <<EOF | ||
837 | #ifdef __cplusplus | ||
838 | #include <stdio.h> /* for printf() prototype */ | ||
839 | int main (int argc, char *argv[]) { | ||
840 | #else | ||
841 | int main (argc, argv) int argc; char *argv[]; { | ||
842 | #endif | ||
843 | #ifdef __MIPSEB__ | ||
844 | printf ("%s-unknown-linux-gnu\n", argv[1]); | ||
845 | #endif | ||
846 | #ifdef __MIPSEL__ | ||
847 | printf ("%sel-unknown-linux-gnu\n", argv[1]); | ||
848 | #endif | ||
849 | return 0; | ||
850 | } | ||
851 | EOF | ||
852 | $CC_FOR_BUILD $dummy.c -o $dummy 2>/dev/null && ./$dummy "${UNAME_MACHINE}" && rm $dummy.c $dummy && exit 0 | ||
853 | rm -f $dummy.c $dummy | ||
854 | elif test "${UNAME_MACHINE}" = "s390"; then | ||
855 | echo s390-ibm-linux && exit 0 | ||
856 | else | ||
857 | # Either a pre-BFD a.out linker (linux-gnuoldld) | ||
858 | # or one that does not give us useful --help. | ||
859 | # GCC wants to distinguish between linux-gnuoldld and linux-gnuaout. | ||
860 | # If ld does not provide *any* "supported emulations:" | ||
861 | # that means it is gnuoldld. | ||
862 | echo "$ld_help_string" | grep >/dev/null 2>&1 "supported emulations:" | ||
863 | test $? != 0 && echo "${UNAME_MACHINE}-pc-linux-gnuoldld" && exit 0 | ||
864 | |||
865 | case "${UNAME_MACHINE}" in | ||
866 | i?86) | ||
867 | VENDOR=pc; | ||
868 | ;; | ||
869 | *) | ||
870 | VENDOR=unknown; | ||
871 | ;; | ||
872 | esac | ||
873 | # Determine whether the default compiler is a.out or elf | ||
874 | cat >$dummy.c <<EOF | ||
875 | #include <features.h> | ||
876 | #ifdef __cplusplus | ||
877 | #include <stdio.h> /* for printf() prototype */ | ||
878 | int main (int argc, char *argv[]) { | ||
879 | #else | ||
880 | int main (argc, argv) int argc; char *argv[]; { | ||
881 | #endif | ||
882 | #ifdef __ELF__ | ||
883 | # ifdef __GLIBC__ | ||
884 | # if __GLIBC__ >= 2 | ||
885 | printf ("%s-${VENDOR}-linux-gnu\n", argv[1]); | ||
886 | # else | ||
887 | printf ("%s-${VENDOR}-linux-gnulibc1\n", argv[1]); | ||
888 | # endif | ||
889 | # else | ||
890 | printf ("%s-${VENDOR}-linux-gnulibc1\n", argv[1]); | ||
891 | # endif | ||
892 | #else | ||
893 | printf ("%s-${VENDOR}-linux-gnuaout\n", argv[1]); | ||
894 | #endif | ||
895 | return 0; | ||
896 | } | ||
897 | EOF | ||
898 | $CC_FOR_BUILD $dummy.c -o $dummy 2>/dev/null && ./$dummy "${UNAME_MACHINE}" && rm $dummy.c $dummy && exit 0 | ||
899 | rm -f $dummy.c $dummy | ||
900 | fi ;; | ||
901 | # ptx 4.0 does uname -s correctly, with DYNIX/ptx in there. earlier versions | ||
902 | # are messed up and put the nodename in both sysname and nodename. | ||
903 | i?86:DYNIX/ptx:4*:*) | ||
904 | echo i386-sequent-sysv4 | ||
905 | exit 0 ;; | ||
906 | i?86:UNIX_SV:4.2MP:2.*) | ||
907 | # Unixware is an offshoot of SVR4, but it has its own version | ||
908 | # number series starting with 2... | ||
909 | # I am not positive that other SVR4 systems won't match this, | ||
910 | # I just have to hope. -- rms. | ||
911 | # Use sysv4.2uw... so that sysv4* matches it. | ||
912 | echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION} | ||
913 | exit 0 ;; | ||
914 | i?86:*:4.*:* | i?86:SYSTEM_V:4.*:*) | ||
915 | UNAME_REL=`echo ${UNAME_RELEASE} | sed 's/\/MP$//'` | ||
916 | if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then | ||
917 | echo ${UNAME_MACHINE}-univel-sysv${UNAME_REL} | ||
918 | else | ||
919 | echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL} | ||
920 | fi | ||
921 | exit 0 ;; | ||
922 | i?86:*:5:7*) | ||
923 | # Fixed at (any) Pentium or better | ||
924 | UNAME_MACHINE=i586 | ||
925 | if [ ${UNAME_SYSTEM} = "UnixWare" ] ; then | ||
926 | echo ${UNAME_MACHINE}-sco-sysv${UNAME_RELEASE}uw${UNAME_VERSION} | ||
927 | else | ||
928 | echo ${UNAME_MACHINE}-pc-sysv${UNAME_RELEASE} | ||
929 | fi | ||
930 | exit 0 ;; | ||
931 | i?86:*:3.2:*) | ||
932 | if test -f /usr/options/cb.name; then | ||
933 | UNAME_REL=`sed -n 's/.*Version //p' </usr/options/cb.name` | ||
934 | echo ${UNAME_MACHINE}-pc-isc$UNAME_REL | ||
935 | elif /bin/uname -X 2>/dev/null >/dev/null ; then | ||
936 | UNAME_REL=`(/bin/uname -X|egrep Release|sed -e 's/.*= //')` | ||
937 | (/bin/uname -X|egrep i80486 >/dev/null) && UNAME_MACHINE=i486 | ||
938 | (/bin/uname -X|egrep '^Machine.*Pentium' >/dev/null) \ | ||
939 | && UNAME_MACHINE=i586 | ||
940 | (/bin/uname -X|egrep '^Machine.*Pent ?II' >/dev/null) \ | ||
941 | && UNAME_MACHINE=i686 | ||
942 | (/bin/uname -X|egrep '^Machine.*Pentium Pro' >/dev/null) \ | ||
943 | && UNAME_MACHINE=i686 | ||
944 | echo ${UNAME_MACHINE}-pc-sco$UNAME_REL | ||
945 | else | ||
946 | echo ${UNAME_MACHINE}-pc-sysv32 | ||
947 | fi | ||
948 | exit 0 ;; | ||
949 | i?86:*DOS:*:*) | ||
950 | echo ${UNAME_MACHINE}-pc-msdosdjgpp | ||
951 | exit 0 ;; | ||
952 | pc:*:*:*) | ||
953 | # Left here for compatibility: | ||
954 | # uname -m prints for DJGPP always 'pc', but it prints nothing about | ||
955 | # the processor, so we play safe by assuming i386. | ||
956 | echo i386-pc-msdosdjgpp | ||
957 | exit 0 ;; | ||
958 | Intel:Mach:3*:*) | ||
959 | echo i386-pc-mach3 | ||
960 | exit 0 ;; | ||
961 | paragon:*:*:*) | ||
962 | echo i860-intel-osf1 | ||
963 | exit 0 ;; | ||
964 | i860:*:4.*:*) # i860-SVR4 | ||
965 | if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then | ||
966 | echo i860-stardent-sysv${UNAME_RELEASE} # Stardent Vistra i860-SVR4 | ||
967 | else # Add other i860-SVR4 vendors below as they are discovered. | ||
968 | echo i860-unknown-sysv${UNAME_RELEASE} # Unknown i860-SVR4 | ||
969 | fi | ||
970 | exit 0 ;; | ||
971 | mini*:CTIX:SYS*5:*) | ||
972 | # "miniframe" | ||
973 | echo m68010-convergent-sysv | ||
974 | exit 0 ;; | ||
975 | M68*:*:R3V[567]*:*) | ||
976 | test -r /sysV68 && echo 'm68k-motorola-sysv' && exit 0 ;; | ||
977 | 3[34]??:*:4.0:3.0 | 3[34]??,*:*:4.0:3.0 | 4850:*:4.0:3.0) | ||
978 | OS_REL='' | ||
979 | test -r /etc/.relid \ | ||
980 | && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid` | ||
981 | /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ | ||
982 | && echo i486-ncr-sysv4.3${OS_REL} && exit 0 | ||
983 | /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \ | ||
984 | && echo i586-ncr-sysv4.3${OS_REL} && exit 0 ;; | ||
985 | 3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*) | ||
986 | /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ | ||
987 | && echo i486-ncr-sysv4 && exit 0 ;; | ||
988 | m68*:LynxOS:2.*:*) | ||
989 | echo m68k-unknown-lynxos${UNAME_RELEASE} | ||
990 | exit 0 ;; | ||
991 | mc68030:UNIX_System_V:4.*:*) | ||
992 | echo m68k-atari-sysv4 | ||
993 | exit 0 ;; | ||
994 | i?86:LynxOS:2.*:* | i?86:LynxOS:3.[01]*:*) | ||
995 | echo i386-unknown-lynxos${UNAME_RELEASE} | ||
996 | exit 0 ;; | ||
997 | TSUNAMI:LynxOS:2.*:*) | ||
998 | echo sparc-unknown-lynxos${UNAME_RELEASE} | ||
999 | exit 0 ;; | ||
1000 | rs6000:LynxOS:2.*:* | PowerPC:LynxOS:2.*:*) | ||
1001 | echo rs6000-unknown-lynxos${UNAME_RELEASE} | ||
1002 | exit 0 ;; | ||
1003 | SM[BE]S:UNIX_SV:*:*) | ||
1004 | echo mips-dde-sysv${UNAME_RELEASE} | ||
1005 | exit 0 ;; | ||
1006 | RM*:ReliantUNIX-*:*:*) | ||
1007 | echo mips-sni-sysv4 | ||
1008 | exit 0 ;; | ||
1009 | RM*:SINIX-*:*:*) | ||
1010 | echo mips-sni-sysv4 | ||
1011 | exit 0 ;; | ||
1012 | *:SINIX-*:*:*) | ||
1013 | if uname -p 2>/dev/null >/dev/null ; then | ||
1014 | UNAME_MACHINE=`(uname -p) 2>/dev/null` | ||
1015 | echo ${UNAME_MACHINE}-sni-sysv4 | ||
1016 | else | ||
1017 | echo ns32k-sni-sysv | ||
1018 | fi | ||
1019 | exit 0 ;; | ||
1020 | PENTIUM:CPunix:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort | ||
1021 | # says <Richard.M.Bartel@ccMail.Census.GOV> | ||
1022 | echo i586-unisys-sysv4 | ||
1023 | exit 0 ;; | ||
1024 | *:UNIX_System_V:4*:FTX*) | ||
1025 | # From Gerald Hewes <hewes@openmarket.com>. | ||
1026 | # How about differentiating between stratus architectures? -djm | ||
1027 | echo hppa1.1-stratus-sysv4 | ||
1028 | exit 0 ;; | ||
1029 | *:*:*:FTX*) | ||
1030 | # From seanf@swdc.stratus.com. | ||
1031 | echo i860-stratus-sysv4 | ||
1032 | exit 0 ;; | ||
1033 | mc68*:A/UX:*:*) | ||
1034 | echo m68k-apple-aux${UNAME_RELEASE} | ||
1035 | exit 0 ;; | ||
1036 | news*:NEWS-OS:*:6*) | ||
1037 | echo mips-sony-newsos6 | ||
1038 | exit 0 ;; | ||
1039 | R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*) | ||
1040 | if [ -d /usr/nec ]; then | ||
1041 | echo mips-nec-sysv${UNAME_RELEASE} | ||
1042 | else | ||
1043 | echo mips-unknown-sysv${UNAME_RELEASE} | ||
1044 | fi | ||
1045 | exit 0 ;; | ||
1046 | BeBox:BeOS:*:*) # BeOS running on hardware made by Be, PPC only. | ||
1047 | echo powerpc-be-beos | ||
1048 | exit 0 ;; | ||
1049 | BeMac:BeOS:*:*) # BeOS running on Mac or Mac clone, PPC only. | ||
1050 | echo powerpc-apple-beos | ||
1051 | exit 0 ;; | ||
1052 | BePC:BeOS:*:*) # BeOS running on Intel PC compatible. | ||
1053 | echo i586-pc-beos | ||
1054 | exit 0 ;; | ||
1055 | SX-4:SUPER-UX:*:*) | ||
1056 | echo sx4-nec-superux${UNAME_RELEASE} | ||
1057 | exit 0 ;; | ||
1058 | SX-5:SUPER-UX:*:*) | ||
1059 | echo sx5-nec-superux${UNAME_RELEASE} | ||
1060 | exit 0 ;; | ||
1061 | Power*:Rhapsody:*:*) | ||
1062 | echo powerpc-apple-rhapsody${UNAME_RELEASE} | ||
1063 | exit 0 ;; | ||
1064 | *:Rhapsody:*:*) | ||
1065 | echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE} | ||
1066 | exit 0 ;; | ||
1067 | *:Darwin:*:*) | ||
1068 | echo `uname -p`-apple-darwin${UNAME_RELEASE} | ||
1069 | exit 0 ;; | ||
1070 | *:procnto*:*:* | *:QNX:[0123456789]*:*) | ||
1071 | if test "${UNAME_MACHINE}" = "x86pc"; then | ||
1072 | UNAME_MACHINE=pc | ||
1073 | fi | ||
1074 | echo `uname -p`-${UNAME_MACHINE}-nto-qnx | ||
1075 | exit 0 ;; | ||
1076 | *:QNX:*:4*) | ||
1077 | echo i386-pc-qnx | ||
1078 | exit 0 ;; | ||
1079 | NSR-W:NONSTOP_KERNEL:*:*) | ||
1080 | echo nsr-tandem-nsk${UNAME_RELEASE} | ||
1081 | exit 0 ;; | ||
1082 | BS2000:POSIX*:*:*) | ||
1083 | echo bs2000-siemens-sysv | ||
1084 | exit 0 ;; | ||
1085 | DS/*:UNIX_System_V:*:*) | ||
1086 | echo ${UNAME_MACHINE}-${UNAME_SYSTEM}-${UNAME_RELEASE} | ||
1087 | exit 0 ;; | ||
1088 | esac | ||
1089 | |||
1090 | #echo '(No uname command or uname output not recognized.)' 1>&2 | ||
1091 | #echo "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" 1>&2 | ||
1092 | |||
1093 | cat >$dummy.c <<EOF | ||
1094 | #ifdef _SEQUENT_ | ||
1095 | # include <sys/types.h> | ||
1096 | # include <sys/utsname.h> | ||
1097 | #endif | ||
1098 | main () | ||
1099 | { | ||
1100 | #if defined (sony) | ||
1101 | #if defined (MIPSEB) | ||
1102 | /* BFD wants "bsd" instead of "newsos". Perhaps BFD should be changed, | ||
1103 | I don't know.... */ | ||
1104 | printf ("mips-sony-bsd\n"); exit (0); | ||
1105 | #else | ||
1106 | #include <sys/param.h> | ||
1107 | printf ("m68k-sony-newsos%s\n", | ||
1108 | #ifdef NEWSOS4 | ||
1109 | "4" | ||
1110 | #else | ||
1111 | "" | ||
1112 | #endif | ||
1113 | ); exit (0); | ||
1114 | #endif | ||
1115 | #endif | ||
1116 | |||
1117 | #if defined (__arm) && defined (__acorn) && defined (__unix) | ||
1118 | printf ("arm-acorn-riscix"); exit (0); | ||
1119 | #endif | ||
1120 | |||
1121 | #if defined (hp300) && !defined (hpux) | ||
1122 | printf ("m68k-hp-bsd\n"); exit (0); | ||
1123 | #endif | ||
1124 | |||
1125 | #if defined (NeXT) | ||
1126 | #if !defined (__ARCHITECTURE__) | ||
1127 | #define __ARCHITECTURE__ "m68k" | ||
1128 | #endif | ||
1129 | int version; | ||
1130 | version=`(hostinfo | sed -n 's/.*NeXT Mach \([0-9]*\).*/\1/p') 2>/dev/null`; | ||
1131 | if (version < 4) | ||
1132 | printf ("%s-next-nextstep%d\n", __ARCHITECTURE__, version); | ||
1133 | else | ||
1134 | printf ("%s-next-openstep%d\n", __ARCHITECTURE__, version); | ||
1135 | exit (0); | ||
1136 | #endif | ||
1137 | |||
1138 | #if defined (MULTIMAX) || defined (n16) | ||
1139 | #if defined (UMAXV) | ||
1140 | printf ("ns32k-encore-sysv\n"); exit (0); | ||
1141 | #else | ||
1142 | #if defined (CMU) | ||
1143 | printf ("ns32k-encore-mach\n"); exit (0); | ||
1144 | #else | ||
1145 | printf ("ns32k-encore-bsd\n"); exit (0); | ||
1146 | #endif | ||
1147 | #endif | ||
1148 | #endif | ||
1149 | |||
1150 | #if defined (__386BSD__) | ||
1151 | printf ("i386-pc-bsd\n"); exit (0); | ||
1152 | #endif | ||
1153 | |||
1154 | #if defined (sequent) | ||
1155 | #if defined (i386) | ||
1156 | printf ("i386-sequent-dynix\n"); exit (0); | ||
1157 | #endif | ||
1158 | #if defined (ns32000) | ||
1159 | printf ("ns32k-sequent-dynix\n"); exit (0); | ||
1160 | #endif | ||
1161 | #endif | ||
1162 | |||
1163 | #if defined (_SEQUENT_) | ||
1164 | struct utsname un; | ||
1165 | |||
1166 | uname(&un); | ||
1167 | |||
1168 | if (strncmp(un.version, "V2", 2) == 0) { | ||
1169 | printf ("i386-sequent-ptx2\n"); exit (0); | ||
1170 | } | ||
1171 | if (strncmp(un.version, "V1", 2) == 0) { /* XXX is V1 correct? */ | ||
1172 | printf ("i386-sequent-ptx1\n"); exit (0); | ||
1173 | } | ||
1174 | printf ("i386-sequent-ptx\n"); exit (0); | ||
1175 | |||
1176 | #endif | ||
1177 | |||
1178 | #if defined (vax) | ||
1179 | #if !defined (ultrix) | ||
1180 | printf ("vax-dec-bsd\n"); exit (0); | ||
1181 | #else | ||
1182 | printf ("vax-dec-ultrix\n"); exit (0); | ||
1183 | #endif | ||
1184 | #endif | ||
1185 | |||
1186 | #if defined (alliant) && defined (i860) | ||
1187 | printf ("i860-alliant-bsd\n"); exit (0); | ||
1188 | #endif | ||
1189 | |||
1190 | exit (1); | ||
1191 | } | ||
1192 | EOF | ||
1193 | |||
1194 | $CC_FOR_BUILD $dummy.c -o $dummy 2>/dev/null && ./$dummy && rm $dummy.c $dummy && exit 0 | ||
1195 | rm -f $dummy.c $dummy | ||
1196 | |||
1197 | # Apollos put the system type in the environment. | ||
1198 | |||
1199 | test -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit 0; } | ||
1200 | |||
1201 | # Convex versions that predate uname can use getsysinfo(1) | ||
1202 | |||
1203 | if [ -x /usr/convex/getsysinfo ] | ||
1204 | then | ||
1205 | case `getsysinfo -f cpu_type` in | ||
1206 | c1*) | ||
1207 | echo c1-convex-bsd | ||
1208 | exit 0 ;; | ||
1209 | c2*) | ||
1210 | if getsysinfo -f scalar_acc | ||
1211 | then echo c32-convex-bsd | ||
1212 | else echo c2-convex-bsd | ||
1213 | fi | ||
1214 | exit 0 ;; | ||
1215 | c34*) | ||
1216 | echo c34-convex-bsd | ||
1217 | exit 0 ;; | ||
1218 | c38*) | ||
1219 | echo c38-convex-bsd | ||
1220 | exit 0 ;; | ||
1221 | c4*) | ||
1222 | echo c4-convex-bsd | ||
1223 | exit 0 ;; | ||
1224 | esac | ||
1225 | fi | ||
1226 | |||
1227 | cat >&2 <<EOF | ||
1228 | $0: unable to guess system type | ||
1229 | |||
1230 | The $version version of this script cannot recognize your system type. | ||
1231 | Please download the most up to date version of the config scripts: | ||
1232 | |||
1233 | ftp://ftp.gnu.org/pub/gnu/config/ | ||
1234 | |||
1235 | If the version you run ($0) is already up to date, please | ||
1236 | send the following data and any information you think might be | ||
1237 | pertinent to <config-patches@gnu.org> in order to provide the needed | ||
1238 | information to handle your system. | ||
1239 | |||
1240 | config.guess version = $version | ||
1241 | |||
1242 | uname -m = `(uname -m) 2>/dev/null || echo unknown` | ||
1243 | uname -r = `(uname -r) 2>/dev/null || echo unknown` | ||
1244 | uname -s = `(uname -s) 2>/dev/null || echo unknown` | ||
1245 | uname -v = `(uname -v) 2>/dev/null || echo unknown` | ||
1246 | |||
1247 | /usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null` | ||
1248 | /bin/uname -X = `(/bin/uname -X) 2>/dev/null` | ||
1249 | |||
1250 | hostinfo = `(hostinfo) 2>/dev/null` | ||
1251 | /bin/universe = `(/bin/universe) 2>/dev/null` | ||
1252 | /usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null` | ||
1253 | /bin/arch = `(/bin/arch) 2>/dev/null` | ||
1254 | /usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null` | ||
1255 | /usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null` | ||
1256 | |||
1257 | UNAME_MACHINE = ${UNAME_MACHINE} | ||
1258 | UNAME_RELEASE = ${UNAME_RELEASE} | ||
1259 | UNAME_SYSTEM = ${UNAME_SYSTEM} | ||
1260 | UNAME_VERSION = ${UNAME_VERSION} | ||
1261 | EOF | ||
1262 | |||
1263 | exit 1 | ||
1264 | |||
1265 | # Local variables: | ||
1266 | # eval: (add-hook 'write-file-hooks 'time-stamp) | ||
1267 | # time-stamp-start: "version='" | ||
1268 | # time-stamp-format: "%:y-%02m-%02d" | ||
1269 | # time-stamp-end: "'" | ||
1270 | # End: | ||