Branch: refs/heads/blead
  Home:   https://github.com/Perl/perl5
  Commit: 8f194132568163e2753e1878f7c8a0aa8a5f25a3
      
https://github.com/Perl/perl5/commit/8f194132568163e2753e1878f7c8a0aa8a5f25a3
  Author: Nicholas Clark <[email protected]>
  Date:   2021-09-29 (Wed, 29 Sep 2021)

  Changed paths:
    M Makefile.SH
    M makedef.pl

  Log Message:
  -----------
  The Makefile must run makedef.pl with -Ilib on the command line

It can't rely on adding 'lib' to @INC in a BEGIN block because during the
build not all modules *are* in lib yet. For miniperl the two are not
equivalent - adding -Ilib means that lib/buildcustomize.pl is run, and this
sets up @INC properly to include all the toolchain modules in dist and cpan.

In particular, constant is dual life and hence not available as
lib/constant.pm until it has been copied from dist/constant/lib as part of
the build process. Hence with a parallel build on AIX, before this commit
there was a race condition between the job that builds dist/constant and the
job that builds perl.exp. Sometimes the race was lost, resulting in a
mysterious failed build.

All other users of makedef.pl already invoke it with the appropriate -Ilib
or -I..\lib, so this change won't affect them.


  Commit: 681a22f48ffc404dcc78c3f47b840fac94810241
      
https://github.com/Perl/perl5/commit/681a22f48ffc404dcc78c3f47b840fac94810241
  Author: Nicholas Clark <[email protected]>
  Date:   2021-09-29 (Wed, 29 Sep 2021)

  Changed paths:
    M makedef.pl

  Log Message:
  -----------
  Move `use strict;` *out* of the BEGIN block in makedef.pl

`use strict;` was moved into the BEGIN block in 2015 as part of commit
196f7c461ba85005:
    export data symbols as data on Win32

This mistake wasn't spotted at the time, and meant that only the code within
the BEGIN block was subject to strictures.


Compare: https://github.com/Perl/perl5/compare/f48aa24d4a3e...681a22f48ffc

Reply via email to