Fixed tests on Windows (including out-of-tree problems)
Modified tcctest.c so that it uses 'double' in place of 'long double' with MinGW since this is what TCC does, and what Visual C++ does. Added an option -norunsrc to tcc to allow argv[0] to be set independently of the compiled source when using tcc -run, which allows tests that rely on the value of argv[0] to work in out-of-tree builds. Also added Makefile rules to automatically update out-of-tree build Makefiles when in-tree Makefiles have changed.
This commit is contained in:
@ -13,7 +13,7 @@ ifeq ($(TARGETOS),Darwin)
|
||||
export MACOSX_DEPLOYMENT_TARGET:=10.2
|
||||
endif
|
||||
|
||||
TCC_RUN = $(TOP)/tcc $(TCCFLAGS) -run
|
||||
TCC = $(TOP)/tcc $(TCCFLAGS)
|
||||
|
||||
TESTS = \
|
||||
00_assignment.test \
|
||||
@ -84,8 +84,8 @@ endif
|
||||
%.test: %.c %.expect
|
||||
@echo Test: $*...
|
||||
@if [ "x`echo $* | grep args`" != "x" ]; \
|
||||
then $(TCC_RUN) $< - arg1 arg2 arg3 arg4 >$*.output; \
|
||||
else $(TCC_RUN) $< >$*.output; \
|
||||
then $(TCC) $< -norunsrc -run $(notdir $<) - arg1 arg2 arg3 arg4 >$*.output; \
|
||||
else $(TCC) -run $< >$*.output; \
|
||||
fi
|
||||
@if diff -bu $(<:.c=.expect) $*.output ; \
|
||||
then rm -f $*.output; \
|
||||
@ -96,3 +96,6 @@ all test: $(TESTS)
|
||||
|
||||
clean:
|
||||
rm -vf fred.txt *.output
|
||||
|
||||
Makefile: $(top_srcdir)/tests/tests2/Makefile
|
||||
cp $< $@
|
||||
|
||||
Reference in New Issue
Block a user