source: palm/trunk/UTIL/chemistry/gasphase_preproc/kpp/util/Makefile.c @ 4104

Last change on this file since 4104 was 2696, checked in by kanani, 7 years ago

Merge of branch palm4u into trunk

File size: 2.9 KB
Line 
1# Set here the desired C compiler and its optimization options
2CC   = gcc
3COPT = -O -Wall 
4
5# To create Matlab gateway routines
6# Note: use $(CC) as the mex C compiler
7MEX  = mex
8
9HEADERS = KPP_ROOT_Global.h  KPP_ROOT_Parameters.h  KPP_ROOT_Sparse.h
10
11SPSRC = KPP_ROOT_JacobianSP.c \
12        KPP_ROOT_HessianSP.c  \
13        KPP_ROOT_StoichiomSP.c
14
15SPOBJ = KPP_ROOT_JacobianSP.o \
16        KPP_ROOT_HessianSP.o  \
17        KPP_ROOT_StoichiomSP.o
18
19
20SRC =   KPP_ROOT_Main.c      KPP_ROOT_Integrator.c   \
21        KPP_ROOT_Function.c  KPP_ROOT_Initialize.c   \
22        KPP_ROOT_Jacobian.c  KPP_ROOT_LinearAlgebra.c\
23        KPP_ROOT_Rates.c     KPP_ROOT_Hessian.c      \
24        KPP_ROOT_Stoichiom.c KPP_ROOT_Util.c         \
25        KPP_ROOT_Monitor.c
26
27OBJ =   KPP_ROOT_Main.o      KPP_ROOT_Integrator.o   \
28        KPP_ROOT_Function.o  KPP_ROOT_Initialize.o   \
29        KPP_ROOT_Jacobian.o  KPP_ROOT_LinearAlgebra.o\
30        KPP_ROOT_Rates.o     KPP_ROOT_Hessian.o      \
31        KPP_ROOT_Stoichiom.o KPP_ROOT_Util.o         \
32        KPP_ROOT_Monitor.o
33
34STOCHSRC = KPP_ROOT_Stochastic.c
35STOCHOBJ = KPP_ROOT_Stochastic.o
36
37all:    exe
38
39exe:    $(HEADERS) $(SPOBJ) $(OBJ)
40        $(CC) $(COPT) $(SPOBJ) $(OBJ) -lm -o KPP_ROOT.exe       
41
42stochastic:$(HEADERS) $(SPOBJ) $(OBJ) $(STOCHOBJ)
43        $(CC) $(COPT) $(SPOBJ) $(OBJ) $(STOCHOBJ) -lm \
44        -o KPP_ROOT_stochastic.exe     
45
46mex:    $(HEADERS) $(SPOBJ) $(OBJ)
47        $(MEX) CC#$(CC) -O KPP_ROOT_mex_Fun.c     -lm $(SPOBJ) $(OBJ)
48        $(MEX) CC#$(CC) -O KPP_ROOT_mex_Jac_SP.-lm $(SPOBJ) $(OBJ)
49        $(MEX) CC#$(CC) -O KPP_ROOT_mex_Hessian.c -lm $(SPOBJ) $(OBJ)
50
51
52clean:
53        rm -f $(SPOBJ) $(OBJ) KPP_ROOT.exe KPP_ROOT_*.mexglx KPP_ROOT*.dat
54
55distclean:
56        rm -f $(SPOBJ) $(OBJ) KPP_ROOT.exe KPP_ROOT*.dat \
57        KPP_ROOT_*.c KPP_ROOT_*.h KPP_ROOT_*.map KPP_ROOT_*.mexglx
58
59KPP_ROOT_Monitor.o: KPP_ROOT_Monitor.c $(HEADERS)
60        $(CC) $(COPT) -c $<
61
62KPP_ROOT_JacobianSP.o: KPP_ROOT_JacobianSP.c $(HEADERS)
63        $(CC) $(COPT) -c $<
64
65KPP_ROOT_HessianSP.o: KPP_ROOT_HessianSP.$(HEADERS)
66        $(CC) $(COPT) -c $<
67
68KPP_ROOT_StoichiomSP.o: KPP_ROOT_StoichiomSP.c $(HEADERS)
69        $(CC) $(COPT) -c $<
70
71KPP_ROOT_Main.o: KPP_ROOT_Main.c KPP_ROOT_Initialize.o $(HEADERS) $(SPOBJ)
72        $(CC) $(COPT) -c $<
73
74KPP_ROOT_Integrator.o: KPP_ROOT_Integrator.$(HEADERS) $(SPOBJ)
75        $(CC) $(COPT) -c $<
76
77KPP_ROOT_Initialize.o: KPP_ROOT_Initialize.$(HEADERS) $(SPOBJ)
78        $(CC) $(COPT) -c $<
79
80KPP_ROOT_Function.o: KPP_ROOT_Function.$(HEADERS) $(SPOBJ)
81        $(CC) $(COPT) -c $<
82
83KPP_ROOT_Stochastic.o: KPP_ROOT_Stochastic.$(HEADERS) $(SPOBJ)
84        $(CC) $(COPT) -c $<
85
86KPP_ROOT_Jacobian.o: KPP_ROOT_Jacobian.$(HEADERS) $(SPOBJ)
87        $(CC) $(COPT) -c $<
88
89KPP_ROOT_LinearAlgebra.o: KPP_ROOT_LinearAlgebra.$(HEADERS) $(SPOBJ)
90        $(CC) $(COPT) -c $<
91
92KPP_ROOT_Rates.o: KPP_ROOT_Rates.$(HEADERS) $(SPOBJ)
93        $(CC) $(COPT) -c $<
94
95KPP_ROOT_Hessian.o:  KPP_ROOT_Hessian.c $(HEADERS) $(SPOBJ)
96        $(CC) $(COPT) -c $<
97
98KPP_ROOT_Stoichiom.o: KPP_ROOT_Stoichiom.$(HEADERS) $(SPOBJ)
99        $(CC) $(COPT) -c $<
100
101KPP_ROOT_Util.o: KPP_ROOT_Util.$(HEADERS) $(SPOBJ)
102        $(CC) $(COPT) -c $<
103
Note: See TracBrowser for help on using the repository browser.