[getdns-users] [PATCH] Fix libversion numbering

Daniel Kahn Gillmor dkg at fifthhorseman.net
Thu Apr 30 01:37:55 UTC 2015


Version 0.1.7 built libgetdns.so.0 instead of libgetdns.so.1.  This
broke anything depending on the package keeping the same SONAME from
0.1.6 to 0.1.7.

The problem stems from a broken libversion in upstream's configure.ac.

This is worked around in 0.1.8 by another change to GETDNS_LIBVERSION,
but the change isn't correct either, since interfaces have been added
again (in partcular, the GETDNS_TRANSPORT_TLS_* constants have been
added, which affects the API at least, for tools trying to compile
against the newer version).

Note that the commentary in configure.ac about how to update
libversion is correct up to a point, but then breaks things badly.
This patch removes that as well.

Here is the canonical reference for how to update libversion:

https://www.gnu.org/software/libtool/manual/libtool.html#Updating-version-info
---
 configure.ac | 10 +++-------
 1 file changed, 3 insertions(+), 7 deletions(-)

diff --git a/configure.ac b/configure.ac
index 6e98e01..6e321ee 100755
--- a/configure.ac
+++ b/configure.ac
@@ -52,18 +52,14 @@ GETDNS_COMPILATION_COMMENT="AC_PACKAGE_STRING configured on $CURRENT_DATE for th
 # if any interfaces have been added since the last public release then increment age
 # if any interfaces have been removed or changed since the last public release then
 #   set age to 0
-# if api unchanged: no changes
-# if api broken: current++ ; revision = 0; age = 0
-# if programs compiled against existing library work and link with new
-#    version of library with new binary api:  revision++; age++
 #
 # getdns-0.1.4 had libversion 0:0:0
 # getdns-0.1.5 had libversion 1:0:0
 # getdns-0.1.6 had libversion 1:1:0
-# getdns-0.1.7 had libversion 1:2:1
-# getdns-0.1.8 will have libversion 1:3:0
+# getdns-0.1.7 had libversion 1:2:1 (but should have had 2:2:1)
+# getdns-0.1.8 had libversion 1:3:0 (but should have had 3:3:2)
 #
-GETDNS_LIBVERSION=1:3:0
+GETDNS_LIBVERSION=3:3:2
 
 AC_SUBST(GETDNS_COMPILATION_COMMENT)
 AC_SUBST(GETDNS_LIBVERSION)
-- 
2.1.4




More information about the Users mailing list