# Set here the desired C compiler and its optimization options CC = gcc COPT = -O -Wall # To create Matlab gateway routines # Note: use $(CC) as the mex C compiler MEX = mex HEADERS = caca_Global.h caca_Parameters.h caca_Sparse.h SPSRC = caca_JacobianSP.c \ caca_HessianSP.c \ caca_StoichiomSP.c SPOBJ = caca_JacobianSP.o \ caca_HessianSP.o \ caca_StoichiomSP.o SRC = caca_Main.c caca_Integrator.c \ caca_Function.c caca_Initialize.c \ caca_Jacobian.c caca_LinearAlgebra.c\ caca_Rates.c caca_Hessian.c \ caca_Stoichiom.c caca_Util.c \ caca_Monitor.c OBJ = caca_Main.o caca_Integrator.o \ caca_Function.o caca_Initialize.o \ caca_Jacobian.o caca_LinearAlgebra.o\ caca_Rates.o caca_Hessian.o \ caca_Stoichiom.o caca_Util.o \ caca_Monitor.o STOCHSRC = caca_Stochastic.c STOCHOBJ = caca_Stochastic.o all: exe exe: $(HEADERS) $(SPOBJ) $(OBJ) $(CC) $(COPT) $(SPOBJ) $(OBJ) -lm -o caca.exe stochastic:$(HEADERS) $(SPOBJ) $(OBJ) $(STOCHOBJ) $(CC) $(COPT) $(SPOBJ) $(OBJ) $(STOCHOBJ) -lm \ -o caca_stochastic.exe mex: $(HEADERS) $(SPOBJ) $(OBJ) $(MEX) CC#$(CC) -O caca_mex_Fun.c -lm $(SPOBJ) $(OBJ) $(MEX) CC#$(CC) -O caca_mex_Jac_SP.c -lm $(SPOBJ) $(OBJ) $(MEX) CC#$(CC) -O caca_mex_Hessian.c -lm $(SPOBJ) $(OBJ) clean: rm -f $(SPOBJ) $(OBJ) caca.exe caca_*.mexglx caca*.dat distclean: rm -f $(SPOBJ) $(OBJ) caca.exe caca*.dat \ caca_*.c caca_*.h caca_*.map caca_*.mexglx caca_Monitor.o: caca_Monitor.c $(HEADERS) $(CC) $(COPT) -c $< caca_JacobianSP.o: caca_JacobianSP.c $(HEADERS) $(CC) $(COPT) -c $< caca_HessianSP.o: caca_HessianSP.c $(HEADERS) $(CC) $(COPT) -c $< caca_StoichiomSP.o: caca_StoichiomSP.c $(HEADERS) $(CC) $(COPT) -c $< caca_Main.o: caca_Main.c caca_Initialize.o $(HEADERS) $(SPOBJ) $(CC) $(COPT) -c $< caca_Integrator.o: caca_Integrator.c $(HEADERS) $(SPOBJ) $(CC) $(COPT) -c $< caca_Initialize.o: caca_Initialize.c $(HEADERS) $(SPOBJ) $(CC) $(COPT) -c $< caca_Function.o: caca_Function.c $(HEADERS) $(SPOBJ) $(CC) $(COPT) -c $< caca_Stochastic.o: caca_Stochastic.c $(HEADERS) $(SPOBJ) $(CC) $(COPT) -c $< caca_Jacobian.o: caca_Jacobian.c $(HEADERS) $(SPOBJ) $(CC) $(COPT) -c $< caca_LinearAlgebra.o: caca_LinearAlgebra.c $(HEADERS) $(SPOBJ) $(CC) $(COPT) -c $< caca_Rates.o: caca_Rates.c $(HEADERS) $(SPOBJ) $(CC) $(COPT) -c $< caca_Hessian.o: caca_Hessian.c $(HEADERS) $(SPOBJ) $(CC) $(COPT) -c $< caca_Stoichiom.o: caca_Stoichiom.c $(HEADERS) $(SPOBJ) $(CC) $(COPT) -c $< caca_Util.o: caca_Util.c $(HEADERS) $(SPOBJ) $(CC) $(COPT) -c $<