On Thu, Mar 9, 2023 at 2:20 AM Andrew Pinski via Gcc-patches
<gcc-patches@gcc.gnu.org> wrote:
>
> On Wed, Mar 8, 2023 at 5:09 PM Sandra Loosemore <san...@codesourcery.com> 
> wrote:
> >
> > On 3/8/23 14:22, Arsen Arsenović wrote:
> > >
> > > Sandra Loosemore <san...@codesourcery.com> writes:
> > >
> > >> On 3/8/23 02:11, Arsen Arsenović wrote:
> > >>> Sandra Loosemore <san...@codesourcery.com> writes:
> > >>>
> > >>>> On 2/23/23 03:27, Arsen Arsenović via Gcc-patches wrote:
> > >>>>> I've rerendered the updated documentation with latest development
> > >>>>> Texinfo (as some of the changes I made for the purposes of the GCC
> > >>>>> manual still aren't in releases) at:
> > >>>>>      https://www.aarsen.me/~arsen/final/
> > >>>>
> > >>>> Ummm.  I don't think GCC's documentation should depend on an 
> > >>>> unreleased version
> > >>>> of Texinfo.  Currently install.texi documents that version 4.7 or 
> > >>>> later is
> > >>>> required, 4.8 for "make pdf"; did I miss something in your patch set 
> > >>>> that bumps
> > >>>> this requirement?  Exactly what features do you depend on that are not 
> > >>>> yet
> > >>>> supported by an official Texinfo release?
> > >>> This patch should still build with older Texinfo versions (albeit, I
> > >>> hadn't tested 4.7, I missed that requirement).  The unreleased version
> > >>> should be installed on the server building HTML documentation as it
> > >>> produces better results w.r.t clickable anchors and index-in-table
> > >>> handling.  It should not be a hard dependency, and should only degrade
> > >>> to its current state should in-dev Texinfo be missing.
> > >>
> > >> Hmmm, OK.  We presently have Texinfo version 6.7 installed here, so I'll 
> > >> give
> > >> that a try.  I'm not sure I'd be able to detect problems with incorrect 
> > >> HTML
> > >> anchors or whatever, though.
> > >
> > > As an example, let's take this link:
> > > https://gcc.gnu.org/onlinedocs/gcc-12.2.0/gcc/Warning-Options.html#index-Wpedantic
> > >
> > > This should place you below the item line this index entry refers to,
> > > and there aren't any copiable anchors (see equivalent in my render for
> > > an example of those), both of which were often named as annoyances with
> > > the onlinedocs while the Sphinx experiment was taking place.
> > >
> > > A similar thing happens in the standalone and Emacs info viewers (but
> > > that's less noticeable there since the cursor is placed in the middle of
> > > the screen when jumping to an index entry there).  Try, for instance,
> > > 'info gcc Wpedantic' (your cursor will be placed just below the item
> > > line).
> > >
> > > The fix for the first of these issues should already be applied by
> > > Gerald (in the reordering commits, IIRC at least, save for one that I
> > > created later because someone snuck in new "misplaced" indices), and
> > > that fix should also fix up previous versions of Texinfo.
> > >
> > > Even with this change, the copiable anchors will remain missing since
> > > released Texinfo versions lack some AST transformations that enable
> > > those.
> >
> > OK, I can see the difference there between the current online docs, the
> > set you produced with the unreleased Texinfo support, and what I got
> > building with Texinfo 6.7.
> >
> > > Otherwise, manuals should work fine with older releases, unless I missed
> > > something when refactoring @defbuiltin and removing @gols (which I do
> > > believe are superfluous with current versions of texinfo.tex, which is
> > > why I bumped that too).
> >
> > I did a few spot-checks here and there of those changes.  I saw a couple
> > of line break problems but they turn out to be due to existing errors in
> > the .texi files that were not introduced by your (mostly mechanical)
> > changes.
> >
> > >> Most people building GCC from source probably use whatever versions of 
> > >> build
> > >> dependencies are provided by their OS distribution.  In our group we need
> > >> reproducible builds for long-term support so we maintain our own list of
> > >> dependencies and normally update to the latest stable versions only once 
> > >> every
> > >> few years unless there is a hard requirement to upgrade some particular 
> > >> tool
> > >> meanwhile.  I personally do not know how the manuals for the GCC web 
> > >> site are
> > >> built, but it seems kind of important to make sure that works as 
> > >> intended since
> > >> it's the main online resource for ordinary GCC users.
> > >
> > > Yes, I can get behind this sentiment too.  I don't mean to impose a hard
> > > dependency on the bleeding edge of Texinfo.  My target was indeed the
> > > GCC website and ordinary users.
> > >
> > >>> It might be worth bumping the minimum, 4.7 is a version from 2004; in
> > >>> the meanwhile, I'll try a few older versions too.
> > >>
> > >> I agree that it's unlikely anyone is building current GCC with a Texinfo
> > >> version as old as 4.7 any more, and it may be that the manual doesn't 
> > >> even
> > >> build properly with such an old release due to existing unintentional
> > >> dependencies on newer features, independently of your patch.  If we do 
> > >> update
> > >> the version, there's a version check in configure.ac and some hack for
> > >> "makeinfo 4.7 brokenness" in doc/install.texi2html that need to be 
> > >> changed, as
> > >> well as install.texi.
> > >
> > > FWIW, I (briefly) tested with Texinfo 6.0, and output seems okay.  On
> > > 5.0, I got a few warnings, but I think even 6.0 is apt considering its
> > > age.  I haven't given it a proper scrutiny, though (workdays are busy
> > > this time of year..).
> >
> > Texinfo 6.0 was released in 2015, 5.0 in 2013.  FWIW, Trusty Tahr (the
> > current oldest Ubuntu LTS release) has 5.2.  4.7 was released in 2004, I
> > don't know why anyone would still be trying to use that unless it's
> > needed for building legacy code from the same era.
>
> CentOS/RHEL 7 includes texinfo 5.1. That is the oldest distro I think
> mostly supports building with.
> That is the oldest I do builds of GCC with even for the trunk.

SLES 12 has texinfo 4.13a, SLES 15 has texinfo 6.5.  We still provide
up-to-date GCC for SLES 12 but we can probably manage in some ways
when the texinfo requirement gets bumped.

Richard.

> Thanks,
> Andrew
>
> >
> > I think we could do away with the requirement for a specific minimum
> > version, and make install.texi say something similar to what it says for
> > e.g. awk -- just use a "recent" version, and note that new versions
> > produce better output and very old ones may produce diagnostics.  I'll
> > add that do my own todo list.
> >
> > -Sandra

Reply via email to