emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: How to make aot native-compilation and pdmp creation reproduceable


From: Björn Bidar
Subject: Re: How to make aot native-compilation and pdmp creation reproduceable
Date: Mon, 09 Oct 2023 19:53:11 +0300
User-agent: Gnus/5.13 (Gnus v5.13)

Eli Zaretskii <eliz@gnu.org> writes:

>> From: Björn Bidar <bjorn.bidar@thaodan.de>
>> Cc: gerd.moellmann@gmail.com,  emacs-devel@gnu.org
>> Date: Mon, 09 Oct 2023 19:06:41 +0300
>> 
>> Eli Zaretskii <eliz@gnu.org> writes:
>> 
>> >> From: Björn Bidar <bjorn.bidar@thaodan.de>
>> >> Cc: Eli Zaretskii <eliz@gnu.org>,  emacs-devel@gnu.org
>> >> Date: Mon, 09 Oct 2023 18:25:42 +0300
>> >> 
>> >> > - Executable and pdmp change with every build, independent of
>> >> >   native-comp?
>> >> yes
>> >
>> > You build each time in the exact same directory?  That is, remove the
>> > source tree, recreate it again in the same place under the same name,
>> > and then rebuild?
>> 
>> The builder is recreated on each build. Obs sets up a fresh install in
>> each worker with just the packages required and nothing else but those
>> and the package sources.
>
> I don't think this answers my question.  Are the absolute file names
> of each file in the source tree exactly identical in all the builds,
> including all the leading directories?  If not, that can explain some
> differences.

They are exactly the same. That's the point it was trying to make, each
builder has a fresh set of packages, plus the extracted sources.

>> > I see that you use "make -j4", what happens if you don't use the -j4
>> > option (i.e. build in a deterministic sequential order)?
>> 
>> How should that make a difference?
>
> "make -j4" can compile files in different order, so when file1.el is
> byte-compiled and 'require's file2.el, file2.el may or may not be
> already byte-compiled, so byte-compilation of file1.el may load
> file2.el or file2.elc, thus producing some differences.
OK I try if that makes a difference.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]