include ./tests.mk LLVM ?= 0 COMPILER != [ -n "$(CROSS_COMPILE)" ] \ && { \ [ "$(LLVM)" != "0" ] \ && echo clang --target="$(CROSS_COMPILE)" \ || echo $(CROSS_COMPILE)gcc \ ; \ } \ || echo $(CC) RELEASE ?= 0 OPTFLAGS != [ "$(RELEASE)" != "0" ] \ && echo "-O2" \ || echo "-O0" LTO ?= 0 LTOFLAGS != [ "$(LTO)" != "0" ] \ && echo "-flto=auto" DEBUG ?= 1 DEBUGFLAGS != [ "$(DEBUG)" != "0" ] \ && echo "-DDEBUG=1" \ || echo "-DNDEBUG=1" OBFLAGS := -g WARNFLAGS := -Wall -Wextra INCLUDE_FLAGS := -I include COMPILE_TEST := $(COMPILER) $(WARNFLAGS) $(OPTFLAGS) $(LTOFLAGS) \ $(OBFLAGS) $(CFLAGS) $(DEBUGFLAGS) $(INCLUDE_FLAGS) .PHONY: check check: $(TESTS) @echo "Running bytecode tests..." @set -e; for test in $(TESTS); do \ echo "Testing: $$test"; \ ./$$test; \ done @echo "Running jit tests..." @set -e; for test in $(TESTS); do \ echo "Testing: $$test"; \ ./$$test 1; \ done @echo "Success!"