GNU bug report logs -
#31929
27.0.50; Have make install copy the emacs-module.h to the destination install dir
Previous Next
Reported by: Kaushal Modi <kaushal.modi <at> gmail.com>
Date: Thu, 21 Jun 2018 16:05:01 UTC
Severity: minor
Merged with 32763,
33228
Found in versions 26.1, 27.0.50
Fixed in versions 26.2, 27.1
Done: Philipp Stephani <p.stephani2 <at> gmail.com>
Bug is archived. No further changes may be made.
Full log
View this message in rfc822 format
[Message part 1 (text/plain, inline)]
Your message dated Wed, 3 Oct 2018 22:02:08 +0200
with message-id <CAArVCkR6Nk0fpcJSELcAs2i4AHJ_pm8HcM6W+Xec8CXWaMbo0A <at> mail.gmail.com>
and subject line Re: [PATCH] Install emacs-module.h (Bug#31929)
has caused the debbugs.gnu.org bug report #31929,
regarding 26.1; emacs-module.h isn't installed with Emacs for module development
to be marked as done.
(If you believe you have received this mail in error, please contact
help-debbugs <at> gnu.org.)
--
31929: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=31929
GNU Bug Tracking System
Contact help-debbugs <at> gnu.org with problems
[Message part 2 (message/rfc822, inline)]
I've recently developed a simple module and ran into a surprising issue
with the skeleton: I couldn't locate the emacs-module.h in my system
matching the Emacs installation the module is compiled against. I
eventually gave up and just bundled the emacs-module.h from a Git
checkout with my module's source code. It makes up for most of the code
in the project.
This is far from ideal. If I give an Emacs user the source code of a
module without that header file, they can't easily compile it for their
system. This severely hamper a workflow where a package manager would
be extended to handle module compilation as I haven't found other Emacs
modules bundling the header file. Is this an oversight in the
installation process or a deliberate design decision?
[Message part 3 (message/rfc822, inline)]
[Message part 4 (text/plain, inline)]
Since there were no more comments, I've installed (a tiny variant of) this
patch as 00ea749f2a.
Philipp Stephani <p.stephani2 <at> gmail.com> schrieb am Fr., 21. Sep. 2018 um
15:28 Uhr:
> * Makefile.in (includedir): New variable.
> (install-arch-indep): Install emacs-module.h.
> (uninstall): Uninstall emacs-module.h.
> ---
> Makefile.in | 6 ++++++
> 1 file changed, 6 insertions(+)
>
> diff --git a/Makefile.in b/Makefile.in
> index 19bf7c423f..5346429264 100644
> --- a/Makefile.in
> +++ b/Makefile.in
> @@ -151,6 +151,9 @@ libexecdir=
> # Currently only used for the systemd service file.
> libdir=@libdir@
>
> +# Where to install emacs-module.h.
> +includedir=@includedir@
> +
> # Where to install Emacs's man pages.
> # Note they contain cross-references that expect them to be in section 1.
> mandir=@mandir@
> @@ -558,6 +561,8 @@ set_installuser=
> ## See also these comments from 2004 about cp -r working fine:
> ## https://lists.gnu.org/r/autoconf-patches/2004-11/msg00005.html
> install-arch-indep: lisp install-info install-man
> ${INSTALL_ARCH_INDEP_EXTRA}
> + $(MKDIR_P) -m 0755 $(includedir)
> + $(INSTALL_DATA) src/emacs-module.h $(includedir)/emacs-module.h
> -set ${COPYDESTS} ; \
> unset CDPATH; \
> $(set_installuser); \
> @@ -741,6 +746,7 @@ install-strip:
> ###
> ### Don't delete the lisp and etc directories if they're in the source
> tree.
> uninstall: uninstall-$(NTDIR) uninstall-doc
> + rm -f $(includedir)/emacs-module.h
> $(MAKE) -C lib-src uninstall
> -unset CDPATH; \
> for dir in "$(DESTDIR)${lispdir}" "$(DESTDIR)${etcdir}" ; do \
> --
> 2.19.0
>
>
[Message part 5 (text/html, inline)]
This bug report was last modified 6 years and 199 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.