acinclude.m4: Tweaks.

2000-07-18  Benjamin Kosnik  <bkoz@soma.redhat.com>

	* acinclude.m4: Tweaks.
	* config/c_io_libio.cc: Tweaks.
	* bits/sstream.tcc (stringbuf::pbackfail): Simplify.
	* libio/_G_config.h: Don't define _G_HAVE_ST_BLKSIZE.
	* libio/[iofwide.c, wfiledoalloc.c, wfiteopos.c, wgenops.c]: New files.
	* libio/iofclose.c iofopen.c, stdio.c: New files.
	* libio/Makefile.am: Add files, add flags, etc.
	* src/Makefile.am (sources): Add filebuf.cc.
	* acinclude.m4 (GLIBCPP_CHECK_WCHAR_T_SUPPORT):
	(GLIBCPP_ENABLE_CSTDIO): Versioning testing, etc etc.

From-SVN: r35127
This commit is contained in:
Benjamin Kosnik 2000-07-19 00:57:38 +00:00
parent a0add19302
commit dd75251ff0
22 changed files with 670 additions and 303 deletions

View File

@ -1,3 +1,16 @@
2000-07-18 Benjamin Kosnik <bkoz@soma.redhat.com>
* acinclude.m4: Tweaks.
* config/c_io_libio.cc: Tweaks.
* bits/sstream.tcc (stringbuf::pbackfail): Simplify.
* libio/_G_config.h: Don't define _G_HAVE_ST_BLKSIZE.
* libio/[iofwide.c, wfiledoalloc.c, wfiteopos.c, wgenops.c]: New files.
* libio/iofclose.c iofopen.c, stdio.c: New files.
* libio/Makefile.am: Add files, add flags, etc.
* src/Makefile.am (sources): Add filebuf.cc.
* acinclude.m4 (GLIBCPP_CHECK_WCHAR_T_SUPPORT):
(GLIBCPP_ENABLE_CSTDIO): Versioning testing, etc etc.
2000-07-17 Phil Edwards <pme@sourceware.cygnus.com>
* acinclude.m4: Import CHECK_GNU_MAKE from autoconf macro archive.

View File

@ -103,6 +103,7 @@ WFMT_FLAGS = @WFMT_FLAGS@
cpu_include_dir = @cpu_include_dir@
ctype_include_dir = @ctype_include_dir@
glibcpp_basedir = @glibcpp_basedir@
ifGNUmake = @ifGNUmake@
libinst_wstring_la = @libinst_wstring_la@
AUTOMAKE_OPTIONS = 1.3 cygnus

View File

@ -930,6 +930,10 @@ AC_DEFUN(GLIBCPP_CHECK_WCHAR_T_SUPPORT, [
dnl At the moment, only enable wchar_t specializations if all the
dnl above support is present.
dnl 2000-07-07-bkoz-hack-xxx
# ac_isoC9X_wchar_t=no
dnl 2000-07-07-bkoz-hack-xxx
AC_MSG_CHECKING([for enabled wchar_t specializations])
if test x"$ac_isoC9X_wchar_t" = xyes && test x"$ac_XPG2_wchar_t" = xyes; then
libinst_wstring_la="libinst-wstring.la"
@ -1165,54 +1169,72 @@ AC_DEFUN(GLIBCPP_ENABLE_CSTDIO, [
dnl Check if a valid thread package
case x${enable_cstdio_flag} in
xlibio | x | xno | xnone | xyes)
# default
CSTDIO_H=config/c_io_libio.h
CSTDIO_CC=config/c_io_libio.cc
AC_MSG_RESULT(libio)
xlibio | x | xno | xnone | xyes)
# default
CSTDIO_H=config/c_io_libio.h
CSTDIO_CC=config/c_io_libio.cc
AC_MSG_RESULT(libio)
# see if we are on a system with libio native (ie, linux)
AC_CHECK_HEADER(libio.h, has_libio=yes, has_libio=no)
# see if we are on a system with libio native (ie, linux)
AC_CHECK_HEADER(libio.h, has_libio=yes, has_libio=no)
# bkoz XXX hack hack need version checks, this is temporary
has_libio=no
# Need to check and see what version of glibc is being used. If
# it's not glibc-2.2 or higher, then we'll need to go ahead and
# compile most of libio for linux systems.
if test x$has_libio = x"yes"; then
case "$target" in
*-*-linux*)
AC_MSG_CHECKING([for glibc version >= 2.2])
AC_EGREP_CPP([ok], [
#if __GLIBC__ > 2 || (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 2)
ok
#endif
], glibc_satisfactory=yes, glibc_satisfactory=no)
AC_MSG_RESULT($glibc_satisfactory)
;;
esac
if test $has_libio = "yes"; then
BUILD_LIBIO_INCLUDE=
need_libio=no
else
BUILD_LIBIO_INCLUDE='-I../libio'
need_libio=yes
fi
AC_SUBST(BUILD_LIBIO_INCLUDE)
if test x$glibc_satisfactory = x"yes"; then
BUILD_LIBIO_INCLUDE=
need_libio=no
need_xtra_libio=no
need_wlibio=no
else
BUILD_LIBIO_INCLUDE='-I../libio'
need_libio=yes
need_xtra_libio=yes
# bkoz XXX need to add checks to enable this
need_wlibio=yes
fi
# see if the _G_config.h header needs to be built.
# NB: This replaces the _G_CONFIG_H machinery in libio-v2
AC_CHECK_HEADER(_G_config.h, has_gconf_h=yes, has_gconf_h=no)
AM_CONDITIONAL(GLIBCPP_NEED_LIBIO_CONFIG_H, test "$has_gconf_h" = no)
# bkoz XXX hack need to add support for non-glibc systems here
has_gconf=no
# Using libio, but <libio.h> doesn't exist on the target system. . .
else
BUILD_LIBIO_INCLUDE='-I../libio'
need_libio=yes
need_xtra_libio=no
# bkoz XXX need to add checks to enable this
need_wlibio=no
fi
;;
# bkoz XXX need to add checks for this
need_wlibio=yes
;;
xwince)
CSTDIO_H=config/c_io_wince.h
CSTDIO_CC=config/c_io_wince.cc
AC_MSG_RESULT(wince)
xwince)
CSTDIO_H=config/c_io_wince.h
CSTDIO_CC=config/c_io_wince.cc
AC_MSG_RESULT(wince)
need_libio=no
BUILD_LIBIO_INCLUDE=
AC_SUBST(BUILD_LIBIO_INCLUDE)
;;
*)
echo "$enable_cstdio is an unknown io package" 1>&2
exit 1
;;
need_libio=no
BUILD_LIBIO_INCLUDE=
AC_SUBST(BUILD_LIBIO_INCLUDE)
;;
*)
echo "$enable_cstdio is an unknown io package" 1>&2
exit 1
;;
esac
AC_LINK_FILES($CSTDIO_H, bits/c++io.h)
AC_LINK_FILES($CSTDIO_CC, src/c++io.cc)
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)
])
@ -1492,7 +1514,7 @@ dnl Then, if any (well almost any) other make is called, and GNU make also
dnl exists, then the other make wraps the GNU make.
dnl
dnl @author John Darrington <j.darrington@elvis.murdoch.edu.au>
dnl @version $Id: check_gnu_make.m4,v 1.1 2000/06/15 10:49:36 simons Exp $
dnl @version $Id: acinclude.m4,v 1.42 2000/07/17 18:17:33 pme Exp $
dnl
dnl #### Changes for libstdc++-v3: reformatting and linewrapping; prepending
dnl #### GLIBCPP_ to the macro name; adding the :-make fallback in the

View File

@ -942,6 +942,10 @@ AC_DEFUN(GLIBCPP_CHECK_WCHAR_T_SUPPORT, [
dnl At the moment, only enable wchar_t specializations if all the
dnl above support is present.
dnl 2000-07-07-bkoz-hack-xxx
# ac_isoC9X_wchar_t=no
dnl 2000-07-07-bkoz-hack-xxx
AC_MSG_CHECKING([for enabled wchar_t specializations])
if test x"$ac_isoC9X_wchar_t" = xyes && test x"$ac_XPG2_wchar_t" = xyes; then
libinst_wstring_la="libinst-wstring.la"
@ -1177,54 +1181,72 @@ AC_DEFUN(GLIBCPP_ENABLE_CSTDIO, [
dnl Check if a valid thread package
case x${enable_cstdio_flag} in
xlibio | x | xno | xnone | xyes)
# default
CSTDIO_H=config/c_io_libio.h
CSTDIO_CC=config/c_io_libio.cc
AC_MSG_RESULT(libio)
xlibio | x | xno | xnone | xyes)
# default
CSTDIO_H=config/c_io_libio.h
CSTDIO_CC=config/c_io_libio.cc
AC_MSG_RESULT(libio)
# see if we are on a system with libio native (ie, linux)
AC_CHECK_HEADER(libio.h, has_libio=yes, has_libio=no)
# see if we are on a system with libio native (ie, linux)
AC_CHECK_HEADER(libio.h, has_libio=yes, has_libio=no)
# bkoz XXX hack hack need version checks, this is temporary
has_libio=no
# Need to check and see what version of glibc is being used. If
# it's not glibc-2.2 or higher, then we'll need to go ahead and
# compile most of libio for linux systems.
if test x$has_libio = x"yes"; then
case "$target" in
*-*-linux*)
AC_MSG_CHECKING([for glibc version >= 2.2])
AC_EGREP_CPP([ok], [
#if __GLIBC__ > 2 || (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 2)
ok
#endif
], glibc_satisfactory=yes, glibc_satisfactory=no)
AC_MSG_RESULT($glibc_satisfactory)
;;
esac
if test $has_libio = "yes"; then
BUILD_LIBIO_INCLUDE=
need_libio=no
else
BUILD_LIBIO_INCLUDE='-I../libio'
need_libio=yes
fi
AC_SUBST(BUILD_LIBIO_INCLUDE)
if test x$glibc_satisfactory = x"yes"; then
BUILD_LIBIO_INCLUDE=
need_libio=no
need_xtra_libio=no
need_wlibio=no
else
BUILD_LIBIO_INCLUDE='-I../libio'
need_libio=yes
need_xtra_libio=yes
# bkoz XXX need to add checks to enable this
need_wlibio=yes
fi
# see if the _G_config.h header needs to be built.
# NB: This replaces the _G_CONFIG_H machinery in libio-v2
AC_CHECK_HEADER(_G_config.h, has_gconf_h=yes, has_gconf_h=no)
AM_CONDITIONAL(GLIBCPP_NEED_LIBIO_CONFIG_H, test "$has_gconf_h" = no)
# bkoz XXX hack need to add support for non-glibc systems here
has_gconf=no
# Using libio, but <libio.h> doesn't exist on the target system. . .
else
BUILD_LIBIO_INCLUDE='-I../libio'
need_libio=yes
need_xtra_libio=no
# bkoz XXX need to add checks to enable this
need_wlibio=no
fi
;;
# bkoz XXX need to add checks for this
need_wlibio=yes
;;
xwince)
CSTDIO_H=config/c_io_wince.h
CSTDIO_CC=config/c_io_wince.cc
AC_MSG_RESULT(wince)
xwince)
CSTDIO_H=config/c_io_wince.h
CSTDIO_CC=config/c_io_wince.cc
AC_MSG_RESULT(wince)
need_libio=no
BUILD_LIBIO_INCLUDE=
AC_SUBST(BUILD_LIBIO_INCLUDE)
;;
*)
echo "$enable_cstdio is an unknown io package" 1>&2
exit 1
;;
need_libio=no
BUILD_LIBIO_INCLUDE=
AC_SUBST(BUILD_LIBIO_INCLUDE)
;;
*)
echo "$enable_cstdio is an unknown io package" 1>&2
exit 1
;;
esac
AC_LINK_FILES($CSTDIO_H, bits/c++io.h)
AC_LINK_FILES($CSTDIO_CC, src/c++io.cc)
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)
])
@ -1504,7 +1526,7 @@ dnl Then, if any (well almost any) other make is called, and GNU make also
dnl exists, then the other make wraps the GNU make.
dnl
dnl @author John Darrington <j.darrington@elvis.murdoch.edu.au>
dnl @version $Id: check_gnu_make.m4,v 1.1 2000/06/15 10:49:36 simons Exp $
dnl @version $Id: acinclude.m4,v 1.42 2000/07/17 18:17:33 pme Exp $
dnl
dnl #### Changes for libstdc++-v3: reformatting and linewrapping; prepending
dnl #### GLIBCPP_ to the macro name; adding the :-make fallback in the

View File

@ -49,22 +49,25 @@ namespace std {
// Try to put back __c into input sequence in one of three ways.
// Order these tests done in is unspecified by the standard.
if (!__testeof && __testpos
&& traits_type::eq(traits_type::to_char_type(__c), this->gptr()[-1]))
if (__testpos)
{
--_M_in_cur;
__retval = __c;
}
else if (!__testeof && __testpos)
{
--_M_in_cur;
*_M_in_cur = traits_type::to_char_type(__c);
__retval = __c;
}
else if (__testeof && __testpos)
{
--_M_in_cur;
__retval = traits_type::not_eof(__c);
if (traits_type::eq(traits_type::to_char_type(__c), this->gptr()[-1])
&& !__testeof)
{
--_M_in_cur;
__retval = __c;
}
else if (!__testeof)
{
--_M_in_cur;
*_M_in_cur = traits_type::to_char_type(__c);
__retval = __c;
}
else if (__testeof)
{
--_M_in_cur;
__retval = traits_type::not_eof(__c);
}
}
return __retval;
}

View File

@ -48,10 +48,11 @@ namespace std {
public:
// Types:
typedef _CharT char_type;
typedef _Traits traits_type;
typedef typename _Traits::int_type int_type;
typedef typename _Traits::pos_type pos_type;
typedef typename _Traits::off_type off_type;
typedef _Traits traits_type;
// Non-standard Types:
typedef basic_streambuf<_CharT, _Traits> __streambuf_type;
@ -69,7 +70,7 @@ namespace std {
__state_type _M_state_cur;// Current state type for codecvt.
__state_type _M_state_beg;
const __codecvt_type* _M_fcvt; // Cached value from use_facet.
__mutext_type _M_lock;
__c_lock _M_lock;
bool _M_last_overflowed; // XXX Needed?
public:

View File

@ -39,10 +39,12 @@ namespace std {
__basic_file::__basic_file(__c_lock* __lock)
{
#ifdef _IO_MTSAFE_IO
_lock = __lock;
_IO_init(this, 0);
_IO_file_init((_IO_FILE_plus*) this);
_IO_file_attach(this, -1);
#endif
_IO_no_init(this, 0 /* ??? */, -1, 0, 0);
_IO_JUMPS(this) = &_IO_file_jumps;
_IO_file_init((_IO_FILE_plus*)this);
}
int
@ -50,15 +52,7 @@ namespace std {
{ return _fileno; }
__basic_file::~__basic_file()
{
if (this->is_open())
{
_IO_do_flush(this);
if (!(_flags & _IO_DELETE_DONT_CLOSE))
_IO_SYSCLOSE((_IO_FILE*)this);
}
_IO_default_finish(this, 0);
}
{ _IO_file_finish(this, 0); }
void
__basic_file::_M_open_mode(ios_base::openmode __mode, int& __p_mode,
@ -116,13 +110,19 @@ namespace std {
int __rw_mode = _IO_NO_READS + _IO_NO_WRITES;
_M_open_mode(__mode, __p_mode, __rw_mode);
if (__fd >= 0)
// _IO_file_attach
// sets _IO_DELETE_DONT_CLOSE
// clears _IO_NO_READS + _IO_NO_WRITES
if (_IO_file_attach(this, __fd) != NULL)
{
_fileno = __fd;
// Set flags appropriately for openmode...
int __mask = _IO_NO_READS + _IO_NO_WRITES + _IO_IS_APPENDING;
_flags = (_flags & ~__mask) | (__rw_mode & __mask);
_IO_link_in((_IO_FILE_plus*) this);
__retval = this;
_IO_mask_flags(this, __rw_mode, __mask);
}
else
{
_IO_un_link((_IO_FILE_plus*) this);
// XXX Extended error checking?? Note that v2 does not even have this.
}
return __retval;
}
@ -138,22 +138,11 @@ namespace std {
_M_open_mode(__mode, __p_mode, __rw_mode);
if (!_IO_file_is_open(this))
{
#if _G_HAVE_IO_FILE_OPEN
//#if _G_HAVE_IO_FILE_OPEN
__c_file_type* __f;
__f = _IO_file_open(this, __name, __p_mode, __prot, __rw_mode, 0);
_flags &= ~_IO_DELETE_DONT_CLOSE;
// _flags &= ~_IO_DELETE_DONT_CLOSE;
__retval = __f ? this: NULL;
#else
int __fd = ::open(__name, __p_mode, __prot);
if (__fd >= 0)
{
_fileno = __fd;
int __mask = _IO_NO_READS + _IO_NO_WRITES + _IO_IS_APPENDING;
_flags = (_flags & ~__mask) | (__rw_mode & __mask);
_IO_link_in(this);
__retval = this;
}
#endif
}
return __retval;
}
@ -167,15 +156,18 @@ namespace std {
// NB: Unused.
int
__basic_file::overflow(int __c) { return _IO_file_overflow(this, __c); }
__basic_file::overflow(int __c)
{ return _IO_file_overflow(this, __c); }
// NB: Unused.
int
__basic_file::underflow() { return _IO_file_underflow(this); }
__basic_file::underflow()
{ return _IO_file_underflow(this); }
// NB: Unused.
int
__basic_file::uflow() { return _IO_default_uflow(this); }
__basic_file::uflow()
{ return _IO_default_uflow(this); }
// NB: Unused.
int
@ -188,7 +180,7 @@ namespace std {
streamsize
__basic_file::xsgetn(char* __s, streamsize __n)
{ return _IO_default_xsgetn(this, __s, __n); }
{ return _IO_file_xsgetn(this, __s, __n); }
streamoff
__basic_file::seekoff(streamoff __off, ios_base::seekdir __way,
@ -230,11 +222,13 @@ namespace std {
// NB: Unused.
int
__basic_file::sys_close() { return _IO_file_close(this); }
__basic_file::sys_close()
{ return _IO_file_close(this); }
// NB: Unused.
int
__basic_file::sys_stat(void* __v) { return _IO_file_stat(this, __v); }
__basic_file::sys_stat(void* __v)
{ return _IO_file_stat(this, __v); }
// NB: Unused.
int

232
libstdc++-v3/configure vendored
View File

@ -2206,14 +2206,14 @@ fi
enable_cstdio_flag=$enable_cstdio
case x${enable_cstdio_flag} in
xlibio | x | xno | xnone | xyes)
# default
CSTDIO_H=config/c_io_libio.h
CSTDIO_CC=config/c_io_libio.cc
echo "$ac_t""libio" 1>&6
xlibio | x | xno | xnone | xyes)
# default
CSTDIO_H=config/c_io_libio.h
CSTDIO_CC=config/c_io_libio.cc
echo "$ac_t""libio" 1>&6
# see if we are on a system with libio native (ie, linux)
ac_safe=`echo "libio.h" | sed 'y%./+-%__p_%'`
# see if we are on a system with libio native (ie, linux)
ac_safe=`echo "libio.h" | sed 'y%./+-%__p_%'`
echo $ac_n "checking for libio.h""... $ac_c" 1>&6
echo "configure:2219: checking for libio.h" >&5
if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
@ -2248,82 +2248,73 @@ has_libio=no
fi
# bkoz XXX hack hack need version checks, this is temporary
has_libio=no
if test $has_libio = "yes"; then
BUILD_LIBIO_INCLUDE=
need_libio=no
else
BUILD_LIBIO_INCLUDE='-I../libio'
need_libio=yes
fi
# see if the _G_config.h header needs to be built.
# NB: This replaces the _G_CONFIG_H machinery in libio-v2
ac_safe=`echo "_G_config.h" | sed 'y%./+-%__p_%'`
echo $ac_n "checking for _G_config.h""... $ac_c" 1>&6
echo "configure:2268: checking for _G_config.h" >&5
if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <<EOF
#line 2273 "configure"
# Need to check and see what version of glibc is being used. If
# it's not glibc-2.2 or higher, then we'll need to go ahead and
# compile most of libio for linux systems.
if test x$has_libio = x"yes"; then
case "$target" in
*-*-linux*)
echo $ac_n "checking for glibc version >= 2.2""... $ac_c" 1>&6
echo "configure:2259: checking for glibc version >= 2.2" >&5
cat > conftest.$ac_ext <<EOF
#line 2261 "configure"
#include "confdefs.h"
#include <_G_config.h>
#if __GLIBC__ > 2 || (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 2)
ok
#endif
EOF
ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
{ (eval echo configure:2278: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
if test -z "$ac_err"; then
if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
egrep "ok" >/dev/null 2>&1; then
rm -rf conftest*
eval "ac_cv_header_$ac_safe=yes"
glibc_satisfactory=yes
else
echo "$ac_err" >&5
echo "configure: failed program was:" >&5
cat conftest.$ac_ext >&5
rm -rf conftest*
eval "ac_cv_header_$ac_safe=no"
glibc_satisfactory=no
fi
rm -f conftest*
fi
if eval "test \"`echo '$ac_cv_header_'$ac_safe`\" = yes"; then
echo "$ac_t""yes" 1>&6
has_gconf_h=yes
else
echo "$ac_t""no" 1>&6
has_gconf_h=no
fi
echo "$ac_t""$glibc_satisfactory" 1>&6
;;
esac
if test "$has_gconf_h" = no; then
GLIBCPP_NEED_LIBIO_CONFIG_H_TRUE=
GLIBCPP_NEED_LIBIO_CONFIG_H_FALSE='#'
else
GLIBCPP_NEED_LIBIO_CONFIG_H_TRUE='#'
GLIBCPP_NEED_LIBIO_CONFIG_H_FALSE=
fi
# bkoz XXX hack need to add support for non-glibc systems here
has_gconf=no
if test x$glibc_satisfactory = x"yes"; then
BUILD_LIBIO_INCLUDE=
need_libio=no
need_xtra_libio=no
need_wlibio=no
else
BUILD_LIBIO_INCLUDE='-I../libio'
need_libio=yes
need_xtra_libio=yes
# bkoz XXX need to add checks to enable this
need_wlibio=yes
fi
# bkoz XXX need to add checks for this
need_wlibio=yes
;;
xwince)
CSTDIO_H=config/c_io_wince.h
CSTDIO_CC=config/c_io_wince.cc
echo "$ac_t""wince" 1>&6
# Using libio, but <libio.h> doesn't exist on the target system. . .
else
BUILD_LIBIO_INCLUDE='-I../libio'
need_libio=yes
need_xtra_libio=no
# bkoz XXX need to add checks to enable this
need_wlibio=no
fi
;;
need_libio=no
BUILD_LIBIO_INCLUDE=
;;
*)
echo "$enable_cstdio is an unknown io package" 1>&2
exit 1
;;
xwince)
CSTDIO_H=config/c_io_wince.h
CSTDIO_CC=config/c_io_wince.cc
echo "$ac_t""wince" 1>&6
need_libio=no
BUILD_LIBIO_INCLUDE=
;;
*)
echo "$enable_cstdio is an unknown io package" 1>&2
exit 1
;;
esac
@ -2338,6 +2329,15 @@ else
fi
if test "$need_xtra_libio" = yes; then
GLIBCPP_NEED_XTRA_LIBIO_TRUE=
GLIBCPP_NEED_XTRA_LIBIO_FALSE='#'
else
GLIBCPP_NEED_XTRA_LIBIO_TRUE='#'
GLIBCPP_NEED_XTRA_LIBIO_FALSE=
fi
if test "$need_wlibio" = yes; then
GLIBCPP_NEED_WLIBIO_TRUE=
GLIBCPP_NEED_WLIBIO_FALSE='#'
@ -16131,8 +16131,10 @@ echo "configure:16127: checking for XPG2 wchar_t support" >&5
fi
echo "$ac_t""$ac_XPG2_wchar_t" 1>&6
echo $ac_n "checking for enabled wchar_t specializations""... $ac_c" 1>&6
echo "configure:16136: checking for enabled wchar_t specializations" >&5
# ac_isoC9X_wchar_t=no
echo $ac_n "checking for enabled wchar_t specializations""... $ac_c" 1>&6
echo "configure:16138: checking for enabled wchar_t specializations" >&5
if test x"$ac_isoC9X_wchar_t" = xyes && test x"$ac_XPG2_wchar_t" = xyes; then
libinst_wstring_la="libinst-wstring.la"
cat >> confdefs.h <<\EOF
@ -16157,17 +16159,17 @@ EOF
ac_safe=`echo "ctype.h" | sed 'y%./+-%__p_%'`
echo $ac_n "checking for ctype.h""... $ac_c" 1>&6
echo "configure:16161: checking for ctype.h" >&5
echo "configure:16163: checking for ctype.h" >&5
if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <<EOF
#line 16166 "configure"
#line 16168 "configure"
#include "confdefs.h"
#include <ctype.h>
EOF
ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
{ (eval echo configure:16171: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
{ (eval echo configure:16173: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
if test -z "$ac_err"; then
rm -rf conftest*
@ -16188,9 +16190,9 @@ if eval "test \"`echo '$ac_cv_header_'$ac_safe`\" = yes"; then
ctype_default=yes
echo $ac_n "checking <ctype> for gnu-linux ""... $ac_c" 1>&6
echo "configure:16192: checking <ctype> for gnu-linux " >&5
echo "configure:16194: checking <ctype> for gnu-linux " >&5
cat > conftest.$ac_ext <<EOF
#line 16194 "configure"
#line 16196 "configure"
#include "confdefs.h"
#include <ctype.h>
int main() {
@ -16201,7 +16203,7 @@ int
+ __ctype_tolower[a] + __ctype_toupper[a] + __ctype_b[a];}
; return 0; }
EOF
if { (eval echo configure:16205: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
if { (eval echo configure:16207: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
rm -rf conftest*
\
ctype_linux=yes
@ -16220,9 +16222,9 @@ rm -f conftest*
if test $ctype_default = "yes"; then
echo $ac_n "checking <ctype> for freebsd 4.0 ""... $ac_c" 1>&6
echo "configure:16224: checking <ctype> for freebsd 4.0 " >&5
echo "configure:16226: checking <ctype> for freebsd 4.0 " >&5
cat > conftest.$ac_ext <<EOF
#line 16226 "configure"
#line 16228 "configure"
#include "confdefs.h"
#include <ctype.h>
int main() {
@ -16232,7 +16234,7 @@ int
+ _CTYPE_D + _CTYPE_P + _CTYPE_X + _CTYPE_G ;}
; return 0; }
EOF
if { (eval echo configure:16236: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
if { (eval echo configure:16238: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
rm -rf conftest*
\
ctype_bsd=yes
@ -16252,9 +16254,9 @@ rm -f conftest*
if test $ctype_default = "yes"; then
echo $ac_n "checking <ctype> for freebsd 3.4 ""... $ac_c" 1>&6
echo "configure:16256: checking <ctype> for freebsd 3.4 " >&5
echo "configure:16258: checking <ctype> for freebsd 3.4 " >&5
cat > conftest.$ac_ext <<EOF
#line 16258 "configure"
#line 16260 "configure"
#include "confdefs.h"
#include <ctype.h>
int main() {
@ -16264,7 +16266,7 @@ int
+ _D + _P + _X + _G + __istype (a, 0);}
; return 0; }
EOF
if { (eval echo configure:16268: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
if { (eval echo configure:16270: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
rm -rf conftest*
\
ctype_freebsd34=yes
@ -16284,9 +16286,9 @@ rm -f conftest*
if test $ctype_default = "yes"; then
echo $ac_n "checking <ctype> for solaris 2.6,7,8 ""... $ac_c" 1>&6
echo "configure:16288: checking <ctype> for solaris 2.6,7,8 " >&5
echo "configure:16290: checking <ctype> for solaris 2.6,7,8 " >&5
cat > conftest.$ac_ext <<EOF
#line 16290 "configure"
#line 16292 "configure"
#include "confdefs.h"
#include <ctype.h>
int main() {
@ -16297,7 +16299,7 @@ int
+ __trans_lower[a] + __trans_upper[a] + __ctype_mask[a];}
; return 0; }
EOF
if { (eval echo configure:16301: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
if { (eval echo configure:16303: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
rm -rf conftest*
\
ctype_solaris=yes
@ -16312,7 +16314,7 @@ rm -f conftest*
if test $ctype_solaris = "yes"; then
echo $ac_n "checking for version""... $ac_c" 1>&6
echo "configure:16316: checking for version" >&5
echo "configure:16318: checking for version" >&5
ac_ext=C
# CXXFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options.
ac_cpp='$CXXCPP $CPPFLAGS'
@ -16321,14 +16323,14 @@ ac_link='${CXX-g++} -o conftest${ac_exeext} $CXXFLAGS $CPPFLAGS $LDFLAGS conftes
cross_compiling=$ac_cv_prog_cxx_cross
cat > conftest.$ac_ext <<EOF
#line 16325 "configure"
#line 16327 "configure"
#include "confdefs.h"
#include <ctype.h>
int main() {
typedef long* __to_type; __to_type const& _M_toupper = __trans_upper;
; return 0; }
EOF
if { (eval echo configure:16332: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
if { (eval echo configure:16334: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
rm -rf conftest*
\
ctype_solaris26=yes
@ -16360,9 +16362,9 @@ cross_compiling=$ac_cv_prog_cc_cross
if test $ctype_default = "yes"; then
echo $ac_n "checking <ctype> for solaris 2.5.1 ""... $ac_c" 1>&6
echo "configure:16364: checking <ctype> for solaris 2.5.1 " >&5
echo "configure:16366: checking <ctype> for solaris 2.5.1 " >&5
cat > conftest.$ac_ext <<EOF
#line 16366 "configure"
#line 16368 "configure"
#include "confdefs.h"
#include <ctype.h>
int main() {
@ -16372,7 +16374,7 @@ int
+ __ctype[a];}
; return 0; }
EOF
if { (eval echo configure:16376: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
if { (eval echo configure:16378: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
rm -rf conftest*
\
ctype_solaris25=yes
@ -16392,9 +16394,9 @@ rm -f conftest*
if test $ctype_default = "yes"; then
echo $ac_n "checking <ctype> for aix ""... $ac_c" 1>&6
echo "configure:16396: checking <ctype> for aix " >&5
echo "configure:16398: checking <ctype> for aix " >&5
cat > conftest.$ac_ext <<EOF
#line 16398 "configure"
#line 16400 "configure"
#include "confdefs.h"
#include <ctype.h>
int main() {
@ -16405,7 +16407,7 @@ int
+ _VALC('a') + _IS('c', 0);}
; return 0; }
EOF
if { (eval echo configure:16409: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
if { (eval echo configure:16411: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
rm -rf conftest*
\
ctype_aix=yes
@ -16425,9 +16427,9 @@ rm -f conftest*
if test $ctype_default = "yes"; then
echo $ac_n "checking <ctype> for newlib ""... $ac_c" 1>&6
echo "configure:16429: checking <ctype> for newlib " >&5
echo "configure:16431: checking <ctype> for newlib " >&5
cat > conftest.$ac_ext <<EOF
#line 16431 "configure"
#line 16433 "configure"
#include "confdefs.h"
#include <ctype.h>
int main() {
@ -16437,7 +16439,7 @@ int
+ _ctype_[a];}
; return 0; }
EOF
if { (eval echo configure:16441: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
if { (eval echo configure:16443: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
rm -rf conftest*
\
ctype_newlib=yes
@ -16471,17 +16473,17 @@ fi
do
ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
echo "configure:16475: checking for $ac_hdr" >&5
echo "configure:16477: checking for $ac_hdr" >&5
if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <<EOF
#line 16480 "configure"
#line 16482 "configure"
#include "confdefs.h"
#include <$ac_hdr>
EOF
ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
{ (eval echo configure:16485: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
{ (eval echo configure:16487: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
if test -z "$ac_err"; then
rm -rf conftest*
@ -16510,12 +16512,12 @@ done
for ac_func in getpagesize
do
echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
echo "configure:16514: checking for $ac_func" >&5
echo "configure:16516: checking for $ac_func" >&5
if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <<EOF
#line 16519 "configure"
#line 16521 "configure"
#include "confdefs.h"
/* System header to define __stub macros and hopefully few prototypes,
which can conflict with char $ac_func(); below. */
@ -16538,7 +16540,7 @@ $ac_func();
; return 0; }
EOF
if { (eval echo configure:16542: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
if { (eval echo configure:16544: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
rm -rf conftest*
eval "ac_cv_func_$ac_func=yes"
else
@ -16563,7 +16565,7 @@ fi
done
echo $ac_n "checking for working mmap""... $ac_c" 1>&6
echo "configure:16567: checking for working mmap" >&5
echo "configure:16569: checking for working mmap" >&5
if eval "test \"`echo '$''{'ac_cv_func_mmap_fixed_mapped'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
@ -16571,7 +16573,7 @@ else
ac_cv_func_mmap_fixed_mapped=no
else
cat > conftest.$ac_ext <<EOF
#line 16575 "configure"
#line 16577 "configure"
#include "confdefs.h"
/* Thanks to Mike Haertel and Jim Avera for this test.
@ -16711,7 +16713,7 @@ main()
}
EOF
if { (eval echo configure:16715: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
if { (eval echo configure:16717: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
then
ac_cv_func_mmap_fixed_mapped=yes
else
@ -16774,19 +16776,19 @@ fi
if test $ac_cv_header_locale_h = yes; then
echo $ac_n "checking for LC_MESSAGES""... $ac_c" 1>&6
echo "configure:16778: checking for LC_MESSAGES" >&5
echo "configure:16780: checking for LC_MESSAGES" >&5
if eval "test \"`echo '$''{'ac_cv_val_LC_MESSAGES'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6
else
cat > conftest.$ac_ext <<EOF
#line 16783 "configure"
#line 16785 "configure"
#include "confdefs.h"
#include <locale.h>
int main() {
return LC_MESSAGES
; return 0; }
EOF
if { (eval echo configure:16790: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
if { (eval echo configure:16792: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
rm -rf conftest*
ac_cv_val_LC_MESSAGES=yes
else
@ -17002,10 +17004,10 @@ s%@cpu_include_dir@%$cpu_include_dir%g
s%@CPU_FLAGS@%$CPU_FLAGS%g
s%@DEBUG_FLAGS@%$DEBUG_FLAGS%g
s%@BUILD_LIBIO_INCLUDE@%$BUILD_LIBIO_INCLUDE%g
s%@GLIBCPP_NEED_LIBIO_CONFIG_H_TRUE@%$GLIBCPP_NEED_LIBIO_CONFIG_H_TRUE%g
s%@GLIBCPP_NEED_LIBIO_CONFIG_H_FALSE@%$GLIBCPP_NEED_LIBIO_CONFIG_H_FALSE%g
s%@GLIBCPP_NEED_LIBIO_TRUE@%$GLIBCPP_NEED_LIBIO_TRUE%g
s%@GLIBCPP_NEED_LIBIO_FALSE@%$GLIBCPP_NEED_LIBIO_FALSE%g
s%@GLIBCPP_NEED_XTRA_LIBIO_TRUE@%$GLIBCPP_NEED_XTRA_LIBIO_TRUE%g
s%@GLIBCPP_NEED_XTRA_LIBIO_FALSE@%$GLIBCPP_NEED_XTRA_LIBIO_FALSE%g
s%@GLIBCPP_NEED_WLIBIO_TRUE@%$GLIBCPP_NEED_WLIBIO_TRUE%g
s%@GLIBCPP_NEED_WLIBIO_FALSE@%$GLIBCPP_NEED_WLIBIO_FALSE%g
s%@CSHADOWFLAGS@%$CSHADOWFLAGS%g

View File

@ -1,3 +1,7 @@
2000-07-12 benjamin kosnik <bkoz@haight.constant.com>
* _G_config.h: Smoke less crack, don't define _G_HAVE_ST_BLKSIZE.
2000-04-25 Benjamin Kosnik <bkoz@haight.constant.com>
* libio.h: Change decls for seekoff/seekpos.

View File

@ -35,13 +35,31 @@ CONFIG_INCLUDES = \
-I$(top_srcdir)/@ctype_include_dir@
INCLUDES = \
-D_GNU_SOURCE -nostdinc++ -I$(top_srcdir) \
-nostdinc++ -I$(top_srcdir) \
$(LIBIO_INCLUDES) $(CONFIG_INCLUDES) $(CSHADOW_INCLUDES) \
$(TOPLEVEL_INCLUDES)
noinst_LTLIBRARIES = libio.la
LINK = $(LIBTOOL) --mode=link "$(CCLD)" $(AM_CFLAGS) $(CFLAGS) $(LDFLAGS) -o $@
# These bits are all figured out from configure. Look in acinclude.m4
# or configure.in to see how they are set.
# NB: DEBUGFLAGS have to be at the end so that -O2 can be overridden.
AC_CFLAGS = \
$(WERROR) @CPU_FLAGS@ @DEBUG_FLAGS@
# Need to manually set this option because AC_CXXFLAGS has to be at
# the end of the compile line so that -O2 can be overridden as the
# occasion call for it. (ie, --enable-debug)
AM_CFLAGS = \
-D_GNU_SOURCE $(AC_CFLAGS)
COMPILE = $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(CFLAGS) \
$(AM_CFLAGS)
LTCOMPILE = $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(INCLUDES) \
$(AM_CPPFLAGS) \$(CPPFLAGS) $(CFLAGS) $(AM_CFLAGS)
LINK = $(LIBTOOL) --mode=link "$(CCLD)" $(CFLAGS) $(AM_CFLAGS) $(LDFLAGS) -o $@
#includes =
@ -62,10 +80,17 @@ else
LIBIO_WSRCS =
endif
if GLIBCPP_NEED_XTRA_LIBIO
LIBIO_XTRASRCS = \
iofclose.c iofopen.c stdio.c
else
LIBIO_XTRASRCS =
endif
EXTRA_DIST = iostreamP.h
libio_la_LIBADD = $(LIBIO_SRCS) $(LIBIO_WSRCS)
libio_la_LIBADD = $(LIBIO_SRCS) $(LIBIO_WSRCS) $(LIBIO_XTRASRCS)
libio_la_DEPENDENCIES = $(libio_la_LIBADD)
libio_la_SOURCES = $(LIBIO_SRCS) $(LIBIO_WSRCS)
libio_la_SOURCES = $(LIBIO_SRCS) $(LIBIO_WSRCS) $(LIBIO_XTRASRCS)

View File

@ -102,6 +102,7 @@ WFMT_FLAGS = @WFMT_FLAGS@
cpu_include_dir = @cpu_include_dir@
ctype_include_dir = @ctype_include_dir@
glibcpp_basedir = @glibcpp_basedir@
ifGNUmake = @ifGNUmake@
libinst_wstring_la = @libinst_wstring_la@
AUTOMAKE_OPTIONS = 1.3 cygnus
@ -119,14 +120,36 @@ CONFIG_INCLUDES = \
INCLUDES = \
-D_GNU_SOURCE -nostdinc++ -I$(top_srcdir) \
-nostdinc++ -I$(top_srcdir) \
$(LIBIO_INCLUDES) $(CONFIG_INCLUDES) $(CSHADOW_INCLUDES) \
$(TOPLEVEL_INCLUDES)
noinst_LTLIBRARIES = libio.la
LINK = $(LIBTOOL) --mode=link "$(CCLD)" $(AM_CFLAGS) $(CFLAGS) $(LDFLAGS) -o $@
# These bits are all figured out from configure. Look in acinclude.m4
# or configure.in to see how they are set.
# NB: DEBUGFLAGS have to be at the end so that -O2 can be overridden.
AC_CFLAGS = \
$(WERROR) @CPU_FLAGS@ @DEBUG_FLAGS@
# Need to manually set this option because AC_CXXFLAGS has to be at
# the end of the compile line so that -O2 can be overridden as the
# occasion call for it. (ie, --enable-debug)
AM_CFLAGS = \
-D_GNU_SOURCE $(AC_CFLAGS)
COMPILE = $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(CFLAGS) \
$(AM_CFLAGS)
LTCOMPILE = $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(INCLUDES) \
$(AM_CPPFLAGS) \$(CPPFLAGS) $(CFLAGS) $(AM_CFLAGS)
LINK = $(LIBTOOL) --mode=link "$(CCLD)" $(CFLAGS) $(AM_CFLAGS) $(LDFLAGS) -o $@
#includes =
@ -139,12 +162,15 @@ libio_headers = \
@GLIBCPP_NEED_WLIBIO_TRUE@LIBIO_WSRCS = @GLIBCPP_NEED_WLIBIO_TRUE@\
@GLIBCPP_NEED_WLIBIO_TRUE@ iofwide.c wfiledoalloc.c wfileops.c wgenops.c
@GLIBCPP_NEED_WLIBIO_FALSE@LIBIO_WSRCS =
@GLIBCPP_NEED_XTRA_LIBIO_TRUE@LIBIO_XTRASRCS = @GLIBCPP_NEED_XTRA_LIBIO_TRUE@\
@GLIBCPP_NEED_XTRA_LIBIO_TRUE@ iofclose.c iofopen.c stdio.c
@GLIBCPP_NEED_XTRA_LIBIO_FALSE@LIBIO_XTRASRCS =
EXTRA_DIST = iostreamP.h
libio_la_LIBADD = $(LIBIO_SRCS) $(LIBIO_WSRCS)
libio_la_LIBADD = $(LIBIO_SRCS) $(LIBIO_WSRCS) $(LIBIO_XTRASRCS)
libio_la_DEPENDENCIES = $(libio_la_LIBADD)
libio_la_SOURCES = $(LIBIO_SRCS) $(LIBIO_WSRCS)
libio_la_SOURCES = $(LIBIO_SRCS) $(LIBIO_WSRCS) $(LIBIO_XTRASRCS)
mkinstalldirs = $(SHELL) $(top_srcdir)/../mkinstalldirs
CONFIG_HEADER = ../config.h
CONFIG_CLEAN_FILES =
@ -156,30 +182,63 @@ CPPFLAGS = @CPPFLAGS@
LDFLAGS = @LDFLAGS@
LIBS = @LIBS@
libio_la_LDFLAGS =
@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@cleanup.lo \
@GLIBCPP_NEED_WLIBIO_TRUE@@GLIBCPP_NEED_LIBIO_TRUE@iofwide.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_FALSE@libio_la_OBJECTS = \
@GLIBCPP_NEED_WLIBIO_TRUE@@GLIBCPP_NEED_LIBIO_FALSE@iofwide.lo \
@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_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@cleanup.lo
@GLIBCPP_NEED_WLIBIO_FALSE@@GLIBCPP_NEED_LIBIO_FALSE@libio_la_OBJECTS =
@GLIBCPP_NEED_WLIBIO_TRUE@@GLIBCPP_NEED_LIBIO_TRUE@@GLIBCPP_NEED_XTRA_LIBIO_TRUE@libio_la_OBJECTS = \
@GLIBCPP_NEED_WLIBIO_TRUE@@GLIBCPP_NEED_LIBIO_TRUE@@GLIBCPP_NEED_XTRA_LIBIO_TRUE@filedoalloc.lo \
@GLIBCPP_NEED_WLIBIO_TRUE@@GLIBCPP_NEED_LIBIO_TRUE@@GLIBCPP_NEED_XTRA_LIBIO_TRUE@genops.lo \
@GLIBCPP_NEED_WLIBIO_TRUE@@GLIBCPP_NEED_LIBIO_TRUE@@GLIBCPP_NEED_XTRA_LIBIO_TRUE@fileops.lo \
@GLIBCPP_NEED_WLIBIO_TRUE@@GLIBCPP_NEED_LIBIO_TRUE@@GLIBCPP_NEED_XTRA_LIBIO_TRUE@stdfiles.lo \
@GLIBCPP_NEED_WLIBIO_TRUE@@GLIBCPP_NEED_LIBIO_TRUE@@GLIBCPP_NEED_XTRA_LIBIO_TRUE@cleanup.lo \
@GLIBCPP_NEED_WLIBIO_TRUE@@GLIBCPP_NEED_LIBIO_TRUE@@GLIBCPP_NEED_XTRA_LIBIO_TRUE@iofwide.lo \
@GLIBCPP_NEED_WLIBIO_TRUE@@GLIBCPP_NEED_LIBIO_TRUE@@GLIBCPP_NEED_XTRA_LIBIO_TRUE@wfiledoalloc.lo \
@GLIBCPP_NEED_WLIBIO_TRUE@@GLIBCPP_NEED_LIBIO_TRUE@@GLIBCPP_NEED_XTRA_LIBIO_TRUE@wfileops.lo \
@GLIBCPP_NEED_WLIBIO_TRUE@@GLIBCPP_NEED_LIBIO_TRUE@@GLIBCPP_NEED_XTRA_LIBIO_TRUE@wgenops.lo \
@GLIBCPP_NEED_WLIBIO_TRUE@@GLIBCPP_NEED_LIBIO_TRUE@@GLIBCPP_NEED_XTRA_LIBIO_TRUE@iofclose.lo \
@GLIBCPP_NEED_WLIBIO_TRUE@@GLIBCPP_NEED_LIBIO_TRUE@@GLIBCPP_NEED_XTRA_LIBIO_TRUE@iofopen.lo \
@GLIBCPP_NEED_WLIBIO_TRUE@@GLIBCPP_NEED_LIBIO_TRUE@@GLIBCPP_NEED_XTRA_LIBIO_TRUE@stdio.lo
@GLIBCPP_NEED_WLIBIO_FALSE@@GLIBCPP_NEED_LIBIO_FALSE@@GLIBCPP_NEED_XTRA_LIBIO_FALSE@libio_la_OBJECTS =
@GLIBCPP_NEED_WLIBIO_TRUE@@GLIBCPP_NEED_LIBIO_FALSE@@GLIBCPP_NEED_XTRA_LIBIO_FALSE@libio_la_OBJECTS = \
@GLIBCPP_NEED_WLIBIO_TRUE@@GLIBCPP_NEED_LIBIO_FALSE@@GLIBCPP_NEED_XTRA_LIBIO_FALSE@iofwide.lo \
@GLIBCPP_NEED_WLIBIO_TRUE@@GLIBCPP_NEED_LIBIO_FALSE@@GLIBCPP_NEED_XTRA_LIBIO_FALSE@wfiledoalloc.lo \
@GLIBCPP_NEED_WLIBIO_TRUE@@GLIBCPP_NEED_LIBIO_FALSE@@GLIBCPP_NEED_XTRA_LIBIO_FALSE@wfileops.lo \
@GLIBCPP_NEED_WLIBIO_TRUE@@GLIBCPP_NEED_LIBIO_FALSE@@GLIBCPP_NEED_XTRA_LIBIO_FALSE@wgenops.lo
@GLIBCPP_NEED_WLIBIO_FALSE@@GLIBCPP_NEED_LIBIO_TRUE@@GLIBCPP_NEED_XTRA_LIBIO_FALSE@libio_la_OBJECTS = \
@GLIBCPP_NEED_WLIBIO_FALSE@@GLIBCPP_NEED_LIBIO_TRUE@@GLIBCPP_NEED_XTRA_LIBIO_FALSE@filedoalloc.lo \
@GLIBCPP_NEED_WLIBIO_FALSE@@GLIBCPP_NEED_LIBIO_TRUE@@GLIBCPP_NEED_XTRA_LIBIO_FALSE@genops.lo \
@GLIBCPP_NEED_WLIBIO_FALSE@@GLIBCPP_NEED_LIBIO_TRUE@@GLIBCPP_NEED_XTRA_LIBIO_FALSE@fileops.lo \
@GLIBCPP_NEED_WLIBIO_FALSE@@GLIBCPP_NEED_LIBIO_TRUE@@GLIBCPP_NEED_XTRA_LIBIO_FALSE@stdfiles.lo \
@GLIBCPP_NEED_WLIBIO_FALSE@@GLIBCPP_NEED_LIBIO_TRUE@@GLIBCPP_NEED_XTRA_LIBIO_FALSE@cleanup.lo
@GLIBCPP_NEED_WLIBIO_FALSE@@GLIBCPP_NEED_LIBIO_FALSE@@GLIBCPP_NEED_XTRA_LIBIO_TRUE@libio_la_OBJECTS = \
@GLIBCPP_NEED_WLIBIO_FALSE@@GLIBCPP_NEED_LIBIO_FALSE@@GLIBCPP_NEED_XTRA_LIBIO_TRUE@iofclose.lo \
@GLIBCPP_NEED_WLIBIO_FALSE@@GLIBCPP_NEED_LIBIO_FALSE@@GLIBCPP_NEED_XTRA_LIBIO_TRUE@iofopen.lo \
@GLIBCPP_NEED_WLIBIO_FALSE@@GLIBCPP_NEED_LIBIO_FALSE@@GLIBCPP_NEED_XTRA_LIBIO_TRUE@stdio.lo
@GLIBCPP_NEED_WLIBIO_FALSE@@GLIBCPP_NEED_LIBIO_TRUE@@GLIBCPP_NEED_XTRA_LIBIO_TRUE@libio_la_OBJECTS = \
@GLIBCPP_NEED_WLIBIO_FALSE@@GLIBCPP_NEED_LIBIO_TRUE@@GLIBCPP_NEED_XTRA_LIBIO_TRUE@filedoalloc.lo \
@GLIBCPP_NEED_WLIBIO_FALSE@@GLIBCPP_NEED_LIBIO_TRUE@@GLIBCPP_NEED_XTRA_LIBIO_TRUE@genops.lo \
@GLIBCPP_NEED_WLIBIO_FALSE@@GLIBCPP_NEED_LIBIO_TRUE@@GLIBCPP_NEED_XTRA_LIBIO_TRUE@fileops.lo \
@GLIBCPP_NEED_WLIBIO_FALSE@@GLIBCPP_NEED_LIBIO_TRUE@@GLIBCPP_NEED_XTRA_LIBIO_TRUE@stdfiles.lo \
@GLIBCPP_NEED_WLIBIO_FALSE@@GLIBCPP_NEED_LIBIO_TRUE@@GLIBCPP_NEED_XTRA_LIBIO_TRUE@cleanup.lo \
@GLIBCPP_NEED_WLIBIO_FALSE@@GLIBCPP_NEED_LIBIO_TRUE@@GLIBCPP_NEED_XTRA_LIBIO_TRUE@iofclose.lo \
@GLIBCPP_NEED_WLIBIO_FALSE@@GLIBCPP_NEED_LIBIO_TRUE@@GLIBCPP_NEED_XTRA_LIBIO_TRUE@iofopen.lo \
@GLIBCPP_NEED_WLIBIO_FALSE@@GLIBCPP_NEED_LIBIO_TRUE@@GLIBCPP_NEED_XTRA_LIBIO_TRUE@stdio.lo
@GLIBCPP_NEED_WLIBIO_TRUE@@GLIBCPP_NEED_LIBIO_FALSE@@GLIBCPP_NEED_XTRA_LIBIO_TRUE@libio_la_OBJECTS = \
@GLIBCPP_NEED_WLIBIO_TRUE@@GLIBCPP_NEED_LIBIO_FALSE@@GLIBCPP_NEED_XTRA_LIBIO_TRUE@iofwide.lo \
@GLIBCPP_NEED_WLIBIO_TRUE@@GLIBCPP_NEED_LIBIO_FALSE@@GLIBCPP_NEED_XTRA_LIBIO_TRUE@wfiledoalloc.lo \
@GLIBCPP_NEED_WLIBIO_TRUE@@GLIBCPP_NEED_LIBIO_FALSE@@GLIBCPP_NEED_XTRA_LIBIO_TRUE@wfileops.lo \
@GLIBCPP_NEED_WLIBIO_TRUE@@GLIBCPP_NEED_LIBIO_FALSE@@GLIBCPP_NEED_XTRA_LIBIO_TRUE@wgenops.lo \
@GLIBCPP_NEED_WLIBIO_TRUE@@GLIBCPP_NEED_LIBIO_FALSE@@GLIBCPP_NEED_XTRA_LIBIO_TRUE@iofclose.lo \
@GLIBCPP_NEED_WLIBIO_TRUE@@GLIBCPP_NEED_LIBIO_FALSE@@GLIBCPP_NEED_XTRA_LIBIO_TRUE@iofopen.lo \
@GLIBCPP_NEED_WLIBIO_TRUE@@GLIBCPP_NEED_LIBIO_FALSE@@GLIBCPP_NEED_XTRA_LIBIO_TRUE@stdio.lo
@GLIBCPP_NEED_WLIBIO_TRUE@@GLIBCPP_NEED_LIBIO_TRUE@@GLIBCPP_NEED_XTRA_LIBIO_FALSE@libio_la_OBJECTS = \
@GLIBCPP_NEED_WLIBIO_TRUE@@GLIBCPP_NEED_LIBIO_TRUE@@GLIBCPP_NEED_XTRA_LIBIO_FALSE@filedoalloc.lo \
@GLIBCPP_NEED_WLIBIO_TRUE@@GLIBCPP_NEED_LIBIO_TRUE@@GLIBCPP_NEED_XTRA_LIBIO_FALSE@genops.lo \
@GLIBCPP_NEED_WLIBIO_TRUE@@GLIBCPP_NEED_LIBIO_TRUE@@GLIBCPP_NEED_XTRA_LIBIO_FALSE@fileops.lo \
@GLIBCPP_NEED_WLIBIO_TRUE@@GLIBCPP_NEED_LIBIO_TRUE@@GLIBCPP_NEED_XTRA_LIBIO_FALSE@stdfiles.lo \
@GLIBCPP_NEED_WLIBIO_TRUE@@GLIBCPP_NEED_LIBIO_TRUE@@GLIBCPP_NEED_XTRA_LIBIO_FALSE@cleanup.lo \
@GLIBCPP_NEED_WLIBIO_TRUE@@GLIBCPP_NEED_LIBIO_TRUE@@GLIBCPP_NEED_XTRA_LIBIO_FALSE@iofwide.lo \
@GLIBCPP_NEED_WLIBIO_TRUE@@GLIBCPP_NEED_LIBIO_TRUE@@GLIBCPP_NEED_XTRA_LIBIO_FALSE@wfiledoalloc.lo \
@GLIBCPP_NEED_WLIBIO_TRUE@@GLIBCPP_NEED_LIBIO_TRUE@@GLIBCPP_NEED_XTRA_LIBIO_FALSE@wfileops.lo \
@GLIBCPP_NEED_WLIBIO_TRUE@@GLIBCPP_NEED_LIBIO_TRUE@@GLIBCPP_NEED_XTRA_LIBIO_FALSE@wgenops.lo
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)
CCLD = $(CC)
DIST_COMMON = ChangeLog Makefile.am Makefile.in

View File

@ -6,6 +6,7 @@
#ifndef _LIBC
# include <bits/c++config.h>
# define _IO_MTSAFE_IO
#endif
/* Define types for libio in terms of the standard internal type names. */
@ -107,7 +108,7 @@ typedef unsigned int _G_uint32_t __attribute__ ((__mode__ (__SI__)));
//#define _G_FSTAT64(fd,buf) __fxstat64 (_STAT_VER, fd, buf)
/* This is defined by <bits/stat.h> if `st_blksize' exists. */
#define _G_HAVE_ST_BLKSIZE defined (_STATBUF_ST_BLKSIZE)
/*#define _G_HAVE_ST_BLKSIZE defined (_STATBUF_ST_BLKSIZE)*/
#define _G_BUFSIZ 8192
@ -119,7 +120,8 @@ typedef unsigned int _G_uint32_t __attribute__ ((__mode__ (__SI__)));
#define _G_VTABLE_LABEL_PREFIX_ID __vt_
#define _G_INTERNAL_CCS "UCS4"
#define _G_HAVE_WEAK_SYMBOL 1
#define _G_STDIO_USES_LIBIO 1
#if defined __cplusplus || defined __STDC__
# define _G_ARGS(ARGLIST) ARGLIST

View File

@ -976,11 +976,9 @@ _IO_default_pbackfail (fp, c)
new_buf = (char *) malloc (new_size);
if (new_buf == NULL)
return EOF;
memcpy (new_buf + (new_size - old_size), fp->_IO_read_base,
old_size);
memcpy (new_buf + old_size, fp->_IO_read_base, old_size);
free (fp->_IO_read_base);
_IO_setg (fp, new_buf, new_buf + (new_size - old_size),
new_buf + new_size);
_IO_setg (fp, new_buf, new_buf + old_size, new_buf + new_size);
fp->_IO_backup_base = fp->_IO_read_ptr;
}

View File

@ -0,0 +1,98 @@
/* Copyright (C) 1993, 1995, 1997-1999, 2000 Free Software Foundation, Inc.
This file is part of the GNU IO Library.
This library is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License as
published by the Free Software Foundation; either version 2, or (at
your option) any later version.
This library is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
General Public License for more details.
You should have received a copy of the GNU General Public License
along with this library; see the file COPYING. If not, write to
the Free Software Foundation, 59 Temple Place - Suite 330, Boston,
MA 02111-1307, USA.
As a special exception, if you link this library with files
compiled with a GNU compiler to produce an executable, this does
not cause the resulting executable to be covered by the GNU General
Public License. This exception does not however invalidate any
other reasons why the executable file might be covered by the GNU
General Public License. */
#include "libioP.h"
#ifdef __STDC__
#include <stdlib.h>
#endif
#if _LIBC
# include "../iconv/gconv_int.h"
# include <shlib-compat.h>
#else
# define SHLIB_COMPAT(a, b, c) 0
#endif
int
_IO_new_fclose (fp)
_IO_FILE *fp;
{
int status;
CHECK_FILE(fp, EOF);
#if SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_1)
/* We desperately try to help programs which are using streams in a
strange way and mix old and new functions. Detect old streams
here. */
if (fp->_vtable_offset != 0)
return _IO_old_fclose (fp);
#endif
_IO_cleanup_region_start ((void (*) __P ((void *))) _IO_funlockfile, fp);
_IO_flockfile (fp);
if (fp->_IO_file_flags & _IO_IS_FILEBUF)
status = _IO_file_close_it (fp);
else
status = fp->_flags & _IO_ERR_SEEN ? -1 : 0;
_IO_FINISH (fp);
_IO_funlockfile (fp);
if (fp->_mode > 0)
{
#if _LIBC
/* This stream has a wide orientation. This means we have to free
the conversion functions. */
struct _IO_codecvt *cc = &fp->_wide_data->_codecvt;
if (cc->__cd_in.__cd.__steps->__shlib_handle != NULL)
{
--cc->__cd_in.__cd.__steps->__counter;
__gconv_close_transform (cc->__cd_in.__cd.__steps, 1);
}
if (cc->__cd_out.__cd.__steps->__shlib_handle != NULL)
{
--cc->__cd_out.__cd.__steps->__counter;
__gconv_close_transform (cc->__cd_out.__cd.__steps, 1);
}
#endif
}
_IO_cleanup_region_end (0);
if (_IO_have_backup (fp))
_IO_free_backup_area (fp);
if (fp != _IO_stdin && fp != _IO_stdout && fp != _IO_stderr)
{
fp->_IO_file_flags = 0;
free(fp);
}
return status;
}
#ifdef _LIBC
versioned_symbol (libc, _IO_new_fclose, _IO_fclose, GLIBC_2_1);
strong_alias (_IO_new_fclose, __new_fclose)
versioned_symbol (libc, __new_fclose, fclose, GLIBC_2_1);
#else
int fclose (_IO_FILE *) __attribute__ ((alias("_IO_new_fclose")));
#endif

View File

@ -0,0 +1,77 @@
/* Copyright (C) 1993, 1997, 1998, 1999, 2000 Free Software Foundation, Inc.
This file is part of the GNU IO Library.
This library is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License as
published by the Free Software Foundation; either version 2, or (at
your option) any later version.
This library is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
General Public License for more details.
You should have received a copy of the GNU General Public License
along with this library; see the file COPYING. If not, write to
the Free Software Foundation, 59 Temple Place - Suite 330, Boston,
MA 02111-1307, USA.
As a special exception, if you link this library with files
compiled with a GNU compiler to produce an executable, this does
not cause the resulting executable to be covered by the GNU General
Public License. This exception does not however invalidate any
other reasons why the executable file might be covered by the GNU
General Public License. */
#include "libioP.h"
#ifdef __STDC__
#include <stdlib.h>
#endif
#ifdef _LIBC
# include <shlib-compat.h>
#endif
_IO_FILE *
_IO_new_fopen (filename, mode)
const char *filename;
const char *mode;
{
struct locked_FILE
{
struct _IO_FILE_plus fp;
#ifdef _IO_MTSAFE_IO
_IO_lock_t lock;
#endif
struct _IO_wide_data wd;
} *new_f = (struct locked_FILE *) malloc (sizeof (struct locked_FILE));
if (new_f == NULL)
return NULL;
#ifdef _IO_MTSAFE_IO
new_f->fp.file._lock = &new_f->lock;
#endif
#if defined _LIBC || defined _GLIBCPP_USE_WCHAR_T
_IO_no_init (&new_f->fp.file, 0, 0, &new_f->wd, &_IO_wfile_jumps);
#else
_IO_no_init (&new_f->fp.file, 1, 0, NULL, NULL);
#endif
_IO_JUMPS (&new_f->fp) = &_IO_file_jumps;
_IO_file_init (&new_f->fp);
#if !_IO_UNIFIED_JUMPTABLES
new_f->fp.vtable = NULL;
#endif
if (_IO_file_fopen ((_IO_FILE *) new_f, filename, mode, 1) != NULL)
return (_IO_FILE *) &new_f->fp;
_IO_un_link (&new_f->fp);
free (new_f);
return NULL;
}
#ifdef _LIBC
strong_alias (_IO_new_fopen, __new_fopen)
versioned_symbol (libc, _IO_new_fopen, _IO_fopen, GLIBC_2_1);
versioned_symbol (libc, __new_fopen, fopen, GLIBC_2_1);
#else
int fopen (const char *,const char *)
__attribute__ ((alias("_IO_new_fopen")));
#endif

View File

@ -310,6 +310,9 @@ struct _IO_FILE_complete
/* Wide character stream stuff. */
struct _IO_codecvt *_codecvt;
struct _IO_wide_data *_wide_data;
# else
void *__pad1;
void *__pad2;
# endif
int _mode;
/* Make sure we don't get into trouble again. */

View File

@ -31,12 +31,9 @@
hand, we don't need a C++ compiler to build this file.) */
#include "libioP.h"
#ifndef _LIBC
# include <bits/c++config.h>
#endif
#if defined _LIBC || defined _GLIBCPP_USE_WCHAR_T
# ifdef _IO_MTSAFE_IO
#ifdef _IO_MTSAFE_IO
# if defined _LIBC || defined _GLIBCPP_USE_WCHAR_T
# define DEF_STDFILE(NAME, FD, CHAIN, FLAGS) \
static _IO_lock_t _IO_stdfile_##FD##_lock = _IO_lock_initializer; \
static struct _IO_wide_data _IO_wide_data_##FD \
@ -45,20 +42,20 @@
= {FILEBUF_LITERAL(CHAIN, FLAGS, FD, &_IO_wide_data_##FD), \
&_IO_file_jumps};
# else
# define DEF_STDFILE(NAME, FD, CHAIN, FLAGS) \
static _IO_lock_t _IO_stdfile_##FD##_lock = _IO_lock_initializer; \
struct _IO_FILE_plus NAME \
= {FILEBUF_LITERAL(CHAIN, FLAGS, FD, NULL), \
&_IO_file_jumps};
# endif
#else
# if defined _LIBC || defined _GLIBCPP_USE_WCHAR_T
# define DEF_STDFILE(NAME, FD, CHAIN, FLAGS) \
static struct _IO_wide_data _IO_wide_data_##FD \
= { ._wide_vtable = &_IO_wfile_jumps }; \
struct _IO_FILE_plus NAME \
= {FILEBUF_LITERAL(CHAIN, FLAGS, FD, &_IO_wide_data_##FD), \
&_IO_file_jumps};
# endif
#else
# ifdef _IO_MTSAFE_IO
# define DEF_STDFILE(NAME, FD, CHAIN, FLAGS) \
static _IO_lock_t _IO_stdfile_##FD##_lock = _IO_lock_initializer; \
struct _IO_FILE_plus NAME \
= {FILEBUF_LITERAL(CHAIN, FLAGS, FD, NULL), \
&_IO_file_jumps};
# else
# define DEF_STDFILE(NAME, FD, CHAIN, FLAGS) \
struct _IO_FILE_plus NAME \

View File

@ -0,0 +1,42 @@
/* Copyright (C) 1993, 1994, 1996, 1997, 2000 Free Software Foundation, Inc.
This file is part of the GNU IO Library.
This library is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License as
published by the Free Software Foundation; either version 2, or (at
your option) any later version.
This library is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
General Public License for more details.
You should have received a copy of the GNU General Public License
along with this library; see the file COPYING. If not, write to
the Free Software Foundation, 59 Temple Place - Suite 330, Boston,
MA 02111-1307, USA.
As a special exception, if you link this library with files
compiled with a GNU compiler to produce an executable, this does
not cause the resulting executable to be covered by the GNU General
Public License. This exception does not however invalidate any
other reasons why the executable file might be covered by the GNU
General Public License. */
#include "libioP.h"
#undef stdin
#undef stdout
#undef stderr
_IO_FILE *stdin = (_IO_FILE *) &_IO_2_1_stdin_;
_IO_FILE *stdout = (_IO_FILE *) &_IO_2_1_stdout_;
_IO_FILE *stderr = (_IO_FILE *) &_IO_2_1_stderr_;
#undef _IO_stdin
#undef _IO_stdout
#undef _IO_stderr
#ifdef _LIBC
strong_alias (stdin, _IO_stdin);
strong_alias (stdout, _IO_stdout);
strong_alias (stderr, _IO_stderr);
#endif

View File

@ -103,6 +103,7 @@ WFMT_FLAGS = @WFMT_FLAGS@
cpu_include_dir = @cpu_include_dir@
ctype_include_dir = @ctype_include_dir@
glibcpp_basedir = @glibcpp_basedir@
ifGNUmake = @ifGNUmake@
libinst_wstring_la = @libinst_wstring_la@
AUTOMAKE_OPTIONS = 1.3 cygnus

View File

@ -189,10 +189,11 @@ cpu_headers = \
sources = \
limitsMEMBERS.cc c++io.cc \
limitsMEMBERS.cc \
cmath.cc \
complex.cc complexf.cc complexl.cc complex_io.cc \
stdexcept.cc ios.cc stdstreams.cc strstream.cc \
stdexcept.cc \
c++io.cc ios.cc stdstreams.cc strstream.cc \
locale.cc localename.cc \
locale-inst.cc stl-inst.cc misc-inst.cc valarray-inst.cc string-inst.cc

View File

@ -101,6 +101,7 @@ WFMT_FLAGS = @WFMT_FLAGS@
cpu_include_dir = @cpu_include_dir@
ctype_include_dir = @ctype_include_dir@
glibcpp_basedir = @glibcpp_basedir@
ifGNUmake = @ifGNUmake@
libinst_wstring_la = @libinst_wstring_la@
AUTOMAKE_OPTIONS = 1.3 gnits
@ -266,10 +267,11 @@ cpu_headers = \
sources = \
limitsMEMBERS.cc c++io.cc \
limitsMEMBERS.cc \
cmath.cc \
complex.cc complexf.cc complexl.cc complex_io.cc \
stdexcept.cc ios.cc stdstreams.cc strstream.cc \
stdexcept.cc \
c++io.cc ios.cc stdstreams.cc strstream.cc \
locale.cc localename.cc \
locale-inst.cc stl-inst.cc misc-inst.cc valarray-inst.cc string-inst.cc
@ -318,8 +320,8 @@ libinst_string_la_OBJECTS = libinst-string.la.lo
libinst_wstring_la_LDFLAGS =
libinst_wstring_la_LIBADD =
libinst_wstring_la_OBJECTS = wstring-inst.lo
libstdc___la_OBJECTS = limitsMEMBERS.lo c++io.lo cmath.lo complex.lo \
complexf.lo complexl.lo complex_io.lo stdexcept.lo ios.lo stdstreams.lo \
libstdc___la_OBJECTS = limitsMEMBERS.lo cmath.lo complex.lo complexf.lo \
complexl.lo complex_io.lo stdexcept.lo c++io.lo ios.lo stdstreams.lo \
strstream.lo locale.lo localename.lo locale-inst.lo stl-inst.lo \
misc-inst.lo valarray-inst.lo string-inst.lo
CXXFLAGS = @CXXFLAGS@

View File

@ -272,7 +272,7 @@ namespace std {
#ifdef _GLIBCPP_RESOLVE_LIB_DEFECTS
// 49. Underspecification of ios_base::sync_with_stdio
bool __retval = __ioinit._M_cin->_M_file->get_fileno() == 0;
// Turn off sync with C FILE* for cin, cout, cerr, clog.
if (!__sync && __retval)
{