This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "GNU Libtool".
The branch, master has been updated via b49ab52cb34a80aacf88698870649c7761e17c65 (commit) from 4fede0bc497021e28fde0635c1fa0da010cc2733 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit b49ab52cb34a80aacf88698870649c7761e17c65 Author: Gary V. Vaughan <g...@gnu.org> Date: Fri Dec 12 13:33:40 2014 +0000 libtool: more carefully avoid automatic -Cstd -Crun on Sun Pro CXX. * m4/libtool.m4 (_LT_FUNC_SUNCC_CSTD_ABI): New function factored out of repeated code. Take note of other known -Cstd incompatible compiler flags. (_LT_SYS_HIDDEN_LIBDEPS): Use it to determine whether -Cstd -Crun can be safely added to postdeps with Sun Pro CXX. * NEWS: Update. * NO-THANKS: Add Marc Glisse. Reported by Marc Glisse Signed-off-by: Gary V. Vaughan <g...@gnu.org> ----------------------------------------------------------------------- Summary of changes: NEWS | 8 ++++++++ NO-THANKS | 1 + m4/libtool.m4 | 54 ++++++++++++++++++++++++++++-------------------------- 3 files changed, 37 insertions(+), 26 deletions(-) diff --git a/NEWS b/NEWS index 87926bd..c2f667b 100644 --- a/NEWS +++ b/NEWS @@ -27,6 +27,14 @@ NEWS - list of user-visible changes between releases of GNU Libtool ia64-hp-hpux*, because the default system runtime loader path does not contain them. + - Previously, when using Sun C++ on Solaris or Linux, `-Cstd -Crun` + flags were added to $postdeps unless CXX or CXXFLAGS contained + `-library=stlport4`. Newer releases have added other compiler flags + that are also incompatible with `-Cstd -Crun`, so now we don't add + them if any of `-std=c++[0-9][0-9]`, `-library=stdcxx4` or + `-compat=g` were found in CXX or CXXFLAGS when the Sun C++ compiler + is detected. + * Noteworthy changes in release 2.4.4 (2014-11-29) [stable] diff --git a/NO-THANKS b/NO-THANKS index dc33834..7f59276 100644 --- a/NO-THANKS +++ b/NO-THANKS @@ -100,6 +100,7 @@ Lawrence Velázquez lar...@macports.org Lionel Landwerlin llandwer...@gmail.com Maciej Helminiak di...@wp.pl Mahesh Narayanamurthi mahesh.m...@gmail.com +Marc Glisse marc.gli...@inria.fr Marcel Loose lo...@astron.nl Markus Duft markus.d...@salomon.at Martin Doucha dou...@integri.cz diff --git a/m4/libtool.m4 b/m4/libtool.m4 index 0c120ff..22a7284 100644 --- a/m4/libtool.m4 +++ b/m4/libtool.m4 @@ -7422,6 +7422,28 @@ func_stripname_cnf () } # func_stripname_cnf ])# _LT_FUNC_STRIPNAME_CNF + +# _LT_FUNC_SUNCC_CSTD_ABI +# ----------------------- +# func_suncc_cstd_abi +# Several compiler flags select an ABI that is +# incompatible with the Cstd library. Avoid specifying +# it if any are in CXXFLAGS. +m4_defun([_LT_FUNC_SUNCC_CSTD_ABI], [[ +func_suncc_cstd_abi () +{ + case " $CXX $CXXFLAGS " in + *" -compat=g "*|*\ -std=c++[0-9][0-9]\ *|*" -library=stdcxx4 "*|*" -library=stlport4 "*) + suncc_use_cstd_abi=no + ;; + *) + suncc_use_cstd_abi=yes + ;; + esac +} # func_suncc_cstd_abi +]])# _LT_FUNC_SUNCC_CSTD_ABI + + # _LT_SYS_HIDDEN_LIBDEPS([TAGNAME]) # --------------------------------- # Figure out "hidden" library dependencies from verbose @@ -7430,6 +7452,7 @@ func_stripname_cnf () # objects, libraries and library flags. m4_defun([_LT_SYS_HIDDEN_LIBDEPS], [m4_require([_LT_FILEUTILS_DEFAULTS])dnl +m4_require([_LT_FUNC_SUNCC_CSTD_ABI])dnl AC_REQUIRE([_LT_FUNC_STRIPNAME_CNF])dnl # Dependencies to place before and after the object being linked: _LT_TAGVAR(predep_objects, $1)= @@ -7603,20 +7626,10 @@ interix[[3-9]]*) linux*) case `$CC -V 2>&1 | sed 5q` in - *Sun\ C*) - # Sun C++ 5.9 - - # 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 + *Sun\ C*) # Sun C++ 5.9 + func_suncc_cstd_abi - if test yes != "$solaris_use_stlport4"; then + if test no != "$suncc_use_cstd_abi"; then _LT_TAGVAR(postdeps,$1)='-library=Cstd -library=Crun' fi ;; @@ -7626,20 +7639,9 @@ linux*) solaris*) case $cc_basename in CC* | sunCC*) - # 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 + func_suncc_cstd_abi - # 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 yes != "$solaris_use_stlport4"; then + if test no != "$suncc_use_cstd_abi"; then _LT_TAGVAR(postdeps,$1)='-library=Cstd -library=Crun' fi ;; hooks/post-receive -- GNU Libtool