Mercurial > emacs
annotate config.guess @ 8630:6d932654b63b
entered into RCS
author | Richard M. Stallman <rms@gnu.org> |
---|---|
date | Fri, 26 Aug 1994 00:40:24 +0000 |
parents | ef7011f48b73 |
children | 683b25ea8081 |
rev | line source |
---|---|
2907 | 1 #!/bin/sh |
2 # This script attempts to guess a canonical system name. | |
8373 | 3 # Copyright (C) 1992, 1993, 1994 Free Software Foundation, Inc. |
2907 | 4 # |
5 # This file is free software; you can redistribute it and/or modify it | |
6 # under the terms of the GNU General Public License as published by | |
7 # the Free Software Foundation; either version 2 of the License, or | |
8 # (at your option) any later version. | |
9 # | |
10 # This program is distributed in the hope that it will be useful, but | |
11 # WITHOUT ANY WARRANTY; without even the implied warranty of | |
12 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | |
13 # General Public License for more details. | |
14 # | |
15 # You should have received a copy of the GNU General Public License | |
16 # along with this program; if not, write to the Free Software | |
17 # Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ | |
18 | |
19 # | |
3622 | 20 # This script attempts to guess a canonical system name similar to |
8373 | 21 # config.sub. If it succeeds, it prints the system name on stdout, and |
22 # exits with 0. Otherwise, it exits with 1. | |
2907 | 23 # |
24 # The plan is that this can be called by configure scripts if you | |
25 # don't specify an explicit system type (host/target name). | |
26 # | |
27 # Only a few systems have been added to this list; please add others | |
28 # (but try to keep the structure clean). | |
29 # | |
30 | |
8628
f550802447b3
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
8607
diff
changeset
|
31 # This is needed to find uname on a Pyramid OSx when run in the BSD universe. |
f550802447b3
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
8607
diff
changeset
|
32 # (ghazi@noc.rutgers.edu 8/24/94.) |
f550802447b3
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
8607
diff
changeset
|
33 if (test -f /.attbin/uname) >/dev/null 2>&1 ; then |
f550802447b3
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
8607
diff
changeset
|
34 PATH=$PATH:/.attbin ; export PATH |
f550802447b3
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
8607
diff
changeset
|
35 fi |
f550802447b3
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
8607
diff
changeset
|
36 |
2907 | 37 UNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown |
38 UNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown | |
39 UNAME_SYSTEM=`(uname -s) 2>/dev/null` || UNAME_SYSTEM=unknown | |
40 UNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown | |
41 | |
8373 | 42 trap 'rm -f dummy.c dummy.o dummy; exit 1' 1 2 15 |
43 | |
2907 | 44 # Note: order is significant - the case branches are not exclusive. |
45 | |
46 case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in | |
8373 | 47 *:NetBSD:*:*) |
8607
01bbfe117001
*** empty log message ***
Charles Hannum <mycroft@gnu.org>
parents:
8557
diff
changeset
|
48 echo ${UNAME_MACHINE}-unknown-netbsd`echo ${UNAME_RELEASE}|sed -e 's/[-_].*//'` |
8373 | 49 exit 0 ;; |
2907 | 50 alpha:OSF1:1.*:*) |
8373 | 51 # 1.2 uses "1.2" for uname -r. |
2907 | 52 echo alpha-dec-osf${UNAME_RELEASE} |
53 exit 0 ;; | |
8373 | 54 alpha:OSF1:V1.*:* | alpha:OSF1:V[2-9].*:*) |
55 # 1.3 and later use "V1.3", etc. for uname -r. | |
56 echo alpha-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^V//'` | |
57 exit 0 ;; | |
58 arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*) | |
59 echo arm-acorn-riscix${UNAME_RELEASE} | |
60 exit 0;; | |
8628
f550802447b3
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
8607
diff
changeset
|
61 Pyramid*:OSx*:*:*) |
f550802447b3
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
8607
diff
changeset
|
62 if test "`(/bin/universe) 2>/dev/null`" = att ; then |
f550802447b3
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
8607
diff
changeset
|
63 echo pyramid-pyramid-sysv3 |
f550802447b3
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
8607
diff
changeset
|
64 else |
f550802447b3
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
8607
diff
changeset
|
65 echo pyramid-pyramid-bsd |
f550802447b3
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
8607
diff
changeset
|
66 fi |
f550802447b3
*** empty log message ***
Richard M. Stallman <rms@gnu.org>
parents:
8607
diff
changeset
|
67 exit 0 ;; |
3622 | 68 sun4*:SunOS:5.*:*) |
69 echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` | |
70 exit 0 ;; | |
71 sun4*:SunOS:6*:*) | |
72 # According to config.sub, this is the proper way to canonicalize | |
73 # SunOS6. Hard to guess exactly what SunOS6 will be like, but | |
74 # it's likely to be more like Solaris than SunOS4. | |
75 echo sparc-sun-solaris3`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` | |
2907 | 76 exit 0 ;; |
77 sun4*:SunOS:*:*) | |
78 echo sparc-sun-sunos${UNAME_RELEASE} | |
79 exit 0 ;; | |
80 sun3*:SunOS:*:*) | |
81 echo m68k-sun-sunos${UNAME_RELEASE} | |
82 exit 0 ;; | |
83 RISC*:ULTRIX:*:*) | |
84 echo mips-dec-ultrix${UNAME_RELEASE} | |
85 exit 0 ;; | |
86 VAX*:ULTRIX*:*:*) | |
87 echo vax-dec-ultrix${UNAME_RELEASE} | |
88 exit 0 ;; | |
8373 | 89 mips:*:5*:RISCos) |
90 echo mips-mips-riscos${UNAME_RELEASE} | |
91 exit 0 ;; | |
2907 | 92 m88k:*:4*:R4*) |
93 echo m88k-motorola-sysv4 | |
94 exit 0 ;; | |
95 m88k:*:3*:R3*) | |
96 echo m88k-motorola-sysv3 | |
97 exit 0 ;; | |
8373 | 98 AViiON:dgux:*:*) |
8520 | 99 if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx \ |
100 -o ${TARGET_BINARY_INTERFACE}x = x ] ; then | |
101 echo m88k-dg-dgux${UNAME_RELEASE} | |
102 else | |
103 echo m88k-dg-dguxbcs${UNAME_RELEASE} | |
104 fi | |
8373 | 105 exit 0 ;; |
8557 | 106 M88*:DolphinOS:*:*) # DolphinOS (SVR3) |
107 echo m88k-dolphin-sysv3 | |
108 exit 0 ;; | |
8373 | 109 M88*:*:R3*:*) |
110 # Delta 88k system running SVR3 | |
111 echo m88k-motorola-sysv3 | |
112 exit 0 ;; | |
113 XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3) | |
114 echo m88k-tektronix-sysv3 | |
115 exit 0 ;; | |
116 Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD) | |
117 echo m68k-tektronix-bsd | |
118 exit 0 ;; | |
2907 | 119 *:IRIX:*:*) |
120 echo mips-sgi-irix${UNAME_RELEASE} | |
121 exit 0 ;; | |
122 i[34]86:AIX:*:*) | |
123 echo i386-ibm-aix | |
124 exit 0 ;; | |
125 *:AIX:2:3) | |
8373 | 126 if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then |
127 echo rs6000-ibm-aix3.2.5 | |
128 elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then | |
129 echo rs6000-ibm-aix3.2.4 | |
130 else | |
131 echo rs6000-ibm-aix3.2 | |
132 fi | |
2907 | 133 exit 0 ;; |
134 *:AIX:*:*) | |
135 echo rs6000-ibm-aix | |
136 exit 0 ;; | |
137 *:BOSX:*:*) | |
138 echo rs6000-bull-bosx | |
139 exit 0 ;; | |
8373 | 140 DPX/2?00:B.O.S.:*:*) |
141 echo m68k-bull-sysv3 | |
142 exit 0 ;; | |
143 9000/[34]??:4.3bsd:1.*:*) | |
144 echo m68k-hp-bsd | |
145 exit 0 ;; | |
146 hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*) | |
147 echo m68k-hp-bsd4.4 | |
2907 | 148 exit 0 ;; |
8373 | 149 9000/[3478]??:HP-UX:*:* | 9000/8?7:HP-UX:*:* ) |
150 case "${UNAME_MACHINE}" in | |
151 9000/31? ) HP_ARCH=m68000 ;; | |
152 9000/[34]?? ) HP_ARCH=m68k ;; | |
153 9000/7?? | 9000/8?7 ) HP_ARCH=hppa1.1 ;; | |
154 9000/8?? ) HP_ARCH=hppa1.0 ;; | |
155 esac | |
156 case ${UNAME_RELEASE} in | |
157 *.B7.* ) HPUX_REV=7 ;; | |
158 *.B8.* | *.08.* ) HPUX_REV=8 ;; | |
159 *.09.* ) HPUX_REV=9 ;; | |
160 esac | |
161 echo ${HP_ARCH}-hp-hpux${HPUX_REV} | |
2907 | 162 exit 0 ;; |
8373 | 163 3050*:HI-UX:*:*) |
164 sed 's/^ //' << EOF >dummy.c | |
165 #include <unistd.h> | |
166 int | |
167 main () | |
168 { | |
169 long cpu = sysconf (_SC_CPU_VERSION); | |
170 if (CPU_IS_HP_MC68K (cpu)) | |
171 puts ("m68k-hitachi-hiuxwe2"); | |
172 else if (CPU_IS_PA_RISC (cpu)) | |
173 { | |
174 switch (cpu) | |
175 { | |
176 case CPU_PA_RISC1_0: puts ("hppa1.0-hitachi-hiuxwe2"); break; | |
177 case CPU_PA_RISC1_1: puts ("hppa1.1-hitachi-hiuxwe2"); break; | |
178 case CPU_PA_RISC2_0: puts ("hppa2.0-hitachi-hiuxwe2"); break; | |
179 default: puts ("hppa-hitachi-hiuxwe2"); break; | |
180 } | |
181 } | |
182 else puts ("unknown-hitachi-hiuxwe2"); | |
183 exit (0); | |
184 } | |
185 EOF | |
186 ${CC-cc} dummy.c -o dummy && ./dummy && rm dummy.c dummy && exit 0 | |
187 rm -f dummy.c dummy | |
188 echo unknown-hitachi-hiuxwe2 | |
2907 | 189 exit 0 ;; |
8373 | 190 9000/7??:4.3bsd:*:* | 9000/8?7:4.3bsd:*:* ) |
3622 | 191 echo hppa1.1-hp-bsd |
192 exit 0 ;; | |
193 9000/8??:4.3bsd:*:*) | |
194 echo hppa1.0-hp-bsd | |
195 exit 0 ;; | |
8373 | 196 C1*:ConvexOS:*:* | convex:ConvexOS:C1:*) |
2907 | 197 echo c1-convex-bsd |
198 exit 0 ;; | |
8373 | 199 C2*:ConvexOS:*:* | convex:ConvexOS:C2:*) |
2907 | 200 echo c2-convex-bsd |
201 exit 0 ;; | |
202 CRAY*X-MP:UNICOS:*:*) | |
203 echo xmp-cray-unicos | |
204 exit 0 ;; | |
205 CRAY*Y-MP:UNICOS:*:*) | |
206 echo ymp-cray-unicos | |
207 exit 0 ;; | |
208 CRAY-2:UNICOS:*:*) | |
209 echo cray2-cray-unicos | |
210 exit 0 ;; | |
8373 | 211 i[34]86:BSD/386:*:*) |
212 echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE} | |
213 exit 0 ;; | |
214 i[34]86:FreeBSD:*:*) | |
215 echo ${UNAME_MACHINE}-unknown-freebsd | |
216 exit 0 ;; | |
2907 | 217 i[34]86:Linux:*:*) |
218 echo ${UNAME_MACHINE}-unknown-linux | |
219 exit 0 ;; | |
8373 | 220 i[34]86:UNIX_SV:4.*:* | i[34]86:SYSTEM_V:4.*:*) |
3622 | 221 if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then |
222 echo ${UNAME_MACHINE}-univel-sysv${UNAME_RELEASE} | |
223 else | |
224 echo ${UNAME_MACHINE}-unknown-sysv${UNAME_RELEASE} | |
225 fi | |
2907 | 226 exit 0 ;; |
227 i[34]86:*:3.2:*) | |
228 if /bin/uname -X 2>/dev/null >/dev/null ; then | |
229 UNAME_REL=`(/bin/uname -X|egrep Release|sed -e 's/.*= //')` | |
230 (/bin/uname -X|egrep i80486 >/dev/null) && UNAME_MACHINE=i486 | |
231 echo ${UNAME_MACHINE}-unknown-sco$UNAME_REL | |
8373 | 232 elif test -f /usr/options/cb.name; then |
233 UNAME_REL=`sed -n 's/.*Version //p' </usr/options/cb.name` | |
234 echo ${UNAME_MACHINE}-unknown-isc$UNAME_REL | |
2907 | 235 else |
8373 | 236 echo ${UNAME_MACHINE}-unknown-sysv32 |
237 fi | |
238 exit 0 ;; | |
239 i860:*:4.*:*) # i860-SVR4 | |
240 if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then | |
241 echo i860-stardent-sysv${UNAME_RELEASE} # Stardent Vistra i860-SVR4 | |
242 else # Add other i860-SVR4 vendors below as they are discovered. | |
243 echo i860-unknown-sysv${UNAME_RELEASE} # Unknown i860-SVR4 | |
2907 | 244 fi |
245 exit 0 ;; | |
246 mini*:CTIX:SYS*5:*) | |
247 # "miniframe" | |
248 echo m68010-convergent-sysv | |
249 exit 0 ;; | |
8373 | 250 M680[234]0:*:R3V[567]*:*) |
3622 | 251 test -r /sysV68 && echo 'm68k-motorola-sysv' && exit 0 ;; |
8373 | 252 3[34]??:*:4.0:* | 3[34]??,3[34]??:*:4.0:*) |
253 uname -p 2>/dev/null | grep 86 >/dev/null \ | |
254 && echo i486-ncr-sysv4 && exit 0 ;; | |
255 m680[234]0:LynxOS:2.2*:*) | |
256 echo m68k-lynx-lynxos${UNAME_RELEASE} | |
257 exit 0 ;; | |
258 mc68030:UNIX_System_V:4.*:*) | |
259 echo m68k-atari-sysv4 | |
260 exit 0 ;; | |
261 i[34]86:LynxOS:2.2*:*) | |
262 echo i386-lynx-lynxos${UNAME_RELEASE} | |
263 exit 0 ;; | |
264 TSUNAMI:LynxOS:2.2*:*) | |
265 echo sparc-lynx-lynxos${UNAME_RELEASE} | |
266 exit 0 ;; | |
2907 | 267 esac |
268 | |
8373 | 269 #echo '(No uname command or uname output not recognized.)' 1>&2 |
2907 | 270 #echo "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" 1>&2 |
271 | |
272 cat >dummy.c <<EOF | |
8630 | 273 main () |
2907 | 274 { |
275 #if defined (sony) | |
276 #if defined (MIPSEB) | |
8373 | 277 /* BFD wants "bsd" instead of "newsos". Perhaps BFD should be changed, |
278 I don't know.... */ | |
279 printf ("mips-sony-bsd\n"); exit (0); | |
2907 | 280 #else |
8630 | 281 printf ("m68k-sony-newsos\n"); exit (0); |
2907 | 282 #endif |
283 #endif | |
284 | |
8373 | 285 #if defined (__arm) && defined (__acorn) && defined (__unix) |
8630 | 286 printf ("arm-acorn-riscix"); exit (0); |
8373 | 287 #endif |
288 | |
8630 | 289 #if defined (hp300) && !defined (hpux) |
290 printf ("m68k-hp-bsd\n"); exit (0); | |
2907 | 291 #endif |
292 | |
8630 | 293 #if defined (NeXT) |
294 #if !defined (__ARCHITECTURE__) | |
8373 | 295 #define __ARCHITECTURE__ "m68k" |
296 #endif | |
297 int version; | |
298 version=`(hostinfo | sed -n 's/.*NeXT Mach \([0-9]*\).*/\1/p') 2>/dev/null`; | |
299 if (version==2) | |
300 { | |
8630 | 301 printf ("%s-next-ns2\n", __ARCHITECTURE__); |
302 exit (0); | |
8373 | 303 } |
304 else | |
305 { | |
8630 | 306 printf ("%s-next-ns3\n", __ARCHITECTURE__); |
307 exit (0); | |
8373 | 308 } |
309 #endif | |
310 | |
2907 | 311 #if defined (MULTIMAX) || defined (n16) |
312 #if defined (UMAXV) | |
8630 | 313 printf ("ns32k-encore-sysv\n"); exit (0); |
2907 | 314 #else |
315 #if defined (CMU) | |
8630 | 316 printf ("ns32k-encore-mach\n"); exit (0); |
2907 | 317 #else |
8630 | 318 printf ("ns32k-encore-bsd\n"); exit (0); |
2907 | 319 #endif |
320 #endif | |
321 #endif | |
322 | |
8630 | 323 #if defined (__386BSD__) || (defined (__bsdi__) && defined (__i386__)) |
324 printf ("i386-unknown-bsd\n"); exit (0); | |
2907 | 325 #endif |
326 | |
8630 | 327 #if defined (sequent) |
328 #if defined (i386) | |
329 printf ("i386-sequent-dynix\n"); exit (0); | |
3622 | 330 #endif |
331 #if defined (ns32000) | |
8630 | 332 printf ("ns32k-sequent-dynix\n"); exit (0); |
3622 | 333 #endif |
334 #endif | |
335 | |
8630 | 336 #if defined (_SEQUENT_) |
337 printf ("i386-sequent-ptx\n"); exit (0); | |
3622 | 338 #endif |
339 | |
8630 | 340 #if defined (vax) |
341 #if !defined (ultrix) | |
342 printf ("vax-dec-bsd\n"); exit (0); | |
8373 | 343 #else |
8630 | 344 printf ("vax-dec-ultrix\n"); exit (0); |
345 #endif | |
8373 | 346 #endif |
8630 | 347 |
348 #if defined (alliant) && defined (i860) | |
349 printf ("i860-alliant-bsd\n"); exit (0); | |
8373 | 350 #endif |
351 | |
2907 | 352 exit (1); |
353 } | |
354 EOF | |
355 | |
8373 | 356 ${CC-cc} dummy.c -o dummy 2>/dev/null && ./dummy && rm dummy.c dummy && exit 0 |
2907 | 357 rm -f dummy.c dummy |
358 | |
8373 | 359 # Apollos put the system type in the environment. |
360 | |
361 test -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit 0; } | |
362 | |
363 #echo '(Unable to guess system type)' 1>&2 | |
2907 | 364 |
365 exit 1 |