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:
The GNU Free Documentation License.
The section “Funding Free Software”.
Common definitions for manuals.
The GNU General Public License.
A copy of texinfo.tex known to work with the GCC manuals.
DVI-formatted manuals are generated by ‘make dvi’, which uses
texi2dvi (via the Makefile macro
PDF-formatted manuals are generated by ‘make pdf’, which uses
texi2pdf (via the Makefile macro
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,
makeinfo via the Makefile macro
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_git. Each manual to be
provided online must be listed in the definition of
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
dvips, and PDF manuals by
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.