# SPDX-License-Identifier: LGPL-2.1-or-later
# See Notices.txt for copyright information
-.PHONY: all tests clean fix-tests
+.PHONY: all tests clean fix-tests format-tests build-tests
+
+SHELL=/bin/bash
CC = powerpc64le-linux-gnu-gcc
CXX = powerpc64le-linux-gnu-g++
TESTS_BUILD_DIR := $(addprefix build/,$(TESTS_DIR))
TESTS_DIFF := $(addsuffix diff.txt,$(TESTS_BUILD_DIR))
TESTS_FILTERED_OUT := $(addsuffix filtered-out.s,$(TESTS_BUILD_DIR))
-EXTRA_DEPS := Makefile $(wildcard include/*.h)
+EXTRA_DEPS := Makefile $(wildcard include/*.h) include/simplev_cpp_generated.h
+
+include/simplev_cpp_generated.h: Makefile generate_headers.py
+ python3 generate_headers.py
build/tests/%/:
mkdir -p $@
build/tests/%/diff.txt: tests/%/expected.s build/tests/%/filtered-out.s $(EXTRA_DEPS)
diff -u $< build/$(dir $<)filtered-out.s > $@ || true
-.PRECIOUS: build/tests/%/out.s build/tests/%/filtered-out.s build/tests/%/
+.PRECIOUS: build/tests/%/out.s build/tests/%/filtered-out.s build/tests/%/ include/simplev_cpp_generated.h
+
+tests: build-tests format-tests
-tests: $(TESTS_DIFF)
+build-tests: $(TESTS_DIFF)
@failed=0; \
for i in $+; do \
if [ -s "$$i" -o ! -e "$$i" ]; then \
fi; \
done
+format-tests: Makefile include/simplev_cpp_generated.h .clang-format
+ @if ! which clang-format-11 > /dev/null; then \
+ echo "clang-format-11 not found -- skipping format test"; \
+ else \
+ diff -u <(clang-format-11 < include/simplev_cpp_generated.h) include/simplev_cpp_generated.h; \
+ fi
+
clean:
- rm -rf build/tests
\ No newline at end of file
+ rm -rf build/tests include/simplev_cpp_generated.h
\ No newline at end of file