Hi there,

Autoconf and Fortran experts please have a look at the patch proposed
below, which is necessary for the Libtool testsuite to pass in
combination with the Sun Fortran 95 8.0 compiler (Solaris 10).

I'm afraid the weeding out of double arguments could kill some libraries
mentioned between the two flags, but we can still fix that when we
encounter it..  I have no idea whether other linkers' whole-archive
flags should be accepted as well.

The thread about this is here[1].  The name of the bug reporter is
ÐÑÑÐÐÑÑÐÐÐ ÐÑÐÐ ÐÐÐÑÐÐÐÐÑ, but since UTF-8 is not 
supposed to appear
in text documentation[2], I replaced it with the ASCII transcription.

Regards,
Ralf

[1] http://lists.gnu.org/archive/html/bug-libtool/2005-03/msg00137.html
[2] wait for the final answer to
http://lists.gnu.org/archive/html/bug-standards/2005-03/msg00002.html
to appear in the archives.


2005-03-22  Ralf Wildenhues  <[EMAIL PROTECTED]>

        * lib/autoconf/fortran.m4 (_AC_FC_LIBRARY_LDFLAGS):
        Merge `-z option' as well for the benefit of Solaris link flags.  Pass
        whole-archive (-zallextract, -zdefaultextract) options in the hope of
        unique libraries, for the Sun Fortran 95 8.0 compiler.  Bug reported
        against Libtool by Yury Puhalsky <[EMAIL PROTECTED]>.

Index: lib/autoconf/fortran.m4
===================================================================
RCS file: /cvsroot/autoconf/autoconf/lib/autoconf/fortran.m4,v
retrieving revision 1.188
diff -u -r1.188 fortran.m4
--- lib/autoconf/fortran.m4     23 Feb 2005 23:24:49 -0000      1.188
+++ lib/autoconf/fortran.m4     22 Mar 2005 14:31:24 -0000
@@ -660,7 +660,7 @@
         -lkernel32)
           test x"$CYGWIN" != xyes && 
ac_cv_[]_AC_LANG_ABBREV[]_libs="$ac_cv_[]_AC_LANG_ABBREV[]_libs $ac_arg"
           ;;
-        -[[LRuY]])
+        -[[LRuYz]])
           # These flags, when seen by themselves, take an argument.
           # We remove the space between option and argument and re-iterate
           # unless we find an empty arg or a new option (starting with -)
@@ -684,6 +684,9 @@
           _AC_LIST_MEMBER_IF($ac_arg, $ac_cv_[]_AC_LANG_ABBREV[]_libs, ,
                              
ac_cv_[]_AC_LANG_ABBREV[]_libs="$ac_cv_[]_AC_LANG_ABBREV[]_libs $ac_arg")
           ;;
+       -zallextract*| -zdefaultextract)
+         ac_cv_[]_AC_LANG_ABBREV[]_libs="$ac_cv_[]_AC_LANG_ABBREV[]_libs 
$ac_arg"
+         ;;
           # Ignore everything else.
   esac
 done



Reply via email to