aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPhil Edwards <pme@gcc.gnu.org>2000-10-27 12:29:42 +0000
committerBenjamin Kosnik <bkoz@gcc.gnu.org>2000-10-27 12:29:42 +0000
commit5bd17d391761539da90999532d18d83ccdfccca4 (patch)
tree3fe2123edc7e88989934f1aeaba5db32d2f02033
parent128e977c58b95f6f6a0808b4959c8613c25d4190 (diff)
downloadgcc-5bd17d391761539da90999532d18d83ccdfccca4.zip
gcc-5bd17d391761539da90999532d18d83ccdfccca4.tar.gz
gcc-5bd17d391761539da90999532d18d83ccdfccca4.tar.bz2
acinclude.m4 (GLIBCPP_CHECK_LINKER_FEATURES): Comment out --gc-sections stuff entirely to avoid misleading people.
2000-10-26 Phil Edwards <pme@sources.redhat.com> David Edelsohn <dje@watson.ibm.com> * acinclude.m4 (GLIBCPP_CHECK_LINKER_FEATURES): Comment out --gc-sections stuff entirely to avoid misleading people. (GLIBCPP_ENABLE_CSTDIO): Merge need_libio and need_xtra_libio. * libio/Makefile.am (LIBIO_SRCS,LIBIO_WSRCS,LIBIO_XTRA_SRCS): Rearrange and merge. * libio/libio.h: Simplify, make fewer assumptions. Define those macros which must be defined. * config/os/solaris/solaris2.7/bits/os_defines.h: Simplify as a result. From-SVN: r37082
-rw-r--r--libstdc++-v3/acinclude.m483
-rw-r--r--libstdc++-v3/config/os/solaris/solaris2.7/bits/os_defines.h19
-rw-r--r--libstdc++-v3/libio/Makefile.am13
-rw-r--r--libstdc++-v3/libio/Makefile.in89
-rw-r--r--libstdc++-v3/libio/libio.h14
5 files changed, 117 insertions, 101 deletions
diff --git a/libstdc++-v3/acinclude.m4 b/libstdc++-v3/acinclude.m4
index a5e5e39..f3df3bd 100644
--- a/libstdc++-v3/acinclude.m4
+++ b/libstdc++-v3/acinclude.m4
@@ -258,16 +258,16 @@ AC_DEFUN(GLIBCPP_CHECK_LINKER_FEATURES, [
SECTION_LDFLAGS=''
OPT_LDFLAGS=''
AC_REQUIRE([AC_PROG_LD])
- if test "$ac_cv_prog_gnu_ld" = "yes"; then
+
+ # Set --gc-sections.
+ if test "$ac_cv_prog_gnu_ld" = "broken"; then
# GNU ld it is! Joy and bunny rabbits!
# All these tests are for C++; save the language and the compiler flags.
# Need to do this so that g++ won't try to link in libstdc++
ac_test_CFLAGS="${CFLAGS+set}"
ac_save_CFLAGS="$CFLAGS"
-# CFLAGS='-x c++ -Wl,--gc-sections'
-#XXX
- CFLAGS=''
+ CFLAGS='-x c++ -Wl,--gc-sections'
# Check for -Wl,--gc-sections
# XXX This test is broken at the moment, as symbols required for
@@ -292,15 +292,16 @@ AC_DEFUN(GLIBCPP_CHECK_LINKER_FEATURES, [
CFLAGS=''
fi
if test "$ac_sectionLDflags" = "yes"; then
-# SECTION_LDFLAGS='-Wl,--gc-sections'
-#XXX
- SECTION_LDFLAGS=''
+ SECTION_LDFLAGS='-Wl,--gc-sections'
fi
AC_MSG_RESULT($ac_sectionLDflags)
+ fi
+ # Set linker optimization flags.
+ if test "$ac_cv_prog_gnu_ld" = "yes"; then
OPT_LDFLAGS='-Wl,-O1'
-
fi
+
AC_SUBST(SECTION_LDFLAGS)
AC_SUBST(OPT_LDFLAGS)
])
@@ -394,6 +395,36 @@ AC_DEFUN(GLIBCPP_CHECK_MATH_DECL_AND_LINKAGE_3, [
dnl
+dnl Check to see if the (stdlib function) argument passed is
+dnl 1) declared when using the c++ compiler
+dnl 2) has "C" linkage
+dnl
+dnl Define HAVE_STRTOLD if "strtold" is declared and links
+dnl Define HAVE_STRTOF if "strtof" is declared and links
+dnl
+dnl argument 1 is name of function to check
+dnl
+dnl ASSUMES argument is a math function with TWO parameters
+dnl
+dnl GLIBCPP_CHECK_STDLIB_DECL_AND_LINKAGE_2
+AC_DEFUN(GLIBCPP_CHECK_STDLIB_DECL_AND_LINKAGE_2, [
+ AC_MSG_CHECKING([for $1 declaration])
+ AC_CACHE_VAL(glibcpp_cv_func_$1_use, [
+ AC_LANG_SAVE
+ AC_LANG_CPLUSPLUS
+ AC_TRY_COMPILE([#include <stdlib.h>],
+ [ $1(0, 0);],
+ [glibcpp_cv_func_$1_use=yes], [glibcpp_cv_func_$1_use=no])
+ AC_LANG_RESTORE
+ ])
+ AC_MSG_RESULT($glibcpp_cv_func_$1_use)
+ if test x$glibcpp_cv_func_$1_use = x"yes"; then
+ AC_CHECK_FUNCS($1)
+ fi
+])
+
+
+dnl
dnl Because the builtins are picky picky picky about the arguments they take,
dnl do an explict linkage tests here.
dnl Check to see if the (math function) argument passed is
@@ -501,6 +532,29 @@ AC_DEFUN(GLIBCPP_CHECK_BUILTIN_MATH_SUPPORT, [
dnl
+dnl Check to see what the underlying c library
+dnl These checks need to do two things:
+dnl 1) make sure the name is declared when using the c++ compiler
+dnl 2) make sure the name has "C" linkage
+dnl This might seem like overkill but experience has shown that it's not...
+dnl
+dnl Define HAVE_STRTOF etc if "strtof" is found.
+dnl Define HAVE_STRTOLD etc if "strtold" is found.
+dnl
+dnl GLIBCPP_CHECK_STDLIB_SUPPORT
+AC_DEFUN(GLIBCPP_CHECK_STDLIB_SUPPORT, [
+ ac_test_CXXFLAGS="${CXXFLAGS+set}"
+ ac_save_CXXFLAGS="$CXXFLAGS"
+ CXXFLAGS='-fno-builtins -D_GNU_SOURCE'
+
+ AC_CHECK_FUNCS(strtof)
+ GLIBCPP_CHECK_STDLIB_DECL_AND_LINKAGE_2(strtold)
+
+ CXXFLAGS="$ac_save_CXXFLAGS"
+])
+
+
+dnl
dnl Check to see what the underlying c library or math library is like.
dnl These checks need to do two things:
dnl 1) make sure the name is declared when using the c++ compiler
@@ -520,9 +574,6 @@ AC_DEFUN(GLIBCPP_CHECK_MATH_SUPPORT, [
ac_save_LIBS="$LIBS"
LIBS="$LIBS $libm"
- dnl Although not math functions, needed and for some reason checked here.
- AC_CHECK_FUNCS(strtof strtold)
-
dnl Check to see if certain C math functions exist.
GLIBCPP_CHECK_MATH_DECL_AND_LINKAGE_1(isinf)
GLIBCPP_CHECK_MATH_DECL_AND_LINKAGE_1(isnan)
@@ -782,8 +833,8 @@ dnl
dnl Depending on what is found, select various configure/*/bits/ctype_base.h
dnl Depending on what is found, select various configure/*/ctype.cc
dnl
-dnl GLIBCPP_CHECK_CTYPE
-AC_DEFUN(GLIBCPP_CHECK_CTYPE, [
+dnl GLIBCPP_CHECK_CTYPE_SUPPORT
+AC_DEFUN(GLIBCPP_CHECK_CTYPE_SUPPORT, [
AC_CHECK_HEADER(ctype.h, [
dnl If doesn't match any specified, go with defaults.
@@ -1247,11 +1298,9 @@ AC_DEFUN(GLIBCPP_ENABLE_CSTDIO, [
if test x$glibc_satisfactory = x"yes"; then
need_libio=no
- need_xtra_libio=no
need_wlibio=no
else
need_libio=yes
- need_xtra_libio=yes
# bkoz XXX need to add checks to enable this
# pme XXX here's a first pass at such a check
if test x$enable_c_mbchar != xno; then
@@ -1261,10 +1310,9 @@ AC_DEFUN(GLIBCPP_ENABLE_CSTDIO, [
fi
fi
- # Using libio, but <libio.h> doesn't exist on the target system. . .
else
+ # Using libio, but <libio.h> doesn't exist on the target system. . .
need_libio=yes
- need_xtra_libio=no
# bkoz XXX need to add checks to enable this
# pme XXX here's a first pass at such a check
if test x$enable_c_mbchar != xno; then
@@ -1296,7 +1344,6 @@ AC_DEFUN(GLIBCPP_ENABLE_CSTDIO, [
# 2000-08-04 bkoz hack
AM_CONDITIONAL(GLIBCPP_NEED_LIBIO, test "$need_libio" = yes)
- AM_CONDITIONAL(GLIBCPP_NEED_XTRA_LIBIO, test "$need_xtra_libio" = yes)
AM_CONDITIONAL(GLIBCPP_NEED_WLIBIO, test "$need_wlibio" = yes)
])
diff --git a/libstdc++-v3/config/os/solaris/solaris2.7/bits/os_defines.h b/libstdc++-v3/config/os/solaris/solaris2.7/bits/os_defines.h
index e4a79b3..23f12e7 100644
--- a/libstdc++-v3/config/os/solaris/solaris2.7/bits/os_defines.h
+++ b/libstdc++-v3/config/os/solaris/solaris2.7/bits/os_defines.h
@@ -28,9 +28,20 @@
// the GNU General Public License.
-#ifndef __P
-# define __P(p) p
-# define __PMT(p) p
-#endif
+#ifndef _GLIBCPP_OS_DEFINES
+# define _GLIBCPP_OS_DEFINES
+
+// Need these to get sane definitions, esp. of 64-bit types and typedefs.
+#define _XOPEN_SOURCE 500
+#define _LARGEFILE64_SOURCE 1
+
+// These are typedefs which libio assumes are already in place (because
+// they really are, under Linux).
+#define __off_t off_t
+#define __off64_t off64_t
+#define __ssize_t ssize_t
+
+#endif
+
diff --git a/libstdc++-v3/libio/Makefile.am b/libstdc++-v3/libio/Makefile.am
index b5d381f..9a82438 100644
--- a/libstdc++-v3/libio/Makefile.am
+++ b/libstdc++-v3/libio/Makefile.am
@@ -44,28 +44,23 @@ libio_headers = \
if GLIBCPP_NEED_LIBIO
LIBIO_SRCS = \
- filedoalloc.c genops.c fileops.c stdfiles.c c_codecvt.c
+ filedoalloc.c genops.c fileops.c stdfiles.c c_codecvt.c iofclose.c \
+ iofopen.c stdio.c
else
LIBIO_SRCS =
endif
if GLIBCPP_NEED_WLIBIO
LIBIO_WSRCS = \
- wfiledoalloc.c wfileops.c wgenops.c
+ wfiledoalloc.c wfileops.c wgenops.c iofwide.c
else
LIBIO_WSRCS =
endif
-if GLIBCPP_NEED_XTRA_LIBIO
-LIBIO_XTRASRCS = \
- iofwide.c iofclose.c iofopen.c stdio.c
-else
-LIBIO_XTRASRCS =
-endif
EXTRA_DIST = iostreamP.h
-libio_la_SOURCES = $(LIBIO_SRCS) $(LIBIO_WSRCS) $(LIBIO_XTRASRCS)
+libio_la_SOURCES = $(LIBIO_SRCS) $(LIBIO_WSRCS)
AM_CFLAGS = -D_GNU_SOURCE @DEBUG_FLAGS@
diff --git a/libstdc++-v3/libio/Makefile.in b/libstdc++-v3/libio/Makefile.in
index 8777d24..dd34dfb 100644
--- a/libstdc++-v3/libio/Makefile.in
+++ b/libstdc++-v3/libio/Makefile.in
@@ -123,16 +123,14 @@ INCLUDES = -nostdinc++ -I$(top_builddir) -I$(GLIBCPP_INCLUDE_DIR) $(LIBIO_IN
libio_headers = libio.h libioP.h iolibio.h
-@GLIBCPP_NEED_LIBIO_TRUE@LIBIO_SRCS = filedoalloc.c genops.c fileops.c stdfiles.c c_codecvt.c
+@GLIBCPP_NEED_LIBIO_TRUE@LIBIO_SRCS = filedoalloc.c genops.c fileops.c stdfiles.c c_codecvt.c iofclose.c iofopen.c stdio.c
@GLIBCPP_NEED_LIBIO_FALSE@LIBIO_SRCS =
-@GLIBCPP_NEED_WLIBIO_TRUE@LIBIO_WSRCS = wfiledoalloc.c wfileops.c wgenops.c
+@GLIBCPP_NEED_WLIBIO_TRUE@LIBIO_WSRCS = wfiledoalloc.c wfileops.c wgenops.c iofwide.c
@GLIBCPP_NEED_WLIBIO_FALSE@LIBIO_WSRCS =
-@GLIBCPP_NEED_XTRA_LIBIO_TRUE@LIBIO_XTRASRCS = iofwide.c iofclose.c iofopen.c stdio.c
-@GLIBCPP_NEED_XTRA_LIBIO_FALSE@LIBIO_XTRASRCS =
EXTRA_DIST = iostreamP.h
-libio_la_SOURCES = $(LIBIO_SRCS) $(LIBIO_WSRCS) $(LIBIO_XTRASRCS)
+libio_la_SOURCES = $(LIBIO_SRCS) $(LIBIO_WSRCS)
AM_CFLAGS = -D_GNU_SOURCE @DEBUG_FLAGS@
mkinstalldirs = $(SHELL) $(top_srcdir)/../mkinstalldirs
@@ -147,62 +145,31 @@ LDFLAGS = @LDFLAGS@
LIBS = @LIBS@
libio_la_LDFLAGS =
libio_la_LIBADD =
-@GLIBCPP_NEED_WLIBIO_FALSE@@GLIBCPP_NEED_XTRA_LIBIO_FALSE@@GLIBCPP_NEED_LIBIO_FALSE@libio_la_OBJECTS =
-@GLIBCPP_NEED_WLIBIO_FALSE@@GLIBCPP_NEED_XTRA_LIBIO_TRUE@@GLIBCPP_NEED_LIBIO_FALSE@libio_la_OBJECTS = \
-@GLIBCPP_NEED_WLIBIO_FALSE@@GLIBCPP_NEED_XTRA_LIBIO_TRUE@@GLIBCPP_NEED_LIBIO_FALSE@iofwide.lo \
-@GLIBCPP_NEED_WLIBIO_FALSE@@GLIBCPP_NEED_XTRA_LIBIO_TRUE@@GLIBCPP_NEED_LIBIO_FALSE@iofclose.lo \
-@GLIBCPP_NEED_WLIBIO_FALSE@@GLIBCPP_NEED_XTRA_LIBIO_TRUE@@GLIBCPP_NEED_LIBIO_FALSE@iofopen.lo \
-@GLIBCPP_NEED_WLIBIO_FALSE@@GLIBCPP_NEED_XTRA_LIBIO_TRUE@@GLIBCPP_NEED_LIBIO_FALSE@stdio.lo
-@GLIBCPP_NEED_WLIBIO_TRUE@@GLIBCPP_NEED_XTRA_LIBIO_FALSE@@GLIBCPP_NEED_LIBIO_TRUE@libio_la_OBJECTS = \
-@GLIBCPP_NEED_WLIBIO_TRUE@@GLIBCPP_NEED_XTRA_LIBIO_FALSE@@GLIBCPP_NEED_LIBIO_TRUE@filedoalloc.lo \
-@GLIBCPP_NEED_WLIBIO_TRUE@@GLIBCPP_NEED_XTRA_LIBIO_FALSE@@GLIBCPP_NEED_LIBIO_TRUE@genops.lo \
-@GLIBCPP_NEED_WLIBIO_TRUE@@GLIBCPP_NEED_XTRA_LIBIO_FALSE@@GLIBCPP_NEED_LIBIO_TRUE@fileops.lo \
-@GLIBCPP_NEED_WLIBIO_TRUE@@GLIBCPP_NEED_XTRA_LIBIO_FALSE@@GLIBCPP_NEED_LIBIO_TRUE@stdfiles.lo \
-@GLIBCPP_NEED_WLIBIO_TRUE@@GLIBCPP_NEED_XTRA_LIBIO_FALSE@@GLIBCPP_NEED_LIBIO_TRUE@c_codecvt.lo \
-@GLIBCPP_NEED_WLIBIO_TRUE@@GLIBCPP_NEED_XTRA_LIBIO_FALSE@@GLIBCPP_NEED_LIBIO_TRUE@wfiledoalloc.lo \
-@GLIBCPP_NEED_WLIBIO_TRUE@@GLIBCPP_NEED_XTRA_LIBIO_FALSE@@GLIBCPP_NEED_LIBIO_TRUE@wfileops.lo \
-@GLIBCPP_NEED_WLIBIO_TRUE@@GLIBCPP_NEED_XTRA_LIBIO_FALSE@@GLIBCPP_NEED_LIBIO_TRUE@wgenops.lo
-@GLIBCPP_NEED_WLIBIO_FALSE@@GLIBCPP_NEED_XTRA_LIBIO_FALSE@@GLIBCPP_NEED_LIBIO_TRUE@libio_la_OBJECTS = \
-@GLIBCPP_NEED_WLIBIO_FALSE@@GLIBCPP_NEED_XTRA_LIBIO_FALSE@@GLIBCPP_NEED_LIBIO_TRUE@filedoalloc.lo \
-@GLIBCPP_NEED_WLIBIO_FALSE@@GLIBCPP_NEED_XTRA_LIBIO_FALSE@@GLIBCPP_NEED_LIBIO_TRUE@genops.lo \
-@GLIBCPP_NEED_WLIBIO_FALSE@@GLIBCPP_NEED_XTRA_LIBIO_FALSE@@GLIBCPP_NEED_LIBIO_TRUE@fileops.lo \
-@GLIBCPP_NEED_WLIBIO_FALSE@@GLIBCPP_NEED_XTRA_LIBIO_FALSE@@GLIBCPP_NEED_LIBIO_TRUE@stdfiles.lo \
-@GLIBCPP_NEED_WLIBIO_FALSE@@GLIBCPP_NEED_XTRA_LIBIO_FALSE@@GLIBCPP_NEED_LIBIO_TRUE@c_codecvt.lo
-@GLIBCPP_NEED_WLIBIO_FALSE@@GLIBCPP_NEED_XTRA_LIBIO_TRUE@@GLIBCPP_NEED_LIBIO_TRUE@libio_la_OBJECTS = \
-@GLIBCPP_NEED_WLIBIO_FALSE@@GLIBCPP_NEED_XTRA_LIBIO_TRUE@@GLIBCPP_NEED_LIBIO_TRUE@filedoalloc.lo \
-@GLIBCPP_NEED_WLIBIO_FALSE@@GLIBCPP_NEED_XTRA_LIBIO_TRUE@@GLIBCPP_NEED_LIBIO_TRUE@genops.lo \
-@GLIBCPP_NEED_WLIBIO_FALSE@@GLIBCPP_NEED_XTRA_LIBIO_TRUE@@GLIBCPP_NEED_LIBIO_TRUE@fileops.lo \
-@GLIBCPP_NEED_WLIBIO_FALSE@@GLIBCPP_NEED_XTRA_LIBIO_TRUE@@GLIBCPP_NEED_LIBIO_TRUE@stdfiles.lo \
-@GLIBCPP_NEED_WLIBIO_FALSE@@GLIBCPP_NEED_XTRA_LIBIO_TRUE@@GLIBCPP_NEED_LIBIO_TRUE@c_codecvt.lo \
-@GLIBCPP_NEED_WLIBIO_FALSE@@GLIBCPP_NEED_XTRA_LIBIO_TRUE@@GLIBCPP_NEED_LIBIO_TRUE@iofwide.lo \
-@GLIBCPP_NEED_WLIBIO_FALSE@@GLIBCPP_NEED_XTRA_LIBIO_TRUE@@GLIBCPP_NEED_LIBIO_TRUE@iofclose.lo \
-@GLIBCPP_NEED_WLIBIO_FALSE@@GLIBCPP_NEED_XTRA_LIBIO_TRUE@@GLIBCPP_NEED_LIBIO_TRUE@iofopen.lo \
-@GLIBCPP_NEED_WLIBIO_FALSE@@GLIBCPP_NEED_XTRA_LIBIO_TRUE@@GLIBCPP_NEED_LIBIO_TRUE@stdio.lo
-@GLIBCPP_NEED_WLIBIO_TRUE@@GLIBCPP_NEED_XTRA_LIBIO_FALSE@@GLIBCPP_NEED_LIBIO_FALSE@libio_la_OBJECTS = \
-@GLIBCPP_NEED_WLIBIO_TRUE@@GLIBCPP_NEED_XTRA_LIBIO_FALSE@@GLIBCPP_NEED_LIBIO_FALSE@wfiledoalloc.lo \
-@GLIBCPP_NEED_WLIBIO_TRUE@@GLIBCPP_NEED_XTRA_LIBIO_FALSE@@GLIBCPP_NEED_LIBIO_FALSE@wfileops.lo \
-@GLIBCPP_NEED_WLIBIO_TRUE@@GLIBCPP_NEED_XTRA_LIBIO_FALSE@@GLIBCPP_NEED_LIBIO_FALSE@wgenops.lo
-@GLIBCPP_NEED_WLIBIO_TRUE@@GLIBCPP_NEED_XTRA_LIBIO_TRUE@@GLIBCPP_NEED_LIBIO_FALSE@libio_la_OBJECTS = \
-@GLIBCPP_NEED_WLIBIO_TRUE@@GLIBCPP_NEED_XTRA_LIBIO_TRUE@@GLIBCPP_NEED_LIBIO_FALSE@wfiledoalloc.lo \
-@GLIBCPP_NEED_WLIBIO_TRUE@@GLIBCPP_NEED_XTRA_LIBIO_TRUE@@GLIBCPP_NEED_LIBIO_FALSE@wfileops.lo \
-@GLIBCPP_NEED_WLIBIO_TRUE@@GLIBCPP_NEED_XTRA_LIBIO_TRUE@@GLIBCPP_NEED_LIBIO_FALSE@wgenops.lo \
-@GLIBCPP_NEED_WLIBIO_TRUE@@GLIBCPP_NEED_XTRA_LIBIO_TRUE@@GLIBCPP_NEED_LIBIO_FALSE@iofwide.lo \
-@GLIBCPP_NEED_WLIBIO_TRUE@@GLIBCPP_NEED_XTRA_LIBIO_TRUE@@GLIBCPP_NEED_LIBIO_FALSE@iofclose.lo \
-@GLIBCPP_NEED_WLIBIO_TRUE@@GLIBCPP_NEED_XTRA_LIBIO_TRUE@@GLIBCPP_NEED_LIBIO_FALSE@iofopen.lo \
-@GLIBCPP_NEED_WLIBIO_TRUE@@GLIBCPP_NEED_XTRA_LIBIO_TRUE@@GLIBCPP_NEED_LIBIO_FALSE@stdio.lo
-@GLIBCPP_NEED_WLIBIO_TRUE@@GLIBCPP_NEED_XTRA_LIBIO_TRUE@@GLIBCPP_NEED_LIBIO_TRUE@libio_la_OBJECTS = \
-@GLIBCPP_NEED_WLIBIO_TRUE@@GLIBCPP_NEED_XTRA_LIBIO_TRUE@@GLIBCPP_NEED_LIBIO_TRUE@filedoalloc.lo \
-@GLIBCPP_NEED_WLIBIO_TRUE@@GLIBCPP_NEED_XTRA_LIBIO_TRUE@@GLIBCPP_NEED_LIBIO_TRUE@genops.lo \
-@GLIBCPP_NEED_WLIBIO_TRUE@@GLIBCPP_NEED_XTRA_LIBIO_TRUE@@GLIBCPP_NEED_LIBIO_TRUE@fileops.lo \
-@GLIBCPP_NEED_WLIBIO_TRUE@@GLIBCPP_NEED_XTRA_LIBIO_TRUE@@GLIBCPP_NEED_LIBIO_TRUE@stdfiles.lo \
-@GLIBCPP_NEED_WLIBIO_TRUE@@GLIBCPP_NEED_XTRA_LIBIO_TRUE@@GLIBCPP_NEED_LIBIO_TRUE@c_codecvt.lo \
-@GLIBCPP_NEED_WLIBIO_TRUE@@GLIBCPP_NEED_XTRA_LIBIO_TRUE@@GLIBCPP_NEED_LIBIO_TRUE@wfiledoalloc.lo \
-@GLIBCPP_NEED_WLIBIO_TRUE@@GLIBCPP_NEED_XTRA_LIBIO_TRUE@@GLIBCPP_NEED_LIBIO_TRUE@wfileops.lo \
-@GLIBCPP_NEED_WLIBIO_TRUE@@GLIBCPP_NEED_XTRA_LIBIO_TRUE@@GLIBCPP_NEED_LIBIO_TRUE@wgenops.lo \
-@GLIBCPP_NEED_WLIBIO_TRUE@@GLIBCPP_NEED_XTRA_LIBIO_TRUE@@GLIBCPP_NEED_LIBIO_TRUE@iofwide.lo \
-@GLIBCPP_NEED_WLIBIO_TRUE@@GLIBCPP_NEED_XTRA_LIBIO_TRUE@@GLIBCPP_NEED_LIBIO_TRUE@iofclose.lo \
-@GLIBCPP_NEED_WLIBIO_TRUE@@GLIBCPP_NEED_XTRA_LIBIO_TRUE@@GLIBCPP_NEED_LIBIO_TRUE@iofopen.lo \
-@GLIBCPP_NEED_WLIBIO_TRUE@@GLIBCPP_NEED_XTRA_LIBIO_TRUE@@GLIBCPP_NEED_LIBIO_TRUE@stdio.lo
+@GLIBCPP_NEED_WLIBIO_TRUE@@GLIBCPP_NEED_LIBIO_TRUE@libio_la_OBJECTS = \
+@GLIBCPP_NEED_WLIBIO_TRUE@@GLIBCPP_NEED_LIBIO_TRUE@filedoalloc.lo \
+@GLIBCPP_NEED_WLIBIO_TRUE@@GLIBCPP_NEED_LIBIO_TRUE@genops.lo fileops.lo \
+@GLIBCPP_NEED_WLIBIO_TRUE@@GLIBCPP_NEED_LIBIO_TRUE@stdfiles.lo \
+@GLIBCPP_NEED_WLIBIO_TRUE@@GLIBCPP_NEED_LIBIO_TRUE@c_codecvt.lo \
+@GLIBCPP_NEED_WLIBIO_TRUE@@GLIBCPP_NEED_LIBIO_TRUE@iofclose.lo \
+@GLIBCPP_NEED_WLIBIO_TRUE@@GLIBCPP_NEED_LIBIO_TRUE@iofopen.lo stdio.lo \
+@GLIBCPP_NEED_WLIBIO_TRUE@@GLIBCPP_NEED_LIBIO_TRUE@wfiledoalloc.lo \
+@GLIBCPP_NEED_WLIBIO_TRUE@@GLIBCPP_NEED_LIBIO_TRUE@wfileops.lo \
+@GLIBCPP_NEED_WLIBIO_TRUE@@GLIBCPP_NEED_LIBIO_TRUE@wgenops.lo \
+@GLIBCPP_NEED_WLIBIO_TRUE@@GLIBCPP_NEED_LIBIO_TRUE@iofwide.lo
+@GLIBCPP_NEED_WLIBIO_TRUE@@GLIBCPP_NEED_LIBIO_FALSE@libio_la_OBJECTS = \
+@GLIBCPP_NEED_WLIBIO_TRUE@@GLIBCPP_NEED_LIBIO_FALSE@wfiledoalloc.lo \
+@GLIBCPP_NEED_WLIBIO_TRUE@@GLIBCPP_NEED_LIBIO_FALSE@wfileops.lo \
+@GLIBCPP_NEED_WLIBIO_TRUE@@GLIBCPP_NEED_LIBIO_FALSE@wgenops.lo \
+@GLIBCPP_NEED_WLIBIO_TRUE@@GLIBCPP_NEED_LIBIO_FALSE@iofwide.lo
+@GLIBCPP_NEED_WLIBIO_FALSE@@GLIBCPP_NEED_LIBIO_TRUE@libio_la_OBJECTS = \
+@GLIBCPP_NEED_WLIBIO_FALSE@@GLIBCPP_NEED_LIBIO_TRUE@filedoalloc.lo \
+@GLIBCPP_NEED_WLIBIO_FALSE@@GLIBCPP_NEED_LIBIO_TRUE@genops.lo \
+@GLIBCPP_NEED_WLIBIO_FALSE@@GLIBCPP_NEED_LIBIO_TRUE@fileops.lo \
+@GLIBCPP_NEED_WLIBIO_FALSE@@GLIBCPP_NEED_LIBIO_TRUE@stdfiles.lo \
+@GLIBCPP_NEED_WLIBIO_FALSE@@GLIBCPP_NEED_LIBIO_TRUE@c_codecvt.lo \
+@GLIBCPP_NEED_WLIBIO_FALSE@@GLIBCPP_NEED_LIBIO_TRUE@iofclose.lo \
+@GLIBCPP_NEED_WLIBIO_FALSE@@GLIBCPP_NEED_LIBIO_TRUE@iofopen.lo stdio.lo
+@GLIBCPP_NEED_WLIBIO_FALSE@@GLIBCPP_NEED_LIBIO_FALSE@libio_la_OBJECTS =
CFLAGS = @CFLAGS@
COMPILE = $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
LTCOMPILE = $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
diff --git a/libstdc++-v3/libio/libio.h b/libstdc++-v3/libio/libio.h
index 6fd503e..fb404b6 100644
--- a/libstdc++-v3/libio/libio.h
+++ b/libstdc++-v3/libio/libio.h
@@ -56,17 +56,13 @@
#endif
#ifndef __P
-# if _G_HAVE_SYS_CDEFS
-# include <sys/cdefs.h>
+# ifdef __cplusplus
+# define __THROW throw ()
# else
-# ifdef __STDC__
-# define __P(p) p
-# define __PMT(p) p
-# else
-# define __P(p) ()
-# define __PMT(p) ()
-# endif
+# define __THROW
# endif
+# define __P(p) p __THROW
+# define __PMT(p) p
#endif /*!__P*/
/* For backward compatibility */