devel/boost: what's proper shared library version?
Jeremy Messenger
mezz7 at cox.net
Thu May 14 00:15:30 UTC 2009
On Wed, 13 May 2009 11:26:56 -0500, Alexander Churanov
<alexanderchuranov at gmail.com> wrote:
> Hi folks!
>
> I'm currently working on boost-1.39 port.
> The wiki http://wiki.freebsd.org/BoostPortingProject reflects most
> recent project status.
> And there is a question: what is the proper value for shared libraries
> installed by boost?
>
> As I can see from CVS, devel/boost started setting shared library
> version explicitly since 1.32.
> It was 2 for 1.32, then 3 for 1.33, then remained 3 till 1.35.
> When updating to 1.37 I've changed it to 4, just made +1.
>
> Now It's not clear what version should be used for 1.39.
> Boost.org provides no binary compatibility between versions of their
> libraries.
> It seems the best solution is to modify shared libraries version on
> each version update from boost.
>
> The choices are:
> 1) Just increment number further. It would be 5 for 1.39
This is a correct choice. But you only need to bump it if newer version
break the ABI. If the binary of library is compatibility, then do not bump
it.
> 2) Use what's boost installer provides (currently so.1.39.0)
You can try ltverhack (must have USE_AUTOTOOLS=libtool:15 with it) in
bsd.gnome.mk, it's what near all GNOME and a some outside ports use to get
same .so.N as Linux. Like our glib2/gtk2 has .so.0 just like Linux. If the
ltverhack doesn't work then stick with manual. By the way, ltverhack fix
libtool bug for FreeBSD to get correct .so.N.
> 3) Use own numbering system, linked to version of boost. For example:
> so.1390
No. This is very ugly, because its force all ports to rebuild at the each
time when boost update. It's not need to bump if ABI is compatibility.
> I don't like option (1), because *so version is not related to version
> of libraries.
The library version is unrelated with release version. It's merely an ABI
version, so it bumps when ABI break in the next update.
> For the (2) I've heard that on FreeBSD version must be a single number.
> I've never seen versions like 1390, as suggested in option (3).
>
> What approach to follow?
>
> Sincerely,
> Alexander Churanov,
> maintainer of devel/boost
--
mezz7 at cox.net - mezz at FreeBSD.org
FreeBSD GNOME Team
http://www.FreeBSD.org/gnome/ - gnome at FreeBSD.org
More information about the freebsd-ports
mailing list