summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--meta/classes/reproducible_build.bbclass11
-rw-r--r--meta/classes/reproducible_build_simple.bbclass9
-rw-r--r--meta/conf/bitbake.conf19
3 files changed, 18 insertions, 21 deletions
diff --git a/meta/classes/reproducible_build.bbclass b/meta/classes/reproducible_build.bbclass
index 0f45b782e5..f38be1a765 100644
--- a/meta/classes/reproducible_build.bbclass
+++ b/meta/classes/reproducible_build.bbclass
@@ -51,15 +51,6 @@
51# 51#
52# Once the value is determined, it is stored in the recipe's SDE_FILE. 52# Once the value is determined, it is stored in the recipe's SDE_FILE.
53 53
54BUILD_REPRODUCIBLE_BINARIES ??= '1'
55inherit reproducible_build_simple
56
57SDE_DIR = "${WORKDIR}/source-date-epoch"
58SDE_FILE = "${SDE_DIR}/__source_date_epoch.txt"
59SDE_DEPLOYDIR = "${WORKDIR}/deploy-source-date-epoch"
60
61# A SOURCE_DATE_EPOCH of '0' might be misinterpreted as no SDE
62export SOURCE_DATE_EPOCH_FALLBACK ??= "1302044400"
63 54
64SSTATETASKS += "do_deploy_source_date_epoch" 55SSTATETASKS += "do_deploy_source_date_epoch"
65 56
@@ -103,5 +94,3 @@ do_unpack[postfuncs] += "create_source_date_epoch_stamp"
103def get_source_date_epoch_value(d): 94def get_source_date_epoch_value(d):
104 return oe.reproducible.epochfile_read(d.getVar('SDE_FILE'), d) 95 return oe.reproducible.epochfile_read(d.getVar('SDE_FILE'), d)
105 96
106export SOURCE_DATE_EPOCH ?= "${@get_source_date_epoch_value(d)}"
107BB_HASHBASE_WHITELIST += "SOURCE_DATE_EPOCH"
diff --git a/meta/classes/reproducible_build_simple.bbclass b/meta/classes/reproducible_build_simple.bbclass
deleted file mode 100644
index 393372993d..0000000000
--- a/meta/classes/reproducible_build_simple.bbclass
+++ /dev/null
@@ -1,9 +0,0 @@
1# Setup default environment for reproducible builds.
2
3BUILD_REPRODUCIBLE_BINARIES = "1"
4
5export PYTHONHASHSEED = "0"
6export PERL_HASH_SEED = "0"
7export SOURCE_DATE_EPOCH ??= "1520598896"
8
9REPRODUCIBLE_TIMESTAMP_ROOTFS ??= "1520598896"
diff --git a/meta/conf/bitbake.conf b/meta/conf/bitbake.conf
index cd828251b9..1db9b3fc05 100644
--- a/meta/conf/bitbake.conf
+++ b/meta/conf/bitbake.conf
@@ -629,6 +629,22 @@ BUILD_OPTIMIZATION = "${@oe.utils.vartrue('DEBUG_BUILD', '-Og -g -feliminate-unu
629BUILD_OPTIMIZATION[vardeps] += "DEBUG_BUILD" 629BUILD_OPTIMIZATION[vardeps] += "DEBUG_BUILD"
630 630
631################################################################## 631##################################################################
632# Reproducibility
633##################################################################
634
635SDE_DIR = "${WORKDIR}/source-date-epoch"
636SDE_FILE = "${SDE_DIR}/__source_date_epoch.txt"
637SDE_DEPLOYDIR = "${WORKDIR}/deploy-source-date-epoch"
638
639BUILD_REPRODUCIBLE_BINARIES = "1"
640export PYTHONHASHSEED = "0"
641export PERL_HASH_SEED = "0"
642export SOURCE_DATE_EPOCH ?= "${@get_source_date_epoch_value(d)}"
643# A SOURCE_DATE_EPOCH of '0' might be misinterpreted as no SDE
644export SOURCE_DATE_EPOCH_FALLBACK ??= "1302044400"
645REPRODUCIBLE_TIMESTAMP_ROOTFS ??= "1520598896"
646
647##################################################################
632# Settings used by bitbake-layers. 648# Settings used by bitbake-layers.
633################################################################## 649##################################################################
634BBLAYERS_LAYERINDEX_URL ??= "https://layers.openembedded.org/layerindex/" 650BBLAYERS_LAYERINDEX_URL ??= "https://layers.openembedded.org/layerindex/"
@@ -908,7 +924,8 @@ BB_HASHEXCLUDE_COMMON ?= "TMPDIR FILE PATH PWD BB_TASKHASH BBPATH BBSERVER DL_DI
908 SSTATE_HASHEQUIV_METHOD SSTATE_HASHEQUIV_REPORT_TASKDATA \ 924 SSTATE_HASHEQUIV_METHOD SSTATE_HASHEQUIV_REPORT_TASKDATA \
909 SSTATE_HASHEQUIV_OWNER CCACHE_TOP_DIR BB_HASHSERVE GIT_CEILING_DIRECTORIES \ 925 SSTATE_HASHEQUIV_OWNER CCACHE_TOP_DIR BB_HASHSERVE GIT_CEILING_DIRECTORIES \
910 OMP_NUM_THREADS BB_CURRENTTASK" 926 OMP_NUM_THREADS BB_CURRENTTASK"
911BB_HASHBASE_WHITELIST ?= "${BB_HASHEXCLUDE_COMMON} PSEUDO_IGNORE_PATHS BUILDHISTORY_DIR SSTATE_DIR " 927BB_HASHBASE_WHITELIST ?= "${BB_HASHEXCLUDE_COMMON} PSEUDO_IGNORE_PATHS BUILDHISTORY_DIR \
928 SSTATE_DIR SOURCE_DATE_EPOCH"
912BB_HASHCONFIG_WHITELIST ?= "${BB_HASHEXCLUDE_COMMON} DATE TIME SSH_AGENT_PID \ 929BB_HASHCONFIG_WHITELIST ?= "${BB_HASHEXCLUDE_COMMON} DATE TIME SSH_AGENT_PID \
913 SSH_AUTH_SOCK PSEUDO_BUILD BB_ENV_EXTRAWHITE DISABLE_SANITY_CHECKS \ 930 SSH_AUTH_SOCK PSEUDO_BUILD BB_ENV_EXTRAWHITE DISABLE_SANITY_CHECKS \
914 PARALLEL_MAKE BB_NUMBER_THREADS BB_ORIGENV BB_INVALIDCONF BBINCLUDED \ 931 PARALLEL_MAKE BB_NUMBER_THREADS BB_ORIGENV BB_INVALIDCONF BBINCLUDED \