From d3e85e80fd192d3fb19fa207bd6ce158a012b45a Mon Sep 17 00:00:00 2001 From: seyko Date: Tue, 5 Apr 2016 10:43:50 +0300 Subject: Identifiers can start and/or contain '.' in *.S modified version of the old one which don't allow '.' in #define Identifiers. This allow correctly preprocess the following code in *.S #define SRC(y...) \ 9999: y; \ .section __ex_table, "a"; \ .long 9999b, 6001f ; \ // .previous SRC(1: movw (%esi), %bx) 6001: A test included. --- tests/pp/Makefile | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) (limited to 'tests/pp/Makefile') diff --git a/tests/pp/Makefile b/tests/pp/Makefile index cb8bfea..d55699c 100644 --- a/tests/pp/Makefile +++ b/tests/pp/Makefile @@ -7,6 +7,7 @@ include $(TOP)/Makefile TCC = $(TOP)/tcc TESTS = $(patsubst %.c,%.test,$(wildcard *.c)) +TESTS += $(patsubst %.S,%.test,$(wildcard *.S)) ifdef CONFIG_WIN32 TCC = $(top_srcdir)/win32/tcc @@ -20,10 +21,19 @@ all test : $(TESTS) diff -Nu -b -B -I "^#" $(EXTRA_DIFF_OPTS) $*.expect $*.output \ && rm -f $*.output +%.test: %.S %.expect + @echo PPTest $* ... + @$(TCC) -E -P $< >$*.output 2>&1 ; \ + diff -Nu -b -B -I "^#" $(EXTRA_DIFF_OPTS) $*.expect $*.output \ + && rm -f $*.output + # automatically generate .expect files with gcc: -%.expect : +%.expect: %.c gcc -E -P $*.c >$*.expect 2>&1 +%.expect: %.S + gcc -E -P $*.S >$*.expect 2>&1 + # tell make not to delete .PRECIOUS: %.expect -- cgit v1.3.1