[Debian-med-packaging] Missing define (Was: infernal: another autoreconf issue)
Andreas Tille
andreas at an3as.eu
Mon Jul 16 08:41:18 BST 2018
Hi Yagor,
On Sun, Jul 15, 2018 at 11:33:36PM +0300, Yavor Doganov wrote:
> Andreas Tille wrote:
> > autoheader: warning: missing template: EASEL_COPYRIGHT
> > autoheader: Use AC_DEFINE([EASEL_COPYRIGHT], [], [Description])
>
> The problem here is that AC_DEFINE and AC_DEFINE_UNQUOTED are used to
> define preprocessor symbols without the third argument which is the
> description. This is fine as long as AC_CONFIG_HEADERS is *not* used.
> However, that is not the case -- there are three configuration headers
> with separate calls to AC_CONFIG_HEADERS.
>
> The simple, but kinda tiresome solution is to add a third argument to
> every AC_DEFINE/AC_DEFINE_UNQUOTED call, like this:
>
> AC_DEFINE_UNQUOTED([EASEL_COPYRIGHT], ["$EASEL_COPYRIGHT"],
> [Easel copyright information.])
>
> Some of the symbols are already documented in the templates provided
> by upstream (the .h.in files) but they are invisible to autoheader.
Ahhh, this hint helped me to finalise the autoreconf step. Thanks a lot
so far. Unfortunately I now get
CC cm_dpsmall.o
cm_dpsmall.c: In function 'generic_splitter':
cm_dpsmall.c:721:51: error: expected expression before ')' token
if (insideT_size(cm, L, r, z, i0, j0) < RAMLIMIT) {
^
cm_dpsmall.c: In function 'wedge_splitter':
cm_dpsmall.c:943:51: error: expected expression before ')' token
insideT_size(cm, L, r, z, i0, j0) < RAMLIMIT)
^
cm_dpsmall.c: In function 'v_splitter':
cm_dpsmall.c:1120:57: error: expected expression before ')' token
vinsideT_size(cm, r, z, i0, i1, j1, j0) < RAMLIMIT)
^
cm_dpsmall.c: In function 'generic_splitter_b':
cm_dpsmall.c:3762:51: error: expected expression before ')' token
if (insideT_size(cm, L, r, z, i0, j0) < RAMLIMIT) {
^
cm_dpsmall.c: In function 'wedge_splitter_b':
cm_dpsmall.c:3991:51: error: expected expression before ')' token
insideT_size(cm, L, r, z, i0, j0) < RAMLIMIT)
^
cm_dpsmall.c: In function 'v_splitter_b':
cm_dpsmall.c:4184:57: error: expected expression before ')' token
vinsideT_size(cm, r, z, i0, i1, j1, j0) < RAMLIMIT)
^
cm_dpsmall.c: In function 'voutside_b':
cm_dpsmall.c:5718:3: warning: implicit declaration of function 'assert'; did you mean 'tzset'? [-Wimplicit-function-declaration]
assert(dmin[r] <= (j0-i0)+1);
^~~~~~
RAMLIMIT is defined in src/config.h.in but for some reason not
propagated to src/config.h. I tried to cure this via
--- a/configure.ac
+++ b/configure.ac
-@@ -121,24 +121,24 @@ AC_SUBST(EASEL_VERSION)
+@@ -120,25 +120,28 @@ AC_SUBST(EASEL_LICENSE)
+ AC_SUBST(EASEL_VERSION)
AC_SUBST(EASEL_URL)
++AC_SUBST(RAMLIMIT)
++AC_DEFINE_UNQUOTED([RAMLIMIT], [], [This definition is needed to propagate it in src/config.h.in])
++
# Preprocessor symbols (replace #undefs in hmmer/src/p7_config.h and src/config.h)
-AC_DEFINE_UNQUOTED(INFERNAL_DATE, "$INFERNAL_DATE")
-AC_DEFINE_UNQUOTED(INFERNAL_COPYRIGHT, "$INFERNAL_COPYRIGHT")
but this did not help. Any further hint
Kind regards
Andreas.
--
http://fam-tille.de
More information about the Debian-med-packaging
mailing list