From: Eli Zaretskii <eliz@gnu.org>
To: Aymeric Agon-Rambosson <aymeric.agon@yandex.com>
Cc: spwhitton@spwhitton.name, monnier@iro.umontreal.ca,
emacs-devel@gnu.org, akrl@sdf.org, larsi@gnus.org,
rlb@defaultvalue.org
Subject: Re: Finalizing 'inhibit-automatic-native-compilation'
Date: Mon, 06 Feb 2023 16:29:40 +0200 [thread overview]
Message-ID: <83357irhnv.fsf@gnu.org> (raw)
In-Reply-To: <87cz6nxdqy.fsf@X570GP> (message from Aymeric Agon-Rambosson on Mon, 06 Feb 2023 11:57:41 +0100)
> From: Aymeric Agon-Rambosson <aymeric.agon@yandex.com>
> Cc: Eli Zaretskii <eliz@gnu.org>, monnier@iro.umontreal.ca,
> emacs-devel@gnu.org, akrl@sdf.org, larsi@gnus.org, rlb@defaultvalue.org
> Date: Mon, 06 Feb 2023 11:57:41 +0100
>
> Hello everyone, and sorry for my being late.
Thanks for chiming in.
> >> . where and under what circumstances will those advised
> >> functions be
> >> called, as part of your preparation of the packages? (if
> >> the
> >> advised functions are only called when the end-user uses
> >> the
> >> package, that is not relevant to the present discussion)
>
> As far as we can tell, this advising of primitives happens mostly
> in tests, that is in our build environment on our build machines.
Test harnesses frequently need to jump through various hoops,
certainly so when they need to mock-out some APIs to do their job.
> >> . if we provide a way to specify, via
> >> comp-enable-subr-trampolines,
> >> the directory to which the trampolines will be written,
> >> will that
> >> satisfy your uses? if not, why not (details, please)?
> >> . why cannot you use native-comp-eln-load-path to force the
> >> trampolines go to a directory of your choice?
>
> In this case, this is not pertinent. We need to :
> - either not to have to install a trampoline
> - or, if we have to, be certain to find it in the *first*
> directory returned by `comp-eln-load-path-eff'.
I don't think I understand: the output of that function depends on
native-comp-eln-load-path, so why tweaking that is not enough?
> If neither condition are met, we reach the error. The only
> variables that are of help here are
> `native-comp-never-optimize-functions' or
> `comp-enable-subr-trampolines'.
If those can help you solve your problem, I think that's "good enough"
for something that needs to be done in a test suite. My primary
target audience, in contrast, is Emacs users.
> Since EMACS_INHIBIT_AUTOMATIC_NATIVE_COMPILATION acts on neither
> of these, we have to manually add
>
> (with-eval-after-load 'comp (push 'insert-file-contents
> native-comp-never-optimize-functions))
>
> At the beginning of the test file.
A similar solution could have solved your problem even if
inhibit-automatic-native-compilation didn't exist at all,and we only
had comp-enable-subr-trampolines and native-comp-deferred-compilation,
right?
> For this reason, it would be nice, if possible, that
> EMACS_INHIBIT_AUTOMATIC_NATIVE_COMPILATION also disables
> trampoline compilation, for instance by setting
> `comp-enable-subr-trampolines'. The name of the environment
> variable would be changed accordingly, of course.
Why do you need this to be done together with disabling native
compilation? why not do it with two separate settings?
> >> I dislike having environment variables that alter Emacs
> >> behavior,
> >> because environment variables are inherited by sub-processes.
>
> This is precisely why I like it. Our build mechanism can have
> emacs instances nested deep in layers of wrapper scripts. Because
> of this, we can simply export the variable in the environment of
> the ancestor process, and not worry about adding --eval arguments
> in various places in the middle of our scripts. But only the
> descendants of this ancestor process are concerned by this
> environment variable, and they live only as long as the building
> mechanism runs, so I don't see the reason for worry. Then, if
> users want to use this variable in normal use, and they decide on
> top of that to have multiple nested emacsen, then I agree that
> they have to be careful, but that situation seems a bit
> far-fetched.
I understand the convenience, but once again, my primary audience is
the Emacs users, and they rarely need to handle such convoluted
situations. Some relative inconvenience aside, I see no reason why
you couldn't make do without the environment variable, but via some
automatically-loaded init files or somesuch.
Thanks.
next prev parent reply other threads:[~2023-02-06 14:29 UTC|newest]
Thread overview: 146+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-01-27 12:57 Finalizing 'inhibit-automatic-native-compilation' Eli Zaretskii
2023-01-27 14:19 ` Andrea Corallo
2023-01-27 23:11 ` Stephen Leake
2023-01-27 23:58 ` Stefan Monnier
2023-01-28 0:32 ` Stephen Leake
2023-01-28 8:31 ` Eli Zaretskii
2023-01-28 8:08 ` Eli Zaretskii
2023-01-29 21:42 ` Stephen Leake
2023-01-27 23:57 ` Stefan Monnier
2023-01-28 9:17 ` Eli Zaretskii
2023-01-28 17:00 ` Stefan Monnier
2023-01-28 17:09 ` Eli Zaretskii
2023-01-28 17:42 ` Stefan Monnier
2023-01-28 17:54 ` Eli Zaretskii
2023-01-28 18:00 ` Stefan Monnier
2023-01-28 18:09 ` Eli Zaretskii
2023-01-28 21:41 ` Andy Moreton
2023-01-29 6:46 ` Eli Zaretskii
2023-01-29 11:46 ` Andy Moreton
2023-01-28 22:24 ` Stefan Monnier
2023-01-29 6:25 ` Eli Zaretskii
2023-01-29 14:58 ` Stefan Monnier
2023-01-29 15:30 ` Eli Zaretskii
2023-01-30 2:30 ` Stefan Monnier
2023-01-30 12:47 ` Eli Zaretskii
2023-01-30 14:57 ` Stefan Monnier
2023-01-30 17:07 ` Eli Zaretskii
2023-01-30 17:18 ` Stefan Monnier
2023-01-31 4:19 ` Richard Stallman
2023-01-31 14:26 ` Stefan Monnier
2023-02-01 5:04 ` Richard Stallman
2023-02-04 19:55 ` Lynn Winebarger
2023-02-04 20:08 ` Eli Zaretskii
2023-02-04 22:05 ` Lynn Winebarger
2023-02-05 7:40 ` Eli Zaretskii
2023-02-05 16:22 ` Lynn Winebarger
2023-02-06 10:15 ` Andrea Corallo
2023-02-06 10:25 ` Andrea Corallo
2023-02-06 13:05 ` Eli Zaretskii
2023-02-06 13:37 ` Lynn Winebarger
2023-02-06 14:07 ` Eli Zaretskii
2023-02-06 14:29 ` Lynn Winebarger
2023-02-06 15:28 ` Eli Zaretskii
2023-02-07 3:57 ` Lynn Winebarger
2023-02-06 15:26 ` Lynn Winebarger
2023-02-02 5:18 ` Sean Whitton
2023-02-02 7:55 ` Eli Zaretskii
2023-02-02 16:17 ` Sean Whitton
2023-02-06 10:57 ` Aymeric Agon-Rambosson
2023-02-06 14:29 ` Eli Zaretskii [this message]
2023-02-07 3:39 ` Aymeric Agon-Rambosson
2023-02-07 12:49 ` Eli Zaretskii
2023-02-09 8:40 ` Aymeric Agon-Rambosson
2023-02-09 10:11 ` Eli Zaretskii
2023-02-09 21:07 ` Sean Whitton
2023-02-10 8:13 ` Eli Zaretskii
2023-02-10 8:37 ` Aymeric Agon-Rambosson
2023-02-10 16:53 ` Andrea Corallo
2023-02-10 17:34 ` Aymeric Agon-Rambosson
2023-02-11 8:11 ` Andrea Corallo
2023-02-11 10:06 ` Aymeric Agon-Rambosson
2023-02-11 10:44 ` Eli Zaretskii
2023-02-12 16:47 ` Aymeric Agon-Rambosson
2023-02-12 16:55 ` Eli Zaretskii
2023-02-12 19:58 ` Aymeric Agon-Rambosson
2023-02-12 20:09 ` Eli Zaretskii
2023-02-14 10:36 ` Aymeric Agon-Rambosson
2023-02-14 13:51 ` Eli Zaretskii
2023-02-15 22:39 ` Aymeric Agon-Rambosson
2023-02-16 8:04 ` Eli Zaretskii
2023-02-17 8:15 ` Eli Zaretskii
2023-02-17 10:16 ` Andrea Corallo
2023-02-17 14:17 ` Eli Zaretskii
2023-02-18 21:48 ` Andrea Corallo
2023-02-19 9:21 ` Eli Zaretskii
2023-02-20 9:14 ` Andrea Corallo
2023-02-20 12:02 ` Eli Zaretskii
2023-02-09 21:05 ` Sean Whitton
2023-02-10 8:08 ` Eli Zaretskii
2023-02-10 22:13 ` Sean Whitton
2023-02-11 9:16 ` Eli Zaretskii
2023-02-13 22:57 ` Sean Whitton
2023-02-14 5:17 ` tomas
2023-02-14 13:21 ` Eli Zaretskii
2023-02-14 11:29 ` Andrea Corallo
2023-02-14 17:11 ` Sean Whitton
2023-02-16 18:10 ` Sean Whitton
2023-02-17 9:00 ` Andrea Corallo
2023-02-17 16:42 ` Sean Whitton
2023-02-17 19:18 ` Eli Zaretskii
2023-02-17 21:13 ` Bug#1021842: " Tatsuya Kinoshita
2023-02-18 21:56 ` Andrea Corallo
2023-02-19 4:22 ` Stefan Monnier
2023-02-20 9:03 ` Andrea Corallo
2023-02-20 12:01 ` Eli Zaretskii
2023-02-20 15:42 ` Andrea Corallo
2023-02-20 16:02 ` Stefan Monnier
2023-02-20 20:22 ` Andrea Corallo
2023-02-20 16:57 ` Eli Zaretskii
2023-02-20 20:29 ` Andrea Corallo
2023-02-20 12:48 ` Stefan Monnier
2023-02-20 16:07 ` Andrea Corallo
2023-02-20 17:24 ` tomas
2023-02-07 13:56 ` Andrea Corallo
2023-02-07 15:03 ` Stefan Monnier
2023-02-07 15:27 ` Andrea Corallo
2023-02-09 7:26 ` Aymeric Agon-Rambosson
2023-02-09 7:52 ` Eli Zaretskii
2023-02-10 8:04 ` Aymeric Agon-Rambosson
2023-02-10 8:46 ` Eli Zaretskii
2023-02-10 17:02 ` Andrea Corallo
2023-02-02 5:40 ` Sean Whitton
2023-02-02 8:02 ` Eli Zaretskii
2023-02-02 8:41 ` tomas
2023-02-02 9:18 ` Eli Zaretskii
2023-02-02 16:28 ` Sean Whitton
2023-02-02 17:21 ` Eli Zaretskii
2023-02-09 21:12 ` Sean Whitton
2023-02-04 17:48 ` Liliana Marie Prikler
2023-02-04 18:18 ` Eli Zaretskii
2023-02-06 10:21 ` Andrea Corallo
2023-02-13 12:05 ` Andrea Corallo
2023-02-13 13:19 ` Eli Zaretskii
2023-02-13 15:21 ` Andrea Corallo
2023-02-13 15:37 ` Eli Zaretskii
2023-02-13 16:15 ` Andrea Corallo
2023-02-13 19:17 ` Stefan Monnier
2023-02-13 19:34 ` Andrea Corallo
2023-02-13 20:43 ` Stefan Monnier
2023-02-13 21:53 ` Andrea Corallo
2023-02-13 23:04 ` Stefan Monnier
2023-02-14 8:56 ` Andrea Corallo
2023-02-14 11:32 ` Andrea Corallo
[not found] ` <166586215062.368699.18398270685158383578.reportbug@convex>
2023-02-19 14:31 ` Bug#1021842: " Tatsuya Kinoshita
2023-02-20 9:18 ` Andrea Corallo
2023-02-20 12:03 ` Eli Zaretskii
2023-02-20 20:50 ` Bug#1021842: " Lynn Winebarger
2023-02-20 21:34 ` Stefan Monnier
2023-02-20 22:17 ` Lynn Winebarger
2023-02-20 22:02 ` Bug#1021842: " Tatsuya Kinoshita
2023-02-21 15:40 ` Andrea Corallo
2023-02-14 3:23 ` Eli Zaretskii
2023-02-14 3:31 ` Stefan Monnier
2023-02-14 8:55 ` Andrea Corallo
2023-02-14 13:11 ` Eli Zaretskii
2023-02-14 15:09 ` Stefan Monnier
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=83357irhnv.fsf@gnu.org \
--to=eliz@gnu.org \
--cc=akrl@sdf.org \
--cc=aymeric.agon@yandex.com \
--cc=emacs-devel@gnu.org \
--cc=larsi@gnus.org \
--cc=monnier@iro.umontreal.ca \
--cc=rlb@defaultvalue.org \
--cc=spwhitton@spwhitton.name \
/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.