Date: prev next · Thread: first prev next last
2011 Archives by date, by thread · List index


Hi Caolán,

On Wed, 25 May 2011 09:36:55 +0100
Caolán McNamara <caolanm@redhat.com> wrote:

IIRC with the gbuild system the simple map files to restrict exports
were deprecated in favour of pure visibility markup. On the other
hand, how does this mesh with the more complicated symbol versioning
used in the ure map files, e.g. cppu/source/gcc3.map or salhelper's
one.

Well, these files have two things:
a) long lists of mangled names
b) versioned symbols

For a) it is painful to migrate, but can be represented by source
decoration.

b) is platform-specific: it only works on unix. It can also be done by
source decoration on gcc via __asm__(".symver foo"); IIRC. The only
valid usecases I came up with is:

- A C++ and unix-only extension uses the URE and links against an old
  version which implements a different version of the same symbol.
  However, I have not found that in the map files yet. I only found
  additional symbols being available for new versions. So maybe this is
  a nonissue (with C++ extension, unix-only and old being a cornercase
  already).
- A C++ and unix-only extension that wants to ensure to be compatible
  (in theory) with an old URE/OOo version, by linking explicitly
  against that version to make sure there are all symbols available in
  the old version already. In real life that requires testing with the
  complete (old) product anyway.

So is there a real usable scenario I missed? If not, IMHO we should
just drop the versioning (as we dont have one on Windows anyway) and
only provide the latest and greatest API.

Best,

Bjoern

-- 
https://launchpad.net/~bjoern-michaelsen



Context


Privacy Policy | Impressum (Legal Info) | Copyright information: Unless otherwise specified, all text and images on this website are licensed under the Creative Commons Attribution-Share Alike 3.0 License. This does not include the source code of LibreOffice, which is licensed under the Mozilla Public License (MPLv2). "LibreOffice" and "The Document Foundation" are registered trademarks of their corresponding registered owners or are in actual use as trademarks in one or more countries. Their respective logos and icons are also subject to international copyright laws. Use thereof is explained in our trademark policy.