bug-libtool
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bug#16452: opt_duplicate_compiler_generated_deps is harmful on Solaris


From: Rainer Orth
Subject: bug#16452: opt_duplicate_compiler_generated_deps is harmful on Solaris
Date: Wed, 15 Jan 2014 13:59:11 +0100
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/24.3 (usg-unix-v)

As described in GCC bug PR target/59788

        Mixing libc and libgcc_s unwinders on 64-bit Solaris 10+/x86 breaks EH
        http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59788

linking e.g. C++ code with -Wl,-Bdirect on 64-bit Solaris 10+/x86 causes
unwinding failures caused by mixing the libc and libgcc_s unwinders in a
single executable.

I've fixed this by a patch to cause every shared object to be linked
with a mapfile to force direct binding to the libgcc_s unwinder,
avoiding the harmful mixing.  Unfortunately, for this change to work
requires to disable the opt_duplicate_compiler_generated_deps
optimization (included in that patch for the copy of libtool in the gcc
tree):

diff --git a/ltmain.sh b/ltmain.sh
--- a/ltmain.sh
+++ b/ltmain.sh
@@ -976,7 +976,7 @@ func_enable_tag ()
 
 
   case $host in
-    *cygwin* | *mingw* | *pw32* | *cegcc*)
+    *cygwin* | *mingw* | *pw32* | *cegcc* | *solaris2* )
       # don't eliminate duplications in $postdeps and $predeps
       opt_duplicate_compiler_generated_deps=:
       ;;

I think that patch should go into upstream libtool as well, although
this won't help for all the copies of libtool already included in
released packages.  As described in the PR, I'm uncertain how to move
forward here.  Suggestions?

Thanks.
        Rainer

-- 
-----------------------------------------------------------------------------
Rainer Orth, Center for Biotechnology, Bielefeld University





reply via email to

[Prev in Thread] Current Thread [Next in Thread]