bug-guile
[Top][All Lists]
Advanced

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

bug#20272: Support reproducible builds


From: Jan Nieuwenhuizen
Subject: bug#20272: Support reproducible builds
Date: Mon, 14 Nov 2016 22:44:20 +0100
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/25.1 (gnu/linux)

Jan Nieuwenhuizen writes:

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?

In the mean time, one more obviously correct and trivial patch attatched
that removes a build time stamp.

Greetings,
Jan

>From 2050673bffaa0ba18fabb8e92c3bc388f40bcea5 Mon Sep 17 00:00:00 2001
From: Jan Nieuwenhuizen <address@hidden>
Date: Fri, 4 Nov 2016 16:12:55 +0100
Subject: [PATCH] Reproducible build: Set buildstamp to EPOCH.

* libguile/Makefile.am (libpath.h): Set buildstamp to EPOCH.
---
 libguile/Makefile.am | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/libguile/Makefile.am b/libguile/Makefile.am
index 31cff75..4471d16 100644
--- a/libguile/Makefile.am
+++ b/libguile/Makefile.am
@@ -743,7 +743,7 @@ libpath.h: $(srcdir)/Makefile.in  
$(top_builddir)/config.status
                >> libpath.tmp
        @echo ' { "LIBS",          "@GUILE_LIBS@" }, \' >> libpath.tmp
        @echo ' { "CFLAGS",        "@GUILE_CFLAGS@" }, \' >> libpath.tmp
-       @echo ' { "buildstamp",    "'`date -u +'%Y-%m-%d %T'`'" }, \' >> 
libpath.tmp
+       @echo ' { "buildstamp",    "'`date -u address@hidden'" }, \' >> 
libpath.tmp
        @echo '}' >> libpath.tmp
        $(AM_V_GEN)mv libpath.tmp libpath.h
 
-- 
2.10.1

-- 
Jan Nieuwenhuizen <address@hidden> | GNU LilyPond http://lilypond.org
Freelance IT http://JoyofSource.com | AvatarĀ®  http://AvatarAcademy.nl  

reply via email to

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