-
Notifications
You must be signed in to change notification settings - Fork 4
/
Copy pathMakefile
64 lines (43 loc) · 1.51 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
55
56
57
58
59
60
61
62
63
64
PYTHON ?= python3
COMMONDRBDOPTS=drbdoptions.json
COMMONPROPERTIES=properties.json
PYCONSTS=../linstor/sharedconsts.py
PYPROPS=../linstor/properties.py
JAVABASEOUT=../server/generated-src
JAVAOUT=$(JAVABASEOUT)/com/linbit
JAVAAPIOUT=$(JAVAOUT)/linstor/api
JAVACONSTS=$(JAVAAPIOUT)/ApiConsts.java
JAVAPROPOUT=$(JAVAAPIOUT)/prop
JAVAPROPERTYRULES=$(JAVAPROPOUT)/GeneratedPropertyRules.java
GOCONSTS=../apiconsts.go
# make java the default one
all: java
%.json:
;
$(PYCONSTS): genconsts.py consts.json
$(PYTHON) ./genconsts.py python ../linstor
$(JAVAPROPOUT):
mkdir -p $@
$(JAVAPROPERTYRULES): genproperties.py $(COMMONPROPERTIES) $(COMMONDRBDOPTS) $(JAVAPROPOUT)
$(PYTHON) ./genproperties.py java $(COMMONPROPERTIES) $(COMMONDRBDOPTS) > $@
$(PYPROPS): genproperties.py $(COMMONPROPERTIES) $(COMMONDRBDOPTS)
$(PYTHON) ./genproperties.py python $(COMMONPROPERTIES) $(COMMONDRBDOPTS) > $@
$(COMMONDRBDOPTS): gendrbdoptions.py drbdsetup.xml
$(PYTHON) ./gendrbdoptions.py $(COMMONDRBDOPTS)
$(JAVAAPIOUT):
mkdir -p $@
$(JAVACONSTS): genconsts.py consts.json $(JAVAAPIOUT)
$(PYTHON) ./genconsts.py java $(JAVAAPIOUT)
$(GOCONSTS): genconsts.py consts.json
$(PYTHON) ./genconsts.py golang ../
python: $(PYCONSTS) $(PYPROPS)
java: $(JAVACONSTS) $(COMMONDRBDOPTS) $(JAVAPROPERTYRULES)
golang: $(GOCONSTS)
cleancommon:
rm -f $(COMMONDRBDOPTS)
cleanpython: cleancommon
rm -f $(PYCONSTS) $(PYPROPS)
cleanjava: cleancommon
rm -f $(JAVACONSTS) $(JAVAPROPERTYRULES)
rm -Rf $(JAVAAPIOUT) $(JAVAPROPOUT)
clean: cleanpython cleanjava