aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorRainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>2010-07-02 10:05:49 +0000
committerRainer Orth <ro@gcc.gnu.org>2010-07-02 10:05:49 +0000
commitc18dc5cceab24096cbb83deacabb75b77d57a9df (patch)
tree82af7d224d87b8d826db6015b1d632a682d83bc8 /gcc
parent7dd536f1bce276ba0b9b1cadfe6ce42dbfa150e9 (diff)
downloadgcc-c18dc5cceab24096cbb83deacabb75b77d57a9df.zip
gcc-c18dc5cceab24096cbb83deacabb75b77d57a9df.tar.gz
gcc-c18dc5cceab24096cbb83deacabb75b77d57a9df.tar.bz2
gc++filt.m4: New file.
config: * gc++filt.m4: New file. contrib: * make_sunver.pl: New file. libstdc++v3: * acinclude.m4 (GLIBCXX_ENABLE_SYMVERS): Handle sun style. Require GCC_PROG_GNU_CXXFILT. (_GLIBCXX_HAVE_SYMVER_SYMBOL_RENAMING_RUNTIME_SUPPORT): Define unless targetting solaris2*. Include ../config/gc++filt.m4. * configure.host (i?86-*-solaris2*): Set abi_baseline_pair. (sparc-*-solaris2*): Likewise. * src/Makefile.am [ENABLE_SYMVERS_SUN] (version_dep, version_arg): New variables. (libstdc++-symbols.ver-sun): New target. * configure: Regenerate. * config.h.in: Regenerate. * Makefile.in: Likewise. * doc/Makefile.in: Likewise. * include/Makefile.in: Likewise. * libsupc++/Makefile.in: Likewise. * po/Makefile.in: Likewise. * python/Makefile.in: Likewise. * src/Makefile.in: Likewise. * src/atomic.cc: Only define/use _GLIBCXX_ASM_SYMVER if _GLIBCXX_HAVE_SYMVER_RENAMING_RUNTIME_SUPPORT. * src/compatibility.cc: Likewise. * testsuite/Makefile.am (baseline_subdir): Define. (baseline_symbols): Use it. (new-abi-baseline): Likewise. * testsuite/Makefile.in: Regenerate. * config/abi/pre/gnu.ver (GLIBCXX_3.4.5): Enclose duplicates in #ifdef HAVE_SYMVER_RENAMING_RUNTIME_SUPPORT. (GLIBCXX_3.4.6): Likewise. * doc/xml/manual/configure.xml (--enable-symvers): Document sun style. * doc/xml/manual/abi.xml: Fix grammar. (Symbol versioning on the libstdc++.so binary): Fix mapfile path. (Incremental bumping of a library pre-defined macro): Fix c++config path. (Incremental bumping of a library pre-defined macro, _GLIBCPP_VERSION): Likewise. (Matching each specific C++ compiler release to a specific set of C++ include files): Fix acinclude.m4 path. (Prerequisites): Allow for Sun linker on Solaris 2.5+. Use proper link to Configuring. Fix acinclude.m4 path. (Checking Active): Allow for additional symbol versioning styles. Provide Solaris 2 example with pvs -r. (Bibliography): Update Linker and Libraries Guide, C++ Migration Guide entries. gcc: * doc/install.texi (Prerequisites): Document Perl requirement on Solaris 2. (Specific, *-*-solaris2*): Document GNU c++filt requirement. From-SVN: r161696
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog6
-rw-r--r--gcc/doc/install.texi13
2 files changed, 18 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 1d4b467..c1e0ae7 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,9 @@
+2010-07-02 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
+
+ * doc/install.texi (Prerequisites): Document Perl requirement on
+ Solaris 2.
+ (Specific, *-*-solaris2*): Document GNU c++filt requirement.
+
2010-07-02 Richard Guenther <rguenther@suse.de>
PR middle-end/44777
diff --git a/gcc/doc/install.texi b/gcc/doc/install.texi
index 6492903..6b1e6a3 100644
--- a/gcc/doc/install.texi
+++ b/gcc/doc/install.texi
@@ -456,8 +456,13 @@ snapshots of the development sources are also available via FTP@.
Necessary when regenerating @file{Makefile} dependencies in libiberty.
Necessary when regenerating @file{libiberty/functions.texi}.
Necessary when generating manpages from Texinfo manuals.
-Necessary when targetting Darwin, building libstdc++,
+Necessary when targetting Darwin, building @samp{libstdc++},
and not using @option{--disable-symvers}.
+Necessary when targetting Solaris 2 with Sun @command{ld}, building
+@samp{libstdc++}, and not using @option{--disable-symvers}. A helper
+scripts needs @samp{Glob.pm}, which is missing from @command{perl} 5.005
+included in Solaris~8. The bundled @command{perl} in Solaris~9 and up
+works.
Used by various scripts to generate some files included in SVN (mainly
Unicode-related and rarely changing) from source tables.
@@ -4109,6 +4114,12 @@ Solaris 10 cannot be used due to several bugs. Again, the current
version (2.20.1) is known to work, but generally lacks platform specific
features, so better stay with Sun @command{ld}.
+To enable symbol versioning in @samp{libstdc++} with Sun @command{ld},
+you need to have any version of GNU @command{c++filt}, which is part of
+GNU binutils. @samp{libstdc++} symbol versioning will be disabled if no
+appropriate version is found. Sun @command{c++filt} from the Sun Studio
+compilers does @emph{not} work.
+
Sun bug 4296832 turns up when compiling X11 headers with GCC 2.95 or
newer: @command{g++} will complain that types are missing. These headers
assume that omitting the type means @code{int}; this assumption worked for