[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#20272: Support reproducible builds
From: |
Ludovic Courtès |
Subject: |
bug#20272: Support reproducible builds |
Date: |
Thu, 15 Dec 2016 00:32:47 +0100 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/25.1 (gnu/linux) |
address@hidden (Ludovic Courtès) skribis:
> Jan Nieuwenhuizen <address@hidden> skribis:
>
>> I have been building quite some versions of Guile the past week. There
>> re a couple of .go files that keep giving me problems wrt
>> nondeterminism:
>>
>> web/server/http.go
>>
>> (define *timer* (gettimeofday)) seemed suspect, but seems harmless.
>>
>> rnrs/arithmetic/fixnums.go
>>
>> make-implementation-restriction-violation seemed suspect, but commenting
>> it out does not seem to help.
>>
>> After commenting out all of http.scm and fixnums.scm, yesterday I had 3
>> Guix builds on two machines (GuixSD and one Ubuntu+Guix) that were
>> bit-identical, but one build showed differences in
>>
>> system/repl/commands.go
>>
>> Apparently most of the time this file builds deterministicly, but some
>> times it does not!? Ideas?
>
> Did you look at these differences with diffoscope? That would be
> useful.
I built it with ‘guix build --rounds=2 -K’ and got 17 differing .go
files. I looked at srfi/srfi-9/gnu.go with ediff + hexl-mode in Emacs
and found a dozen of “t-XYZ” and “tmp-XYZ” identifiers with a different
value for XYZ (an integer).
To be continued…
Ludo’.