GNU bug report logs -
#9535
sunpro and -library=stdcxx4
Previous Next
Reported by: Marc Glisse <marc.glisse <at> inria.fr>
Date: Sat, 17 Sep 2011 18:06:01 UTC
Severity: normal
Done: Gary V. Vaughan <gary <at> gnu.org>
Bug is archived. No further changes may be made.
To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 9535 in the body.
You can then email your comments to 9535 AT debbugs.gnu.org in the normal way.
Toggle the display of automated, internal messages from the tracker.
Report forwarded
to
owner <at> debbugs.gnu.org, bug-libtool <at> gnu.org
:
bug#9535
; Package
libtool
.
(Sat, 17 Sep 2011 18:06:01 GMT)
Full text and
rfc822 format available.
Acknowledgement sent
to
Marc Glisse <marc.glisse <at> inria.fr>
:
New bug report received and forwarded. Copy sent to
bug-libtool <at> gnu.org
.
(Sat, 17 Sep 2011 18:06:01 GMT)
Full text and
rfc822 format available.
Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):
Hello,
there was a commit in 2006 to support the sunpro option -library=stlport4:
2006-08-01 Albert Chin <china <at> thewrittenword.com>
* libltdl/m4/libtool.m4 (_LT_SYS_HIDDEN_LIBDEPS) [ solaris ]:
Don't set $postdeps to "-lCstd -lCrun" if
"-library=stlport4" set in CXXFLAGS as stlport4 C++
library incompatible with Cstd C++ library. Use
'-library=Cstd -library=Crun' instead of '-lCstd -lCrun'.
This compiler now also supports one more alternative
(solaris-only): -library=stdcxx4
I assume it should receive the same treatment as -library=stlport4 ?
--
Marc Glisse
Information forwarded
to
bug-libtool <at> gnu.org
:
bug#9535
; Package
libtool
.
(Mon, 03 Oct 2011 18:01:01 GMT)
Full text and
rfc822 format available.
Message #8 received at 9535 <at> debbugs.gnu.org (full text, mbox):
[Message part 1 (text/plain, inline)]
On 09/17/2011 05:19 AM, Marc Glisse wrote:
> Hello,
>
> there was a commit in 2006 to support the sunpro option -library=stlport4:
>
> 2006-08-01 Albert Chin <china <at> thewrittenword.com>
>
> * libltdl/m4/libtool.m4 (_LT_SYS_HIDDEN_LIBDEPS) [ solaris ]:
> Don't set $postdeps to "-lCstd -lCrun" if
> "-library=stlport4" set in CXXFLAGS as stlport4 C++
> library incompatible with Cstd C++ library. Use
> '-library=Cstd -library=Crun' instead of '-lCstd -lCrun'.
>
>
> This compiler now also supports one more alternative (solaris-only):
> -library=stdcxx4
> I assume it should receive the same treatment as -library=stlport4 ?
>
Is this all that's required?
Peter
[library_stdcxx4.patch (text/x-patch, attachment)]
Information forwarded
to
bug-libtool <at> gnu.org
:
bug#9535
; Package
libtool
.
(Mon, 03 Oct 2011 18:13:02 GMT)
Full text and
rfc822 format available.
Message #11 received at 9535 <at> debbugs.gnu.org (full text, mbox):
On Mon, 3 Oct 2011, Peter O'Gorman wrote:
> On 09/17/2011 05:19 AM, Marc Glisse wrote:
>> Hello,
>>
>> there was a commit in 2006 to support the sunpro option -library=stlport4:
>>
>> 2006-08-01 Albert Chin <china <at> thewrittenword.com>
>>
>> * libltdl/m4/libtool.m4 (_LT_SYS_HIDDEN_LIBDEPS) [ solaris ]:
>> Don't set $postdeps to "-lCstd -lCrun" if
>> "-library=stlport4" set in CXXFLAGS as stlport4 C++
>> library incompatible with Cstd C++ library. Use
>> '-library=Cstd -library=Crun' instead of '-lCstd -lCrun'.
>>
>>
>> This compiler now also supports one more alternative (solaris-only):
>> -library=stdcxx4
>> I assume it should receive the same treatment as -library=stlport4 ?
>
> Is this all that's required?
I would guess so, but I don't currently have a solaris 11 handy to check.
In any case it seems rather safe... (if user specifies -library=stdcxx4,
don't add -library=Cstd which is incompatible)
The option is documented here:
http://download.oracle.com/docs/cd/E18659_01/html/821-1383/gkcai.html
--
Marc Glisse
Information forwarded
to
bug-libtool <at> gnu.org
:
bug#9535
; Package
libtool
.
(Thu, 11 Dec 2014 16:25:01 GMT)
Full text and
rfc822 format available.
Message #14 received at submit <at> debbugs.gnu.org (full text, mbox):
On Sat, 17 Sep 2011, Marc Glisse wrote:
> there was a commit in 2006 to support the sunpro option -library=stlport4:
>
> 2006-08-01 Albert Chin <china <at> thewrittenword.com>
>
> * libltdl/m4/libtool.m4 (_LT_SYS_HIDDEN_LIBDEPS) [ solaris ]:
> Don't set $postdeps to "-lCstd -lCrun" if
> "-library=stlport4" set in CXXFLAGS as stlport4 C++
> library incompatible with Cstd C++ library. Use
> '-library=Cstd -library=Crun' instead of '-lCstd -lCrun'.
>
>
> This compiler now also supports one more alternative (solaris-only):
> -library=stdcxx4
> I assume it should receive the same treatment as -library=stlport4 ?
Looking at http://git.savannah.gnu.org/cgit/libtool.git/tree/m4/libtool.m4
the problem still seems present. Since then, several new ways of getting
an incompatible ABI have appeared, the most important one being
-std=c++11. Any -std=c++XX will give a gnu abi, as will -compat=g.
If you don't want to maintain complicated volatile conditions, it would be
simpler to remove the whole block of code that tries to add -library=Cstd
-library=Crun. It is easier for users to add -library=Cstd if they need it
than remove it when it breaks things.
--
Marc Glisse
Information forwarded
to
bug-libtool <at> gnu.org
:
bug#9535
; Package
libtool
.
(Fri, 12 Dec 2014 15:11:01 GMT)
Full text and
rfc822 format available.
Message #17 received at 9535 <at> debbugs.gnu.org (full text, mbox):
Hi Marc,
> On Dec 11, 2014, at 4:24 PM, Marc Glisse <marc.glisse <at> inria.fr> wrote:
>
> On Sat, 17 Sep 2011, Marc Glisse wrote:
>
>> there was a commit in 2006 to support the sunpro option -library=stlport4:
>>
>> 2006-08-01 Albert Chin <china <at> thewrittenword.com>
>>
>> * libltdl/m4/libtool.m4 (_LT_SYS_HIDDEN_LIBDEPS) [ solaris ]:
>> Don't set $postdeps to "-lCstd -lCrun" if
>> "-library=stlport4" set in CXXFLAGS as stlport4 C++
>> library incompatible with Cstd C++ library. Use
>> '-library=Cstd -library=Crun' instead of '-lCstd -lCrun'.
>>
>>
>> This compiler now also supports one more alternative (solaris-only): -library=stdcxx4
>> I assume it should receive the same treatment as -library=stlport4 ?
>
> Looking at http://git.savannah.gnu.org/cgit/libtool.git/tree/m4/libtool.m4 the problem still seems present. Since then, several new ways of getting an incompatible ABI have appeared, the most important one being -std=c++11. Any -std=c++XX will give a gnu abi, as will -compat=g.
>
> If you don't want to maintain complicated volatile conditions, it would be simpler to remove the whole block of code that tries to add -library=Cstd -library=Crun. It is easier for users to add -library=Cstd if they need it than remove it when it breaks things.
Thanks for the reminder.
I applied this just now:
http://git.savannah.gnu.org/cgit/libtool.git/commit/?id=b49ab52cb34a80aacf88698870649c7761e17c65
It doesn't change the logic of the 2006 patch, but it still seems wrong to me actually.
Shouldn't the generated libtool script be figuring out whether to add -lCstd -lCrun every
time it is called? Assuming the configure time CXX will be the only one ever used is not
ideal; and, worse, CXXFLAGS are not stored in libtool in any circumstance, and yet configure
determines the value of postdeps based on configure time CXXFLAGS contents.
Am I missing something, or is it better to move this machinery into libtool itself?
Cheers,
--
Gary V. Vaughan (gary AT gnu DOT org)
Information forwarded
to
bug-libtool <at> gnu.org
:
bug#9535
; Package
libtool
.
(Fri, 12 Dec 2014 15:57:02 GMT)
Full text and
rfc822 format available.
Message #20 received at 9535 <at> debbugs.gnu.org (full text, mbox):
On Fri, 12 Dec 2014, Gary V. Vaughan wrote:
> I applied this just now:
>
> http://git.savannah.gnu.org/cgit/libtool.git/commit/?id=b49ab52cb34a80aacf88698870649c7761e17c65
Thanks.
> It doesn't change the logic of the 2006 patch, but it still seems wrong to me actually.
To me as well, but it seemed more likely to work if I only suggested a
small change ;-)
> Shouldn't the generated libtool script be figuring out whether to add -lCstd -lCrun every
> time it is called? Assuming the configure time CXX will be the only one ever used is not
> ideal; and, worse, CXXFLAGS are not stored in libtool in any circumstance, and yet configure
> determines the value of postdeps based on configure time CXXFLAGS contents.
>
> Am I missing something, or is it better to move this machinery into libtool itself?
I guess it would be better to have it either completely in libtool (figure
it out for each invocation) or completely in autoconf (let it add
-library=Cstd to LDFLAGS for shared libraries), or not at all and let
users specify CXX="CC -library=Cstd"... I don't have a strong opinion
there.
--
Marc Glisse
Information forwarded
to
bug-libtool <at> gnu.org
:
bug#9535
; Package
libtool
.
(Fri, 12 Dec 2014 18:53:01 GMT)
Full text and
rfc822 format available.
Message #23 received at 9535 <at> debbugs.gnu.org (full text, mbox):
Hi Marc,
> On Dec 12, 2014, at 3:56 PM, Marc Glisse <marc.glisse <at> inria.fr> wrote:
>
> On Fri, 12 Dec 2014, Gary V. Vaughan wrote:
>
>> I applied this just now:
>>
>> http://git.savannah.gnu.org/cgit/libtool.git/commit/?id=b49ab52cb34a80aacf88698870649c7761e17c65
>
> Thanks.
>
>> It doesn't change the logic of the 2006 patch, but it still seems wrong to me actually.
>
> To me as well, but it seemed more likely to work if I only suggested a small change ;-)
True enough.
Here's a better one given that you confirmed my fears of the original being brain damaged:
http://git.savannah.gnu.org/cgit/libtool.git/commit/?id=97f03a437983f106e41de45a0d1baf5a3ec5f04d
Cheers,
--
Gary V. Vaughan (gary AT gnu DOT org)
Reply sent
to
Gary V. Vaughan <gary <at> gnu.org>
:
You have taken responsibility.
(Fri, 12 Dec 2014 18:54:02 GMT)
Full text and
rfc822 format available.
Notification sent
to
Marc Glisse <marc.glisse <at> inria.fr>
:
bug acknowledged by developer.
(Fri, 12 Dec 2014 18:54:03 GMT)
Full text and
rfc822 format available.
Message #28 received at 9535-close <at> debbugs.gnu.org (full text, mbox):
Hi Marc,
> On Dec 12, 2014, at 3:56 PM, Marc Glisse <marc.glisse <at> inria.fr> wrote:
>
> On Fri, 12 Dec 2014, Gary V. Vaughan wrote:
>
>> I applied this just now:
>>
>> http://git.savannah.gnu.org/cgit/libtool.git/commit/?id=b49ab52cb34a80aacf88698870649c7761e17c65
>
> Thanks.
>
>> It doesn't change the logic of the 2006 patch, but it still seems wrong to me actually.
>
> To me as well, but it seemed more likely to work if I only suggested a small change ;-)
True enough.
Here's a better one given that you confirmed my fears of the original being brain damaged:
http://git.savannah.gnu.org/cgit/libtool.git/commit/?id=97f03a437983f106e41de45a0d1baf5a3ec5f04d
Cheers,
--
Gary V. Vaughan (gary AT gnu DOT org)
bug archived.
Request was from
Debbugs Internal Request <help-debbugs <at> gnu.org>
to
internal_control <at> debbugs.gnu.org
.
(Sat, 10 Jan 2015 12:24:04 GMT)
Full text and
rfc822 format available.
This bug report was last modified 10 years and 224 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.