summaryrefslogtreecommitdiff
path: root/external/gpgmepp/fix-autoconf-macros.patch
blob: 627c7b15247af3f52e97ee7b8ae9273ab9ad1f55 (plain)
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
diff -ur gpgme.org/configure.ac gpgme/configure.ac
--- configure.ac	2017-02-16 15:18:45.051417378 +0100
+++ configure.ac~	2017-02-16 15:20:03.635059285 +0100
@@ -35,6 +35,11 @@
 # decimalized short revision number, a beta version string, and a flag
 # indicating a development version (mym4_isgit). Note that the m4
 # processing is done by autoconf and not during the configure run.
+m4_define([m4_chomp_all],
+[m4_format([[%.*s]], m4_bregexp(m4_translit([[$1]], [
+/], [/ ]), [/*$]), [$1])])
+
+m4_define([m4_esyscmd_s], [m4_chomp_all(m4_esyscmd([$1]))])
 m4_define(mym4_version,
           [mym4_version_major.mym4_version_minor.mym4_version_micro])
 m4_define([mym4_revision],
@@ -90,7 +90,22 @@
 AC_CONFIG_MACRO_DIR([m4])
 AC_CONFIG_SRCDIR(src/gpgme.h.in)
 AC_CONFIG_HEADER(config.h)
-AM_INIT_AUTOMAKE([serial-tests dist-bzip2 no-dist-gzip])
+
+dnl Initialize automake.  automake < 1.12 didn't have serial-tests and
+dnl gives an error if it sees this, but for automake >= 1.13
+dnl serial-tests is required so we have to include it.  Solution is to
+dnl test for the version of automake (by running an external command)
+dnl and provide it if necessary.  Note we have to do this entirely using
+dnl m4 macros since automake queries this macro by running
+dnl 'autoconf --trace ...'.
+m4_define([serial_tests], [
+    m4_esyscmd([automake --version |
+                head -1 |
+                awk '{split ($NF,a,"."); if (a[1] == 1 && a[2] >= 12) { print "serial-tests" }}'
+    ])
+])
+AM_INIT_AUTOMAKE(foreign serial_tests dist-bzip2 no-dist-gzip) dnl NB: Do not [quote] this parameter.
+
 AM_MAINTAINER_MODE
 AC_CANONICAL_HOST
 AM_SILENT_RULES