{"shas":[["b1811a1510c616ea350802dcd28682a4b8c378ce","75ef9faee755c70589550b513ad881e5a603182c@ccl4.org","Remove the Makefile command to touch perlmain.c after running makedepend.\n\nJerry D. Hedden was right to question whether this was now superfluous, because\nas best I can tell it was *always* superfluous. Perl 5.000 shipped with a\nMakefile rule to build perlmain.c using a shell script, with a dependency for\nperlmain.c on makefile. [Lowercase makefile, now abstracted as $(FIRSTMAKEFILE).\nThis is generated by makedepend from Makefile, by calculating the dependency\nrules to append to it.] The rule to generate perlmain.c had a prerequisite on\n$(FIRSTMAKEFILE), and in turn $(FIRSTMAKEFILE) has a dependency on $(c), which\nincluded perlmain.c. Hence there was a circular dependency, and the \"solution\"\nto avoiding repeated rebuilds was to touch perlmain.c (if it exists), after\nrunning makedepend.\n\nAs best I can tell there is no *actual* dependency for the correct generation\nof perlmain.c on the contents of $(FIRSTMAKEFILE), as the relevant variables\nare the same in both Makefile and $(FIRSTMAKEFILE). Hence this command should\nhave been removed, along with the dependency, years ago. However, no-one\nspotted this until Jerry observed that fbcaf61123069fe4 changed the build\nrules, and removed the dependency, but not the touch command.","Nicholas Clark"]],"ref":"refs/heads/blead","push_id":20952823,"head":"b1811a1510c616ea350802dcd28682a4b8c378ce","size":1}