On Tue, Jan 10, 2017 at 10:42:52AM -0500, Aaron Conole wrote:
> This commit uses the $PACKAGE_VERSION automake variable to construct a
> release and version info combination which sets the library name to be:
> 
>    libfoo-$(OVS_MAJOR_VERSION).so.$(OVS_MINOR_VERSION).0.$(OVS_MICRO_VERSION)
> 
> where formerly, it was always:
> 
>    libfoo.so.1.0.0
> 
> This allows releases of Open vSwitch libraries to reflect which specific
> versions they came with, and sets up a psuedo ABI-versioning scheme.  In
> this fashion, future releases of Open vSwitch could be installed
> alongside older releases, allowing 3rd party utilities linked against
> previous versions to continue to function.
> 
> ex:
> 
> $ ldd /path/to/utility
>       linux-vdso.so.1 (0x00007ffe92cf6000)
>       libopenvswitch-2.so.6 => /lib64/libopenvswitch-2.so.6 
> (0x00007f733b7a3000)
>       libssl.so.10 => /lib64/libssl.so.10 (0x00007f733b530000)
> ...
> 
> Note the library name and version information.
> 
> CC: Ben Warren <b...@skyportsystems.com>
> Signed-off-by: Aaron Conole <acon...@redhat.com>
> ---
> This is labelled as RFC.  I'm not sure if it's appropriate to apply
> it to master before the 2.7 branch.

This makes sense to me.  I'd like to apply it before branching (or
cherry-pick it later if necessary), unless you know a reason why not.

I have a few comments.

s/ouput/output/ in the AC_MSG_CHECKING message.

I don't know why OVS_LT_RELINFO and OVS_LT_VERINFO are AC_SUBSTed,
because I don't see them used anywhere besides that Autoconf fragment.

I think that the explanation from the commit message would be nice to
have in a comment on OVS_LIBTOOL_VERSIONS or in OVS documentation
somewhere, because otherwise the reader has to figure out the intent.

Is this line from OVS_LIBTOOL_VERSIONS useful?  I'd expect
PACKAGE_VERSION to always be defined, since the Autoconf documentation
says that AC_INIT defines it:
    [test ".$PACKAGE_VERSION" = "." && PACKAGE_VERSION="$VERSION"

The AC_MSG_RESULT format is kind of hard for me to interpret.  How about
printing it as something like "library-X.so.Y.0.Z"?

Thanks,

Ben.
_______________________________________________
dev mailing list
d...@openvswitch.org
https://mail.openvswitch.org/mailman/listinfo/ovs-dev

Reply via email to