GNU bug report logs -
#38546
Update Julia to 1.3.1.
Previous Next
Reported by: nixo <anothersms <at> gmail.com>
Date: Mon, 9 Dec 2019 13:58:02 UTC
Severity: normal
Tags: patch
Done: Efraim Flashner <efraim <at> flashner.co.il>
Bug is archived. No further changes may be made.
Full log
View this message in rfc822 format
Nicolò Balzarotti <anothersms <at> gmail.com> skribis:
> ---
> guix/build-system/julia.scm | 4 +++-
> guix/build/julia-build-system.scm | 28 +++++++++++++++++++---------
> 2 files changed, 22 insertions(+), 10 deletions(-)
With a commit log, please. :-)
> --- a/guix/build/julia-build-system.scm
> +++ b/guix/build/julia-build-system.scm
> @@ -32,7 +32,13 @@
> ;; Code:
>
> (define (invoke-julia code)
> - (invoke "julia" "-e" code))
> + ;; Julia stores the result of the time() call
> + ;; inside the precompiled file. When trying to load it, its precompilation
> + ;; it fails at comparing the file mtime with the precompilation time,
> + ;; always triggering a recompile. This fixes the stored value.
> + ;; Also, libc.jl rand() uses time() as its seed. This might introduce indeterminism while building
> + ;; Default guix mtime is 1, so I'm setting the same here (if they differ, precompilation is invalid)
> + (invoke "faketime" "-f" "1970-01-01 00:00:01" "julia" "-e" code))
Do you think it would be feasible to modify Julia to emit this fixed
timestamp, or to honor SOURCE_DATE_EPOCH, instead of using ‘faketime’?
The reason I’m asking is that (1) ‘faketime’ relies on LD_PRELOAD and so
it could introduce its own set of issues, and (2) I wouldn’t be
surprised to find ready-to-use SOURCE_DATE_EPOCH patches from fellow
Reproducible Builders floating around. :-)
Ludo’.
This bug report was last modified 5 years and 45 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.