build: automatically compute soversion

Instead of requiring a manual soversion bump each time we do a
release, automatically compute it from the version number.

In the early days we used to not bump soversion, so there is an
hardcoded offset.

This will need to be updated once we ship 1.0, so assert that we're
still on 0.x.
This commit is contained in:
Simon Ser 2023-12-08 12:00:33 +01:00
parent 425f5c07fb
commit fe6f380f26

View File

@ -11,11 +11,11 @@ project(
],
)
# When doing a major or minor release, *always* increase soversion. This isn't
# necessary for bugfix releases. Increasing soversion is required because
# wlroots never guarantees ABI stability -- only API stability is guaranteed
# between minor releases.
soversion = 13
version = meson.project_version().split('-')[0]
version_major = version.split('.')[0]
version_minor = version.split('.')[1]
assert(version_major == '0')
soversion = version_minor.to_int() - 5
little_endian = target_machine.endian() == 'little'
big_endian = target_machine.endian() == 'big'