mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-09-07 09:30:21 +02:00
* use separate output dirs
* same tree can be used for multiple targets
This commit is contained in:
parent
96427058ec
commit
5534e9ccae
106
tests/Makefile
106
tests/Makefile
@ -1,5 +1,5 @@
|
||||
#
|
||||
# Don't edit, this file is generated by FPCMake Version 1.1 [2004/10/30]
|
||||
# Don't edit, this file is generated by FPCMake Version 1.1 [2004/11/08]
|
||||
#
|
||||
default: allexectests
|
||||
MAKEFILETARGETS=linux go32v2 win32 os2 freebsd beos netbsd amiga atari sunos qnx netware openbsd wdosx palmos macos darwin emx watcom morphos netwlibc
|
||||
@ -717,7 +717,7 @@ ECHO:=$(strip $(wildcard $(addsuffix /gecho$(SRCEXEEXT),$(SEARCHPATH))))
|
||||
ifeq ($(ECHO),)
|
||||
ECHO:=$(strip $(wildcard $(addsuffix /echo$(SRCEXEEXT),$(SEARCHPATH))))
|
||||
ifeq ($(ECHO),)
|
||||
ECHO= __missing_command__
|
||||
ECHO= __missing_command_ECHO
|
||||
else
|
||||
ECHO:=$(firstword $(ECHO))
|
||||
endif
|
||||
@ -731,7 +731,7 @@ DATE:=$(strip $(wildcard $(addsuffix /gdate$(SRCEXEEXT),$(SEARCHPATH))))
|
||||
ifeq ($(DATE),)
|
||||
DATE:=$(strip $(wildcard $(addsuffix /date$(SRCEXEEXT),$(SEARCHPATH))))
|
||||
ifeq ($(DATE),)
|
||||
DATE= __missing_command__
|
||||
DATE= __missing_command_DATE
|
||||
else
|
||||
DATE:=$(firstword $(DATE))
|
||||
endif
|
||||
@ -745,7 +745,7 @@ GINSTALL:=$(strip $(wildcard $(addsuffix /ginstall$(SRCEXEEXT),$(SEARCHPATH))))
|
||||
ifeq ($(GINSTALL),)
|
||||
GINSTALL:=$(strip $(wildcard $(addsuffix /install$(SRCEXEEXT),$(SEARCHPATH))))
|
||||
ifeq ($(GINSTALL),)
|
||||
GINSTALL= __missing_command__
|
||||
GINSTALL= __missing_command_GINSTALL
|
||||
else
|
||||
GINSTALL:=$(firstword $(GINSTALL))
|
||||
endif
|
||||
@ -757,7 +757,7 @@ export GINSTALL
|
||||
ifndef CPPROG
|
||||
CPPROG:=$(strip $(wildcard $(addsuffix /cp$(SRCEXEEXT),$(SEARCHPATH))))
|
||||
ifeq ($(CPPROG),)
|
||||
CPPROG= __missing_command__
|
||||
CPPROG= __missing_command_CPPROG
|
||||
else
|
||||
CPPROG:=$(firstword $(CPPROG))
|
||||
endif
|
||||
@ -766,7 +766,7 @@ export CPPROG
|
||||
ifndef RMPROG
|
||||
RMPROG:=$(strip $(wildcard $(addsuffix /rm$(SRCEXEEXT),$(SEARCHPATH))))
|
||||
ifeq ($(RMPROG),)
|
||||
RMPROG= __missing_command__
|
||||
RMPROG= __missing_command_RMPROG
|
||||
else
|
||||
RMPROG:=$(firstword $(RMPROG))
|
||||
endif
|
||||
@ -775,7 +775,7 @@ export RMPROG
|
||||
ifndef MVPROG
|
||||
MVPROG:=$(strip $(wildcard $(addsuffix /mv$(SRCEXEEXT),$(SEARCHPATH))))
|
||||
ifeq ($(MVPROG),)
|
||||
MVPROG= __missing_command__
|
||||
MVPROG= __missing_command_MVPROG
|
||||
else
|
||||
MVPROG:=$(firstword $(MVPROG))
|
||||
endif
|
||||
@ -786,7 +786,7 @@ MKDIRPROG:=$(strip $(wildcard $(addsuffix /gmkdir$(SRCEXEEXT),$(SEARCHPATH))))
|
||||
ifeq ($(MKDIRPROG),)
|
||||
MKDIRPROG:=$(strip $(wildcard $(addsuffix /mkdir$(SRCEXEEXT),$(SEARCHPATH))))
|
||||
ifeq ($(MKDIRPROG),)
|
||||
MKDIRPROG= __missing_command__
|
||||
MKDIRPROG= __missing_command_MKDIRPROG
|
||||
else
|
||||
MKDIRPROG:=$(firstword $(MKDIRPROG))
|
||||
endif
|
||||
@ -841,7 +841,7 @@ export ECHOREDIR COPY COPYTREE MOVE DEL DELTREE INSTALL INSTALLEXE MKDIR
|
||||
ifndef PPUMOVE
|
||||
PPUMOVE:=$(strip $(wildcard $(addsuffix /ppumove$(SRCEXEEXT),$(SEARCHPATH))))
|
||||
ifeq ($(PPUMOVE),)
|
||||
PPUMOVE= __missing_command__
|
||||
PPUMOVE= __missing_command_PPUMOVE
|
||||
else
|
||||
PPUMOVE:=$(firstword $(PPUMOVE))
|
||||
endif
|
||||
@ -850,7 +850,7 @@ export PPUMOVE
|
||||
ifndef FPCMAKE
|
||||
FPCMAKE:=$(strip $(wildcard $(addsuffix /fpcmake$(SRCEXEEXT),$(SEARCHPATH))))
|
||||
ifeq ($(FPCMAKE),)
|
||||
FPCMAKE= __missing_command__
|
||||
FPCMAKE= __missing_command_FPCMAKE
|
||||
else
|
||||
FPCMAKE:=$(firstword $(FPCMAKE))
|
||||
endif
|
||||
@ -859,7 +859,7 @@ export FPCMAKE
|
||||
ifndef ZIPPROG
|
||||
ZIPPROG:=$(strip $(wildcard $(addsuffix /zip$(SRCEXEEXT),$(SEARCHPATH))))
|
||||
ifeq ($(ZIPPROG),)
|
||||
ZIPPROG= __missing_command__
|
||||
ZIPPROG= __missing_command_ZIPPROG
|
||||
else
|
||||
ZIPPROG:=$(firstword $(ZIPPROG))
|
||||
endif
|
||||
@ -868,7 +868,7 @@ export ZIPPROG
|
||||
ifndef TARPROG
|
||||
TARPROG:=$(strip $(wildcard $(addsuffix /tar$(SRCEXEEXT),$(SEARCHPATH))))
|
||||
ifeq ($(TARPROG),)
|
||||
TARPROG= __missing_command__
|
||||
TARPROG= __missing_command_TARPROG
|
||||
else
|
||||
TARPROG:=$(firstword $(TARPROG))
|
||||
endif
|
||||
@ -1503,6 +1503,7 @@ endif
|
||||
ifndef TEST_OS_TARGET
|
||||
TEST_OS_TARGET:=$(word 5,$(TEST_FPC_COMPILERINFO))
|
||||
endif
|
||||
TEST_FULL_TARGET=$(TEST_CPU_TARGET)-$(TEST_OS_TARGET)
|
||||
ifndef TEST_CCOMPILER
|
||||
ifeq ($(CPU_TARGET),$(TEST_CPU_TARGET))
|
||||
ifeq ($(OS_TARGET),$(TEST_OS_TARGET))
|
||||
@ -1513,14 +1514,15 @@ endif
|
||||
endif
|
||||
endif
|
||||
endif
|
||||
TEST_OUTPUTDIR=output/$(FULL_TARGET)
|
||||
ifndef FAILLIST
|
||||
export FAILLIST:=faillist
|
||||
export FAILLIST:=$(TEST_OUTPUTDIR)/faillist
|
||||
endif
|
||||
ifndef LONGLOG
|
||||
export LONGLOG:=longlog
|
||||
export LONGLOG:=$(TEST_OUTPUTDIR)/longlog
|
||||
endif
|
||||
ifndef LOG
|
||||
export LOG:=log
|
||||
export LOG:=$(TEST_OUTPUTDIR)/log
|
||||
endif
|
||||
TESTSUBDIRS=cg cg/cdecl units/system units/dos units/crt units/objects units/strings units/sysutils units/math
|
||||
TESTDIRS:=test $(addprefix test/,$(TESTSUBDIRS))
|
||||
@ -1547,12 +1549,14 @@ endif
|
||||
units:
|
||||
$(MAKE) -C units FPC=$(TEST_FPC) CPU_TARGET=$(TEST_CPU_TARGET) OS_TARGET=$(TEST_OS_TARGET) \
|
||||
OPT="$(TEST_OPT)" CCOMPILER=$(TEST_CCOMPILER) BINUTILSPREFIX=$(TEST_BINUTILSPREFIX)
|
||||
copyfiles:
|
||||
copyfiles: $(TEST_OUTPUTDIR)
|
||||
$(COPY) test/cg/obj/$(TEST_OS_TARGET)/$(TEST_CPU_TARGET)/ctest.o test/cg
|
||||
$(COPY) test/units/system/test*.txt .
|
||||
testprep: testprep-stamp.$(TEST_OS_TARGET)
|
||||
testprep-stamp.$(TEST_OS_TARGET): utils units copyfiles
|
||||
$(ECHO) $(DATE) > testprep-stamp.$(TEST_OS_TARGET)
|
||||
$(COPY) test/units/system/test*.txt $(TEST_OUTPUTDIR)/tests/units/system
|
||||
testprep: testprep-stamp.$(TEST_FULL_TARGET)
|
||||
testprep-stamp.$(TEST_FULL_TARGET): $(TEST_OUTPUTDIR) utils units copyfiles
|
||||
$(ECHO) $(DATE) > testprep-stamp.$(TEST_FULL_TARGET)
|
||||
$(TEST_OUTPUTDIR):
|
||||
$(MKDIRTREE) $@
|
||||
ifneq ($(TEST_FPC),ppc386$(EXEEXT))
|
||||
ifeq ($(findstring -c$(TEST_FPC),$(DOTESTOPT)),)
|
||||
override DOTESTOPT+=-c$(TEST_FPC)
|
||||
@ -1561,7 +1565,7 @@ endif
|
||||
ifneq ($(OS_TARGET),$(TEST_OS_TARGET))
|
||||
override DOTESTOPT+=-Y-T$(TEST_OS_TARGET)
|
||||
endif
|
||||
ifneq ($(TEST_BINUTILSPREFIX),)
|
||||
ifneq ($(TEST_BINUTILSPREFIX),)
|
||||
override DOTESTOPT+=-Y-XP$(TEST_BINUTILSPREFIX) -Y-Xd
|
||||
endif
|
||||
ifdef TEST_RSH
|
||||
@ -1601,6 +1605,8 @@ ifdef DOALL
|
||||
override DOTESTOPT+=-a
|
||||
endif
|
||||
DIRS=webtbs webtbf tbs tbf $(TESTDIRS)
|
||||
vpath %.log $(TEST_OUTPUTDIR)
|
||||
vpath %.elg $(TEST_OUTPUTDIR)
|
||||
%.log : %.pp
|
||||
$(DOTEST) $(DOTESTOPT) $<
|
||||
%.elg : %.pp
|
||||
@ -1621,39 +1627,24 @@ allexectest : testprep $(patsubst %.pp,%.elg,$(wildcard $(addsuffix /t*.pp,$(TES
|
||||
allexectests: allexectest allexectbs allexectbf allexecwebtbs allexecwebtbf
|
||||
.PHONY: clean distclean clean_test
|
||||
clean_test:
|
||||
-$(DEL) $(addsuffix /*$(PPUEXT),$(DIRS))
|
||||
-$(DEL) $(addsuffix /*$(OEXT),$(DIRS))
|
||||
-$(DEL) $(addsuffix /*.rst,$(DIRS))
|
||||
-$(DEL) $(addsuffix /*$(SHAREDLIBEXT),$(DIRS))
|
||||
-$(DEL) $(addsuffix /*.log,$(DIRS))
|
||||
-$(DEL) $(addsuffix /*.elg,$(DIRS))
|
||||
-$(DEL) $(addsuffix /*$(ASMEXT),$(DIRS))
|
||||
-$(DEL) $(addsuffix /*_ppas$(BATCHEXT),$(DIRS))
|
||||
ifeq ($(EXEEXT),)
|
||||
-$(DEL) $(wildcard $(patsubst %.pp,%$(EXEEXT),$(wildcard $(addsuffix /t*.pp,$(DIRS)))))
|
||||
else
|
||||
-$(DEL) $(addsuffix /*$(EXEEXT),$(DIRS))
|
||||
endif
|
||||
ifdef DEBUGSYMEXT
|
||||
-$(DEL) $(addsuffix /*$(DEBUGSYMEXT),$(DIRS))
|
||||
endif
|
||||
-$(DEL) test*.txt *.tmp *$(SHAREDLIBEXT) *$(OEXT) *$(PPUEXT) core
|
||||
-$(DELTREE) output/$(TEST_FULL_TARGET)
|
||||
-$(DEL) $(LOG) $(LONGLOG) $(FAILLIST)
|
||||
-$(DEL) ppas$(SRCBATCHEXT) gmon.out testprep-stamp.*
|
||||
-$(DEL) *_ppas$(BATCHEXT)
|
||||
-$(DEL) core gmon.out testprep-stamp.$(TEST_FULL_TARGET)
|
||||
clean:
|
||||
$(MAKE) clean_test CPU_TARGET=$(TEST_CPU_TARGET) OS_TARGET=$(TEST_OS_TARGET)
|
||||
$(MAKE) -C units clean CPU_TARGET=$(TEST_CPU_TARGET) OS_TARGET=$(TEST_OS_TARGET)
|
||||
distclean: clean fpc_distclean
|
||||
$(DELTREE) output
|
||||
$(MAKE) -C utils distclean
|
||||
.PHONY: all full rundigest dailytest onlyknown onlygraph onlyinteractive
|
||||
rundigest : utils
|
||||
-$(DIGEST)
|
||||
-$(DEL) testprep-stamp.*
|
||||
.PHONY: all full digest dailytest onlyknown onlygraph onlyinteractive
|
||||
digest : utils
|
||||
-$(DIGEST) $(LOG)
|
||||
ifeq ($(USESQL),YES)
|
||||
-$(DBDIGEST) -v $(TEST_FPC_VERSION) -o $(TEST_OS_TARGET) -c $(TEST_CPU_TARGET) $(DBDIGESTOPT)
|
||||
-$(DBDIGEST) -v $(TEST_FPC_VERSION) -o $(TEST_OS_TARGET) -c $(TEST_CPU_TARGET) -l $(LOG) $(DBDIGESTOPT)
|
||||
endif
|
||||
all : allexectests
|
||||
full : clean allexectests rundigest
|
||||
full : clean allexectests digest
|
||||
onlyknown :
|
||||
$(MAKE) full "DOTESTOPT= $(DOTESTOPT) -k-"
|
||||
onlygraph :
|
||||
@ -1661,9 +1652,9 @@ onlygraph :
|
||||
onlyinteractive :
|
||||
$(MAKE) "DOTESTOPT= $(DOTESTOPT) -i-"
|
||||
info :
|
||||
@$(ECHO) This Makefile allows to test the compiler
|
||||
@$(ECHO) "This Makefile allows to test the compiler"
|
||||
@$(ECHO)
|
||||
@$(ECHO) Targets:
|
||||
@$(ECHO) "Targets:"
|
||||
@$(ECHO) " all - continue all tests"
|
||||
@$(ECHO) " full - clean and run all tests"
|
||||
@$(ECHO) " dailytest - run full and save results"
|
||||
@ -1671,14 +1662,14 @@ info :
|
||||
@$(ECHO) " onlyknown - run only known bugs"
|
||||
@$(ECHO) " onlygraph - run only graph tests"
|
||||
@$(ECHO) " onlyinteractive - run only interactive tests"
|
||||
@$(ECHO) " rundigest - compute and print test statistics"
|
||||
@$(ECHO) " digest - compute and print test statistics"
|
||||
@$(ECHO)
|
||||
@$(ECHO) Driver environment:
|
||||
@$(ECHO) " $(OS_TARGET)-$(CPU_TARGET)"
|
||||
@$(ECHO) "Host environment:"
|
||||
@$(ECHO) " $(FULL_TARGET)"
|
||||
@$(ECHO) " compiler: $(FPC) ver: $(FPC_VERSION)"
|
||||
@$(ECHO)
|
||||
@$(ECHO) Test environment:
|
||||
@$(ECHO) " $(TEST_OS_TARGET)-$(TEST_CPU_TARGET)"
|
||||
@$(ECHO) "Test environment:"
|
||||
@$(ECHO) " $(TEST_FULL_TARGET)"
|
||||
@$(ECHO) " compiler: $(TEST_FPC) ver: $(TEST_FPC_VERSION)"
|
||||
override DATESUFFIX:=$(shell $(DATE) +%Y.%m.%d)
|
||||
ifneq ($(wildcard log.$(DATESUFFIX)),)
|
||||
@ -1687,14 +1678,3 @@ endif
|
||||
ifneq ($(wildcard lastdate.txt),)
|
||||
LASTDATESUFFIX:=$(shell cat lastdate.txt)
|
||||
endif
|
||||
dailytest : full
|
||||
$(COPY) faillist faillist.$(DATESUFFIX)
|
||||
$(COPY) log log.$(DATESUFFIX)
|
||||
$(COPY) longlog longlog.$(DATESUFFIX)
|
||||
-$(DIGEST) > digest.$(DATESUFFIX)
|
||||
ifdef LASTDATESUFFIX
|
||||
-diff -u log.$(LASTDATESUFFIX) log.$(DATESUFFIX) > difflog.$(DATESUFFIX)
|
||||
-diff -u digest.$(LASTDATESUFFIX) digest.$(DATESUFFIX) > diffdigest.$(DATESUFFIX)
|
||||
-diff -u faillist.$(LASTDATESUFFIX) faillist.$(DATESUFFIX) > difflist.$(DATESUFFIX)
|
||||
endif
|
||||
@$(ECHO) $(DATESUFFIX) > lastdate.txt
|
||||
|
@ -53,6 +53,7 @@ endif
|
||||
ifndef TEST_OS_TARGET
|
||||
TEST_OS_TARGET:=$(word 5,$(TEST_FPC_COMPILERINFO))
|
||||
endif
|
||||
TEST_FULL_TARGET=$(TEST_CPU_TARGET)-$(TEST_OS_TARGET)
|
||||
|
||||
ifndef TEST_CCOMPILER
|
||||
ifeq ($(CPU_TARGET),$(TEST_CPU_TARGET))
|
||||
@ -65,21 +66,24 @@ endif
|
||||
endif
|
||||
endif
|
||||
|
||||
# Target dir where the ppu and binaries are created
|
||||
TEST_OUTPUTDIR=output/$(FULL_TARGET)
|
||||
|
||||
|
||||
################################
|
||||
# Misc
|
||||
#
|
||||
|
||||
ifndef FAILLIST
|
||||
export FAILLIST:=faillist
|
||||
export FAILLIST:=$(TEST_OUTPUTDIR)/faillist
|
||||
endif
|
||||
|
||||
ifndef LONGLOG
|
||||
export LONGLOG:=longlog
|
||||
export LONGLOG:=$(TEST_OUTPUTDIR)/longlog
|
||||
endif
|
||||
|
||||
ifndef LOG
|
||||
export LOG:=log
|
||||
export LOG:=$(TEST_OUTPUTDIR)/log
|
||||
endif
|
||||
|
||||
|
||||
@ -136,18 +140,20 @@ units:
|
||||
# Copy test environment dependent files ctest.o to test/cg etc
|
||||
#
|
||||
|
||||
copyfiles:
|
||||
copyfiles: $(TEST_OUTPUTDIR)
|
||||
$(COPY) test/cg/obj/$(TEST_OS_TARGET)/$(TEST_CPU_TARGET)/ctest.o test/cg
|
||||
$(COPY) test/units/system/test*.txt .
|
||||
$(COPY) test/units/system/test*.txt $(TEST_OUTPUTDIR)/tests/units/system
|
||||
|
||||
################################
|
||||
# Preparation for tests
|
||||
#
|
||||
|
||||
testprep: testprep-stamp.$(TEST_OS_TARGET)
|
||||
testprep-stamp.$(TEST_OS_TARGET): utils units copyfiles
|
||||
$(ECHO) $(DATE) > testprep-stamp.$(TEST_OS_TARGET)
|
||||
testprep: testprep-stamp.$(TEST_FULL_TARGET)
|
||||
testprep-stamp.$(TEST_FULL_TARGET): $(TEST_OUTPUTDIR) utils units copyfiles
|
||||
$(ECHO) $(DATE) > testprep-stamp.$(TEST_FULL_TARGET)
|
||||
|
||||
$(TEST_OUTPUTDIR):
|
||||
$(MKDIRTREE) $@
|
||||
|
||||
################################
|
||||
# Dotest options
|
||||
@ -162,7 +168,7 @@ endif
|
||||
ifneq ($(OS_TARGET),$(TEST_OS_TARGET))
|
||||
override DOTESTOPT+=-Y-T$(TEST_OS_TARGET)
|
||||
endif
|
||||
ifneq ($(TEST_BINUTILSPREFIX),)
|
||||
ifneq ($(TEST_BINUTILSPREFIX),)
|
||||
override DOTESTOPT+=-Y-XP$(TEST_BINUTILSPREFIX) -Y-Xd
|
||||
endif
|
||||
ifdef TEST_RSH
|
||||
@ -217,6 +223,9 @@ endif
|
||||
|
||||
DIRS=webtbs webtbf tbs tbf $(TESTDIRS)
|
||||
|
||||
vpath %.log $(TEST_OUTPUTDIR)
|
||||
vpath %.elg $(TEST_OUTPUTDIR)
|
||||
|
||||
%.log : %.pp
|
||||
$(DOTEST) $(DOTESTOPT) $<
|
||||
|
||||
@ -263,35 +272,18 @@ allexectests: allexectest allexectbs allexectbf allexecwebtbs allexecwebtbf
|
||||
.PHONY: clean distclean clean_test
|
||||
|
||||
clean_test:
|
||||
-$(DEL) $(addsuffix /*$(PPUEXT),$(DIRS))
|
||||
-$(DEL) $(addsuffix /*$(OEXT),$(DIRS))
|
||||
-$(DEL) $(addsuffix /*.rst,$(DIRS))
|
||||
-$(DEL) $(addsuffix /*$(SHAREDLIBEXT),$(DIRS))
|
||||
-$(DEL) $(addsuffix /*.log,$(DIRS))
|
||||
-$(DEL) $(addsuffix /*.elg,$(DIRS))
|
||||
-$(DEL) $(addsuffix /*$(ASMEXT),$(DIRS))
|
||||
-$(DEL) $(addsuffix /*_ppas$(BATCHEXT),$(DIRS))
|
||||
ifeq ($(EXEEXT),)
|
||||
-$(DEL) $(wildcard $(patsubst %.pp,%$(EXEEXT),$(wildcard $(addsuffix /t*.pp,$(DIRS)))))
|
||||
else
|
||||
-$(DEL) $(addsuffix /*$(EXEEXT),$(DIRS))
|
||||
endif
|
||||
ifdef DEBUGSYMEXT
|
||||
-$(DEL) $(addsuffix /*$(DEBUGSYMEXT),$(DIRS))
|
||||
endif
|
||||
-$(DEL) test*.txt *.tmp *$(SHAREDLIBEXT) *$(OEXT) *$(PPUEXT) core
|
||||
-$(DELTREE) output/$(TEST_FULL_TARGET)
|
||||
-$(DEL) $(LOG) $(LONGLOG) $(FAILLIST)
|
||||
-$(DEL) ppas$(SRCBATCHEXT) gmon.out testprep-stamp.*
|
||||
# Needed when link on target:
|
||||
-$(DEL) *_ppas$(BATCHEXT)
|
||||
|
||||
-$(DEL) core gmon.out testprep-stamp.$(TEST_FULL_TARGET)
|
||||
|
||||
clean:
|
||||
$(MAKE) clean_test CPU_TARGET=$(TEST_CPU_TARGET) OS_TARGET=$(TEST_OS_TARGET)
|
||||
$(MAKE) -C units clean CPU_TARGET=$(TEST_CPU_TARGET) OS_TARGET=$(TEST_OS_TARGET)
|
||||
|
||||
distclean: clean fpc_distclean
|
||||
$(DELTREE) output
|
||||
$(MAKE) -C utils distclean
|
||||
-$(DEL) testprep-stamp.*
|
||||
|
||||
#cleanall: clean
|
||||
# $(MAKE) -C utils cleanall
|
||||
@ -300,17 +292,17 @@ distclean: clean fpc_distclean
|
||||
# Main rules
|
||||
#
|
||||
|
||||
.PHONY: all full rundigest dailytest onlyknown onlygraph onlyinteractive
|
||||
.PHONY: all full digest dailytest onlyknown onlygraph onlyinteractive
|
||||
|
||||
rundigest : utils
|
||||
-$(DIGEST)
|
||||
digest : utils
|
||||
-$(DIGEST) $(LOG)
|
||||
ifeq ($(USESQL),YES)
|
||||
-$(DBDIGEST) -v $(TEST_FPC_VERSION) -o $(TEST_OS_TARGET) -c $(TEST_CPU_TARGET) $(DBDIGESTOPT)
|
||||
-$(DBDIGEST) -v $(TEST_FPC_VERSION) -o $(TEST_OS_TARGET) -c $(TEST_CPU_TARGET) -l $(LOG) $(DBDIGESTOPT)
|
||||
endif
|
||||
|
||||
all : allexectests
|
||||
|
||||
full : clean allexectests rundigest
|
||||
full : clean allexectests digest
|
||||
|
||||
onlyknown :
|
||||
$(MAKE) full "DOTESTOPT= $(DOTESTOPT) -k-"
|
||||
@ -322,9 +314,9 @@ onlyinteractive :
|
||||
$(MAKE) "DOTESTOPT= $(DOTESTOPT) -i-"
|
||||
|
||||
info :
|
||||
@$(ECHO) This Makefile allows to test the compiler
|
||||
@$(ECHO) "This Makefile allows to test the compiler"
|
||||
@$(ECHO)
|
||||
@$(ECHO) Targets:
|
||||
@$(ECHO) "Targets:"
|
||||
@$(ECHO) " all - continue all tests"
|
||||
@$(ECHO) " full - clean and run all tests"
|
||||
@$(ECHO) " dailytest - run full and save results"
|
||||
@ -332,14 +324,14 @@ info :
|
||||
@$(ECHO) " onlyknown - run only known bugs"
|
||||
@$(ECHO) " onlygraph - run only graph tests"
|
||||
@$(ECHO) " onlyinteractive - run only interactive tests"
|
||||
@$(ECHO) " rundigest - compute and print test statistics"
|
||||
@$(ECHO) " digest - compute and print test statistics"
|
||||
@$(ECHO)
|
||||
@$(ECHO) Driver environment:
|
||||
@$(ECHO) " $(OS_TARGET)-$(CPU_TARGET)"
|
||||
@$(ECHO) "Host environment:"
|
||||
@$(ECHO) " $(FULL_TARGET)"
|
||||
@$(ECHO) " compiler: $(FPC) ver: $(FPC_VERSION)"
|
||||
@$(ECHO)
|
||||
@$(ECHO) Test environment:
|
||||
@$(ECHO) " $(TEST_OS_TARGET)-$(TEST_CPU_TARGET)"
|
||||
@$(ECHO) "Test environment:"
|
||||
@$(ECHO) " $(TEST_FULL_TARGET)"
|
||||
@$(ECHO) " compiler: $(TEST_FPC) ver: $(TEST_FPC_VERSION)"
|
||||
|
||||
override DATESUFFIX:=$(shell $(DATE) +%Y.%m.%d)
|
||||
@ -351,16 +343,3 @@ endif
|
||||
ifneq ($(wildcard lastdate.txt),)
|
||||
LASTDATESUFFIX:=$(shell cat lastdate.txt)
|
||||
endif
|
||||
|
||||
|
||||
dailytest : full
|
||||
$(COPY) faillist faillist.$(DATESUFFIX)
|
||||
$(COPY) log log.$(DATESUFFIX)
|
||||
$(COPY) longlog longlog.$(DATESUFFIX)
|
||||
-$(DIGEST) > digest.$(DATESUFFIX)
|
||||
ifdef LASTDATESUFFIX
|
||||
-diff -u log.$(LASTDATESUFFIX) log.$(DATESUFFIX) > difflog.$(DATESUFFIX)
|
||||
-diff -u digest.$(LASTDATESUFFIX) digest.$(DATESUFFIX) > diffdigest.$(DATESUFFIX)
|
||||
-diff -u faillist.$(LASTDATESUFFIX) faillist.$(DATESUFFIX) > difflist.$(DATESUFFIX)
|
||||
endif
|
||||
@$(ECHO) $(DATESUFFIX) > lastdate.txt
|
||||
|
@ -1,5 +1,5 @@
|
||||
#
|
||||
# Don't edit, this file is generated by FPCMake Version 1.1 [2004/10/30]
|
||||
# Don't edit, this file is generated by FPCMake Version 1.1 [2004/11/09]
|
||||
#
|
||||
default: all
|
||||
MAKEFILETARGETS=linux go32v2 win32 os2 freebsd beos netbsd amiga atari sunos qnx netware openbsd wdosx palmos macos darwin emx watcom morphos netwlibc
|
||||
@ -221,6 +221,7 @@ endif
|
||||
PACKAGESDIR:=$(wildcard $(FPCDIR) $(FPCDIR)/packages/base $(FPCDIR)/packages/extra)
|
||||
override CLEAN_UNITS+=erroru win32err ptest
|
||||
override INSTALL_FPCPACKAGE=y
|
||||
override COMPILER_TARGETDIR+=$(FULL_TARGET)
|
||||
ifdef REQUIRE_UNITSDIR
|
||||
override UNITSDIR+=$(REQUIRE_UNITSDIR)
|
||||
endif
|
||||
@ -718,7 +719,7 @@ ECHO:=$(strip $(wildcard $(addsuffix /gecho$(SRCEXEEXT),$(SEARCHPATH))))
|
||||
ifeq ($(ECHO),)
|
||||
ECHO:=$(strip $(wildcard $(addsuffix /echo$(SRCEXEEXT),$(SEARCHPATH))))
|
||||
ifeq ($(ECHO),)
|
||||
ECHO= __missing_command__
|
||||
ECHO= __missing_command_ECHO
|
||||
else
|
||||
ECHO:=$(firstword $(ECHO))
|
||||
endif
|
||||
@ -732,7 +733,7 @@ DATE:=$(strip $(wildcard $(addsuffix /gdate$(SRCEXEEXT),$(SEARCHPATH))))
|
||||
ifeq ($(DATE),)
|
||||
DATE:=$(strip $(wildcard $(addsuffix /date$(SRCEXEEXT),$(SEARCHPATH))))
|
||||
ifeq ($(DATE),)
|
||||
DATE= __missing_command__
|
||||
DATE= __missing_command_DATE
|
||||
else
|
||||
DATE:=$(firstword $(DATE))
|
||||
endif
|
||||
@ -746,7 +747,7 @@ GINSTALL:=$(strip $(wildcard $(addsuffix /ginstall$(SRCEXEEXT),$(SEARCHPATH))))
|
||||
ifeq ($(GINSTALL),)
|
||||
GINSTALL:=$(strip $(wildcard $(addsuffix /install$(SRCEXEEXT),$(SEARCHPATH))))
|
||||
ifeq ($(GINSTALL),)
|
||||
GINSTALL= __missing_command__
|
||||
GINSTALL= __missing_command_GINSTALL
|
||||
else
|
||||
GINSTALL:=$(firstword $(GINSTALL))
|
||||
endif
|
||||
@ -758,7 +759,7 @@ export GINSTALL
|
||||
ifndef CPPROG
|
||||
CPPROG:=$(strip $(wildcard $(addsuffix /cp$(SRCEXEEXT),$(SEARCHPATH))))
|
||||
ifeq ($(CPPROG),)
|
||||
CPPROG= __missing_command__
|
||||
CPPROG= __missing_command_CPPROG
|
||||
else
|
||||
CPPROG:=$(firstword $(CPPROG))
|
||||
endif
|
||||
@ -767,7 +768,7 @@ export CPPROG
|
||||
ifndef RMPROG
|
||||
RMPROG:=$(strip $(wildcard $(addsuffix /rm$(SRCEXEEXT),$(SEARCHPATH))))
|
||||
ifeq ($(RMPROG),)
|
||||
RMPROG= __missing_command__
|
||||
RMPROG= __missing_command_RMPROG
|
||||
else
|
||||
RMPROG:=$(firstword $(RMPROG))
|
||||
endif
|
||||
@ -776,7 +777,7 @@ export RMPROG
|
||||
ifndef MVPROG
|
||||
MVPROG:=$(strip $(wildcard $(addsuffix /mv$(SRCEXEEXT),$(SEARCHPATH))))
|
||||
ifeq ($(MVPROG),)
|
||||
MVPROG= __missing_command__
|
||||
MVPROG= __missing_command_MVPROG
|
||||
else
|
||||
MVPROG:=$(firstword $(MVPROG))
|
||||
endif
|
||||
@ -787,7 +788,7 @@ MKDIRPROG:=$(strip $(wildcard $(addsuffix /gmkdir$(SRCEXEEXT),$(SEARCHPATH))))
|
||||
ifeq ($(MKDIRPROG),)
|
||||
MKDIRPROG:=$(strip $(wildcard $(addsuffix /mkdir$(SRCEXEEXT),$(SEARCHPATH))))
|
||||
ifeq ($(MKDIRPROG),)
|
||||
MKDIRPROG= __missing_command__
|
||||
MKDIRPROG= __missing_command_MKDIRPROG
|
||||
else
|
||||
MKDIRPROG:=$(firstword $(MKDIRPROG))
|
||||
endif
|
||||
@ -842,7 +843,7 @@ export ECHOREDIR COPY COPYTREE MOVE DEL DELTREE INSTALL INSTALLEXE MKDIR
|
||||
ifndef PPUMOVE
|
||||
PPUMOVE:=$(strip $(wildcard $(addsuffix /ppumove$(SRCEXEEXT),$(SEARCHPATH))))
|
||||
ifeq ($(PPUMOVE),)
|
||||
PPUMOVE= __missing_command__
|
||||
PPUMOVE= __missing_command_PPUMOVE
|
||||
else
|
||||
PPUMOVE:=$(firstword $(PPUMOVE))
|
||||
endif
|
||||
@ -851,7 +852,7 @@ export PPUMOVE
|
||||
ifndef FPCMAKE
|
||||
FPCMAKE:=$(strip $(wildcard $(addsuffix /fpcmake$(SRCEXEEXT),$(SEARCHPATH))))
|
||||
ifeq ($(FPCMAKE),)
|
||||
FPCMAKE= __missing_command__
|
||||
FPCMAKE= __missing_command_FPCMAKE
|
||||
else
|
||||
FPCMAKE:=$(firstword $(FPCMAKE))
|
||||
endif
|
||||
@ -860,7 +861,7 @@ export FPCMAKE
|
||||
ifndef ZIPPROG
|
||||
ZIPPROG:=$(strip $(wildcard $(addsuffix /zip$(SRCEXEEXT),$(SEARCHPATH))))
|
||||
ifeq ($(ZIPPROG),)
|
||||
ZIPPROG= __missing_command__
|
||||
ZIPPROG= __missing_command_ZIPPROG
|
||||
else
|
||||
ZIPPROG:=$(firstword $(ZIPPROG))
|
||||
endif
|
||||
@ -869,7 +870,7 @@ export ZIPPROG
|
||||
ifndef TARPROG
|
||||
TARPROG:=$(strip $(wildcard $(addsuffix /tar$(SRCEXEEXT),$(SEARCHPATH))))
|
||||
ifeq ($(TARPROG),)
|
||||
TARPROG= __missing_command__
|
||||
TARPROG= __missing_command_TARPROG
|
||||
else
|
||||
TARPROG:=$(firstword $(TARPROG))
|
||||
endif
|
||||
@ -1474,50 +1475,20 @@ makefiles: fpc_makefiles
|
||||
ifneq ($(wildcard fpcmake.loc),)
|
||||
include fpcmake.loc
|
||||
endif
|
||||
ifneq ($(findstring 1.0.,$(FPC_VERSION)),)
|
||||
FCL=fcl
|
||||
endif
|
||||
.PHONY: rtl $(FCL) extra all clean cleanrtlfcl clean_ctest
|
||||
.PHONY: rtl extra all clean cleanrtl clean_ctest
|
||||
DUMMYINSTALLDIR=$(BASEDIR)/tmp
|
||||
INSTALLOPT=INSTALL_PREFIX=$(DUMMYINSTALLDIR) INSTALL_UNITDIR=$(BASEDIR)
|
||||
ifndef USEUNITDIR
|
||||
rtl-stamp:
|
||||
INSTALLOPT=INSTALL_PREFIX=$(DUMMYINSTALLDIR) INSTALL_UNITDIR=$(BASEDIR)/$(COMPILER_TARGETDIR)
|
||||
rtl-stamp.$(FULL_TARGET):
|
||||
$(MAKE) -C ../../rtl all "OPT=$(OPT) -n"
|
||||
$(DELTREE) $(COMPILER_TARGETDIR)
|
||||
$(MAKE) -C ../../rtl install $(INSTALLOPT)
|
||||
$(ECHO) Compiled > rtl-stamp
|
||||
ifdef FCL
|
||||
fcl-stamp:
|
||||
$(MAKE) -C ../../packages/base all "OPT=$(OPT) -n"
|
||||
$(MAKE) -C ../../fcl all "OPT=$(OPT) -n"
|
||||
$(MAKE) -C ../../fcl install $(INSTALLOPT)
|
||||
$(ECHO) Compiled > fcl-stamp
|
||||
endif
|
||||
cleanrtlfcl : cleanall
|
||||
$(ECHO) Compiled > rtl-stamp.$(FULL_TARGET)
|
||||
cleanrtl:
|
||||
$(DELTREE) $(COMPILER_TARGETDIR)
|
||||
$(DELTREE) $(DUMMYINSTALLDIR)
|
||||
-$(DEL) rtl-stamp fcl-stamp
|
||||
else
|
||||
rtl-stamp:
|
||||
-$(COPY) $(USEUNITDIR)/*$(PPUEXT) .
|
||||
-$(COPY) $(USEUNITDIR)/*$(OEXT) .
|
||||
-$(COPY) $(USEUNITDIR)/*$(ASMEXT) .
|
||||
-$(COPY) $(USEUNITDIR)/*_ppas$(BATCHEXT) .
|
||||
$(ECHO) Copied > rtl-stamp
|
||||
ifdef FCL
|
||||
fcl-stamp: rtl-stamp
|
||||
$(ECHO) Copied > fcl-stamp
|
||||
endif
|
||||
cleanrtlfcl :
|
||||
-$(DEL) *$(PPUEXT)
|
||||
-$(DEL) *$(OEXT)
|
||||
-$(DEL) *$(ASMEXT)
|
||||
-$(DEL) *_ppas$(BATCHEXT)
|
||||
-$(DEL) rtl-stamp fcl-stamp
|
||||
endif
|
||||
rtl : rtl-stamp
|
||||
ifdef FCL
|
||||
fcl : fcl-stamp
|
||||
endif
|
||||
TESTOPT=-n -FE. -Fu. -T$(OS_TARGET) $(OPT)
|
||||
-$(DEL) rtl-stamp.$(FULL_TARGET)
|
||||
rtl : rtl-stamp.$(FULL_TARGET)
|
||||
TESTOPT=-n -FE$(COMPILER_TARGETDIR) -T$(OS_TARGET) $(OPT)
|
||||
ifneq ($(BINUTILSPREFIX),)
|
||||
override TESTOPT+=-XP$(BINUTILSPREFIX) -Xc
|
||||
endif
|
||||
@ -1538,7 +1509,7 @@ extra : erroru$(PPUEXT) ptest$(PPUEXT) ../test/cg/obj/$(OS_TARGET)/$(CPU_TARGET)
|
||||
ifeq ($(OS_TARGET),win32)
|
||||
extra : win32err$(PPUEXT)
|
||||
endif
|
||||
all : rtl $(FCL) extra
|
||||
clean : cleanrtlfcl fpc_clean
|
||||
all : rtl extra
|
||||
clean : cleanrtl cleanall
|
||||
clean_ctest :
|
||||
-$(DEL) ../test/cg/obj/$(OS_TARGET)/$(CPU_TARGET)/ctest.o
|
||||
|
@ -10,83 +10,42 @@ fpcpackage=y
|
||||
[clean]
|
||||
units = erroru win32err ptest
|
||||
|
||||
[compiler]
|
||||
targetdir=$(FULL_TARGET)
|
||||
|
||||
[default]
|
||||
fpcdir=../..
|
||||
|
||||
[rules]
|
||||
|
||||
# Only 1.1 has Classes in the RTL
|
||||
ifneq ($(findstring 1.0.,$(FPC_VERSION)),)
|
||||
FCL=fcl
|
||||
endif
|
||||
|
||||
.PHONY: rtl $(FCL) extra all clean cleanrtlfcl clean_ctest
|
||||
.PHONY: rtl extra all clean cleanrtl clean_ctest
|
||||
|
||||
#############################
|
||||
# RTL and FCL
|
||||
# RTL
|
||||
#
|
||||
|
||||
DUMMYINSTALLDIR=$(BASEDIR)/tmp
|
||||
INSTALLOPT=INSTALL_PREFIX=$(DUMMYINSTALLDIR) INSTALL_UNITDIR=$(BASEDIR)
|
||||
INSTALLOPT=INSTALL_PREFIX=$(DUMMYINSTALLDIR) INSTALL_UNITDIR=$(BASEDIR)/$(COMPILER_TARGETDIR)
|
||||
|
||||
ifndef USEUNITDIR
|
||||
|
||||
rtl-stamp:
|
||||
rtl-stamp.$(FULL_TARGET):
|
||||
$(MAKE) -C ../../rtl all "OPT=$(OPT) -n"
|
||||
$(DELTREE) $(COMPILER_TARGETDIR)
|
||||
$(MAKE) -C ../../rtl install $(INSTALLOPT)
|
||||
$(ECHO) Compiled > rtl-stamp
|
||||
$(ECHO) Compiled > rtl-stamp.$(FULL_TARGET)
|
||||
|
||||
ifdef FCL
|
||||
fcl-stamp:
|
||||
$(MAKE) -C ../../packages/base all "OPT=$(OPT) -n"
|
||||
$(MAKE) -C ../../fcl all "OPT=$(OPT) -n"
|
||||
$(MAKE) -C ../../fcl install $(INSTALLOPT)
|
||||
$(ECHO) Compiled > fcl-stamp
|
||||
endif
|
||||
|
||||
cleanrtlfcl : cleanall
|
||||
# $(MAKE) -C ../../rtl clean
|
||||
# $(MAKE) -C ../../fcl clean
|
||||
cleanrtl:
|
||||
$(DELTREE) $(COMPILER_TARGETDIR)
|
||||
$(DELTREE) $(DUMMYINSTALLDIR)
|
||||
-$(DEL) rtl-stamp fcl-stamp
|
||||
-$(DEL) rtl-stamp.$(FULL_TARGET)
|
||||
|
||||
else
|
||||
rtl : rtl-stamp.$(FULL_TARGET)
|
||||
|
||||
rtl-stamp:
|
||||
# Just copying everything doesn't work, because then the Makefile will be overwritten
|
||||
-$(COPY) $(USEUNITDIR)/*$(PPUEXT) .
|
||||
-$(COPY) $(USEUNITDIR)/*$(OEXT) .
|
||||
-$(COPY) $(USEUNITDIR)/*$(ASMEXT) .
|
||||
-$(COPY) $(USEUNITDIR)/*_ppas$(BATCHEXT) .
|
||||
$(ECHO) Copied > rtl-stamp
|
||||
|
||||
ifdef FCL
|
||||
fcl-stamp: rtl-stamp
|
||||
$(ECHO) Copied > fcl-stamp
|
||||
endif
|
||||
|
||||
cleanrtlfcl :
|
||||
-$(DEL) *$(PPUEXT)
|
||||
-$(DEL) *$(OEXT)
|
||||
-$(DEL) *$(ASMEXT)
|
||||
-$(DEL) *_ppas$(BATCHEXT)
|
||||
-$(DEL) rtl-stamp fcl-stamp
|
||||
|
||||
endif
|
||||
|
||||
|
||||
rtl : rtl-stamp
|
||||
|
||||
ifdef FCL
|
||||
fcl : fcl-stamp
|
||||
endif
|
||||
|
||||
#############################
|
||||
# Extra units
|
||||
#
|
||||
|
||||
|
||||
TESTOPT=-n -FE. -Fu. -T$(OS_TARGET) $(OPT)
|
||||
TESTOPT=-n -FE$(COMPILER_TARGETDIR) -T$(OS_TARGET) $(OPT)
|
||||
ifneq ($(BINUTILSPREFIX),)
|
||||
override TESTOPT+=-XP$(BINUTILSPREFIX) -Xc
|
||||
endif
|
||||
@ -120,9 +79,9 @@ endif
|
||||
# Main rules
|
||||
#
|
||||
|
||||
all : rtl $(FCL) extra
|
||||
all : rtl extra
|
||||
|
||||
clean : cleanrtlfcl fpc_clean
|
||||
clean : cleanrtl cleanall
|
||||
|
||||
clean_ctest :
|
||||
-$(DEL) ../test/cg/obj/$(OS_TARGET)/$(CPU_TARGET)/ctest.o
|
||||
|
@ -1,5 +1,5 @@
|
||||
#
|
||||
# Don't edit, this file is generated by FPCMake Version 1.1 [2004/10/30]
|
||||
# Don't edit, this file is generated by FPCMake Version 1.1 [2004/11/08]
|
||||
#
|
||||
default: all
|
||||
MAKEFILETARGETS=linux go32v2 win32 os2 freebsd beos netbsd amiga atari sunos qnx netware openbsd wdosx palmos macos darwin emx watcom morphos netwlibc
|
||||
@ -415,14 +415,14 @@ ifeq ($(CPU_TARGET),i386)
|
||||
ifneq ($(findstring x86_64,$(shell uname -a)),)
|
||||
ifeq ($(BINUTILSPREFIX),)
|
||||
GCCLIBDIR:=$(shell dirname `gcc -m32 -print-libgcc-file-name`)
|
||||
else
|
||||
GCCLIBDIR:=$(shell dirname `$(BINUTILSPREFIX)gcc -print-libgcc-file-name`)
|
||||
endif
|
||||
else
|
||||
GCCLIBDIR:=$(shell dirname `$(BINUTILSPREFIX)gcc -print-libgcc-file-name`)
|
||||
endif
|
||||
else
|
||||
GCCLIBDIR:=$(shell dirname `$(BINUTILSPREFIX)gcc -print-libgcc-file-name`)
|
||||
endif
|
||||
endif
|
||||
ifndef GCCLIBDIR
|
||||
CROSSGCC=$(strip $(wildcard $(addsuffix /$(BINUTILSPREFIX)gcc$(SRCEXEEXT),$(SEARCHPATH))))
|
||||
ifneq ($(CROSSGCC),)
|
||||
GCCLIBDIR:=$(shell dirname `$(CROSSGCC) -print-libgcc-file-name`)
|
||||
endif
|
||||
endif
|
||||
ifndef OTHERLIBDIR
|
||||
@ -747,7 +747,7 @@ ECHO:=$(strip $(wildcard $(addsuffix /gecho$(SRCEXEEXT),$(SEARCHPATH))))
|
||||
ifeq ($(ECHO),)
|
||||
ECHO:=$(strip $(wildcard $(addsuffix /echo$(SRCEXEEXT),$(SEARCHPATH))))
|
||||
ifeq ($(ECHO),)
|
||||
ECHO= __missing_command__
|
||||
ECHO= __missing_command_ECHO
|
||||
else
|
||||
ECHO:=$(firstword $(ECHO))
|
||||
endif
|
||||
@ -761,7 +761,7 @@ DATE:=$(strip $(wildcard $(addsuffix /gdate$(SRCEXEEXT),$(SEARCHPATH))))
|
||||
ifeq ($(DATE),)
|
||||
DATE:=$(strip $(wildcard $(addsuffix /date$(SRCEXEEXT),$(SEARCHPATH))))
|
||||
ifeq ($(DATE),)
|
||||
DATE= __missing_command__
|
||||
DATE= __missing_command_DATE
|
||||
else
|
||||
DATE:=$(firstword $(DATE))
|
||||
endif
|
||||
@ -775,7 +775,7 @@ GINSTALL:=$(strip $(wildcard $(addsuffix /ginstall$(SRCEXEEXT),$(SEARCHPATH))))
|
||||
ifeq ($(GINSTALL),)
|
||||
GINSTALL:=$(strip $(wildcard $(addsuffix /install$(SRCEXEEXT),$(SEARCHPATH))))
|
||||
ifeq ($(GINSTALL),)
|
||||
GINSTALL= __missing_command__
|
||||
GINSTALL= __missing_command_GINSTALL
|
||||
else
|
||||
GINSTALL:=$(firstword $(GINSTALL))
|
||||
endif
|
||||
@ -787,7 +787,7 @@ export GINSTALL
|
||||
ifndef CPPROG
|
||||
CPPROG:=$(strip $(wildcard $(addsuffix /cp$(SRCEXEEXT),$(SEARCHPATH))))
|
||||
ifeq ($(CPPROG),)
|
||||
CPPROG= __missing_command__
|
||||
CPPROG= __missing_command_CPPROG
|
||||
else
|
||||
CPPROG:=$(firstword $(CPPROG))
|
||||
endif
|
||||
@ -796,7 +796,7 @@ export CPPROG
|
||||
ifndef RMPROG
|
||||
RMPROG:=$(strip $(wildcard $(addsuffix /rm$(SRCEXEEXT),$(SEARCHPATH))))
|
||||
ifeq ($(RMPROG),)
|
||||
RMPROG= __missing_command__
|
||||
RMPROG= __missing_command_RMPROG
|
||||
else
|
||||
RMPROG:=$(firstword $(RMPROG))
|
||||
endif
|
||||
@ -805,7 +805,7 @@ export RMPROG
|
||||
ifndef MVPROG
|
||||
MVPROG:=$(strip $(wildcard $(addsuffix /mv$(SRCEXEEXT),$(SEARCHPATH))))
|
||||
ifeq ($(MVPROG),)
|
||||
MVPROG= __missing_command__
|
||||
MVPROG= __missing_command_MVPROG
|
||||
else
|
||||
MVPROG:=$(firstword $(MVPROG))
|
||||
endif
|
||||
@ -816,7 +816,7 @@ MKDIRPROG:=$(strip $(wildcard $(addsuffix /gmkdir$(SRCEXEEXT),$(SEARCHPATH))))
|
||||
ifeq ($(MKDIRPROG),)
|
||||
MKDIRPROG:=$(strip $(wildcard $(addsuffix /mkdir$(SRCEXEEXT),$(SEARCHPATH))))
|
||||
ifeq ($(MKDIRPROG),)
|
||||
MKDIRPROG= __missing_command__
|
||||
MKDIRPROG= __missing_command_MKDIRPROG
|
||||
else
|
||||
MKDIRPROG:=$(firstword $(MKDIRPROG))
|
||||
endif
|
||||
@ -871,7 +871,7 @@ export ECHOREDIR COPY COPYTREE MOVE DEL DELTREE INSTALL INSTALLEXE MKDIR
|
||||
ifndef PPUMOVE
|
||||
PPUMOVE:=$(strip $(wildcard $(addsuffix /ppumove$(SRCEXEEXT),$(SEARCHPATH))))
|
||||
ifeq ($(PPUMOVE),)
|
||||
PPUMOVE= __missing_command__
|
||||
PPUMOVE= __missing_command_PPUMOVE
|
||||
else
|
||||
PPUMOVE:=$(firstword $(PPUMOVE))
|
||||
endif
|
||||
@ -880,7 +880,7 @@ export PPUMOVE
|
||||
ifndef FPCMAKE
|
||||
FPCMAKE:=$(strip $(wildcard $(addsuffix /fpcmake$(SRCEXEEXT),$(SEARCHPATH))))
|
||||
ifeq ($(FPCMAKE),)
|
||||
FPCMAKE= __missing_command__
|
||||
FPCMAKE= __missing_command_FPCMAKE
|
||||
else
|
||||
FPCMAKE:=$(firstword $(FPCMAKE))
|
||||
endif
|
||||
@ -889,7 +889,7 @@ export FPCMAKE
|
||||
ifndef ZIPPROG
|
||||
ZIPPROG:=$(strip $(wildcard $(addsuffix /zip$(SRCEXEEXT),$(SEARCHPATH))))
|
||||
ifeq ($(ZIPPROG),)
|
||||
ZIPPROG= __missing_command__
|
||||
ZIPPROG= __missing_command_ZIPPROG
|
||||
else
|
||||
ZIPPROG:=$(firstword $(ZIPPROG))
|
||||
endif
|
||||
@ -898,7 +898,7 @@ export ZIPPROG
|
||||
ifndef TARPROG
|
||||
TARPROG:=$(strip $(wildcard $(addsuffix /tar$(SRCEXEEXT),$(SEARCHPATH))))
|
||||
ifeq ($(TARPROG),)
|
||||
TARPROG= __missing_command__
|
||||
TARPROG= __missing_command_TARPROG
|
||||
else
|
||||
TARPROG:=$(firstword $(TARPROG))
|
||||
endif
|
||||
|
@ -36,6 +36,13 @@ const
|
||||
|
||||
var
|
||||
Config : TConfig;
|
||||
CompilerLogFile,
|
||||
ExeLogFile,
|
||||
LongLogfile,
|
||||
FailLogfile,
|
||||
RTLUnitsDir,
|
||||
TestOutputDir,
|
||||
OutputDir : string;
|
||||
CompilerBin : string;
|
||||
CompilerCPU : string;
|
||||
CompilerTarget : string;
|
||||
@ -45,14 +52,13 @@ var
|
||||
TestName : string;
|
||||
|
||||
const
|
||||
LongLogfile : string[32] = 'longlog';
|
||||
FailLogfile : string[32] = 'faillist';
|
||||
DoGraph : boolean = false;
|
||||
DoInteractive : boolean = false;
|
||||
DoExecute : boolean = false;
|
||||
DoKnown : boolean = false;
|
||||
DoAll : boolean = false;
|
||||
DoUsual : boolean = true;
|
||||
TargetDir : string = '';
|
||||
ExtraCompilerOpts : string = '';
|
||||
DelExecutable : boolean = false;
|
||||
RemoteAddr : string = '';
|
||||
@ -75,6 +81,19 @@ begin
|
||||
end;
|
||||
|
||||
|
||||
Function PathExists (Const F : String) : Boolean;
|
||||
{
|
||||
Returns True if the file exists, False if not.
|
||||
}
|
||||
Var
|
||||
info : searchrec;
|
||||
begin
|
||||
FindFirst (F,anyfile,Info);
|
||||
PathExists:=(DosError=0) and (Info.Attr and Directory=Directory);
|
||||
FindClose (Info);
|
||||
end;
|
||||
|
||||
|
||||
function ToStr(l:longint):string;
|
||||
var
|
||||
s : string;
|
||||
@ -192,6 +211,30 @@ begin
|
||||
end;
|
||||
|
||||
|
||||
procedure mkdirtree(const s:string);
|
||||
var
|
||||
hs : string;
|
||||
begin
|
||||
if s='' then
|
||||
exit;
|
||||
if s[length(s)] in ['\','/'] then
|
||||
hs:=Copy(s,1,length(s)-1)
|
||||
else
|
||||
hs:=s;
|
||||
if not PathExists(hs) then
|
||||
begin
|
||||
{ Try parent first }
|
||||
mkdirtree(SplitPath(hs));
|
||||
{ make this dir }
|
||||
Verbose(V_Debug,'Making Directory '+s);
|
||||
{$I-}
|
||||
mkdir(s);
|
||||
{$I+}
|
||||
ioresult;
|
||||
end;
|
||||
end;
|
||||
|
||||
|
||||
Function RemoveFile(const f:string):boolean;
|
||||
var
|
||||
g : file;
|
||||
@ -347,7 +390,7 @@ begin
|
||||
else
|
||||
GetCompilerVersion:=true;
|
||||
if GetCompilerVersion then
|
||||
Verbose(V_Debug,'Current Compiler Version: "'+CompilerVersion+'"');
|
||||
Verbose(V_Debug,'Compiler Version: "'+CompilerVersion+'"');
|
||||
end;
|
||||
|
||||
|
||||
@ -358,7 +401,7 @@ begin
|
||||
else
|
||||
GetCompilerCPU:=true;
|
||||
if GetCompilerCPU then
|
||||
Verbose(V_Debug,'Current Compiler CPU: "'+CompilerCPU+'"');
|
||||
Verbose(V_Debug,'Compiler CPU: "'+CompilerCPU+'"');
|
||||
end;
|
||||
|
||||
|
||||
@ -369,7 +412,25 @@ begin
|
||||
else
|
||||
GetCompilerTarget:=true;
|
||||
if GetCompilerTarget then
|
||||
Verbose(V_Debug,'Current Compiler Target: "'+CompilerTarget+'"');
|
||||
Verbose(V_Debug,'Compiler Target: "'+CompilerTarget+'"');
|
||||
end;
|
||||
|
||||
|
||||
function GetCompilerFullTarget:string;
|
||||
begin
|
||||
GetCompilerFullTarget:=CompilerCPU+'-'+CompilerTarget;
|
||||
end;
|
||||
|
||||
|
||||
function OutputFileName(Const s,ext:String):String;
|
||||
begin
|
||||
OutputFileName:=OutputDir+'/'+ForceExtension(s,ext);
|
||||
end;
|
||||
|
||||
|
||||
function TestOutputFileName(Const s,ext:String):String;
|
||||
begin
|
||||
TestOutputFileName:=TestOutputDir+'/'+ForceExtension(SplitFileName(s),ext);
|
||||
end;
|
||||
|
||||
|
||||
@ -401,13 +462,14 @@ end;
|
||||
|
||||
function RunCompiler:boolean;
|
||||
var
|
||||
outname,
|
||||
args : string;
|
||||
args : string;
|
||||
execres : boolean;
|
||||
begin
|
||||
RunCompiler:=false;
|
||||
OutName:=ForceExtension(PPFile,'log');
|
||||
args:='-n -Fuunits '+ExtraCompilerOpts;
|
||||
args:='-n -Fu'+RTLUnitsDir;
|
||||
args:=args+' -FE'+TestOutputDir;
|
||||
if ExtraCompilerOpts<>'' then
|
||||
args:=args+ExtraCompilerOpts;
|
||||
{$ifdef unix}
|
||||
{ Add runtime library path to current dir to find .so files }
|
||||
if Config.NeedLibrary then
|
||||
@ -418,7 +480,7 @@ begin
|
||||
args:=args+' '+ppfile;
|
||||
Verbose(V_Debug,'Executing '+compilerbin+' '+args);
|
||||
{ also get the output from as and ld that writes to stderr sometimes }
|
||||
execres:=ExecuteRedir(CompilerBin,args,'',OutName,'stdout');
|
||||
execres:=ExecuteRedir(CompilerBin,args,'',CompilerLogFile,'stdout');
|
||||
Verbose(V_Debug,'Exitcode '+ToStr(ExecuteResult));
|
||||
|
||||
{ Error during execution? }
|
||||
@ -428,15 +490,15 @@ begin
|
||||
AddLog(ResLogFile,failed_to_compile+PPFileInfo);
|
||||
AddLog(LongLogFile,line_separation);
|
||||
AddLog(LongLogFile,failed_to_compile+PPFileInfo);
|
||||
CopyFile(OutName,LongLogFile,true);
|
||||
CopyFile(CompilerLogFile,LongLogFile,true);
|
||||
{ avoid to try again }
|
||||
AddLog(ForceExtension(PPFile,'elg'),failed_to_compile+PPFileInfo);
|
||||
AddLog(ExeLogFile,failed_to_compile+PPFileInfo);
|
||||
Verbose(V_Abort,'IOStatus: '+ToStr(IOStatus));
|
||||
exit;
|
||||
end;
|
||||
|
||||
{ Check for internal error }
|
||||
if ExitWithInternalError(OutName) then
|
||||
if ExitWithInternalError(CompilerLogFile) then
|
||||
begin
|
||||
AddLog(FailLogFile,TestName);
|
||||
if Config.Note<>'' then
|
||||
@ -446,9 +508,9 @@ begin
|
||||
AddLog(LongLogFile,failed_to_compile+PPFileInfo);
|
||||
if Config.Note<>'' then
|
||||
AddLog(LongLogFile,Config.Note);
|
||||
CopyFile(OutName,LongLogFile,true);
|
||||
CopyFile(CompilerLogFile,LongLogFile,true);
|
||||
{ avoid to try again }
|
||||
AddLog(ForceExtension(PPFile,'elg'),'Failed to compile '++PPFileInfo);
|
||||
AddLog(ExeLogFile,'Failed to compile '++PPFileInfo);
|
||||
Verbose(V_Abort,'Internal error in compiler');
|
||||
exit;
|
||||
end;
|
||||
@ -460,7 +522,7 @@ begin
|
||||
begin
|
||||
AddLog(ResLogFile,success_compilation_failed+PPFileInfo);
|
||||
{ avoid to try again }
|
||||
AddLog(ForceExtension(PPFile,'elg'),success_compilation_failed+PPFileInfo);
|
||||
AddLog(ExeLogFile,success_compilation_failed+PPFileInfo);
|
||||
RunCompiler:=true;
|
||||
end
|
||||
else
|
||||
@ -472,10 +534,10 @@ begin
|
||||
AddLog(LongLogFile,line_separation);
|
||||
AddLog(LongLogFile,failed_compilation_successful+PPFileInfo);
|
||||
{ avoid to try again }
|
||||
AddLog(ForceExtension(PPFile,'elg'),failed_compilation_successful+PPFileInfo);
|
||||
AddLog(ExeLogFile,failed_compilation_successful+PPFileInfo);
|
||||
if Config.Note<>'' then
|
||||
AddLog(LongLogFile,Config.Note);
|
||||
CopyFile(OutName,LongLogFile,true);
|
||||
CopyFile(CompilerLogFile,LongLogFile,true);
|
||||
end;
|
||||
end
|
||||
else
|
||||
@ -489,7 +551,7 @@ begin
|
||||
AddLog(LongLogFile,line_separation);
|
||||
AddLog(LongLogFile,known_problem+Config.KnownCompileNote);
|
||||
AddLog(LongLogFile,failed_to_compile+PPFileInfo+' ('+ToStr(ExecuteResult)+')');
|
||||
Copyfile(OutName,LongLogFile,true);
|
||||
Copyfile(CompilerLogFile,LongLogFile,true);
|
||||
Verbose(V_Abort,known_problem+'exitcode: '+ToStr(ExecuteResult));
|
||||
end
|
||||
else if ExecuteResult<>0 then
|
||||
@ -502,9 +564,9 @@ begin
|
||||
AddLog(LongLogFile,failed_to_compile+PPFileInfo);
|
||||
if Config.Note<>'' then
|
||||
AddLog(LongLogFile,Config.Note);
|
||||
CopyFile(OutName,LongLogFile,true);
|
||||
CopyFile(CompilerLogFile,LongLogFile,true);
|
||||
{ avoid to try again }
|
||||
AddLog(ForceExtension(PPFile,'elg'),failed_to_compile+PPFileInfo);
|
||||
AddLog(ExeLogFile,failed_to_compile+PPFileInfo);
|
||||
Verbose(V_Abort,'Exitcode: '+ToStr(ExecuteResult)+' (expected 0)');
|
||||
end
|
||||
else
|
||||
@ -538,6 +600,7 @@ begin
|
||||
begin
|
||||
delete(s,1,i+14-1);
|
||||
val(s,ExecuteResult,code);
|
||||
if code=0 then;
|
||||
CheckTestExitCode:=true;
|
||||
break;
|
||||
end;
|
||||
@ -548,7 +611,8 @@ end;
|
||||
|
||||
function RunExecutable:boolean;
|
||||
var
|
||||
outname,
|
||||
OldDir,
|
||||
FullExeLogFile,
|
||||
TestRemoteExe,
|
||||
TestExe : string;
|
||||
execres : boolean;
|
||||
@ -556,7 +620,7 @@ var
|
||||
function ExecuteRemote(const prog,args:string):boolean;
|
||||
begin
|
||||
Verbose(V_Debug,'RemoteExecuting '+Prog+' '+args);
|
||||
ExecuteRemote:=ExecuteRedir(prog,args,'',OutName,'stdout');
|
||||
ExecuteRemote:=ExecuteRedir(prog,args,'',EXELogFile,'stdout');
|
||||
end;
|
||||
|
||||
begin
|
||||
@ -564,10 +628,9 @@ begin
|
||||
execres:=true;
|
||||
{ when remote testing, leave extension away }
|
||||
if RemoteAddr='' then
|
||||
TestExe:=ForceExtension(PPFile,ExeExt)
|
||||
TestExe:=OutputFileName(PPFile,ExeExt)
|
||||
else
|
||||
TestExe:=ForceExtension(PPFile,'');
|
||||
OutName:=ForceExtension(PPFile,'elg');
|
||||
TestExe:=OutputFileName(PPFile,'');
|
||||
if RemoteAddr<>'' then
|
||||
begin
|
||||
{ We don't want to create subdirs, remove paths from the test }
|
||||
@ -579,16 +642,28 @@ begin
|
||||
execres:=ExecuteRemote(rshprog,RemotePara+' '+RemoteAddr+' '+rquote+'chmod 755 '+TestRemoteExe+
|
||||
' ; cd '+RemotePath+' ; '+TestRemoteExe+' ; echo "TestExitCode: $?"'+rquote);
|
||||
{ Check for TestExitCode error in output, sets ExecuteResult }
|
||||
CheckTestExitCode(OutName);
|
||||
CheckTestExitCode(EXELogFile);
|
||||
end
|
||||
else
|
||||
begin
|
||||
{ Get full name out log file, because we change the directory during
|
||||
execution }
|
||||
FullExeLogFile:=FExpand(EXELogFile);
|
||||
Verbose(V_Debug,'Executing '+TestExe);
|
||||
{ don't redirect interactive and graph programs .. }
|
||||
{$I-}
|
||||
GetDir(0,OldDir);
|
||||
ChDir(TestOutputDir);
|
||||
{$I+}
|
||||
ioresult;
|
||||
{ don't redirect interactive and graph programs }
|
||||
if Config.IsInteractive or Config.UsesGraph then
|
||||
execres:=ExecuteRedir(TestExe,'','','','')
|
||||
execres:=ExecuteRedir(SplitFileName(TestExe),'','','','')
|
||||
else
|
||||
execres:=ExecuteRedir(TestExe,'','',OutName,'stdout');
|
||||
execres:=ExecuteRedir(SplitFileName(TestExe),'','',FullExeLogFile,'stdout');
|
||||
{$I-}
|
||||
ChDir(OldDir);
|
||||
{$I+}
|
||||
ioresult;
|
||||
end;
|
||||
|
||||
{ Error during execution? }
|
||||
@ -599,9 +674,9 @@ begin
|
||||
AddLog(ResLogFile,failed_to_run+PPFileInfo);
|
||||
AddLog(LongLogFile,line_separation);
|
||||
AddLog(LongLogFile,failed_to_run+PPFileInfo);
|
||||
CopyFile(OutName,LongLogFile,true);
|
||||
CopyFile(EXELogFile,LongLogFile,true);
|
||||
{ avoid to try again }
|
||||
AddLog(ForceExtension(PPFile,'elg'),failed_to_run+PPFileInfo);
|
||||
AddLog(ExeLogFile,failed_to_run+PPFileInfo);
|
||||
Verbose(V_Abort,'IOStatus: '+ToStr(IOStatus));
|
||||
exit;
|
||||
end;
|
||||
@ -616,7 +691,7 @@ begin
|
||||
AddLog(LongLogFile,line_separation);
|
||||
AddLog(LongLogFile,known_problem+Config.KnownRunNote);
|
||||
AddLog(LongLogFile,failed_to_run+PPFileInfo+' ('+ToStr(ExecuteResult)+')');
|
||||
Copyfile(OutName,LongLogFile,true);
|
||||
Copyfile(EXELogFile,LongLogFile,true);
|
||||
Verbose(V_Abort,known_problem+'exitcode: '+ToStr(ExecuteResult)+' (expected '+ToStr(Config.ResultCode)+')');
|
||||
end
|
||||
else
|
||||
@ -625,7 +700,7 @@ begin
|
||||
AddLog(ResLogFile,failed_to_run+PPFileInfo);
|
||||
AddLog(LongLogFile,line_separation);
|
||||
AddLog(LongLogFile,failed_to_run+PPFileInfo+' ('+ToStr(ExecuteResult)+')');
|
||||
Copyfile(OutName,LongLogFile,true);
|
||||
Copyfile(EXELogFile,LongLogFile,true);
|
||||
Verbose(V_Abort,'Exitcode: '+ToStr(ExecuteResult)+' (expected '+ToStr(Config.ResultCode)+')');
|
||||
end
|
||||
end
|
||||
@ -775,11 +850,42 @@ end;
|
||||
|
||||
procedure RunTest;
|
||||
var
|
||||
PPDir : string;
|
||||
Res : boolean;
|
||||
OutName : string;
|
||||
begin
|
||||
Res:=GetConfig(ppfile,Config);
|
||||
OutName:=ForceExtension(PPFile,'elg');
|
||||
|
||||
if Res then
|
||||
begin
|
||||
Res:=GetCompilerCPU;
|
||||
Res:=GetCompilerTarget;
|
||||
RTLUnitsDir:='units/'+GetCompilerFullTarget;
|
||||
if not PathExists(RTLUnitsDir) then
|
||||
Verbose(V_Abort,'Unit path "'+RTLUnitsDir+'" does not exists');
|
||||
OutputDir:='output/'+GetCompilerFullTarget;
|
||||
if not PathExists(OutputDir) then
|
||||
Verbose(V_Abort,'Output path "'+OutputDir+'" does not exists');
|
||||
{ Global log files }
|
||||
ResLogFile:=OutputFileName('log','');
|
||||
LongLogFile:=OutputFileName('longlog','');
|
||||
FailLogFile:=OutputFileName('faillist','');
|
||||
{ Make subdir in output if needed }
|
||||
PPDir:=SplitPath(PPFile);
|
||||
if PPDir[length(PPDir)] in ['/','\'] then
|
||||
Delete(PPDir,length(PPDir),1);
|
||||
if PPDir<>'' then
|
||||
begin
|
||||
TestOutputDir:=OutputDir+'/'+PPDir;
|
||||
mkdirtree(TestOutputDir);
|
||||
end
|
||||
else
|
||||
TestOutputDir:=OutputDir;
|
||||
{ Per test logfiles }
|
||||
CompilerLogFile:=TestOutputFileName(SplitFileName(PPFile),'log');
|
||||
ExeLogFile:=TestOutputFileName(SplitFileName(PPFile),'elg');
|
||||
Verbose(V_Debug,'Using Compiler logfile: '+CompilerLogFile);
|
||||
Verbose(V_Debug,'Using Execution logfile: '+ExeLogFile);
|
||||
end;
|
||||
|
||||
if Res then
|
||||
begin
|
||||
@ -787,7 +893,7 @@ begin
|
||||
begin
|
||||
AddLog(ResLogFile,skipping_graph_test+PPFileInfo);
|
||||
{ avoid a second attempt by writing to elg file }
|
||||
AddLog(OutName,skipping_graph_test+PPFileInfo);
|
||||
AddLog(EXELogFile,skipping_graph_test+PPFileInfo);
|
||||
Verbose(V_Abort,skipping_graph_test);
|
||||
Res:=false;
|
||||
end;
|
||||
@ -798,7 +904,7 @@ begin
|
||||
if Config.IsInteractive and (not DoInteractive) then
|
||||
begin
|
||||
{ avoid a second attempt by writing to elg file }
|
||||
AddLog(OutName,skipping_interactive_test+PPFileInfo);
|
||||
AddLog(EXELogFile,skipping_interactive_test+PPFileInfo);
|
||||
AddLog(ResLogFile,skipping_interactive_test+PPFileInfo);
|
||||
Verbose(V_Abort,skipping_interactive_test);
|
||||
Res:=false;
|
||||
@ -810,7 +916,7 @@ begin
|
||||
if Config.IsKnownCompileError and (not DoKnown) then
|
||||
begin
|
||||
{ avoid a second attempt by writing to elg file }
|
||||
AddLog(OutName,skipping_known_bug+PPFileInfo);
|
||||
AddLog(EXELogFile,skipping_known_bug+PPFileInfo);
|
||||
AddLog(ResLogFile,skipping_known_bug+PPFileInfo);
|
||||
Verbose(V_Abort,skipping_known_bug);
|
||||
Res:=false;
|
||||
@ -831,7 +937,7 @@ begin
|
||||
if CompilerVersion<Config.MinVersion then
|
||||
begin
|
||||
{ avoid a second attempt by writing to elg file }
|
||||
AddLog(OutName,skipping_compiler_version_too_low+PPFileInfo);
|
||||
AddLog(EXELogFile,skipping_compiler_version_too_low+PPFileInfo);
|
||||
AddLog(ResLogFile,skipping_compiler_version_too_low+PPFileInfo);
|
||||
Verbose(V_Abort,'Compiler version too low '+CompilerVersion+' < '+Config.MinVersion);
|
||||
Res:=false;
|
||||
@ -848,7 +954,7 @@ begin
|
||||
if CompilerVersion>Config.MaxVersion then
|
||||
begin
|
||||
{ avoid a second attempt by writing to elg file }
|
||||
AddLog(OutName,skipping_compiler_version_too_high+PPFileInfo);
|
||||
AddLog(EXELogFile,skipping_compiler_version_too_high+PPFileInfo);
|
||||
AddLog(ResLogFile,skipping_compiler_version_too_high+PPFileInfo);
|
||||
Verbose(V_Abort,'Compiler version too high '+CompilerVersion+' > '+Config.MaxVersion);
|
||||
Res:=false;
|
||||
@ -861,11 +967,10 @@ begin
|
||||
if Config.NeedCPU<>'' then
|
||||
begin
|
||||
Verbose(V_Debug,'Required compiler cpu: '+Config.NeedCPU);
|
||||
Res:=GetCompilerCPU;
|
||||
if not IsInList(CompilerCPU,Config.NeedCPU) then
|
||||
begin
|
||||
{ avoid a second attempt by writing to elg file }
|
||||
AddLog(OutName,skipping_other_cpu+PPFileInfo);
|
||||
AddLog(EXELogFile,skipping_other_cpu+PPFileInfo);
|
||||
AddLog(ResLogFile,skipping_other_cpu+PPFileInfo);
|
||||
Verbose(V_Abort,'Compiler cpu "'+CompilerCPU+'" is not in list "'+Config.NeedCPU+'"');
|
||||
Res:=false;
|
||||
@ -878,11 +983,10 @@ begin
|
||||
if Config.SkipCPU<>'' then
|
||||
begin
|
||||
Verbose(V_Debug,'Skip compiler cpu: '+Config.NeedCPU);
|
||||
Res:=GetCompilerCPU;
|
||||
if IsInList(CompilerCPU,Config.SkipCPU) then
|
||||
begin
|
||||
{ avoid a second attempt by writing to elg file }
|
||||
AddLog(OutName,skipping_other_cpu+PPFileInfo);
|
||||
AddLog(EXELogFile,skipping_other_cpu+PPFileInfo);
|
||||
AddLog(ResLogFile,skipping_other_cpu+PPFileInfo);
|
||||
Verbose(V_Abort,'Compiler cpu "'+CompilerCPU+'" is in list "'+Config.SkipCPU+'"');
|
||||
Res:=false;
|
||||
@ -895,11 +999,10 @@ begin
|
||||
if Config.NeedTarget<>'' then
|
||||
begin
|
||||
Verbose(V_Debug,'Required compiler target: '+Config.NeedTarget);
|
||||
Res:=GetCompilerTarget;
|
||||
if not IsInList(CompilerTarget,Config.NeedTarget) then
|
||||
begin
|
||||
{ avoid a second attempt by writing to elg file }
|
||||
AddLog(OutName,skipping_other_target+PPFileInfo);
|
||||
AddLog(EXELogFile,skipping_other_target+PPFileInfo);
|
||||
AddLog(ResLogFile,skipping_other_target+PPFileInfo);
|
||||
Verbose(V_Abort,'Compiler target "'+CompilerTarget+'" is not in list "'+Config.NeedTarget+'"');
|
||||
Res:=false;
|
||||
@ -912,11 +1015,10 @@ begin
|
||||
if Config.SkipTarget<>'' then
|
||||
begin
|
||||
Verbose(V_Debug,'Skip compiler target: '+Config.NeedTarget);
|
||||
Res:=GetCompilerTarget;
|
||||
if IsInList(CompilerTarget,Config.SkipTarget) then
|
||||
begin
|
||||
{ avoid a second attempt by writing to elg file }
|
||||
AddLog(OutName,skipping_other_target+PPFileInfo);
|
||||
AddLog(EXELogFile,skipping_other_target+PPFileInfo);
|
||||
AddLog(ResLogFile,skipping_other_target+PPFileInfo);
|
||||
Verbose(V_Abort,'Compiler target "'+CompilerTarget+'" is in list "'+Config.SkipTarget+'"');
|
||||
Res:=false;
|
||||
@ -936,14 +1038,14 @@ begin
|
||||
if (Config.NoRun) then
|
||||
begin
|
||||
{ avoid a second attempt by writing to elg file }
|
||||
AddLog(OutName,skipping_run_test+PPFileInfo);
|
||||
AddLog(EXELogFile,skipping_run_test+PPFileInfo);
|
||||
AddLog(ResLogFile,skipping_run_test+PPFileInfo);
|
||||
Verbose(V_Debug,skipping_run_test);
|
||||
end
|
||||
else if Config.IsKnownRunError and (not DoKnown) then
|
||||
begin
|
||||
{ avoid a second attempt by writing to elg file }
|
||||
AddLog(OutName,skipping_known_bug+PPFileInfo);
|
||||
AddLog(EXELogFile,skipping_known_bug+PPFileInfo);
|
||||
AddLog(ResLogFile,skipping_known_bug+PPFileInfo);
|
||||
Verbose(V_Abort,skipping_known_bug);
|
||||
end
|
||||
@ -951,11 +1053,11 @@ begin
|
||||
begin
|
||||
if (not Config.ShouldFail) and DoExecute then
|
||||
begin
|
||||
if FileExists(ForceExtension(PPFile,'ppu')) or
|
||||
FileExists(ForceExtension(PPFile,'ppo')) or
|
||||
FileExists(ForceExtension(PPFile,'ppw')) then
|
||||
if FileExists(TestOutputFilename(PPFile,'ppu')) or
|
||||
FileExists(TestOutputFilename(PPFile,'ppo')) or
|
||||
FileExists(TestOutputFilename(PPFile,'ppw')) then
|
||||
begin
|
||||
AddLog(ForceExtension(PPFile,'elg'),skipping_run_unit+PPFileInfo);
|
||||
AddLog(ExeLogFile,skipping_run_unit+PPFileInfo);
|
||||
AddLog(ResLogFile,skipping_run_unit+PPFileInfo);
|
||||
Verbose(V_Debug,'Unit found, skipping run test')
|
||||
end
|
||||
@ -973,7 +1075,11 @@ begin
|
||||
end.
|
||||
{
|
||||
$Log$
|
||||
Revision 1.38 2004-09-30 15:38:59 peter
|
||||
Revision 1.39 2004-11-09 17:26:28 peter
|
||||
* use separate output dirs
|
||||
* same tree can be used for multiple targets
|
||||
|
||||
Revision 1.38 2004/09/30 15:38:59 peter
|
||||
* chdir to remote path before executing test
|
||||
|
||||
Revision 1.37 2004/07/03 18:28:21 florian
|
||||
|
Loading…
Reference in New Issue
Block a user