35c2a1f3292e3c562ddb74a675fc20cb0e4cc44b
[unres.git] / Makefile
1 #INSTALL_DIR = /usr/local/mpich-1.2.0
2 INSTALL_DIR = /users/software/mpich-1.2.7p1_intel-10.1_em64_ssh
3 #
4 #FC= /usr/local/opt/intel/compiler60/ia32/bin/ifc
5 FC= ifort
6
7 OPT =  -O3 -ip -w
8 #OPT = -g -CB
9 #OPT = -g
10 CFLAGS = -DSGI -c
11
12 FFLAGS = -c ${OPT} -I$(INSTALL_DIR)/include
13 FFLAGS1 = -c -w -g -d2 -CA -CB -I$(INSTALL_DIR)/include
14 FFLAGS2 = -c -w -g -O0 -I$(INSTALL_DIR)/include
15 FFLAGSE = -c -w -O3 -ipo -ipo_obj  -opt_report -I$(INSTALL_DIR)/include
16
17 #BIN = ../../../bin/unres/MD-M/unres_Tc_procor_newparm_em64-D-symetr.exe
18 #LIBS = -L$(INSTALL_DIR)/lib_pgi -lmpich xdrf/libxdrf.a
19 #LIBS = -L$(INSTALL_DIR)/lib_ifort -lmpich xdrf/libxdrf.a
20 LIBS = -L$(INSTALL_DIR)/lib -lmpich ../../lib/xdrf_em64/libxdrf.a 
21
22 ARCH = LINUX
23 PP = /lib/cpp -P
24
25
26 all: GAB
27
28 .SUFFIXES: .F
29 .F.o:
30         ${FC} ${FFLAGS} ${CPPFLAGS} $*.F
31
32 object = unres.o arcos.o cartprint.o chainbuild.o convert.o initialize_p.o \
33         matmult.o readrtns_CSA.o parmread.o gen_rand_conf.o printmat.o map.o \
34         pinorm.o randgens.o rescode.o intcor.o timing.o misc.o intlocal.o \
35         cartder.o checkder_p.o econstr_local.o energy_p_new_barrier.o \
36         energy_p_new-sep_barrier.o gradient_p.o minimize_p.o sumsld.o \
37         cored.o rmdd.o geomout.o readpdb.o regularize.o thread.o fitsq.o mcm.o \
38         mc.o bond_move.o refsys.o check_sc_distr.o check_bond.o contact.o djacob.o \
39         eigen.o blas.o add.o entmcm.o \
40         MP.o compare_s1.o \
41         banach.o rmsd.o elecont.o dihed_cons.o \
42         sc_move.o local_move.o \
43         intcartderiv.o lagrangian_lesyng.o\
44         stochfric.o kinetic_lesyng.o MD_A-MTS.o moments.o int_to_cart.o \
45         surfatom.o sort.o muca_md.o rattle.o gauss.o energy_split-sep.o \
46         q_measure.o gnmr1.o test.o ssMD.o permut.o distfit.o checkvar.o
47
48 no_option:
49
50 GAB: CPPFLAGS = -DPROCOR -DLINUX -DPGI -DUNRES -DISNAN -DMP -DMPI -DAMD64 \
51         -DSPLITELE -DLANG0 -DCRYST_BOND -DCRYST_THETA -DCRYST_SC\
52         -DSCCORPDB
53 GAB: BIN = ../../../bin/unres/MD-M/unres_ifort_MPICH_GAB.exe
54 GAB: ${object} ../../lib/xdrf_em64/libxdrf.a
55         cc -o compinfo compinfo.c
56         ./compinfo | true
57         ${FC} ${FFLAGS} cinfo.f
58         ${FC} ${OPT} ${object} cinfo.o ${LIBS}  -o ${BIN}
59
60 E0LL2Y: CPPFLAGS = -DPROCOR -DLINUX -DPGI -DUNRES -DISNAN -DMP -DMPI -DAMD64 \
61         -DSPLITELE -DLANG0
62 E0LL2Y: BIN = ../../../bin/unres/MD-M/unres_ifort_MPICH_E0LL2Y.exe
63 E0LL2Y: ${object} ../../lib/xdrf_em64/libxdrf.a
64         cc -o compinfo compinfo.c
65         ./compinfo | true
66         ${FC} ${FFLAGS} cinfo.f
67         ${FC} ${OPT} ${object} cinfo.o ${LIBS}  -o ${BIN}
68
69 ../../lib/xdrf_em64/libxdrf.a:
70         cd ../../lib/xdrf_em64 && make
71
72 4P: CPPFLAGS = -DLINUX -DPGI -DAMD64 -DUNRES -DISNAN \
73         -DSPLITELE -DLANG0 -DCRYST_BOND -DCRYST_THETA -DCRYST_SC
74 4P: BIN = ../../../bin/unres/MD/unres-mult_ifort_single_4P.exe
75 4P: ${object} xdrf/libxdrf.a
76         cc -o compinfo compinfo.c
77         ./compinfo | true
78         ${FC} ${FFLAGS} cinfo.f
79         ${FC} ${OPT} ${object} cinfo.o ${LIBS}  -o ${BIN}
80
81 E0LL2Y: CPPFLAGS = -DPROCOR -DLINUX -DPGI -DAMD64 -DUNRES -DISNAN \
82         -DSPLITELE -DLANG0
83 E0LL2Y: BIN = ../../../bin/unres/MD/unres-mult_ifort_single_E0LL2Y.exe
84 E0LL2Y: ${object} xdrf/libxdrf.a
85         cc -o compinfo compinfo.c
86         ./compinfo | true
87         ${FC} ${FFLAGS} cinfo.f
88         ${FC} ${OPT} ${object} cinfo.o ${LIBS}  -o ${BIN}
89
90 xdrf/libxdrf.a:
91         cd xdrf && make
92
93 clean:
94         /bin/rm -f *.o && /bin/rm -f compinfo && cd xdrf && make clean
95
96 test.o: test.F
97         ${FC} ${FFLAGS} ${CPPFLAGS} test.F
98
99 chainbuild.o: chainbuild.F
100         ${FC} ${FFLAGS} ${CPPFLAGS} chainbuild.F
101
102 matmult.o: matmult.f
103         ${FC} ${FFLAGS} ${CPPFLAGS} matmult.f
104
105 parmread.o : parmread.F
106         ${FC} ${FFLAGS} ${CPPFLAGS} parmread.F
107
108 intcor.o : intcor.f
109         ${FC} ${FFLAGS} ${CPPFLAGS} intcor.f
110
111 cartder.o : cartder.F
112         ${FC} ${FFLAGS} ${CPPFLAGS} cartder.F
113
114 readpdb.o : readpdb.F
115         ${FC} ${FFLAGS2} ${CPPFLAGS} readpdb.F
116
117 sumsld.o : sumsld.f
118         ${FC} ${FFLAGS} ${CPPFLAGS} sumsld.f
119         
120 cored.o : cored.f
121         ${FC} ${FFLAGS1} ${CPPFLAGS} cored.f
122  
123 rmdd.o : rmdd.f
124         ${FC} ${FFLAGS} ${CPPFLAGS} rmdd.f
125
126 energy_p_new_barrier.o : energy_p_new_barrier.F
127         ${FC} ${FFLAGSE} ${CPPFLAGS} energy_p_new_barrier.F
128
129 gradient_p.o : gradient_p.F
130         ${FC} ${FFLAGSE} ${CPPFLAGS} gradient_p.F
131
132 energy_p_new-sep_barrier.o : energy_p_new-sep_barrier.F
133         ${FC} ${FFLAGSE} ${CPPFLAGS} energy_p_new-sep_barrier.F
134
135 lagrangian_lesyng.o : lagrangian_lesyng.F
136         ${FC} ${FFLAGSE} ${CPPFLAGS} lagrangian_lesyng.F
137
138 MD_A-MTS.o : MD_A-MTS.F
139         ${FC} ${FFLAGSE} ${CPPFLAGS} MD_A-MTS.F
140
141 blas.o : blas.f
142         ${FC} ${FFLAGS1} blas.f
143
144 add.o : add.f
145         ${FC} ${FFLAGS1} add.f
146
147 eigen.o : eigen.f
148         ${FC} ${FFLAGS2} eigen.f
149
150 proc_proc.o: proc_proc.c
151         ${CC} ${CFLAGS} proc_proc.c