2
0
Эх сурвалжийг харах

Set TEST_USE_LONGLOG to send longlog to www.freepascal.org instead of all log and elg files

git-svn-id: trunk@28916 -
pierre 10 жил өмнө
parent
commit
0825f4a1a9
2 өөрчлөгдсөн 66 нэмэгдсэн , 13 устгасан
  1. 34 7
      tests/Makefile
  2. 32 6
      tests/Makefile.fpc

+ 34 - 7
tests/Makefile

@@ -1,5 +1,5 @@
 #
-# Don't edit, this file is generated by FPCMake Version 2.0.0 [2014-03-19 rev 27188]
+# Don't edit, this file is generated by FPCMake Version 2.0.0 [2014-04-01 rev 27428]
 #
 default: allexectests
 MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-qnx i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android m68k-linux m68k-freebsd m68k-netbsd m68k-amiga m68k-atari m68k-openbsd m68k-palmos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded arm-linux arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-msdos
@@ -1596,17 +1596,23 @@ ifdef ACROSSCOMPILE
 override FPCOPT+=$(CROSSOPT)
 endif
 override COMPILER:=$(strip $(FPC) $(FPCOPT))
-ifeq (,$(findstring -s ,$(COMPILER)))
+ifneq (,$(findstring -sh ,$(COMPILER)))
+UseEXECPPAS=1
+endif
+ifneq (,$(findstring -s ,$(COMPILER)))
+ifeq ($(FULL_SOURCE),$(FULL_TARGET))
+UseEXECPPAS=1
+endif
+endif
+ifneq ($(UseEXECPPAS),1)
 EXECPPAS=
 else
-ifeq ($(FULL_SOURCE),$(FULL_TARGET))
 ifdef RUNBATCH
 EXECPPAS:=@$(RUNBATCH) $(PPAS)
 else
 EXECPPAS:=@$(PPAS)
 endif
 endif
-endif
 .PHONY: fpc_exes
 ifndef CROSSINSTALL
 ifneq ($(TARGET_PROGRAMS),)
@@ -2110,7 +2116,7 @@ PREPUP=utils/prepup
 endif
 tstunits:
 	$(MAKE) -C tstunits FPC_VERSION= FPC=$(TEST_FPC) CPU_TARGET=$(TEST_CPU_TARGET) OS_TARGET=$(TEST_OS_TARGET) 'OPT=$(TEST_OPT)' CCOMPILER=$(TEST_CCOMPILER) BINUTILSPREFIX=$(TEST_BINUTILSPREFIX)
-.PHONY: create_c_objects delete_c_objects copyfiles
+.PHONY: create_c_objects delete_c_objects copyfiles test_c_objects
 C_SOURCE_DIR=test/cg/obj
 C_SOURCES=ctest.c tcext3.c tcext4.c tcext5.c tcext6.c
 CPP_SOURCES=cpptcl1.cpp cpptcl2.cpp
@@ -2269,6 +2275,11 @@ ifndef SINGLEDOTESTRUNS
 	$(Q)$(DOTEST) $(DOTESTOPT) -e $(wildcard $(addsuffix /t*.pp,$(TESTDIRS)))
 endif
 alltests: alltest alltbs alltbf allwebtbs allwebtbf
+test_c_objects: testprep
+	$(MAKE) $(patsubst %.pp,%.log, $(wildcard test/cg/cdecl/tcalext*.pp)))
+	$(MAKE) $(patsubst %.pp,%.elg, $(wildcard test/cg/cdecl/tcalext*.pp)))
+	$(MAKE) $(patsubst %.pp,%.log, $(wildcard test/cg/cdecl/tcppcl*.pp)))
+	$(MAKE) $(patsubst %.pp,%.elg, $(wildcard test/cg/cdecl/tcppcl*.pp)))
 ifdef SINGLEDOTESTRUNS
 .PHONY: allexectbs allexectbf allexecwebtbs allexecwebtbf allexectest allexectests
 allexectbs: $(addsuffix .tbslog, $(LOGFILES))
@@ -2294,14 +2305,19 @@ $(TEST_OUTPUTDIR)/%.webtbflog : $(WEBTBFREQ)
 $(TEST_OUTPUTDIR)/%.testlog : $(TESTREQ)
 	$(Q)$(ECHO) -n >> $(TEST_OUTPUTDIR)/faillist.testlog
 	$(Q)$(ECHO) -n >> $(TEST_OUTPUTDIR)/longlog.testlog
-allexectests:  $(TEST_OUTPUTDIR)/log.testlog $(TEST_OUTPUTDIR)/log.tbslog $(TEST_OUTPUTDIR)/log.tbflog $(TEST_OUTPUTDIR)/log.webtbslog $(TEST_OUTPUTDIR)/log.webtbflog $(addprefix $(TEST_OUTPUTDIR)/,$(foreach EXT, $(LOGEXT), $(addsuffix $(EXT), faillist longlog))) $(addsuffix .mergedlog, $(LOGFILES))
+allexectests:  $(TEST_OUTPUTDIR)/log.testlog $(TEST_OUTPUTDIR)/log.tbslog \
+	$(TEST_OUTPUTDIR)/log.tbflog $(TEST_OUTPUTDIR)/log.webtbslog \
+	$(TEST_OUTPUTDIR)/log.webtbflog \
+	$(addprefix $(TEST_OUTPUTDIR)/,$(foreach EXT, $(LOGEXT), $(addsuffix $(EXT), faillist longlog))) \
+	$(addsuffix .mergedlog, $(LOGFILES))
 else
 .PHONY: allexectests gparmake_allexectests
 MAKEINC=$(TEST_OUTPUTDIR)/MakeChunks-$(TEST_TARGETSUFFIX).inc
 $(GPARMAKE): $(COMPILER_UNITTARGETDIR) utils/gparmake.pp
 	$(FPC) $(FPCOPT) -FE. utils/gparmake.pp $(OPT)
 $(MAKEINC): $(GPARMAKE) $(TEST_OUTPUTDIR)
-	$(Q)$(GPARMAKE) $(MAKEINC) test 1 $(CHUNKSIZE) $(sort $(wildcard $(addsuffix /t*.pp,$(TESTDIRS))))
+	$(Q)$(GPARMAKE) $(MAKEINC) test 1 $(CHUNKSIZE) $(sort $(wildcard $(addsuffix /t*.pp,test)))
+	$(Q)$(GPARMAKE) $(MAKEINC) test 5000 $(CHUNKSIZE) $(sort $(wildcard $(addsuffix /t*.pp,$(addprefix /,$(TESTSUBDIRS)))))
 	$(Q)$(GPARMAKE) -a $(MAKEINC) tbs 10000 $(CHUNKSIZE) $(sort $(wildcard tbs/t*.pp))
 	$(Q)$(GPARMAKE) -a $(MAKEINC) tbf 15000 $(CHUNKSIZE) $(sort $(wildcard tbf/t*.pp))
 	$(Q)$(GPARMAKE) -a $(MAKEINC) webtbs 20000 $(CHUNKSIZE) $(sort $(wildcard webtbs/t*.pp))
@@ -2345,6 +2361,9 @@ $(TEST_OUTPUTDIR)/dbdigest.cfg:
 	$(ECHOREDIR) CPU=$(TEST_CPU_TARGET) >> $(TEST_OUTPUTDIR)/dbdigest.cfg
 	$(ECHOREDIR) Version=$(TEST_FPC_VERSION) >> $(TEST_OUTPUTDIR)/dbdigest.cfg
 	$(ECHOREDIR) LogFile=log >> $(TEST_OUTPUTDIR)/dbdigest.cfg
+ifneq ($(TEST_USE_LONGLOG),)
+	$(ECHOREDIR) LongLogFile=longlog >> $(TEST_OUTPUTDIR)/dbdigest.cfg
+endif
 	$(ECHOREDIR) Submitter=$(TEST_USER) >> $(TEST_OUTPUTDIR)/dbdigest.cfg
 	$(ECHOREDIR) Machine=$(TEST_HOSTNAME) >> $(TEST_OUTPUTDIR)/dbdigest.cfg
 	$(ECHOREDIR) Comment=$(TEST_OPT) >> $(TEST_OUTPUTDIR)/dbdigest.cfg
@@ -2368,6 +2387,11 @@ TARFROM=-I tar.lst
 else
 TARFROM=--files-from=tar.lst
 endif
+ifneq ($(TEST_USE_LONGLOG),)
+PREPUP_OPT=-ll
+else
+PREPUP_OPT=
+endif
 ifndef inWinDOS
 $(TEST_OUTPUTDIR)/tar.lst:
 ifdef inOS2
@@ -2376,6 +2400,9 @@ ifdef inOS2
 	$(ECHOREDIR) dbdigest.cfg>> $(TEST_OUTPUTDIR)/tar.lst
 else
 	cd $(TEST_OUTPUTDIR) && find . -name '*.log' -o -name '*.elg' > tar.lst
+else
+	$(ECHOREDIR) "longlog" > $(TEST_OUTPUTDIR)/tar.lst
+endif
 	$(ECHOREDIR) "log" >> $(TEST_OUTPUTDIR)/tar.lst
 	$(ECHOREDIR) "dbdigest.cfg" >> $(TEST_OUTPUTDIR)/tar.lst
 endif

+ 32 - 6
tests/Makefile.fpc

@@ -215,7 +215,7 @@ tstunits:
 # Copy test environment dependent files ctest.o, cext3.o, cext4.o to test/cg etc
 #
 
-.PHONY: create_c_objects delete_c_objects copyfiles
+.PHONY: create_c_objects delete_c_objects copyfiles test_c_objects
 
 C_SOURCE_DIR=test/cg/obj
 C_SOURCES=ctest.c tcext3.c tcext4.c tcext5.c tcext6.c
@@ -261,6 +261,7 @@ copyfiles: $(TEST_OUTPUTDIR)
         -$(COPY) $(CPP_OBJECTS) $(TEST_OUTPUTDIR)/test/cg
         -$(MKDIRTREE) $(TEST_OUTPUTDIR)/test/units/system
 
+
 ################################
 # Preparation for tests
 #
@@ -429,6 +430,12 @@ endif
 
 alltests: alltest alltbs alltbf allwebtbs allwebtbf
 
+test_c_objects: testprep
+	$(MAKE) $(patsubst %.pp,%.log, $(wildcard test/cg/cdecl/tcalext*.pp)))
+	$(MAKE) $(patsubst %.pp,%.elg, $(wildcard test/cg/cdecl/tcalext*.pp)))
+	$(MAKE) $(patsubst %.pp,%.log, $(wildcard test/cg/cdecl/tcppcl*.pp)))
+	$(MAKE) $(patsubst %.pp,%.elg, $(wildcard test/cg/cdecl/tcppcl*.pp)))
+	
 ################################
 # Compile and Run tests
 #
@@ -467,7 +474,11 @@ $(TEST_OUTPUTDIR)/%.testlog : $(TESTREQ)
 	$(Q)$(ECHO) -n >> $(TEST_OUTPUTDIR)/longlog.testlog
 
 # run all tests, then merge log files
-allexectests:  $(TEST_OUTPUTDIR)/log.testlog $(TEST_OUTPUTDIR)/log.tbslog $(TEST_OUTPUTDIR)/log.tbflog $(TEST_OUTPUTDIR)/log.webtbslog $(TEST_OUTPUTDIR)/log.webtbflog $(addprefix $(TEST_OUTPUTDIR)/,$(foreach EXT, $(LOGEXT), $(addsuffix $(EXT), faillist longlog))) $(addsuffix .mergedlog, $(LOGFILES))
+allexectests:  $(TEST_OUTPUTDIR)/log.testlog $(TEST_OUTPUTDIR)/log.tbslog \
+	$(TEST_OUTPUTDIR)/log.tbflog $(TEST_OUTPUTDIR)/log.webtbslog \
+	$(TEST_OUTPUTDIR)/log.webtbflog \
+	$(addprefix $(TEST_OUTPUTDIR)/,$(foreach EXT, $(LOGEXT), $(addsuffix $(EXT), faillist longlog))) \
+	$(addsuffix .mergedlog, $(LOGFILES))
 
 # SINGLEDOTESTRUNS
 else
@@ -480,7 +491,7 @@ $(GPARMAKE): $(COMPILER_UNITTARGETDIR) utils/gparmake.pp
         $(FPC) $(FPCOPT) -FE. utils/gparmake.pp $(OPT)
 
 # Can't have testprep as prerequisite, because that is a phony target and
-# phony targets are always remade. Since the makefile will be reparsed 
+# phony targets are always remade. Since the makefile will be reparsed
 # after making the MakeChunks file (because it has to be included) and all
 # up-to-date checks will be re-evaluated, this means that the testprep rule
 # (or testprep timestamp file, which depends on phony rules and hence has
@@ -493,11 +504,12 @@ $(GPARMAKE): $(COMPILER_UNITTARGETDIR) utils/gparmake.pp
 # building it via the utils Makefile
 $(MAKEINC): $(GPARMAKE) $(TEST_OUTPUTDIR)
 # generate rules for parallel executions of dotest
-# gparmake now also needs an additional parameter for the name of the 
+# gparmake now also needs an additional parameter for the name of the
 # used subdirectory. Note also that the index must be increasing for each
 # new call with a gap insuring that all the previous files have lower index
 # even if CHUNKSIZE is equal to 1.
-	$(Q)$(GPARMAKE) $(MAKEINC) test 1 $(CHUNKSIZE) $(sort $(wildcard $(addsuffix /t*.pp,$(TESTDIRS))))
+	$(Q)$(GPARMAKE) $(MAKEINC) test 1 $(CHUNKSIZE) $(sort $(wildcard $(addsuffix /t*.pp,test)))
+	$(Q)$(GPARMAKE) $(MAKEINC) test 5000 $(CHUNKSIZE) $(sort $(wildcard $(addsuffix /t*.pp,$(addprefix /,$(TESTSUBDIRS)))))
 	$(Q)$(GPARMAKE) -a $(MAKEINC) tbs 10000 $(CHUNKSIZE) $(sort $(wildcard tbs/t*.pp))
 	$(Q)$(GPARMAKE) -a $(MAKEINC) tbf 15000 $(CHUNKSIZE) $(sort $(wildcard tbf/t*.pp))
 	$(Q)$(GPARMAKE) -a $(MAKEINC) webtbs 20000 $(CHUNKSIZE) $(sort $(wildcard webtbs/t*.pp))
@@ -527,7 +539,7 @@ allexectests: $(MAKEINC)
 
 # SINGLEDOTESTRUNS
 endif
-  
+
 
 ################################
 # Clean
@@ -579,6 +591,9 @@ $(TEST_OUTPUTDIR)/dbdigest.cfg:
         $(ECHOREDIR) CPU=$(TEST_CPU_TARGET) >> $(TEST_OUTPUTDIR)/dbdigest.cfg
         $(ECHOREDIR) Version=$(TEST_FPC_VERSION) >> $(TEST_OUTPUTDIR)/dbdigest.cfg
         $(ECHOREDIR) LogFile=log >> $(TEST_OUTPUTDIR)/dbdigest.cfg
+ifneq ($(TEST_USE_LONGLOG),)
+        $(ECHOREDIR) LongLogFile=longlog >> $(TEST_OUTPUTDIR)/dbdigest.cfg
+endif
         $(ECHOREDIR) Submitter=$(TEST_USER) >> $(TEST_OUTPUTDIR)/dbdigest.cfg
         $(ECHOREDIR) Machine=$(TEST_HOSTNAME) >> $(TEST_OUTPUTDIR)/dbdigest.cfg
 	$(ECHOREDIR) Comment=$(TEST_OPT) >> $(TEST_OUTPUTDIR)/dbdigest.cfg
@@ -606,6 +621,14 @@ else
 TARFROM=--files-from=tar.lst
 endif
 
+# Pass option -ll to perpup if we use longlog file
+# instead of add all *.log and *.elg files to DB_TARGZ
+ifneq ($(TEST_USE_LONGLOG),)
+PREPUP_OPT=-ll
+else
+PREPUP_OPT=
+endif
+
 ifndef inWinDOS
 $(TEST_OUTPUTDIR)/tar.lst:
 ifdef inOS2
@@ -614,6 +637,9 @@ ifdef inOS2
         $(ECHOREDIR) dbdigest.cfg>> $(TEST_OUTPUTDIR)/tar.lst
 else
         cd $(TEST_OUTPUTDIR) && find . -name '*.log' -o -name '*.elg' > tar.lst
+else
+        $(ECHOREDIR) "longlog" > $(TEST_OUTPUTDIR)/tar.lst
+endif
         $(ECHOREDIR) "log" >> $(TEST_OUTPUTDIR)/tar.lst
         $(ECHOREDIR) "dbdigest.cfg" >> $(TEST_OUTPUTDIR)/tar.lst
 endif