summaryrefslogtreecommitdiff
path: root/support/valdiag/Makefile
diff options
context:
space:
mode:
authorXavier ASUS <xavi92psx@gmail.com>2019-10-18 00:31:54 +0200
committerXavier ASUS <xavi92psx@gmail.com>2019-10-18 00:31:54 +0200
commit268a53de823a6750d6256ee1fb1e7707b4b45740 (patch)
tree42c1799a9a82b2f7d9790ee9fe181d72a7274751 /support/valdiag/Makefile
downloadsdcc-gas-268a53de823a6750d6256ee1fb1e7707b4b45740.tar.gz
sdcc-3.9.0 fork implementing GNU assembler syntax
This fork aims to provide better support for stm8-binutils
Diffstat (limited to 'support/valdiag/Makefile')
-rw-r--r--support/valdiag/Makefile54
1 files changed, 54 insertions, 0 deletions
diff --git a/support/valdiag/Makefile b/support/valdiag/Makefile
new file mode 100644
index 0000000..af97388
--- /dev/null
+++ b/support/valdiag/Makefile
@@ -0,0 +1,54 @@
+.SILENT:
+
+PYTHON = python3.6
+
+srcdir = .
+top_srcdir = ../..
+top_builddir = ../..
+
+TESTS_DIR = $(srcdir)/tests
+RESULTS_DIR = results
+PORTS_DIR = $(srcdir)/ports
+BUILD_DIR = gen
+ALL_PORTS = mcs51 mcs51-large mcs51-stack-auto ds390 z80 z180 r2k gbz80 tlcs90 hc08 s08 stm8 pdk14
+
+ALL_TESTS = $(shell find $(TESTS_DIR) -name "*.c")
+
+PORT_RESULTS_DIR = $(RESULTS_DIR)/$(PORT)
+PORT_RESULTS = $(ALL_TESTS:$(TESTS_DIR)/%.c=$(PORT_RESULTS_DIR)/%.out)
+PORT_BUILD_DIR = $(BUILD_DIR)/$(PORT)
+
+all: test-ports
+
+test-ports:
+ for i in $(ALL_PORTS); do $(MAKE) test-port PORT=$$i; done
+
+test-mcs51:
+ $(MAKE) test-port PORT=mcs51
+
+test-port: port-results
+
+clean: clean-gen
+ rm -rf $(RESULTS_DIR) *.pyc
+ rm -rf $(BUILD_DIR)
+
+distclean: clean
+ rm -r Makefile
+
+clean-gen:
+ for i in $(ALL_PORTS); do $(MAKE) clean-port PORT=$$i; done
+
+clean-port:
+ rm -rf $(PORT_BUILD_DIR)
+
+$(PORT_RESULTS_DIR)/%.out: $(TESTS_DIR)/%.c
+ $(PYTHON) $(srcdir)/valdiag.py $(PORT) $< $(PORT_BUILD_DIR)/$* $(srcdir)/../../device/include > $@
+ grep FAIL $@ ; true
+ cat $@ | $(PYTHON) $(srcdir)/../regression/compact-results.py
+
+port-results: port-dirs $(PORT_RESULTS)
+ cat $(PORT_RESULTS) | $(PYTHON) $(srcdir)/../regression/collate-results.py $(PORT)
+
+port-dirs:
+ mkdir -p $(PORT_RESULTS_DIR)
+ mkdir -p $(PORT_BUILD_DIR)