From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Bruno Haible Newsgroups: gmane.emacs.devel Subject: $prefix/info -> $prefix/share/info Date: Mon, 18 Dec 2006 14:47:56 +0100 Message-ID: <200612181447.57052.bruno@clisp.org> NNTP-Posting-Host: main.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit X-Trace: sea.gmane.org 1166470760 6496 80.91.229.2 (18 Dec 2006 19:39:20 GMT) X-Complaints-To: usenet@sea.gmane.org NNTP-Posting-Date: Mon, 18 Dec 2006 19:39:20 +0000 (UTC) Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Mon Dec 18 20:39:15 2006 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([199.232.76.165]) by ciao.gmane.org with esmtp (Exim 4.43) id 1GwOK9-00045v-Ic for ged-emacs-devel@m.gmane.org; Mon, 18 Dec 2006 20:38:58 +0100 Original-Received: from localhost ([127.0.0.1] helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1GwOK9-0001O8-14 for ged-emacs-devel@m.gmane.org; Mon, 18 Dec 2006 14:38:57 -0500 Original-Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1GwIuG-0004xd-0z for emacs-devel@gnu.org; Mon, 18 Dec 2006 08:51:52 -0500 Original-Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1GwIuE-0004wC-Tn for emacs-devel@gnu.org; Mon, 18 Dec 2006 08:51:51 -0500 Original-Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1GwIuE-0004w0-MG for emacs-devel@gnu.org; Mon, 18 Dec 2006 08:51:50 -0500 Original-Received: from [81.80.162.195] (helo=ftp.ilog.fr) by monty-python.gnu.org with esmtps (TLS-1.0:DHE_RSA_AES_256_CBC_SHA:32) (Exim 4.52) id 1GwIuE-0003a4-AX for emacs-devel@gnu.org; Mon, 18 Dec 2006 08:51:50 -0500 Original-Received: from laposte.ilog.fr (cerbere-qfe0 [81.80.162.193]) by ftp.ilog.fr (8.13.1/8.13.1) with ESMTP id kBIDpmvB001333 for ; Mon, 18 Dec 2006 14:51:48 +0100 Original-Received: from marbore.ilog.biz (marbore.ilog.biz [172.17.2.61]) by laposte.ilog.fr (8.13.1/8.13.1) with ESMTP id kBIDphQG032723 for ; Mon, 18 Dec 2006 14:51:43 +0100 Original-Received: from honolulu.ilog.fr ([172.16.15.23]) by marbore.ilog.biz with Microsoft SMTPSVC(6.0.3790.1830); Mon, 18 Dec 2006 14:52:29 +0100 Original-Received: by honolulu.ilog.fr (Postfix, from userid 1001) id 35BF83F420; Mon, 18 Dec 2006 14:47:57 +0100 (CET) Original-To: emacs-devel@gnu.org User-Agent: KMail/1.9.1 Content-Disposition: inline X-OriginalArrivalTime: 18 Dec 2006 13:52:29.0945 (UTC) FILETIME=[C2643E90:01C722AB] X-Mailman-Approved-At: Mon, 18 Dec 2006 14:37:59 -0500 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.devel:63934 Archived-At: Hi, For several years already, the GNU coding standards and the Linux Filesystem Hierarchy Standard specify that 'info' files should be installed in $prefix/share/info rather than in $prefix/info. The rationale is and was that 'info' files are not platform dependent. Since autoconf-2.60 was released 6 months ago, it is easy to actually implement this. But Emacs-22.0.90 still installs into $prefix/info. To follow the above cited standards, the following recipe can be used: 1) Regenerate the 'configure' file with autoconf-2.60 or -2.61. An invocation of 'autoconf' is all that's needed. 2) Apply this patch. I've verified that with this patch, Emacs installs its manuals into $prefix/share/info and that the info mode finds them there. 2006-12-17 Bruno Haible * INSTALL: Mention /usr/local/share/info instead of /usr/local/info. * etc/emacs.1: Likewise. * src/epaths.in (PATH_INFO): Likewise. * nt/paths.h (PATH_INFO): Likewise. * lisp/paths.el (Info-default-directory-list): Put "share/" before "", before new info files will be installed in share/info. * lisp/info.el (Info-default-dirs): Look in $prefix/share/info instead of $prefix/info. * lisp/w32-fns.el (w32-init-info): Likewise. diff -r -c3 --exclude=configure emacs-22.0.90.orig/INSTALL emacs-22.0.90/INSTALL *** emacs-22.0.90.orig/INSTALL 2006-07-09 22:52:09.000000000 +0200 --- emacs-22.0.90/INSTALL 2006-11-15 02:43:49.000000000 +0100 *************** *** 494,503 **** useful for sites at which different kinds of machines share the file system Emacs is installed on. ! `/usr/local/info' holds the on-line documentation for Emacs, known as ! "info files". Many other GNU programs are documented ! using info files as well, so this directory stands ! apart from the other, Emacs-specific directories. `/usr/local/man/man1' holds the man pages for the programs installed in `/usr/local/bin'. --- 494,504 ---- useful for sites at which different kinds of machines share the file system Emacs is installed on. ! `/usr/local/share/info' holds the on-line documentation for Emacs, ! known as "info files". Many other GNU programs are ! documented using info files as well, so this directory ! stands apart from the other, Emacs-specific ! directories. `/usr/local/man/man1' holds the man pages for the programs installed in `/usr/local/bin'. *************** *** 523,530 **** information on this. 8) Check the file `dir' in your site's info directory (usually ! /usr/local/info) to make sure that it has a menu entry for the Emacs ! info files. 9) If your system uses lock files to interlock access to mailer inbox files, then you might need to make the movemail program setuid or setgid --- 524,531 ---- information on this. 8) Check the file `dir' in your site's info directory (usually ! /usr/local/share/info) to make sure that it has a menu entry for the ! Emacs info files. 9) If your system uses lock files to interlock access to mailer inbox files, then you might need to make the movemail program setuid or setgid *************** *** 590,596 **** installed on. `infodir' indicates where to put the info files distributed with ! Emacs; it defaults to `/usr/local/info'. `mandir' indicates where to put the man pages for Emacs and its utilities (like `etags'); it defaults to --- 591,597 ---- installed on. `infodir' indicates where to put the info files distributed with ! Emacs; it defaults to `/usr/local/share/info'. `mandir' indicates where to put the man pages for Emacs and its utilities (like `etags'); it defaults to diff -r -c3 --exclude=configure emacs-22.0.90.orig/etc/emacs.1 emacs-22.0.90/etc/emacs.1 *** emacs-22.0.90.orig/etc/emacs.1 2006-02-07 23:37:19.000000000 +0100 --- emacs-22.0.90/etc/emacs.1 2006-11-15 02:50:24.000000000 +0100 *************** *** 431,437 **** manual is also included in the Emacs source distribution. .PP .SH FILES ! /usr/local/info - files for the Info documentation browser (a subsystem of Emacs) to refer to. Currently not much of Unix is documented here, but the complete text of the Emacs reference manual is included in a convenient tree structured form. --- 431,437 ---- manual is also included in the Emacs source distribution. .PP .SH FILES ! /usr/local/share/info - files for the Info documentation browser (a subsystem of Emacs) to refer to. Currently not much of Unix is documented here, but the complete text of the Emacs reference manual is included in a convenient tree structured form. diff -r -c3 --exclude=configure emacs-22.0.90.orig/lisp/info.el emacs-22.0.90/lisp/info.el *** emacs-22.0.90.orig/lisp/info.el 2006-09-07 22:45:50.000000000 +0200 --- emacs-22.0.90/lisp/info.el 2006-11-15 03:17:11.000000000 +0100 *************** *** 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)))))) 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 *************** *** 81,87 **** dirs (prune-directory-list dirs config)))) prefixes)))) ! ;; If $(prefix)/info is not one of the standard info directories, ;; they are probably installing an experimental version of Emacs, ;; so make sure that experimental version's Info files override ;; the ones in standard directories. --- 81,87 ---- dirs (prune-directory-list dirs config)))) prefixes)))) ! ;; If $(prefix)/share/info is not one of the standard info directories, ;; they are probably installing an experimental version of Emacs, ;; so make sure that experimental version's Info files override ;; the ones in standard directories. diff -r -c3 --exclude=configure emacs-22.0.90.orig/lisp/w32-fns.el emacs-22.0.90/lisp/w32-fns.el *** emacs-22.0.90.orig/lisp/w32-fns.el 2006-02-07 23:37:28.000000000 +0100 --- emacs-22.0.90/lisp/w32-fns.el 2006-11-15 03:18:14.000000000 +0100 *************** *** 205,212 **** ;;; that configuration during build time is correct for runtime. (defun w32-init-info () (let* ((instdir (file-name-directory invocation-directory)) ! (dir1 (expand-file-name "../info/" instdir)) ! (dir2 (expand-file-name "../../../info/" instdir))) (if (file-exists-p dir1) (setq Info-default-directory-list (append Info-default-directory-list (list dir1))) --- 205,212 ---- ;;; that configuration during build time is correct for runtime. (defun w32-init-info () (let* ((instdir (file-name-directory invocation-directory)) ! (dir1 (expand-file-name "../share/info/" instdir)) ! (dir2 (expand-file-name "../../../share/info/" instdir))) (if (file-exists-p dir1) (setq Info-default-directory-list (append Info-default-directory-list (list dir1))) diff -r -c3 --exclude=configure emacs-22.0.90.orig/lispintro/emacs-lisp-intro.texi emacs-22.0.90/lispintro/emacs-lisp-intro.texi *** emacs-22.0.90.orig/lispintro/emacs-lisp-intro.texi 2006-08-24 21:12:48.000000000 +0200 --- emacs-22.0.90/lispintro/emacs-lisp-intro.texi 2006-11-15 02:58:08.000000000 +0100 *************** *** 88,94 **** @c After creating the Info file, edit your Info `dir' file, if the @c `dircategory' section below does not enable your system to @c install the manual automatically. ! @c (The `dir' file is often in the `/usr/local/info/' directory.) @c ================ How to Create an HTML file ================ --- 88,94 ---- @c After creating the Info file, edit your Info `dir' file, if the @c `dircategory' section below does not enable your system to @c install the manual automatically. ! @c (The `dir' file is often in the `/usr/local/share/info/' directory.) @c ================ How to Create an HTML file ================ diff -r -c3 --exclude=configure emacs-22.0.90.orig/nt/paths.h emacs-22.0.90/nt/paths.h *** emacs-22.0.90.orig/nt/paths.h 2006-02-07 23:37:40.000000000 +0100 --- emacs-22.0.90/nt/paths.h 2006-11-15 02:54:58.000000000 +0100 *************** *** 55,61 **** /* Where the configuration process believes the info tree lives. The lisp variable configure-info-directory gets its value from this macro, and is then used to set the Info-default-directory-list. */ ! /* #define PATH_INFO "/usr/local/info" */ #define PATH_INFO "C:/emacs/info" /* arch-tag: f6d46f3c-e1e9-436b-8629-edcaf6597973 --- 55,61 ---- /* Where the configuration process believes the info tree lives. The lisp variable configure-info-directory gets its value from this macro, and is then used to set the Info-default-directory-list. */ ! /* #define PATH_INFO "/usr/local/share/info" */ #define PATH_INFO "C:/emacs/info" /* arch-tag: f6d46f3c-e1e9-436b-8629-edcaf6597973 diff -r -c3 --exclude=configure emacs-22.0.90.orig/src/epaths.in emacs-22.0.90/src/epaths.in *** emacs-22.0.90.orig/src/epaths.in 2006-02-07 23:37:42.000000000 +0100 --- emacs-22.0.90/src/epaths.in 2006-11-15 02:56:16.000000000 +0100 *************** *** 52,58 **** /* Where the configuration process believes the info tree lives. The lisp variable configure-info-directory gets its value from this macro, and is then used to set the Info-default-directory-list. */ ! #define PATH_INFO "/usr/local/info" /* Where Emacs should store game score files. */ #define PATH_GAME "/usr/local/var/games/emacs" --- 52,58 ---- /* Where the configuration process believes the info tree lives. The lisp variable configure-info-directory gets its value from this macro, and is then used to set the Info-default-directory-list. */ ! #define PATH_INFO "/usr/local/share/info" /* Where Emacs should store game score files. */ #define PATH_GAME "/usr/local/var/games/emacs"