Following fbcaf61123069fe4, remove perlmain.c from the initial list of C files.
authorNicholas Clark <nick@ccl4.org>
Mon, 29 Nov 2010 19:19:21 +0000 (19:19 +0000)
committerNicholas Clark <nick@ccl4.org>
Mon, 29 Nov 2010 19:24:14 +0000 (19:24 +0000)
Otherwise miniperl gets built by ./makedepend, as it calls `make clist`,
clist depends on the initial list of C files, and perlmain.c has rules to
(re)build it which depend on miniperl.

There is no dependency problem with removing perlmain.c from the list of C
files, and hence the list of files for which makefile dependency rules are
generated, as its (new) dependency on miniperl means that it will always be
rebuilt if miniperl is rebuilt, and in turn miniperl will always be rebuilt
it miniperlmain.o is out of date. perlmain.o has the same dependencies as
miniperlmain.o, so the requirement to rebuild is always satisfied.

Thanks to Florian Ragwitz for spotting this problem.

Makefile.SH

index 86e6d46..3cf2939 100755 (executable)
@@ -461,7 +461,7 @@ c3 = taint.c toke.c util.c deb.c run.c universal.c pad.c globals.c
 c4 = perlio.c perlapi.c numeric.c mathoms.c locale.c pp_pack.c pp_sort.c
 c5 = $(madlysrc) $(mallocsrc)
 
-c = $(c1) $(c2) $(c3) $(c4) $(c5) miniperlmain.c perlmain.c opmini.c perlmini.c
+c = $(c1) $(c2) $(c3) $(c4) $(c5) miniperlmain.c opmini.c perlmini.c
 
 obj0 = op$(OBJ_EXT) perl$(OBJ_EXT)
 obj1 = $(madlyobj) $(mallocobj) gv$(OBJ_EXT) toke$(OBJ_EXT) perly$(OBJ_EXT) pad$(OBJ_EXT) regcomp$(OBJ_EXT) dump$(OBJ_EXT) util$(OBJ_EXT) mg$(OBJ_EXT) reentr$(OBJ_EXT) mro$(OBJ_EXT)