This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
embed.pl can read the names of ck_* functions direct from regen/opcodes
[perl5.git] / regen.pl
CommitLineData
36bb303b 1#!/usr/bin/perl -w
f014cfc2
DM
2#
3# regen.pl - a wrapper that runs all *.pl scripts to to autogenerate files
4
916e4025 5require 5.004; # keep this compatible, an old perl is all we may have before
9ad884cb 6 # we build the new one
36bb303b 7
9ad884cb
JH
8# The idea is to move the regen_headers target out of the Makefile so that
9# it is possible to rebuild the headers before the Makefile is available.
10# (and the Makefile is unavailable until after Configure is run, and we may
11# wish to make a clean source tree but with current headers without running
12# anything else.
36bb303b 13
9ad884cb 14use strict;
36bb303b 15
f014cfc2 16# Which scripts to run. Note the ordering: embed.pl must run after
22b7b87b 17# opcode.pl, since it depends on pp.sym
f014cfc2
DM
18
19my @scripts = qw(
f014cfc2 20keywords.pl
07d48c2a
DM
21opcode.pl
22overload.pl
23reentr.pl
24regcomp.pl
25warnings.pl
f014cfc2 26embed.pl
f014cfc2
DM
27);
28
3879ea51 29my $tap = $ARGV[0] && $ARGV[0] eq '--tap' ? '# ' : '';
af001346 30foreach my $pl (map {"regen/$_"} @scripts) {
95aa0565 31 my @command = ($^X, $pl, @ARGV);
3879ea51 32 print "$tap@command\n";
95aa0565 33 system @command;
36bb303b 34}