Re: [pcre-dev] [Bug 1278] pcre 8.31 fails to link with Sun S…

Startseite
Nachricht löschen
Autor: ph10
Datum:  
To: 1278
CC: pcre-dev
Betreff: Re: [pcre-dev] [Bug 1278] pcre 8.31 fails to link with Sun Studio 12 on Solaris 10 Update 10
On Fri, 27 Dec 2013, Dagobert Michelsen wrote:

> basically all versions after the addition of -Wl,-i… are affected.


> The issue with the name mangling is currently done by the assumption that only
> g++ and assorted linkers accept -i on legacy function aliasing. Before going
> deeper in the discussion I would like to know if the introduced function alias
> is MacOS-specific as the comment suggests. If yes, I suggest shielding the test
> to the MacOS-platform where to my knowledge gcc is the only compiler anyway.


I'm afraid I really don't know, especially as this appears to relate
only to pcrecpp - and I'm just an old-fashioned C programmer. The C++
stuff is all contributed; unfortunately, at the present time there is no
maintainer for the C++ bits of PCRE.

I've been scanning the ChangeLog, and I've found this for version 7.7
(May 2008):

2.  Applied Craig's patch to pcrecpp.cc to restore ABI compatibility with
    pre-7.6 versions, which defined a global no_arg variable instead of putting
    it in the RE class. (See also #8 below.)


8.  Applied Craig's patch to pcrecpp.cc to fix a problem in OS X that was
    caused by fix #2  above. (Subsequently also a second patch to fix the
    first patch. And a third patch - this was a messy problem.)


So it looks as if this issue is quite old now (even this bug is over a
year old). It does also look as if it was a general patch that had to be
modified to work with OS X. However, the ChangeLog mentions pcrecpp.cc
and not configure.ac - but that may be a typo - aha!

A check shows that the 7.6 configure.ac does not have this code,
whereas the 7.7 configure.ac does, so the ChangeLog is inaccurate.

But ... I don't really know what to do! We could just get rid of this
old compatibility feature - it's now over 5 years old, though I have no
doubt that somebody would be caught.

Philip

--
Philip Hazel