summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPekka Paalanen <pekka.paalanen@collabora.co.uk>2016-08-15 14:06:15 +0300
committerPekka Paalanen <pekka.paalanen@collabora.co.uk>2016-08-15 18:07:06 +0300
commitb40b827f83c476c52c1478f16b37db9facf905e3 (patch)
tree900f44ce2ffec2a8bd389bd174a115385b5a8b4e
parent85a4e19944af0971e0acc5597c92fc21c17cdabe (diff)
configure.ac: check weston vs. libweston versions
Check that the defined versions for Weston and libweston are consistent and according to the version bumping rules: - In pre-release and only pre-release versions the weston and libweston may differ - when they differ, libweston version must be exactly (weston.major+1).0.0 - otherwise, the versions must be exactly the same. Signed-off-by: Pekka Paalanen <pekka.paalanen@collabora.co.uk> Reviewed-by: Quentin Glidic <sardemff7+git@sardemff7.net> Acked-by: Jonas Ã…dahl <jadahl@gmail.com> Reviewed-by: Emil Velikov <emil.velikov@collabora.com>
-rw-r--r--configure.ac32
1 files changed, 32 insertions, 0 deletions
diff --git a/configure.ac b/configure.ac
index 76db7591..cac3e7df 100644
--- a/configure.ac
+++ b/configure.ac
@@ -39,6 +39,38 @@ AM_INIT_AUTOMAKE([1.11 parallel-tests foreign no-dist-gzip dist-xz color-tests s
AM_SILENT_RULES([yes])
+# Check Weston and libweston version consistency
+m4_if(m4_cmp(weston_micro_version, [90]), [-1],
+ [
+ dnl micro < 90
+ dnl A final or stable release, not a pre-release:
+ dnl Weston and libweston versions must match.
+ m4_if(weston_version, libweston_major_version[.]libweston_minor_version[.]libweston_patch_version,
+ [],
+ [AC_MSG_ERROR([Weston and libweston version mismatch for a final release])])
+ ],
+ [
+ dnl A pre-release:
+ dnl libweston must be equal or greater than weston.
+ m4_case(m4_list_cmp([weston_major_version, weston_minor_version, weston_micro_version],
+ [libweston_major_version, libweston_minor_version, libweston_patch_version]),
+ [-1], [
+ dnl weston < libweston
+ dnl libweston must be weston_major+1.0.0
+ m4_if(m4_eval(weston_major_version+1)[.0.0],
+ libweston_major_version[.]libweston_minor_version[.]libweston_patch_version,
+ [],
+ [AC_MSG_ERROR([libweston version is greater but not (weston_major+1).0.0])])
+ ],
+ [0], [
+ dnl weston == libweston, all ok
+ ],
+ [1], [
+ dnl weston > libweston, wrong
+ AC_MSG_ERROR([Weston version is greater than libweston.])
+ ])
+ ])
+
# Check for programs
AC_PROG_CC
AC_PROG_SED