]> code.ossystems Code Review - openembedded-core.git/commitdiff
perl: improve reproducibility
authorRoss Burton <ross.burton@intel.com>
Fri, 10 Jan 2020 17:24:21 +0000 (17:24 +0000)
committerRichard Purdie <richard.purdie@linuxfoundation.org>
Sat, 11 Jan 2020 09:17:20 +0000 (09:17 +0000)
Occasionally the reproducibility selftest fails because perl-pod differs,
specifically that the perltoc.pod file was sometimes missing modules.

Debugging revealed that there are missing dependencies so there is a build race:
building perltoc.pod from an clean build tree results in no modules being listed
at all.

A bug has been filed at https://github.com/arsv/perl-cross/issues/86 to solve
this properly, but for now we can just delete perltoc.pod after make has
finished and re-generate it.

[ YOCTO #13726 ]

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
meta/recipes-devtools/perl/perl_5.30.1.bb

index 66707e7f9d82a5e55d866c7209584e0cb7146e32..03e7f206f91a1f32bf24ac80bf347cef35e733fe 100644 (file)
@@ -112,6 +112,14 @@ print(datetime.fromtimestamp($SOURCE_DATE_EPOCH, timezone.utc).strftime('%a %b %
 
 do_compile() {
     oe_runmake
+    # This isn't generated reliably so delete and re-generate.
+    # https://github.com/arsv/perl-cross/issues/86
+
+    if [ -e pod/perltoc.pod ]; then
+        bbnote Rebuilding perltoc.pod
+        rm -f pod/perltoc.pod
+        oe_runmake pod/perltoc.pod
+    fi
 }
 
 do_install() {