summaryrefslogtreecommitdiff
path: root/configure.ac
diff options
context:
space:
mode:
authorMike Frysinger <vapier@gentoo.org>2016-07-24 00:14:20 +0530
committerMike Frysinger <vapier@gmail.com>2016-11-10 09:09:14 -0500
commit5ebbd50cffc013a7dd0f3b1eaaa83d199e8e47fd (patch)
tree428955d4b20874bd8125683a54ff2881aa3a0a60 /configure.ac
parent7c6c8801d9e5a98ac66e5c9b41a828c2e9d3dc5a (diff)
downloadlibgd-5ebbd50cffc013a7dd0f3b1eaaa83d199e8e47fd.tar.gz
cmake: add soname info to libgd.so
Pull out the library versioning info out of configure and into a common script that both cmake & autotools can run. This way we have a single source of truth for the versioning info.
Diffstat (limited to 'configure.ac')
-rw-r--r--configure.ac25
1 files changed, 11 insertions, 14 deletions
diff --git a/configure.ac b/configure.ac
index 91643bd..c3fb034 100644
--- a/configure.ac
+++ b/configure.ac
@@ -34,20 +34,17 @@ AC_SUBST(GDLIB_REVISION)
AC_SUBST(GDLIB_EXTRA)
AC_SUBST(GDLIB_VERSION)
-# Dynamic library version information
-# See http://www.gnu.org/software/libtool/manual/libtool.html#Updating-version-info
-
-GDLIB_LT_CURRENT=3
-dnl This is the version where the soname (current above) changes. We use it
-dnl to reset the revision base back to zero. It's a bit of a pain, but some
-dnl systems restrict the revision range below to [0..255] (like OS X).
-GDLIB_PREV_MAJOR=2
-GDLIB_PREV_MINOR=2
-dnl This isn't 100% correct, but it tends to be a close enough approximation
-dnl for how we manage the codebase. It's rare to do a release that doesn't
-dnl modify the library since this project is centered around the library.
-GDLIB_LT_REVISION=$(( ((GDLIB_MAJOR - GDLIB_PREV_MAJOR) << 6) | ((GDLIB_MINOR - GDLIB_PREV_MINOR) << 3) | GDLIB_REVISION ))
-GDLIB_LT_AGE=0
+dnl Keep the libtool version details in an external script so cmake can
+dnl access the values too.
+define([lt_gv], [config/getlib.sh ]$1)
+m4_define([gd_LT_CURRENT], esyscmd(lt_gv(CURRENT)))
+m4_define([gd_LT_REVISION], esyscmd(lt_gv(REVISION)))
+m4_define([gd_LT_AGE], esyscmd(lt_gv(AGE)))
+
+GDLIB_LT_CURRENT=gd_LT_CURRENT
+GDLIB_LT_REVISION=gd_LT_REVISION
+GDLIB_LT_AGE=gd_LT_AGE
+
AC_SUBST(GDLIB_LT_CURRENT)
AC_SUBST(GDLIB_LT_REVISION)
AC_SUBST(GDLIB_LT_AGE)