]>
Commit | Line | Data |
---|---|---|
252b5132 RH |
1 | #! /bin/sh |
2 | # Attempt to guess a canonical system name. | |
996ff3e8 | 3 | # Copyright 1992-2023 Free Software Foundation, Inc. |
ac73857d | 4 | |
6c037fdb NC |
5 | # shellcheck disable=SC2006,SC2268 # see below for rationale |
6 | ||
ce3abd47 | 7 | timestamp='2023-08-22' |
ac73857d | 8 | |
252b5132 RH |
9 | # This file is free software; you can redistribute it and/or modify it |
10 | # under the terms of the GNU General Public License as published by | |
6c037fdb | 11 | # the Free Software Foundation, either version 3 of the License, or |
252b5132 RH |
12 | # (at your option) any later version. |
13 | # | |
14 | # This program is distributed in the hope that it will be useful, but | |
15 | # WITHOUT ANY WARRANTY; without even the implied warranty of | |
16 | # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | |
17 | # General Public License for more details. | |
18 | # | |
19 | # You should have received a copy of the GNU General Public License | |
bf41f30d | 20 | # along with this program; if not, see <https://www.gnu.org/licenses/>. |
252b5132 RH |
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 | |
c3d399e7 L |
25 | # the same distribution terms that you use for the rest of that |
26 | # program. This Exception is an additional permission under section 7 | |
27 | # of the GNU General Public License, version 3 ("GPLv3"). | |
252b5132 | 28 | # |
8969c424 | 29 | # Originally written by Per Bothner; maintained since 2000 by Ben Elliston. |
252b5132 | 30 | # |
707a0b5c | 31 | # You can get the latest version of this script from: |
5f8c2a15 | 32 | # https://git.savannah.gnu.org/cgit/config.git/plain/config.guess |
c3d399e7 | 33 | # |
8969c424 | 34 | # Please send patches to <config-patches@gnu.org>. |
c3d399e7 | 35 | |
252b5132 | 36 | |
6c037fdb NC |
37 | # The "shellcheck disable" line above the timestamp inhibits complaints |
38 | # about features and limitations of the classic Bourne shell that were | |
39 | # superseded or lifted in POSIX. However, this script identifies a wide | |
40 | # variety of pre-POSIX systems that do not have POSIX shells at all, and | |
41 | # even some reasonably current systems (Solaris 10 as case-in-point) still | |
42 | # have a pre-POSIX /bin/sh. | |
43 | ||
44 | ||
45 | me=`echo "$0" | sed -e 's,.*/,,'` | |
ac73857d AC |
46 | |
47 | usage="\ | |
48 | Usage: $0 [OPTION] | |
49 | ||
996ff3e8 | 50 | Output the configuration name of the system '$me' is run on. |
ac73857d | 51 | |
bf41f30d | 52 | Options: |
35590697 AJ |
53 | -h, --help print this help, then exit |
54 | -t, --time-stamp print date of last modification, then exit | |
55 | -v, --version print version number, then exit | |
56 | ||
57 | Report bugs and patches to <config-patches@gnu.org>." | |
58 | ||
59 | version="\ | |
60 | GNU config.guess ($timestamp) | |
61 | ||
62 | Originally written by Per Bothner. | |
996ff3e8 | 63 | Copyright 1992-2023 Free Software Foundation, Inc. |
35590697 AJ |
64 | |
65 | This is free software; see the source for copying conditions. There is NO | |
66 | warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." | |
ac73857d AC |
67 | |
68 | help=" | |
996ff3e8 | 69 | Try '$me --help' for more information." |
ac73857d AC |
70 | |
71 | # Parse command line | |
72 | while test $# -gt 0 ; do | |
35590697 AJ |
73 | case $1 in |
74 | --time-stamp | --time* | -t ) | |
1d9c9cd7 | 75 | echo "$timestamp" ; exit ;; |
35590697 | 76 | --version | -v ) |
1d9c9cd7 | 77 | echo "$version" ; exit ;; |
ac73857d | 78 | --help | --h* | -h ) |
1d9c9cd7 | 79 | echo "$usage"; exit ;; |
ac73857d AC |
80 | -- ) # Stop option processing |
81 | shift; break ;; | |
82 | - ) # Use stdin as input. | |
83 | break ;; | |
84 | -* ) | |
35590697 | 85 | echo "$me: invalid option $1$help" >&2 |
ac73857d AC |
86 | exit 1 ;; |
87 | * ) | |
88 | break ;; | |
89 | esac | |
90 | done | |
91 | ||
92 | if test $# != 0; then | |
93 | echo "$me: too many arguments$help" >&2 | |
94 | exit 1 | |
95 | fi | |
96 | ||
6c037fdb NC |
97 | # Just in case it came from the environment. |
98 | GUESS= | |
99 | ||
51759676 CD |
100 | # CC_FOR_BUILD -- compiler used by this script. Note that the use of a |
101 | # compiler to aid in system detection is discouraged as it requires | |
102 | # temporary files to be created and, as you can see below, it is a | |
103 | # headache to deal with in a portable fashion. | |
35590697 | 104 | |
996ff3e8 NC |
105 | # Historically, 'CC_FOR_BUILD' used to be named 'HOST_CC'. We still |
106 | # use 'HOST_CC' if defined, but it is deprecated. | |
35590697 | 107 | |
3f234ef5 | 108 | # Portable tmp directory creation inspired by the Autoconf team. |
51759676 | 109 | |
d63f2be2 RO |
110 | tmp= |
111 | # shellcheck disable=SC2172 | |
112 | trap 'test -z "$tmp" || rm -fr "$tmp"' 0 1 2 13 15 | |
113 | ||
114 | set_cc_for_build() { | |
4fb3a8da NC |
115 | # prevent multiple calls if $tmp is already set |
116 | test "$tmp" && return 0 | |
d63f2be2 | 117 | : "${TMPDIR=/tmp}" |
6c037fdb NC |
118 | # shellcheck disable=SC2039,SC3028 |
119 | { tmp=`(umask 077 && mktemp -d "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } || | |
d63f2be2 RO |
120 | { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir "$tmp" 2>/dev/null) ; } || |
121 | { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir "$tmp" 2>/dev/null) && echo "Warning: creating insecure temp directory" >&2 ; } || | |
122 | { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } | |
123 | dummy=$tmp/dummy | |
124 | case ${CC_FOR_BUILD-},${HOST_CC-},${CC-} in | |
125 | ,,) echo "int x;" > "$dummy.c" | |
126 | for driver in cc gcc c89 c99 ; do | |
127 | if ($driver -c -o "$dummy.o" "$dummy.c") >/dev/null 2>&1 ; then | |
6c037fdb | 128 | CC_FOR_BUILD=$driver |
d63f2be2 RO |
129 | break |
130 | fi | |
131 | done | |
132 | if test x"$CC_FOR_BUILD" = x ; then | |
133 | CC_FOR_BUILD=no_compiler_found | |
134 | fi | |
135 | ;; | |
136 | ,,*) CC_FOR_BUILD=$CC ;; | |
137 | ,*,*) CC_FOR_BUILD=$HOST_CC ;; | |
138 | esac | |
139 | } | |
ada59422 | 140 | |
252b5132 | 141 | # This is needed to find uname on a Pyramid OSx when run in the BSD universe. |
82208dc5 | 142 | # (ghazi@noc.rutgers.edu 1994-08-24) |
d63f2be2 | 143 | if test -f /.attbin/uname ; then |
252b5132 RH |
144 | PATH=$PATH:/.attbin ; export PATH |
145 | fi | |
146 | ||
6c037fdb NC |
147 | UNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown |
148 | UNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown | |
149 | UNAME_SYSTEM=`(uname -s) 2>/dev/null` || UNAME_SYSTEM=unknown | |
150 | UNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown | |
252b5132 | 151 | |
6c037fdb | 152 | case $UNAME_SYSTEM in |
f3f51a69 | 153 | Linux|GNU|GNU/*) |
5f8c2a15 | 154 | LIBC=unknown |
f3f51a69 | 155 | |
d63f2be2 | 156 | set_cc_for_build |
b5778783 | 157 | cat <<-EOF > "$dummy.c" |
ce3abd47 NC |
158 | #if defined(__ANDROID__) |
159 | LIBC=android | |
160 | #else | |
f3f51a69 AM |
161 | #include <features.h> |
162 | #if defined(__UCLIBC__) | |
163 | LIBC=uclibc | |
164 | #elif defined(__dietlibc__) | |
165 | LIBC=dietlibc | |
5f8c2a15 | 166 | #elif defined(__GLIBC__) |
f3f51a69 | 167 | LIBC=gnu |
5f8c2a15 AM |
168 | #else |
169 | #include <stdarg.h> | |
170 | /* First heuristic to detect musl libc. */ | |
171 | #ifdef __DEFINED_va_list | |
172 | LIBC=musl | |
173 | #endif | |
f3f51a69 | 174 | #endif |
ce3abd47 | 175 | #endif |
f3f51a69 | 176 | EOF |
6c037fdb NC |
177 | cc_set_libc=`$CC_FOR_BUILD -E "$dummy.c" 2>/dev/null | grep '^LIBC' | sed 's, ,,g'` |
178 | eval "$cc_set_libc" | |
b5778783 | 179 | |
5f8c2a15 AM |
180 | # Second heuristic to detect musl libc. |
181 | if [ "$LIBC" = unknown ] && | |
182 | command -v ldd >/dev/null && | |
183 | ldd --version 2>&1 | grep -q ^musl; then | |
184 | LIBC=musl | |
185 | fi | |
186 | ||
187 | # If the system lacks a compiler, then just pick glibc. | |
188 | # We could probably try harder. | |
189 | if [ "$LIBC" = unknown ]; then | |
190 | LIBC=gnu | |
b5778783 | 191 | fi |
f3f51a69 AM |
192 | ;; |
193 | esac | |
194 | ||
252b5132 RH |
195 | # Note: order is significant - the case branches are not exclusive. |
196 | ||
6c037fdb | 197 | case $UNAME_MACHINE:$UNAME_SYSTEM:$UNAME_RELEASE:$UNAME_VERSION in |
ada59422 | 198 | *:NetBSD:*:*) |
9c07660b | 199 | # NetBSD (nbsd) targets should (where applicable) match one or |
7b0e8ca5 | 200 | # more of the tuples: *-*-netbsdelf*, *-*-netbsdaout*, |
ada59422 AC |
201 | # *-*-netbsdecoff* and *-*-netbsd*. For targets that recently |
202 | # switched to ELF, *-*-netbsd* would select the old | |
203 | # object file format. This provides both forward | |
204 | # compatibility and a consistent mechanism for selecting the | |
205 | # object file format. | |
0e254642 AM |
206 | # |
207 | # Note: NetBSD doesn't particularly care about the vendor | |
208 | # portion of the name. We always set it to "unknown". | |
6c037fdb | 209 | UNAME_MACHINE_ARCH=`(uname -p 2>/dev/null || \ |
2e8adb64 MR |
210 | /sbin/sysctl -n hw.machine_arch 2>/dev/null || \ |
211 | /usr/sbin/sysctl -n hw.machine_arch 2>/dev/null || \ | |
6c037fdb NC |
212 | echo unknown)` |
213 | case $UNAME_MACHINE_ARCH in | |
5f8c2a15 | 214 | aarch64eb) machine=aarch64_be-unknown ;; |
4b37028f | 215 | armeb) machine=armeb-unknown ;; |
0e254642 AM |
216 | arm*) machine=arm-unknown ;; |
217 | sh3el) machine=shl-unknown ;; | |
218 | sh3eb) machine=sh-unknown ;; | |
0cfa5389 | 219 | sh5el) machine=sh5le-unknown ;; |
5675acd9 | 220 | earmv*) |
6c037fdb NC |
221 | arch=`echo "$UNAME_MACHINE_ARCH" | sed -e 's,^e\(armv[0-9]\).*$,\1,'` |
222 | endian=`echo "$UNAME_MACHINE_ARCH" | sed -ne 's,^.*\(eb\)$,\1,p'` | |
223 | machine=${arch}${endian}-unknown | |
5675acd9 | 224 | ;; |
6c037fdb | 225 | *) machine=$UNAME_MACHINE_ARCH-unknown ;; |
ada59422 | 226 | esac |
35590697 | 227 | # The Operating System including object format, if it has switched |
5ada5c6f | 228 | # to ELF recently (or will in the future) and ABI. |
6c037fdb | 229 | case $UNAME_MACHINE_ARCH in |
5ada5c6f DE |
230 | earm*) |
231 | os=netbsdelf | |
232 | ;; | |
233 | arm*|i386|m68k|ns32k|sh3*|sparc|vax) | |
d63f2be2 | 234 | set_cc_for_build |
35590697 | 235 | if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \ |
2262bbf4 | 236 | | grep -q __ELF__ |
35590697 AJ |
237 | then |
238 | # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout). | |
239 | # Return netbsd for either. FIX? | |
240 | os=netbsd | |
241 | else | |
242 | os=netbsdelf | |
243 | fi | |
244 | ;; | |
245 | *) | |
5548b4ce | 246 | os=netbsd |
35590697 AJ |
247 | ;; |
248 | esac | |
5675acd9 | 249 | # Determine ABI tags. |
6c037fdb | 250 | case $UNAME_MACHINE_ARCH in |
5675acd9 ES |
251 | earm*) |
252 | expr='s/^earmv[0-9]/-eabi/;s/eb$//' | |
6c037fdb | 253 | abi=`echo "$UNAME_MACHINE_ARCH" | sed -e "$expr"` |
5675acd9 ES |
254 | ;; |
255 | esac | |
ada59422 | 256 | # The OS release |
3f234ef5 CD |
257 | # Debian GNU/NetBSD machines have a different userland, and |
258 | # thus, need a distinct triplet. However, they do not need | |
259 | # kernel version information, so it can be replaced with a | |
260 | # suitable tag, in the style of linux-gnu. | |
6c037fdb | 261 | case $UNAME_VERSION in |
3f234ef5 CD |
262 | Debian*) |
263 | release='-gnu' | |
264 | ;; | |
265 | *) | |
6c037fdb | 266 | release=`echo "$UNAME_RELEASE" | sed -e 's/[-_].*//' | cut -d. -f1,2` |
3f234ef5 CD |
267 | ;; |
268 | esac | |
ada59422 AC |
269 | # Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM: |
270 | # contains redundant information, the shorter form: | |
271 | # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used. | |
6c037fdb NC |
272 | GUESS=$machine-${os}${release}${abi-} |
273 | ;; | |
7b0e8ca5 | 274 | *:Bitrig:*:*) |
6c037fdb NC |
275 | UNAME_MACHINE_ARCH=`arch | sed 's/Bitrig.//'` |
276 | GUESS=$UNAME_MACHINE_ARCH-unknown-bitrig$UNAME_RELEASE | |
277 | ;; | |
9c07660b | 278 | *:OpenBSD:*:*) |
6c037fdb NC |
279 | UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'` |
280 | GUESS=$UNAME_MACHINE_ARCH-unknown-openbsd$UNAME_RELEASE | |
281 | ;; | |
2e8adb64 | 282 | *:SecBSD:*:*) |
6c037fdb NC |
283 | UNAME_MACHINE_ARCH=`arch | sed 's/SecBSD.//'` |
284 | GUESS=$UNAME_MACHINE_ARCH-unknown-secbsd$UNAME_RELEASE | |
285 | ;; | |
b43b8535 | 286 | *:LibertyBSD:*:*) |
6c037fdb NC |
287 | UNAME_MACHINE_ARCH=`arch | sed 's/^.*BSD\.//'` |
288 | GUESS=$UNAME_MACHINE_ARCH-unknown-libertybsd$UNAME_RELEASE | |
289 | ;; | |
bf41f30d | 290 | *:MidnightBSD:*:*) |
6c037fdb NC |
291 | GUESS=$UNAME_MACHINE-unknown-midnightbsd$UNAME_RELEASE |
292 | ;; | |
1e600082 | 293 | *:ekkoBSD:*:*) |
6c037fdb NC |
294 | GUESS=$UNAME_MACHINE-unknown-ekkobsd$UNAME_RELEASE |
295 | ;; | |
ec49b2b8 | 296 | *:SolidBSD:*:*) |
6c037fdb NC |
297 | GUESS=$UNAME_MACHINE-unknown-solidbsd$UNAME_RELEASE |
298 | ;; | |
4fb3a8da | 299 | *:OS108:*:*) |
6c037fdb NC |
300 | GUESS=$UNAME_MACHINE-unknown-os108_$UNAME_RELEASE |
301 | ;; | |
1e600082 | 302 | macppc:MirBSD:*:*) |
6c037fdb NC |
303 | GUESS=powerpc-unknown-mirbsd$UNAME_RELEASE |
304 | ;; | |
1e600082 | 305 | *:MirBSD:*:*) |
6c037fdb NC |
306 | GUESS=$UNAME_MACHINE-unknown-mirbsd$UNAME_RELEASE |
307 | ;; | |
4849dfd8 | 308 | *:Sortix:*:*) |
6c037fdb NC |
309 | GUESS=$UNAME_MACHINE-unknown-sortix |
310 | ;; | |
4fb3a8da | 311 | *:Twizzler:*:*) |
6c037fdb NC |
312 | GUESS=$UNAME_MACHINE-unknown-twizzler |
313 | ;; | |
bf41f30d | 314 | *:Redox:*:*) |
6c037fdb NC |
315 | GUESS=$UNAME_MACHINE-unknown-redox |
316 | ;; | |
bf41f30d | 317 | mips:OSF1:*.*) |
6c037fdb NC |
318 | GUESS=mips-dec-osf1 |
319 | ;; | |
252b5132 | 320 | alpha:OSF1:*:*) |
6c037fdb NC |
321 | # Reset EXIT trap before exiting to avoid spurious non-zero exit code. |
322 | trap '' 0 | |
eb1352ed NC |
323 | case $UNAME_RELEASE in |
324 | *4.0) | |
6c037fdb | 325 | UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'` |
eb1352ed NC |
326 | ;; |
327 | *5.*) | |
6c037fdb | 328 | UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $4}'` |
eb1352ed NC |
329 | ;; |
330 | esac | |
ee3fd329 AM |
331 | # According to Compaq, /usr/sbin/psrinfo has been available on |
332 | # OSF/1 and Tru64 systems produced since 1995. I hope that | |
333 | # covers most systems running today. This code pipes the CPU | |
334 | # types through head -n 1, so we only detect the type of CPU 0. | |
6c037fdb NC |
335 | ALPHA_CPU_TYPE=`/usr/sbin/psrinfo -v | sed -n -e 's/^ The alpha \(.*\) processor.*$/\1/p' | head -n 1` |
336 | case $ALPHA_CPU_TYPE in | |
ee3fd329 | 337 | "EV4 (21064)") |
b43b8535 | 338 | UNAME_MACHINE=alpha ;; |
ee3fd329 | 339 | "EV4.5 (21064)") |
b43b8535 | 340 | UNAME_MACHINE=alpha ;; |
ee3fd329 | 341 | "LCA4 (21066/21068)") |
b43b8535 | 342 | UNAME_MACHINE=alpha ;; |
ee3fd329 | 343 | "EV5 (21164)") |
b43b8535 | 344 | UNAME_MACHINE=alphaev5 ;; |
ee3fd329 | 345 | "EV5.6 (21164A)") |
b43b8535 | 346 | UNAME_MACHINE=alphaev56 ;; |
ee3fd329 | 347 | "EV5.6 (21164PC)") |
b43b8535 | 348 | UNAME_MACHINE=alphapca56 ;; |
ee3fd329 | 349 | "EV5.7 (21164PC)") |
b43b8535 | 350 | UNAME_MACHINE=alphapca57 ;; |
ee3fd329 | 351 | "EV6 (21264)") |
b43b8535 | 352 | UNAME_MACHINE=alphaev6 ;; |
ee3fd329 | 353 | "EV6.7 (21264A)") |
b43b8535 | 354 | UNAME_MACHINE=alphaev67 ;; |
ee3fd329 | 355 | "EV6.8CB (21264C)") |
b43b8535 | 356 | UNAME_MACHINE=alphaev68 ;; |
ee3fd329 | 357 | "EV6.8AL (21264B)") |
b43b8535 | 358 | UNAME_MACHINE=alphaev68 ;; |
ee3fd329 | 359 | "EV6.8CX (21264D)") |
b43b8535 | 360 | UNAME_MACHINE=alphaev68 ;; |
ee3fd329 | 361 | "EV6.9A (21264/EV69A)") |
b43b8535 | 362 | UNAME_MACHINE=alphaev69 ;; |
ee3fd329 | 363 | "EV7 (21364)") |
b43b8535 | 364 | UNAME_MACHINE=alphaev7 ;; |
ee3fd329 | 365 | "EV7.9 (21364A)") |
b43b8535 | 366 | UNAME_MACHINE=alphaev79 ;; |
ee3fd329 | 367 | esac |
eb1352ed | 368 | # A Pn.n version is a patched version. |
252b5132 RH |
369 | # A Vn.n version is a released version. |
370 | # A Tn.n version is a released field test version. | |
371 | # A Xn.n version is an unreleased experimental baselevel. | |
372 | # 1.2 uses "1.2" for uname -r. | |
6c037fdb NC |
373 | OSF_REL=`echo "$UNAME_RELEASE" | sed -e 's/^[PVTX]//' | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz` |
374 | GUESS=$UNAME_MACHINE-dec-osf$OSF_REL | |
375 | ;; | |
252b5132 | 376 | Amiga*:UNIX_System_V:4.0:*) |
6c037fdb NC |
377 | GUESS=m68k-unknown-sysv4 |
378 | ;; | |
252b5132 | 379 | *:[Aa]miga[Oo][Ss]:*:*) |
6c037fdb NC |
380 | GUESS=$UNAME_MACHINE-unknown-amigaos |
381 | ;; | |
b020f6ac | 382 | *:[Mm]orph[Oo][Ss]:*:*) |
6c037fdb NC |
383 | GUESS=$UNAME_MACHINE-unknown-morphos |
384 | ;; | |
ada59422 | 385 | *:OS/390:*:*) |
6c037fdb NC |
386 | GUESS=i370-ibm-openedition |
387 | ;; | |
57d1eb1a | 388 | *:z/VM:*:*) |
6c037fdb NC |
389 | GUESS=s390-ibm-zvmoe |
390 | ;; | |
1e600082 | 391 | *:OS400:*:*) |
6c037fdb NC |
392 | GUESS=powerpc-ibm-os400 |
393 | ;; | |
252b5132 | 394 | arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*) |
6c037fdb NC |
395 | GUESS=arm-acorn-riscix$UNAME_RELEASE |
396 | ;; | |
7b0e8ca5 | 397 | arm*:riscos:*:*|arm*:RISCOS:*:*) |
6c037fdb NC |
398 | GUESS=arm-unknown-riscos |
399 | ;; | |
9dec4c71 | 400 | SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*) |
6c037fdb NC |
401 | GUESS=hppa1.1-hitachi-hiuxmpp |
402 | ;; | |
ada59422 | 403 | Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*) |
252b5132 | 404 | # akee@wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE. |
6c037fdb NC |
405 | case `(/bin/universe) 2>/dev/null` in |
406 | att) GUESS=pyramid-pyramid-sysv3 ;; | |
407 | *) GUESS=pyramid-pyramid-bsd ;; | |
408 | esac | |
409 | ;; | |
ada59422 | 410 | NILE*:*:*:dcosx) |
6c037fdb NC |
411 | GUESS=pyramid-pyramid-svr4 |
412 | ;; | |
00c22daa | 413 | DRS?6000:unix:4.0:6*) |
6c037fdb NC |
414 | GUESS=sparc-icl-nx6 |
415 | ;; | |
57d1eb1a | 416 | DRS?6000:UNIX_SV:4.2*:7* | DRS?6000:isis:4.2*:7*) |
6c037fdb NC |
417 | case `/usr/bin/uname -p` in |
418 | sparc) GUESS=sparc-icl-nx7 ;; | |
419 | esac | |
420 | ;; | |
7ee5dbeb | 421 | s390x:SunOS:*:*) |
6c037fdb NC |
422 | SUN_REL=`echo "$UNAME_RELEASE" | sed -e 's/[^.]*//'` |
423 | GUESS=$UNAME_MACHINE-ibm-solaris2$SUN_REL | |
424 | ;; | |
252b5132 | 425 | sun4H:SunOS:5.*:*) |
6c037fdb NC |
426 | SUN_REL=`echo "$UNAME_RELEASE" | sed -e 's/[^.]*//'` |
427 | GUESS=sparc-hal-solaris2$SUN_REL | |
428 | ;; | |
252b5132 | 429 | sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*) |
6c037fdb NC |
430 | SUN_REL=`echo "$UNAME_RELEASE" | sed -e 's/[^.]*//'` |
431 | GUESS=sparc-sun-solaris2$SUN_REL | |
432 | ;; | |
06ca7962 | 433 | i86pc:AuroraUX:5.*:* | i86xen:AuroraUX:5.*:*) |
6c037fdb NC |
434 | GUESS=i386-pc-auroraux$UNAME_RELEASE |
435 | ;; | |
f00a3165 | 436 | i86pc:SunOS:5.*:* | i86xen:SunOS:5.*:*) |
d63f2be2 | 437 | set_cc_for_build |
b43b8535 | 438 | SUN_ARCH=i386 |
bc67ad83 BE |
439 | # If there is a compiler, see if it is configured for 64-bit objects. |
440 | # Note that the Sun cc does not turn __LP64__ into 1 like gcc does. | |
441 | # This test works for both compilers. | |
5f8c2a15 | 442 | if test "$CC_FOR_BUILD" != no_compiler_found; then |
7d6d7764 | 443 | if (echo '#ifdef __amd64'; echo IS_64BIT_ARCH; echo '#endif') | \ |
6c037fdb | 444 | (CCOPTS="" $CC_FOR_BUILD -m64 -E - 2>/dev/null) | \ |
bc67ad83 BE |
445 | grep IS_64BIT_ARCH >/dev/null |
446 | then | |
b43b8535 | 447 | SUN_ARCH=x86_64 |
bc67ad83 BE |
448 | fi |
449 | fi | |
6c037fdb NC |
450 | SUN_REL=`echo "$UNAME_RELEASE" | sed -e 's/[^.]*//'` |
451 | GUESS=$SUN_ARCH-pc-solaris2$SUN_REL | |
452 | ;; | |
252b5132 RH |
453 | sun4*:SunOS:6*:*) |
454 | # According to config.sub, this is the proper way to canonicalize | |
455 | # SunOS6. Hard to guess exactly what SunOS6 will be like, but | |
456 | # it's likely to be more like Solaris than SunOS4. | |
6c037fdb NC |
457 | SUN_REL=`echo "$UNAME_RELEASE" | sed -e 's/[^.]*//'` |
458 | GUESS=sparc-sun-solaris3$SUN_REL | |
459 | ;; | |
252b5132 | 460 | sun4*:SunOS:*:*) |
6c037fdb | 461 | case `/usr/bin/arch -k` in |
252b5132 | 462 | Series*|S4*) |
6c037fdb | 463 | UNAME_RELEASE=`uname -v` |
252b5132 RH |
464 | ;; |
465 | esac | |
996ff3e8 | 466 | # Japanese Language versions have a version number like '4.1.3-JL'. |
6c037fdb NC |
467 | SUN_REL=`echo "$UNAME_RELEASE" | sed -e 's/-/_/'` |
468 | GUESS=sparc-sun-sunos$SUN_REL | |
469 | ;; | |
252b5132 | 470 | sun3*:SunOS:*:*) |
6c037fdb NC |
471 | GUESS=m68k-sun-sunos$UNAME_RELEASE |
472 | ;; | |
252b5132 | 473 | sun*:*:4.2BSD:*) |
6c037fdb | 474 | UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null` |
b5778783 | 475 | test "x$UNAME_RELEASE" = x && UNAME_RELEASE=3 |
6c037fdb | 476 | case `/bin/arch` in |
252b5132 | 477 | sun3) |
6c037fdb | 478 | GUESS=m68k-sun-sunos$UNAME_RELEASE |
252b5132 RH |
479 | ;; |
480 | sun4) | |
6c037fdb | 481 | GUESS=sparc-sun-sunos$UNAME_RELEASE |
252b5132 RH |
482 | ;; |
483 | esac | |
6c037fdb | 484 | ;; |
252b5132 | 485 | aushp:SunOS:*:*) |
6c037fdb NC |
486 | GUESS=sparc-auspex-sunos$UNAME_RELEASE |
487 | ;; | |
ada59422 AC |
488 | # The situation for MiNT is a little confusing. The machine name |
489 | # can be virtually everything (everything which is not | |
ac73857d | 490 | # "atarist" or "atariste" at least should have a processor |
ada59422 AC |
491 | # > m68000). The system name ranges from "MiNT" over "FreeMiNT" |
492 | # to the lowercase version "mint" (or "freemint"). Finally | |
493 | # the system name "TOS" denotes a system which is actually not | |
494 | # MiNT. But MiNT is downward compatible to TOS, so this should | |
495 | # be no problem. | |
496 | atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*) | |
6c037fdb NC |
497 | GUESS=m68k-atari-mint$UNAME_RELEASE |
498 | ;; | |
ada59422 | 499 | atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*) |
6c037fdb NC |
500 | GUESS=m68k-atari-mint$UNAME_RELEASE |
501 | ;; | |
ada59422 | 502 | *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*) |
6c037fdb NC |
503 | GUESS=m68k-atari-mint$UNAME_RELEASE |
504 | ;; | |
ada59422 | 505 | milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*) |
6c037fdb NC |
506 | GUESS=m68k-milan-mint$UNAME_RELEASE |
507 | ;; | |
ada59422 | 508 | hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*) |
6c037fdb NC |
509 | GUESS=m68k-hades-mint$UNAME_RELEASE |
510 | ;; | |
ada59422 | 511 | *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*) |
6c037fdb NC |
512 | GUESS=m68k-unknown-mint$UNAME_RELEASE |
513 | ;; | |
1e600082 | 514 | m68k:machten:*:*) |
6c037fdb NC |
515 | GUESS=m68k-apple-machten$UNAME_RELEASE |
516 | ;; | |
252b5132 | 517 | powerpc:machten:*:*) |
6c037fdb NC |
518 | GUESS=powerpc-apple-machten$UNAME_RELEASE |
519 | ;; | |
252b5132 | 520 | RISC*:Mach:*:*) |
6c037fdb NC |
521 | GUESS=mips-dec-mach_bsd4.3 |
522 | ;; | |
252b5132 | 523 | RISC*:ULTRIX:*:*) |
6c037fdb NC |
524 | GUESS=mips-dec-ultrix$UNAME_RELEASE |
525 | ;; | |
252b5132 | 526 | VAX*:ULTRIX*:*:*) |
6c037fdb NC |
527 | GUESS=vax-dec-ultrix$UNAME_RELEASE |
528 | ;; | |
ada59422 | 529 | 2020:CLIX:*:* | 2430:CLIX:*:*) |
6c037fdb NC |
530 | GUESS=clipper-intergraph-clix$UNAME_RELEASE |
531 | ;; | |
252b5132 | 532 | mips:*:*:UMIPS | mips:*:*:RISCos) |
d63f2be2 | 533 | set_cc_for_build |
b5778783 | 534 | sed 's/^ //' << EOF > "$dummy.c" |
ada59422 AC |
535 | #ifdef __cplusplus |
536 | #include <stdio.h> /* for printf() prototype */ | |
537 | int main (int argc, char *argv[]) { | |
538 | #else | |
539 | int main (argc, argv) int argc; char *argv[]; { | |
540 | #endif | |
252b5132 RH |
541 | #if defined (host_mips) && defined (MIPSEB) |
542 | #if defined (SYSTYPE_SYSV) | |
bf41f30d | 543 | printf ("mips-mips-riscos%ssysv\\n", argv[1]); exit (0); |
252b5132 RH |
544 | #endif |
545 | #if defined (SYSTYPE_SVR4) | |
bf41f30d | 546 | printf ("mips-mips-riscos%ssvr4\\n", argv[1]); exit (0); |
252b5132 RH |
547 | #endif |
548 | #if defined (SYSTYPE_BSD43) || defined(SYSTYPE_BSD) | |
bf41f30d | 549 | printf ("mips-mips-riscos%sbsd\\n", argv[1]); exit (0); |
252b5132 RH |
550 | #endif |
551 | #endif | |
552 | exit (-1); | |
553 | } | |
554 | EOF | |
b5778783 | 555 | $CC_FOR_BUILD -o "$dummy" "$dummy.c" && |
6c037fdb NC |
556 | dummyarg=`echo "$UNAME_RELEASE" | sed -n 's/\([0-9]*\).*/\1/p'` && |
557 | SYSTEM_NAME=`"$dummy" "$dummyarg"` && | |
1d9c9cd7 | 558 | { echo "$SYSTEM_NAME"; exit; } |
6c037fdb NC |
559 | GUESS=mips-mips-riscos$UNAME_RELEASE |
560 | ;; | |
82208dc5 | 561 | Motorola:PowerMAX_OS:*:*) |
6c037fdb NC |
562 | GUESS=powerpc-motorola-powermax |
563 | ;; | |
707960fe | 564 | Motorola:*:4.3:PL8-*) |
6c037fdb NC |
565 | GUESS=powerpc-harris-powermax |
566 | ;; | |
3f234ef5 | 567 | Night_Hawk:*:*:PowerMAX_OS | Synergy:PowerMAX_OS:*:*) |
6c037fdb NC |
568 | GUESS=powerpc-harris-powermax |
569 | ;; | |
252b5132 | 570 | Night_Hawk:Power_UNIX:*:*) |
6c037fdb NC |
571 | GUESS=powerpc-harris-powerunix |
572 | ;; | |
252b5132 | 573 | m88k:CX/UX:7*:*) |
6c037fdb NC |
574 | GUESS=m88k-harris-cxux7 |
575 | ;; | |
252b5132 | 576 | m88k:*:4*:R4*) |
6c037fdb NC |
577 | GUESS=m88k-motorola-sysv4 |
578 | ;; | |
252b5132 | 579 | m88k:*:3*:R3*) |
6c037fdb NC |
580 | GUESS=m88k-motorola-sysv3 |
581 | ;; | |
252b5132 | 582 | AViiON:dgux:*:*) |
5548b4ce | 583 | # DG/UX returns AViiON for all architectures |
6c037fdb | 584 | UNAME_PROCESSOR=`/usr/bin/uname -p` |
5f8c2a15 | 585 | if test "$UNAME_PROCESSOR" = mc88100 || test "$UNAME_PROCESSOR" = mc88110 |
ada59422 | 586 | then |
5f8c2a15 AM |
587 | if test "$TARGET_BINARY_INTERFACE"x = m88kdguxelfx || \ |
588 | test "$TARGET_BINARY_INTERFACE"x = x | |
ada59422 | 589 | then |
6c037fdb | 590 | GUESS=m88k-dg-dgux$UNAME_RELEASE |
ada59422 | 591 | else |
6c037fdb | 592 | GUESS=m88k-dg-dguxbcs$UNAME_RELEASE |
ada59422 AC |
593 | fi |
594 | else | |
6c037fdb | 595 | GUESS=i586-dg-dgux$UNAME_RELEASE |
252b5132 | 596 | fi |
6c037fdb | 597 | ;; |
252b5132 | 598 | M88*:DolphinOS:*:*) # DolphinOS (SVR3) |
6c037fdb NC |
599 | GUESS=m88k-dolphin-sysv3 |
600 | ;; | |
252b5132 RH |
601 | M88*:*:R3*:*) |
602 | # Delta 88k system running SVR3 | |
6c037fdb NC |
603 | GUESS=m88k-motorola-sysv3 |
604 | ;; | |
252b5132 | 605 | XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3) |
6c037fdb NC |
606 | GUESS=m88k-tektronix-sysv3 |
607 | ;; | |
252b5132 | 608 | Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD) |
6c037fdb NC |
609 | GUESS=m68k-tektronix-bsd |
610 | ;; | |
252b5132 | 611 | *:IRIX*:*:*) |
6c037fdb NC |
612 | IRIX_REL=`echo "$UNAME_RELEASE" | sed -e 's/-/_/g'` |
613 | GUESS=mips-sgi-irix$IRIX_REL | |
614 | ;; | |
252b5132 | 615 | ????????:AIX?:[12].1:2) # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX. |
6c037fdb NC |
616 | GUESS=romp-ibm-aix # uname -m gives an 8 hex-code CPU id |
617 | ;; # Note that: echo "'`uname -s`'" gives 'AIX ' | |
82208dc5 | 618 | i*86:AIX:*:*) |
6c037fdb NC |
619 | GUESS=i386-ibm-aix |
620 | ;; | |
b3e0dc8e | 621 | ia64:AIX:*:*) |
5f8c2a15 | 622 | if test -x /usr/bin/oslevel ; then |
6c037fdb | 623 | IBM_REV=`/usr/bin/oslevel` |
b3e0dc8e | 624 | else |
6c037fdb | 625 | IBM_REV=$UNAME_VERSION.$UNAME_RELEASE |
b3e0dc8e | 626 | fi |
6c037fdb NC |
627 | GUESS=$UNAME_MACHINE-ibm-aix$IBM_REV |
628 | ;; | |
252b5132 RH |
629 | *:AIX:2:3) |
630 | if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then | |
d63f2be2 | 631 | set_cc_for_build |
b5778783 | 632 | sed 's/^ //' << EOF > "$dummy.c" |
252b5132 RH |
633 | #include <sys/systemcfg.h> |
634 | ||
635 | main() | |
636 | { | |
637 | if (!__power_pc()) | |
638 | exit(1); | |
639 | puts("powerpc-ibm-aix3.2.5"); | |
640 | exit(0); | |
641 | } | |
642 | EOF | |
6c037fdb | 643 | if $CC_FOR_BUILD -o "$dummy" "$dummy.c" && SYSTEM_NAME=`"$dummy"` |
1d9c9cd7 | 644 | then |
6c037fdb | 645 | GUESS=$SYSTEM_NAME |
1d9c9cd7 | 646 | else |
6c037fdb | 647 | GUESS=rs6000-ibm-aix3.2.5 |
1d9c9cd7 | 648 | fi |
252b5132 | 649 | elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then |
6c037fdb | 650 | GUESS=rs6000-ibm-aix3.2.4 |
252b5132 | 651 | else |
6c037fdb | 652 | GUESS=rs6000-ibm-aix3.2 |
252b5132 | 653 | fi |
6c037fdb | 654 | ;; |
5548b4ce | 655 | *:AIX:*:[4567]) |
6c037fdb | 656 | IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'` |
b5778783 | 657 | if /usr/sbin/lsattr -El "$IBM_CPU_ID" | grep ' POWER' >/dev/null 2>&1; then |
252b5132 RH |
658 | IBM_ARCH=rs6000 |
659 | else | |
660 | IBM_ARCH=powerpc | |
661 | fi | |
5f8c2a15 | 662 | if test -x /usr/bin/lslpp ; then |
6c037fdb NC |
663 | IBM_REV=`/usr/bin/lslpp -Lqc bos.rte.libc | \ |
664 | awk -F: '{ print $3 }' | sed s/[0-9]*$/0/` | |
252b5132 | 665 | else |
6c037fdb | 666 | IBM_REV=$UNAME_VERSION.$UNAME_RELEASE |
252b5132 | 667 | fi |
6c037fdb NC |
668 | GUESS=$IBM_ARCH-ibm-aix$IBM_REV |
669 | ;; | |
252b5132 | 670 | *:AIX:*:*) |
6c037fdb NC |
671 | GUESS=rs6000-ibm-aix |
672 | ;; | |
bf41f30d | 673 | ibmrt:4.4BSD:*|romp-ibm:4.4BSD:*) |
6c037fdb NC |
674 | GUESS=romp-ibm-bsd4.4 |
675 | ;; | |
ada59422 | 676 | ibmrt:*BSD:*|romp-ibm:BSD:*) # covers RT/PC BSD and |
6c037fdb NC |
677 | GUESS=romp-ibm-bsd$UNAME_RELEASE # 4.3 with uname added to |
678 | ;; # report: romp-ibm BSD 4.3 | |
252b5132 | 679 | *:BOSX:*:*) |
6c037fdb NC |
680 | GUESS=rs6000-bull-bosx |
681 | ;; | |
252b5132 | 682 | DPX/2?00:B.O.S.:*:*) |
6c037fdb NC |
683 | GUESS=m68k-bull-sysv3 |
684 | ;; | |
252b5132 | 685 | 9000/[34]??:4.3bsd:1.*:*) |
6c037fdb NC |
686 | GUESS=m68k-hp-bsd |
687 | ;; | |
252b5132 | 688 | hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*) |
6c037fdb NC |
689 | GUESS=m68k-hp-bsd4.4 |
690 | ;; | |
252b5132 | 691 | 9000/[34678]??:HP-UX:*:*) |
6c037fdb NC |
692 | HPUX_REV=`echo "$UNAME_RELEASE" | sed -e 's/[^.]*.[0B]*//'` |
693 | case $UNAME_MACHINE in | |
bf41f30d NC |
694 | 9000/31?) HP_ARCH=m68000 ;; |
695 | 9000/[34]??) HP_ARCH=m68k ;; | |
ada59422 | 696 | 9000/[678][0-9][0-9]) |
5f8c2a15 | 697 | if test -x /usr/bin/getconf; then |
6c037fdb NC |
698 | sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null` |
699 | sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null` | |
700 | case $sc_cpu_version in | |
b43b8535 NC |
701 | 523) HP_ARCH=hppa1.0 ;; # CPU_PA_RISC1_0 |
702 | 528) HP_ARCH=hppa1.1 ;; # CPU_PA_RISC1_1 | |
5548b4ce | 703 | 532) # CPU_PA_RISC2_0 |
6c037fdb | 704 | case $sc_kernel_bits in |
b43b8535 NC |
705 | 32) HP_ARCH=hppa2.0n ;; |
706 | 64) HP_ARCH=hppa2.0w ;; | |
707 | '') HP_ARCH=hppa2.0 ;; # HP-UX 10.20 | |
5548b4ce DE |
708 | esac ;; |
709 | esac | |
0e254642 | 710 | fi |
5f8c2a15 | 711 | if test "$HP_ARCH" = ""; then |
d63f2be2 | 712 | set_cc_for_build |
b5778783 | 713 | sed 's/^ //' << EOF > "$dummy.c" |
ac73857d | 714 | |
5548b4ce DE |
715 | #define _HPUX_SOURCE |
716 | #include <stdlib.h> | |
717 | #include <unistd.h> | |
ada59422 | 718 | |
5548b4ce DE |
719 | int main () |
720 | { | |
721 | #if defined(_SC_KERNEL_BITS) | |
722 | long bits = sysconf(_SC_KERNEL_BITS); | |
723 | #endif | |
724 | long cpu = sysconf (_SC_CPU_VERSION); | |
ada59422 | 725 | |
5548b4ce DE |
726 | switch (cpu) |
727 | { | |
728 | case CPU_PA_RISC1_0: puts ("hppa1.0"); break; | |
729 | case CPU_PA_RISC1_1: puts ("hppa1.1"); break; | |
730 | case CPU_PA_RISC2_0: | |
731 | #if defined(_SC_KERNEL_BITS) | |
732 | switch (bits) | |
733 | { | |
734 | case 64: puts ("hppa2.0w"); break; | |
735 | case 32: puts ("hppa2.0n"); break; | |
736 | default: puts ("hppa2.0"); break; | |
737 | } break; | |
738 | #else /* !defined(_SC_KERNEL_BITS) */ | |
739 | puts ("hppa2.0"); break; | |
740 | #endif | |
741 | default: puts ("hppa1.0"); break; | |
742 | } | |
743 | exit (0); | |
744 | } | |
252b5132 | 745 | EOF |
6c037fdb | 746 | (CCOPTS="" $CC_FOR_BUILD -o "$dummy" "$dummy.c" 2>/dev/null) && HP_ARCH=`"$dummy"` |
3f234ef5 | 747 | test -z "$HP_ARCH" && HP_ARCH=hppa |
0e254642 | 748 | fi ;; |
252b5132 | 749 | esac |
5f8c2a15 | 750 | if test "$HP_ARCH" = hppa2.0w |
3f234ef5 | 751 | then |
d63f2be2 | 752 | set_cc_for_build |
1d9c9cd7 KC |
753 | |
754 | # hppa2.0w-hp-hpux* has a 64-bit kernel and a compiler generating | |
755 | # 32-bit code. hppa64-hp-hpux* has the same kernel and a compiler | |
756 | # generating 64-bit code. GNU and HP use different nomenclature: | |
757 | # | |
758 | # $ CC_FOR_BUILD=cc ./config.guess | |
759 | # => hppa2.0w-hp-hpux11.23 | |
760 | # $ CC_FOR_BUILD="cc +DA2.0w" ./config.guess | |
761 | # => hppa64-hp-hpux11.23 | |
762 | ||
b43b8535 | 763 | if echo __LP64__ | (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | |
2262bbf4 | 764 | grep -q __LP64__ |
3f234ef5 | 765 | then |
b43b8535 | 766 | HP_ARCH=hppa2.0w |
3f234ef5 | 767 | else |
b43b8535 | 768 | HP_ARCH=hppa64 |
3f234ef5 CD |
769 | fi |
770 | fi | |
6c037fdb NC |
771 | GUESS=$HP_ARCH-hp-hpux$HPUX_REV |
772 | ;; | |
35590697 | 773 | ia64:HP-UX:*:*) |
6c037fdb NC |
774 | HPUX_REV=`echo "$UNAME_RELEASE" | sed -e 's/[^.]*.[0B]*//'` |
775 | GUESS=ia64-hp-hpux$HPUX_REV | |
776 | ;; | |
252b5132 | 777 | 3050*:HI-UX:*:*) |
d63f2be2 | 778 | set_cc_for_build |
b5778783 | 779 | sed 's/^ //' << EOF > "$dummy.c" |
252b5132 RH |
780 | #include <unistd.h> |
781 | int | |
782 | main () | |
783 | { | |
784 | long cpu = sysconf (_SC_CPU_VERSION); | |
785 | /* The order matters, because CPU_IS_HP_MC68K erroneously returns | |
786 | true for CPU_PA_RISC1_0. CPU_IS_PA_RISC returns correct | |
787 | results, however. */ | |
788 | if (CPU_IS_PA_RISC (cpu)) | |
789 | { | |
790 | switch (cpu) | |
791 | { | |
792 | case CPU_PA_RISC1_0: puts ("hppa1.0-hitachi-hiuxwe2"); break; | |
793 | case CPU_PA_RISC1_1: puts ("hppa1.1-hitachi-hiuxwe2"); break; | |
794 | case CPU_PA_RISC2_0: puts ("hppa2.0-hitachi-hiuxwe2"); break; | |
795 | default: puts ("hppa-hitachi-hiuxwe2"); break; | |
796 | } | |
797 | } | |
798 | else if (CPU_IS_HP_MC68K (cpu)) | |
799 | puts ("m68k-hitachi-hiuxwe2"); | |
800 | else puts ("unknown-hitachi-hiuxwe2"); | |
801 | exit (0); | |
802 | } | |
803 | EOF | |
6c037fdb | 804 | $CC_FOR_BUILD -o "$dummy" "$dummy.c" && SYSTEM_NAME=`"$dummy"` && |
1d9c9cd7 | 805 | { echo "$SYSTEM_NAME"; exit; } |
6c037fdb NC |
806 | GUESS=unknown-hitachi-hiuxwe2 |
807 | ;; | |
bf41f30d | 808 | 9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:*) |
6c037fdb NC |
809 | GUESS=hppa1.1-hp-bsd |
810 | ;; | |
252b5132 | 811 | 9000/8??:4.3bsd:*:*) |
6c037fdb NC |
812 | GUESS=hppa1.0-hp-bsd |
813 | ;; | |
82208dc5 | 814 | *9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*) |
6c037fdb NC |
815 | GUESS=hppa1.0-hp-mpeix |
816 | ;; | |
bf41f30d | 817 | hp7??:OSF1:*:* | hp8?[79]:OSF1:*:*) |
6c037fdb NC |
818 | GUESS=hppa1.1-hp-osf |
819 | ;; | |
252b5132 | 820 | hp8??:OSF1:*:*) |
6c037fdb NC |
821 | GUESS=hppa1.0-hp-osf |
822 | ;; | |
82208dc5 | 823 | i*86:OSF1:*:*) |
5f8c2a15 | 824 | if test -x /usr/sbin/sysversion ; then |
6c037fdb | 825 | GUESS=$UNAME_MACHINE-unknown-osf1mk |
252b5132 | 826 | else |
6c037fdb | 827 | GUESS=$UNAME_MACHINE-unknown-osf1 |
252b5132 | 828 | fi |
6c037fdb | 829 | ;; |
252b5132 | 830 | parisc*:Lites*:*:*) |
6c037fdb NC |
831 | GUESS=hppa1.1-hp-lites |
832 | ;; | |
252b5132 | 833 | C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*) |
6c037fdb NC |
834 | GUESS=c1-convex-bsd |
835 | ;; | |
252b5132 RH |
836 | C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*) |
837 | if getsysinfo -f scalar_acc | |
838 | then echo c32-convex-bsd | |
839 | else echo c2-convex-bsd | |
840 | fi | |
5548b4ce | 841 | exit ;; |
252b5132 | 842 | C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*) |
6c037fdb NC |
843 | GUESS=c34-convex-bsd |
844 | ;; | |
252b5132 | 845 | C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*) |
6c037fdb NC |
846 | GUESS=c38-convex-bsd |
847 | ;; | |
252b5132 | 848 | C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*) |
6c037fdb NC |
849 | GUESS=c4-convex-bsd |
850 | ;; | |
252b5132 | 851 | CRAY*Y-MP:*:*:*) |
6c037fdb NC |
852 | CRAY_REL=`echo "$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/'` |
853 | GUESS=ymp-cray-unicos$CRAY_REL | |
854 | ;; | |
252b5132 | 855 | CRAY*[A-Z]90:*:*:*) |
b5778783 | 856 | echo "$UNAME_MACHINE"-cray-unicos"$UNAME_RELEASE" \ |
252b5132 | 857 | | sed -e 's/CRAY.*\([A-Z]90\)/\1/' \ |
82208dc5 AM |
858 | -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \ |
859 | -e 's/\.[^.]*$/.X/' | |
1d9c9cd7 | 860 | exit ;; |
252b5132 | 861 | CRAY*TS:*:*:*) |
6c037fdb NC |
862 | CRAY_REL=`echo "$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/'` |
863 | GUESS=t90-cray-unicos$CRAY_REL | |
864 | ;; | |
35590697 | 865 | CRAY*T3E:*:*:*) |
6c037fdb NC |
866 | CRAY_REL=`echo "$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/'` |
867 | GUESS=alphaev5-cray-unicosmk$CRAY_REL | |
868 | ;; | |
ada59422 | 869 | CRAY*SV1:*:*:*) |
6c037fdb NC |
870 | CRAY_REL=`echo "$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/'` |
871 | GUESS=sv1-cray-unicos$CRAY_REL | |
872 | ;; | |
3f234ef5 | 873 | *:UNICOS/mp:*:*) |
6c037fdb NC |
874 | CRAY_REL=`echo "$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/'` |
875 | GUESS=craynv-cray-unicosmp$CRAY_REL | |
876 | ;; | |
35590697 | 877 | F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*) |
6c037fdb NC |
878 | FUJITSU_PROC=`uname -m | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz` |
879 | FUJITSU_SYS=`uname -p | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz | sed -e 's/\///'` | |
880 | FUJITSU_REL=`echo "$UNAME_RELEASE" | sed -e 's/ /_/'` | |
881 | GUESS=${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL} | |
882 | ;; | |
1e600082 | 883 | 5000:UNIX_System_V:4.*:*) |
6c037fdb NC |
884 | FUJITSU_SYS=`uname -p | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz | sed -e 's/\///'` |
885 | FUJITSU_REL=`echo "$UNAME_RELEASE" | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz | sed -e 's/ /_/'` | |
886 | GUESS=sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL} | |
887 | ;; | |
82208dc5 | 888 | i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*) |
6c037fdb NC |
889 | GUESS=$UNAME_MACHINE-pc-bsdi$UNAME_RELEASE |
890 | ;; | |
ada59422 | 891 | sparc*:BSD/OS:*:*) |
6c037fdb NC |
892 | GUESS=sparc-unknown-bsdi$UNAME_RELEASE |
893 | ;; | |
ada59422 | 894 | *:BSD/OS:*:*) |
6c037fdb NC |
895 | GUESS=$UNAME_MACHINE-unknown-bsdi$UNAME_RELEASE |
896 | ;; | |
d63f2be2 | 897 | arm:FreeBSD:*:*) |
6c037fdb | 898 | UNAME_PROCESSOR=`uname -p` |
d63f2be2 RO |
899 | set_cc_for_build |
900 | if echo __ARM_PCS_VFP | $CC_FOR_BUILD -E - 2>/dev/null \ | |
901 | | grep -q __ARM_PCS_VFP | |
902 | then | |
6c037fdb NC |
903 | FREEBSD_REL=`echo "$UNAME_RELEASE" | sed -e 's/[-(].*//'` |
904 | GUESS=$UNAME_PROCESSOR-unknown-freebsd$FREEBSD_REL-gnueabi | |
d63f2be2 | 905 | else |
6c037fdb NC |
906 | FREEBSD_REL=`echo "$UNAME_RELEASE" | sed -e 's/[-(].*//'` |
907 | GUESS=$UNAME_PROCESSOR-unknown-freebsd$FREEBSD_REL-gnueabihf | |
d63f2be2 | 908 | fi |
6c037fdb | 909 | ;; |
1e600082 | 910 | *:FreeBSD:*:*) |
ce3abd47 | 911 | UNAME_PROCESSOR=`uname -p` |
6c037fdb | 912 | case $UNAME_PROCESSOR in |
49b9e644 | 913 | amd64) |
bf41f30d | 914 | UNAME_PROCESSOR=x86_64 ;; |
11997a83 NC |
915 | i386) |
916 | UNAME_PROCESSOR=i586 ;; | |
ec49b2b8 | 917 | esac |
6c037fdb NC |
918 | FREEBSD_REL=`echo "$UNAME_RELEASE" | sed -e 's/[-(].*//'` |
919 | GUESS=$UNAME_PROCESSOR-unknown-freebsd$FREEBSD_REL | |
920 | ;; | |
ada59422 | 921 | i*:CYGWIN*:*) |
6c037fdb NC |
922 | GUESS=$UNAME_MACHINE-pc-cygwin |
923 | ;; | |
7b0e8ca5 | 924 | *:MINGW64*:*) |
6c037fdb NC |
925 | GUESS=$UNAME_MACHINE-pc-mingw64 |
926 | ;; | |
98a1bbc5 | 927 | *:MINGW*:*) |
6c037fdb NC |
928 | GUESS=$UNAME_MACHINE-pc-mingw32 |
929 | ;; | |
39d1b2ae | 930 | *:MSYS*:*) |
6c037fdb NC |
931 | GUESS=$UNAME_MACHINE-pc-msys |
932 | ;; | |
6e8dd58f | 933 | i*:PW*:*) |
6c037fdb NC |
934 | GUESS=$UNAME_MACHINE-pc-pw32 |
935 | ;; | |
936 | *:SerenityOS:*:*) | |
937 | GUESS=$UNAME_MACHINE-pc-serenity | |
938 | ;; | |
e12dec02 | 939 | *:Interix*:*) |
6c037fdb | 940 | case $UNAME_MACHINE in |
f00a3165 | 941 | x86) |
6c037fdb NC |
942 | GUESS=i586-pc-interix$UNAME_RELEASE |
943 | ;; | |
e12dec02 | 944 | authenticamd | genuineintel | EM64T) |
6c037fdb NC |
945 | GUESS=x86_64-unknown-interix$UNAME_RELEASE |
946 | ;; | |
9f1e7fd3 | 947 | IA64) |
6c037fdb NC |
948 | GUESS=ia64-unknown-interix$UNAME_RELEASE |
949 | ;; | |
98a1bbc5 | 950 | esac ;; |
252b5132 | 951 | i*:UWIN*:*) |
6c037fdb NC |
952 | GUESS=$UNAME_MACHINE-pc-uwin |
953 | ;; | |
be01d343 | 954 | amd64:CYGWIN*:*:* | x86_64:CYGWIN*:*:*) |
6c037fdb NC |
955 | GUESS=x86_64-pc-cygwin |
956 | ;; | |
252b5132 | 957 | prep*:SunOS:5.*:*) |
6c037fdb NC |
958 | SUN_REL=`echo "$UNAME_RELEASE" | sed -e 's/[^.]*//'` |
959 | GUESS=powerpcle-unknown-solaris2$SUN_REL | |
960 | ;; | |
252b5132 | 961 | *:GNU:*:*) |
1e600082 | 962 | # the GNU system |
6c037fdb NC |
963 | GNU_ARCH=`echo "$UNAME_MACHINE" | sed -e 's,[-/].*$,,'` |
964 | GNU_REL=`echo "$UNAME_RELEASE" | sed -e 's,/.*$,,'` | |
965 | GUESS=$GNU_ARCH-unknown-$LIBC$GNU_REL | |
966 | ;; | |
1e600082 AC |
967 | *:GNU/*:*:*) |
968 | # other systems with GNU libc and userland | |
6c037fdb NC |
969 | GNU_SYS=`echo "$UNAME_SYSTEM" | sed 's,^[^/]*/,,' | tr "[:upper:]" "[:lower:]"` |
970 | GNU_REL=`echo "$UNAME_RELEASE" | sed -e 's/[-(].*//'` | |
971 | GUESS=$UNAME_MACHINE-unknown-$GNU_SYS$GNU_REL-$LIBC | |
972 | ;; | |
996ff3e8 NC |
973 | x86_64:[Mm]anagarm:*:*|i?86:[Mm]anagarm:*:*) |
974 | GUESS="$UNAME_MACHINE-pc-managarm-mlibc" | |
975 | ;; | |
976 | *:[Mm]anagarm:*:*) | |
977 | GUESS="$UNAME_MACHINE-unknown-managarm-mlibc" | |
978 | ;; | |
c5244148 | 979 | *:Minix:*:*) |
6c037fdb NC |
980 | GUESS=$UNAME_MACHINE-unknown-minix |
981 | ;; | |
7b0e8ca5 | 982 | aarch64:Linux:*:*) |
ce3abd47 NC |
983 | set_cc_for_build |
984 | CPU=$UNAME_MACHINE | |
985 | LIBCABI=$LIBC | |
986 | if test "$CC_FOR_BUILD" != no_compiler_found; then | |
987 | ABI=64 | |
988 | sed 's/^ //' << EOF > "$dummy.c" | |
989 | #ifdef __ARM_EABI__ | |
990 | #ifdef __ARM_PCS_VFP | |
991 | ABI=eabihf | |
992 | #else | |
993 | ABI=eabi | |
994 | #endif | |
995 | #endif | |
996 | EOF | |
997 | cc_set_abi=`$CC_FOR_BUILD -E "$dummy.c" 2>/dev/null | grep '^ABI' | sed 's, ,,g'` | |
998 | eval "$cc_set_abi" | |
999 | case $ABI in | |
1000 | eabi | eabihf) CPU=armv8l; LIBCABI=$LIBC$ABI ;; | |
1001 | esac | |
1002 | fi | |
1003 | GUESS=$CPU-unknown-linux-$LIBCABI | |
6c037fdb | 1004 | ;; |
7b0e8ca5 MF |
1005 | aarch64_be:Linux:*:*) |
1006 | UNAME_MACHINE=aarch64_be | |
6c037fdb NC |
1007 | GUESS=$UNAME_MACHINE-unknown-linux-$LIBC |
1008 | ;; | |
707a0b5c | 1009 | alpha:Linux:*:*) |
6c037fdb | 1010 | case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' /proc/cpuinfo 2>/dev/null` in |
707a0b5c NC |
1011 | EV5) UNAME_MACHINE=alphaev5 ;; |
1012 | EV56) UNAME_MACHINE=alphaev56 ;; | |
1013 | PCA56) UNAME_MACHINE=alphapca56 ;; | |
1014 | PCA57) UNAME_MACHINE=alphapca56 ;; | |
1015 | EV6) UNAME_MACHINE=alphaev6 ;; | |
1016 | EV67) UNAME_MACHINE=alphaev67 ;; | |
1017 | EV68*) UNAME_MACHINE=alphaev68 ;; | |
5548b4ce | 1018 | esac |
707a0b5c | 1019 | objdump --private-headers /bin/sh | grep -q ld.so.1 |
b43b8535 | 1020 | if test "$?" = 0 ; then LIBC=gnulibc1 ; fi |
6c037fdb NC |
1021 | GUESS=$UNAME_MACHINE-unknown-linux-$LIBC |
1022 | ;; | |
1023 | arc:Linux:*:* | arceb:Linux:*:* | arc32:Linux:*:* | arc64:Linux:*:*) | |
1024 | GUESS=$UNAME_MACHINE-unknown-linux-$LIBC | |
1025 | ;; | |
b3e0dc8e | 1026 | arm*:Linux:*:*) |
d63f2be2 | 1027 | set_cc_for_build |
ad25e7d5 BE |
1028 | if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \ |
1029 | | grep -q __ARM_EABI__ | |
1030 | then | |
6c037fdb | 1031 | GUESS=$UNAME_MACHINE-unknown-linux-$LIBC |
ad25e7d5 | 1032 | else |
3c0013bf NC |
1033 | if echo __ARM_PCS_VFP | $CC_FOR_BUILD -E - 2>/dev/null \ |
1034 | | grep -q __ARM_PCS_VFP | |
1035 | then | |
6c037fdb | 1036 | GUESS=$UNAME_MACHINE-unknown-linux-${LIBC}eabi |
3c0013bf | 1037 | else |
6c037fdb | 1038 | GUESS=$UNAME_MACHINE-unknown-linux-${LIBC}eabihf |
3c0013bf | 1039 | fi |
ad25e7d5 | 1040 | fi |
6c037fdb | 1041 | ;; |
17bcf627 | 1042 | avr32*:Linux:*:*) |
6c037fdb NC |
1043 | GUESS=$UNAME_MACHINE-unknown-linux-$LIBC |
1044 | ;; | |
00c22daa | 1045 | cris:Linux:*:*) |
6c037fdb NC |
1046 | GUESS=$UNAME_MACHINE-axis-linux-$LIBC |
1047 | ;; | |
eb1352ed | 1048 | crisv32:Linux:*:*) |
6c037fdb NC |
1049 | GUESS=$UNAME_MACHINE-axis-linux-$LIBC |
1050 | ;; | |
5675acd9 | 1051 | e2k:Linux:*:*) |
6c037fdb NC |
1052 | GUESS=$UNAME_MACHINE-unknown-linux-$LIBC |
1053 | ;; | |
fe69863c | 1054 | frv:Linux:*:*) |
6c037fdb NC |
1055 | GUESS=$UNAME_MACHINE-unknown-linux-$LIBC |
1056 | ;; | |
7b0e8ca5 | 1057 | hexagon:Linux:*:*) |
6c037fdb NC |
1058 | GUESS=$UNAME_MACHINE-unknown-linux-$LIBC |
1059 | ;; | |
707a0b5c | 1060 | i*86:Linux:*:*) |
6c037fdb NC |
1061 | GUESS=$UNAME_MACHINE-pc-linux-$LIBC |
1062 | ;; | |
b3e0dc8e | 1063 | ia64:Linux:*:*) |
6c037fdb NC |
1064 | GUESS=$UNAME_MACHINE-unknown-linux-$LIBC |
1065 | ;; | |
4849dfd8 | 1066 | k1om:Linux:*:*) |
6c037fdb NC |
1067 | GUESS=$UNAME_MACHINE-unknown-linux-$LIBC |
1068 | ;; | |
6e712424 PI |
1069 | kvx:Linux:*:*) |
1070 | GUESS=$UNAME_MACHINE-unknown-linux-$LIBC | |
1071 | ;; | |
1072 | kvx:cos:*:*) | |
1073 | GUESS=$UNAME_MACHINE-unknown-cos | |
1074 | ;; | |
1075 | kvx:mbr:*:*) | |
1076 | GUESS=$UNAME_MACHINE-unknown-mbr | |
1077 | ;; | |
996ff3e8 | 1078 | loongarch32:Linux:*:* | loongarch64:Linux:*:*) |
6c037fdb NC |
1079 | GUESS=$UNAME_MACHINE-unknown-linux-$LIBC |
1080 | ;; | |
eb1352ed | 1081 | m32r*:Linux:*:*) |
6c037fdb NC |
1082 | GUESS=$UNAME_MACHINE-unknown-linux-$LIBC |
1083 | ;; | |
b3e0dc8e | 1084 | m68*:Linux:*:*) |
6c037fdb NC |
1085 | GUESS=$UNAME_MACHINE-unknown-linux-$LIBC |
1086 | ;; | |
7ee5dbeb | 1087 | mips:Linux:*:* | mips64:Linux:*:*) |
d63f2be2 | 1088 | set_cc_for_build |
2376c370 JM |
1089 | IS_GLIBC=0 |
1090 | test x"${LIBC}" = xgnu && IS_GLIBC=1 | |
b5778783 | 1091 | sed 's/^ //' << EOF > "$dummy.c" |
3f234ef5 | 1092 | #undef CPU |
2376c370 JM |
1093 | #undef mips |
1094 | #undef mipsel | |
1095 | #undef mips64 | |
1096 | #undef mips64el | |
1097 | #if ${IS_GLIBC} && defined(_ABI64) | |
1098 | LIBCABI=gnuabi64 | |
1099 | #else | |
1100 | #if ${IS_GLIBC} && defined(_ABIN32) | |
1101 | LIBCABI=gnuabin32 | |
1102 | #else | |
1103 | LIBCABI=${LIBC} | |
1104 | #endif | |
1105 | #endif | |
1106 | ||
1107 | #if ${IS_GLIBC} && defined(__mips64) && defined(__mips_isa_rev) && __mips_isa_rev>=6 | |
1108 | CPU=mipsisa64r6 | |
1109 | #else | |
1110 | #if ${IS_GLIBC} && !defined(__mips64) && defined(__mips_isa_rev) && __mips_isa_rev>=6 | |
1111 | CPU=mipsisa32r6 | |
1112 | #else | |
1113 | #if defined(__mips64) | |
1114 | CPU=mips64 | |
1115 | #else | |
1116 | CPU=mips | |
1117 | #endif | |
1118 | #endif | |
1119 | #endif | |
1120 | ||
3f234ef5 | 1121 | #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL) |
2376c370 | 1122 | MIPS_ENDIAN=el |
3f234ef5 CD |
1123 | #else |
1124 | #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB) | |
2376c370 | 1125 | MIPS_ENDIAN= |
3f234ef5 | 1126 | #else |
2376c370 | 1127 | MIPS_ENDIAN= |
3f234ef5 CD |
1128 | #endif |
1129 | #endif | |
1130 | EOF | |
6c037fdb NC |
1131 | cc_set_vars=`$CC_FOR_BUILD -E "$dummy.c" 2>/dev/null | grep '^CPU\|^MIPS_ENDIAN\|^LIBCABI'` |
1132 | eval "$cc_set_vars" | |
2376c370 | 1133 | test "x$CPU" != x && { echo "$CPU${MIPS_ENDIAN}-unknown-linux-$LIBCABI"; exit; } |
b3e0dc8e | 1134 | ;; |
5ada5c6f | 1135 | mips64el:Linux:*:*) |
6c037fdb NC |
1136 | GUESS=$UNAME_MACHINE-unknown-linux-$LIBC |
1137 | ;; | |
39d1b2ae | 1138 | openrisc*:Linux:*:*) |
6c037fdb NC |
1139 | GUESS=or1k-unknown-linux-$LIBC |
1140 | ;; | |
39d1b2ae | 1141 | or32:Linux:*:* | or1k*:Linux:*:*) |
6c037fdb NC |
1142 | GUESS=$UNAME_MACHINE-unknown-linux-$LIBC |
1143 | ;; | |
bc67ad83 | 1144 | padre:Linux:*:*) |
6c037fdb NC |
1145 | GUESS=sparc-unknown-linux-$LIBC |
1146 | ;; | |
707a0b5c | 1147 | parisc64:Linux:*:* | hppa64:Linux:*:*) |
6c037fdb NC |
1148 | GUESS=hppa64-unknown-linux-$LIBC |
1149 | ;; | |
b3e0dc8e PB |
1150 | parisc:Linux:*:* | hppa:Linux:*:*) |
1151 | # Look for CPU level | |
6c037fdb NC |
1152 | case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in |
1153 | PA7*) GUESS=hppa1.1-unknown-linux-$LIBC ;; | |
1154 | PA8*) GUESS=hppa2.0-unknown-linux-$LIBC ;; | |
1155 | *) GUESS=hppa-unknown-linux-$LIBC ;; | |
b3e0dc8e | 1156 | esac |
6c037fdb | 1157 | ;; |
707a0b5c | 1158 | ppc64:Linux:*:*) |
6c037fdb NC |
1159 | GUESS=powerpc64-unknown-linux-$LIBC |
1160 | ;; | |
707a0b5c | 1161 | ppc:Linux:*:*) |
6c037fdb NC |
1162 | GUESS=powerpc-unknown-linux-$LIBC |
1163 | ;; | |
f3f51a69 | 1164 | ppc64le:Linux:*:*) |
6c037fdb NC |
1165 | GUESS=powerpc64le-unknown-linux-$LIBC |
1166 | ;; | |
f3f51a69 | 1167 | ppcle:Linux:*:*) |
6c037fdb NC |
1168 | GUESS=powerpcle-unknown-linux-$LIBC |
1169 | ;; | |
5f8c2a15 | 1170 | riscv32:Linux:*:* | riscv32be:Linux:*:* | riscv64:Linux:*:* | riscv64be:Linux:*:*) |
6c037fdb NC |
1171 | GUESS=$UNAME_MACHINE-unknown-linux-$LIBC |
1172 | ;; | |
b3e0dc8e | 1173 | s390:Linux:*:* | s390x:Linux:*:*) |
6c037fdb NC |
1174 | GUESS=$UNAME_MACHINE-ibm-linux-$LIBC |
1175 | ;; | |
1e600082 | 1176 | sh64*:Linux:*:*) |
6c037fdb NC |
1177 | GUESS=$UNAME_MACHINE-unknown-linux-$LIBC |
1178 | ;; | |
b3e0dc8e | 1179 | sh*:Linux:*:*) |
6c037fdb NC |
1180 | GUESS=$UNAME_MACHINE-unknown-linux-$LIBC |
1181 | ;; | |
b3e0dc8e | 1182 | sparc:Linux:*:* | sparc64:Linux:*:*) |
6c037fdb NC |
1183 | GUESS=$UNAME_MACHINE-unknown-linux-$LIBC |
1184 | ;; | |
5548b4ce | 1185 | tile*:Linux:*:*) |
6c037fdb NC |
1186 | GUESS=$UNAME_MACHINE-unknown-linux-$LIBC |
1187 | ;; | |
ec49b2b8 | 1188 | vax:Linux:*:*) |
6c037fdb NC |
1189 | GUESS=$UNAME_MACHINE-dec-linux-$LIBC |
1190 | ;; | |
b3e0dc8e | 1191 | x86_64:Linux:*:*) |
5f8c2a15 | 1192 | set_cc_for_build |
996ff3e8 | 1193 | CPU=$UNAME_MACHINE |
5f8c2a15 AM |
1194 | LIBCABI=$LIBC |
1195 | if test "$CC_FOR_BUILD" != no_compiler_found; then | |
996ff3e8 NC |
1196 | ABI=64 |
1197 | sed 's/^ //' << EOF > "$dummy.c" | |
1198 | #ifdef __i386__ | |
1199 | ABI=x86 | |
1200 | #else | |
1201 | #ifdef __ILP32__ | |
1202 | ABI=x32 | |
1203 | #endif | |
1204 | #endif | |
1205 | EOF | |
1206 | cc_set_abi=`$CC_FOR_BUILD -E "$dummy.c" 2>/dev/null | grep '^ABI' | sed 's, ,,g'` | |
1207 | eval "$cc_set_abi" | |
1208 | case $ABI in | |
1209 | x86) CPU=i686 ;; | |
1210 | x32) LIBCABI=${LIBC}x32 ;; | |
1211 | esac | |
5f8c2a15 | 1212 | fi |
996ff3e8 | 1213 | GUESS=$CPU-pc-linux-$LIBCABI |
6c037fdb | 1214 | ;; |
ad25e7d5 | 1215 | xtensa*:Linux:*:*) |
6c037fdb NC |
1216 | GUESS=$UNAME_MACHINE-unknown-linux-$LIBC |
1217 | ;; | |
82208dc5 AM |
1218 | i*86:DYNIX/ptx:4*:*) |
1219 | # ptx 4.0 does uname -s correctly, with DYNIX/ptx in there. | |
1220 | # earlier versions are messed up and put the nodename in both | |
1221 | # sysname and nodename. | |
6c037fdb NC |
1222 | GUESS=i386-sequent-sysv4 |
1223 | ;; | |
82208dc5 | 1224 | i*86:UNIX_SV:4.2MP:2.*) |
5548b4ce DE |
1225 | # Unixware is an offshoot of SVR4, but it has its own version |
1226 | # number series starting with 2... | |
1227 | # I am not positive that other SVR4 systems won't match this, | |
252b5132 | 1228 | # I just have to hope. -- rms. |
5548b4ce | 1229 | # Use sysv4.2uw... so that sysv4* matches it. |
6c037fdb NC |
1230 | GUESS=$UNAME_MACHINE-pc-sysv4.2uw$UNAME_VERSION |
1231 | ;; | |
3f234ef5 | 1232 | i*86:OS/2:*:*) |
996ff3e8 | 1233 | # If we were able to find 'uname', then EMX Unix compatibility |
3f234ef5 | 1234 | # is probably installed. |
6c037fdb NC |
1235 | GUESS=$UNAME_MACHINE-pc-os2-emx |
1236 | ;; | |
3f234ef5 | 1237 | i*86:XTS-300:*:STOP) |
6c037fdb NC |
1238 | GUESS=$UNAME_MACHINE-unknown-stop |
1239 | ;; | |
3f234ef5 | 1240 | i*86:atheos:*:*) |
6c037fdb NC |
1241 | GUESS=$UNAME_MACHINE-unknown-atheos |
1242 | ;; | |
1d9c9cd7 | 1243 | i*86:syllable:*:*) |
6c037fdb NC |
1244 | GUESS=$UNAME_MACHINE-pc-syllable |
1245 | ;; | |
2262bbf4 | 1246 | i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.[02]*:*) |
6c037fdb NC |
1247 | GUESS=i386-unknown-lynxos$UNAME_RELEASE |
1248 | ;; | |
3f234ef5 | 1249 | i*86:*DOS:*:*) |
6c037fdb NC |
1250 | GUESS=$UNAME_MACHINE-pc-msdosdjgpp |
1251 | ;; | |
bf41f30d | 1252 | i*86:*:4.*:*) |
6c037fdb | 1253 | UNAME_REL=`echo "$UNAME_RELEASE" | sed 's/\/MP$//'` |
252b5132 | 1254 | if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then |
6c037fdb | 1255 | GUESS=$UNAME_MACHINE-univel-sysv$UNAME_REL |
252b5132 | 1256 | else |
6c037fdb | 1257 | GUESS=$UNAME_MACHINE-pc-sysv$UNAME_REL |
ada59422 | 1258 | fi |
6c037fdb | 1259 | ;; |
1d9c9cd7 | 1260 | i*86:*:5:[678]*) |
5548b4ce | 1261 | # UnixWare 7.x, OpenUNIX and OpenServer 6. |
6c037fdb | 1262 | case `/bin/uname -X | grep "^Machine"` in |
82208dc5 AM |
1263 | *486*) UNAME_MACHINE=i486 ;; |
1264 | *Pentium) UNAME_MACHINE=i586 ;; | |
1265 | *Pent*|*Celeron) UNAME_MACHINE=i686 ;; | |
1266 | esac | |
6c037fdb NC |
1267 | GUESS=$UNAME_MACHINE-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION} |
1268 | ;; | |
82208dc5 | 1269 | i*86:*:3.2:*) |
252b5132 | 1270 | if test -f /usr/options/cb.name; then |
6c037fdb NC |
1271 | UNAME_REL=`sed -n 's/.*Version //p' </usr/options/cb.name` |
1272 | GUESS=$UNAME_MACHINE-pc-isc$UNAME_REL | |
252b5132 | 1273 | elif /bin/uname -X 2>/dev/null >/dev/null ; then |
6c037fdb | 1274 | UNAME_REL=`(/bin/uname -X|grep Release|sed -e 's/.*= //')` |
51759676 CD |
1275 | (/bin/uname -X|grep i80486 >/dev/null) && UNAME_MACHINE=i486 |
1276 | (/bin/uname -X|grep '^Machine.*Pentium' >/dev/null) \ | |
252b5132 | 1277 | && UNAME_MACHINE=i586 |
51759676 | 1278 | (/bin/uname -X|grep '^Machine.*Pent *II' >/dev/null) \ |
252b5132 | 1279 | && UNAME_MACHINE=i686 |
51759676 | 1280 | (/bin/uname -X|grep '^Machine.*Pentium Pro' >/dev/null) \ |
252b5132 | 1281 | && UNAME_MACHINE=i686 |
6c037fdb | 1282 | GUESS=$UNAME_MACHINE-pc-sco$UNAME_REL |
252b5132 | 1283 | else |
6c037fdb | 1284 | GUESS=$UNAME_MACHINE-pc-sysv32 |
252b5132 | 1285 | fi |
6c037fdb | 1286 | ;; |
252b5132 | 1287 | pc:*:*:*) |
ada59422 | 1288 | # Left here for compatibility: |
5548b4ce DE |
1289 | # uname -m prints for DJGPP always 'pc', but it prints nothing about |
1290 | # the processor, so we play safe by assuming i586. | |
15f8a1ed | 1291 | # Note: whatever this is, it MUST be the same as what config.sub |
4849dfd8 | 1292 | # prints for the "djgpp" host, or else GDB configure will decide that |
15f8a1ed | 1293 | # this is a cross-build. |
6c037fdb NC |
1294 | GUESS=i586-pc-msdosdjgpp |
1295 | ;; | |
252b5132 | 1296 | Intel:Mach:3*:*) |
6c037fdb NC |
1297 | GUESS=i386-pc-mach3 |
1298 | ;; | |
252b5132 | 1299 | paragon:*:*:*) |
6c037fdb NC |
1300 | GUESS=i860-intel-osf1 |
1301 | ;; | |
252b5132 RH |
1302 | i860:*:4.*:*) # i860-SVR4 |
1303 | if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then | |
6c037fdb | 1304 | GUESS=i860-stardent-sysv$UNAME_RELEASE # Stardent Vistra i860-SVR4 |
252b5132 | 1305 | else # Add other i860-SVR4 vendors below as they are discovered. |
6c037fdb | 1306 | GUESS=i860-unknown-sysv$UNAME_RELEASE # Unknown i860-SVR4 |
252b5132 | 1307 | fi |
6c037fdb | 1308 | ;; |
252b5132 RH |
1309 | mini*:CTIX:SYS*5:*) |
1310 | # "miniframe" | |
6c037fdb NC |
1311 | GUESS=m68010-convergent-sysv |
1312 | ;; | |
fd31a171 | 1313 | mc68k:UNIX:SYSTEM5:3.51m) |
6c037fdb NC |
1314 | GUESS=m68k-convergent-sysv |
1315 | ;; | |
3f234ef5 | 1316 | M680?0:D-NIX:5.3:*) |
6c037fdb NC |
1317 | GUESS=m68k-diab-dnix |
1318 | ;; | |
eb1352ed | 1319 | M68*:*:R3V[5678]*:*) |
1d9c9cd7 | 1320 | test -r /sysV68 && { echo 'm68k-motorola-sysv'; exit; } ;; |
eb1352ed | 1321 | 3[345]??:*:4.0:3.0 | 3[34]??A:*:4.0:3.0 | 3[34]??,*:*:4.0:3.0 | 3[34]??/*:*:4.0:3.0 | 4400:*:4.0:3.0 | 4850:*:4.0:3.0 | SKA40:*:4.0:3.0 | SDS2:*:4.0:3.0 | SHG2:*:4.0:3.0 | S7501*:*:4.0:3.0) |
252b5132 RH |
1322 | OS_REL='' |
1323 | test -r /etc/.relid \ | |
6c037fdb | 1324 | && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid` |
252b5132 | 1325 | /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ |
b5778783 | 1326 | && { echo i486-ncr-sysv4.3"$OS_REL"; exit; } |
252b5132 | 1327 | /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \ |
b5778783 | 1328 | && { echo i586-ncr-sysv4.3"$OS_REL"; exit; } ;; |
252b5132 | 1329 | 3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*) |
5548b4ce DE |
1330 | /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ |
1331 | && { echo i486-ncr-sysv4; exit; } ;; | |
0000e2bf BE |
1332 | NCR*:*:4.2:* | MPRAS*:*:4.2:*) |
1333 | OS_REL='.3' | |
1334 | test -r /etc/.relid \ | |
6c037fdb | 1335 | && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid` |
0000e2bf | 1336 | /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ |
b5778783 | 1337 | && { echo i486-ncr-sysv4.3"$OS_REL"; exit; } |
0000e2bf | 1338 | /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \ |
b5778783 | 1339 | && { echo i586-ncr-sysv4.3"$OS_REL"; exit; } |
0000e2bf | 1340 | /bin/uname -p 2>/dev/null | /bin/grep pteron >/dev/null \ |
b5778783 | 1341 | && { echo i586-ncr-sysv4.3"$OS_REL"; exit; } ;; |
82208dc5 | 1342 | m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*) |
6c037fdb NC |
1343 | GUESS=m68k-unknown-lynxos$UNAME_RELEASE |
1344 | ;; | |
252b5132 | 1345 | mc68030:UNIX_System_V:4.*:*) |
6c037fdb NC |
1346 | GUESS=m68k-atari-sysv4 |
1347 | ;; | |
252b5132 | 1348 | TSUNAMI:LynxOS:2.*:*) |
6c037fdb NC |
1349 | GUESS=sparc-unknown-lynxos$UNAME_RELEASE |
1350 | ;; | |
9dec4c71 | 1351 | rs6000:LynxOS:2.*:*) |
6c037fdb NC |
1352 | GUESS=rs6000-unknown-lynxos$UNAME_RELEASE |
1353 | ;; | |
2262bbf4 | 1354 | PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.[02]*:*) |
6c037fdb NC |
1355 | GUESS=powerpc-unknown-lynxos$UNAME_RELEASE |
1356 | ;; | |
252b5132 | 1357 | SM[BE]S:UNIX_SV:*:*) |
6c037fdb NC |
1358 | GUESS=mips-dde-sysv$UNAME_RELEASE |
1359 | ;; | |
ada59422 | 1360 | RM*:ReliantUNIX-*:*:*) |
6c037fdb NC |
1361 | GUESS=mips-sni-sysv4 |
1362 | ;; | |
252b5132 | 1363 | RM*:SINIX-*:*:*) |
6c037fdb NC |
1364 | GUESS=mips-sni-sysv4 |
1365 | ;; | |
252b5132 RH |
1366 | *:SINIX-*:*:*) |
1367 | if uname -p 2>/dev/null >/dev/null ; then | |
6c037fdb NC |
1368 | UNAME_MACHINE=`(uname -p) 2>/dev/null` |
1369 | GUESS=$UNAME_MACHINE-sni-sysv4 | |
252b5132 | 1370 | else |
6c037fdb | 1371 | GUESS=ns32k-sni-sysv |
252b5132 | 1372 | fi |
6c037fdb | 1373 | ;; |
996ff3e8 | 1374 | PENTIUM:*:4.0*:*) # Unisys 'ClearPath HMP IX 4000' SVR4/MP effort |
5548b4ce | 1375 | # says <Richard.M.Bartel@ccMail.Census.GOV> |
6c037fdb NC |
1376 | GUESS=i586-unisys-sysv4 |
1377 | ;; | |
252b5132 RH |
1378 | *:UNIX_System_V:4*:FTX*) |
1379 | # From Gerald Hewes <hewes@openmarket.com>. | |
1380 | # How about differentiating between stratus architectures? -djm | |
6c037fdb NC |
1381 | GUESS=hppa1.1-stratus-sysv4 |
1382 | ;; | |
252b5132 RH |
1383 | *:*:*:FTX*) |
1384 | # From seanf@swdc.stratus.com. | |
6c037fdb NC |
1385 | GUESS=i860-stratus-sysv4 |
1386 | ;; | |
1d9c9cd7 KC |
1387 | i*86:VOS:*:*) |
1388 | # From Paul.Green@stratus.com. | |
6c037fdb NC |
1389 | GUESS=$UNAME_MACHINE-stratus-vos |
1390 | ;; | |
82208dc5 AM |
1391 | *:VOS:*:*) |
1392 | # From Paul.Green@stratus.com. | |
6c037fdb NC |
1393 | GUESS=hppa1.1-stratus-vos |
1394 | ;; | |
252b5132 | 1395 | mc68*:A/UX:*:*) |
6c037fdb NC |
1396 | GUESS=m68k-apple-aux$UNAME_RELEASE |
1397 | ;; | |
6e8dd58f | 1398 | news*:NEWS-OS:6*:*) |
6c037fdb NC |
1399 | GUESS=mips-sony-newsos6 |
1400 | ;; | |
ada59422 | 1401 | R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*) |
5f8c2a15 | 1402 | if test -d /usr/nec; then |
6c037fdb | 1403 | GUESS=mips-nec-sysv$UNAME_RELEASE |
252b5132 | 1404 | else |
6c037fdb | 1405 | GUESS=mips-unknown-sysv$UNAME_RELEASE |
252b5132 | 1406 | fi |
6c037fdb | 1407 | ;; |
252b5132 | 1408 | BeBox:BeOS:*:*) # BeOS running on hardware made by Be, PPC only. |
6c037fdb NC |
1409 | GUESS=powerpc-be-beos |
1410 | ;; | |
252b5132 | 1411 | BeMac:BeOS:*:*) # BeOS running on Mac or Mac clone, PPC only. |
6c037fdb NC |
1412 | GUESS=powerpc-apple-beos |
1413 | ;; | |
252b5132 | 1414 | BePC:BeOS:*:*) # BeOS running on Intel PC compatible. |
6c037fdb NC |
1415 | GUESS=i586-pc-beos |
1416 | ;; | |
a1f93a5e | 1417 | BePC:Haiku:*:*) # Haiku running on Intel PC compatible. |
6c037fdb NC |
1418 | GUESS=i586-pc-haiku |
1419 | ;; | |
996ff3e8 NC |
1420 | ppc:Haiku:*:*) # Haiku running on Apple PowerPC |
1421 | GUESS=powerpc-apple-haiku | |
1422 | ;; | |
1423 | *:Haiku:*:*) # Haiku modern gcc (not bound by BeOS compat) | |
1424 | GUESS=$UNAME_MACHINE-unknown-haiku | |
6c037fdb | 1425 | ;; |
ada59422 | 1426 | SX-4:SUPER-UX:*:*) |
6c037fdb NC |
1427 | GUESS=sx4-nec-superux$UNAME_RELEASE |
1428 | ;; | |
ada59422 | 1429 | SX-5:SUPER-UX:*:*) |
6c037fdb NC |
1430 | GUESS=sx5-nec-superux$UNAME_RELEASE |
1431 | ;; | |
fd31a171 | 1432 | SX-6:SUPER-UX:*:*) |
6c037fdb NC |
1433 | GUESS=sx6-nec-superux$UNAME_RELEASE |
1434 | ;; | |
0cfa5389 | 1435 | SX-7:SUPER-UX:*:*) |
6c037fdb NC |
1436 | GUESS=sx7-nec-superux$UNAME_RELEASE |
1437 | ;; | |
0cfa5389 | 1438 | SX-8:SUPER-UX:*:*) |
6c037fdb NC |
1439 | GUESS=sx8-nec-superux$UNAME_RELEASE |
1440 | ;; | |
98a1bbc5 | 1441 | SX-8R:SUPER-UX:*:*) |
6c037fdb NC |
1442 | GUESS=sx8r-nec-superux$UNAME_RELEASE |
1443 | ;; | |
b43b8535 | 1444 | SX-ACE:SUPER-UX:*:*) |
6c037fdb NC |
1445 | GUESS=sxace-nec-superux$UNAME_RELEASE |
1446 | ;; | |
ada59422 | 1447 | Power*:Rhapsody:*:*) |
6c037fdb NC |
1448 | GUESS=powerpc-apple-rhapsody$UNAME_RELEASE |
1449 | ;; | |
ada59422 | 1450 | *:Rhapsody:*:*) |
6c037fdb NC |
1451 | GUESS=$UNAME_MACHINE-apple-rhapsody$UNAME_RELEASE |
1452 | ;; | |
5f8c2a15 | 1453 | arm64:Darwin:*:*) |
6c037fdb NC |
1454 | GUESS=aarch64-apple-darwin$UNAME_RELEASE |
1455 | ;; | |
ac73857d | 1456 | *:Darwin:*:*) |
6c037fdb | 1457 | UNAME_PROCESSOR=`uname -p` |
4fb3a8da NC |
1458 | case $UNAME_PROCESSOR in |
1459 | unknown) UNAME_PROCESSOR=powerpc ;; | |
1460 | esac | |
1461 | if command -v xcode-select > /dev/null 2> /dev/null && \ | |
1462 | ! xcode-select --print-path > /dev/null 2> /dev/null ; then | |
1463 | # Avoid executing cc if there is no toolchain installed as | |
1464 | # cc will be a stub that puts up a graphical alert | |
1465 | # prompting the user to install developer tools. | |
1466 | CC_FOR_BUILD=no_compiler_found | |
1467 | else | |
1468 | set_cc_for_build | |
f3f51a69 | 1469 | fi |
5f8c2a15 | 1470 | if test "$CC_FOR_BUILD" != no_compiler_found; then |
4fb3a8da NC |
1471 | if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \ |
1472 | (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \ | |
1473 | grep IS_64BIT_ARCH >/dev/null | |
1474 | then | |
1475 | case $UNAME_PROCESSOR in | |
1476 | i386) UNAME_PROCESSOR=x86_64 ;; | |
1477 | powerpc) UNAME_PROCESSOR=powerpc64 ;; | |
1478 | esac | |
1479 | fi | |
1480 | # On 10.4-10.6 one might compile for PowerPC via gcc -arch ppc | |
1481 | if (echo '#ifdef __POWERPC__'; echo IS_PPC; echo '#endif') | \ | |
1482 | (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \ | |
1483 | grep IS_PPC >/dev/null | |
1484 | then | |
1485 | UNAME_PROCESSOR=powerpc | |
f3f51a69 | 1486 | fi |
39d1b2ae | 1487 | elif test "$UNAME_PROCESSOR" = i386 ; then |
4fb3a8da NC |
1488 | # uname -m returns i386 or x86_64 |
1489 | UNAME_PROCESSOR=$UNAME_MACHINE | |
f3f51a69 | 1490 | fi |
6c037fdb NC |
1491 | GUESS=$UNAME_PROCESSOR-apple-darwin$UNAME_RELEASE |
1492 | ;; | |
ac73857d | 1493 | *:procnto*:*:* | *:QNX:[0123456789]*:*) |
6c037fdb | 1494 | UNAME_PROCESSOR=`uname -p` |
b43b8535 | 1495 | if test "$UNAME_PROCESSOR" = x86; then |
5f284831 | 1496 | UNAME_PROCESSOR=i386 |
ac73857d AC |
1497 | UNAME_MACHINE=pc |
1498 | fi | |
6c037fdb NC |
1499 | GUESS=$UNAME_PROCESSOR-$UNAME_MACHINE-nto-qnx$UNAME_RELEASE |
1500 | ;; | |
ada59422 | 1501 | *:QNX:*:4*) |
6c037fdb NC |
1502 | GUESS=i386-pc-qnx |
1503 | ;; | |
bf41f30d | 1504 | NEO-*:NONSTOP_KERNEL:*:*) |
6c037fdb NC |
1505 | GUESS=neo-tandem-nsk$UNAME_RELEASE |
1506 | ;; | |
7b0e8ca5 | 1507 | NSE-*:NONSTOP_KERNEL:*:*) |
6c037fdb NC |
1508 | GUESS=nse-tandem-nsk$UNAME_RELEASE |
1509 | ;; | |
bf41f30d | 1510 | NSR-*:NONSTOP_KERNEL:*:*) |
6c037fdb NC |
1511 | GUESS=nsr-tandem-nsk$UNAME_RELEASE |
1512 | ;; | |
b5778783 | 1513 | NSV-*:NONSTOP_KERNEL:*:*) |
6c037fdb NC |
1514 | GUESS=nsv-tandem-nsk$UNAME_RELEASE |
1515 | ;; | |
bf41f30d | 1516 | NSX-*:NONSTOP_KERNEL:*:*) |
6c037fdb NC |
1517 | GUESS=nsx-tandem-nsk$UNAME_RELEASE |
1518 | ;; | |
35590697 | 1519 | *:NonStop-UX:*:*) |
6c037fdb NC |
1520 | GUESS=mips-compaq-nonstopux |
1521 | ;; | |
ac73857d | 1522 | BS2000:POSIX*:*:*) |
6c037fdb NC |
1523 | GUESS=bs2000-siemens-sysv |
1524 | ;; | |
ac73857d | 1525 | DS/*:UNIX_System_V:*:*) |
6c037fdb NC |
1526 | GUESS=$UNAME_MACHINE-$UNAME_SYSTEM-$UNAME_RELEASE |
1527 | ;; | |
6e8dd58f PB |
1528 | *:Plan9:*:*) |
1529 | # "uname -m" is not consistent, so use $cputype instead. 386 | |
1530 | # is converted to i386 for consistency with other x86 | |
1531 | # operating systems. | |
6c037fdb | 1532 | if test "${cputype-}" = 386; then |
6e8dd58f | 1533 | UNAME_MACHINE=i386 |
6c037fdb NC |
1534 | elif test "x${cputype-}" != x; then |
1535 | UNAME_MACHINE=$cputype | |
6e8dd58f | 1536 | fi |
6c037fdb NC |
1537 | GUESS=$UNAME_MACHINE-unknown-plan9 |
1538 | ;; | |
9dec4c71 | 1539 | *:TOPS-10:*:*) |
6c037fdb NC |
1540 | GUESS=pdp10-unknown-tops10 |
1541 | ;; | |
9dec4c71 | 1542 | *:TENEX:*:*) |
6c037fdb NC |
1543 | GUESS=pdp10-unknown-tenex |
1544 | ;; | |
9dec4c71 | 1545 | KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*) |
6c037fdb NC |
1546 | GUESS=pdp10-dec-tops20 |
1547 | ;; | |
9dec4c71 | 1548 | XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*) |
6c037fdb NC |
1549 | GUESS=pdp10-xkl-tops20 |
1550 | ;; | |
9dec4c71 | 1551 | *:TOPS-20:*:*) |
6c037fdb NC |
1552 | GUESS=pdp10-unknown-tops20 |
1553 | ;; | |
9dec4c71 | 1554 | *:ITS:*:*) |
6c037fdb NC |
1555 | GUESS=pdp10-unknown-its |
1556 | ;; | |
1e600082 | 1557 | SEI:*:*:SEIUX) |
6c037fdb NC |
1558 | GUESS=mips-sei-seiux$UNAME_RELEASE |
1559 | ;; | |
1e600082 | 1560 | *:DragonFly:*:*) |
6c037fdb NC |
1561 | DRAGONFLY_REL=`echo "$UNAME_RELEASE" | sed -e 's/[-(].*//'` |
1562 | GUESS=$UNAME_MACHINE-unknown-dragonfly$DRAGONFLY_REL | |
1563 | ;; | |
eb1352ed | 1564 | *:*VMS:*:*) |
6c037fdb NC |
1565 | UNAME_MACHINE=`(uname -p) 2>/dev/null` |
1566 | case $UNAME_MACHINE in | |
1567 | A*) GUESS=alpha-dec-vms ;; | |
1568 | I*) GUESS=ia64-dec-vms ;; | |
1569 | V*) GUESS=vax-dec-vms ;; | |
57d1eb1a DD |
1570 | esac ;; |
1571 | *:XENIX:*:SysV) | |
6c037fdb NC |
1572 | GUESS=i386-pc-xenix |
1573 | ;; | |
1d9c9cd7 | 1574 | i*86:skyos:*:*) |
6c037fdb NC |
1575 | SKYOS_REL=`echo "$UNAME_RELEASE" | sed -e 's/ .*$//'` |
1576 | GUESS=$UNAME_MACHINE-pc-skyos$SKYOS_REL | |
1577 | ;; | |
ec49b2b8 | 1578 | i*86:rdos:*:*) |
6c037fdb NC |
1579 | GUESS=$UNAME_MACHINE-pc-rdos |
1580 | ;; | |
1581 | i*86:Fiwix:*:*) | |
1582 | GUESS=$UNAME_MACHINE-pc-fiwix | |
1583 | ;; | |
2e8adb64 | 1584 | *:AROS:*:*) |
6c037fdb NC |
1585 | GUESS=$UNAME_MACHINE-unknown-aros |
1586 | ;; | |
7b0e8ca5 | 1587 | x86_64:VMkernel:*:*) |
6c037fdb NC |
1588 | GUESS=$UNAME_MACHINE-unknown-esx |
1589 | ;; | |
4849dfd8 | 1590 | amd64:Isilon\ OneFS:*:*) |
6c037fdb NC |
1591 | GUESS=x86_64-unknown-onefs |
1592 | ;; | |
d63f2be2 | 1593 | *:Unleashed:*:*) |
6c037fdb NC |
1594 | GUESS=$UNAME_MACHINE-unknown-unleashed$UNAME_RELEASE |
1595 | ;; | |
252b5132 RH |
1596 | esac |
1597 | ||
6c037fdb NC |
1598 | # Do we have a guess based on uname results? |
1599 | if test "x$GUESS" != x; then | |
1600 | echo "$GUESS" | |
1601 | exit | |
1602 | fi | |
1603 | ||
2376c370 JM |
1604 | # No uname command or uname output not recognized. |
1605 | set_cc_for_build | |
1606 | cat > "$dummy.c" <<EOF | |
1607 | #ifdef _SEQUENT_ | |
1608 | #include <sys/types.h> | |
1609 | #include <sys/utsname.h> | |
1610 | #endif | |
1611 | #if defined(ultrix) || defined(_ultrix) || defined(__ultrix) || defined(__ultrix__) | |
1612 | #if defined (vax) || defined (__vax) || defined (__vax__) || defined(mips) || defined(__mips) || defined(__mips__) || defined(MIPS) || defined(__MIPS__) | |
1613 | #include <signal.h> | |
1614 | #if defined(_SIZE_T_) || defined(SIGLOST) | |
1615 | #include <sys/utsname.h> | |
1616 | #endif | |
1617 | #endif | |
1618 | #endif | |
1619 | main () | |
1620 | { | |
1621 | #if defined (sony) | |
1622 | #if defined (MIPSEB) | |
1623 | /* BFD wants "bsd" instead of "newsos". Perhaps BFD should be changed, | |
1624 | I don't know.... */ | |
1625 | printf ("mips-sony-bsd\n"); exit (0); | |
1626 | #else | |
1627 | #include <sys/param.h> | |
1628 | printf ("m68k-sony-newsos%s\n", | |
1629 | #ifdef NEWSOS4 | |
1630 | "4" | |
1631 | #else | |
1632 | "" | |
1633 | #endif | |
1634 | ); exit (0); | |
1635 | #endif | |
1636 | #endif | |
1637 | ||
1638 | #if defined (NeXT) | |
1639 | #if !defined (__ARCHITECTURE__) | |
1640 | #define __ARCHITECTURE__ "m68k" | |
1641 | #endif | |
1642 | int version; | |
6c037fdb | 1643 | version=`(hostinfo | sed -n 's/.*NeXT Mach \([0-9]*\).*/\1/p') 2>/dev/null`; |
2376c370 JM |
1644 | if (version < 4) |
1645 | printf ("%s-next-nextstep%d\n", __ARCHITECTURE__, version); | |
1646 | else | |
1647 | printf ("%s-next-openstep%d\n", __ARCHITECTURE__, version); | |
1648 | exit (0); | |
1649 | #endif | |
1650 | ||
1651 | #if defined (MULTIMAX) || defined (n16) | |
1652 | #if defined (UMAXV) | |
1653 | printf ("ns32k-encore-sysv\n"); exit (0); | |
1654 | #else | |
1655 | #if defined (CMU) | |
1656 | printf ("ns32k-encore-mach\n"); exit (0); | |
1657 | #else | |
1658 | printf ("ns32k-encore-bsd\n"); exit (0); | |
1659 | #endif | |
1660 | #endif | |
1661 | #endif | |
1662 | ||
1663 | #if defined (__386BSD__) | |
1664 | printf ("i386-pc-bsd\n"); exit (0); | |
1665 | #endif | |
1666 | ||
1667 | #if defined (sequent) | |
1668 | #if defined (i386) | |
1669 | printf ("i386-sequent-dynix\n"); exit (0); | |
1670 | #endif | |
1671 | #if defined (ns32000) | |
1672 | printf ("ns32k-sequent-dynix\n"); exit (0); | |
1673 | #endif | |
1674 | #endif | |
1675 | ||
1676 | #if defined (_SEQUENT_) | |
1677 | struct utsname un; | |
1678 | ||
1679 | uname(&un); | |
1680 | if (strncmp(un.version, "V2", 2) == 0) { | |
1681 | printf ("i386-sequent-ptx2\n"); exit (0); | |
1682 | } | |
1683 | if (strncmp(un.version, "V1", 2) == 0) { /* XXX is V1 correct? */ | |
1684 | printf ("i386-sequent-ptx1\n"); exit (0); | |
1685 | } | |
1686 | printf ("i386-sequent-ptx\n"); exit (0); | |
1687 | #endif | |
1688 | ||
1689 | #if defined (vax) | |
1690 | #if !defined (ultrix) | |
1691 | #include <sys/param.h> | |
1692 | #if defined (BSD) | |
1693 | #if BSD == 43 | |
1694 | printf ("vax-dec-bsd4.3\n"); exit (0); | |
1695 | #else | |
1696 | #if BSD == 199006 | |
1697 | printf ("vax-dec-bsd4.3reno\n"); exit (0); | |
1698 | #else | |
1699 | printf ("vax-dec-bsd\n"); exit (0); | |
1700 | #endif | |
1701 | #endif | |
1702 | #else | |
1703 | printf ("vax-dec-bsd\n"); exit (0); | |
1704 | #endif | |
1705 | #else | |
1706 | #if defined(_SIZE_T_) || defined(SIGLOST) | |
1707 | struct utsname un; | |
1708 | uname (&un); | |
1709 | printf ("vax-dec-ultrix%s\n", un.release); exit (0); | |
1710 | #else | |
1711 | printf ("vax-dec-ultrix\n"); exit (0); | |
1712 | #endif | |
1713 | #endif | |
1714 | #endif | |
1715 | #if defined(ultrix) || defined(_ultrix) || defined(__ultrix) || defined(__ultrix__) | |
1716 | #if defined(mips) || defined(__mips) || defined(__mips__) || defined(MIPS) || defined(__MIPS__) | |
1717 | #if defined(_SIZE_T_) || defined(SIGLOST) | |
1718 | struct utsname *un; | |
1719 | uname (&un); | |
1720 | printf ("mips-dec-ultrix%s\n", un.release); exit (0); | |
1721 | #else | |
1722 | printf ("mips-dec-ultrix\n"); exit (0); | |
1723 | #endif | |
1724 | #endif | |
1725 | #endif | |
1726 | ||
1727 | #if defined (alliant) && defined (i860) | |
1728 | printf ("i860-alliant-bsd\n"); exit (0); | |
1729 | #endif | |
1730 | ||
1731 | exit (1); | |
1732 | } | |
1733 | EOF | |
1734 | ||
6c037fdb | 1735 | $CC_FOR_BUILD -o "$dummy" "$dummy.c" 2>/dev/null && SYSTEM_NAME=`"$dummy"` && |
2376c370 JM |
1736 | { echo "$SYSTEM_NAME"; exit; } |
1737 | ||
1738 | # Apollos put the system type in the environment. | |
1739 | test -d /usr/apollo && { echo "$ISP-apollo-$SYSTYPE"; exit; } | |
1740 | ||
bf41f30d NC |
1741 | echo "$0: unable to guess system type" >&2 |
1742 | ||
6c037fdb | 1743 | case $UNAME_MACHINE:$UNAME_SYSTEM in |
bf41f30d NC |
1744 | mips:Linux | mips64:Linux) |
1745 | # If we got here on MIPS GNU/Linux, output extra information. | |
1746 | cat >&2 <<EOF | |
1747 | ||
1748 | NOTE: MIPS GNU/Linux systems require a C compiler to fully recognize | |
1749 | the system type. Please install a C compiler and try again. | |
1750 | EOF | |
1751 | ;; | |
1752 | esac | |
1753 | ||
ac73857d | 1754 | cat >&2 <<EOF |
ac73857d | 1755 | |
5ada5c6f | 1756 | This script (version $timestamp), has failed to recognize the |
bf41f30d NC |
1757 | operating system you are using. If your script is old, overwrite *all* |
1758 | copies of config.guess and config.sub with the latest versions from: | |
ac73857d | 1759 | |
5f8c2a15 | 1760 | https://git.savannah.gnu.org/cgit/config.git/plain/config.guess |
1d9c9cd7 | 1761 | and |
5f8c2a15 AM |
1762 | https://git.savannah.gnu.org/cgit/config.git/plain/config.sub |
1763 | EOF | |
1764 | ||
6c037fdb NC |
1765 | our_year=`echo $timestamp | sed 's,-.*,,'` |
1766 | thisyear=`date +%Y` | |
5f8c2a15 | 1767 | # shellcheck disable=SC2003 |
6c037fdb NC |
1768 | script_age=`expr "$thisyear" - "$our_year"` |
1769 | if test "$script_age" -lt 3 ; then | |
5f8c2a15 | 1770 | cat >&2 <<EOF |
ac73857d | 1771 | |
5ada5c6f DE |
1772 | If $0 has already been updated, send the following data and any |
1773 | information you think might be pertinent to config-patches@gnu.org to | |
1774 | provide the necessary information to handle your system. | |
ac73857d | 1775 | |
9dec4c71 | 1776 | config.guess timestamp = $timestamp |
ac73857d | 1777 | |
6c037fdb NC |
1778 | uname -m = `(uname -m) 2>/dev/null || echo unknown` |
1779 | uname -r = `(uname -r) 2>/dev/null || echo unknown` | |
1780 | uname -s = `(uname -s) 2>/dev/null || echo unknown` | |
1781 | uname -v = `(uname -v) 2>/dev/null || echo unknown` | |
ac73857d | 1782 | |
6c037fdb NC |
1783 | /usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null` |
1784 | /bin/uname -X = `(/bin/uname -X) 2>/dev/null` | |
ac73857d | 1785 | |
6c037fdb NC |
1786 | hostinfo = `(hostinfo) 2>/dev/null` |
1787 | /bin/universe = `(/bin/universe) 2>/dev/null` | |
1788 | /usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null` | |
1789 | /bin/arch = `(/bin/arch) 2>/dev/null` | |
1790 | /usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null` | |
1791 | /usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null` | |
ac73857d | 1792 | |
b5778783 NC |
1793 | UNAME_MACHINE = "$UNAME_MACHINE" |
1794 | UNAME_RELEASE = "$UNAME_RELEASE" | |
1795 | UNAME_SYSTEM = "$UNAME_SYSTEM" | |
1796 | UNAME_VERSION = "$UNAME_VERSION" | |
ac73857d | 1797 | EOF |
5f8c2a15 | 1798 | fi |
252b5132 RH |
1799 | |
1800 | exit 1 | |
ac73857d AC |
1801 | |
1802 | # Local variables: | |
b5778783 | 1803 | # eval: (add-hook 'before-save-hook 'time-stamp) |
35590697 | 1804 | # time-stamp-start: "timestamp='" |
ac73857d AC |
1805 | # time-stamp-format: "%:y-%02m-%02d" |
1806 | # time-stamp-end: "'" | |
1807 | # End: |