auctex-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [AUCTeX-devel] Re: Repository for RefTeX


From: Stefan Monnier
Subject: Re: [AUCTeX-devel] Re: Repository for RefTeX
Date: Mon, 29 Jan 2007 23:37:22 -0500
User-agent: Gnus/5.11 (Gnus v5.11) Emacs/22.0.93 (gnu/linux)

>> That looks OK.  If install.el does its job properly it will
>> - untar this into the user's elisp repository (~/lib/emacs or ~/share/emacs
>> if I were to choose).
>> - build the .elc and .info files.
>> - construct a "autoloads" file that contains the relevant autoloads, as well
>> as commands to adjust load-path and Info-directory-path.
>> - add a line in the user's .emacs to load this autoloads file.
>> 
>> The first 3 steps are the installation proper.  The last step is
>> the activation.  This separation is important in case the installation is
>> made by the sysadmin into /usr/local/lib/emacs.  The separation is also
>> important in case you want to install several different versions of
>> a package (since usually only one of those versions can be loaded in
>> a given Emacs session at a time).

> One common operation when creating package files for various
> distributions (probably including XEmacs packages) is to install stuff
> not into the detected tree, say /usr/share/emacs/site-lisp, but rather
> into /tmp/rpm-34563/usr/share/emacs/site-lisp or similar, while having
> all files in that location refer to the _ultimate_ target instead of
> this temporary tree.

> Would install.el be comfortable with that kind of operation?

Yes.  Barring any oversight on my part, the installed package doesn't
statically refer to its own location, so it can be moved at will and can
even be used at the same time at various locations (e.g. if it's NFS shared
and mounted at different places).

More specifically, the package learns about its own location at runtime by
checking the value of "load-file-name" when the "autloads" file is loaded:

   ;; Tell Emacs to look for elisp files in this directory.  -- Install
   (add-to-list 'load-path
                 (or (file-name-directory load-file-name) (car load-path)))


-- Stefan




reply via email to

[Prev in Thread] Current Thread [Next in Thread]