the gdb/binutils/gcc projects don't commit info pages to the git tree.
but people build them from git on old distros semi-frequently.  so the
tree handles things like old versions of makeinfo -- if a version is
too old, then info pages aren't built.

unfortunately, automake doesn't seem to handle this situation correctly.
it wants to always build the .info pages even when they're under an
automake conditional that is disabled.

consider the attached files which are a reduced testcase.  the texinfo
file has errors in it purely to show the automake issue.

$ autoconf --version | head -1
autoconf (GNU Autoconf) 2.71
$ automake --version | head -1
automake (GNU automake) 1.16.5
$ autoreconf -fi
$ ./configure -q
$ make
  MAKEINFO ctf-spec.info
ctf-spec.texi:2: unknown command `forcedError'
make: *** [Makefile:327: ctf-spec.info] Error 1

if i add a stub target in the Makefile.am, it works correctly:

--- a/Makefile.am
+++ b/Makefile.am
@@ -2,4 +2,6 @@
 info_TEXINFOS =
 if BUILD_INFO
 info_TEXINFOS += ctf-spec.texi
+else
+ctf-spec.info:
 endif

$ autoreconf -fi
$ ./configure -q
$ make
make: Nothing to be done for 'all'.
-mike

Attachment: configure.ac
Description: application/pkix-attr-cert

Attachment: ctf-spec.texi
Description: TeXInfo document

AUTOMAKE_OPTIONS = foreign info-in-builddir no-texinfo.tex
info_TEXINFOS =
if BUILD_INFO
info_TEXINFOS += ctf-spec.texi
endif

Attachment: signature.asc
Description: PGP signature

Reply via email to