[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: info-stnd and (info) discrepancy: Searching the Autoconf v2.71 manua
From: |
Arsen Arsenović |
Subject: |
Re: info-stnd and (info) discrepancy: Searching the Autoconf v2.71 manual for AC_CHECK_ALIGNOF in the index fails |
Date: |
Mon, 20 Mar 2023 20:39:31 +0100 |
Gavin Smith <gavinsmith0123@gmail.com> writes:
> On Mon, Mar 20, 2023 at 08:08:53PM +0100, Arsen Arsenović wrote:
>> Hm, I think you're spot on.. the file is mangled by a build script. I
>> missed it since it was behind a layer of abstraction[1].
>>
>> Sorry for the noise!
>>
>> I wonder if I just got lucky in Emacs wrt being able to read that index
>> search I did..
>
> My guess is that Emacs has more tolerance for incorrect tag tables.
>
>
>> That leaves a question of what to do with "slotted" installs and info
>> pages. Mangling a binary format by injecting bytes into it to version
>> the names seems wrong. A dedicated mangler rather than `sed' could be
>> used, that can handle fixing up offsets in the tag table, but that
>> retains broken xrefs in other documents.
>
> Have you considered renaming the file but not altering the contents?
> As far as I remember the text that follows File: in a node does not
> have to match the file name and is not really used for anything (other
> than reminding the user where they are in case this text is displayed).
Hmm, I did not know that's possible.
AIUI, though, that'd still break cross referencing, right? Since the
xrefs in the Info file refer to infos by file name IIUC.
>> Maybe we should toss the thing out and just use INFO_PATH to pick up on
>> the latest version, like we do for gcc, which avoids all of those issues
>> but leaves us with shadowed pages for older versions.
>>
>> Do you have any alternative proposals?
>
> For cross-references to work while installing the Info files under the
> versioned names, you could use create symlinks from e.g. autoconf.info
> to autoconf-2.71.info.
The problem with this approach, though, is that it'd induce a collision
at install time. This is often solved by another tool called eselect,
but autoconf and automake aren't behind eselect, but rather a wrapper
which execs the right version.
> I'm not sure if it's relevant, but a feature of the Info browser which
> may be useful if you are installing collections of Info manuals which
> should all reference each other is the 'follow-strategy' variable:
>
> ‘follow-strategy’
> When set to ‘remain’ (the default), Info tries to remain within the
> directory containing the currently displayed Info file when
> following a cross-reference to an external manual, before looking
> for the referenced manual in the search path. The alternative
> value is ‘path’, which means to look through the search path right
> away.
>
> ‘remain’ is intended to be useful for several Texinfo manuals that
> all reference each other and whose versions should match each
> other. (For example, various manuals relating to a particular
> version of Emacs.)
>
> The alternative behavior, with ‘path’, may be useful when your Info
> file search path parallels your command shell’s search path, and
> you always want to find documentation of the version of the program
> that the shell would execute.
Ah! This takes away a worry of mine about what happens if one jumps
from, say, gdc.info to gcc.info on a version less than latest with our
current INFO_PATH based approach.
That also reinforces that approach as a viable one.
--
Arsen Arsenović
signature.asc
Description: PGP signature