Fixes to make the perl build reproducible: a) Remove the \n from configure_attr.sh since it gets quoted differently depending on whether the shell is bash or dash which can cause the test result to be incorrect. Reported upstream: https://github.com/arsv/perl-cross/issues/87 b) Sort the order of the module lists from configure_mods.sh since otherwise the result isn't the same leading to makefile differences. Reported upstream: https://github.com/arsv/perl-cross/issues/88 c) Sort the Encode::Byte byte_t.fnm file output (and the makefile depends whilst there for good measure) This needs to go to upstream perl (not done) d) Use bash for perl-cross configure since otherwise trnl gets set to "\n" with bash and "" with dash Reported upstream: https://github.com/arsv/perl-cross/issues/87 RP 2020/2/7 Upstream-Status: Pending [75% submitted] Signed-off-by: Richard Purdie ' try_add '#define foo(fmt, ...) printf(fmt, __VA_ARGS__)' - try_add 'int main(void) { foo("%i\n", 1234); return 0; }' + try_add 'int main(void) { foo("%i", 1234); return 0; }' try_compile resdef d_c99_variadic_macros 'supported' 'missing' fi Index: perl-5.30.1/cnf/configure_mods.sh =================================================================== --- perl-5.30.1.orig/cnf/configure_mods.sh +++ perl-5.30.1/cnf/configure_mods.sh @@ -82,7 +82,7 @@ extonlyif() { } definetrimspaces() { - v=`echo "$2" | sed -r -e 's/\s+/ /g' -e 's/^\s+//' -e 's/\s+$//'` + v=`echo "$2" | sed -r -e 's/\s+/ /g' -e 's/^\s+//' -e 's/\s+$//' | xargs -n1 | LANG=C sort | xargs` define $1 "$v" } Index: perl-5.30.1/cpan/Encode/Byte/Makefile.PL =================================================================== --- perl-5.30.1.orig/cpan/Encode/Byte/Makefile.PL +++ perl-5.30.1/cpan/Encode/Byte/Makefile.PL @@ -171,7 +171,7 @@ sub postamble my $lengthsofar = length($str); my $continuator = ''; $str .= "$table.c : $enc2xs Makefile.PL"; - foreach my $file (@{$tables{$table}}) + foreach my $file (sort (@{$tables{$table}})) { $str .= $continuator.' '.$self->catfile($dir,$file); if ( length($str)-$lengthsofar > 128*$numlines ) @@ -189,7 +189,7 @@ sub postamble qq{\n\t\$(PERL) $plib $enc2xs $ucopts -o \$\@ -f $table.fnm\n\n}; open (FILELIST, ">$table.fnm") || die "Could not open $table.fnm: $!"; - foreach my $file (@{$tables{$table}}) + foreach my $file (sort (@{$tables{$table}})) { print FILELIST $self->catfile($dir,$file) . "\n"; } Index: perl-5.30.1/cnf/configure =================================================================== --- perl-5.30.1.orig/cnf/configure +++ perl-5.30.1/cnf/configure @@ -1,4 +1,4 @@ -#!/bin/sh +#!/bin/bash base=${0%/*}; test -z "$base" && base=.