diff options
-rw-r--r-- | meta/classes/reproducible_build.bbclass | 11 | ||||
-rw-r--r-- | meta/classes/reproducible_build_simple.bbclass | 9 | ||||
-rw-r--r-- | meta/conf/bitbake.conf | 19 |
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 @@ # # Once the value is determined, it is stored in the recipe's SDE_FILE. -BUILD_REPRODUCIBLE_BINARIES ??= '1' -inherit reproducible_build_simple - -SDE_DIR = "${WORKDIR}/source-date-epoch" -SDE_FILE = "${SDE_DIR}/__source_date_epoch.txt" -SDE_DEPLOYDIR = "${WORKDIR}/deploy-source-date-epoch" - -# A SOURCE_DATE_EPOCH of '0' might be misinterpreted as no SDE -export SOURCE_DATE_EPOCH_FALLBACK ??= "1302044400" SSTATETASKS += "do_deploy_source_date_epoch" @@ -103,5 +94,3 @@ do_unpack[postfuncs] += "create_source_date_epoch_stamp" def get_source_date_epoch_value(d): return oe.reproducible.epochfile_read(d.getVar('SDE_FILE'), d) -export SOURCE_DATE_EPOCH ?= "${@get_source_date_epoch_value(d)}" -BB_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 @@ -# Setup default environment for reproducible builds. - -BUILD_REPRODUCIBLE_BINARIES = "1" - -export PYTHONHASHSEED = "0" -export PERL_HASH_SEED = "0" -export SOURCE_DATE_EPOCH ??= "1520598896" - -REPRODUCIBLE_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 BUILD_OPTIMIZATION[vardeps] += "DEBUG_BUILD" ################################################################## +# Reproducibility +################################################################## + +SDE_DIR = "${WORKDIR}/source-date-epoch" +SDE_FILE = "${SDE_DIR}/__source_date_epoch.txt" +SDE_DEPLOYDIR = "${WORKDIR}/deploy-source-date-epoch" + +BUILD_REPRODUCIBLE_BINARIES = "1" +export PYTHONHASHSEED = "0" +export PERL_HASH_SEED = "0" +export SOURCE_DATE_EPOCH ?= "${@get_source_date_epoch_value(d)}" +# A SOURCE_DATE_EPOCH of '0' might be misinterpreted as no SDE +export SOURCE_DATE_EPOCH_FALLBACK ??= "1302044400" +REPRODUCIBLE_TIMESTAMP_ROOTFS ??= "1520598896" + +################################################################## # Settings used by bitbake-layers. ################################################################## BBLAYERS_LAYERINDEX_URL ??= "https://layers.openembedded.org/layerindex/" @@ -908,7 +924,8 @@ BB_HASHEXCLUDE_COMMON ?= "TMPDIR FILE PATH PWD BB_TASKHASH BBPATH BBSERVER DL_DI SSTATE_HASHEQUIV_METHOD SSTATE_HASHEQUIV_REPORT_TASKDATA \ SSTATE_HASHEQUIV_OWNER CCACHE_TOP_DIR BB_HASHSERVE GIT_CEILING_DIRECTORIES \ OMP_NUM_THREADS BB_CURRENTTASK" -BB_HASHBASE_WHITELIST ?= "${BB_HASHEXCLUDE_COMMON} PSEUDO_IGNORE_PATHS BUILDHISTORY_DIR SSTATE_DIR " +BB_HASHBASE_WHITELIST ?= "${BB_HASHEXCLUDE_COMMON} PSEUDO_IGNORE_PATHS BUILDHISTORY_DIR \ + SSTATE_DIR SOURCE_DATE_EPOCH" BB_HASHCONFIG_WHITELIST ?= "${BB_HASHEXCLUDE_COMMON} DATE TIME SSH_AGENT_PID \ SSH_AUTH_SOCK PSEUDO_BUILD BB_ENV_EXTRAWHITE DISABLE_SANITY_CHECKS \ PARALLEL_MAKE BB_NUMBER_THREADS BB_ORIGENV BB_INVALIDCONF BBINCLUDED \ |