summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJoshua Watt <jpewhacker@gmail.com>2019-05-31 08:59:53 -0500
committerRichard Purdie <richard.purdie@linuxfoundation.org>2019-05-31 22:12:38 +0100
commit0ab44c72d0fb9b1d110ba975273b520cea5bf29f (patch)
tree4cb02a56eefa098c2f9b8a27e8dbed173e5d3fe7
parent0384622f72a6c0bd8225cf06f692340fdef67d4a (diff)
downloadopenembedded-core-contrib-0ab44c72d0fb9b1d110ba975273b520cea5bf29f.tar.gz
perl: Set build date to SOURCE_DATE_EPOCH
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@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r--meta/recipes-devtools/perl-sanity/perl_5.28.2.bb10
1 files changed, 10 insertions, 0 deletions
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 f175e87a12..540b9f2df3 100644
--- a/meta/recipes-devtools/perl-sanity/perl_5.28.2.bb
+++ b/meta/recipes-devtools/perl-sanity/perl_5.28.2.bb
@@ -90,6 +90,16 @@ do_configure_class-native() {
-Ui_xlocale
}
+do_configure_append() {
+ if [ -n "$SOURCE_DATE_EPOCH" ]; then
+ PERL_BUILD_DATE="$(${PYTHON} -c "\
+from datetime import datetime, timezone; \
+print(datetime.fromtimestamp($SOURCE_DATE_EPOCH, timezone.utc).strftime('%a %b %d %H:%M:%S %Y')) \
+ ")"
+ echo "#define PERL_BUILD_DATE \"$PERL_BUILD_DATE\"" >> config.h
+ fi
+}
+
do_compile() {
oe_runmake
}