Files

33 lines
833 B
Makefile

CC=gcc
CFLAGS=-Wall -Wextra -Werror -fprofile-arcs -ftest-coverage -ftime-report -g -O0 -DCMC_CALLBACKS
INCLUDE=-I ..
OUTDIR=out
main:
mkdir -p ./$(OUTDIR)
$(CC) ./main.c $(INCLUDE) $(CFLAGS) -o ./$(OUTDIR)/$@.exe
valgrind --leak-check=yes ./$(OUTDIR)/$@.exe
gcov -p ./$(OUTDIR)/$@.gcda
dev: main
mkdir -p ./coverage
mv *.gcov ./coverage
single:
$(CC) ./single.c $(INCLUDE) $(CFLAGS) -o ./$(OUTDIR)/$@.exe -DTEST=$(TEST)
./$(OUTDIR)/$@.exe
clean:
rm ./*.gcov ./*.gcda ./*.gcno ./*.exe -f
rm ./coverage ./$(OUTDIR) -rf
lcov: dev
lcov --capture --directory ./$(OUTDIR) --output-file ./$(OUTDIR)/coverage.info
genhtml ./$(OUTDIR)/coverage.info --output-directory out
types:
$(CC) ./types.c $(INCLUDE) -Wall -Wextra -O3 -ftime-report -o ./$(OUTDIR)/$@.exe
./$(OUTDIR)/$@.exe
.PHONY: main dev single clean lcov types