annotate Makefile @ 1811:89d7f7b02824 v0.1.3

Bump version to 0.1.3
author Jonatan Werpers <jonatan@werpers.com>
date Thu, 03 Oct 2024 18:32:05 +0200
parents e1aefebe4ea2
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
844
ee0404433fc3 Add a opendocs target
Jonatan Werpers <jonatan@werpers.com>
parents: 843
diff changeset
1 JULIA_DEFAULT=julia --startup-file=no
ee0404433fc3 Add a opendocs target
Jonatan Werpers <jonatan@werpers.com>
parents: 843
diff changeset
2 JULIA?=$(JULIA_DEFAULT)
ee0404433fc3 Add a opendocs target
Jonatan Werpers <jonatan@werpers.com>
parents: 843
diff changeset
3
ee0404433fc3 Add a opendocs target
Jonatan Werpers <jonatan@werpers.com>
parents: 843
diff changeset
4 # Set the default browser
ee0404433fc3 Add a opendocs target
Jonatan Werpers <jonatan@werpers.com>
parents: 843
diff changeset
5 WHICH_XDG_OPEN=$(shell which xdg-open)
ee0404433fc3 Add a opendocs target
Jonatan Werpers <jonatan@werpers.com>
parents: 843
diff changeset
6 WHICH_OPEN=$(shell which open)
ee0404433fc3 Add a opendocs target
Jonatan Werpers <jonatan@werpers.com>
parents: 843
diff changeset
7 BROWSER_DEFAULT = $(if $(WHICH_XDG_OPEN), xdg-open)
ee0404433fc3 Add a opendocs target
Jonatan Werpers <jonatan@werpers.com>
parents: 843
diff changeset
8 BROWSER_DEFAULT := $(if $(BROWSER_DEFAULT), $(BROWSER_DEFAULT), open)
ee0404433fc3 Add a opendocs target
Jonatan Werpers <jonatan@werpers.com>
parents: 843
diff changeset
9 BROWSER?=$(BROWSER_DEFAULT)
843
f4e67a74f923 Use a variable for the JULIA command to allow changing it
Jonatan Werpers <jonatan@werpers.com>
parents: 841
diff changeset
10
839
d138a3e9fd67 Add a Makefile
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
11 help:
d138a3e9fd67 Add a Makefile
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
12 @echo 'Targets:'
1274
c8d6580d9307 Add Make targets for running benchmarks
Vidar Stiernström <vidar.stiernstrom@it.uu.se>
parents: 846
diff changeset
13 @echo ' help - Show this help.'
c8d6580d9307 Add Make targets for running benchmarks
Vidar Stiernström <vidar.stiernstrom@it.uu.se>
parents: 846
diff changeset
14 @echo ' docs - Generate docs for webserver deployment.'
c8d6580d9307 Add Make targets for running benchmarks
Vidar Stiernström <vidar.stiernstrom@it.uu.se>
parents: 846
diff changeset
15 @echo ' localdocs - Generate docs for local viewing.'
c8d6580d9307 Add Make targets for running benchmarks
Vidar Stiernström <vidar.stiernstrom@it.uu.se>
parents: 846
diff changeset
16 @echo ' opendocs - Open documentation in the browser remaking it if necessary.'
c8d6580d9307 Add Make targets for running benchmarks
Vidar Stiernström <vidar.stiernstrom@it.uu.se>
parents: 846
diff changeset
17 @echo ' benchmark - Run benchmark suite.'
c8d6580d9307 Add Make targets for running benchmarks
Vidar Stiernström <vidar.stiernstrom@it.uu.se>
parents: 846
diff changeset
18 @echo ' benchmarkrev - Run benchmark suite for revision REV.'
c8d6580d9307 Add Make targets for running benchmarks
Vidar Stiernström <vidar.stiernstrom@it.uu.se>
parents: 846
diff changeset
19 @echo ' benchmarkcmp - Run benchmark suite comparing TARGET to BASELINE.'
843
f4e67a74f923 Use a variable for the JULIA command to allow changing it
Jonatan Werpers <jonatan@werpers.com>
parents: 841
diff changeset
20 @echo ''
f4e67a74f923 Use a variable for the JULIA command to allow changing it
Jonatan Werpers <jonatan@werpers.com>
parents: 841
diff changeset
21 @echo 'Variables:'
f4e67a74f923 Use a variable for the JULIA command to allow changing it
Jonatan Werpers <jonatan@werpers.com>
parents: 841
diff changeset
22 @echo ' JULIA - Controls which command is used to run julia'
844
ee0404433fc3 Add a opendocs target
Jonatan Werpers <jonatan@werpers.com>
parents: 843
diff changeset
23 @echo ' Default $(JULIA_DEFAULT)'
ee0404433fc3 Add a opendocs target
Jonatan Werpers <jonatan@werpers.com>
parents: 843
diff changeset
24 @echo ' BROWSER - Sets the command for how to open html files'
ee0404433fc3 Add a opendocs target
Jonatan Werpers <jonatan@werpers.com>
parents: 843
diff changeset
25 @echo ' Default: xdg-open if it exists otherwise open'
1274
c8d6580d9307 Add Make targets for running benchmarks
Vidar Stiernström <vidar.stiernstrom@it.uu.se>
parents: 846
diff changeset
26 @echo ' REV - Valid Mercurial revision specifier used in benchmarkrev'
c8d6580d9307 Add Make targets for running benchmarks
Vidar Stiernström <vidar.stiernstrom@it.uu.se>
parents: 846
diff changeset
27 @echo ' TARGET - Valid Mercurial revision specifier used in benchmarkcmp'
c8d6580d9307 Add Make targets for running benchmarks
Vidar Stiernström <vidar.stiernstrom@it.uu.se>
parents: 846
diff changeset
28 @echo ' as the target revision'
c8d6580d9307 Add Make targets for running benchmarks
Vidar Stiernström <vidar.stiernstrom@it.uu.se>
parents: 846
diff changeset
29 @echo ' BASELINE - Valid Mercurial revision specifier used in benchmarkcmp'
c8d6580d9307 Add Make targets for running benchmarks
Vidar Stiernström <vidar.stiernstrom@it.uu.se>
parents: 846
diff changeset
30 @echo ' as the baseline revision'
843
f4e67a74f923 Use a variable for the JULIA command to allow changing it
Jonatan Werpers <jonatan@werpers.com>
parents: 841
diff changeset
31 @echo ''
f4e67a74f923 Use a variable for the JULIA command to allow changing it
Jonatan Werpers <jonatan@werpers.com>
parents: 841
diff changeset
32 @echo 'Variables can be set on the commandline using the -e flag for make, e.g.'
f4e67a74f923 Use a variable for the JULIA command to allow changing it
Jonatan Werpers <jonatan@werpers.com>
parents: 841
diff changeset
33 @echo ' make localdocs -e JULIA=path/to/julia'
844
ee0404433fc3 Add a opendocs target
Jonatan Werpers <jonatan@werpers.com>
parents: 843
diff changeset
34 @echo 'or as shell environment variables.'
839
d138a3e9fd67 Add a Makefile
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
35
846
c9e35f1ca269 Make the targets properly depend on the source files
Jonatan Werpers <jonatan@werpers.com>
parents: 845
diff changeset
36 docs: docs/build
839
d138a3e9fd67 Add a Makefile
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
37
846
c9e35f1ca269 Make the targets properly depend on the source files
Jonatan Werpers <jonatan@werpers.com>
parents: 845
diff changeset
38 localdocs: docs/build-local
839
d138a3e9fd67 Add a Makefile
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
39
846
c9e35f1ca269 Make the targets properly depend on the source files
Jonatan Werpers <jonatan@werpers.com>
parents: 845
diff changeset
40 opendocs: localdocs
845
b4f542b4f2e4 Use two folders for local and webserver builds
Jonatan Werpers <jonatan@werpers.com>
parents: 844
diff changeset
41 $(BROWSER) docs/build-local/index.html
844
ee0404433fc3 Add a opendocs target
Jonatan Werpers <jonatan@werpers.com>
parents: 843
diff changeset
42
1274
c8d6580d9307 Add Make targets for running benchmarks
Vidar Stiernström <vidar.stiernstrom@it.uu.se>
parents: 846
diff changeset
43 cleandocs:
846
c9e35f1ca269 Make the targets properly depend on the source files
Jonatan Werpers <jonatan@werpers.com>
parents: 845
diff changeset
44 rm -rf docs/build
1274
c8d6580d9307 Add Make targets for running benchmarks
Vidar Stiernström <vidar.stiernstrom@it.uu.se>
parents: 846
diff changeset
45 rm -rf docs/build-local
c8d6580d9307 Add Make targets for running benchmarks
Vidar Stiernström <vidar.stiernstrom@it.uu.se>
parents: 846
diff changeset
46
1301
e1aefebe4ea2 Remove unnecessary targets in Makefile
Jonatan Werpers <jonatan@werpers.com>
parents: 1274
diff changeset
47 benchmark:
e1aefebe4ea2 Remove unnecessary targets in Makefile
Jonatan Werpers <jonatan@werpers.com>
parents: 1274
diff changeset
48 $(JULIA) --project=benchmark benchmark/make.jl
1274
c8d6580d9307 Add Make targets for running benchmarks
Vidar Stiernström <vidar.stiernstrom@it.uu.se>
parents: 846
diff changeset
49
1301
e1aefebe4ea2 Remove unnecessary targets in Makefile
Jonatan Werpers <jonatan@werpers.com>
parents: 1274
diff changeset
50 benchmarkrev:
e1aefebe4ea2 Remove unnecessary targets in Makefile
Jonatan Werpers <jonatan@werpers.com>
parents: 1274
diff changeset
51 $(JULIA) --project=benchmark benchmark/make.jl --rev $(REV)
1274
c8d6580d9307 Add Make targets for running benchmarks
Vidar Stiernström <vidar.stiernstrom@it.uu.se>
parents: 846
diff changeset
52
1301
e1aefebe4ea2 Remove unnecessary targets in Makefile
Jonatan Werpers <jonatan@werpers.com>
parents: 1274
diff changeset
53 benchmarkcmp:
e1aefebe4ea2 Remove unnecessary targets in Makefile
Jonatan Werpers <jonatan@werpers.com>
parents: 1274
diff changeset
54 $(JULIA) --project=benchmark benchmark/make.jl --cmp $(TARGET) $(BASELINE)
839
d138a3e9fd67 Add a Makefile
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
55
1274
c8d6580d9307 Add Make targets for running benchmarks
Vidar Stiernström <vidar.stiernstrom@it.uu.se>
parents: 846
diff changeset
56 cleanbenchmark:
c8d6580d9307 Add Make targets for running benchmarks
Vidar Stiernström <vidar.stiernstrom@it.uu.se>
parents: 846
diff changeset
57 rm -rf benchmark/results
c8d6580d9307 Add Make targets for running benchmarks
Vidar Stiernström <vidar.stiernstrom@it.uu.se>
parents: 846
diff changeset
58 rm -f benchmark/tune.json
c8d6580d9307 Add Make targets for running benchmarks
Vidar Stiernström <vidar.stiernstrom@it.uu.se>
parents: 846
diff changeset
59
c8d6580d9307 Add Make targets for running benchmarks
Vidar Stiernström <vidar.stiernstrom@it.uu.se>
parents: 846
diff changeset
60 clean: cleandocs cleanbenchmark
c8d6580d9307 Add Make targets for running benchmarks
Vidar Stiernström <vidar.stiernstrom@it.uu.se>
parents: 846
diff changeset
61
c8d6580d9307 Add Make targets for running benchmarks
Vidar Stiernström <vidar.stiernstrom@it.uu.se>
parents: 846
diff changeset
62 .PHONY: help clean docs localdocs opendocs cleandocs benchmark benchmarkrev benchmarkcmp cleanbenchmark
844
ee0404433fc3 Add a opendocs target
Jonatan Werpers <jonatan@werpers.com>
parents: 843
diff changeset
63
846
c9e35f1ca269 Make the targets properly depend on the source files
Jonatan Werpers <jonatan@werpers.com>
parents: 845
diff changeset
64 SRC_DIRS = src docs/src
c9e35f1ca269 Make the targets properly depend on the source files
Jonatan Werpers <jonatan@werpers.com>
parents: 845
diff changeset
65 SRC_FILES_AND_DIRS = $(foreach dir,$(SRC_DIRS),$(shell find $(dir)))
c9e35f1ca269 Make the targets properly depend on the source files
Jonatan Werpers <jonatan@werpers.com>
parents: 845
diff changeset
66 DEP_IGNORE = %/.DS_Store
c9e35f1ca269 Make the targets properly depend on the source files
Jonatan Werpers <jonatan@werpers.com>
parents: 845
diff changeset
67 DOCS_DEPENDENCIES = docs/make.jl $(filter-out $(DEP_IGNORE),$(SRC_FILES_AND_DIRS))
c9e35f1ca269 Make the targets properly depend on the source files
Jonatan Werpers <jonatan@werpers.com>
parents: 845
diff changeset
68 docs/build: $(DOCS_DEPENDENCIES)
c9e35f1ca269 Make the targets properly depend on the source files
Jonatan Werpers <jonatan@werpers.com>
parents: 845
diff changeset
69 $(JULIA) --project=docs docs/make.jl --build-dir build --prettyurls
c9e35f1ca269 Make the targets properly depend on the source files
Jonatan Werpers <jonatan@werpers.com>
parents: 845
diff changeset
70
c9e35f1ca269 Make the targets properly depend on the source files
Jonatan Werpers <jonatan@werpers.com>
parents: 845
diff changeset
71 docs/build-local: $(DOCS_DEPENDENCIES)
c9e35f1ca269 Make the targets properly depend on the source files
Jonatan Werpers <jonatan@werpers.com>
parents: 845
diff changeset
72 $(JULIA) --project=docs docs/make.jl --build-dir build-local