unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
From: Ulrich Mueller <ulm@gentoo.org>
To: Eli Zaretskii <eliz@gnu.org>
Cc: gnu-emacs@gentoo.org, emacs-devel@gnu.org
Subject: Re: Where should dynamic modules be installed?
Date: Mon, 21 Oct 2019 16:36:02 +0200	[thread overview]
Message-ID: <w6go8ya6u99.fsf@kph.uni-mainz.de> (raw)
In-Reply-To: <83d0eq2oxb.fsf@gnu.org> (Eli Zaretskii's message of "Mon, 21 Oct 2019 16:44:48 +0300")

>>>>> On Mon, 21 Oct 2019, Eli Zaretskii wrote:

>> We are going to include the first package with a dynamically loaded
>> module (emacs-libvterm) in Gentoo. The question arose where the .so
>> file should be installed? Since it is a system dependent binary,
>> installing it under /usr/share/emacs/ looks wrong. I cannot find
>> anything about a recommended install location in the documentation.

> Why do you think /usr/share/emacs/ is wrong?  That's where the
> site-lisp directory lives.

Yes, but modules aren't lisp files but dynamic libraries, which are
architecture dependent. The FHS [1] says that /usr/share is for data
files that are architecture *independent*.

>> Also, wouldn't it be cleaner if Emacs had a separate variable (analog
>> to image-load-path, custom-theme-load-path, etc.) for loading of
>> dynamic modules, instead of reusing load-path?

> The idea with reusing load-path was that modules will almost always be
> accompanied by some .el file(s), and having those separately from the
> module binaries would be a complication.

If the installation follows FHS guidelines, then *.el{,c} will go into
/usr/share/, while modules will go into /usr/lib/ or /usr/lib64/. Which
means that load paths for elisp files and modules will be disjoint, so
it looks a bit unnatural to use the same variable for them.

[1] https://refspecs.linuxfoundation.org/FHS_3.0/fhs/ch04s11.html



  reply	other threads:[~2019-10-21 14:36 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-10-21 10:45 Where should dynamic modules be installed? Ulrich Mueller
2019-10-21 13:44 ` Eli Zaretskii
2019-10-21 14:36   ` Ulrich Mueller [this message]
2019-10-24  0:31 ` Paul Eggert
2019-10-24 12:02   ` Andy Moreton
2019-10-24 14:28     ` Stefan Monnier
2019-10-24 14:04   ` Eli Zaretskii
2019-10-24 15:39   ` Ulrich Mueller
     [not found] <mailman.96.1571932821.13349.emacs-devel@gnu.org>
2019-10-24 16:24 ` Ulrich Mueller
2019-10-24 18:36   ` Stefan Monnier

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.gnu.org/software/emacs/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=w6go8ya6u99.fsf@kph.uni-mainz.de \
    --to=ulm@gentoo.org \
    --cc=eliz@gnu.org \
    --cc=emacs-devel@gnu.org \
    --cc=gnu-emacs@gentoo.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).