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