bug-libtool
[Top][All Lists]
Advanced

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

Re: libtool issue with latest Sun cc compiler on Linux


From: Ralf Wildenhues
Subject: Re: libtool issue with latest Sun cc compiler on Linux
Date: Sat, 17 Feb 2007 09:23:33 +0100
User-agent: Mutt/1.5.13 (2006-08-11)

* Terry D. Dontje wrote on Fri, Feb 16, 2007 at 08:45:09PM CET:
> Very interesting, I think it is coming from ld look at the following:
[...]
> address@hidden:~/tmp/compissue> ld --version
> GNU ld version 2.16.91.0.7-amd-sles9 20060317

Thanks, that's what I wanted to know.

Please note that currently, for portability it is necessary that you add
at least one object file to a library.  I'm slowly working towards
lifting this restriction in Libtool (and Automake), but am still a ways
away from it.  Adding such an object is also likely to be more efficient
than the worst-case fix in Libtool: extracting one of the convenience
archives and listing all its objects on the command line.  Note that
while it may be possible to have Libtool add a dummy object itself,
doing this portably is a pain.  I'd be very reluctant to go that route.

I'm removing the /dev/null, as shown below, in HEAD and branch-1-5,
and adding you to THANKS.

Cheers,
Ralf

HEAD:
2007-02-17  Ralf Wildenhues  <address@hidden>

        * libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS) [ linux ]
        <whole_archive_flag_spec>: For Sun C/C++ 5.9, do not add
        /dev/null as dummy object, it fails with GNU ld version
        2.16.91.0.7-amd-sles9.  Report by Terry D. Dontje.
        * THANKS: Update.

Index: libltdl/m4/libtool.m4
===================================================================
RCS file: /cvsroot/libtool/libtool/libltdl/m4/libtool.m4,v
retrieving revision 1.94
diff -u -r1.94 libtool.m4
--- libltdl/m4/libtool.m4       14 Feb 2007 18:55:24 -0000      1.94
+++ libltdl/m4/libtool.m4       17 Feb 2007 08:14:54 -0000
@@ -4194,7 +4194,7 @@
        esac
        case `$CC -V 2>&1 | sed 5q` in
        *Sun\ C*)                       # Sun C 5.9
-         _LT_TAGVAR(whole_archive_flag_spec, 
$1)='${wl}--whole-archive`new_convenience=; for conv in $convenience\"\"; do 
test -z \"$conv\" || new_convenience=\"$new_convenience,$conv\"; done; $ECHO 
\"$new_convenience\"` ${wl}--no-whole-archive /dev/null'
+         _LT_TAGVAR(whole_archive_flag_spec, 
$1)='${wl}--whole-archive`new_convenience=; for conv in $convenience\"\"; do 
test -z \"$conv\" || new_convenience=\"$new_convenience,$conv\"; done; $ECHO 
\"$new_convenience\"` ${wl}--no-whole-archive'
          tmp_sharedflag='-G' ;;
        *Sun\ F*)                       # Sun Fortran 8.3
          tmp_sharedflag='-G' ;;

branch-1-5:
2007-02-17  Ralf Wildenhues  <address@hidden>

        * libtool.m4 (AC_LIBTOOL_PROG_LD_SHLIBS) [ linux ]
        <whole_archive_flag_spec>: For Sun C/C++ 5.9, do not add
        /dev/null as dummy object, it fails with GNU ld version
        2.16.91.0.7-amd-sles9.  Report by Terry D. Dontje.
        * THANKS: Update.

Index: libtool.m4
===================================================================
RCS file: /cvsroot/libtool/libtool/Attic/libtool.m4,v
retrieving revision 1.314.2.171
diff -u -r1.314.2.171 libtool.m4
--- libtool.m4  11 Feb 2007 13:37:02 -0000      1.314.2.171
+++ libtool.m4  17 Feb 2007 08:16:28 -0000
@@ -5691,7 +5691,7 @@
        esac
        case `$CC -V 2>&1 | sed 5q` in
        *Sun\ C*)                       # Sun C 5.9
-         _LT_AC_TAGVAR(whole_archive_flag_spec, 
$1)='${wl}--whole-archive`new_convenience=; for conv in $convenience\"\"; do 
test -z \"$conv\" || new_convenience=\"$new_convenience,$conv\"; done; $echo 
\"$new_convenience\"` ${wl}--no-whole-archive /dev/null'
+         _LT_AC_TAGVAR(whole_archive_flag_spec, 
$1)='${wl}--whole-archive`new_convenience=; for conv in $convenience\"\"; do 
test -z \"$conv\" || new_convenience=\"$new_convenience,$conv\"; done; $echo 
\"$new_convenience\"` ${wl}--no-whole-archive'
          tmp_sharedflag='-G' ;;
        *Sun\ F*)                       # Sun Fortran 8.3
          tmp_sharedflag='-G' ;;




reply via email to

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