On Fri, 01 Jul 2011, Jan Stary wrote:
> > What exactly does the "0.0" mean in SHARED_LIBS?
> >
> > SHARED_LIBS += opencore-amrnb 0.0
> > SHARED_LIBS += opencore-amrwb 0.0
> >
> > Running 'make plist' suggests this; but if I build the software natively
> > (outside of the ports), the libraries are built and installed as *.so.0.2
> > Why is the above better than
> >
> > SHARED_LIBS += opencore-amrnb 0.2
> > SHARED_LIBS += opencore-amrwb 0.2
>
> In fact, pobj/opencore-amr-0.1.2/build-i386/shared_libs.log says:
>
> # SHARED_LIBS+= <libname> <obsd version> # <orig version>
> SHARED_LIBS += opencore-amrnb 0.2 # .0.2
> SHARED_LIBS += opencore-amrwb 0.2 # .0.2
>
> So that's what I have put in.
man bsd.port.mk
SHARED_LIBS List of shared libraries that the port may build, as a list
of the form `libname' `libversion'. Used to set variables
of the form LIBlibname_VERSION that are then used for
substitution by pkg_create(1). The porter is responsible
for making sure the port uses those version numbers when
shared libraries are built.
The intent is that the OpenBSD ports system must have
control over shared library versions because of global
changes that may require bumping the major version of every
shared library in the system, or simply because the third
party programmers do not understand the rules for shared
library versions, thus breaking the update mechanism. For
that reason it is advised to set libversion to 0.0 when
first importing a port.