libtool
[Top][All Lists]
Advanced

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

Re: Sun Studio: STL libraries


From: Tim Mooney
Subject: Re: Sun Studio: STL libraries
Date: Wed, 6 Feb 2008 18:05:56 -0600 (CST)

In regard to: Re: Sun Studio: STL libraries, Peter O'Gorman said (at 5:25pm...:

Peter O'Gorman wrote:
Tim Mooney wrote:
In regard to: Re: Sun Studio: STL libraries, Dan Lacher said (at 4:57pm
on...:

Even with what Tim has pointed out I am seeing the contrary with the
following:

 o Open MPI src base
 o Sun Studio 12
 o libtool 2.1b (just downloaded the latest)

After autogen has finished the aclocal.m4 ends up with -library=Cstd
-library=Crun both.  So that is what is used in the creation of the
libmpi_cxx.so.0
Looks like Albert's change from 2006-08-01 only went onto the 1.5 branch,
and not HEAD.  It should be on both branches.

Thanks, I will find it and put it on HEAD.

Um, libltdl/m4/libtool.m4 has this check in _LT_SYS_HIDDEN_LIBDEPS for
tag CXX:
solaris*)
 case $cc_basename in
 CC*)
   # The more standards-conforming stlport4 library is
   # incompatible with the Cstd library. Avoid specifying
   # it if it's in CXXFLAGS. Ignore libCrun as
   # -library=stlport4 depends on it.
   case " $CXX $CXXFLAGS " in
   *" -library=stlport4 "*)
     solaris_use_stlport4=yes
     ;;
   esac

   # Adding this requires a known-good setup of shared libraries for
   # Sun compiler versions before 5.6, else PIC objects from an old
   # archive will be linked into the output, leading to subtle bugs.
   if test "$solaris_use_stlport4" != yes; then
     _LT_TAGVAR(postdeps,$1)='-library=Cstd -library=Crun'
   fi
   ;;
 esac
 ;;

So color me confused.

Me too.  Note that the case could be improved, because the same logic
should apply if

        -library=stlport4_dbg

is present as well.

Tim, you say we still need to have -library=Crun for the stlport4 case?

More than likely, yes.  The stlport4 incompatibility is with libCstd,
not libCrun.

It looks like it was not added only because the stlport4 already depends
on it (I guess from ldd output?). So there should be no harm in adding
it explicitly.

But if it shouldn't be needed, it might be nice to leave it off.  I just
checked, and libstlport4 is indeed linked to libCrun, so it shouldn't
be needed explicitly.  I think I should repeat my test, and make sure
I'm on the right track.

Part of the problem was that I was building a project with a very old
version of libtool, and although I upgraded libtool to 1.5.26, I might
be remembering how things were behaving with the old libtool.

I'll rebuild the project and see if I get the same results.

Tim
--
Tim Mooney                              address@hidden
Information Technology Services         (701) 231-1076 (Voice)
Room 242-J6, IACC Building              (701) 231-8541 (Fax)
North Dakota State University, Fargo, ND 58105-5164




reply via email to

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