dbus/cmake/modules
Simon McVittie cd667b9556 build: Allow version number to be followed by "-" and a suffix
Some distributions are known to have shipped dbus 1.15.x as though it
was a stable release, and it isn't clear whether they knew that we use
the odd/even versioning convention like GLib does.

If we add a -alpha, -beta, -rc suffix to development versions starting
from 1.17.0, then distros that know we use odd/even versioning will
know that our development versions are not a stable-branch, and so will
distros that mistakenly think we use the "semantic versioning"
versioning convention popularized by <https://semver.org/>.

(We intentionally do not use semver, because semver would require us to
ship a new minor version every time we add new API, and we do not have
the resources to provide security support for an unlimited number of
minor versions in parallel: we need to be able to nominate a subset of
our releases as having longer-term security support, in a way that signals
to distros that these are the releases they should prefer to ship.)

CMake's `project()` doesn't allow this version number format[1], but
we intend to use version numbers where the (major, minor, micro) tuple
is enough to uniquely identify a release, so we can just tell CMake our
version number without the suffix and there will be no ambiguity.

Similarly, the dash is not allowed in GNU ld version scripts, so use
the form of the version number without the suffix there.

[1] https://gitlab.kitware.com/cmake/cmake/-/issues/16716

Helps: dbus#530
Signed-off-by: Simon McVittie <smcv@collabora.com>
2024-12-10 12:30:16 +00:00
..
CheckPrototypeExists.cmake * cmake: new directory, contains cmake build support. 2007-03-03 14:32:17 +00:00
CheckStructMember.cmake * cmake: new directory, contains cmake build support. 2007-03-03 14:32:17 +00:00
CPackInstallConfig.cmake Use project relative paths in CMake files 2022-07-25 14:14:57 -05:00
FindDocBookXSL.cmake cmake: Add BSD-style licenses 2022-11-29 13:33:53 +00:00
FindDoxygen.cmake * cmake: added doxygen support 2007-03-14 00:16:05 +00:00
FindGLIB2.cmake Fix SPDX license reference in FindGLIB2 2022-11-29 20:44:50 +00:00
FindLibIconv.cmake * cmake: new directory, contains cmake build support. 2007-03-03 14:32:17 +00:00
MacroGetenvWinPath.cmake Remove obsolete parameter in end... cmake keywords 2019-01-24 09:07:27 +01:00
MacroLibrary.cmake Use lower case cmake keywords 2019-01-23 21:34:24 +01:00
MacroOptionalFindPackage.cmake * cmake: new directory, contains cmake build support. 2007-03-03 14:32:17 +00:00
Macros.cmake cmake: Make intrusive (formerly embedded) tests into a separate option 2024-12-10 10:25:51 +00:00
MacrosMeson.cmake build: Allow version number to be followed by "-" and a suffix 2024-12-10 12:30:16 +00:00
ProjectSourceGroup.cmake Remove obsolete parameter in end... cmake keywords 2019-01-23 21:34:24 +01:00
Win32Macros.cmake cmake: Add BSD-style licenses 2022-11-29 13:33:53 +00:00