Subject: Re: circular dependencies in elisp files and make

From: Eli Zaretskii <[email-masked]>
Date: Sat, 13 May 2023 09:50:50 +0300

> Date: Sat, 13 May 2023 10:08:25 +0700
> Cc: [email-masked], [email-masked], [email-masked],
>  [email-masked], [email-masked], [email-masked]
> From: Max Nikulin <[email-masked]>
> 
> My initial idea was to compile files necessary for byte compilation at 
> first and for compilation of "regular" files load components required 
> for byte compilation and after that suppress loading of .elc files. What 
> can be better is removing all stale .elc file before compiling of 
> updates sources. A script iterates over dependency files and deletes 
> .elc if any its prerequisite has been updated. Following compilation 
> pass can safely use .elc files that are either survived from previous 
> build as up to date or just refreshed.

So you will make each build always do two byte-compilation passes
where today we have just one?  And the first one of these will use
only *.el files, including for those that are preloaded into
bootstrap-emacs?  Doesn't that sound like a significant slow-down of
the build?

Also, what about native-compilation, with or without AOT?