Next: , Previous: , Up: Building documentation   [Contents][Index]


12.1 Texinfo

If the current directory contains Texinfo source, you must declare it with the ‘TEXINFOS’ primary. Generally Texinfo files are converted into info, and thus the info_TEXINFOS variable is most commonly used here. Any Texinfo source file must end in the .texi, .txi, or .texinfo extension. We recommend .texi for new manuals.

Automake generates rules to build .info, .dvi, .ps, and .pdf files from your Texinfo sources. The .info files are built by make all and installed by make install (unless you use no-installinfo, see below). The other files can be built on request by make dvi, make ps, and make pdf.

If the .texi file @includes version.texi, then that file will be automatically generated. The file version.texi defines four Texinfo flag you can reference using @value{EDITION}, @value{VERSION}, @value{UPDATED}, and @value{UPDATED-MONTH}.

EDITION
VERSION

Both of these flags hold the version number of your program. They are kept separate for clarity.

UPDATED

This holds the date the primary .texi file was last modified.

UPDATED-MONTH

This holds the name of the month in which the primary .texi file was last modified.

The version.texi support requires the mdate-sh program; this program is supplied with Automake and automatically included when automake is invoked with the --add-missing option.

If you have multiple Texinfo files, and you want to use the version.texi feature, then you have to have a separate version file for each Texinfo file. Automake will treat any include in a Texinfo file that matches ‘vers*.texi’ just as an automatically generated version file.

When an info file is rebuilt, the program named by the MAKEINFO variable is used to invoke it. If the makeinfo program is found on the system then it will be used by default; otherwise missing will be used instead. The flags in the variables MAKEINFOFLAGS and AM_MAKEINFOFLAGS will be passed to the makeinfo invocation; the first of these is intended for use by the user (see Variables reserved for the user) and the second by the Makefile.am writer.

Sometimes an info file actually depends on more than one .texi file. For instance, in GNU Hello, hello.texi includes the file gpl.texi. You can tell Automake about these dependencies using the texi_TEXINFOS variable. Here is how GNU Hello does it:

info_TEXINFOS = hello.texi
hello_TEXINFOS = gpl.texi

By default, Automake requires the file texinfo.tex to appear in the same directory as the Texinfo source. However, if you used AC_CONFIG_AUX_DIR in configure.in (see Finding ‘configure’ Input in The Autoconf Manual), then texinfo.tex is looked for there. Automake supplies texinfo.tex if ‘--add-missing’ is given.

If your package has Texinfo files in many directories, you can use the variable TEXINFO_TEX to tell Automake where to find the canonical texinfo.tex for your package. The value of this variable should be the relative path from the current Makefile.am to texinfo.tex:

TEXINFO_TEX = ../doc/texinfo.tex

The option ‘no-texinfo.tex’ can be used to eliminate the requirement for texinfo.tex. Use of the variable TEXINFO_TEX is preferable, however, because that allows the dvi, ps, and pdf targets to still work.

Automake generates an install-info target; some people apparently use this. By default, info pages are installed by ‘make install’. This can be prevented via the no-installinfo option.


Next: Man pages, Previous: Building documentation, Up: Building documentation   [Contents][Index]