This is an automated email from the git hooks/post-receive script. x2go pushed a commit to branch master in repository libx2goclient. commit 1f67ba232527939d2b0ddd9352ce78edc293d3a8 Author: Mihai Moldovan <ionic@ionic.de> Date: Thu May 27 05:27:19 2021 +0200 configure.ac: rework versioning. We'll use a versioning scheme adopted from glib and slightly modified to not differentiate between stable and unstable/development releases. --- configure.ac | 98 +++++++++++++++++++++++++++++++++++++++++++++++++++++------- 1 file changed, 88 insertions(+), 10 deletions(-) diff --git a/configure.ac b/configure.ac index 604604e..eae65e3 100644 --- a/configure.ac +++ b/configure.ac @@ -1,7 +1,57 @@ AC_PREREQ([2.64]) +# We'll mostly adopt the glib versioning scheme here, because it generally +# makes sense. +# In contrast to glib's scheme, we'll not differentiate between stable and +# unstable versions, though. +# +# Making releases: +# either +# libx2goclient_minor_version += 1; +# libx2goclient_micro_version = 0; +# libx2goclient_interface_age += 1; +# or +# libx2goclient_micro_version += 1; +# libx2goclient_interface_age += 1; +# libx2goclient_binary_age += 1; +# if any functions have been added, set libx2goclient_interface_age to 0. +# if backwards compatibility has been broken, +# set libx2goclient_binary_age _and_ libx2goclient_interface_age to 0, while +# increasing libx2goclient_major_version and resetting +# libx2goclient_minor_version and libx2goclient_micro_version to 0. +# +# remember to add a LIBX2GOCLIENT_VERSION_xxx macro every time the minor +# version is bumped, as well as the LIBX2GOCLIENT_DEPRECATED_IN and +# LIBX2GOCLIENT_AVAILABLE_IN macros for that version - see FIXMEversion.h for +# further information. +# +# in easier to understand terms: +# +# <mclasen> on the stable branch, interface age == micro +# [for libx2goclient] on minor releases, reset +# interface age = micro version = 0 + +m4_define([libx2goclient_major_version], [0]) +m4_define([libx2goclient_minor_version], [0]) +m4_define([libx2goclient_micro_version], [0]) +m4_define([libx2goclient_interface_age], [0]) +m4_define([libx2goclient_binary_age], + [m4_eval(100 * libx2goclient_minor_version + libx2goclient_micro_version)]) +m4_define([libx2goclient_version], + [libx2goclient_major_version.libx2goclient_minor_version.libx2goclient_micro_version]) + +# libtool version related macros +m4_define([libx2goclient_lt_release], [libx2goclient_major_version.libx2goclient_minor_version]) +m4_define([libx2goclient_lt_current], + [m4_eval(100 * libx2goclient_minor_version + libx2goclient_micro_version - libx2goclient_interface_age)]) +m4_define([libx2goclient_lt_revision], [libx2goclient_interface_age]) +m4_define([libx2goclient_lt_age], [m4_eval(libx2goclient_binary_age - libx2goclient_interface_age)]) +m4_define([libx2goclient_lt_current_minus_age], + [m4_eval(libx2goclient_lt_current - libx2goclient_lt_age)]) + + AC_INIT([libx2goclient], - [0.0.5], + [libx2goclient_version], [https://github.com/ArcticaProject/libx2goclient/issues], [libx2goclient], [https://github.com/ArcticaProject/libx2goclient]) @@ -20,16 +70,44 @@ AC_CONFIG_MACRO_DIR([m4]) dnl make sure we keep ACLOCAL_FLAGS around for maintainer builds to work AC_SUBST(ACLOCAL_AMFLAGS, "\${ACLOCAL_FLAGS}") -# Before making a release, the LT_VERSION string should be modified. -# The string is of the form C:R:A. -# - If interfaces have been changed or added, but binary compatibility has -# been preserved, change to C+1:0:A+1 -# - If binary compatibility has been broken (eg removed or changed interfaces) -# change to C+1:0:0 -# - If the interface is the same as the previous version, change to C:R+1:A -LT_VERSION=18:4:1 -AC_SUBST(LT_VERSION) +LIBX2GOCLIENT_MAJOR_VERSION=libx2goclient_major_version +LIBX2GOCLIENT_MINOR_VERSION=libx2goclient_minor_version +LIBX2GOCLIENT_MICRO_VERSION=libx2goclient_micro_version +LIBX2GOCLIENT_INTERFACE_AGE=libx2goclient_interface_age +LIBX2GOCLIENT_BINARY_AGE=libx2goclient_binary_age +LIBX2GOCLIENT_VERSION=libx2goclient_version + +AC_SUBST(LIBX2GOCLIENT_MAJOR_VERSION) +AC_SUBST(LIBX2GOCLIENT_MINOR_VERSION) +AC_SUBST(LIBX2GOCLIENT_MICRO_VERSION) +AC_SUBST(LIBX2GOCLIENT_VERSION) +AC_SUBST(LIBX2GOCLIENT_INTERFACE_AGE) +AC_SUBST(LIBX2GOCLIENT_BINARY_AGE) + +AC_DEFINE(LIBX2GOCLIENT_MAJOR_VERSION, [libx2goclient_major_version], + [Define to the major libx2goclient version]) +AC_DEFINE(LIBX2GOCLIENT_MINOR_VERSION, [libx2goclient_minor_version], + [Define to the minor libx2goclient version]) +AC_DEFINE(LIBX2GOCLIENT_MICRO_VERSION, [libx2goclient_micro_version], + [Define to the micro libx2goclient version]) +AC_DEFINE(LIBX2GOCLIENT_INTERFACE_AGE, [libx2goclient_interface_age], + [Define to the libx2goclient interface age]) +AC_DEFINE(LIBX2GOCLIENT_BINARY_AGE, [libx2goclient_binary_age], + [Define to the libx2goclient binary age]) + +# libtool versioning +LT_RELEASE=libx2goclient_lt_release +LT_CURRENT=libx2goclient_lt_current +LT_REVISION=libx2goclient_lt_revision +LT_AGE=libx2goclient_lt_age +LT_CURRENT_MINUS_AGE=libx2goclient_lt_current_minus_age +AC_SUBST(LT_RELEASE) +AC_SUBST(LT_CURRENT) +AC_SUBST(LT_REVISION) +AC_SUBST(LT_AGE) +AC_SUBST(LT_CURRENT_MINUS_AGE) + AM_MAINTAINER_MODE -- Alioth's /home/x2go-admin/maintenancescripts/git/hooks/post-receive-email on /srv/git/code.x2go.org/libx2goclient.git