fuzz: fuzz.c ../../hmmlib.h
	afl-gcc -I../.. -g -D_GNU_SOURCE -fprofile-arcs -ftest-coverage $< -o $@

run: fuzz | output
	afl-fuzz -i tests -o output ./$<

cov: fuzz | output
	afl-cov -d output --coverage-cmd 'cat AFL_FILE | ./fuzz' --code-dir . --enable-branch-coverage --overwrite

output:
	mkdir -p $@

clean:
	rm -rf fuzz fuzz.gcno fuzz.gcda output

.PHONY: run cov clean