The manuals for GCC as a whole, and the C and C++ front ends, are in files doc/*.texi. Other front ends have their own manuals in files language/*.texi. Common files doc/include/*.texi are provided which may be included in multiple manuals; the following files are in doc/include:
DVI-formatted manuals are generated by ‘make dvi’, which uses
texi2dvi (via the Makefile macro $(TEXI2DVI)
).
PDF-formatted manuals are generated by ‘make pdf’, which uses
texi2pdf (via the Makefile macro $(TEXI2PDF)
). HTML
formatted manuals are generated by ‘make html’. Info
manuals are generated by ‘make info’ (which is run as part of
a bootstrap); this generates the manuals in the source directory,
using makeinfo via the Makefile macro $(MAKEINFO)
,
and they are included in release distributions.
Manuals are also provided on the GCC web site, in both HTML and
PostScript forms. This is done via the script
maintainer-scripts/update_web_docs_svn. Each manual to be
provided online must be listed in the definition of MANUALS
in
that file; a file name.texi must only appear once in the
source tree, and the output manual must have the same name as the
source file. (However, other Texinfo files, included in manuals but
not themselves the root files of manuals, may have names that appear
more than once in the source tree.) The manual file
name.texi should only include other files in its own
directory or in doc/include. HTML manuals will be generated by
‘makeinfo --html’, PostScript manuals by texi2dvi
and dvips, and PDF manuals by texi2pdf.
All Texinfo files that are parts of manuals must
be version-controlled, even if they are generated files, for the
generation of online manuals to work.
The installation manual, doc/install.texi, is also provided on the GCC web site. The HTML version is generated by the script doc/install.texi2html.