From f9a14723ef80c4f38b814556fb16084e2b64d426 Mon Sep 17 00:00:00 2001 From: Alexei Sheplyakov Date: Fri, 10 Dec 2010 19:06:17 +0200 Subject: [PATCH 1/1] Don't try to tie the library version to the package version number. Use curret:release:age to indicate ABI changes instead. Hard-code LT_RELEASE to 1.5 to avoid spurious SONAME change (current code is binary-compatible with GiNaC 1.5.8). --- configure.ac | 23 +++++++++++++---------- 1 file changed, 13 insertions(+), 10 deletions(-) diff --git a/configure.ac b/configure.ac index 21795f4c..602a8448 100644 --- a/configure.ac +++ b/configure.ac @@ -12,11 +12,12 @@ dnl version number. In particular, library version is OS dependent. dnl dnl When making releases, do dnl 1. Increment ginac_lt_revision -dnl 2. If any interfaces have been added since the last release, increment -dnl ginac_lt_current and set ginac_lt_revision to 0. -dnl 3. If any interfaces have been changed or removed since the last release, -dnl make sure you increment ginac_minor_version above and reset both -dnl ginac_lt_current and ginac_lt_revision to 0. +dnl 2. If any interfaces have been added, removed, or changed since the last +dnl release, increment ginac_lt_current and set ginac_lt_revision to 0. +dnl 3. If any interfaces have been added since the last release, increment +dnl ginac_lt_age. +dnl 4. If any interfaces have been removed since the last release, set +dnl ginac_lt_age to 0. dnl dnl Please note: the libtool naming scheme cannot guarantee that on all dnl systems, the numbering is consecutive. It only guarantees that it is @@ -25,6 +26,7 @@ dnl for numbers that are omitted, except for shrinking the available space dnl of leftover numbers. Not something we need to worry about yet. ;-) m4_define([ginac_lt_current], [2]) m4_define([ginac_lt_revision], [0]) +m4_define([ginac_lt_age], [2]) AC_INIT([GiNaC], ginac_version, [ginac-list@ginac.de], [ginac], [http://www.ginac.de/]) AC_PREREQ(2.59) @@ -57,11 +59,12 @@ AC_SUBST(ARCHIVE_AGE) AC_DEFINE_UNQUOTED(ARCHIVE_VERSION, $ARCHIVE_VERSION, [Current GiNaC archive file version number]) AC_DEFINE_UNQUOTED(ARCHIVE_AGE, $ARCHIVE_AGE, [GiNaC archive file version age]) -dnl libtool versioning (We don't use libtool's age numbering since we promise -dnl to keep the binary interface compatible if only ginac_micro_version changes. -dnl In effect, age==current.) -LT_VERSION_INFO="ginac_lt_current:ginac_lt_revision:ginac_lt_current" -LT_RELEASE="ginac_release" +dnl libtool versioning +LT_VERSION_INFO="ginac_lt_current:ginac_lt_revision:ginac_lt_age" +dnl TODO: remove LT_RELEASE after ABI gets changed. We used to set +dnl LT_RELEASE (for no good reason), omitting it right now would +dnl result in a spurious SONAME change. +LT_RELEASE="1.5" AC_SUBST(LT_VERSION_INFO) AC_SUBST(LT_RELEASE) -- 2.44.0