gcc/ChangeLog:
authordavek <davek@138bc75d-0d04-0410-961f-82ee72b054a4>
Mon, 30 Nov 2009 23:22:04 +0000 (23:22 +0000)
committerdavek <davek@138bc75d-0d04-0410-961f-82ee72b054a4>
Mon, 30 Nov 2009 23:22:04 +0000 (23:22 +0000)
commitdd9d9ac28b56faa0c480877b29e1a74fb856214f
tree9471c38454c458137ad85815b86a55469917bef7
parent25251d9630e35313500158d190b36101dbb070f3
gcc/ChangeLog:

2009-11-30  Dave Korn  <dave.korn.cygwin@gmail.com>

* configure.ac (USE_CYGWIN_LIBSTDCXX_WRAPPERS): Define to reflect
status of AC_CHECK_FUNC for Cygwin DLL libstdc++ support wrappers.
* configure: Regenerate.
* config.in: Regenerate.

* config/i386/cygwin.h (CXX_WRAP_SPEC_LIST): Define list of --wrap
options for Cygwin DLL libstdc++ support wrappers.
(CXX_WRAP_SPEC_OPT): Define spec to use wrappers or not by default
according to defined value of USE_CYGWIN_LIBSTDCXX_WRAPPERS.
(CXX_WRAP_SPEC): Define entire wrapper spec in or out according to
whether USE_CYGWIN_LIBSTDCXX_WRAPPERS is even defined or not.
(LINK_SPEC): Include CXX_WRAP_SPEC.
* gcc/config/i386/winnt.c (wrapper_strcmp): New qsort helper function.
(i386_find_on_wrapper_list): Check if a function is found on the list
of libstdc++ wrapper options.
(i386_pe_file_end): If we are importing a wrapped function, also emit
an external declaration for the real version.
* config/i386/cygming.opt (muse-libstdc-wrappers): New option for
Cygwin targets. Update copyright year.

libstdc++-v3/ChangeLog:

2009-11-30  Dave Korn  <dave.korn.cygwin@gmail.com>

* libstdc++-v3/acinclude.m4 (GLIBCXX_ENABLE_SYMVERS): Don't disable
on PE targets.
* libstdc++-v3/configure: Regenerate.
* libstdc++-v3/configure.host: Add libtool DLL options for Cygwin
and MinGW platforms.

* libstdc++-v3/include/bits/c++config (_GLIBCXX_VISIBILITY_ATTR): On
platforms that don't support visibility, allow them to declare a macro
_GLIBCXX_PSEUDO_VISIBILITY that is applied in place of visibility.
(_GLIBCXX_PSEUDO_VISIBILITY): Supply empty default if not declared by
CPU- or OS-specific headers.

* libstdc++-v3/config/os/newlib/os_defines.h
(_GLIBCXX_PSEUDO_VISIBILITY_default): New macro for dllimport.
(_GLIBCXX_PSEUDO_VISIBILITY_hidden): New empty macro.
(_GLIBCXX_PSEUDO_VISIBILITY): Evaluate to one of the above.
* libstdc++-v3/config/os/mingw32/os_defines.h
(_GLIBCXX_PSEUDO_VISIBILITY_default,
_GLIBCXX_PSEUDO_VISIBILITY_hidden,
_GLIBCXX_PSEUDO_VISIBILITY): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@154853 138bc75d-0d04-0410-961f-82ee72b054a4
14 files changed:
gcc/ChangeLog
gcc/config.in
gcc/config/i386/cygming.opt
gcc/config/i386/cygwin.h
gcc/config/i386/winnt.c
gcc/configure
gcc/configure.ac
libstdc++-v3/ChangeLog
libstdc++-v3/acinclude.m4
libstdc++-v3/config/os/mingw32/os_defines.h
libstdc++-v3/config/os/newlib/os_defines.h
libstdc++-v3/configure
libstdc++-v3/configure.host
libstdc++-v3/include/bits/c++config