-
Notifications
You must be signed in to change notification settings - Fork 0
/
Makefile
59 lines (50 loc) · 1.58 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
all: .configured
cmake --build .build --config RelWithDebInfo -- $(filter -j%,$(MAKEFLAGS))
.PHONY: test
test:
cmake -H. -B.build
CTEST_OUTPUT_ON_FAILURE=true cmake --build .build --target test --config RelWithDebInfo
config: .build
ifeq ($(CMAKE_GENERATOR),Ninja)
ccmake -H. -B.build -DCMAKE_BUILD_TYPE=RelWithDebInfo -G "Ninja"
else
ccmake -H. -B.build -DCMAKE_BUILD_TYPE=RelWithDebInfo -G "Unix Makefiles"
endif
touch .configured
.configured: .build
ifeq ($(CMAKE_GENERATOR),Ninja)
cmake -H. -B.build -DCMAKE_BUILD_TYPE=RelWithDebInfo -G "Ninja"
else
cmake -H. -B.build -DCMAKE_BUILD_TYPE=RelWithDebInfo -G "Unix Makefiles"
endif
touch .configured
.build:
mkdir -p .build
clean: .build
cmake --build .build --target clean --config RelWithDebInfo
-rm -rf .build
rm -f .configured
DOC = doc/
docu: docu_html docu_latex docu_hl
echo
echo
echo + Reference documentation generated: $(DOC)html/index.html
echo + Reference documentation generated: $(DOC)refman.pdf
echo + Highlevel documentation generated: $(DOC)documentation_HL.pdf
echo
docu_html:
doxygen doc/doxygen.cfg
cd $(DOC) ; zip -q html.zip html/*
echo
echo
docu_latex:
$(MAKE) -C $(DOC)latex
cd $(DOC)latex ; dvips refman
cd $(DOC)latex ; ps2pdf14 refman.ps refman.pdf
cp $(DOC)latex/refman.pdf $(DOC)
docu_hl: $(DOC)high_level_doc/documentation.tex
cd $(DOC)high_level_doc ; latex documentation.tex
cd $(DOC)high_level_doc ; bibtex documentation
cd $(DOC)high_level_doc ; latex documentation.tex
cd $(DOC)high_level_doc ; dvips documentation
cd $(DOC)high_level_doc ; ps2pdf14 documentation.ps ../documentation_HL.pdf