summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRichard Purdie <richard.purdie@linuxfoundation.org>2021-02-22 22:12:53 +0000
committerRichard Purdie <richard.purdie@linuxfoundation.org>2021-02-24 00:19:38 +0000
commitc4baddc0d098562df6b197f32f9bf5f9f6a9bbaa (patch)
treec00a309c18828e43d580d0884919198a8e2c93d3
parent7e9c2f33d4ea9f6449dd56d19ff4522a9ddc2df1 (diff)
downloadpoky-c4baddc0d098562df6b197f32f9bf5f9f6a9bbaa.tar.gz
reproducible: Improve SOURCE_DATE_EPOCH_FALLBACK handling
Ensure the fallback value if used is written to the SDE file and hence stored in sstate, reducing any confusion within the code over '0' values. Bump the HASHEQUIV_VERSION since we've had a ton of trouble with ensuring this rolls out correctly on the autobuilder so others may too, take a clean slate for it. (From OE-Core rev: 53ffffa32b76330835287dfc05d4e4796841af08) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r--meta/classes/reproducible_build.bbclass4
-rw-r--r--meta/conf/abi_version.conf2
-rw-r--r--meta/lib/oe/reproducible.py8
-rw-r--r--meta/recipes-extended/groff/groff_1.22.4.bb1
-rw-r--r--meta/recipes-extended/watchdog/watchdog_5.16.bb1
-rw-r--r--meta/recipes-graphics/xorg-font/xorg-minimal-fonts.bb2
6 files changed, 7 insertions, 11 deletions
diff --git a/meta/classes/reproducible_build.bbclass b/meta/classes/reproducible_build.bbclass
index 9e806c0b75..f06e00d70d 100644
--- a/meta/classes/reproducible_build.bbclass
+++ b/meta/classes/reproducible_build.bbclass
@@ -84,10 +84,6 @@ python create_source_date_epoch_stamp() {
84 84
85 source_date_epoch = oe.reproducible.get_source_date_epoch(d, d.getVar('S')) 85 source_date_epoch = oe.reproducible.get_source_date_epoch(d, d.getVar('S'))
86 86
87 if source_date_epoch == 0 :
88 bb.debug(1, "source_date_epoch is 0, using SOURCE_DATE_EPOCH_FALLBACK instead.")
89 source_date_epoch = int(d.getVar('SOURCE_DATE_EPOCH_FALLBACK'))
90
91 bb.debug(1, "SOURCE_DATE_EPOCH: %d" % source_date_epoch) 87 bb.debug(1, "SOURCE_DATE_EPOCH: %d" % source_date_epoch)
92 bb.utils.mkdirhier(d.getVar('SDE_DIR')) 88 bb.utils.mkdirhier(d.getVar('SDE_DIR'))
93 with open(epochfile, 'w') as f: 89 with open(epochfile, 'w') as f:
diff --git a/meta/conf/abi_version.conf b/meta/conf/abi_version.conf
index 251d43bb21..35faef9a36 100644
--- a/meta/conf/abi_version.conf
+++ b/meta/conf/abi_version.conf
@@ -12,4 +12,4 @@ OELAYOUT_ABI = "14"
12# a reset of the equivalence, for example when reproducibility issues break the 12# a reset of the equivalence, for example when reproducibility issues break the
13# existing match data. Distros can also append to this value for the same effect. 13# existing match data. Distros can also append to this value for the same effect.
14# 14#
15HASHEQUIV_HASH_VERSION = "4" 15HASHEQUIV_HASH_VERSION = "5"
diff --git a/meta/lib/oe/reproducible.py b/meta/lib/oe/reproducible.py
index 0fb02ccdb0..204b9bd734 100644
--- a/meta/lib/oe/reproducible.py
+++ b/meta/lib/oe/reproducible.py
@@ -90,8 +90,12 @@ def get_source_date_epoch_from_youngest_file(d, sourcedir):
90 bb.debug(1, "Newest file found: %s" % newest_file) 90 bb.debug(1, "Newest file found: %s" % newest_file)
91 return source_date_epoch 91 return source_date_epoch
92 92
93def fixed_source_date_epoch(): 93def fixed_source_date_epoch(d):
94 bb.debug(1, "No tarball or git repo found to determine SOURCE_DATE_EPOCH") 94 bb.debug(1, "No tarball or git repo found to determine SOURCE_DATE_EPOCH")
95 source_date_epoch = d.getVar('SOURCE_DATE_EPOCH_FALLBACK')
96 if source_date_epoch:
97 bb.debug(1, "Using SOURCE_DATE_EPOCH_FALLBACK")
98 return int(source_date_epoch)
95 return 0 99 return 0
96 100
97def get_source_date_epoch(d, sourcedir): 101def get_source_date_epoch(d, sourcedir):
@@ -99,6 +103,6 @@ def get_source_date_epoch(d, sourcedir):
99 get_source_date_epoch_from_git(d, sourcedir) or 103 get_source_date_epoch_from_git(d, sourcedir) or
100 get_source_date_epoch_from_known_files(d, sourcedir) or 104 get_source_date_epoch_from_known_files(d, sourcedir) or
101 get_source_date_epoch_from_youngest_file(d, sourcedir) or 105 get_source_date_epoch_from_youngest_file(d, sourcedir) or
102 fixed_source_date_epoch() # Last resort 106 fixed_source_date_epoch(d) # Last resort
103 ) 107 )
104 108
diff --git a/meta/recipes-extended/groff/groff_1.22.4.bb b/meta/recipes-extended/groff/groff_1.22.4.bb
index 7bb393e09c..983cb9aea6 100644
--- a/meta/recipes-extended/groff/groff_1.22.4.bb
+++ b/meta/recipes-extended/groff/groff_1.22.4.bb
@@ -20,7 +20,6 @@ SRC_URI[sha256sum] = "e78e7b4cb7dec310849004fa88847c44701e8d133b5d4c13057d876c1b
20 20
21# Remove at the next upgrade 21# Remove at the next upgrade
22PR = "r1" 22PR = "r1"
23HASHEQUIV_HASH_VERSION .= ".1"
24 23
25DEPENDS = "bison-native" 24DEPENDS = "bison-native"
26RDEPENDS_${PN} += "perl sed" 25RDEPENDS_${PN} += "perl sed"
diff --git a/meta/recipes-extended/watchdog/watchdog_5.16.bb b/meta/recipes-extended/watchdog/watchdog_5.16.bb
index a44a459c20..19e94757c7 100644
--- a/meta/recipes-extended/watchdog/watchdog_5.16.bb
+++ b/meta/recipes-extended/watchdog/watchdog_5.16.bb
@@ -21,7 +21,6 @@ SRC_URI[sha256sum] = "b8e7c070e1b72aee2663bdc13b5cc39f76c9232669cfbb1ac0adc7275a
21# Can be dropped when the output next changes, avoids failures after 21# Can be dropped when the output next changes, avoids failures after
22# reproducibility issues 22# reproducibility issues
23PR = "r1" 23PR = "r1"
24HASHEQUIV_HASH_VERSION .= ".1"
25 24
26UPSTREAM_CHECK_URI = "http://sourceforge.net/projects/watchdog/files/watchdog/" 25UPSTREAM_CHECK_URI = "http://sourceforge.net/projects/watchdog/files/watchdog/"
27UPSTREAM_CHECK_REGEX = "/watchdog/(?P<pver>(\d+[\.\-_]*)+)/" 26UPSTREAM_CHECK_REGEX = "/watchdog/(?P<pver>(\d+[\.\-_]*)+)/"
diff --git a/meta/recipes-graphics/xorg-font/xorg-minimal-fonts.bb b/meta/recipes-graphics/xorg-font/xorg-minimal-fonts.bb
index bf8385fe6d..6a91582068 100644
--- a/meta/recipes-graphics/xorg-font/xorg-minimal-fonts.bb
+++ b/meta/recipes-graphics/xorg-font/xorg-minimal-fonts.bb
@@ -14,8 +14,6 @@ SOURCE_DATE_EPOCH = "1613559011"
14 14
15PE = "1" 15PE = "1"
16PR = "r3" 16PR = "r3"
17HASHEQUIV_HASH_VERSION .= ".1"
18
19 17
20inherit allarch features_check 18inherit allarch features_check
21 19