-
Notifications
You must be signed in to change notification settings - Fork 2
/
Makefile
73 lines (55 loc) · 1.64 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
65
66
67
68
69
70
71
72
# master makefile
default:
@echo Specify what to make:
@echo " test - compile and run a simple test"
@echo " test-openmp - compile and run a simple OpenMP test"
@echo " lib - fortran libraries"
@echo " doc - compile documentation"
@echo " mwrap - build matlab wrapper generator"
@echo " mex - build octave/matlab mex files"
@echo " test-mex-octave - test octave mex files"
@echo " test-mex-matlab - test matlab mex files"
@echo " test-mwrap-mex-octave: build and test mwrap wrapper generator"
@echo " all - (almost) all of the above"
@echo " clean - remove object files"
SRC = ./src
DOC = ./doc
MATLAB = ./matlab
EXAMPLES = ./examples
MWRAP = ./contrib/mwrap-0.33.3
test:
cd $(EXAMPLES); $(MAKE) clean stfmm3dpart
test-openmp:
cd $(EXAMPLES); $(MAKE) clean stfmm3dpart-openmp
lib:
cd $(SRC); $(MAKE)
doc:
cd $(DOC); $(MAKE)
mex: mex-octave mex-matlab
mex-octave:
cd $(MATLAB); $(MAKE) linux-octave-64bit
test-mex-octave:
cd $(MATLAB); octave test_stfmm3dpart_direct.m
mex-matlab:
cd $(MATLAB); $(MAKE) linux-matlab-64bit
test-mex-matlab:
cd $(MATLAB); matlab -nodesktop -nojvm < test_stfmm3dpart_direct.m
mwrap:
cd $(MWRAP); $(MAKE)
cp -f $(MWRAP)/mwrap ./bin
test-mwrap-mex-octave: mwrap
cd $(MATLAB); $(MAKE) MWRAP=../bin linux-octave-64bit
all: lib test doc mwrap mex test-mex-octave
clean:
cd $(SRC); $(MAKE) clean
cd $(MATLAB); $(MAKE) clean
cd $(EXAMPLES); $(MAKE) clean
cd $(MWRAP); $(MAKE) clean
cd $(DOC); $(MAKE) clean
distclean:
cd $(SRC); $(MAKE) distclean
cd $(MATLAB); $(MAKE) distclean
cd $(EXAMPLES); $(MAKE) distclean
cd $(MWRAP); $(MAKE) realclean
cd $(DOC); $(MAKE) distclean
rm -f ./bin/mwrap