• R/O
  • HTTP
  • SSH
  • HTTPS

提交

标签
No Tags

Frequently used words (click to add to your profile)

javac++androidlinuxc#windowsobjective-ccocoa誰得qtpythonphprubygameguibathyscaphec計画中(planning stage)翻訳omegatframeworktwitterdomtestvb.netdirectxゲームエンジンbtronarduinopreviewer

The MinGW.org Windows System Libraries


Commit MetaInfo

修订版1c4f53bbf59753843994a1a1bb09bf81743bf15c (tree)
时间2016-09-21 04:25:20
作者Keith Marshall <keithmarshall@user...>
CommiterKeith Marshall

Log Message

Prepare and tag mingwrt-3.22.2 patch release.

更改概述

差异

--- a/mingwrt/ChangeLog
+++ b/mingwrt/ChangeLog
@@ -1,3 +1,38 @@
1+2016-09-20 Keith Marshall <keithmarshall@users.sourceforge.net>
2+
3+ Prepare and tag mingwrt-3.22.2 patch release.
4+
5+ * configure.ac (AC_INIT): Increment patch level.
6+ * config.guess config.sub: Delete, per 2016-07-16 commit.
7+ * include/stdlib.h: Backport, per 2016-09-14 commit.
8+ * include/wchar.h: Backport, per 2016-09-17 commits.
9+
10+2016-09-17 Keith Marshall <keithmarshall@users.sourceforge.net>
11+
12+ Add missing <wchar.h> declarations when compiling C++.
13+
14+ * include/wchar.h (fwide, mbsinit, wmemset, wmemchr, wmemcpy)
15+ (wmemmove, wcstoll, wcstoull): Declare each of these for either of...
16+ [_ISOC99_SOURCE || __cplusplus]: ...these conditions, rather than...
17+ [_ISOC99_SOURCE]: ...this alone.
18+
19+2016-09-17 Keith Marshall <keithmarshall@users.sourceforge.net>
20+
21+ Stricter <wchar.h> ISO-C99 conformity filtering.
22+
23+ * include/wchar.h [__STRICT_ANSI__]: Do not include any part of...
24+ (direct.h, io.h, sys/stat.h, locale.h, process.h): ...any of these.
25+
26+2016-09-14 Keith Marshall <keithmarshall@users.sourceforge.net>
27+
28+ Relax strict ISO-C conformity to facilitate C99 support.
29+
30+ * include/stdlib.h (_atoi64, _exit) [__STRICT_ANSI__]: Convention
31+ dictates that the Microsoft specific functions should not be declared;
32+ however, C99 provides equivalents in atoll() and _Exit(), for which we
33+ gratuituously use them to provide inline implementations; thus...
34+ [_ISOC99_SOURCE && !__NO_INLINE__]: ...declare them anyway.
35+
136 2016-07-31 Keith Marshall <keithmarshall@users.sourceforge.net>
237
338 Prepare and tag all files for release of mingwrt-3.22.1.
@@ -38,6 +73,12 @@
3873
3974 * Makefile.in (mingwrt-srcdist-files): Add msvcrt-xref.
4075
76+2016-07-16 Keith Marshall <keithmarshall@users.sourceforge.net>
77+
78+ Discard redundant config.guess and config.sub files.
79+
80+ * config.guess config.sub: Delete them; they are no longer required.
81+
4182 2016-07-14 Keith Marshall <keithmarshall@users.sourceforge.net>
4283
4384 Prepare and tag all files for release of mingwrt-3.22.
--- a/mingwrt/config.guess
+++ /dev/null
@@ -1,1407 +0,0 @@
1-#! /bin/sh
2-# Attempt to guess a canonical system name.
3-# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
4-# 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
5-
6-timestamp='2003-07-02'
7-
8-# This file is free software; you can redistribute it and/or modify it
9-# under the terms of the GNU General Public License as published by
10-# the Free Software Foundation; either version 2 of the License, or
11-# (at your option) any later version.
12-#
13-# This program is distributed in the hope that it will be useful, but
14-# WITHOUT ANY WARRANTY; without even the implied warranty of
15-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
16-# General Public License for more details.
17-#
18-# You should have received a copy of the GNU General Public License
19-# along with this program; if not, write to the Free Software
20-# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
21-#
22-# As a special exception to the GNU General Public License, if you
23-# distribute this file as part of a program that contains a
24-# configuration script generated by Autoconf, you may include it under
25-# the same distribution terms that you use for the rest of that program.
26-
27-# Originally written by Per Bothner <per@bothner.com>.
28-# Please send patches to <config-patches@gnu.org>. Submit a context
29-# diff and a properly formatted ChangeLog entry.
30-#
31-# This script attempts to guess a canonical system name similar to
32-# config.sub. If it succeeds, it prints the system name on stdout, and
33-# exits with 0. Otherwise, it exits with 1.
34-#
35-# The plan is that this can be called by configure scripts if you
36-# don't specify an explicit build system type.
37-
38-me=`echo "$0" | sed -e 's,.*/,,'`
39-
40-usage="\
41-Usage: $0 [OPTION]
42-
43-Output the configuration name of the system \`$me' is run on.
44-
45-Operation modes:
46- -h, --help print this help, then exit
47- -t, --time-stamp print date of last modification, then exit
48- -v, --version print version number, then exit
49-
50-Report bugs and patches to <config-patches@gnu.org>."
51-
52-version="\
53-GNU config.guess ($timestamp)
54-
55-Originally written by Per Bothner.
56-Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001
57-Free Software Foundation, Inc.
58-
59-This is free software; see the source for copying conditions. There is NO
60-warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
61-
62-help="
63-Try \`$me --help' for more information."
64-
65-# Parse command line
66-while test $# -gt 0 ; do
67- case $1 in
68- --time-stamp | --time* | -t )
69- echo "$timestamp" ; exit 0 ;;
70- --version | -v )
71- echo "$version" ; exit 0 ;;
72- --help | --h* | -h )
73- echo "$usage"; exit 0 ;;
74- -- ) # Stop option processing
75- shift; break ;;
76- - ) # Use stdin as input.
77- break ;;
78- -* )
79- echo "$me: invalid option $1$help" >&2
80- exit 1 ;;
81- * )
82- break ;;
83- esac
84-done
85-
86-if test $# != 0; then
87- echo "$me: too many arguments$help" >&2
88- exit 1
89-fi
90-
91-trap 'exit 1' 1 2 15
92-
93-# CC_FOR_BUILD -- compiler used by this script. Note that the use of a
94-# compiler to aid in system detection is discouraged as it requires
95-# temporary files to be created and, as you can see below, it is a
96-# headache to deal with in a portable fashion.
97-
98-# Historically, `CC_FOR_BUILD' used to be named `HOST_CC'. We still
99-# use `HOST_CC' if defined, but it is deprecated.
100-
101-# Portable tmp directory creation inspired by the Autoconf team.
102-
103-set_cc_for_build='
104-trap "exitcode=\$?; (rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null) && exit \$exitcode" 0 ;
105-trap "rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null; exit 1" 1 2 13 15 ;
106-: ${TMPDIR=/tmp} ;
107- { tmp=`(umask 077 && mktemp -d -q "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } ||
108- { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir $tmp) ; } ||
109- { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir $tmp) && echo "Warning: creating insecure temp directory" >&2 ; } ||
110- { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } ;
111-dummy=$tmp/dummy ;
112-tmpfiles="$dummy.c $dummy.o $dummy.rel $dummy" ;
113-case $CC_FOR_BUILD,$HOST_CC,$CC in
114- ,,) echo "int x;" > $dummy.c ;
115- for c in cc gcc c89 c99 ; do
116- if ($c -c -o $dummy.o $dummy.c) >/dev/null 2>&1 ; then
117- CC_FOR_BUILD="$c"; break ;
118- fi ;
119- done ;
120- if test x"$CC_FOR_BUILD" = x ; then
121- CC_FOR_BUILD=no_compiler_found ;
122- fi
123- ;;
124- ,,*) CC_FOR_BUILD=$CC ;;
125- ,*,*) CC_FOR_BUILD=$HOST_CC ;;
126-esac ;'
127-
128-# This is needed to find uname on a Pyramid OSx when run in the BSD universe.
129-# (ghazi@noc.rutgers.edu 1994-08-24)
130-if (test -f /.attbin/uname) >/dev/null 2>&1 ; then
131- PATH=$PATH:/.attbin ; export PATH
132-fi
133-
134-UNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown
135-UNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown
136-UNAME_SYSTEM=`(uname -s) 2>/dev/null` || UNAME_SYSTEM=unknown
137-UNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown
138-
139-# Note: order is significant - the case branches are not exclusive.
140-
141-case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
142- *:NetBSD:*:*)
143- # NetBSD (nbsd) targets should (where applicable) match one or
144- # more of the tupples: *-*-netbsdelf*, *-*-netbsdaout*,
145- # *-*-netbsdecoff* and *-*-netbsd*. For targets that recently
146- # switched to ELF, *-*-netbsd* would select the old
147- # object file format. This provides both forward
148- # compatibility and a consistent mechanism for selecting the
149- # object file format.
150- #
151- # Note: NetBSD doesn't particularly care about the vendor
152- # portion of the name. We always set it to "unknown".
153- sysctl="sysctl -n hw.machine_arch"
154- UNAME_MACHINE_ARCH=`(/sbin/$sysctl 2>/dev/null || \
155- /usr/sbin/$sysctl 2>/dev/null || echo unknown)`
156- case "${UNAME_MACHINE_ARCH}" in
157- armeb) machine=armeb-unknown ;;
158- arm*) machine=arm-unknown ;;
159- sh3el) machine=shl-unknown ;;
160- sh3eb) machine=sh-unknown ;;
161- *) machine=${UNAME_MACHINE_ARCH}-unknown ;;
162- esac
163- # The Operating System including object format, if it has switched
164- # to ELF recently, or will in the future.
165- case "${UNAME_MACHINE_ARCH}" in
166- arm*|i386|m68k|ns32k|sh3*|sparc|vax)
167- eval $set_cc_for_build
168- if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \
169- | grep __ELF__ >/dev/null
170- then
171- # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout).
172- # Return netbsd for either. FIX?
173- os=netbsd
174- else
175- os=netbsdelf
176- fi
177- ;;
178- *)
179- os=netbsd
180- ;;
181- esac
182- # The OS release
183- # Debian GNU/NetBSD machines have a different userland, and
184- # thus, need a distinct triplet. However, they do not need
185- # kernel version information, so it can be replaced with a
186- # suitable tag, in the style of linux-gnu.
187- case "${UNAME_VERSION}" in
188- Debian*)
189- release='-gnu'
190- ;;
191- *)
192- release=`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'`
193- ;;
194- esac
195- # Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM:
196- # contains redundant information, the shorter form:
197- # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used.
198- echo "${machine}-${os}${release}"
199- exit 0 ;;
200- amiga:OpenBSD:*:*)
201- echo m68k-unknown-openbsd${UNAME_RELEASE}
202- exit 0 ;;
203- arc:OpenBSD:*:*)
204- echo mipsel-unknown-openbsd${UNAME_RELEASE}
205- exit 0 ;;
206- hp300:OpenBSD:*:*)
207- echo m68k-unknown-openbsd${UNAME_RELEASE}
208- exit 0 ;;
209- mac68k:OpenBSD:*:*)
210- echo m68k-unknown-openbsd${UNAME_RELEASE}
211- exit 0 ;;
212- macppc:OpenBSD:*:*)
213- echo powerpc-unknown-openbsd${UNAME_RELEASE}
214- exit 0 ;;
215- mvme68k:OpenBSD:*:*)
216- echo m68k-unknown-openbsd${UNAME_RELEASE}
217- exit 0 ;;
218- mvme88k:OpenBSD:*:*)
219- echo m88k-unknown-openbsd${UNAME_RELEASE}
220- exit 0 ;;
221- mvmeppc:OpenBSD:*:*)
222- echo powerpc-unknown-openbsd${UNAME_RELEASE}
223- exit 0 ;;
224- pmax:OpenBSD:*:*)
225- echo mipsel-unknown-openbsd${UNAME_RELEASE}
226- exit 0 ;;
227- sgi:OpenBSD:*:*)
228- echo mipseb-unknown-openbsd${UNAME_RELEASE}
229- exit 0 ;;
230- sun3:OpenBSD:*:*)
231- echo m68k-unknown-openbsd${UNAME_RELEASE}
232- exit 0 ;;
233- wgrisc:OpenBSD:*:*)
234- echo mipsel-unknown-openbsd${UNAME_RELEASE}
235- exit 0 ;;
236- *:OpenBSD:*:*)
237- echo ${UNAME_MACHINE}-unknown-openbsd${UNAME_RELEASE}
238- exit 0 ;;
239- alpha:OSF1:*:*)
240- if test $UNAME_RELEASE = "V4.0"; then
241- UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'`
242- fi
243- # According to Compaq, /usr/sbin/psrinfo has been available on
244- # OSF/1 and Tru64 systems produced since 1995. I hope that
245- # covers most systems running today. This code pipes the CPU
246- # types through head -n 1, so we only detect the type of CPU 0.
247- ALPHA_CPU_TYPE=`/usr/sbin/psrinfo -v | sed -n -e 's/^ The alpha \(.*\) processor.*$/\1/p' | head -n 1`
248- case "$ALPHA_CPU_TYPE" in
249- "EV4 (21064)")
250- UNAME_MACHINE="alpha" ;;
251- "EV4.5 (21064)")
252- UNAME_MACHINE="alpha" ;;
253- "LCA4 (21066/21068)")
254- UNAME_MACHINE="alpha" ;;
255- "EV5 (21164)")
256- UNAME_MACHINE="alphaev5" ;;
257- "EV5.6 (21164A)")
258- UNAME_MACHINE="alphaev56" ;;
259- "EV5.6 (21164PC)")
260- UNAME_MACHINE="alphapca56" ;;
261- "EV5.7 (21164PC)")
262- UNAME_MACHINE="alphapca57" ;;
263- "EV6 (21264)")
264- UNAME_MACHINE="alphaev6" ;;
265- "EV6.7 (21264A)")
266- UNAME_MACHINE="alphaev67" ;;
267- "EV6.8CB (21264C)")
268- UNAME_MACHINE="alphaev68" ;;
269- "EV6.8AL (21264B)")
270- UNAME_MACHINE="alphaev68" ;;
271- "EV6.8CX (21264D)")
272- UNAME_MACHINE="alphaev68" ;;
273- "EV6.9A (21264/EV69A)")
274- UNAME_MACHINE="alphaev69" ;;
275- "EV7 (21364)")
276- UNAME_MACHINE="alphaev7" ;;
277- "EV7.9 (21364A)")
278- UNAME_MACHINE="alphaev79" ;;
279- esac
280- # A Vn.n version is a released version.
281- # A Tn.n version is a released field test version.
282- # A Xn.n version is an unreleased experimental baselevel.
283- # 1.2 uses "1.2" for uname -r.
284- echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[VTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
285- exit 0 ;;
286- Alpha*:OpenVMS:*:*)
287- echo alpha-hp-vms
288- exit 0 ;;
289- Alpha\ *:Windows_NT*:*)
290- # How do we know it's Interix rather than the generic POSIX subsystem?
291- # Should we change UNAME_MACHINE based on the output of uname instead
292- # of the specific Alpha model?
293- echo alpha-pc-interix
294- exit 0 ;;
295- 21064:Windows_NT:50:3)
296- echo alpha-dec-winnt3.5
297- exit 0 ;;
298- Amiga*:UNIX_System_V:4.0:*)
299- echo m68k-unknown-sysv4
300- exit 0;;
301- *:[Aa]miga[Oo][Ss]:*:*)
302- echo ${UNAME_MACHINE}-unknown-amigaos
303- exit 0 ;;
304- *:[Mm]orph[Oo][Ss]:*:*)
305- echo ${UNAME_MACHINE}-unknown-morphos
306- exit 0 ;;
307- *:OS/390:*:*)
308- echo i370-ibm-openedition
309- exit 0 ;;
310- arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*)
311- echo arm-acorn-riscix${UNAME_RELEASE}
312- exit 0;;
313- SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*)
314- echo hppa1.1-hitachi-hiuxmpp
315- exit 0;;
316- Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*)
317- # akee@wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE.
318- if test "`(/bin/universe) 2>/dev/null`" = att ; then
319- echo pyramid-pyramid-sysv3
320- else
321- echo pyramid-pyramid-bsd
322- fi
323- exit 0 ;;
324- NILE*:*:*:dcosx)
325- echo pyramid-pyramid-svr4
326- exit 0 ;;
327- DRS?6000:unix:4.0:6*)
328- echo sparc-icl-nx6
329- exit 0 ;;
330- DRS?6000:UNIX_SV:4.2*:7*)
331- case `/usr/bin/uname -p` in
332- sparc) echo sparc-icl-nx7 && exit 0 ;;
333- esac ;;
334- sun4H:SunOS:5.*:*)
335- echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
336- exit 0 ;;
337- sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*)
338- echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
339- exit 0 ;;
340- i86pc:SunOS:5.*:*)
341- echo i386-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
342- exit 0 ;;
343- sun4*:SunOS:6*:*)
344- # According to config.sub, this is the proper way to canonicalize
345- # SunOS6. Hard to guess exactly what SunOS6 will be like, but
346- # it's likely to be more like Solaris than SunOS4.
347- echo sparc-sun-solaris3`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
348- exit 0 ;;
349- sun4*:SunOS:*:*)
350- case "`/usr/bin/arch -k`" in
351- Series*|S4*)
352- UNAME_RELEASE=`uname -v`
353- ;;
354- esac
355- # Japanese Language versions have a version number like `4.1.3-JL'.
356- echo sparc-sun-sunos`echo ${UNAME_RELEASE}|sed -e 's/-/_/'`
357- exit 0 ;;
358- sun3*:SunOS:*:*)
359- echo m68k-sun-sunos${UNAME_RELEASE}
360- exit 0 ;;
361- sun*:*:4.2BSD:*)
362- UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null`
363- test "x${UNAME_RELEASE}" = "x" && UNAME_RELEASE=3
364- case "`/bin/arch`" in
365- sun3)
366- echo m68k-sun-sunos${UNAME_RELEASE}
367- ;;
368- sun4)
369- echo sparc-sun-sunos${UNAME_RELEASE}
370- ;;
371- esac
372- exit 0 ;;
373- aushp:SunOS:*:*)
374- echo sparc-auspex-sunos${UNAME_RELEASE}
375- exit 0 ;;
376- # The situation for MiNT is a little confusing. The machine name
377- # can be virtually everything (everything which is not
378- # "atarist" or "atariste" at least should have a processor
379- # > m68000). The system name ranges from "MiNT" over "FreeMiNT"
380- # to the lowercase version "mint" (or "freemint"). Finally
381- # the system name "TOS" denotes a system which is actually not
382- # MiNT. But MiNT is downward compatible to TOS, so this should
383- # be no problem.
384- atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*)
385- echo m68k-atari-mint${UNAME_RELEASE}
386- exit 0 ;;
387- atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*)
388- echo m68k-atari-mint${UNAME_RELEASE}
389- exit 0 ;;
390- *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*)
391- echo m68k-atari-mint${UNAME_RELEASE}
392- exit 0 ;;
393- milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*)
394- echo m68k-milan-mint${UNAME_RELEASE}
395- exit 0 ;;
396- hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*)
397- echo m68k-hades-mint${UNAME_RELEASE}
398- exit 0 ;;
399- *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*)
400- echo m68k-unknown-mint${UNAME_RELEASE}
401- exit 0 ;;
402- powerpc:machten:*:*)
403- echo powerpc-apple-machten${UNAME_RELEASE}
404- exit 0 ;;
405- RISC*:Mach:*:*)
406- echo mips-dec-mach_bsd4.3
407- exit 0 ;;
408- RISC*:ULTRIX:*:*)
409- echo mips-dec-ultrix${UNAME_RELEASE}
410- exit 0 ;;
411- VAX*:ULTRIX*:*:*)
412- echo vax-dec-ultrix${UNAME_RELEASE}
413- exit 0 ;;
414- 2020:CLIX:*:* | 2430:CLIX:*:*)
415- echo clipper-intergraph-clix${UNAME_RELEASE}
416- exit 0 ;;
417- mips:*:*:UMIPS | mips:*:*:RISCos)
418- eval $set_cc_for_build
419- sed 's/^ //' << EOF >$dummy.c
420-#ifdef __cplusplus
421-#include <stdio.h> /* for printf() prototype */
422- int main (int argc, char *argv[]) {
423-#else
424- int main (argc, argv) int argc; char *argv[]; {
425-#endif
426- #if defined (host_mips) && defined (MIPSEB)
427- #if defined (SYSTYPE_SYSV)
428- printf ("mips-mips-riscos%ssysv\n", argv[1]); exit (0);
429- #endif
430- #if defined (SYSTYPE_SVR4)
431- printf ("mips-mips-riscos%ssvr4\n", argv[1]); exit (0);
432- #endif
433- #if defined (SYSTYPE_BSD43) || defined(SYSTYPE_BSD)
434- printf ("mips-mips-riscos%sbsd\n", argv[1]); exit (0);
435- #endif
436- #endif
437- exit (-1);
438- }
439-EOF
440- $CC_FOR_BUILD -o $dummy $dummy.c \
441- && $dummy `echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` \
442- && exit 0
443- echo mips-mips-riscos${UNAME_RELEASE}
444- exit 0 ;;
445- Motorola:PowerMAX_OS:*:*)
446- echo powerpc-motorola-powermax
447- exit 0 ;;
448- Motorola:*:4.3:PL8-*)
449- echo powerpc-harris-powermax
450- exit 0 ;;
451- Night_Hawk:*:*:PowerMAX_OS | Synergy:PowerMAX_OS:*:*)
452- echo powerpc-harris-powermax
453- exit 0 ;;
454- Night_Hawk:Power_UNIX:*:*)
455- echo powerpc-harris-powerunix
456- exit 0 ;;
457- m88k:CX/UX:7*:*)
458- echo m88k-harris-cxux7
459- exit 0 ;;
460- m88k:*:4*:R4*)
461- echo m88k-motorola-sysv4
462- exit 0 ;;
463- m88k:*:3*:R3*)
464- echo m88k-motorola-sysv3
465- exit 0 ;;
466- AViiON:dgux:*:*)
467- # DG/UX returns AViiON for all architectures
468- UNAME_PROCESSOR=`/usr/bin/uname -p`
469- if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110 ]
470- then
471- if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx ] || \
472- [ ${TARGET_BINARY_INTERFACE}x = x ]
473- then
474- echo m88k-dg-dgux${UNAME_RELEASE}
475- else
476- echo m88k-dg-dguxbcs${UNAME_RELEASE}
477- fi
478- else
479- echo i586-dg-dgux${UNAME_RELEASE}
480- fi
481- exit 0 ;;
482- M88*:DolphinOS:*:*) # DolphinOS (SVR3)
483- echo m88k-dolphin-sysv3
484- exit 0 ;;
485- M88*:*:R3*:*)
486- # Delta 88k system running SVR3
487- echo m88k-motorola-sysv3
488- exit 0 ;;
489- XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3)
490- echo m88k-tektronix-sysv3
491- exit 0 ;;
492- Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD)
493- echo m68k-tektronix-bsd
494- exit 0 ;;
495- *:IRIX*:*:*)
496- echo mips-sgi-irix`echo ${UNAME_RELEASE}|sed -e 's/-/_/g'`
497- exit 0 ;;
498- ????????:AIX?:[12].1:2) # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX.
499- echo romp-ibm-aix # uname -m gives an 8 hex-code CPU id
500- exit 0 ;; # Note that: echo "'`uname -s`'" gives 'AIX '
501- i*86:AIX:*:*)
502- echo i386-ibm-aix
503- exit 0 ;;
504- ia64:AIX:*:*)
505- if [ -x /usr/bin/oslevel ] ; then
506- IBM_REV=`/usr/bin/oslevel`
507- else
508- IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
509- fi
510- echo ${UNAME_MACHINE}-ibm-aix${IBM_REV}
511- exit 0 ;;
512- *:AIX:2:3)
513- if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then
514- eval $set_cc_for_build
515- sed 's/^ //' << EOF >$dummy.c
516- #include <sys/systemcfg.h>
517-
518- main()
519- {
520- if (!__power_pc())
521- exit(1);
522- puts("powerpc-ibm-aix3.2.5");
523- exit(0);
524- }
525-EOF
526- $CC_FOR_BUILD -o $dummy $dummy.c && $dummy && exit 0
527- echo rs6000-ibm-aix3.2.5
528- elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then
529- echo rs6000-ibm-aix3.2.4
530- else
531- echo rs6000-ibm-aix3.2
532- fi
533- exit 0 ;;
534- *:AIX:*:[45])
535- IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'`
536- if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then
537- IBM_ARCH=rs6000
538- else
539- IBM_ARCH=powerpc
540- fi
541- if [ -x /usr/bin/oslevel ] ; then
542- IBM_REV=`/usr/bin/oslevel`
543- else
544- IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
545- fi
546- echo ${IBM_ARCH}-ibm-aix${IBM_REV}
547- exit 0 ;;
548- *:AIX:*:*)
549- echo rs6000-ibm-aix
550- exit 0 ;;
551- ibmrt:4.4BSD:*|romp-ibm:BSD:*)
552- echo romp-ibm-bsd4.4
553- exit 0 ;;
554- ibmrt:*BSD:*|romp-ibm:BSD:*) # covers RT/PC BSD and
555- echo romp-ibm-bsd${UNAME_RELEASE} # 4.3 with uname added to
556- exit 0 ;; # report: romp-ibm BSD 4.3
557- *:BOSX:*:*)
558- echo rs6000-bull-bosx
559- exit 0 ;;
560- DPX/2?00:B.O.S.:*:*)
561- echo m68k-bull-sysv3
562- exit 0 ;;
563- 9000/[34]??:4.3bsd:1.*:*)
564- echo m68k-hp-bsd
565- exit 0 ;;
566- hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*)
567- echo m68k-hp-bsd4.4
568- exit 0 ;;
569- 9000/[34678]??:HP-UX:*:*)
570- HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
571- case "${UNAME_MACHINE}" in
572- 9000/31? ) HP_ARCH=m68000 ;;
573- 9000/[34]?? ) HP_ARCH=m68k ;;
574- 9000/[678][0-9][0-9])
575- if [ -x /usr/bin/getconf ]; then
576- sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null`
577- sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null`
578- case "${sc_cpu_version}" in
579- 523) HP_ARCH="hppa1.0" ;; # CPU_PA_RISC1_0
580- 528) HP_ARCH="hppa1.1" ;; # CPU_PA_RISC1_1
581- 532) # CPU_PA_RISC2_0
582- case "${sc_kernel_bits}" in
583- 32) HP_ARCH="hppa2.0n" ;;
584- 64) HP_ARCH="hppa2.0w" ;;
585- '') HP_ARCH="hppa2.0" ;; # HP-UX 10.20
586- esac ;;
587- esac
588- fi
589- if [ "${HP_ARCH}" = "" ]; then
590- eval $set_cc_for_build
591- sed 's/^ //' << EOF >$dummy.c
592-
593- #define _HPUX_SOURCE
594- #include <stdlib.h>
595- #include <unistd.h>
596-
597- int main ()
598- {
599- #if defined(_SC_KERNEL_BITS)
600- long bits = sysconf(_SC_KERNEL_BITS);
601- #endif
602- long cpu = sysconf (_SC_CPU_VERSION);
603-
604- switch (cpu)
605- {
606- case CPU_PA_RISC1_0: puts ("hppa1.0"); break;
607- case CPU_PA_RISC1_1: puts ("hppa1.1"); break;
608- case CPU_PA_RISC2_0:
609- #if defined(_SC_KERNEL_BITS)
610- switch (bits)
611- {
612- case 64: puts ("hppa2.0w"); break;
613- case 32: puts ("hppa2.0n"); break;
614- default: puts ("hppa2.0"); break;
615- } break;
616- #else /* !defined(_SC_KERNEL_BITS) */
617- puts ("hppa2.0"); break;
618- #endif
619- default: puts ("hppa1.0"); break;
620- }
621- exit (0);
622- }
623-EOF
624- (CCOPTS= $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null) && HP_ARCH=`$dummy`
625- test -z "$HP_ARCH" && HP_ARCH=hppa
626- fi ;;
627- esac
628- if [ ${HP_ARCH} = "hppa2.0w" ]
629- then
630- # avoid double evaluation of $set_cc_for_build
631- test -n "$CC_FOR_BUILD" || eval $set_cc_for_build
632- if echo __LP64__ | (CCOPTS= $CC_FOR_BUILD -E -) | grep __LP64__ >/dev/null
633- then
634- HP_ARCH="hppa2.0w"
635- else
636- HP_ARCH="hppa64"
637- fi
638- fi
639- echo ${HP_ARCH}-hp-hpux${HPUX_REV}
640- exit 0 ;;
641- ia64:HP-UX:*:*)
642- HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
643- echo ia64-hp-hpux${HPUX_REV}
644- exit 0 ;;
645- 3050*:HI-UX:*:*)
646- eval $set_cc_for_build
647- sed 's/^ //' << EOF >$dummy.c
648- #include <unistd.h>
649- int
650- main ()
651- {
652- long cpu = sysconf (_SC_CPU_VERSION);
653- /* The order matters, because CPU_IS_HP_MC68K erroneously returns
654- true for CPU_PA_RISC1_0. CPU_IS_PA_RISC returns correct
655- results, however. */
656- if (CPU_IS_PA_RISC (cpu))
657- {
658- switch (cpu)
659- {
660- case CPU_PA_RISC1_0: puts ("hppa1.0-hitachi-hiuxwe2"); break;
661- case CPU_PA_RISC1_1: puts ("hppa1.1-hitachi-hiuxwe2"); break;
662- case CPU_PA_RISC2_0: puts ("hppa2.0-hitachi-hiuxwe2"); break;
663- default: puts ("hppa-hitachi-hiuxwe2"); break;
664- }
665- }
666- else if (CPU_IS_HP_MC68K (cpu))
667- puts ("m68k-hitachi-hiuxwe2");
668- else puts ("unknown-hitachi-hiuxwe2");
669- exit (0);
670- }
671-EOF
672- $CC_FOR_BUILD -o $dummy $dummy.c && $dummy && exit 0
673- echo unknown-hitachi-hiuxwe2
674- exit 0 ;;
675- 9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* )
676- echo hppa1.1-hp-bsd
677- exit 0 ;;
678- 9000/8??:4.3bsd:*:*)
679- echo hppa1.0-hp-bsd
680- exit 0 ;;
681- *9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*)
682- echo hppa1.0-hp-mpeix
683- exit 0 ;;
684- hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* )
685- echo hppa1.1-hp-osf
686- exit 0 ;;
687- hp8??:OSF1:*:*)
688- echo hppa1.0-hp-osf
689- exit 0 ;;
690- i*86:OSF1:*:*)
691- if [ -x /usr/sbin/sysversion ] ; then
692- echo ${UNAME_MACHINE}-unknown-osf1mk
693- else
694- echo ${UNAME_MACHINE}-unknown-osf1
695- fi
696- exit 0 ;;
697- parisc*:Lites*:*:*)
698- echo hppa1.1-hp-lites
699- exit 0 ;;
700- C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*)
701- echo c1-convex-bsd
702- exit 0 ;;
703- C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*)
704- if getsysinfo -f scalar_acc
705- then echo c32-convex-bsd
706- else echo c2-convex-bsd
707- fi
708- exit 0 ;;
709- C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*)
710- echo c34-convex-bsd
711- exit 0 ;;
712- C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*)
713- echo c38-convex-bsd
714- exit 0 ;;
715- C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*)
716- echo c4-convex-bsd
717- exit 0 ;;
718- CRAY*Y-MP:*:*:*)
719- echo ymp-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
720- exit 0 ;;
721- CRAY*[A-Z]90:*:*:*)
722- echo ${UNAME_MACHINE}-cray-unicos${UNAME_RELEASE} \
723- | sed -e 's/CRAY.*\([A-Z]90\)/\1/' \
724- -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \
725- -e 's/\.[^.]*$/.X/'
726- exit 0 ;;
727- CRAY*TS:*:*:*)
728- echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
729- exit 0 ;;
730- CRAY*T3E:*:*:*)
731- echo alphaev5-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
732- exit 0 ;;
733- CRAY*SV1:*:*:*)
734- echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
735- exit 0 ;;
736- *:UNICOS/mp:*:*)
737- echo nv1-cray-unicosmp${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
738- exit 0 ;;
739- F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*)
740- FUJITSU_PROC=`uname -m | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
741- FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
742- FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'`
743- echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
744- exit 0 ;;
745- i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*)
746- echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE}
747- exit 0 ;;
748- sparc*:BSD/OS:*:*)
749- echo sparc-unknown-bsdi${UNAME_RELEASE}
750- exit 0 ;;
751- *:BSD/OS:*:*)
752- echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE}
753- exit 0 ;;
754- *:FreeBSD:*:*|*:GNU/FreeBSD:*:*)
755- # Determine whether the default compiler uses glibc.
756- eval $set_cc_for_build
757- sed 's/^ //' << EOF >$dummy.c
758- #include <features.h>
759- #if __GLIBC__ >= 2
760- LIBC=gnu
761- #else
762- LIBC=
763- #endif
764-EOF
765- eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^LIBC=`
766- # GNU/FreeBSD systems have a "k" prefix to indicate we are using
767- # FreeBSD's kernel, but not the complete OS.
768- case ${LIBC} in gnu) kernel_only='k' ;; esac
769- echo ${UNAME_MACHINE}-unknown-${kernel_only}freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`${LIBC:+-$LIBC}
770- exit 0 ;;
771- i*:CYGWIN*:*)
772- echo ${UNAME_MACHINE}-pc-cygwin
773- exit 0 ;;
774- i*:MINGW*:*)
775- echo ${UNAME_MACHINE}-pc-mingw32
776- exit 0 ;;
777- i*:PW*:*)
778- echo ${UNAME_MACHINE}-pc-pw32
779- exit 0 ;;
780- x86:Interix*:[34]*)
781- echo i586-pc-interix${UNAME_RELEASE}|sed -e 's/\..*//'
782- exit 0 ;;
783- [345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*)
784- echo i${UNAME_MACHINE}-pc-mks
785- exit 0 ;;
786- i*:Windows_NT*:* | Pentium*:Windows_NT*:*)
787- # How do we know it's Interix rather than the generic POSIX subsystem?
788- # It also conflicts with pre-2.0 versions of AT&T UWIN. Should we
789- # UNAME_MACHINE based on the output of uname instead of i386?
790- echo i586-pc-interix
791- exit 0 ;;
792- i*:UWIN*:*)
793- echo ${UNAME_MACHINE}-pc-uwin
794- exit 0 ;;
795- p*:CYGWIN*:*)
796- echo powerpcle-unknown-cygwin
797- exit 0 ;;
798- prep*:SunOS:5.*:*)
799- echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
800- exit 0 ;;
801- *:GNU:*:*)
802- echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'`
803- exit 0 ;;
804- i*86:Minix:*:*)
805- echo ${UNAME_MACHINE}-pc-minix
806- exit 0 ;;
807- arm*:Linux:*:*)
808- echo ${UNAME_MACHINE}-unknown-linux-gnu
809- exit 0 ;;
810- cris:Linux:*:*)
811- echo cris-axis-linux-gnu
812- exit 0 ;;
813- ia64:Linux:*:*)
814- echo ${UNAME_MACHINE}-unknown-linux-gnu
815- exit 0 ;;
816- m68*:Linux:*:*)
817- echo ${UNAME_MACHINE}-unknown-linux-gnu
818- exit 0 ;;
819- mips:Linux:*:*)
820- eval $set_cc_for_build
821- sed 's/^ //' << EOF >$dummy.c
822- #undef CPU
823- #undef mips
824- #undef mipsel
825- #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL)
826- CPU=mipsel
827- #else
828- #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB)
829- CPU=mips
830- #else
831- CPU=
832- #endif
833- #endif
834-EOF
835- eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^CPU=`
836- test x"${CPU}" != x && echo "${CPU}-unknown-linux-gnu" && exit 0
837- ;;
838- mips64:Linux:*:*)
839- eval $set_cc_for_build
840- sed 's/^ //' << EOF >$dummy.c
841- #undef CPU
842- #undef mips64
843- #undef mips64el
844- #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL)
845- CPU=mips64el
846- #else
847- #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB)
848- CPU=mips64
849- #else
850- CPU=
851- #endif
852- #endif
853-EOF
854- eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^CPU=`
855- test x"${CPU}" != x && echo "${CPU}-unknown-linux-gnu" && exit 0
856- ;;
857- ppc:Linux:*:*)
858- echo powerpc-unknown-linux-gnu
859- exit 0 ;;
860- ppc64:Linux:*:*)
861- echo powerpc64-unknown-linux-gnu
862- exit 0 ;;
863- alpha:Linux:*:*)
864- case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in
865- EV5) UNAME_MACHINE=alphaev5 ;;
866- EV56) UNAME_MACHINE=alphaev56 ;;
867- PCA56) UNAME_MACHINE=alphapca56 ;;
868- PCA57) UNAME_MACHINE=alphapca56 ;;
869- EV6) UNAME_MACHINE=alphaev6 ;;
870- EV67) UNAME_MACHINE=alphaev67 ;;
871- EV68*) UNAME_MACHINE=alphaev68 ;;
872- esac
873- objdump --private-headers /bin/sh | grep ld.so.1 >/dev/null
874- if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi
875- echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC}
876- exit 0 ;;
877- parisc:Linux:*:* | hppa:Linux:*:*)
878- # Look for CPU level
879- case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in
880- PA7*) echo hppa1.1-unknown-linux-gnu ;;
881- PA8*) echo hppa2.0-unknown-linux-gnu ;;
882- *) echo hppa-unknown-linux-gnu ;;
883- esac
884- exit 0 ;;
885- parisc64:Linux:*:* | hppa64:Linux:*:*)
886- echo hppa64-unknown-linux-gnu
887- exit 0 ;;
888- s390:Linux:*:* | s390x:Linux:*:*)
889- echo ${UNAME_MACHINE}-ibm-linux
890- exit 0 ;;
891- sh64*:Linux:*:*)
892- echo ${UNAME_MACHINE}-unknown-linux-gnu
893- exit 0 ;;
894- sh*:Linux:*:*)
895- echo ${UNAME_MACHINE}-unknown-linux-gnu
896- exit 0 ;;
897- sparc:Linux:*:* | sparc64:Linux:*:*)
898- echo ${UNAME_MACHINE}-unknown-linux-gnu
899- exit 0 ;;
900- x86_64:Linux:*:*)
901- echo x86_64-unknown-linux-gnu
902- exit 0 ;;
903- i*86:Linux:*:*)
904- # The BFD linker knows what the default object file format is, so
905- # first see if it will tell us. cd to the root directory to prevent
906- # problems with other programs or directories called `ld' in the path.
907- # Set LC_ALL=C to ensure ld outputs messages in English.
908- ld_supported_targets=`cd /; LC_ALL=C ld --help 2>&1 \
909- | sed -ne '/supported targets:/!d
910- s/[ ][ ]*/ /g
911- s/.*supported targets: *//
912- s/ .*//
913- p'`
914- case "$ld_supported_targets" in
915- elf32-i386)
916- TENTATIVE="${UNAME_MACHINE}-pc-linux-gnu"
917- ;;
918- a.out-i386-linux)
919- echo "${UNAME_MACHINE}-pc-linux-gnuaout"
920- exit 0 ;;
921- coff-i386)
922- echo "${UNAME_MACHINE}-pc-linux-gnucoff"
923- exit 0 ;;
924- "")
925- # Either a pre-BFD a.out linker (linux-gnuoldld) or
926- # one that does not give us useful --help.
927- echo "${UNAME_MACHINE}-pc-linux-gnuoldld"
928- exit 0 ;;
929- esac
930- # Determine whether the default compiler is a.out or elf
931- eval $set_cc_for_build
932- sed 's/^ //' << EOF >$dummy.c
933- #include <features.h>
934- #ifdef __ELF__
935- # ifdef __GLIBC__
936- # if __GLIBC__ >= 2
937- LIBC=gnu
938- # else
939- LIBC=gnulibc1
940- # endif
941- # else
942- LIBC=gnulibc1
943- # endif
944- #else
945- #ifdef __INTEL_COMPILER
946- LIBC=gnu
947- #else
948- LIBC=gnuaout
949- #endif
950- #endif
951-EOF
952- eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^LIBC=`
953- test x"${LIBC}" != x && echo "${UNAME_MACHINE}-pc-linux-${LIBC}" && exit 0
954- test x"${TENTATIVE}" != x && echo "${TENTATIVE}" && exit 0
955- ;;
956- i*86:DYNIX/ptx:4*:*)
957- # ptx 4.0 does uname -s correctly, with DYNIX/ptx in there.
958- # earlier versions are messed up and put the nodename in both
959- # sysname and nodename.
960- echo i386-sequent-sysv4
961- exit 0 ;;
962- i*86:UNIX_SV:4.2MP:2.*)
963- # Unixware is an offshoot of SVR4, but it has its own version
964- # number series starting with 2...
965- # I am not positive that other SVR4 systems won't match this,
966- # I just have to hope. -- rms.
967- # Use sysv4.2uw... so that sysv4* matches it.
968- echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION}
969- exit 0 ;;
970- i*86:OS/2:*:*)
971- # If we were able to find `uname', then EMX Unix compatibility
972- # is probably installed.
973- echo ${UNAME_MACHINE}-pc-os2-emx
974- exit 0 ;;
975- i*86:XTS-300:*:STOP)
976- echo ${UNAME_MACHINE}-unknown-stop
977- exit 0 ;;
978- i*86:atheos:*:*)
979- echo ${UNAME_MACHINE}-unknown-atheos
980- exit 0 ;;
981- i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.0*:*)
982- echo i386-unknown-lynxos${UNAME_RELEASE}
983- exit 0 ;;
984- i*86:*DOS:*:*)
985- echo ${UNAME_MACHINE}-pc-msdosdjgpp
986- exit 0 ;;
987- i*86:*:4.*:* | i*86:SYSTEM_V:4.*:*)
988- UNAME_REL=`echo ${UNAME_RELEASE} | sed 's/\/MP$//'`
989- if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then
990- echo ${UNAME_MACHINE}-univel-sysv${UNAME_REL}
991- else
992- echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL}
993- fi
994- exit 0 ;;
995- i*86:*:5:[78]*)
996- case `/bin/uname -X | grep "^Machine"` in
997- *486*) UNAME_MACHINE=i486 ;;
998- *Pentium) UNAME_MACHINE=i586 ;;
999- *Pent*|*Celeron) UNAME_MACHINE=i686 ;;
1000- esac
1001- echo ${UNAME_MACHINE}-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION}
1002- exit 0 ;;
1003- i*86:*:3.2:*)
1004- if test -f /usr/options/cb.name; then
1005- UNAME_REL=`sed -n 's/.*Version //p' </usr/options/cb.name`
1006- echo ${UNAME_MACHINE}-pc-isc$UNAME_REL
1007- elif /bin/uname -X 2>/dev/null >/dev/null ; then
1008- UNAME_REL=`(/bin/uname -X|grep Release|sed -e 's/.*= //')`
1009- (/bin/uname -X|grep i80486 >/dev/null) && UNAME_MACHINE=i486
1010- (/bin/uname -X|grep '^Machine.*Pentium' >/dev/null) \
1011- && UNAME_MACHINE=i586
1012- (/bin/uname -X|grep '^Machine.*Pent *II' >/dev/null) \
1013- && UNAME_MACHINE=i686
1014- (/bin/uname -X|grep '^Machine.*Pentium Pro' >/dev/null) \
1015- && UNAME_MACHINE=i686
1016- echo ${UNAME_MACHINE}-pc-sco$UNAME_REL
1017- else
1018- echo ${UNAME_MACHINE}-pc-sysv32
1019- fi
1020- exit 0 ;;
1021- pc:*:*:*)
1022- # Left here for compatibility:
1023- # uname -m prints for DJGPP always 'pc', but it prints nothing about
1024- # the processor, so we play safe by assuming i386.
1025- echo i386-pc-msdosdjgpp
1026- exit 0 ;;
1027- Intel:Mach:3*:*)
1028- echo i386-pc-mach3
1029- exit 0 ;;
1030- paragon:*:*:*)
1031- echo i860-intel-osf1
1032- exit 0 ;;
1033- i860:*:4.*:*) # i860-SVR4
1034- if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then
1035- echo i860-stardent-sysv${UNAME_RELEASE} # Stardent Vistra i860-SVR4
1036- else # Add other i860-SVR4 vendors below as they are discovered.
1037- echo i860-unknown-sysv${UNAME_RELEASE} # Unknown i860-SVR4
1038- fi
1039- exit 0 ;;
1040- mini*:CTIX:SYS*5:*)
1041- # "miniframe"
1042- echo m68010-convergent-sysv
1043- exit 0 ;;
1044- mc68k:UNIX:SYSTEM5:3.51m)
1045- echo m68k-convergent-sysv
1046- exit 0 ;;
1047- M680?0:D-NIX:5.3:*)
1048- echo m68k-diab-dnix
1049- exit 0 ;;
1050- M68*:*:R3V[567]*:*)
1051- test -r /sysV68 && echo 'm68k-motorola-sysv' && exit 0 ;;
1052- 3[34]??:*:4.0:3.0 | 3[34]??A:*:4.0:3.0 | 3[34]??,*:*:4.0:3.0 | 3[34]??/*:*:4.0:3.0 | 4400:*:4.0:3.0 | 4850:*:4.0:3.0 | SKA40:*:4.0:3.0 | SDS2:*:4.0:3.0 | SHG2:*:4.0:3.0)
1053- OS_REL=''
1054- test -r /etc/.relid \
1055- && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
1056- /bin/uname -p 2>/dev/null | grep 86 >/dev/null \
1057- && echo i486-ncr-sysv4.3${OS_REL} && exit 0
1058- /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
1059- && echo i586-ncr-sysv4.3${OS_REL} && exit 0 ;;
1060- 3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*)
1061- /bin/uname -p 2>/dev/null | grep 86 >/dev/null \
1062- && echo i486-ncr-sysv4 && exit 0 ;;
1063- m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*)
1064- echo m68k-unknown-lynxos${UNAME_RELEASE}
1065- exit 0 ;;
1066- mc68030:UNIX_System_V:4.*:*)
1067- echo m68k-atari-sysv4
1068- exit 0 ;;
1069- TSUNAMI:LynxOS:2.*:*)
1070- echo sparc-unknown-lynxos${UNAME_RELEASE}
1071- exit 0 ;;
1072- rs6000:LynxOS:2.*:*)
1073- echo rs6000-unknown-lynxos${UNAME_RELEASE}
1074- exit 0 ;;
1075- PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.0*:*)
1076- echo powerpc-unknown-lynxos${UNAME_RELEASE}
1077- exit 0 ;;
1078- SM[BE]S:UNIX_SV:*:*)
1079- echo mips-dde-sysv${UNAME_RELEASE}
1080- exit 0 ;;
1081- RM*:ReliantUNIX-*:*:*)
1082- echo mips-sni-sysv4
1083- exit 0 ;;
1084- RM*:SINIX-*:*:*)
1085- echo mips-sni-sysv4
1086- exit 0 ;;
1087- *:SINIX-*:*:*)
1088- if uname -p 2>/dev/null >/dev/null ; then
1089- UNAME_MACHINE=`(uname -p) 2>/dev/null`
1090- echo ${UNAME_MACHINE}-sni-sysv4
1091- else
1092- echo ns32k-sni-sysv
1093- fi
1094- exit 0 ;;
1095- PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort
1096- # says <Richard.M.Bartel@ccMail.Census.GOV>
1097- echo i586-unisys-sysv4
1098- exit 0 ;;
1099- *:UNIX_System_V:4*:FTX*)
1100- # From Gerald Hewes <hewes@openmarket.com>.
1101- # How about differentiating between stratus architectures? -djm
1102- echo hppa1.1-stratus-sysv4
1103- exit 0 ;;
1104- *:*:*:FTX*)
1105- # From seanf@swdc.stratus.com.
1106- echo i860-stratus-sysv4
1107- exit 0 ;;
1108- *:VOS:*:*)
1109- # From Paul.Green@stratus.com.
1110- echo hppa1.1-stratus-vos
1111- exit 0 ;;
1112- mc68*:A/UX:*:*)
1113- echo m68k-apple-aux${UNAME_RELEASE}
1114- exit 0 ;;
1115- news*:NEWS-OS:6*:*)
1116- echo mips-sony-newsos6
1117- exit 0 ;;
1118- R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*)
1119- if [ -d /usr/nec ]; then
1120- echo mips-nec-sysv${UNAME_RELEASE}
1121- else
1122- echo mips-unknown-sysv${UNAME_RELEASE}
1123- fi
1124- exit 0 ;;
1125- BeBox:BeOS:*:*) # BeOS running on hardware made by Be, PPC only.
1126- echo powerpc-be-beos
1127- exit 0 ;;
1128- BeMac:BeOS:*:*) # BeOS running on Mac or Mac clone, PPC only.
1129- echo powerpc-apple-beos
1130- exit 0 ;;
1131- BePC:BeOS:*:*) # BeOS running on Intel PC compatible.
1132- echo i586-pc-beos
1133- exit 0 ;;
1134- SX-4:SUPER-UX:*:*)
1135- echo sx4-nec-superux${UNAME_RELEASE}
1136- exit 0 ;;
1137- SX-5:SUPER-UX:*:*)
1138- echo sx5-nec-superux${UNAME_RELEASE}
1139- exit 0 ;;
1140- SX-6:SUPER-UX:*:*)
1141- echo sx6-nec-superux${UNAME_RELEASE}
1142- exit 0 ;;
1143- Power*:Rhapsody:*:*)
1144- echo powerpc-apple-rhapsody${UNAME_RELEASE}
1145- exit 0 ;;
1146- *:Rhapsody:*:*)
1147- echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE}
1148- exit 0 ;;
1149- *:Darwin:*:*)
1150- case `uname -p` in
1151- *86) UNAME_PROCESSOR=i686 ;;
1152- powerpc) UNAME_PROCESSOR=powerpc ;;
1153- esac
1154- echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE}
1155- exit 0 ;;
1156- *:procnto*:*:* | *:QNX:[0123456789]*:*)
1157- UNAME_PROCESSOR=`uname -p`
1158- if test "$UNAME_PROCESSOR" = "x86"; then
1159- UNAME_PROCESSOR=i386
1160- UNAME_MACHINE=pc
1161- fi
1162- echo ${UNAME_PROCESSOR}-${UNAME_MACHINE}-nto-qnx${UNAME_RELEASE}
1163- exit 0 ;;
1164- *:QNX:*:4*)
1165- echo i386-pc-qnx
1166- exit 0 ;;
1167- NSR-[DGKLNPTVW]:NONSTOP_KERNEL:*:*)
1168- echo nsr-tandem-nsk${UNAME_RELEASE}
1169- exit 0 ;;
1170- *:NonStop-UX:*:*)
1171- echo mips-compaq-nonstopux
1172- exit 0 ;;
1173- BS2000:POSIX*:*:*)
1174- echo bs2000-siemens-sysv
1175- exit 0 ;;
1176- DS/*:UNIX_System_V:*:*)
1177- echo ${UNAME_MACHINE}-${UNAME_SYSTEM}-${UNAME_RELEASE}
1178- exit 0 ;;
1179- *:Plan9:*:*)
1180- # "uname -m" is not consistent, so use $cputype instead. 386
1181- # is converted to i386 for consistency with other x86
1182- # operating systems.
1183- if test "$cputype" = "386"; then
1184- UNAME_MACHINE=i386
1185- else
1186- UNAME_MACHINE="$cputype"
1187- fi
1188- echo ${UNAME_MACHINE}-unknown-plan9
1189- exit 0 ;;
1190- *:TOPS-10:*:*)
1191- echo pdp10-unknown-tops10
1192- exit 0 ;;
1193- *:TENEX:*:*)
1194- echo pdp10-unknown-tenex
1195- exit 0 ;;
1196- KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*)
1197- echo pdp10-dec-tops20
1198- exit 0 ;;
1199- XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*)
1200- echo pdp10-xkl-tops20
1201- exit 0 ;;
1202- *:TOPS-20:*:*)
1203- echo pdp10-unknown-tops20
1204- exit 0 ;;
1205- *:ITS:*:*)
1206- echo pdp10-unknown-its
1207- exit 0 ;;
1208- SEI:*:*:SEIUX)
1209- echo mips-sei-seiux${UNAME_RELEASE}
1210- exit 0 ;;
1211-esac
1212-
1213-#echo '(No uname command or uname output not recognized.)' 1>&2
1214-#echo "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" 1>&2
1215-
1216-eval $set_cc_for_build
1217-cat >$dummy.c <<EOF
1218-#ifdef _SEQUENT_
1219-# include <sys/types.h>
1220-# include <sys/utsname.h>
1221-#endif
1222-main ()
1223-{
1224-#if defined (sony)
1225-#if defined (MIPSEB)
1226- /* BFD wants "bsd" instead of "newsos". Perhaps BFD should be changed,
1227- I don't know.... */
1228- printf ("mips-sony-bsd\n"); exit (0);
1229-#else
1230-#include <sys/param.h>
1231- printf ("m68k-sony-newsos%s\n",
1232-#ifdef NEWSOS4
1233- "4"
1234-#else
1235- ""
1236-#endif
1237- ); exit (0);
1238-#endif
1239-#endif
1240-
1241-#if defined (__arm) && defined (__acorn) && defined (__unix)
1242- printf ("arm-acorn-riscix"); exit (0);
1243-#endif
1244-
1245-#if defined (hp300) && !defined (hpux)
1246- printf ("m68k-hp-bsd\n"); exit (0);
1247-#endif
1248-
1249-#if defined (NeXT)
1250-#if !defined (__ARCHITECTURE__)
1251-#define __ARCHITECTURE__ "m68k"
1252-#endif
1253- int version;
1254- version=`(hostinfo | sed -n 's/.*NeXT Mach \([0-9]*\).*/\1/p') 2>/dev/null`;
1255- if (version < 4)
1256- printf ("%s-next-nextstep%d\n", __ARCHITECTURE__, version);
1257- else
1258- printf ("%s-next-openstep%d\n", __ARCHITECTURE__, version);
1259- exit (0);
1260-#endif
1261-
1262-#if defined (MULTIMAX) || defined (n16)
1263-#if defined (UMAXV)
1264- printf ("ns32k-encore-sysv\n"); exit (0);
1265-#else
1266-#if defined (CMU)
1267- printf ("ns32k-encore-mach\n"); exit (0);
1268-#else
1269- printf ("ns32k-encore-bsd\n"); exit (0);
1270-#endif
1271-#endif
1272-#endif
1273-
1274-#if defined (__386BSD__)
1275- printf ("i386-pc-bsd\n"); exit (0);
1276-#endif
1277-
1278-#if defined (sequent)
1279-#if defined (i386)
1280- printf ("i386-sequent-dynix\n"); exit (0);
1281-#endif
1282-#if defined (ns32000)
1283- printf ("ns32k-sequent-dynix\n"); exit (0);
1284-#endif
1285-#endif
1286-
1287-#if defined (_SEQUENT_)
1288- struct utsname un;
1289-
1290- uname(&un);
1291-
1292- if (strncmp(un.version, "V2", 2) == 0) {
1293- printf ("i386-sequent-ptx2\n"); exit (0);
1294- }
1295- if (strncmp(un.version, "V1", 2) == 0) { /* XXX is V1 correct? */
1296- printf ("i386-sequent-ptx1\n"); exit (0);
1297- }
1298- printf ("i386-sequent-ptx\n"); exit (0);
1299-
1300-#endif
1301-
1302-#if defined (vax)
1303-# if !defined (ultrix)
1304-# include <sys/param.h>
1305-# if defined (BSD)
1306-# if BSD == 43
1307- printf ("vax-dec-bsd4.3\n"); exit (0);
1308-# else
1309-# if BSD == 199006
1310- printf ("vax-dec-bsd4.3reno\n"); exit (0);
1311-# else
1312- printf ("vax-dec-bsd\n"); exit (0);
1313-# endif
1314-# endif
1315-# else
1316- printf ("vax-dec-bsd\n"); exit (0);
1317-# endif
1318-# else
1319- printf ("vax-dec-ultrix\n"); exit (0);
1320-# endif
1321-#endif
1322-
1323-#if defined (alliant) && defined (i860)
1324- printf ("i860-alliant-bsd\n"); exit (0);
1325-#endif
1326-
1327- exit (1);
1328-}
1329-EOF
1330-
1331-$CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null && $dummy && exit 0
1332-
1333-# Apollos put the system type in the environment.
1334-
1335-test -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit 0; }
1336-
1337-# Convex versions that predate uname can use getsysinfo(1)
1338-
1339-if [ -x /usr/convex/getsysinfo ]
1340-then
1341- case `getsysinfo -f cpu_type` in
1342- c1*)
1343- echo c1-convex-bsd
1344- exit 0 ;;
1345- c2*)
1346- if getsysinfo -f scalar_acc
1347- then echo c32-convex-bsd
1348- else echo c2-convex-bsd
1349- fi
1350- exit 0 ;;
1351- c34*)
1352- echo c34-convex-bsd
1353- exit 0 ;;
1354- c38*)
1355- echo c38-convex-bsd
1356- exit 0 ;;
1357- c4*)
1358- echo c4-convex-bsd
1359- exit 0 ;;
1360- esac
1361-fi
1362-
1363-cat >&2 <<EOF
1364-$0: unable to guess system type
1365-
1366-This script, last modified $timestamp, has failed to recognize
1367-the operating system you are using. It is advised that you
1368-download the most up to date version of the config scripts from
1369-
1370- ftp://ftp.gnu.org/pub/gnu/config/
1371-
1372-If the version you run ($0) is already up to date, please
1373-send the following data and any information you think might be
1374-pertinent to <config-patches@gnu.org> in order to provide the needed
1375-information to handle your system.
1376-
1377-config.guess timestamp = $timestamp
1378-
1379-uname -m = `(uname -m) 2>/dev/null || echo unknown`
1380-uname -r = `(uname -r) 2>/dev/null || echo unknown`
1381-uname -s = `(uname -s) 2>/dev/null || echo unknown`
1382-uname -v = `(uname -v) 2>/dev/null || echo unknown`
1383-
1384-/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null`
1385-/bin/uname -X = `(/bin/uname -X) 2>/dev/null`
1386-
1387-hostinfo = `(hostinfo) 2>/dev/null`
1388-/bin/universe = `(/bin/universe) 2>/dev/null`
1389-/usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null`
1390-/bin/arch = `(/bin/arch) 2>/dev/null`
1391-/usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null`
1392-/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null`
1393-
1394-UNAME_MACHINE = ${UNAME_MACHINE}
1395-UNAME_RELEASE = ${UNAME_RELEASE}
1396-UNAME_SYSTEM = ${UNAME_SYSTEM}
1397-UNAME_VERSION = ${UNAME_VERSION}
1398-EOF
1399-
1400-exit 1
1401-
1402-# Local variables:
1403-# eval: (add-hook 'write-file-hooks 'time-stamp)
1404-# time-stamp-start: "timestamp='"
1405-# time-stamp-format: "%:y-%02m-%02d"
1406-# time-stamp-end: "'"
1407-# End:
--- a/mingwrt/config.sub
+++ /dev/null
@@ -1,1504 +0,0 @@
1-#! /bin/sh
2-# Configuration validation subroutine script.
3-# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
4-# 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
5-
6-timestamp='2003-06-17'
7-
8-# This file is (in principle) common to ALL GNU software.
9-# The presence of a machine in this file suggests that SOME GNU software
10-# can handle that machine. It does not imply ALL GNU software can.
11-#
12-# This file is free software; you can redistribute it and/or modify
13-# it under the terms of the GNU General Public License as published by
14-# the Free Software Foundation; either version 2 of the License, or
15-# (at your option) any later version.
16-#
17-# This program is distributed in the hope that it will be useful,
18-# but WITHOUT ANY WARRANTY; without even the implied warranty of
19-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
20-# GNU General Public License for more details.
21-#
22-# You should have received a copy of the GNU General Public License
23-# along with this program; if not, write to the Free Software
24-# Foundation, Inc., 59 Temple Place - Suite 330,
25-# Boston, MA 02111-1307, USA.
26-
27-# As a special exception to the GNU General Public License, if you
28-# distribute this file as part of a program that contains a
29-# configuration script generated by Autoconf, you may include it under
30-# the same distribution terms that you use for the rest of that program.
31-
32-# Please send patches to <config-patches@gnu.org>. Submit a context
33-# diff and a properly formatted ChangeLog entry.
34-#
35-# Configuration subroutine to validate and canonicalize a configuration type.
36-# Supply the specified configuration type as an argument.
37-# If it is invalid, we print an error message on stderr and exit with code 1.
38-# Otherwise, we print the canonical config type on stdout and succeed.
39-
40-# This file is supposed to be the same for all GNU packages
41-# and recognize all the CPU types, system types and aliases
42-# that are meaningful with *any* GNU software.
43-# Each package is responsible for reporting which valid configurations
44-# it does not support. The user should be able to distinguish
45-# a failure to support a valid configuration from a meaningless
46-# configuration.
47-
48-# The goal of this file is to map all the various variations of a given
49-# machine specification into a single specification in the form:
50-# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM
51-# or in some cases, the newer four-part form:
52-# CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM
53-# It is wrong to echo any other type of specification.
54-
55-me=`echo "$0" | sed -e 's,.*/,,'`
56-
57-usage="\
58-Usage: $0 [OPTION] CPU-MFR-OPSYS
59- $0 [OPTION] ALIAS
60-
61-Canonicalize a configuration name.
62-
63-Operation modes:
64- -h, --help print this help, then exit
65- -t, --time-stamp print date of last modification, then exit
66- -v, --version print version number, then exit
67-
68-Report bugs and patches to <config-patches@gnu.org>."
69-
70-version="\
71-GNU config.sub ($timestamp)
72-
73-Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001
74-Free Software Foundation, Inc.
75-
76-This is free software; see the source for copying conditions. There is NO
77-warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
78-
79-help="
80-Try \`$me --help' for more information."
81-
82-# Parse command line
83-while test $# -gt 0 ; do
84- case $1 in
85- --time-stamp | --time* | -t )
86- echo "$timestamp" ; exit 0 ;;
87- --version | -v )
88- echo "$version" ; exit 0 ;;
89- --help | --h* | -h )
90- echo "$usage"; exit 0 ;;
91- -- ) # Stop option processing
92- shift; break ;;
93- - ) # Use stdin as input.
94- break ;;
95- -* )
96- echo "$me: invalid option $1$help"
97- exit 1 ;;
98-
99- *local*)
100- # First pass through any local machine types.
101- echo $1
102- exit 0;;
103-
104- * )
105- break ;;
106- esac
107-done
108-
109-case $# in
110- 0) echo "$me: missing argument$help" >&2
111- exit 1;;
112- 1) ;;
113- *) echo "$me: too many arguments$help" >&2
114- exit 1;;
115-esac
116-
117-# Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any).
118-# Here we must recognize all the valid KERNEL-OS combinations.
119-maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'`
120-case $maybe_os in
121- nto-qnx* | linux-gnu* | freebsd*-gnu* | netbsd*-gnu* | storm-chaos* | os2-emx* | rtmk-nova*)
122- os=-$maybe_os
123- basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`
124- ;;
125- *)
126- basic_machine=`echo $1 | sed 's/-[^-]*$//'`
127- if [ $basic_machine != $1 ]
128- then os=`echo $1 | sed 's/.*-/-/'`
129- else os=; fi
130- ;;
131-esac
132-
133-### Let's recognize common machines as not being operating systems so
134-### that things like config.sub decstation-3100 work. We also
135-### recognize some manufacturers as not being operating systems, so we
136-### can provide default operating systems below.
137-case $os in
138- -sun*os*)
139- # Prevent following clause from handling this invalid input.
140- ;;
141- -dec* | -mips* | -sequent* | -encore* | -pc532* | -sgi* | -sony* | \
142- -att* | -7300* | -3300* | -delta* | -motorola* | -sun[234]* | \
143- -unicom* | -ibm* | -next | -hp | -isi* | -apollo | -altos* | \
144- -convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\
145- -c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \
146- -harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \
147- -apple | -axis)
148- os=
149- basic_machine=$1
150- ;;
151- -sim | -cisco | -oki | -wec | -winbond)
152- os=
153- basic_machine=$1
154- ;;
155- -scout)
156- ;;
157- -wrs)
158- os=-vxworks
159- basic_machine=$1
160- ;;
161- -chorusos*)
162- os=-chorusos
163- basic_machine=$1
164- ;;
165- -chorusrdb)
166- os=-chorusrdb
167- basic_machine=$1
168- ;;
169- -hiux*)
170- os=-hiuxwe2
171- ;;
172- -sco5)
173- os=-sco3.2v5
174- basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
175- ;;
176- -sco4)
177- os=-sco3.2v4
178- basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
179- ;;
180- -sco3.2.[4-9]*)
181- os=`echo $os | sed -e 's/sco3.2./sco3.2v/'`
182- basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
183- ;;
184- -sco3.2v[4-9]*)
185- # Don't forget version if it is 3.2v4 or newer.
186- basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
187- ;;
188- -sco*)
189- os=-sco3.2v2
190- basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
191- ;;
192- -udk*)
193- basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
194- ;;
195- -isc)
196- os=-isc2.2
197- basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
198- ;;
199- -clix*)
200- basic_machine=clipper-intergraph
201- ;;
202- -isc*)
203- basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
204- ;;
205- -lynx*)
206- os=-lynxos
207- ;;
208- -ptx*)
209- basic_machine=`echo $1 | sed -e 's/86-.*/86-sequent/'`
210- ;;
211- -windowsnt*)
212- os=`echo $os | sed -e 's/windowsnt/winnt/'`
213- ;;
214- -psos*)
215- os=-psos
216- ;;
217- -mint | -mint[0-9]*)
218- basic_machine=m68k-atari
219- os=-mint
220- ;;
221-esac
222-
223-# Decode aliases for certain CPU-COMPANY combinations.
224-case $basic_machine in
225- # Recognize the basic CPU types without company name.
226- # Some are omitted here because they have special meanings below.
227- 1750a | 580 \
228- | a29k \
229- | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \
230- | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \
231- | arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr \
232- | c4x | clipper \
233- | d10v | d30v | dlx | dsp16xx \
234- | fr30 | frv \
235- | h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \
236- | i370 | i860 | i960 | ia64 \
237- | ip2k \
238- | m32r | m68000 | m68k | m88k | mcore \
239- | mips | mipsbe | mipseb | mipsel | mipsle \
240- | mips16 \
241- | mips64 | mips64el \
242- | mips64vr | mips64vrel \
243- | mips64orion | mips64orionel \
244- | mips64vr4100 | mips64vr4100el \
245- | mips64vr4300 | mips64vr4300el \
246- | mips64vr5000 | mips64vr5000el \
247- | mipsisa32 | mipsisa32el \
248- | mipsisa32r2 | mipsisa32r2el \
249- | mipsisa64 | mipsisa64el \
250- | mipsisa64sb1 | mipsisa64sb1el \
251- | mipsisa64sr71k | mipsisa64sr71kel \
252- | mipstx39 | mipstx39el \
253- | mn10200 | mn10300 \
254- | msp430 \
255- | ns16k | ns32k \
256- | openrisc | or32 \
257- | pdp10 | pdp11 | pj | pjl \
258- | powerpc | powerpc64 | powerpc64le | powerpcle | ppcbe \
259- | pyramid \
260- | sh | sh[1234] | sh[23]e | sh[34]eb | shbe | shle | sh[1234]le | sh3ele \
261- | sh64 | sh64le \
262- | sparc | sparc64 | sparc86x | sparclet | sparclite | sparcv9 | sparcv9b \
263- | strongarm \
264- | tahoe | thumb | tic4x | tic80 | tron \
265- | v850 | v850e \
266- | we32k \
267- | x86 | xscale | xstormy16 | xtensa \
268- | z8k)
269- basic_machine=$basic_machine-unknown
270- ;;
271- m6811 | m68hc11 | m6812 | m68hc12)
272- # Motorola 68HC11/12.
273- basic_machine=$basic_machine-unknown
274- os=-none
275- ;;
276- m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k)
277- ;;
278-
279- # We use `pc' rather than `unknown'
280- # because (1) that's what they normally are, and
281- # (2) the word "unknown" tends to confuse beginning users.
282- i*86 | x86_64)
283- basic_machine=$basic_machine-pc
284- ;;
285- # Object if more than one company name word.
286- *-*-*)
287- echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2
288- exit 1
289- ;;
290- # Recognize the basic CPU types with company name.
291- 580-* \
292- | a29k-* \
293- | alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \
294- | alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \
295- | alphapca5[67]-* | alpha64pca5[67]-* | arc-* \
296- | arm-* | armbe-* | armle-* | armeb-* | armv*-* \
297- | avr-* \
298- | bs2000-* \
299- | c[123]* | c30-* | [cjt]90-* | c4x-* | c54x-* | c55x-* | c6x-* \
300- | clipper-* | cydra-* \
301- | d10v-* | d30v-* | dlx-* \
302- | elxsi-* \
303- | f30[01]-* | f700-* | fr30-* | frv-* | fx80-* \
304- | h8300-* | h8500-* \
305- | hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \
306- | i*86-* | i860-* | i960-* | ia64-* \
307- | ip2k-* \
308- | m32r-* \
309- | m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \
310- | m88110-* | m88k-* | mcore-* \
311- | mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \
312- | mips16-* \
313- | mips64-* | mips64el-* \
314- | mips64vr-* | mips64vrel-* \
315- | mips64orion-* | mips64orionel-* \
316- | mips64vr4100-* | mips64vr4100el-* \
317- | mips64vr4300-* | mips64vr4300el-* \
318- | mips64vr5000-* | mips64vr5000el-* \
319- | mipsisa32-* | mipsisa32el-* \
320- | mipsisa32r2-* | mipsisa32r2el-* \
321- | mipsisa64-* | mipsisa64el-* \
322- | mipsisa64sb1-* | mipsisa64sb1el-* \
323- | mipsisa64sr71k-* | mipsisa64sr71kel-* \
324- | mipstx39-* | mipstx39el-* \
325- | msp430-* \
326- | none-* | np1-* | nv1-* | ns16k-* | ns32k-* \
327- | orion-* \
328- | pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \
329- | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* | ppcbe-* \
330- | pyramid-* \
331- | romp-* | rs6000-* \
332- | sh-* | sh[1234]-* | sh[23]e-* | sh[34]eb-* | shbe-* \
333- | shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \
334- | sparc-* | sparc64-* | sparc86x-* | sparclet-* | sparclite-* \
335- | sparcv9-* | sparcv9b-* | strongarm-* | sv1-* | sx?-* \
336- | tahoe-* | thumb-* \
337- | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \
338- | tron-* \
339- | v850-* | v850e-* | vax-* \
340- | we32k-* \
341- | x86-* | x86_64-* | xps100-* | xscale-* | xstormy16-* \
342- | xtensa-* \
343- | ymp-* \
344- | z8k-*)
345- ;;
346- # Recognize the various machine names and aliases which stand
347- # for a CPU type and a company and sometimes even an OS.
348- 386bsd)
349- basic_machine=i386-unknown
350- os=-bsd
351- ;;
352- 3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc)
353- basic_machine=m68000-att
354- ;;
355- 3b*)
356- basic_machine=we32k-att
357- ;;
358- a29khif)
359- basic_machine=a29k-amd
360- os=-udi
361- ;;
362- adobe68k)
363- basic_machine=m68010-adobe
364- os=-scout
365- ;;
366- alliant | fx80)
367- basic_machine=fx80-alliant
368- ;;
369- altos | altos3068)
370- basic_machine=m68k-altos
371- ;;
372- am29k)
373- basic_machine=a29k-none
374- os=-bsd
375- ;;
376- amd64)
377- basic_machine=x86_64-pc
378- ;;
379- amdahl)
380- basic_machine=580-amdahl
381- os=-sysv
382- ;;
383- amiga | amiga-*)
384- basic_machine=m68k-unknown
385- ;;
386- amigaos | amigados)
387- basic_machine=m68k-unknown
388- os=-amigaos
389- ;;
390- amigaunix | amix)
391- basic_machine=m68k-unknown
392- os=-sysv4
393- ;;
394- apollo68)
395- basic_machine=m68k-apollo
396- os=-sysv
397- ;;
398- apollo68bsd)
399- basic_machine=m68k-apollo
400- os=-bsd
401- ;;
402- aux)
403- basic_machine=m68k-apple
404- os=-aux
405- ;;
406- balance)
407- basic_machine=ns32k-sequent
408- os=-dynix
409- ;;
410- c90)
411- basic_machine=c90-cray
412- os=-unicos
413- ;;
414- convex-c1)
415- basic_machine=c1-convex
416- os=-bsd
417- ;;
418- convex-c2)
419- basic_machine=c2-convex
420- os=-bsd
421- ;;
422- convex-c32)
423- basic_machine=c32-convex
424- os=-bsd
425- ;;
426- convex-c34)
427- basic_machine=c34-convex
428- os=-bsd
429- ;;
430- convex-c38)
431- basic_machine=c38-convex
432- os=-bsd
433- ;;
434- cray | j90)
435- basic_machine=j90-cray
436- os=-unicos
437- ;;
438- crds | unos)
439- basic_machine=m68k-crds
440- ;;
441- cris | cris-* | etrax*)
442- basic_machine=cris-axis
443- ;;
444- da30 | da30-*)
445- basic_machine=m68k-da30
446- ;;
447- decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn)
448- basic_machine=mips-dec
449- ;;
450- decsystem10* | dec10*)
451- basic_machine=pdp10-dec
452- os=-tops10
453- ;;
454- decsystem20* | dec20*)
455- basic_machine=pdp10-dec
456- os=-tops20
457- ;;
458- delta | 3300 | motorola-3300 | motorola-delta \
459- | 3300-motorola | delta-motorola)
460- basic_machine=m68k-motorola
461- ;;
462- delta88)
463- basic_machine=m88k-motorola
464- os=-sysv3
465- ;;
466- dpx20 | dpx20-*)
467- basic_machine=rs6000-bull
468- os=-bosx
469- ;;
470- dpx2* | dpx2*-bull)
471- basic_machine=m68k-bull
472- os=-sysv3
473- ;;
474- ebmon29k)
475- basic_machine=a29k-amd
476- os=-ebmon
477- ;;
478- elxsi)
479- basic_machine=elxsi-elxsi
480- os=-bsd
481- ;;
482- encore | umax | mmax)
483- basic_machine=ns32k-encore
484- ;;
485- es1800 | OSE68k | ose68k | ose | OSE)
486- basic_machine=m68k-ericsson
487- os=-ose
488- ;;
489- fx2800)
490- basic_machine=i860-alliant
491- ;;
492- genix)
493- basic_machine=ns32k-ns
494- ;;
495- gmicro)
496- basic_machine=tron-gmicro
497- os=-sysv
498- ;;
499- go32)
500- basic_machine=i386-pc
501- os=-go32
502- ;;
503- h3050r* | hiux*)
504- basic_machine=hppa1.1-hitachi
505- os=-hiuxwe2
506- ;;
507- h8300hms)
508- basic_machine=h8300-hitachi
509- os=-hms
510- ;;
511- h8300xray)
512- basic_machine=h8300-hitachi
513- os=-xray
514- ;;
515- h8500hms)
516- basic_machine=h8500-hitachi
517- os=-hms
518- ;;
519- harris)
520- basic_machine=m88k-harris
521- os=-sysv3
522- ;;
523- hp300-*)
524- basic_machine=m68k-hp
525- ;;
526- hp300bsd)
527- basic_machine=m68k-hp
528- os=-bsd
529- ;;
530- hp300hpux)
531- basic_machine=m68k-hp
532- os=-hpux
533- ;;
534- hp3k9[0-9][0-9] | hp9[0-9][0-9])
535- basic_machine=hppa1.0-hp
536- ;;
537- hp9k2[0-9][0-9] | hp9k31[0-9])
538- basic_machine=m68000-hp
539- ;;
540- hp9k3[2-9][0-9])
541- basic_machine=m68k-hp
542- ;;
543- hp9k6[0-9][0-9] | hp6[0-9][0-9])
544- basic_machine=hppa1.0-hp
545- ;;
546- hp9k7[0-79][0-9] | hp7[0-79][0-9])
547- basic_machine=hppa1.1-hp
548- ;;
549- hp9k78[0-9] | hp78[0-9])
550- # FIXME: really hppa2.0-hp
551- basic_machine=hppa1.1-hp
552- ;;
553- hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893)
554- # FIXME: really hppa2.0-hp
555- basic_machine=hppa1.1-hp
556- ;;
557- hp9k8[0-9][13679] | hp8[0-9][13679])
558- basic_machine=hppa1.1-hp
559- ;;
560- hp9k8[0-9][0-9] | hp8[0-9][0-9])
561- basic_machine=hppa1.0-hp
562- ;;
563- hppa-next)
564- os=-nextstep3
565- ;;
566- hppaosf)
567- basic_machine=hppa1.1-hp
568- os=-osf
569- ;;
570- hppro)
571- basic_machine=hppa1.1-hp
572- os=-proelf
573- ;;
574- i370-ibm* | ibm*)
575- basic_machine=i370-ibm
576- ;;
577-# I'm not sure what "Sysv32" means. Should this be sysv3.2?
578- i*86v32)
579- basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
580- os=-sysv32
581- ;;
582- i*86v4*)
583- basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
584- os=-sysv4
585- ;;
586- i*86v)
587- basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
588- os=-sysv
589- ;;
590- i*86sol2)
591- basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
592- os=-solaris2
593- ;;
594- i386mach)
595- basic_machine=i386-mach
596- os=-mach
597- ;;
598- i386-vsta | vsta)
599- basic_machine=i386-unknown
600- os=-vsta
601- ;;
602- iris | iris4d)
603- basic_machine=mips-sgi
604- case $os in
605- -irix*)
606- ;;
607- *)
608- os=-irix4
609- ;;
610- esac
611- ;;
612- isi68 | isi)
613- basic_machine=m68k-isi
614- os=-sysv
615- ;;
616- m88k-omron*)
617- basic_machine=m88k-omron
618- ;;
619- magnum | m3230)
620- basic_machine=mips-mips
621- os=-sysv
622- ;;
623- merlin)
624- basic_machine=ns32k-utek
625- os=-sysv
626- ;;
627- mingw32)
628- basic_machine=i386-pc
629- os=-mingw32
630- ;;
631- miniframe)
632- basic_machine=m68000-convergent
633- ;;
634- *mint | -mint[0-9]* | *MiNT | *MiNT[0-9]*)
635- basic_machine=m68k-atari
636- os=-mint
637- ;;
638- mips3*-*)
639- basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`
640- ;;
641- mips3*)
642- basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown
643- ;;
644- mmix*)
645- basic_machine=mmix-knuth
646- os=-mmixware
647- ;;
648- monitor)
649- basic_machine=m68k-rom68k
650- os=-coff
651- ;;
652- morphos)
653- basic_machine=powerpc-unknown
654- os=-morphos
655- ;;
656- msdos)
657- basic_machine=i386-pc
658- os=-msdos
659- ;;
660- mvs)
661- basic_machine=i370-ibm
662- os=-mvs
663- ;;
664- ncr3000)
665- basic_machine=i486-ncr
666- os=-sysv4
667- ;;
668- netbsd386)
669- basic_machine=i386-unknown
670- os=-netbsd
671- ;;
672- netwinder)
673- basic_machine=armv4l-rebel
674- os=-linux
675- ;;
676- news | news700 | news800 | news900)
677- basic_machine=m68k-sony
678- os=-newsos
679- ;;
680- news1000)
681- basic_machine=m68030-sony
682- os=-newsos
683- ;;
684- news-3600 | risc-news)
685- basic_machine=mips-sony
686- os=-newsos
687- ;;
688- necv70)
689- basic_machine=v70-nec
690- os=-sysv
691- ;;
692- next | m*-next )
693- basic_machine=m68k-next
694- case $os in
695- -nextstep* )
696- ;;
697- -ns2*)
698- os=-nextstep2
699- ;;
700- *)
701- os=-nextstep3
702- ;;
703- esac
704- ;;
705- nh3000)
706- basic_machine=m68k-harris
707- os=-cxux
708- ;;
709- nh[45]000)
710- basic_machine=m88k-harris
711- os=-cxux
712- ;;
713- nindy960)
714- basic_machine=i960-intel
715- os=-nindy
716- ;;
717- mon960)
718- basic_machine=i960-intel
719- os=-mon960
720- ;;
721- nonstopux)
722- basic_machine=mips-compaq
723- os=-nonstopux
724- ;;
725- np1)
726- basic_machine=np1-gould
727- ;;
728- nv1)
729- basic_machine=nv1-cray
730- os=-unicosmp
731- ;;
732- nsr-tandem)
733- basic_machine=nsr-tandem
734- ;;
735- op50n-* | op60c-*)
736- basic_machine=hppa1.1-oki
737- os=-proelf
738- ;;
739- or32 | or32-*)
740- basic_machine=or32-unknown
741- os=-coff
742- ;;
743- OSE68000 | ose68000)
744- basic_machine=m68000-ericsson
745- os=-ose
746- ;;
747- os68k)
748- basic_machine=m68k-none
749- os=-os68k
750- ;;
751- pa-hitachi)
752- basic_machine=hppa1.1-hitachi
753- os=-hiuxwe2
754- ;;
755- paragon)
756- basic_machine=i860-intel
757- os=-osf
758- ;;
759- pbd)
760- basic_machine=sparc-tti
761- ;;
762- pbb)
763- basic_machine=m68k-tti
764- ;;
765- pc532 | pc532-*)
766- basic_machine=ns32k-pc532
767- ;;
768- pentium | p5 | k5 | k6 | nexgen | viac3)
769- basic_machine=i586-pc
770- ;;
771- pentiumpro | p6 | 6x86 | athlon | athlon_*)
772- basic_machine=i686-pc
773- ;;
774- pentiumii | pentium2 | pentiumiii | pentium3)
775- basic_machine=i686-pc
776- ;;
777- pentium4)
778- basic_machine=i786-pc
779- ;;
780- pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*)
781- basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'`
782- ;;
783- pentiumpro-* | p6-* | 6x86-* | athlon-*)
784- basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
785- ;;
786- pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*)
787- basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
788- ;;
789- pentium4-*)
790- basic_machine=i786-`echo $basic_machine | sed 's/^[^-]*-//'`
791- ;;
792- pn)
793- basic_machine=pn-gould
794- ;;
795- power) basic_machine=power-ibm
796- ;;
797- ppc) basic_machine=powerpc-unknown
798- ;;
799- ppc-*) basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'`
800- ;;
801- ppcle | powerpclittle | ppc-le | powerpc-little)
802- basic_machine=powerpcle-unknown
803- ;;
804- ppcle-* | powerpclittle-*)
805- basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'`
806- ;;
807- ppc64) basic_machine=powerpc64-unknown
808- ;;
809- ppc64-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'`
810- ;;
811- ppc64le | powerpc64little | ppc64-le | powerpc64-little)
812- basic_machine=powerpc64le-unknown
813- ;;
814- ppc64le-* | powerpc64little-*)
815- basic_machine=powerpc64le-`echo $basic_machine | sed 's/^[^-]*-//'`
816- ;;
817- ps2)
818- basic_machine=i386-ibm
819- ;;
820- pw32)
821- basic_machine=i586-unknown
822- os=-pw32
823- ;;
824- rom68k)
825- basic_machine=m68k-rom68k
826- os=-coff
827- ;;
828- rm[46]00)
829- basic_machine=mips-siemens
830- ;;
831- rtpc | rtpc-*)
832- basic_machine=romp-ibm
833- ;;
834- s390 | s390-*)
835- basic_machine=s390-ibm
836- ;;
837- s390x | s390x-*)
838- basic_machine=s390x-ibm
839- ;;
840- sa29200)
841- basic_machine=a29k-amd
842- os=-udi
843- ;;
844- sb1)
845- basic_machine=mipsisa64sb1-unknown
846- ;;
847- sb1el)
848- basic_machine=mipsisa64sb1el-unknown
849- ;;
850- sei)
851- basic_machine=mips-sei
852- os=-seiux
853- ;;
854- sequent)
855- basic_machine=i386-sequent
856- ;;
857- sh)
858- basic_machine=sh-hitachi
859- os=-hms
860- ;;
861- sh64)
862- basic_machine=sh64-unknown
863- ;;
864- sparclite-wrs | simso-wrs)
865- basic_machine=sparclite-wrs
866- os=-vxworks
867- ;;
868- sps7)
869- basic_machine=m68k-bull
870- os=-sysv2
871- ;;
872- spur)
873- basic_machine=spur-unknown
874- ;;
875- st2000)
876- basic_machine=m68k-tandem
877- ;;
878- stratus)
879- basic_machine=i860-stratus
880- os=-sysv4
881- ;;
882- sun2)
883- basic_machine=m68000-sun
884- ;;
885- sun2os3)
886- basic_machine=m68000-sun
887- os=-sunos3
888- ;;
889- sun2os4)
890- basic_machine=m68000-sun
891- os=-sunos4
892- ;;
893- sun3os3)
894- basic_machine=m68k-sun
895- os=-sunos3
896- ;;
897- sun3os4)
898- basic_machine=m68k-sun
899- os=-sunos4
900- ;;
901- sun4os3)
902- basic_machine=sparc-sun
903- os=-sunos3
904- ;;
905- sun4os4)
906- basic_machine=sparc-sun
907- os=-sunos4
908- ;;
909- sun4sol2)
910- basic_machine=sparc-sun
911- os=-solaris2
912- ;;
913- sun3 | sun3-*)
914- basic_machine=m68k-sun
915- ;;
916- sun4)
917- basic_machine=sparc-sun
918- ;;
919- sun386 | sun386i | roadrunner)
920- basic_machine=i386-sun
921- ;;
922- sv1)
923- basic_machine=sv1-cray
924- os=-unicos
925- ;;
926- symmetry)
927- basic_machine=i386-sequent
928- os=-dynix
929- ;;
930- t3e)
931- basic_machine=alphaev5-cray
932- os=-unicos
933- ;;
934- t90)
935- basic_machine=t90-cray
936- os=-unicos
937- ;;
938- tic54x | c54x*)
939- basic_machine=tic54x-unknown
940- os=-coff
941- ;;
942- tic55x | c55x*)
943- basic_machine=tic55x-unknown
944- os=-coff
945- ;;
946- tic6x | c6x*)
947- basic_machine=tic6x-unknown
948- os=-coff
949- ;;
950- tx39)
951- basic_machine=mipstx39-unknown
952- ;;
953- tx39el)
954- basic_machine=mipstx39el-unknown
955- ;;
956- toad1)
957- basic_machine=pdp10-xkl
958- os=-tops20
959- ;;
960- tower | tower-32)
961- basic_machine=m68k-ncr
962- ;;
963- udi29k)
964- basic_machine=a29k-amd
965- os=-udi
966- ;;
967- ultra3)
968- basic_machine=a29k-nyu
969- os=-sym1
970- ;;
971- v810 | necv810)
972- basic_machine=v810-nec
973- os=-none
974- ;;
975- vaxv)
976- basic_machine=vax-dec
977- os=-sysv
978- ;;
979- vms)
980- basic_machine=vax-dec
981- os=-vms
982- ;;
983- vpp*|vx|vx-*)
984- basic_machine=f301-fujitsu
985- ;;
986- vxworks960)
987- basic_machine=i960-wrs
988- os=-vxworks
989- ;;
990- vxworks68)
991- basic_machine=m68k-wrs
992- os=-vxworks
993- ;;
994- vxworks29k)
995- basic_machine=a29k-wrs
996- os=-vxworks
997- ;;
998- w65*)
999- basic_machine=w65-wdc
1000- os=-none
1001- ;;
1002- w89k-*)
1003- basic_machine=hppa1.1-winbond
1004- os=-proelf
1005- ;;
1006- xps | xps100)
1007- basic_machine=xps100-honeywell
1008- ;;
1009- ymp)
1010- basic_machine=ymp-cray
1011- os=-unicos
1012- ;;
1013- z8k-*-coff)
1014- basic_machine=z8k-unknown
1015- os=-sim
1016- ;;
1017- none)
1018- basic_machine=none-none
1019- os=-none
1020- ;;
1021-
1022-# Here we handle the default manufacturer of certain CPU types. It is in
1023-# some cases the only manufacturer, in others, it is the most popular.
1024- w89k)
1025- basic_machine=hppa1.1-winbond
1026- ;;
1027- op50n)
1028- basic_machine=hppa1.1-oki
1029- ;;
1030- op60c)
1031- basic_machine=hppa1.1-oki
1032- ;;
1033- romp)
1034- basic_machine=romp-ibm
1035- ;;
1036- rs6000)
1037- basic_machine=rs6000-ibm
1038- ;;
1039- vax)
1040- basic_machine=vax-dec
1041- ;;
1042- pdp10)
1043- # there are many clones, so DEC is not a safe bet
1044- basic_machine=pdp10-unknown
1045- ;;
1046- pdp11)
1047- basic_machine=pdp11-dec
1048- ;;
1049- we32k)
1050- basic_machine=we32k-att
1051- ;;
1052- sh3 | sh4 | sh[34]eb | sh[1234]le | sh[23]ele)
1053- basic_machine=sh-unknown
1054- ;;
1055- sh64)
1056- basic_machine=sh64-unknown
1057- ;;
1058- sparc | sparcv9 | sparcv9b)
1059- basic_machine=sparc-sun
1060- ;;
1061- cydra)
1062- basic_machine=cydra-cydrome
1063- ;;
1064- orion)
1065- basic_machine=orion-highlevel
1066- ;;
1067- orion105)
1068- basic_machine=clipper-highlevel
1069- ;;
1070- mac | mpw | mac-mpw)
1071- basic_machine=m68k-apple
1072- ;;
1073- pmac | pmac-mpw)
1074- basic_machine=powerpc-apple
1075- ;;
1076- *-unknown)
1077- # Make sure to match an already-canonicalized machine name.
1078- ;;
1079- *)
1080- echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2
1081- exit 1
1082- ;;
1083-esac
1084-
1085-# Here we canonicalize certain aliases for manufacturers.
1086-case $basic_machine in
1087- *-digital*)
1088- basic_machine=`echo $basic_machine | sed 's/digital.*/dec/'`
1089- ;;
1090- *-commodore*)
1091- basic_machine=`echo $basic_machine | sed 's/commodore.*/cbm/'`
1092- ;;
1093- *)
1094- ;;
1095-esac
1096-
1097-# Decode manufacturer-specific aliases for certain operating systems.
1098-
1099-if [ x"$os" != x"" ]
1100-then
1101-case $os in
1102- # First match some system type aliases
1103- # that might get confused with valid system types.
1104- # -solaris* is a basic system type, with this one exception.
1105- -solaris1 | -solaris1.*)
1106- os=`echo $os | sed -e 's|solaris1|sunos4|'`
1107- ;;
1108- -solaris)
1109- os=-solaris2
1110- ;;
1111- -svr4*)
1112- os=-sysv4
1113- ;;
1114- -unixware*)
1115- os=-sysv4.2uw
1116- ;;
1117- -gnu/linux*)
1118- os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'`
1119- ;;
1120- # First accept the basic system types.
1121- # The portable systems comes first.
1122- # Each alternative MUST END IN A *, to match a version number.
1123- # -sysv* is not here because it comes later, after sysvr4.
1124- -gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \
1125- | -*vms* | -sco* | -esix* | -isc* | -aix* | -sunos | -sunos[34]*\
1126- | -hpux* | -unos* | -osf* | -luna* | -dgux* | -solaris* | -sym* \
1127- | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \
1128- | -aos* \
1129- | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \
1130- | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \
1131- | -hiux* | -386bsd* | -netbsd* | -openbsd* | -freebsd* | -riscix* \
1132- | -lynxos* | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \
1133- | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \
1134- | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \
1135- | -chorusos* | -chorusrdb* \
1136- | -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \
1137- | -mingw32* | -linux-gnu* | -uxpv* | -beos* | -mpeix* | -udk* \
1138- | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \
1139- | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \
1140- | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \
1141- | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \
1142- | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \
1143- | -powermax* | -dnix* | -nx6 | -nx7 | -sei*)
1144- # Remember, each alternative MUST END IN *, to match a version number.
1145- ;;
1146- -qnx*)
1147- case $basic_machine in
1148- x86-* | i*86-*)
1149- ;;
1150- *)
1151- os=-nto$os
1152- ;;
1153- esac
1154- ;;
1155- -nto-qnx*)
1156- ;;
1157- -nto*)
1158- os=`echo $os | sed -e 's|nto|nto-qnx|'`
1159- ;;
1160- -sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \
1161- | -windows* | -osx | -abug | -netware* | -os9* | -beos* \
1162- | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*)
1163- ;;
1164- -mac*)
1165- os=`echo $os | sed -e 's|mac|macos|'`
1166- ;;
1167- -linux*)
1168- os=`echo $os | sed -e 's|linux|linux-gnu|'`
1169- ;;
1170- -sunos5*)
1171- os=`echo $os | sed -e 's|sunos5|solaris2|'`
1172- ;;
1173- -sunos6*)
1174- os=`echo $os | sed -e 's|sunos6|solaris3|'`
1175- ;;
1176- -opened*)
1177- os=-openedition
1178- ;;
1179- -wince*)
1180- os=-wince
1181- ;;
1182- -osfrose*)
1183- os=-osfrose
1184- ;;
1185- -osf*)
1186- os=-osf
1187- ;;
1188- -utek*)
1189- os=-bsd
1190- ;;
1191- -dynix*)
1192- os=-bsd
1193- ;;
1194- -acis*)
1195- os=-aos
1196- ;;
1197- -atheos*)
1198- os=-atheos
1199- ;;
1200- -386bsd)
1201- os=-bsd
1202- ;;
1203- -ctix* | -uts*)
1204- os=-sysv
1205- ;;
1206- -nova*)
1207- os=-rtmk-nova
1208- ;;
1209- -ns2 )
1210- os=-nextstep2
1211- ;;
1212- -nsk*)
1213- os=-nsk
1214- ;;
1215- # Preserve the version number of sinix5.
1216- -sinix5.*)
1217- os=`echo $os | sed -e 's|sinix|sysv|'`
1218- ;;
1219- -sinix*)
1220- os=-sysv4
1221- ;;
1222- -triton*)
1223- os=-sysv3
1224- ;;
1225- -oss*)
1226- os=-sysv3
1227- ;;
1228- -svr4)
1229- os=-sysv4
1230- ;;
1231- -svr3)
1232- os=-sysv3
1233- ;;
1234- -sysvr4)
1235- os=-sysv4
1236- ;;
1237- # This must come after -sysvr4.
1238- -sysv*)
1239- ;;
1240- -ose*)
1241- os=-ose
1242- ;;
1243- -es1800*)
1244- os=-ose
1245- ;;
1246- -xenix)
1247- os=-xenix
1248- ;;
1249- -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*)
1250- os=-mint
1251- ;;
1252- -aros*)
1253- os=-aros
1254- ;;
1255- -kaos*)
1256- os=-kaos
1257- ;;
1258- -none)
1259- ;;
1260- *)
1261- # Get rid of the `-' at the beginning of $os.
1262- os=`echo $os | sed 's/[^-]*-//'`
1263- echo Invalid configuration \`$1\': system \`$os\' not recognized 1>&2
1264- exit 1
1265- ;;
1266-esac
1267-else
1268-
1269-# Here we handle the default operating systems that come with various machines.
1270-# The value should be what the vendor currently ships out the door with their
1271-# machine or put another way, the most popular os provided with the machine.
1272-
1273-# Note that if you're going to try to match "-MANUFACTURER" here (say,
1274-# "-sun"), then you have to tell the case statement up towards the top
1275-# that MANUFACTURER isn't an operating system. Otherwise, code above
1276-# will signal an error saying that MANUFACTURER isn't an operating
1277-# system, and we'll never get to this point.
1278-
1279-case $basic_machine in
1280- *-acorn)
1281- os=-riscix1.2
1282- ;;
1283- arm*-rebel)
1284- os=-linux
1285- ;;
1286- arm*-semi)
1287- os=-aout
1288- ;;
1289- c4x-* | tic4x-*)
1290- os=-coff
1291- ;;
1292- # This must come before the *-dec entry.
1293- pdp10-*)
1294- os=-tops20
1295- ;;
1296- pdp11-*)
1297- os=-none
1298- ;;
1299- *-dec | vax-*)
1300- os=-ultrix4.2
1301- ;;
1302- m68*-apollo)
1303- os=-domain
1304- ;;
1305- i386-sun)
1306- os=-sunos4.0.2
1307- ;;
1308- m68000-sun)
1309- os=-sunos3
1310- # This also exists in the configure program, but was not the
1311- # default.
1312- # os=-sunos4
1313- ;;
1314- m68*-cisco)
1315- os=-aout
1316- ;;
1317- mips*-cisco)
1318- os=-elf
1319- ;;
1320- mips*-*)
1321- os=-elf
1322- ;;
1323- or32-*)
1324- os=-coff
1325- ;;
1326- *-tti) # must be before sparc entry or we get the wrong os.
1327- os=-sysv3
1328- ;;
1329- sparc-* | *-sun)
1330- os=-sunos4.1.1
1331- ;;
1332- *-be)
1333- os=-beos
1334- ;;
1335- *-ibm)
1336- os=-aix
1337- ;;
1338- *-wec)
1339- os=-proelf
1340- ;;
1341- *-winbond)
1342- os=-proelf
1343- ;;
1344- *-oki)
1345- os=-proelf
1346- ;;
1347- *-hp)
1348- os=-hpux
1349- ;;
1350- *-hitachi)
1351- os=-hiux
1352- ;;
1353- i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent)
1354- os=-sysv
1355- ;;
1356- *-cbm)
1357- os=-amigaos
1358- ;;
1359- *-dg)
1360- os=-dgux
1361- ;;
1362- *-dolphin)
1363- os=-sysv3
1364- ;;
1365- m68k-ccur)
1366- os=-rtu
1367- ;;
1368- m88k-omron*)
1369- os=-luna
1370- ;;
1371- *-next )
1372- os=-nextstep
1373- ;;
1374- *-sequent)
1375- os=-ptx
1376- ;;
1377- *-crds)
1378- os=-unos
1379- ;;
1380- *-ns)
1381- os=-genix
1382- ;;
1383- i370-*)
1384- os=-mvs
1385- ;;
1386- *-next)
1387- os=-nextstep3
1388- ;;
1389- *-gould)
1390- os=-sysv
1391- ;;
1392- *-highlevel)
1393- os=-bsd
1394- ;;
1395- *-encore)
1396- os=-bsd
1397- ;;
1398- *-sgi)
1399- os=-irix
1400- ;;
1401- *-siemens)
1402- os=-sysv4
1403- ;;
1404- *-masscomp)
1405- os=-rtu
1406- ;;
1407- f30[01]-fujitsu | f700-fujitsu)
1408- os=-uxpv
1409- ;;
1410- *-rom68k)
1411- os=-coff
1412- ;;
1413- *-*bug)
1414- os=-coff
1415- ;;
1416- *-apple)
1417- os=-macos
1418- ;;
1419- *-atari*)
1420- os=-mint
1421- ;;
1422- *)
1423- os=-none
1424- ;;
1425-esac
1426-fi
1427-
1428-# Here we handle the case where we know the os, and the CPU type, but not the
1429-# manufacturer. We pick the logical manufacturer.
1430-vendor=unknown
1431-case $basic_machine in
1432- *-unknown)
1433- case $os in
1434- -riscix*)
1435- vendor=acorn
1436- ;;
1437- -sunos*)
1438- vendor=sun
1439- ;;
1440- -aix*)
1441- vendor=ibm
1442- ;;
1443- -beos*)
1444- vendor=be
1445- ;;
1446- -hpux*)
1447- vendor=hp
1448- ;;
1449- -mpeix*)
1450- vendor=hp
1451- ;;
1452- -hiux*)
1453- vendor=hitachi
1454- ;;
1455- -unos*)
1456- vendor=crds
1457- ;;
1458- -dgux*)
1459- vendor=dg
1460- ;;
1461- -luna*)
1462- vendor=omron
1463- ;;
1464- -genix*)
1465- vendor=ns
1466- ;;
1467- -mvs* | -opened*)
1468- vendor=ibm
1469- ;;
1470- -ptx*)
1471- vendor=sequent
1472- ;;
1473- -vxsim* | -vxworks* | -windiss*)
1474- vendor=wrs
1475- ;;
1476- -aux*)
1477- vendor=apple
1478- ;;
1479- -hms*)
1480- vendor=hitachi
1481- ;;
1482- -mpw* | -macos*)
1483- vendor=apple
1484- ;;
1485- -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*)
1486- vendor=atari
1487- ;;
1488- -vos*)
1489- vendor=stratus
1490- ;;
1491- esac
1492- basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"`
1493- ;;
1494-esac
1495-
1496-echo $basic_machine$os
1497-exit 0
1498-
1499-# Local variables:
1500-# eval: (add-hook 'write-file-hooks 'time-stamp)
1501-# time-stamp-start: "timestamp='"
1502-# time-stamp-format: "%:y-%02m-%02d"
1503-# time-stamp-end: "'"
1504-# End:
--- a/mingwrt/configure.ac
+++ b/mingwrt/configure.ac
@@ -29,7 +29,7 @@
2929 # DEALINGS IN THE SOFTWARE.
3030 #
3131 AC_PREREQ([2.64])
32- AC_INIT([MinGW C Runtime],[3.22.1],[http://mingw.org/Reporting_Bugs],[mingwrt])
32+ AC_INIT([MinGW C Runtime],[3.22.2],[http://mingw.org/Reporting_Bugs],[mingwrt])
3333
3434 AC_PREFIX_DEFAULT([/mingw])
3535 AC_CONFIG_SRCDIR([include/_mingw.h.in])
--- a/mingwrt/include/stdlib.h
+++ b/mingwrt/include/stdlib.h
@@ -522,6 +522,22 @@ typedef struct { long quot, rem; } ldiv_t;
522522 _CRTIMP __cdecl __MINGW_NOTHROW div_t div (int, int) __MINGW_ATTRIB_CONST;
523523 _CRTIMP __cdecl __MINGW_NOTHROW ldiv_t ldiv (long, long) __MINGW_ATTRIB_CONST;
524524
525+#if !defined __STRICT_ANSI__ || (defined _ISOC99_SOURCE && !defined __NO_INLINE__)
526+/* Although not nominally valid in "__STRICT_ANSI__" mode, when compiling C99
527+ * source, we use Microsoft's _exit() function to facilitate our provision of
528+ * an inline implementation of ISO-C99's _Exit() function.
529+ */
530+_CRTIMP __cdecl __MINGW_NOTHROW void _exit (int) __MINGW_ATTRIB_NORETURN;
531+
532+#ifdef __MSVCRT__
533+/* Similarly, we use Microsoft's MSVCRT.DLL specific _atoi64() function,
534+ * to facilitate an inline implementation of ISO-C99's atoll() function.
535+ */
536+_CRTIMP __cdecl __MINGW_NOTHROW __int64 _atoi64 (const char *);
537+
538+#endif /* __MSVCRT__ */
539+#endif /* !__STRICT_ANSI__ || (_ISOC99_SOURCE && !__NO_INLINE__) */
540+
525541 #if !defined (__STRICT_ANSI__)
526542 /* NOTE: Officially the three following functions are obsolete. The Win32 API
527543 * functions SetErrorMode, Beep and Sleep are their replacements.
@@ -531,8 +547,6 @@ _CRTIMP __cdecl __MINGW_NOTHROW void _beep (unsigned int, unsigned int) __MINGW
531547 _CRTIMP __cdecl __MINGW_NOTHROW void _seterrormode (int) __MINGW_ATTRIB_DEPRECATED;
532548 _CRTIMP __cdecl __MINGW_NOTHROW void _sleep (unsigned long) __MINGW_ATTRIB_DEPRECATED;
533549
534-_CRTIMP __cdecl __MINGW_NOTHROW void _exit (int) __MINGW_ATTRIB_NORETURN;
535-
536550 /* _onexit is a Microsoft extension. Use atexit for portability. */
537551 /* Note: This is in startup code, not imported directly from dll */
538552 typedef int (* _onexit_t)(void);
@@ -562,7 +576,6 @@ _CRTIMP __cdecl __MINGW_NOTHROW wchar_t *_ltow (long, wchar_t *, int);
562576 _CRTIMP __cdecl __MINGW_NOTHROW wchar_t *_ultow (unsigned long, wchar_t *, int);
563577
564578 #ifdef __MSVCRT__
565-_CRTIMP __cdecl __MINGW_NOTHROW __int64 _atoi64 (const char *);
566579 _CRTIMP __cdecl __MINGW_NOTHROW char* _i64toa (__int64, char *, int);
567580 _CRTIMP __cdecl __MINGW_NOTHROW char* _ui64toa (unsigned __int64, char *, int);
568581 _CRTIMP __cdecl __MINGW_NOTHROW __int64 _wtoi64 (const wchar_t *);
--- a/mingwrt/include/wchar.h
+++ b/mingwrt/include/wchar.h
@@ -190,7 +190,11 @@
190190 * long double wcstold (const wchar_t *restrict, wchar_t **restrict);
191191 *
192192 *
193- * while from...
193+ * while...
194+ */
195+#ifndef __STRICT_ANSI__
196+/* ...when NOT compiling with "__STRICT_ANSI__" conformity checking,
197+ * from...
194198 */
195199 #include "direct.h"
196200 /* ...we obtain prototypes for each of the following functions,
@@ -203,7 +207,7 @@
203207 * int _wrmdir (const wchar_t *);
204208 *
205209 *
206- * From...
210+ * while from...
207211 */
208212 #include "sys/stat.h"
209213 /* ...we obtain function prototypes, and all associated data type
@@ -228,7 +232,7 @@
228232 * int _wstat64i32 (const wchar_t *, struct _stat64i32 *);
229233 *
230234 *
231- * while from...
235+ * and from...
232236 */
233237 #include "io.h"
234238 /* ...we obtain function prototypes for each of the following, which
@@ -278,12 +282,13 @@
278282 * and _wfindnext() API, so we also declare the prototype for:
279283 *
280284 * int _findclose (intptr_t);
281- *
282- *
283- * and from...
285+ */
286+#endif /* !__STRICT_ANSI__ */
287+
288+/* From...
284289 */
285290 #include "time.h"
286-/* ...we obtain an opaque forward declaration of:
291+/* ...we always obtain an opaque forward declaration of:
287292 *
288293 * struct tm
289294 *
@@ -315,8 +320,10 @@
315320 * _wctime() itself, as an in-line alias for its corresponding
316321 * replacement library function.
317322 *
318- *
319- * Also, from...
323+ */
324+#ifndef __STRICT_ANSI__
325+/* Once again, when NOT compiling with "__STRICT_ANSI__" conformity
326+ * checking, from...
320327 */
321328 #include "locale.h"
322329 /* ...we obtain the declaration for:
@@ -358,6 +365,8 @@
358365 * );
359366 *
360367 */
368+#endif /* !__STRICT_ANSI__ */
369+
361370 _BEGIN_C_DECLS
362371
363372 /* Wide character string functions must be specified here, as required
@@ -490,9 +499,11 @@ size_t wcrtomb (char * __restrict__, wchar_t, mbstate_t *__restrict__);
490499 __cdecl __MINGW_NOTHROW size_t wcsrtombs
491500 (char *__restrict__, const wchar_t **__restrict__, size_t, mbstate_t *__restrict__);
492501
493-#ifdef _ISOC99_SOURCE
502+#if defined _ISOC99_SOURCE || defined __cplusplus
494503 /* These ISO-C99 functions are implemented in libmingwex.a,
495- * or, in some cases, by inline stubs.
504+ * or, in some cases, as inline stubs; while provided as MinGW
505+ * extensions to support ISO-C99, they are also required by
506+ * GNU C++.
496507 */
497508 __cdecl __MINGW_NOTHROW int fwide (FILE *, int);
498509 __cdecl __MINGW_NOTHROW int mbsinit (const mbstate_t *);