On Tuesday 17 March 2009, Stephen J. Turnbull wrote:
Michael Sperber writes:
> "Stephen J. Turnbull" <stephen(a)xemacs.org> writes:
> > > > Examples of undocumented differences?
> > >
> > > --infodir's default handling;
> > You'll have to get Mike to discuss that. He insists that things be
> > done as they are, but I've never personally had any reason to care one
> > way or the other (no personal config problems, no need for the
> > features he added, and I don't recall ever getting user questions
> > either).
> That isn't accurate. --infodir is a holdover from the old days.
Of course the option itself is a holdover. But my understanding is
that by "undocumented difference from autoconf" he's referring to
INFODIR_USER_DEFINED, and the catering to run-in-place and people who
schlep whole installed trees around and other cases that you won't
encounter in an RPM install.
Infodir handling has currently so many problems that I'm having a hard time
explaining it, but I'll give it one more try off the cuff. Just keep the
combinations of --prefix, --datadir, --datarootdir and --infodir users may
set in mind in the following and ignore for the moment $foo vs $foo_expanded.
Some of the following are caused by same underlying issue(s), and may be
issues with other *dir settings/options similarly.
1) configure --help says infodir's default is $datarootdir/info. It is not,
it's $datarootdir/$instvardir/info (kind of, depending on a few other --*dir
2) configure is internally inconsistent, infodir defaults to $datarootdir/info
in the beginning of it but the code from configure.ac uses $prefix/share/info
to test if it is set to the default.
3) The issue mentioned in Subject of this thread (--infodir given by the user
is sometimes ignored).
4) Defining --datadir to something that does not match $prefix/share results
in INFODIR_USER_DEFINED being set. This is inconsistent with *both* of the
values in 2) above: configure --help (it says $datarootdir/info, not
$datadir/info) and the logic when checking whether infodir is set to the
default (it checks $prefix/share/info, not $datadir/info).
5) The *_USER_DEFINED defines do not actually get set based on whether the
user defined the corresponding --*dir option. This was already discussed.
XEmacs-Beta mailing list