summaryrefslogtreecommitdiff
path: root/Makefile.SH
diff options
context:
space:
mode:
authorNicholas Clark <nick@ccl4.org>2000-10-28 01:31:02 +0100
committerJarkko Hietaniemi <jhi@iki.fi>2000-10-28 17:07:18 +0000
commit5bab1179608f81d8718ba76ac7d23377b3bea9c7 (patch)
treebb6c3705d9af78e1bbf820d613f6ed20dc662107 /Makefile.SH
parentabe67105e63cab145c07395dc5a76d741b2a21c3 (diff)
downloadperl-5bab1179608f81d8718ba76ac7d23377b3bea9c7.tar.gz
Make target reordering to avoid pointless re-makes.
Subject: Re: Total re-make of 'make okfile' after 7451 ? Message-ID: <20001028003101.A54517@plum.flirble.org> p4raw-id: //depot/perl@7468
Diffstat (limited to 'Makefile.SH')
-rw-r--r--Makefile.SH11
1 files changed, 9 insertions, 2 deletions
diff --git a/Makefile.SH b/Makefile.SH
index 55ffb2cdd2..14170b39a8 100644
--- a/Makefile.SH
+++ b/Makefile.SH
@@ -642,10 +642,17 @@ CHMOD_W = chmod +w
keywords.h: keywords.pl
-perl keywords.pl
-opcode.h opnames.h pp_proto.h pp.sym: opcode.pl
+OPCODE_PL_OUTPUT = opcode.h opnames.h pp_proto.h pp.sym
+
+$(OPCODE_PL_OUTPUT): opcode.pl
-perl opcode.pl
-proto.h embed.h embedvar.h global.sym objXSUB.h perlapi.h perlapi.c pod/perlintern.pod pod/perlapi.pod: embed.pl pp.sym
+# Really the prerequisites for the next rule should only be "embed.pl pp.sym"
+# Writing it this way gives make a big hint to always run opcode.pl before
+# embed.pl. The alternative - running embed.pl then opcode.pl causes embed.pl
+# to be re-run next make invocation, and then all object files get recompiled.
+
+proto.h embed.h embedvar.h global.sym objXSUB.h perlapi.h perlapi.c pod/perlintern.pod pod/perlapi.pod: embed.pl $(OPCODE_PL_OUTPUT)
-perl embed.pl
ext/ByteLoader/byterun.h ext/ByteLoader/byterun.c ext/B/B/Asmdata.pm: bytecode.pl