6c4344623b
The main HCL package is more visible this way, and so it's easier than having to pick it out from dozens of other package directories.
29 lines
719 B
Makefile
29 lines
719 B
Makefile
|
|
ifndef FUZZ_WORK_DIR
|
|
$(error FUZZ_WORK_DIR is not set)
|
|
endif
|
|
|
|
default:
|
|
@echo "See README.md for usage instructions"
|
|
|
|
fuzz-config: fuzz-exec-config
|
|
fuzz-expr: fuzz-exec-expr
|
|
fuzz-template: fuzz-exec-template
|
|
fuzz-traversal: fuzz-exec-traversal
|
|
|
|
fuzz-exec-%: fuzz%-fuzz.zip
|
|
go-fuzz -bin=./fuzz$*-fuzz.zip -workdir=$(FUZZ_WORK_DIR)
|
|
|
|
fuzz%-fuzz.zip: %/fuzz.go
|
|
go-fuzz-build github.com/hashicorp/hcl/v2/hclsyntax/fuzz/$*
|
|
|
|
tools:
|
|
go get -u github.com/dvyukov/go-fuzz/go-fuzz
|
|
go get -u github.com/dvyukov/go-fuzz/go-fuzz-build
|
|
|
|
clean:
|
|
rm fuzz*-fuzz.zip
|
|
|
|
.PHONY: tools clean fuzz-config fuzz-expr fuzz-template fuzz-traversal
|
|
.PRECIOUS: fuzzconfig-fuzz.zip fuzzexpr-fuzz.zip fuzztemplate-fuzz.zip fuzztraversal-fuzz.zip
|