libtool-patches
[Top][All Lists]
Advanced

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

Re: solaris archive_cmds change for sun CC c++ compiler


From: Peter O'Gorman
Subject: Re: solaris archive_cmds change for sun CC c++ compiler
Date: Sun, 24 Jul 2005 21:20:29 +0900
User-agent: Mozilla Thunderbird 1.0.2 (Macintosh/20050317)

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Albert Chin wrote:
| On Fri, Jul 22, 2005 at 09:55:13PM +0900, Peter O'Gorman wrote:
|>| Why do you remove $predep_objects and $postdep_objects?
|>
|>Because they are always empty.
|
|
| Shouldn't that be the focus of a different patch? Maybe
| $predep_objects and $postdep_objects are empty for aCC on HP-UX and
| cxx on Tru64 UNIX as well? I'd rather see this patch encompass only
| the required changes to affect adding -lCstd -lCrun and leave the rest
| for another patch where $predep_objects and $postdep_objects would be
| removed for all CXX tags. I'd kinda rather them remain as it makes
| less difference between the CXX tags.
|

Okay, whatever, I applied these three patches.

Peter
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (Darwin)

iQCVAwUBQuOHjLiDAg3OZTLPAQI+TgP8D7SCSRqSp5tISYGz7jtxhvUH1+UVkxqO
j/D0E1Y0T23oDo0pE45gvNPEgSg74ZTYOh0tfOZAnL78D8dR1NhIUWRT9kcuwFxj
eFDY7xT5YELi3XQdPlquOltjJOlr5PSm7MavoQ+0sof5q9c1ydOcShdJFZ39fY8k
wAdEv8liZRg=
=qctJ
-----END PGP SIGNATURE-----
Index: ChangeLog
2005-07-23 Peter O'Gorman  <address@hidden>

        * m4/libtool.m4 (CXX, archive_cmds) [sun]: Add -lCstd, -lCrun
        and -lc for c++ builds with Sun C++ and Centerline C++..
        Reported by Albert Chin-A-Young <address@hidden>

from  Ralf Wildenhues  <address@hidden>
Index: m4/libtool.m4
===================================================================
RCS file: /cvsroot/libtool/libtool/m4/libtool.m4,v
retrieving revision 1.203
diff -u -3 -p -u -r1.203 libtool.m4
--- m4/libtool.m4 11 Jul 2005 12:11:25 -0000 1.203
+++ m4/libtool.m4 24 Jul 2005 12:12:03 -0000
@@ -5542,10 +5542,12 @@ if test "$_lt_caught_CXX_error" != yes; 
         case $cc_basename in
           CC*)
            # Sun C++ 4.2, 5.x and Centerline C++
+            _LT_TAGVAR(archive_cmds_need_lc,$1)=yes
+            _LT_TAGVAR(postdeps,$1)='-lCstd -lCrun'
            _LT_TAGVAR(no_undefined_flag, $1)=' -zdefs'
-           _LT_TAGVAR(archive_cmds, $1)='$CC -G${allow_undefined_flag} -nolib 
-h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects 
$compiler_flags'
+           _LT_TAGVAR(archive_cmds, $1)='$CC -G${allow_undefined_flag}  
-h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects 
$compiler_flags'
            _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > 
$lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: 
*; };" >> $lib.exp~
-             $CC -G${allow_undefined_flag} -nolib ${wl}-M ${wl}$lib.exp 
-h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects 
$compiler_flags~$RM $lib.exp'
+             $CC -G${allow_undefined_flag} ${wl}-M ${wl}$lib.exp -h$soname -o 
$lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM 
$lib.exp'
 
            _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
            _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
@@ -5565,15 +5567,7 @@ if test "$_lt_caught_CXX_error" != yes; 
            esac
            _LT_TAGVAR(link_all_deplibs, $1)=yes
 
-           # Commands to make compiler produce verbose output that lists
-           # what "hidden" libraries, object files and flags are used when
-           # linking a shared library.
-           #
-           # There doesn't appear to be a way to prevent this compiler from
-           # explicitly linking system object files so we need to strip them
-           # from the output so that they don't get included in the library
-           # dependencies.
-           output_verbose_link_cmd='templist=`$CC -G $CFLAGS -v 
conftest.$objext 2>&1 | $GREP "\-[[LR]]"`; list=""; for z in $templist; do case 
$z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list 
$z";;esac; done; $ECHO "X$list" | $Xsed'
+           output_verbose_link_cmd='echo'
 
            # Archives containing C++ object files must be created using
            # "CC -xar", where "CC" is the Sun C++ compiler.  This is
Index: ChangeLog
2005-07-24  Peter O'Gorman  <address@hidden>

        * libtool.m4 (CXX, archive_cmds) [sun]: Add -lCstd, -lCrun
        and -lc for c++ builds with Sun C++ and Centerline C++..
        Reported by Albert Chin-A-Young <address@hidden>

from  Peter Breitenlohner  <address@hidden>
Index: libtool.m4
===================================================================
RCS file: /cvsroot/libtool/libtool/Attic/libtool.m4,v
retrieving revision 1.314.2.96
diff -u -3 -p -u -r1.314.2.96 libtool.m4
--- libtool.m4 8 Jul 2005 15:03:15 -0000 1.314.2.96
+++ libtool.m4 24 Jul 2005 12:19:38 -0000
@@ -3475,10 +3475,12 @@ case $host_os in
     case $cc_basename in
       CC*)
        # Sun C++ 4.2, 5.x and Centerline C++
+        _LT_AC_TAGVAR(archive_cmds_need_lc,$1)=yes
+        _LT_AC_TAGVAR(postdeps,$1)='-lCstd -lCrun'
        _LT_AC_TAGVAR(no_undefined_flag, $1)=' -zdefs'
-       _LT_AC_TAGVAR(archive_cmds, $1)='$CC -G${allow_undefined_flag} -nolib 
-h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects 
$compiler_flags'
+       _LT_AC_TAGVAR(archive_cmds, $1)='$CC -G${allow_undefined_flag}  
-h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects 
$compiler_flags'
        _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$echo "{ global:" > 
$lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~$echo 
"local: *; };" >> $lib.exp~
-       $CC -G${allow_undefined_flag} -nolib ${wl}-M ${wl}$lib.exp -h$soname -o 
$lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$rm 
$lib.exp'
+       $CC -G${allow_undefined_flag}  ${wl}-M ${wl}$lib.exp -h$soname -o $lib 
$predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$rm $lib.exp'
 
        _LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
        _LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
@@ -3498,15 +3500,7 @@ case $host_os in
        esac
        _LT_AC_TAGVAR(link_all_deplibs, $1)=yes
 
-       # Commands to make compiler produce verbose output that lists
-       # what "hidden" libraries, object files and flags are used when
-       # linking a shared library.
-       #
-       # There doesn't appear to be a way to prevent this compiler from
-       # explicitly linking system object files so we need to strip them
-       # from the output so that they don't get included in the library
-       # dependencies.
-       output_verbose_link_cmd='templist=`$CC -G $CFLAGS -v conftest.$objext 
2>&1 | grep "\-[[LR]]"`; list=""; for z in $templist; do case $z in 
conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; 
done; echo $list'
+       output_verbose_link_cmd='echo'
 
        # Archives containing C++ object files must be created using
        # "CC -xar", where "CC" is the Sun C++ compiler.  This is
Index: ChangeLog
2005-07-23 Peter O'Gorman  <address@hidden>

        * m4/libtool.m4 (CXX, archive_cmds) [sun]: Add -lCstd, -lCrun
        and -lc for c++ builds with Sun C++ and Centerline C++..
        Reported by Albert Chin-A-Young <address@hidden>

from  Ralf Wildenhues  <address@hidden>
Index: m4/libtool.m4
===================================================================
RCS file: /cvsroot/libtool/libtool/m4/libtool.m4,v
retrieving revision 1.125.2.66
diff -u -3 -p -u -r1.125.2.66 libtool.m4
--- m4/libtool.m4 8 Jul 2005 15:01:00 -0000 1.125.2.66
+++ m4/libtool.m4 24 Jul 2005 12:13:53 -0000
@@ -5493,10 +5493,12 @@ if test "$_lt_caught_CXX_error" != yes; 
         case $cc_basename in
           CC*)
            # Sun C++ 4.2, 5.x and Centerline C++
+            _LT_TAGVAR(archive_cmds_need_lc,$1)=yes
+            _LT_TAGVAR(postdeps,$1)='-lCstd -lCrun'
            _LT_TAGVAR(no_undefined_flag, $1)=' -zdefs'
-           _LT_TAGVAR(archive_cmds, $1)='$CC -G${allow_undefined_flag} -nolib 
-h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects 
$compiler_flags'
+           _LT_TAGVAR(archive_cmds, $1)='$CC -G${allow_undefined_flag}  
-h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects 
$compiler_flags'
            _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > 
$lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: 
*; };" >> $lib.exp~
-             $CC -G${allow_undefined_flag} -nolib ${wl}-M ${wl}$lib.exp 
-h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects 
$compiler_flags~$RM $lib.exp'
+             $CC -G${allow_undefined_flag} ${wl}-M ${wl}$lib.exp -h$soname -o 
$lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM 
$lib.exp'
 
            _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
            _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
@@ -5516,15 +5518,7 @@ if test "$_lt_caught_CXX_error" != yes; 
            esac
            _LT_TAGVAR(link_all_deplibs, $1)=yes
 
-           # Commands to make compiler produce verbose output that lists
-           # what "hidden" libraries, object files and flags are used when
-           # linking a shared library.
-           #
-           # There doesn't appear to be a way to prevent this compiler from
-           # explicitly linking system object files so we need to strip them
-           # from the output so that they don't get included in the library
-           # dependencies.
-           output_verbose_link_cmd='templist=`$CC -G $CFLAGS -v 
conftest.$objext 2>&1 | $GREP "\-[[LR]]"`; list=""; for z in $templist; do case 
$z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list 
$z";;esac; done; $ECHO "X$list" | $Xsed'
+           output_verbose_link_cmd='echo'
 
            # Archives containing C++ object files must be created using
            # "CC -xar", where "CC" is the Sun C++ compiler.  This is

reply via email to

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