]> git.immae.eu Git - github/fretlink/edi-parser.git/blob - Makefile
Release code as open source
[github/fretlink/edi-parser.git] / Makefile
1 STACK_ROOT ?= "${HOME}/.stack"
2
3 build:
4 stack --stack-root "${STACK_ROOT}" build
5
6 test:
7 stack --stack-root "${STACK_ROOT}" test
8
9 lint: lint-haskell lint-shell
10
11 lint-haskell:
12 $(MAKE) -C core lint
13 $(MAKE) -C scaffolder lint
14 $(MAKE) -C specification lint
15
16 lint-shell:
17 @git ls-files "*.sh" | xargs shellcheck -x
18
19 doc: ## make doc # Use haddock for producing the codebase documentation
20 stack --no-haddock-deps --stack-root "${STACK_ROOT}" haddock
21
22 doc-publish: doc ## make doc-publish # Build and publish generated haddock
23 ./scripts/documentation-versioning.sh "${WWW}" "${COMMIT_TAG}" '$(shell stack --stack-root "${STACK_ROOT}" path --local-doc-root)'
24
25 help:
26 @grep -E '^[a-zA-Z_-]+:.*?## .*$$' $(MAKEFILE_LIST) | sort | awk 'BEGIN {FS = ":.*?## "}; {printf "\033[36m%-30s\033[0m %s\n", $$1, $$2}'
27
28 .DEFAULT_GOAL := help
29 .PHONY: test lint doc help