[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: $prefix/info -> $prefix/share/info
From: |
Bruno Haible |
Subject: |
Re: $prefix/info -> $prefix/share/info |
Date: |
Wed, 20 Dec 2006 15:24:38 +0100 |
User-agent: |
KMail/1.9.1 |
RMS wrote:
> ***************
> *** 463,474 ****
> (expand-file-name "info/" installation-directory)
> (if invocation-directory
> (let ((infodir (expand-file-name
> ! "../info/"
> invocation-directory)))
> (if (file-exists-p infodir)
> infodir
> (setq infodir (expand-file-name
> ! "../../../info/"
> invocation-directory))
> (and (file-exists-p infodir)
> infodir))))))
> --- 463,474 ----
> (expand-file-name "info/" installation-directory)
> (if invocation-directory
> (let ((infodir (expand-file-name
> ! "../share/info/"
> invocation-directory)))
> (if (file-exists-p infodir)
> infodir
> (setq infodir (expand-file-name
> ! "../../../share/info/"
> invocation-directory))
> (and (file-exists-p infodir)
> infodir))))))
>
> I think that part is not correct. It assumes invocation-directory
> will be /usr/local/SOMETHING, and that is not likely at all.
It doesn't look like that to me. The code either assumes that
the invocation-directory is 1 level under $prefix (such as $prefix/bin) or
3 levels under $prefix (such as $prefix/arch/x86/bin). In a normal install
from source on Unix, invocation-directory is actually $prefix/bin.
The proposed patch only changes the relative path of the infodir, relative
to $prefix.
> diff -r -c3 --exclude=configure emacs-22.0.90.orig/lisp/paths.el
> emacs-22.0.90/lisp/paths.el
> *** emacs-22.0.90.orig/lisp/paths.el 2006-09-04 19:36:11.000000000
> +0200
> --- emacs-22.0.90/lisp/paths.el 2006-11-15 03:21:39.000000000 +0100
> ***************
> *** 68,74 ****
> (suffixes
> ;; Subdirectories in each directory tree that may contain info
> ;; directories.
> ! '("" "share/" "gnu/" "gnu/lib/" "gnu/lib/emacs/"
> "emacs/" "lib/" "lib/emacs/"))
> (standard-info-dirs
> (apply #'nconc
> --- 68,74 ----
> (suffixes
> ;; Subdirectories in each directory tree that may contain info
> ;; directories.
> ! '("share/" "" "gnu/" "gnu/lib/" "gnu/lib/emacs/"
> "emacs/" "lib/" "lib/emacs/"))
> (standard-info-dirs
> (apply #'nconc
>
> What is the motive for this change?
The purpose is to search $prefix/share/info/ before $prefix/info/. As many
packages start using autoconf >= 2.60, new manuals are installed into
$prefix/share/info/. A user who installs successive versions of a package
will thus have the old manual in $prefix/info/ and the newest manual in
$prefix/share/info/, and he wants to see the newest manual.
Bruno