PGI compilers are currently the only ones for which libtool uses
comma-separated archives in whole_archive_flag_spec currently.  The
hack below makes them work for reload_cmds, too, where we use $LD
directly.  Exposed by duplicate_conv.test.  :)

OK to apply this patch (HEAD and branch-1-5)?

Cheers,
Ralf

        * libltdl/config/ltmain.m4sh (func_mode_link) [ linux ]:
        PGI: for `reload_cmds', we not only need to get rid of `$wl',
        but also turn comma into space so $LD understands
        whole_archive_flag_spec correctly.

Index: libltdl/config/ltmain.m4sh
===================================================================
RCS file: /cvsroot/libtool/libtool/libltdl/config/ltmain.m4sh,v
retrieving revision 1.35
diff -u -r1.35 ltmain.m4sh
--- libltdl/config/ltmain.m4sh  5 Feb 2006 11:06:31 -0000       1.35
+++ libltdl/config/ltmain.m4sh  10 Feb 2006 17:27:47 -0000
@@ -5419,12 +5422,14 @@
       reload_conv_objs=
       gentop=
       # reload_cmds runs $LD directly, so let us get rid of
-      # -Wl from whole_archive_flag_spec
+      # -Wl from whole_archive_flag_spec and hope we can get by with
+      # turning comma into space..
       wl=
 
       if test -n "$convenience"; then
        if test -n "$whole_archive_flag_spec"; then
-         eval reload_conv_objs=\"\$reload_objs $whole_archive_flag_spec\"
+         eval tmp_whole_archive_flags=\"$whole_archive_flag_spec\"
+         reload_conv_objs=$reload_objs\ `$ECHO "X$tmp_whole_archive_flags" | 
$Xsed -e 's|,| |g'`
        else
          gentop="$output_objdir/${obj}x"
          generated="$generated $gentop"


Reply via email to