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