make_patchnum requires miniperl$(EXE_EXT) to run, so it needs to depend on it.
Nicholas Clark [Mon, 12 Jan 2009 15:01:10 +0000 (15:01 +0000)]
Also, make_patchnum had not been part of the prerequisites of the common
targets 'perl' or 'test', only 'all', so often it was not getting run. Add it
as a prerequisite of perl$(EXT_EXE), so that it is run on 'make perl' or
'make test'.

Makefile.SH

index ce77c7a..38b1c25 100644 (file)
@@ -540,7 +540,7 @@ sperl.i: perl.c $(h)
 
 .PHONY: all translators utilities make_patchnum
 
-make_patchnum:
+make_patchnum: miniperl$(EXE_EXT)
        $(LDLIBPTH) $(RUN) ./miniperl -Ilib make_patchnum.pl || $(MAKE) miniperl
 
 git_version.h: stock_git_version.h
@@ -806,7 +806,7 @@ miniperl$(EXE_EXT): $& miniperlmain$(OBJ_EXT) $(obj) opmini$(OBJ_EXT)
 
        $spitshell >>$Makefile <<'!NO!SUBS!'
 
-perl$(EXE_EXT): $& perlmain$(OBJ_EXT) $(LIBPERL) $(static_ext) ext.libs $(PERLEXPORT)
+perl$(EXE_EXT): $& perlmain$(OBJ_EXT) $(LIBPERL) $(static_ext) ext.libs $(PERLEXPORT) make_patchnum
        -@rm -f miniperl.xok
        $(SHRPENV) $(LDLIBPTH) $(CC) -o perl$(PERL_SUFFIX) $(PERL_PROFILE_LDFLAGS) $(CLDFLAGS) $(CCDLFLAGS) perlmain$(OBJ_EXT) $(static_ext) $(LLIBPERL) `cat ext.libs` $(libs)