From 7952623621244adf7e5db98d116188deeb826a47 Mon Sep 17 00:00:00 2001 From: "Yann E. MORIN" Date: Sun, 5 Nov 2017 10:14:56 +0100 Subject: [PATCH] core/reproducible: do not override SOURCE_DATE_EPOCH MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit SOURCE_DATE_EPOCH is currently forcibly set (to either the git commit date, or the last release date). However, the spec mandates that it should not be modified if already set: https://reproducible-builds.org/specs/source-date-epoch/ Build systems MUST NOT overwrite this variable for child processes to consume if it is already present. Abide by the rule, and only set it if not already set. This will allow users to pass it from an upper-layer buildsystem (e.g. a jenkins or gitlab-ci job, for example), when they have a reson to do so. Reported-by: Peter Korsgaard Reported-by: Einar Jón Gunnarsson Signed-off-by: "Yann E. MORIN" Cc: Peter Korsgaard Cc: Einar Jón Gunnarsson Cc: Thomas Petazzoni Cc: Arnout Vandecappelle Signed-off-by: Peter Korsgaard (cherry picked from commit 0437d2f8f6ef8c10b529c154f4534453ce34607b) Signed-off-by: Peter Korsgaard --- Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Makefile b/Makefile index ae36c66b41..cbc57f593f 100644 --- a/Makefile +++ b/Makefile @@ -253,7 +253,7 @@ export LANG = C export LC_ALL = C export GZIP = -n BR2_VERSION_GIT_EPOCH = $(shell GIT_DIR=$(TOPDIR)/.git $(GIT) log -1 --format=%at) -export SOURCE_DATE_EPOCH = $(if $(wildcard $(TOPDIR)/.git),$(BR2_VERSION_GIT_EPOCH),$(BR2_VERSION_EPOCH)) +export SOURCE_DATE_EPOCH ?= $(if $(wildcard $(TOPDIR)/.git),$(BR2_VERSION_GIT_EPOCH),$(BR2_VERSION_EPOCH)) DEPENDENCIES_HOST_PREREQ += host-fakedate endif