libstdc++/2071
* porting.texi: Add documentation about libstdc++-v3-specific
macros that are currently included in os_defines.h files.
* config/basic_file_stdio.h (sys_getc): New method.
(sys_ungetc): New method.
* include/bits/basic_file.h: (sys_getc): New method signature.
(sys_ungetc): New method signature.
* include/bits/fstream.tcc (underflow): Add conditional code
paths which avoid using short seeks on streams (especially
useful when the stream might be interactive or a pipe). At
the moment, this alternate path only avoids seeking when the
``buffer size'' of underflow() is 1 since the C standard only
guarantees buffer space for one ungetc (this technique could
be extended since *-*-solaris* supports buffering for 4 calls
to ungetc and *-*-*bsd* supports buffering limited only by
memory resources). Also, _GLIBCPP_AVOID_FSEEK must be defined
in a port's os_defines.h file for this alternate path to even
be considered. As a bonus, the idiom of using getc/ungetc
requires no system calls whereas fseek maps to one or two
system call(s) on many platforms.
* config/os/bsd/freebsd/bits/os_defines.h (_GLIBCPP_AVOID_FSEEK):
Define it.
* config/os/solaris/solaris2.5/bits/os_defines.h
(_GLIBCPP_AVOID_FSEEK): Likewise.
* config/os/solaris/solaris2.6/bits/os_defines.h
(_GLIBCPP_AVOID_FSEEK): Likewise.
* config/os/solaris/solaris2.7/bits/os_defines.h
(_GLIBCPP_AVOID_FSEEK): Likewise.
From-SVN: r43278
2000-12-13 Benjamin Kosnik <bkoz@redhat.com>
* include/bits/locale_facets.h (ctype<char>): Remove throw specs not in
base class signature.
* config/os/*/bits/ctype_inline.h (is): Same.
From-SVN: r38250
2000-11-21 Branko Cibej <brankoe@xbc.nu>
* config/os/solaris/solaris2.6/bits/os_defines.h: Define
_XOPEN_SOURCE, _LARGEFILE64_SOURCE, __EXTENSIONS__, __off_t,
__off64_t and __ssize_t.
* config/os/solaris/solaris2.5/bits/os_defines.h: For now, use the
same configuration as above.
From-SVN: r37628
2000-10-30 Phil Edwards <pme@sources.redhat.com>
* acinclude.m4 (GLIBCPP_ENABLE_DEBUG): Raise debugging level from
the default of 2 to 3.
* configure.in: Fix minor typos. SUBST the values of enable_shared
and enable_static so that mkcheck will be aware of them. Put the
test for gconv.h in with all the other header tests.
* aclocal.m4: Regenerate.
* configure: Ditto.
* Makefile.in: Ditto.
* libio/Makefile.in: Ditto.
* libmath/Makefile.in: Ditto.
* libsupc++/Makefile.in: Ditto.
* src/Makefile.in: Ditto.
* config/os/solaris/solaris2.7/bits/os_defines.h: Define
_G_USING_THUNKS to 0.
From-SVN: r37151
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
2000-10-25 Phil Edwards <pme@sources.redhat.com>
* configure.in: Check for gconv.h.
* libio/wfileops.c: Wrap gconv.h in HAVE_GCONV_H.
* config/c_io_libio_codecvt.c: Change __mbstate_t to __c_mbstate_t.
* libio/_G_config.h: And here.
* libio/iofwide.c: And here.
* libio/libio.h: And here.
* config/os/solaris/solaris2.7/bits/ctype_noninline.h: Remove
exception specification to match declaration.
* include/bits/locale_facets.tcc: Include bits/std_clocale.h.
From-SVN: r37053
2000-10-24 Phil Edwards <pme@sources.redhat.com>
* acconfig.h: List _GLIBCPP_USE_THREADS.
* acinclude.m4: General formatting cleanup (tabs/spaces), typo
correction, etc. Add comments about following *real* changes
where they are used.
(GLIBCPP_ENABLE_C_MBCHAR): New test...
(GLIBCPP_CHECK_WCHAR_T_SUPPORT): ...results used here.
(GLIBCPP_ENABLE_CSTDIO): Define need_wlibio iff wide characters
are requested.
(GLIBCPP_ENABLE_THREADS): If threads are used, define new
macro _GLIBCPP_USE_THREADS in c++config.h.
(GLIBCPP_ENABLE_SHADOW): For C_INCLUDE_DIR, change () to {} as
this is used in both makefiles and shell scripts (mkcheck).
* configure.in: Call GLIBCPP_ENABLE_C_MBCHAR.
* libio/_G_config.h: Wrap _IO_MTSAFE_IO in _GLIBCPP_USE_THREADS.
* config/c_io_libio.h: In nonthreaded case, typedef __c_lock to
something harmless, like int.
* config/os/aix/bits/os_defines.h: Guard with _GLIBCPP_OS_DEFINES,
add comment/instructions.
* config/os/bsd/bits/os_defines.h: Ditto.
* config/os/generic/bits/os_defines.h: Ditto.
* config/os/gnu-linux/bits/os_defines.h: Ditto.
* config/os/irix/bits/os_defines.h: Ditto.
* config/os/newlib/bits/os_defines.h: Ditto.
* config/os/solaris/solaris2.5/bits/os_defines.h: Ditto.
* config/os/solaris/solaris2.6/bits/os_defines.h: Ditto.
* mkcheck.in: Limit the available heap size for testsuite
binaries, initially at 2MB.
From-SVN: r37050