Package: libgd2 / 2.3.0-2

0004-Add-missing-getlib.sh-script.patch Patch series | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
From: =?utf-8?b?T25kxZllaiBTdXLDvQ==?= <ondrej@sury.org>
Date: Fri, 24 Apr 2020 09:50:47 +0200
Subject: Add missing getlib.sh script

---
 config/getlib.sh | 42 ++++++++++++++++++++++++++++++++++++++++++
 configure.ac     |  2 +-
 2 files changed, 43 insertions(+), 1 deletion(-)
 create mode 100755 config/getlib.sh

diff --git a/config/getlib.sh b/config/getlib.sh
new file mode 100755
index 0000000..4835cf6
--- /dev/null
+++ b/config/getlib.sh
@@ -0,0 +1,42 @@
+#!/bin/sh
+
+GETVER="${0%/*}/getver.pl"
+GDLIB_MAJOR=$("${GETVER}" MAJOR)
+GDLIB_MINOR=$("${GETVER}" MINOR)
+GDLIB_REVISION=$("${GETVER}" RELEASE)
+
+# Dynamic library version information
+# See http://www.gnu.org/software/libtool/manual/libtool.html#Updating-version-info
+
+GDLIB_LT_CURRENT=3
+# This is the version where the soname (current above) changes.  We use it
+# to reset the revision base back to zero.  It's a bit of a pain, but some
+# systems restrict the revision range below to [0..255] (like OS X).
+GDLIB_PREV_MAJOR=2
+GDLIB_PREV_MINOR=2
+# This isn't 100% correct, but it tends to be a close enough approximation
+# for how we manage the codebase.  It's rare to do a release that doesn't
+# 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
+
+# The first three fields we feed into libtool and the OS target determines how
+# they get used.  The last two fields we feed into cmake.  We use the same rules
+# as Linux SONAME versioning in libtool, but cmake should handle it for us.
+case $1 in
+CURRENT)
+	printf '%s' "${GDLIB_LT_CURRENT}"
+	;;
+REVISION)
+	printf '%s' "${GDLIB_LT_REVISION}"
+	;;
+AGE)
+	printf '%s' "${GDLIB_LT_AGE}"
+	;;
+VERSION)
+	printf '%s' "$(( GDLIB_LT_CURRENT - GDLIB_LT_AGE )).${GDLIB_LT_AGE}.${GDLIB_LT_REVISION}"
+	;;
+SONAME)
+	printf '%s' "$(( GDLIB_LT_CURRENT - GDLIB_LT_AGE ))"
+	;;
+esac
diff --git a/configure.ac b/configure.ac
index 5d28059..f2eeda6 100644
--- a/configure.ac
+++ b/configure.ac
@@ -20,7 +20,7 @@ AC_CANONICAL_HOST
 
 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)
+define([lt_gv], [sh 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)))