#!/usr/bin/perl -w
+#
+# regen.pl - a wrapper that runs all *.pl scripts to to autogenerate files
+
require 5.003; # keep this compatible, an old perl is all we may have before
# we build the new one
# changes. Um, what ?
# safer_unlink ("warnings.h", "lib/warnings.pm");
-# We no longer need the values on this mapping, as the "changed" message is
+# Which scripts to run. Note the ordering: embed.pl must run after
+# opcode.pl, since it depends on pp.sym, and autodoc.pl should run last as
+# it reads all *.[ch] files, some of which may have been changed by other
+# scripts (eg reentr.c)
+
+my @scripts = qw(
+warnings.pl
+regcomp.pl
+reentr.pl
+overload.pl
+opcode.pl
+keywords.pl
+embed.pl
+autodoc.pl
+);
+
+# Which files are (re)generated by each script.
+# *** We no longer need these values, as the "changed" message is
# now generated by regen_lib.pl, so should we just drop them?
my %gen = (
return %cksum;
}
-# this puts autodoc.pl last, which can be useful as it reads reentr.c
-foreach my $pl (reverse sort keys %gen) {
+foreach my $pl (@scripts) {
my @command = ($^X, $pl, @ARGV);
print "@command\n";
system @command;