forked from HPC-certification-forum/curriculum
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathMakefile
54 lines (39 loc) · 2.08 KB
/
Makefile
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
defaultTarget:
SAXON := java -jar "./tools/saxon/saxon9he.jar"
####################################################################################################
# allTargets #######################################################################################
####################################################################################################
#
# Adding a file to the `allTargets` variable has two effects:
# * The file is added to the default target, so that a simple `make` will build it.
# * The file is added to the clean target, so that `make clean` will remove it.
#
# Included 'rules.mk' files are supposed to add their targets to this variable.
#
####################################################################################################
allTargets :=
####################################################################################################
# Rules to generate 'rules.mk' files, and their includes. ##########################################
####################################################################################################
#
# A rules.mk file is expected to:
# * Define additional rules.
# * Add the targets of these additional rules to the `allTargets` make variable.
#
####################################################################################################
curDir := .
loadRules = $(eval curDir := $(curDir)/$(1)) \
$(eval include $(curDir)/rules.mk) \
$(eval curDir := $(shell dirname $(curDir)))
$(call loadRules,skill-tree)
$(call loadRules,visualization)
####################################################################################################
# defaultTarget and clean targets ##################################################################
####################################################################################################
#
# Should be last to ensure that `allTargets` is complete at this point.
#
####################################################################################################
defaultTarget: $(allTargets)
clean:
rm -f $(allTargets)