emacs-devel
[Top][All Lists]
Advanced

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

Re: How to ship native modules?


From: Eli Zaretskii
Subject: Re: How to ship native modules?
Date: Tue, 21 Feb 2017 05:41:14 +0200

> From: Elias Mårtenson <address@hidden>
> Date: Tue, 21 Feb 2017 10:48:03 +0800
> Cc: emacs-devel <address@hidden>
> 
>  Is it different from any other optional library in any significant
>  way? E.g., GPM or the image libraries? They all require to have the
>  library installed for Emacs to be able to be built with its support.
> 
> Technically, it's the same thing. The difference is that most people don't 
> have the krb5 packages installed, and
> enabling the GSS feature would require packagers to add another dependency to 
> Emacs, giving them two
> alternatives: 1) Not include GSS in their prebuilt version of Emacs, or 2) 
> add another dependency to Emacs,
> resulting in another package being installed with it.
> 
> Now, krb5 is not a big library, so option 2 above is IMHO the right way to 
> go, but I worry that packagers won't
> see it that way and we'll end up with a feature that users would have to 
> rebuild their Emacs to use.
> 
> However, there is an upside. Most people who need this feature are in 
> corporate environments, usually on
> Windows (Kerberos is the standard authentication mechanism in Active 
> Directory) and the runtime libraries
> are a standard part of Windows, so at on that platform there is no issue.

Really?  I was under the impression that one would need to install the
Kerberos libraries from http://web.mit.edu/kerberos/dist/, and then
have the GSSAPI library built for Windows.  These all don't seem to be
available out of the box on MS-Windows.  Am I missing something?

>  You can provide a small Makefile that the user will have to invoke in
>  order to compile the C source. Same as in modules/mod-test/ in the
>  Emacs sources.
> 
> I could, and I'd have to. But it would be very nice if this could be part of 
> the M‍-‍x package‍-‍install process.

I think that making package.el be able to compile programs in
languages like C is an ambitious goal that is best left to end users
at this stage.  For simple enough modules, the Makefile can be made
small and portable, so IMO it isn't worth the complexity to do more
than that, at least not yet.

> Installing in site‍-‍lisp requires root. Can I put it somewhere in 
> $HOME/.emacs.d?

Yes, like we do with Lisp packages.  A module can live anywhere a Lisp
package can live, in order for Emacs to find it.



reply via email to

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