Document how to compile a reproducible build (#18953)

* Make compiler build more reproducible

Removed the compile time from the version output.
Added Git commit's author's datetime in UTC timezone.

Fixes #18508

See https://reproducible-builds.org/docs/timestamps/
See https://reproducible-builds.org/docs/source-date-epoch/

* Revert "Make compiler build more reproducible"

This reverts commit 2f9359ae89622c2d95ef243d13251a310e94a199.

Documented how to use compile reproducible builds with the
`SOURCE_DATE_EPOCH` environment variable.

* Corrected `readme.md` formatting

Co-authored-by: quantimnot <quantimnot@users.noreply.github.com>
This commit is contained in:
quantimnot 2021-10-06 03:41:42 -04:00 • committed by GitHub
commit 9fc2918314
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
3 changed files with 17 additions and 1 deletions

View file

@ -68,6 +68,17 @@ More information about its options can be found in the `koch <koch.html>`_
documentation.
Reproducible builds
-------------------
Set the compilation timestamp with the `SOURCE_DATE_EPOCH` environment variable.
.. code:: cmd
export SOURCE_DATE_EPOCH=$(git log -n 1 --format=%at)
koch boot # or `./build_all.sh`
Developing the compiler
=======================

View file

@ -6,6 +6,9 @@ This page provide hints on distributing Nim using OS packages.
See `distros <distros.html>`_ for tools to detect Linux distribution at runtime.
See `here <intern.html#bootstrapping-the-compiler-reproducible-builds>`_ for how to
compile reproducible builds.
Supported architectures
-----------------------
@ -71,3 +74,4 @@ What to install:
- Optionally: manpages, documentation, shell completion
- When installing documentation, .idx files are not required
- The "compiler" directory contains compiler sources and should not be part of the compiler binary package