Subject: Re: bug#46256: [feature/native-comp] AOT eln files ignored if run from build tree

From: Andrea Corallo <[email-masked]>
Date: Fri, 05 Mar 2021 13:56:24 +0000

Eli Zaretskii <[email-masked]> writes:

>> From: Andrea Corallo <[email-masked]>
>> Cc: [email-masked]
>> Date: Fri, 05 Mar 2021 09:32:35 +0000
>> 
>> The trouble of using make for building such a system is that make is not
>> aware of the .eln filename, so it should be necessary to ask the Emacs
>> binary about that to create dynamically the precise (multiple target)
>> rule.  Not very practical IMO...
>
> Why can't we have a rule in the Makefile conditioned by
> HAVE_NATIVE_COMP?

We certainly can, the difficult part is to generate the rule as the .eln
filename is known only by the Emacs binary.  I'm probably missing
something.

>> Another option would be to invoke Emacs only once passing to it the list
>> of the .el files to be compiled and the parallelism requested and have
>> Emacs do the job.  I think this might be easier and we have in the
>> codebase already the all that's needed for that.  The downside is that
>> we'd drift away from how the vanilla build is working.
>
> Each time we add another Emacs invocation in the build process, we
> make the goal of supporting cross-build farther.

Point taken.

[ To be considered also that as of today libgccjit is not meant to work
for cross compilation. ]

  Andrea