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 <[email protected]>
> Signed-off-by: Aaron Conole <[email protected]>
> ---
> 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
[email protected]
https://mail.openvswitch.org/mailman/listinfo/ovs-dev