[M3devel] compiler switch "reduce target variation"?

Jay K jayk123 at hotmail.com
Tue Jul 4 17:54:52 CEST 2017


Perhaps warnings or errors should be requestable though.

For example in C a warning for __TIME__.

There is a goal in some parts that take a source tree and be able to build
it again on another computer and get identical bytes.

It is good for determining "provenance" -- this is the actual source to those binaries (or
at least one of them -- if you consider comments, there are infinite source variations
that might map to the same binaries).

It is good for build systems with aggressive caching -- change comments, recompile
those sources, get the same objects, "cut off" the graph walk, everything is correct in the cache,
just add another hash for source that maps to object.

 - Jay


________________________________
From: M3devel <m3devel-bounces at elegosoft.com> on behalf of Hendrik Boom <hendrik at topoi.pooq.com>
Sent: Tuesday, July 4, 2017 2:52 PM
To: m3devel at elegosoft.com
Subject: Re: [M3devel] compiler switch "reduce target variation"?

On Tue, Jul 04, 2017 at 06:34:03AM +0000, Jay K wrote:
> Trying to resume work here..
>
> Here, I've commited this to a branch:
>
>
> https://github.com/modula3/cm3/commit/0d59546d11641afe3772b73f226c2e90b960d7fc
[https://avatars0.githubusercontent.com/u/1635728?v=3&s=200]<https://github.com/modula3/cm3/commit/0d59546d11641afe3772b73f226c2e90b960d7fc>

reduce-target-variation · modula3/cm3 at 0d59546<https://github.com/modula3/cm3/commit/0d59546d11641afe3772b73f226c2e90b960d7fc>
github.com
cm3 - Critical Mass Modula-3



>
>
> There are some unrelated changes I will tease out and commit separately.
>
>
> I still believe we should implement this.
>
>
> It is a variation of what people call "deterministic builds".
>

Whn the source code explicitly uses features whose whole purpose is to
vary between builds, then it's quite reasonable for the object code to
vary, even if one asks for a deterministic build.

-- hendrik
_______________________________________________
M3devel mailing list
M3devel at elegosoft.com
https://m3lists.elegosoft.com/mailman/listinfo/m3devel
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://m3lists.elegosoft.com/pipermail/m3devel/attachments/20170704/d75d708b/attachment.html>


More information about the M3devel mailing list