comparison Makefile @ 846:c9e35f1ca269 feature/setup_documenter

Make the targets properly depend on the source files
author Jonatan Werpers <jonatan@werpers.com>
date Fri, 14 Jan 2022 13:24:15 +0100
parents b4f542b4f2e4
children c8d6580d9307
comparison
equal deleted inserted replaced
845:b4f542b4f2e4 846:c9e35f1ca269
11 help: 11 help:
12 @echo 'Targets:' 12 @echo 'Targets:'
13 @echo ' help - Show this help.' 13 @echo ' help - Show this help.'
14 @echo ' docs - Generate docs for webserver deployment.' 14 @echo ' docs - Generate docs for webserver deployment.'
15 @echo ' localdocs - Generate docs for local viewing.' 15 @echo ' localdocs - Generate docs for local viewing.'
16 @echo ' opendocs - Open documentation in the browser.' 16 @echo ' opendocs - Open documentation in the browser remaking it if necessary.'
17 @echo '' 17 @echo ''
18 @echo 'Variables:' 18 @echo 'Variables:'
19 @echo ' JULIA - Controls which command is used to run julia' 19 @echo ' JULIA - Controls which command is used to run julia'
20 @echo ' Default $(JULIA_DEFAULT)' 20 @echo ' Default $(JULIA_DEFAULT)'
21 @echo ' BROWSER - Sets the command for how to open html files' 21 @echo ' BROWSER - Sets the command for how to open html files'
23 @echo '' 23 @echo ''
24 @echo 'Variables can be set on the commandline using the -e flag for make, e.g.' 24 @echo 'Variables can be set on the commandline using the -e flag for make, e.g.'
25 @echo ' make localdocs -e JULIA=path/to/julia' 25 @echo ' make localdocs -e JULIA=path/to/julia'
26 @echo 'or as shell environment variables.' 26 @echo 'or as shell environment variables.'
27 27
28 docs: 28 docs: docs/build
29 $(JULIA) --project=docs docs/make.jl --build-dir build --prettyurls
30 29
31 localdocs: 30 localdocs: docs/build-local
32 $(JULIA) --project=docs docs/make.jl --build-dir build-local
33 31
34 opendocs: 32 opendocs: localdocs
35 $(BROWSER) docs/build-local/index.html 33 $(BROWSER) docs/build-local/index.html
36 34
37 clean: 35 clean:
38 rm -r docs/build 36 rm -rf docs/build
39 rm -r docs/build-local 37 rm -rf docs/build-local
40 38
41 .PHONY: help docs localdocs opendocs clean 39 .PHONY: help docs localdocs opendocs clean
42 40
43 # TODO: 41 SRC_DIRS = src docs/src
44 # Make a real target for docs/build 42 SRC_FILES_AND_DIRS = $(foreach dir,$(SRC_DIRS),$(shell find $(dir)))
43 DEP_IGNORE = %/.DS_Store
44 DOCS_DEPENDENCIES = docs/make.jl $(filter-out $(DEP_IGNORE),$(SRC_FILES_AND_DIRS))
45 docs/build: $(DOCS_DEPENDENCIES)
46 $(JULIA) --project=docs docs/make.jl --build-dir build --prettyurls
47
48 docs/build-local: $(DOCS_DEPENDENCIES)
49 $(JULIA) --project=docs docs/make.jl --build-dir build-local
50
51
52 .PHONY: temp
53 temp:
54 @echo $(SRC_FILES_AND_DIRS)