From: lin Sun via "Bug reports for GNU Emacs, the Swiss army knife of text editors" <bug-gnu-emacs@gnu.org>
To: 62609@debbugs.gnu.org, Eli Zaretskii <eliz@gnu.org>
Subject: bug#62609: 29.0.60; [PATCH] src/comp.c: New variable `comp-el-to-eln-strip-prefix` for `comp-el-to-eln-rel-filename`
Date: Mon, 3 Apr 2023 00:53:18 +0000 [thread overview]
Message-ID: <CABCREdpwPgOz1oDu0AOZRyP6OStH+cVDZsa5OnaWV=wpC+bMtA@mail.gmail.com> (raw)
In-Reply-To: <CABCREdojDr56zAi62=pEoi-Oh5tAcCzTNoPFaNKRFVoJgVVVCA@mail.gmail.com>
[-- Attachment #1: Type: text/plain, Size: 467 bytes --]
Hi Eli,
Apologize for my wrong comment.
You're right, the patch will allow to relocate/copy an elisp source folder from
/home/userA/.emacs.d/epla/**.el to
/home/userB/.emacs.d/epla/**.el.
So the patch should be the
"0002-New-variable-comp-el-to-eln-strip-prefix-for-comp-el.patch"
attached in this email.
And agree with you, it's dangerous when this variable is configured
with an arbitrary value.
So please feel free to close this ticket. Thanks
Best regards
Lin
[-- Attachment #2: 0002-New-variable-comp-el-to-eln-strip-prefix-for-comp-el.patch --]
[-- Type: text/x-patch, Size: 3181 bytes --]
From 78cfbda547678a1c655c8c3c06059b6d16696380 Mon Sep 17 00:00:00 2001
From: Lin Sun <sunlin7@hotmail.com>
Date: Sun, 2 Apr 2023 00:00:09 +0000
Subject: [PATCH] New variable `comp-el-to-eln-strip-prefix` for
`comp-el-to-eln-rel-filename`
* src/comp.c: define the variable `comp-el-to-eln-strip-prefix`
* emacs-lisp/comp.el: forward the variable to native compile workers
---
lisp/emacs-lisp/comp.el | 1 +
src/comp.c | 17 +++++++++++++++--
2 files changed, 16 insertions(+), 2 deletions(-)
diff --git a/lisp/emacs-lisp/comp.el b/lisp/emacs-lisp/comp.el
index e97832455b9..6c9ccb247ca 100644
--- a/lisp/emacs-lisp/comp.el
+++ b/lisp/emacs-lisp/comp.el
@@ -3996,6 +3996,7 @@ comp-run-async-workers
native-comp-driver-options
load-path
backtrace-line-length
+ comp-el-to-eln-strip-prefix
;; package-load-list
;; package-user-dir
;; package-directory-list
diff --git a/src/comp.c b/src/comp.c
index 3f72d088a66..d464616ff3e 100644
--- a/src/comp.c
+++ b/src/comp.c
@@ -4400,7 +4400,11 @@ DEFUN ("comp-el-to-eln-rel-filename", Fcomp_el_to_eln_rel_filename,
and Emacs must have been compiled with zlib; the file will be
uncompressed on the fly to hash its contents.
Value includes the original base name, followed by 2 hash values,
-one for the file name and another for its contents, followed by .eln. */)
+one for the file name and another for its contents, followed by .eln.
+
+The file part hash value is generated from the absolute file path, however,
+the absolute path can be stripped with `comp-el-to-eln-strip-prefix' to left
+the significant part for hashing. */)
(Lisp_Object filename)
{
CHECK_STRING (filename);
@@ -4462,7 +4466,7 @@ DEFUN ("comp-el-to-eln-rel-filename", Fcomp_el_to_eln_rel_filename,
loadsearch_re_list = list2 (sys_re, Fregexp_quote (dump_load_search));
}
- Lisp_Object lds_re_tail = loadsearch_re_list;
+ Lisp_Object lds_re_tail = CALLN (Fappend, Vcomp_el_to_eln_strip_prefix, loadsearch_re_list);
FOR_EACH_TAIL (lds_re_tail)
{
Lisp_Object match_idx =
@@ -5864,6 +5868,15 @@ syms_of_comp (void)
dump reload. */
Vnative_comp_eln_load_path = Fcons (build_string ("../native-lisp/"), Qnil);
+ DEFVAR_LISP ("comp-el-to-eln-strip-prefix", Vcomp_el_to_eln_strip_prefix,
+ doc: /* List of regex to strip the path prefix in the function
+`comp-el-to-eln-rel-filename'.
+
+When the `comp-el-to-eln-rel-filename' try to convert an <absolute-path>.el
+to eln file name, it will remove the matched prefix on this list and hash
+the rest part to be middle of eln file name, this will allow to relocate the
+*.el source file without rebuild the relative *.eln files. */);
+
DEFVAR_LISP ("native-comp-enable-subr-trampolines",
Vnative_comp_enable_subr_trampolines,
doc: /* If non-nil, enable generation of trampolines for calling primitives.
--
2.20.5
next prev parent reply other threads:[~2023-04-03 0:53 UTC|newest]
Thread overview: 93+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <1181651021.466162.1581309285621.ref@mail.yahoo.com>
2020-02-10 4:34 ` bug#39539: 27.0.60; [PATCH] Fix error message "Invalid function: with-connection-local-variables" Sun Lin via Bug reports for GNU Emacs, the Swiss army knife of text editors
2020-02-10 6:46 ` bug#39539: Acknowledgement (27.0.60; [PATCH] Fix error message "Invalid function: with-connection-local-variables") Sun Lin
2020-02-10 8:23 ` Sun Lin via Bug reports for GNU Emacs, the Swiss army knife of text editors
2020-02-10 16:04 ` Sun Lin via Bug reports for GNU Emacs, the Swiss army knife of text editors
2020-02-10 16:22 ` Stefan Kangas
2020-02-10 16:44 ` Eli Zaretskii
2022-09-27 21:10 ` bug#58127: 29.0.50; [PATCH] Fix the calc load calc-loaddefs.el without suffix sensitive lin Sun via Bug reports for GNU Emacs, the Swiss army knife of text editors
2022-09-27 21:15 ` Lars Ingebrigtsen
2022-09-27 22:23 ` bug#58129: 29.0.50; [PATCH] Fix (package-update) always install package due to invalid version comparison lin Sun via Bug reports for GNU Emacs, the Swiss army knife of text editors
2022-09-28 11:05 ` Lars Ingebrigtsen
2022-10-22 5:16 ` bug#58708: 29.0.50; [PATCH] Fix build error that gflags.will_dump_ not surround by the directives as its definition lin Sun via Bug reports for GNU Emacs, the Swiss army knife of text editors
2022-10-22 7:00 ` Eli Zaretskii
2022-10-25 5:32 ` lin Sun
2022-10-25 11:57 ` Eli Zaretskii
2022-10-25 22:03 ` lin Sun via Bug reports for GNU Emacs, the Swiss army knife of text editors
2022-10-29 5:01 ` bug#58860: 29.0.50; [PATCH] semantic/fw.el: speed up the 'semantic-find-file-noselect' lin Sun via Bug reports for GNU Emacs, the Swiss army knife of text editors
2022-10-29 6:31 ` Eli Zaretskii
2022-10-29 15:06 ` Stefan Monnier via Bug reports for GNU Emacs, the Swiss army knife of text editors
2022-10-30 6:56 ` Eli Zaretskii
2022-10-30 12:37 ` Stefan Monnier via Bug reports for GNU Emacs, the Swiss army knife of text editors
2022-10-30 17:13 ` lin Sun via Bug reports for GNU Emacs, the Swiss army knife of text editors
2022-10-31 13:22 ` Eli Zaretskii
2022-11-13 4:26 ` bug#59236: 29.0.50; [PATCH] bytecomp.el: (byte-recompile-directory): Fix negated ignore lin Sun via Bug reports for GNU Emacs, the Swiss army knife of text editors
2022-11-13 7:12 ` Eli Zaretskii
2022-11-13 7:22 ` Philip Kaludercic
2022-11-09 1:19 ` bug#59139: 29.0.50; batch-byte-recompile-directory doesn't recompile file as expected David Ponce
2022-11-09 9:41 ` bug#59139: Acknowledgement (29.0.50; batch-byte-recompile-directory doesn't recompile file as expected) David Ponce
2022-11-12 16:01 ` bug#59139: 29.0.50; batch-byte-recompile-directory doesn't recompile file as expected David Ponce
[not found] ` <handler.59139.D59236.16683241653696.notifdone@debbugs.gnu.org>
2022-11-13 10:12 ` bug#59139: closed (Re: bug#59236: 29.0.50; [PATCH] bytecomp.el: (byte-recompile-directory): Fix negated ignore) David Ponce
2022-11-14 11:50 ` Philip Kaludercic
2022-11-13 7:45 ` bug#59236: 29.0.50; [PATCH] bytecomp.el: (byte-recompile-directory): Fix negated ignore lin Sun via Bug reports for GNU Emacs, the Swiss army knife of text editors
2022-11-14 17:52 ` lin Sun via Bug reports for GNU Emacs, the Swiss army knife of text editors
2022-11-16 19:21 ` lin Sun via Bug reports for GNU Emacs, the Swiss army knife of text editors
2022-11-16 19:30 ` Philip Kaludercic
2022-11-16 19:43 ` lin Sun via Bug reports for GNU Emacs, the Swiss army knife of text editors
2022-12-19 22:39 ` bug#60209: 29.0.50; [PATCH] lisp/progmodes/ruby-mode.el b/lisp/progmodes/ruby-mode.el lin Sun via Bug reports for GNU Emacs, the Swiss army knife of text editors
2023-04-02 5:13 ` bug#62609: 29.0.60; [PATCH] src/comp.c: New variable `comp-el-to-eln-strip-prefix` for `comp-el-to-eln-rel-filename` lin Sun via Bug reports for GNU Emacs, the Swiss army knife of text editors
2023-04-02 6:02 ` Eli Zaretskii
2023-04-03 0:53 ` lin Sun via Bug reports for GNU Emacs, the Swiss army knife of text editors [this message]
2023-04-03 12:33 ` Eli Zaretskii
2023-04-03 14:08 ` Andrea Corallo
2023-04-03 14:37 ` Eli Zaretskii
2023-04-11 5:15 ` bug#62767: 29.0.90; [PATCH] *lisp/emacs-lisp/package.el: set variables after info package lin Sun via Bug reports for GNU Emacs, the Swiss army knife of text editors
2023-04-14 20:07 ` Philip Kaludercic
2023-04-14 22:12 ` lin Sun via Bug reports for GNU Emacs, the Swiss army knife of text editors
2023-04-15 9:15 ` Eli Zaretskii
2023-04-15 10:43 ` Philip Kaludercic
2023-04-15 10:58 ` Eli Zaretskii
2023-04-17 6:13 ` lin Sun via Bug reports for GNU Emacs, the Swiss army knife of text editors
2023-04-17 6:53 ` Ruijie Yu via Bug reports for GNU Emacs, the Swiss army knife of text editors
2023-04-17 6:59 ` Ruijie Yu via Bug reports for GNU Emacs, the Swiss army knife of text editors
2023-04-17 13:24 ` Philip Kaludercic
2023-04-17 15:27 ` lin Sun via Bug reports for GNU Emacs, the Swiss army knife of text editors
2023-04-17 16:03 ` Philip Kaludercic
2023-04-17 17:25 ` Eli Zaretskii
2023-04-17 16:30 ` Stefan Monnier via Bug reports for GNU Emacs, the Swiss army knife of text editors
2023-04-19 5:11 ` lin Sun via Bug reports for GNU Emacs, the Swiss army knife of text editors
2023-04-20 9:12 ` Eli Zaretskii
2023-04-20 16:16 ` lin Sun via Bug reports for GNU Emacs, the Swiss army knife of text editors
2023-05-23 22:11 ` lin Sun via Bug reports for GNU Emacs, the Swiss army knife of text editors
[not found] ` <CABCREdpha5W_phrK8iLVN973-m5BjahNgMhpHDC=oA-X4Vvj9A@mail.gmail.com>
2023-05-24 2:53 ` lin Sun
2023-05-24 11:32 ` Eli Zaretskii
2023-05-25 0:46 ` lin Sun via Bug reports for GNU Emacs, the Swiss army knife of text editors
2023-05-26 9:37 ` Eli Zaretskii
2023-05-30 3:56 ` lin Sun via Bug reports for GNU Emacs, the Swiss army knife of text editors
2023-05-30 10:25 ` Eli Zaretskii
2023-05-23 4:28 ` bug#63653: 29.0.91; [PATCH] More fix for loading SQLite extensions lin Sun via Bug reports for GNU Emacs, the Swiss army knife of text editors
2023-05-23 4:36 ` lin Sun
2023-05-23 11:33 ` Eli Zaretskii
2023-05-23 13:40 ` lin Sun
2023-05-23 14:54 ` Eli Zaretskii
2023-05-23 15:01 ` lin Sun
2023-05-23 4:52 ` lin Sun
[not found] ` <CABCREdoXGHXZPJJK7255c=DEAGqUtMc67Yj0VxwbS+GGXqciZQ@mail.gmail.com>
2023-06-30 21:55 ` bug#64386: 29.0.91; [PATCH] *src/emacs.c: a comma for elements of usage_message Lin Sun via Bug reports for GNU Emacs, the Swiss army knife of text editors
2023-07-01 1:34 ` Po Lu via Bug reports for GNU Emacs, the Swiss army knife of text editors
2023-07-01 4:43 ` Lin Sun via Bug reports for GNU Emacs, the Swiss army knife of text editors
2023-09-01 18:56 ` Stefan Kangas
2023-07-01 6:10 ` Eli Zaretskii
2023-08-16 19:39 ` bug#65346: 30.0.50; *lisp/net/eww.el: new function 'eww-open-in-new-buffer-background' Lin Sun via Bug reports for GNU Emacs, the Swiss army knife of text editors
2023-08-17 7:49 ` Eli Zaretskii
2023-08-17 22:51 ` Lin Sun via Bug reports for GNU Emacs, the Swiss army knife of text editors
2023-08-18 5:52 ` Eli Zaretskii
2023-08-18 19:03 ` Lin Sun via Bug reports for GNU Emacs, the Swiss army knife of text editors
2023-08-20 8:50 ` Eli Zaretskii
2023-08-20 14:29 ` Lin Sun via Bug reports for GNU Emacs, the Swiss army knife of text editors
2023-08-20 16:44 ` Juri Linkov
2023-08-27 16:40 ` Eli Zaretskii
2023-08-18 2:15 ` Michael Heerdegen
2023-08-18 6:07 ` Eli Zaretskii
2023-10-23 17:15 ` bug#66710: 29.0.1; [PATCH] *doc/misc/gnus.texi: Fix unmatched quote in gnus doc Lin Sun
2023-10-23 18:57 ` Eli Zaretskii
2023-10-23 23:30 ` bug#62767: " Lin Sun
2023-09-01 19:58 ` bug#60209: 29.0.50; [PATCH] lisp/progmodes/ruby-mode.el b/lisp/progmodes/ruby-mode.el Stefan Kangas
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
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to='CABCREdpwPgOz1oDu0AOZRyP6OStH+cVDZsa5OnaWV=wpC+bMtA@mail.gmail.com' \
--to=bug-gnu-emacs@gnu.org \
--cc=62609@debbugs.gnu.org \
--cc=eliz@gnu.org \
--cc=sunlin7@yahoo.com \
/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 external index
https://git.savannah.gnu.org/cgit/emacs.git
https://git.savannah.gnu.org/cgit/emacs/org-mode.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.