CHMOD_W = chmod +w
# The following files are generated automatically
-# keywords.pl: keywords.h
-# opcode.pl: opcode.h opnames.h pp_proto.h pp.sym
-# [* embed.pl needs pp.sym generated by opcode.pl! *]
-# embed.pl: proto.h embed.h embedvar.h global.sym objXSUB.h
-# perlapi.h perlapi.c pod/perlintern.pod
-# pod/perlapi.pod
-# bytecode.pl: ext/ByteLoader/byterun.h ext/ByteLoader/byterun.c
-# ext/B/B/Asmdata.pm
-# regcomp.pl: regnodes.h
-# warnings.pl: warnings.h lib/warnings.pm
# The correct versions should be already supplied with the perl kit,
# in case you don't have perl available.
# To force them to be regenerated, type
# make regen_headers
-AUTOGEN_FILES = keywords.h opcode.h opnames.h pp_proto.h pp.sym embed.h \
- embedvar.h global.sym pod/perlintern.pod pod/perlapi.pod \
- objXSUB.h perlapi.h perlapi.c ext/ByteLoader/byterun.h \
- ext/ByteLoader/byterun.c ext/B/B/Asmdata.pm regnodes.h \
- warnings.h lib/warnings.pm
+KEYWORDS_PL_GEN = keywords.h
+
+OPCODE_PL_GEN = opcode.h opnames.h pp_proto.h pp.sym
+
+# embed.pl needs pp.sym generated by opcode.pl
+
+EMBED_PL_GEN = proto.h embed.h embedvar.h global.sym objXSUB.h \
+ perlapi.h perlapi.c pod/perlintern.pod pod/perlapi.pod
+
+BYTECODE_PL_GEN = ext/ByteLoader/byterun.h ext/ByteLoader/byterun.c \
+ ext/B/B/Asmdata.pm
+
+REGCOMP_PL_GEN = regnodes.h
+
+WARNINGS_PL_GEN = warnings.h lib/warnings.pm
+
+# End of automatically generated files.
+# Beginning of rules to generate them on request.
+
+AUTOGEN_FILES = $(KEYWORDS_PL_GEN) $(OPCODE_PL_GEN) $(EMBED_PL_GEN) \
+ $(BYTECODE_PL_GEN) $(REGCOMP_PL_GEN) $(WARNINGS_PL_GEN)
regen_headers: FORCE
$(CHMOD_W) $(AUTOGEN_FILES)
perl regcomp.pl
perl warnings.pl
+$(KEYWORDS_PL_GEN): keywords.pl FORCE
+ $(CHMOD_W) $(KEYWORDS_PL_GEN)
+ perl keywords.pl
+
+$(OPCODE_PL_GEN): opcode.pl FORCE
+ $(CHMOD_W) $(OPCODE_PL_GEN)
+ perl opcode.pl
+
+$(EMBED_PL_GEN): embed.pl FORCE
+ $(CHMOD_W) $(EMBED_PL_GEN)
+ perl embed.pl
+
+$(BYTECODE_PL_GEN): bytecode.pl FORCE
+ $(CHMOD_W) $(BYTECODE_PL_GEN)
+ perl bytecode.pl
+
+$(REGCOMP_PL_GEN): regcomp.pl FORCE
+ $(CHMOD_W) $(REGCOMP_PL_GEN)
+ perl regcomp.pl
+
+$(WARNINGS_PL_GEN): warnings.pl FORCE
+ $(CHMOD_W) $(WARNINGS_PL_GEN)
+ perl warnings.pl
+
# Extensions:
# Names added to $(dynamic_ext) or $(static_ext) or $(nonxs_ext) will
# automatically get built. There should ordinarily be no need to change