[OE-core] [PATCH] perl: Set build date to SOURCE_DATE_EPOCH
Joshua Watt
jpewhacker at gmail.com
Thu May 30 18:49:54 UTC 2019
Perl uses an internal #define called PERL_BUILD_DATE as the string for
the date when perl was built. If undefined, it defaults to using
__DATE__ and __TIME__, which is not reproducible. If SOURCE_DATE_EPOCH
is set at do_configure time, use it to generate a reproducible string
for PERL_BUILD_DATE.
Signed-off-by: Joshua Watt <JPEWhacker at gmail.com>
---
meta/recipes-devtools/perl-sanity/perl_5.28.2.bb | 8 +++++++-
1 file changed, 7 insertions(+), 1 deletion(-)
diff --git a/meta/recipes-devtools/perl-sanity/perl_5.28.2.bb b/meta/recipes-devtools/perl-sanity/perl_5.28.2.bb
index f175e87a12e..b74acfbbc4d 100644
--- a/meta/recipes-devtools/perl-sanity/perl_5.28.2.bb
+++ b/meta/recipes-devtools/perl-sanity/perl_5.28.2.bb
@@ -34,7 +34,7 @@ S = "${WORKDIR}/perl-${PV}"
inherit upstream-version-is-even
-DEPENDS += "db gdbm zlib virtual/crypt"
+DEPENDS += "db gdbm zlib virtual/crypt coreutils-native"
PERL_LIB_VER = "${@'.'.join(d.getVar('PV').split('.')[0:2])}.0"
@@ -90,6 +90,12 @@ do_configure_class-native() {
-Ui_xlocale
}
+do_configure_append() {
+ if [ -n "$SOURCE_DATE_EPOCH" ]; then
+ echo "#define PERL_BUILD_DATE \"$(date --utc --date="@$SOURCE_DATE_EPOCH")\"" >> config.h
+ fi
+}
+
do_compile() {
oe_runmake
}
--
2.21.0
More information about the Openembedded-core
mailing list