gnu: emacs: Do not keep references to the entries of the build-time $PATH.
This reduces the number of references of the output from 54 to 31, removing references notably to gcc, expat, glib:bin, ld-wrapper-0, texinfo, pkg-config, make, gawk, binutils, etc. Reported by David Thompson. * gnu/packages/patches/emacs-exec-path.patch: New file. * gnu-system.am (dist_patch_DATA): Add it. * gnu/packages/emacs.scm (emacs)[source]: Use it.
This commit is contained in:
parent
8214b7fbea
commit
1bef37ee2e
|
@ -407,6 +407,7 @@ dist_patch_DATA = \
|
||||||
gnu/packages/patches/doxygen-tmake.patch \
|
gnu/packages/patches/doxygen-tmake.patch \
|
||||||
gnu/packages/patches/duplicity-piped-password.patch \
|
gnu/packages/patches/duplicity-piped-password.patch \
|
||||||
gnu/packages/patches/duplicity-test_selection-tmp.patch \
|
gnu/packages/patches/duplicity-test_selection-tmp.patch \
|
||||||
|
gnu/packages/patches/emacs-exec-path.patch \
|
||||||
gnu/packages/patches/eudev-rules-directory.patch \
|
gnu/packages/patches/eudev-rules-directory.patch \
|
||||||
gnu/packages/patches/findutils-absolute-paths.patch \
|
gnu/packages/patches/findutils-absolute-paths.patch \
|
||||||
gnu/packages/patches/flashrom-use-libftdi1.patch \
|
gnu/packages/patches/flashrom-use-libftdi1.patch \
|
||||||
|
|
|
@ -64,7 +64,8 @@
|
||||||
version ".tar.xz"))
|
version ".tar.xz"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"0kn3rzm91qiswi0cql89kbv6mqn27rwsyjfb8xmwy9m5s8fxfiyx"))))
|
"0kn3rzm91qiswi0cql89kbv6mqn27rwsyjfb8xmwy9m5s8fxfiyx"))
|
||||||
|
(patches (list (search-patch "emacs-exec-path.patch")))))
|
||||||
(build-system glib-or-gtk-build-system)
|
(build-system glib-or-gtk-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
'(#:phases (alist-cons-before
|
'(#:phases (alist-cons-before
|
||||||
|
|
|
@ -0,0 +1,18 @@
|
||||||
|
Do not capture the build-time value of $PATH in the 'emacs' executable
|
||||||
|
since this can noticeably increase the size of the closure of Emacs
|
||||||
|
with things like GCC being referenced.
|
||||||
|
|
||||||
|
--- a/lisp/loadup.el
|
||||||
|
+++ b/lisp/loadup.el
|
||||||
|
@@ -64,6 +64,11 @@
|
||||||
|
(expand-file-name "textmodes" dir)
|
||||||
|
(expand-file-name "vc" dir)))))
|
||||||
|
|
||||||
|
+;; Reset 'exec-path' so we don't capture the build-time $PATH in the
|
||||||
|
+;; 'emacs' executable.
|
||||||
|
+(setq-default exec-path nil)
|
||||||
|
+(setq exec-path nil)
|
||||||
|
+
|
||||||
|
(if (eq t purify-flag)
|
||||||
|
;; Hash consing saved around 11% of pure space in my tests.
|
||||||
|
(setq purify-flag (make-hash-table :test 'equal :size 70000)))
|
Loading…
Reference in New Issue