diff options
author | Richard Purdie <richard.purdie@linuxfoundation.org> | 2021-02-22 22:12:53 +0000 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2021-02-24 00:19:38 +0000 |
commit | c4baddc0d098562df6b197f32f9bf5f9f6a9bbaa (patch) | |
tree | c00a309c18828e43d580d0884919198a8e2c93d3 | |
parent | 7e9c2f33d4ea9f6449dd56d19ff4522a9ddc2df1 (diff) | |
download | poky-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.bbclass | 4 | ||||
-rw-r--r-- | meta/conf/abi_version.conf | 2 | ||||
-rw-r--r-- | meta/lib/oe/reproducible.py | 8 | ||||
-rw-r--r-- | meta/recipes-extended/groff/groff_1.22.4.bb | 1 | ||||
-rw-r--r-- | meta/recipes-extended/watchdog/watchdog_5.16.bb | 1 | ||||
-rw-r--r-- | meta/recipes-graphics/xorg-font/xorg-minimal-fonts.bb | 2 |
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 | # |
15 | HASHEQUIV_HASH_VERSION = "4" | 15 | HASHEQUIV_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 | ||
93 | def fixed_source_date_epoch(): | 93 | def 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 | ||
97 | def get_source_date_epoch(d, sourcedir): | 101 | def 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 |
22 | PR = "r1" | 22 | PR = "r1" |
23 | HASHEQUIV_HASH_VERSION .= ".1" | ||
24 | 23 | ||
25 | DEPENDS = "bison-native" | 24 | DEPENDS = "bison-native" |
26 | RDEPENDS_${PN} += "perl sed" | 25 | RDEPENDS_${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 |
23 | PR = "r1" | 23 | PR = "r1" |
24 | HASHEQUIV_HASH_VERSION .= ".1" | ||
25 | 24 | ||
26 | UPSTREAM_CHECK_URI = "http://sourceforge.net/projects/watchdog/files/watchdog/" | 25 | UPSTREAM_CHECK_URI = "http://sourceforge.net/projects/watchdog/files/watchdog/" |
27 | UPSTREAM_CHECK_REGEX = "/watchdog/(?P<pver>(\d+[\.\-_]*)+)/" | 26 | UPSTREAM_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 | ||
15 | PE = "1" | 15 | PE = "1" |
16 | PR = "r3" | 16 | PR = "r3" |
17 | HASHEQUIV_HASH_VERSION .= ".1" | ||
18 | |||
19 | 17 | ||
20 | inherit allarch features_check | 18 | inherit allarch features_check |
21 | 19 | ||