From patchwork Sat Mar 11 01:33:33 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Sandra Loosemore X-Patchwork-Id: 1755659 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@legolas.ozlabs.org Authentication-Results: legolas.ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=gcc.gnu.org (client-ip=8.43.85.97; helo=sourceware.org; envelope-from=gcc-patches-bounces+incoming=patchwork.ozlabs.org@gcc.gnu.org; receiver=) Received: from sourceware.org (server2.sourceware.org [8.43.85.97]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-384) server-digest SHA384) (No client certificate requested) by legolas.ozlabs.org (Postfix) with ESMTPS id 4PYQS666rnz1yWm for ; Sat, 11 Mar 2023 12:33:57 +1100 (AEDT) Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id 03313385842B for ; Sat, 11 Mar 2023 01:33:54 +0000 (GMT) X-Original-To: gcc-patches@gcc.gnu.org Delivered-To: gcc-patches@gcc.gnu.org Received: from esa4.mentor.iphmx.com (esa4.mentor.iphmx.com [68.232.137.252]) by sourceware.org (Postfix) with ESMTPS id 535FF3858CDA for ; Sat, 11 Mar 2023 01:33:40 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 535FF3858CDA Authentication-Results: sourceware.org; dmarc=none (p=none dis=none) header.from=codesourcery.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=mentor.com X-IronPort-AV: E=Sophos;i="5.98,251,1673942400"; d="scan'208";a="99790246" Received: from orw-gwy-02-in.mentorg.com ([192.94.38.167]) by esa4.mentor.iphmx.com with ESMTP; 10 Mar 2023 17:33:37 -0800 IronPort-SDR: DGGn1J5hNvsDdMep1hv2/lk/cGvAjC2yCIySpr3jaLL4KjHgtt5voTQQPpKawJqiNYfMYAr9B0 34uBKdniFqkO57hv8vhN/aQgNWRjNknd8lJvICmXG74FZlF8sUdDnmBTdE57l6dtTIBpstIfxO 8WKVMZ9qPcIwu0L4oZl6gRKzB9KLFask8FTM7yh69CHs2lAqI0uoqChSClBYL6IDBClUOJ2bbb df5QCkGiZH93FExvZy5WTyaJ0QorI/qjeGZtZ0KMceZcrGwy1NYSAErqsVFWQaRC1A2wtkQ+Gq c2c= Message-ID: Date: Fri, 10 Mar 2023 18:33:33 -0700 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.7.1 Content-Language: en-US To: "gcc-patches@gcc.gnu.org" CC: Gerald Pfeifer From: Sandra Loosemore Subject: [Committed] Docs: Update documentation of Texinfo versions for building manuals. X-ClientProxiedBy: svr-orw-mbx-12.mgc.mentorg.com (147.34.90.212) To svr-orw-mbx-13.mgc.mentorg.com (147.34.90.213) X-Spam-Status: No, score=-9.8 required=5.0 tests=BAYES_00, GIT_PATCH_0, HEADER_FROM_DIFFERENT_DOMAINS, KAM_DMARC_STATUS, KAM_SHORT, SPF_HELO_PASS, SPF_PASS, TXREP autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org X-BeenThere: gcc-patches@gcc.gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Gcc-patches mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: gcc-patches-bounces+incoming=patchwork.ozlabs.org@gcc.gnu.org Sender: "Gcc-patches" 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 commit c62df15d283f035d5b1644f74493db2933f2a8cb Author: Sandra Loosemore 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

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