diff mbox series

[Committed] Docs: Update documentation of Texinfo versions for building manuals.

Message ID d4afcdfe-1f44-0414-85b4-b6b16633de58@codesourcery.com
State New
Headers show
Series [Committed] Docs: Update documentation of Texinfo versions for building manuals. | expand

Commit Message

Sandra Loosemore March 11, 2023, 1:33 a.m. UTC
I've checked in the attached patch per discussion in another thread 
about possibly updating the minimum required Texinfo version.  This 
patch doesn't do that; it just recommends using a more recent version, 
removes redundant references to version 4.7, and fixes some related 
obsolete bits.

BTW the hardcopy manual being offered for sale in the FSF shop is for 
GCC 3.3 (2003?), so I felt no compunction about deleting the pointer to 
it as unhelpful.

-Sandra

Comments

Gerald Pfeifer March 11, 2023, 7:41 p.m. UTC | #1
On Fri, 10 Mar 2023, Sandra Loosemore wrote:
> I've checked in the attached patch per discussion in another thread about
> possibly updating the minimum required Texinfo version.

Thank you, Sandra!

I was going to udpate the comment in doc/install.texi2html just now, and 
saw you beat me to it (and better than I probably would have done it). :)

> BTW the hardcopy manual being offered for sale in the FSF shop is for 
> GCC 3.3 (2003?), so I felt no compunction about deleting the pointer to 
> it as unhelpful.

Totally, yes.

Gerald
Sandra Loosemore March 12, 2023, 6:03 p.m. UTC | #2
On 3/12/23 11:40, Tobias Burnus wrote:
> Hi Sandra,
> 
> can you check the PR number? The following looks wrong: 
> https://gcc.gnu.org/PR88578>> 
> On 11.03.23 02:33, Sandra Loosemore wrote:
>> --- a/gcc/doc/install.texi2html
>> +++ b/gcc/doc/install.texi2html
> ...
>> -    # Use sed to work around makeinfo 4.7 brokenness.
>> +    # Use sed to work around PR web/88578.
> Tobias

You have better eyes than me!  Yes, that is a typo.  :-(  I've checked 
in this patch to fix it.

-Sandra
diff mbox series

Patch

commit c62df15d283f035d5b1644f74493db2933f2a8cb
Author: Sandra Loosemore <sandra@codesourcery.com>
Date:   Sat Mar 11 00:40:42 2023 +0000

    Docs: Update documentation of Texinfo versions for building manuals.
    
    There has been recent discussion on updating the minimum required
    version of Texinfo from the current version 4.7.  This patch does not
    do that, but it suggests that people use a more recent version to get
    better output.  It also removes some other references to Texinfo 4.7
    and fixes some related bit-rot in the installation manual.  (Nobody
    really wants to print the GCC manual any more, and the GCC web site
    is a better place to get prebuilt manuals than the FSF store.)
    
    gcc/ChangeLog:
            * doc/install.texi (Prerequisites): Suggest using newer versions
            of Texinfo.
            (Final install): Clean up and modernize discussion of how to
            build or obtain the GCC manuals.
            * doc/install.texi2html: Update comment to point to the PR instead
            of "makeinfo 4.7 brokenness" (it's not specific to that version).

diff --git a/gcc/doc/install.texi b/gcc/doc/install.texi
index f549ba597cb..63fc949b447 100644
--- a/gcc/doc/install.texi
+++ b/gcc/doc/install.texi
@@ -543,13 +543,21 @@  They are included in releases.
 Necessary for running @command{makeinfo} when modifying @file{*.texi}
 files to test your changes.
 
-Necessary for running @command{make dvi} or @command{make pdf} to
-create printable documentation in DVI or PDF format.  Texinfo version
+Necessary for running @command{make dvi}, @command{make pdf},
+or @command{make html} to create formatted documentation.  Texinfo version
 4.8 or later is required for @command{make pdf}.
 
-Necessary to build GCC documentation during development because the
-generated output files are not included in the repository.  They are
-included in releases.
+Necessary to build GCC documentation in info format during development
+because the generated output files are not included in the repository.
+(They are included in release tarballs.)
+
+Note that the minimum requirement is for a very old version of
+Texinfo, but recent versions of Texinfo produce better-quality output,
+especially for HTML format.  The version of Texinfo packaged with any
+current operating system distribution is likely to be adequate for
+building the documentation without error, but you may still want to
+install a newer release to get the best appearance and usability of
+the generated manuals.
 
 @item @TeX{} (any working version)
 
@@ -3429,6 +3437,31 @@  You can install stripped programs and libraries with
 make install-strip
 @end smallexample
 
+By default, only the man pages and info-format GCC documentation
+are built and installed.  If you want to generate the GCC manuals in
+other formats, use commands like
+
+@smallexample
+make dvi
+make pdf
+make html
+@end smallexample
+
+@noindent
+to build the manuals in the corresponding formats, and
+
+@smallexample
+make install-dvi
+make install-pdf
+make install-html
+@end smallexample
+
+@noindent
+to install them.
+Alternatively, there are prebuilt online versions of the manuals for
+released versions of GCC on
+@uref{https://gcc.gnu.org/onlinedocs/,,the GCC web site}.
+
 If you are bootstrapping a released version of GCC then please
 quickly review the build status page for your release, available from
 @uref{https://gcc.gnu.org/buildstat.html}.
@@ -3494,22 +3527,6 @@  incomplete or out of date.  Send a note to
 If you find a bug, please report it following the
 @uref{../bugs/,,bug reporting guidelines}.
 
-If you want to print the GCC manuals, do @samp{cd @var{objdir}; make
-dvi}.  You will need to have @command{texi2dvi} (version at least 4.7)
-and @TeX{} installed.  This creates a number of @file{.dvi} files in
-subdirectories of @file{@var{objdir}}; these may be converted for
-printing with programs such as @command{dvips}.  Alternately, by using
-@samp{make pdf} in place of @samp{make dvi}, you can create documentation
-in the form of @file{.pdf} files; this requires @command{texi2pdf}, which
-is included with Texinfo version 4.8 and later.  You can also
-@uref{https://shop.fsf.org/,,buy printed manuals from the
-Free Software Foundation}, though such manuals may not be for the most
-recent version of GCC@.
-
-If you would like to generate online HTML documentation, do @samp{cd
-@var{objdir}; make html} and HTML will be generated for the gcc manuals in
-@file{@var{objdir}/gcc/HTML}.
-
 @html
 <hr />
 <p>
diff --git a/gcc/doc/install.texi2html b/gcc/doc/install.texi2html
index f3878aa3bb4..54e27fedde3 100755
--- a/gcc/doc/install.texi2html
+++ b/gcc/doc/install.texi2html
@@ -53,7 +53,7 @@  do
     define=`echo $x | sed -e 's/\.//g'`
     echo "define = $define"
     $MAKEINFO --no-number-sections -I $SOURCEDIR -I $SOURCEDIR/include -I $DESTDIR $SOURCEDIR/install.texi --html --no-split -D$define -o$DESTDIR/temp.html
-    # Use sed to work around makeinfo 4.7 brokenness.
+    # Use sed to work around PR web/88578.
     sed -e 's/_002d/-/g' -e 's/_002a/*/g' $DESTDIR/temp.html > $DESTDIR/$x
     rm $DESTDIR/temp.html
 done