Consistency with libtool wrt compatibility version and version
On OS X, SOVERSION
and VERSION
properties impact
- the filenames and symbolic links
- the
compatibility version
andversion
properties of the generated libraries.
On the other hand, libtool
generates different values of compatibility version
and version
than cmake. These values are are defined based on a version info of the form current:revision:age
. libtool's versioning is a bit weird, but the rule is:
-
ABI version
iscurrent - age
-
soversion
isABI
-
compatibility version
iscurrent
-
current version
iscompatibility.revision.0
In order for cmake to be able to generate the same result as libtool, we probably need to allow the compatibility version
and version
properties of the dylib files to be generated independently of SOVERSION and VERSION, or to allow passing a libtool version info property to targets.
Linking to zeromq issue https://github.com/zeromq/libzmq/issues/2887.