+ faster remake3 :

stops when two executables are equal
This commit is contained in:
pierre 1998-08-06 10:42:56 +00:00
parent 4a65db3317
commit 936aefc511

View File

@ -35,6 +35,7 @@ ifndef PP
PP=ppc386 PP=ppc386
endif endif
##################################################################### #####################################################################
# Setup Targets # Setup Targets
##################################################################### #####################################################################
@ -156,6 +157,19 @@ endif
# End of configurable section. Do not edit after this line. # End of configurable section. Do not edit after this line.
##################################################################### #####################################################################
DIFFEXIST:=$(shell $(DIFF) --help)
# Used to avoid unnecessary steps in remake3
ifdef DIFFEXIST
ifdef OLDPP
DIFFRESULT:=$(shell $(DIFF) $(OLDPP) $(PP))
else
DIFFRESULT=Not equal
endif
else
DIFFRESULT=No diff program
endif
# set correct defines (also needed by mkdep) # set correct defines (also needed by mkdep)
PPDEFS:=-d$(CPU) -dGDB -dFPC PPDEFS:=-d$(CPU) -dGDB -dFPC
@ -211,6 +225,18 @@ MSGFILES:=$(wildcard *.msg)
all : $(EXENAME) all : $(EXENAME)
ifndef DIFFRESULT
next :
@echo $(OLDPP) and $(PP) are equal
$(CP) $(PP) $(EXENAME)
else
next :
$(MAKE) clean
$(MAKE) -C $(UNITDIR) clean
$(MAKE) -C $(UNITDIR) 'PP=$(COMPILERDIR)/$(PP)' all
$(MAKE) all
endif
clean : clean :
-rm -f *.o *.ppu *.s $(EXENAME) -rm -f *.o *.ppu *.s $(EXENAME)
@ -276,27 +302,18 @@ remake: $(EXENAME)
$(MAKE) 'PP=./$(TEMPNAME)' all $(MAKE) 'PP=./$(TEMPNAME)' all
remake3: $(TEMPNAME3) remake3: $(TEMPNAME3)
$(MAKE) clean $(MAKE) 'PP=./$(TEMPNAME3)' 'OLDPP=./$(TEMPNAME2)' next
$(MAKE) -C $(UNITDIR) clean
$(MAKE) -C $(UNITDIR) 'PP=$(COMPILERDIR)/$(TEMPNAME3)' all
$(MAKE) 'PP=./$(TEMPNAME3)' all
diff $(TEMPNAME3) $(EXENAME) diff $(TEMPNAME3) $(EXENAME)
$(TEMPNAME1) : $(EXENAME) $(TEMPNAME1) : $(EXENAME)
$(REPLACE) $(EXENAME) $(TEMPNAME1) $(REPLACE) $(EXENAME) $(TEMPNAME1)
$(TEMPNAME2) : $(TEMPNAME1) $(TEMPNAME2) : $(TEMPNAME1)
$(MAKE) clean $(MAKE) 'PP=./$(TEMPNAME1)' 'OLDPP=' next
$(MAKE) -C $(UNITDIR) clean
$(MAKE) -C $(UNITDIR) 'PP=$(COMPILERDIR)/$(TEMPNAME1)' all
$(MAKE) 'PP=./$(TEMPNAME1)' all
$(REPLACE) $(EXENAME) $(TEMPNAME2) $(REPLACE) $(EXENAME) $(TEMPNAME2)
$(TEMPNAME3) : $(TEMPNAME2) $(TEMPNAME3) : $(TEMPNAME2)
$(MAKE) clean $(MAKE) 'PP=./$(TEMPNAME2)' 'OLDPP=./$(TEMPNAME1)' next
$(MAKE) -C $(UNITDIR) clean
$(MAKE) -C $(UNITDIR) 'PP=$(COMPILERDIR)/$(TEMPNAME2)' all
$(MAKE) 'PP=./$(TEMPNAME2)' all
$(REPLACE) $(EXENAME) $(TEMPNAME3) $(REPLACE) $(EXENAME) $(TEMPNAME3)
cycle: cycle:
@ -419,10 +436,15 @@ rtl :
rtlclean : rtlclean :
make -C $(UNITDIR) clean make -C $(UNITDIR) clean
# Test of log at the end # Test of log at the end
# does CVS add # at start of each line ?? # does CVS add # at start of each line ??
# $Log$ # $Log$
# Revision 1.22 1998-07-23 18:17:58 michael # Revision 1.23 1998-08-06 10:42:56 pierre
# + faster remake3 :
# stops when two executables are equal
#
# Revision 1.22 1998/07/23 18:17:58 michael
# + Added ansirtl target to make an ansistrings capable rtl # + Added ansirtl target to make an ansistrings capable rtl
# #
# Revision 1.21 1998/07/22 21:33:32 michael # Revision 1.21 1998/07/22 21:33:32 michael