TESTS =

all: clippy test subplot doc

clippy:
	cargo clippy --all-targets -- -Dwarnings

build:
	cargo build --all-targets

test: build
	cargo test -- ${TESTS}

.PHONY: doc
doc: subplot_build
	env 'RUSTDOCFLAGS=-D warnings' cargo doc --no-deps
	make -C doc

subplot_build:
	subplot docgen obnam.subplot --output obnam.html
	subplot codegen obnam.subplot --output test.py

subplot: subplot_build
	rm -f test.log
	python3 test.py --log test.log ${TESTS}

mutants:
	cargo mutants -e 'src/bin/**/*.rs'

roadmap.svg: roadmap.yaml
	roadmap "$<" > "$@"
