--- Begin Message ---
Subject: |
28.2; ’uninstall’ make target does not remove .eln native compiled files |
Date: |
Tue, 13 Sep 2022 10:51:12 +0200 |
User-agent: |
Notmuch/0.37 (https://notmuchmail.org) |
While building emacs to upgrade it from version 28.1 to 28.2 I noticed
that the "uninstall" make target leaves native compiled .eln files behind
in the installation target directory. The same happens with the
development version 29 from git, altough with less .eln files.
This is how to reproduce the bug by installing emacs to an new empty
directory; cwd is a regular emacs 28.2 source tree:
$ mkdir /tmp/emacs-28.2
$ ./configure --with-native-compilation --prefix=/tmp/emacs-28.2/
[... snip]
$ make -j4
[... snip]
$ make install
[... snip]
$ make uninstall
[... snip]
$ find /tmp/emacs-28.2/
/tmp/emacs-28.2/
/tmp/emacs-28.2/share
/tmp/emacs-28.2/share/info
/tmp/emacs-28.2/share/info/dir
/tmp/emacs-28.2/share/man
/tmp/emacs-28.2/share/man/man1
/tmp/emacs-28.2/share/applications
/tmp/emacs-28.2/share/applications/emacsclient.desktop
/tmp/emacs-28.2/share/applications/emacs-mail.desktop
/tmp/emacs-28.2/share/applications/emacsclient-mail.desktop
/tmp/emacs-28.2/share/metainfo
/tmp/emacs-28.2/share/icons
/tmp/emacs-28.2/share/icons/hicolor
/tmp/emacs-28.2/share/icons/hicolor/128x128
/tmp/emacs-28.2/share/icons/hicolor/128x128/apps
/tmp/emacs-28.2/share/icons/hicolor/16x16
/tmp/emacs-28.2/share/icons/hicolor/16x16/apps
/tmp/emacs-28.2/share/icons/hicolor/24x24
/tmp/emacs-28.2/share/icons/hicolor/24x24/apps
/tmp/emacs-28.2/share/icons/hicolor/32x32
/tmp/emacs-28.2/share/icons/hicolor/32x32/apps
/tmp/emacs-28.2/share/icons/hicolor/48x48
/tmp/emacs-28.2/share/icons/hicolor/48x48/apps
/tmp/emacs-28.2/share/icons/hicolor/scalable
/tmp/emacs-28.2/share/icons/hicolor/scalable/apps
/tmp/emacs-28.2/share/icons/hicolor/scalable/mimetypes
/tmp/emacs-28.2/share/emacs
/tmp/emacs-28.2/share/emacs/site-lisp
/tmp/emacs-28.2/share/emacs/site-lisp/subdirs.el
/tmp/emacs-28.2/lib
/tmp/emacs-28.2/lib/systemd
/tmp/emacs-28.2/lib/systemd/user
/tmp/emacs-28.2/lib/emacs
/tmp/emacs-28.2/lib/emacs/28.2
/tmp/emacs-28.2/lib/emacs/28.2/native-lisp
/tmp/emacs-28.2/lib/emacs/28.2/native-lisp/28.2-418cd9aa
/tmp/emacs-28.2/lib/emacs/28.2/native-lisp/28.2-418cd9aa/preloaded
/tmp/emacs-28.2/lib/emacs/28.2/native-lisp/28.2-418cd9aa/preloaded/bindings-d30713c5-1ec0133a.eln
/tmp/emacs-28.2/lib/emacs/28.2/native-lisp/28.2-418cd9aa/preloaded/buff-menu-da4b0b04-65a249b6.eln
/tmp/emacs-28.2/lib/emacs/28.2/native-lisp/28.2-418cd9aa/preloaded/case-table-3a8e2808-be7656d4.eln
/tmp/emacs-28.2/lib/emacs/28.2/native-lisp/28.2-418cd9aa/preloaded/button-747c9d6e-948de613.eln
/tmp/emacs-28.2/lib/emacs/28.2/native-lisp/28.2-418cd9aa/preloaded/abbrev-2af30c9a-81a91c7e.eln
/tmp/emacs-28.2/lib/emacs/28.2/native-lisp/28.2-418cd9aa/preloaded/cus-face-74f1689e-1f20b9c1.eln
/tmp/emacs-28.2/lib/emacs/28.2/native-lisp/28.2-418cd9aa/preloaded/cus-start-26315480-6f2c6ee4.eln
/tmp/emacs-28.2/lib/emacs/28.2/native-lisp/28.2-418cd9aa/preloaded/disp-table-375616aa-5c285770.eln
/tmp/emacs-28.2/lib/emacs/28.2/native-lisp/28.2-418cd9aa/preloaded/dnd-12d90309-f8c52779.eln
/tmp/emacs-28.2/lib/emacs/28.2/native-lisp/28.2-418cd9aa/preloaded/dos-fns-6e9410f2-9e80dcb2.eln
[... CUT .... 133 other native compiled .eln files ....]
/tmp/emacs-28.2/include
/tmp/emacs-28.2/bin
/tmp/emacs-28.2/libexec
/tmp/emacs-28.2/libexec/emacs
Best regards.
--- End Message ---
--- Begin Message ---
Subject: |
Re: bug#57771: 28.2; ’uninstall’ make target does not remove .eln native compiled files |
Date: |
Wed, 14 Sep 2022 15:17:44 +0300 |
> From: Alfredo Finelli <alf@computationes.de>
> Cc: 57771@debbugs.gnu.org
> Date: Wed, 14 Sep 2022 09:34:33 +0200
>
> Eli Zaretskii <eliz@gnu.org> writes:
>
> > Does the patch below give good results?
> >
> > diff --git a/Makefile.in b/Makefile.in
> > index d288bac..3f811ea 100644
> > --- a/Makefile.in
> > +++ b/Makefile.in
> > @@ -844,7 +844,7 @@ uninstall:
> > rm -f "$(DESTDIR)$(includedir)/emacs-module.h"
> > $(MAKE) -C lib-src uninstall
> > -unset CDPATH; \
> > - for dir in "$(DESTDIR)${lispdir}" "$(DESTDIR)${etcdir}" ; do \
> > + for dir in "$(DESTDIR)${lispdir}" "$(DESTDIR)${etcdir}"
> > "$(ELN_DESTDIR)" ; do \
> > if [ -d "$${dir}" ]; then \
> > case `cd "$${dir}" ; /bin/pwd` in \
> > "`cd ${srcdir} ; /bin/pwd`"* ) ;; \
>
> Thank you for your prompt reply! After testing it I can confirm that the
> patch solves the problem.
Thanks, installed on the emacs-28 branch, and closing the bug report.
--- End Message ---