Incorrect ABI-versioning on OS X
Building from git master on darwin gives a libpango with an incorrect -compatibility_version setting. If I have a libpango from the autotools/libtool days installed and then upgrade to one with the meson build, every binary that was previously compiled and linked against the lib crashes at runtime because the flags indicate a downgrading/backward-incompatible ABI. By one of the later configure.ac/Makefile.am revisions I get -version-info 4200:1:4200
, which libtool translates as -compatibility_version 4201
. But the current meson.build result uses the following from the top-level meson.build:
# Maintain compatibility with autotools on macOS
if host_machine.system() == 'darwin'
common_ldflags += [ '-compatibility_version 1', '-current_version 1.0', ]
endif
The value of -compatibility_version of any specific library is never allowed to decrease, or else dyld will refuse to load the library at runtime.