diff options
author | Nicholas Clark <nick@ccl4.org> | 2021-10-05 13:40:59 +0000 |
---|---|---|
committer | Nicholas Clark <nick@ccl4.org> | 2021-10-05 19:53:05 +0000 |
commit | 479479896a515fe41fae81038986ace5cab636db (patch) | |
tree | 13d65aaf8b343a98976b4895375ebd2129e1ffb0 /Porting | |
parent | 58541fd098aa0d251e855323d6cfefb3daa4ad95 (diff) | |
download | perl-479479896a515fe41fae81038986ace5cab636db.tar.gz |
bisect-runner.pl should add -Ilib for makedef.pl in Makefile.SH
The fix from commit 72bbce3da5eeffde:
miniperl also needs -Ilib for perl.exp on AIX etc
is needed to avoid build failures during parallel makes when makedef.pl is
run before all the toolchain modules have been copied into lib/
Specifically -Ilib on the command line to miniperl loads buildcustomize.pl
which then sets @INC to include all the toolchain modules directly, whereas
setting @INC to lib in a BEGIN block doesn't trigger this complete setup.
makedef.pl uses constant, which is dual life and copied from dist/constant/
Diffstat (limited to 'Porting')
-rwxr-xr-x | Porting/bisect-runner.pl | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/Porting/bisect-runner.pl b/Porting/bisect-runner.pl index 8520c7b85f..128cd3c460 100755 --- a/Porting/bisect-runner.pl +++ b/Porting/bisect-runner.pl @@ -2881,6 +2881,18 @@ $2!; } } + if ($^O eq 'aix' && $major >= 8 && $major < 28 + && extract_from_file('Makefile.SH', qr!\Q./$(MINIPERLEXP) makedef.pl\E.*aix!)) { + # This is a variant the AIX part of commit 72bbce3da5eeffde: + # miniperl also needs -Ilib for perl.exp on AIX etc + edit_file('Makefile.SH', sub { + my $code = shift; + $code =~ s{(\Q./$(MINIPERLEXP)\E) (makedef\.pl.*aix)} + {$1 -Ilib $2}; + return $code; + }) + } + # This is the line before the line we've edited just above: if ($^O eq 'aix' && $major >= 11 && $major <= 15 && extract_from_file('makedef.pl', qr/^use Config/)) { edit_file('Makefile.SH', sub { |