diff options
author | Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> | 2012-02-27 13:51:50 +0000 |
---|---|---|
committer | Rainer Orth <ro@gcc.gnu.org> | 2012-02-27 13:51:50 +0000 |
commit | cc2de92d5a4fbc66cbcfd1c9187c4ebecc4f46b3 (patch) | |
tree | 1021fa2934b370402c6c9d89778a3c5d3dae290a /libstdc++-v3/src/Makefile.in | |
parent | f59280cf80e22bf30bcbb173e9f100959e5ed768 (diff) |
Fix Solaris symbol versioning (PR libstdc++/52188)
contrib:
PR libstdc++/52188
* make_sunver.pl: Remove #ifdef handling.
libgomp:
PR libstdc++/52188
* acinclude.m4 (LIBGOMP_ENABLE_SYMVERS): Remove symvers_renaming.
Remove ENABLE_SYMVERS_SOL2.
* configure: Regenerate.
* Makefile.am [LIBGOMP_BUILD_VERSIONED_SHLIB] (comma): New variable.
(PREPROCESS): New variable.
(libgomp.ver): New target.
[LIBGOMP_BUILD_VERSIONED_SHLIB &&
LIBGOMP_BUILD_VERSIONED_SHLIB_GNU]: Remove
LIBGOMP_BUILD_VERSIONED_SHLIB_SOL2 handling.
Use libgomp.ver.
[LIBGOMP_BUILD_VERSIONED_SHLIB_SUN]: Use libgomp.ver, libgomp.ver-sun.
* Makefile.in: Regenerate.
libstdc++-v3:
PR libstdc++/52188
* acinclude.m4 (GLIBCXX_ENABLE_SYMVERS): Remove symvers_renaming.
Remove ENABLE_SYMVERS_SOL2.
* configure: Regenerate.
* src/Makefile.am [ENABLE_SYMVERS] (libstdc++-symbols.ver):
Postprocess mapfile.
[ENABLE_SYMVERS_GNU]: Remove ENABLE_SYMVERS_SOL2 handling.
* src/Makefile.in: Regenerate.
* config/abi/pre/gnu.ver (GLIBCXX_3.4.5) [!__sun__ && !__svr4__]:
Don't export
_ZNSt19istreambuf_iteratorI[cw]St11char_traitsI[cw]EEppEv.
From-SVN: r184598
Diffstat (limited to 'libstdc++-v3/src/Makefile.in')
-rw-r--r-- | libstdc++-v3/src/Makefile.in | 24 |
1 files changed, 11 insertions, 13 deletions
diff --git a/libstdc++-v3/src/Makefile.in b/libstdc++-v3/src/Makefile.in index 93ed4402784..17a6fb281a9 100644 --- a/libstdc++-v3/src/Makefile.in +++ b/libstdc++-v3/src/Makefile.in @@ -399,14 +399,12 @@ CXXLINK = $(LIBTOOL) --tag CXX $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link \ @ENABLE_SYMVERS_DARWIN_TRUE@@ENABLE_SYMVERS_TRUE@version_arg = -Wl,-exported_symbols_list,libstdc++-symbols.explist @ENABLE_SYMVERS_FALSE@version_arg = @ENABLE_SYMVERS_GNU_NAMESPACE_TRUE@@ENABLE_SYMVERS_TRUE@version_arg = -Wl,--version-script=libstdc++-symbols.ver -@ENABLE_SYMVERS_GNU_TRUE@@ENABLE_SYMVERS_SOL2_FALSE@@ENABLE_SYMVERS_TRUE@version_arg = -Wl,--version-script=libstdc++-symbols.ver -@ENABLE_SYMVERS_GNU_TRUE@@ENABLE_SYMVERS_SOL2_TRUE@@ENABLE_SYMVERS_TRUE@version_arg = -Wl,--version-script,libstdc++-symbols.ver-sol2 +@ENABLE_SYMVERS_GNU_TRUE@@ENABLE_SYMVERS_TRUE@version_arg = -Wl,--version-script=libstdc++-symbols.ver @ENABLE_SYMVERS_SUN_TRUE@@ENABLE_SYMVERS_TRUE@version_arg = -Wl,-M,libstdc++-symbols.ver-sun @ENABLE_SYMVERS_DARWIN_TRUE@@ENABLE_SYMVERS_TRUE@version_dep = libstdc++-symbols.explist @ENABLE_SYMVERS_FALSE@version_dep = @ENABLE_SYMVERS_GNU_NAMESPACE_TRUE@@ENABLE_SYMVERS_TRUE@version_dep = libstdc++-symbols.ver -@ENABLE_SYMVERS_GNU_TRUE@@ENABLE_SYMVERS_SOL2_FALSE@@ENABLE_SYMVERS_TRUE@version_dep = libstdc++-symbols.ver -@ENABLE_SYMVERS_GNU_TRUE@@ENABLE_SYMVERS_SOL2_TRUE@@ENABLE_SYMVERS_TRUE@version_dep = libstdc++-symbols.ver-sol2 +@ENABLE_SYMVERS_GNU_TRUE@@ENABLE_SYMVERS_TRUE@version_dep = libstdc++-symbols.ver @ENABLE_SYMVERS_SUN_TRUE@@ENABLE_SYMVERS_TRUE@version_dep = libstdc++-symbols.ver-sun @GLIBCXX_BUILD_DEBUG_FALSE@STAMP_DEBUG = @@ -765,22 +763,22 @@ vpath % $(top_srcdir) # Symbol versioning for shared libraries. @ENABLE_SYMVERS_TRUE@libstdc++-symbols.ver: ${glibcxx_srcdir}/$(SYMVER_FILE) \ @ENABLE_SYMVERS_TRUE@ $(port_specific_symbol_files) -@ENABLE_SYMVERS_TRUE@ cp ${glibcxx_srcdir}/$(SYMVER_FILE) ./libstdc++-symbols.ver -@ENABLE_SYMVERS_TRUE@ chmod +w ./libstdc++-symbols.ver +@ENABLE_SYMVERS_TRUE@ cp ${glibcxx_srcdir}/$(SYMVER_FILE) $@.tmp +@ENABLE_SYMVERS_TRUE@ chmod +w $@.tmp @ENABLE_SYMVERS_TRUE@ if test "x$(port_specific_symbol_files)" != x; then \ @ENABLE_SYMVERS_TRUE@ if grep '^# Appended to version file.' \ @ENABLE_SYMVERS_TRUE@ $(port_specific_symbol_files) /dev/null > /dev/null 2>&1; then \ -@ENABLE_SYMVERS_TRUE@ cat $(port_specific_symbol_files) >> $@; \ +@ENABLE_SYMVERS_TRUE@ cat $(port_specific_symbol_files) >> $@.tmp; \ @ENABLE_SYMVERS_TRUE@ else \ -@ENABLE_SYMVERS_TRUE@ sed -n '1,/DO NOT DELETE/p' $@ > tmp.top; \ -@ENABLE_SYMVERS_TRUE@ sed -n '/DO NOT DELETE/,$$p' $@ > tmp.bottom; \ -@ENABLE_SYMVERS_TRUE@ cat tmp.top $(port_specific_symbol_files) tmp.bottom > $@; \ +@ENABLE_SYMVERS_TRUE@ sed -n '1,/DO NOT DELETE/p' $@.tmp > tmp.top; \ +@ENABLE_SYMVERS_TRUE@ sed -n '/DO NOT DELETE/,$$p' $@.tmp > tmp.bottom; \ +@ENABLE_SYMVERS_TRUE@ cat tmp.top $(port_specific_symbol_files) tmp.bottom > $@.tmp; \ @ENABLE_SYMVERS_TRUE@ rm tmp.top tmp.bottom; \ @ENABLE_SYMVERS_TRUE@ fi; \ @ENABLE_SYMVERS_TRUE@ fi -@ENABLE_SYMVERS_GNU_TRUE@@ENABLE_SYMVERS_SOL2_TRUE@@ENABLE_SYMVERS_TRUE@libstdc++-symbols.ver-sol2 : libstdc++-symbols.ver -@ENABLE_SYMVERS_GNU_TRUE@@ENABLE_SYMVERS_SOL2_TRUE@@ENABLE_SYMVERS_TRUE@ sed -e '/^#ifdef HAVE_SYMVER_SYMBOL_RENAMING_RUNTIME_SUPPORT/,/^#endif/d' $< \ -@ENABLE_SYMVERS_GNU_TRUE@@ENABLE_SYMVERS_SOL2_TRUE@@ENABLE_SYMVERS_TRUE@ > $@ || (rm -f $@ ; exit 1) +@ENABLE_SYMVERS_TRUE@ $(EGREP) -v '#(#| |$$)' $@.tmp | \ +@ENABLE_SYMVERS_TRUE@ $(COMPILE) -E -P -include config.h - > $@ || (rm -f $@ ; exit 1) +@ENABLE_SYMVERS_TRUE@ rm -f $@.tmp @ENABLE_SYMVERS_SUN_TRUE@@ENABLE_SYMVERS_TRUE@libstdc++-symbols.ver-sun : libstdc++-symbols.ver \ @ENABLE_SYMVERS_SUN_TRUE@@ENABLE_SYMVERS_TRUE@ $(toplevel_srcdir)/contrib/make_sunver.pl \ @ENABLE_SYMVERS_SUN_TRUE@@ENABLE_SYMVERS_TRUE@ $(libstdc___la_OBJECTS) $(libstdc___la_LIBADD) |