bcfd204c33d4900816126504f067b62f0caaa487
[unres.git] / source / unres / src_CSA / Makefile_MPICH_bluegene
1 #################################################################################
2 FC = mpixlf77
3 OPT =  -O4 -qarch=qp -qtune=qp -qnocr
4 #OPT =  -O3 -qarch=qp -qtune=qp -qdebug=function_trace
5 #OPT =  -O -qarch=qp -qtune=qp
6 #OPT = -O0 -C -g -qarch=qp -qtune=qp #-qdebug=function_trace
7 #-Minline=name:scalar2,scalar,transpose2,matvec2,prodmat3 \
8 #-Mprefetch=distance:8,nta
9
10 #OPT1 = -O -g -qarch=qp -qtune=qp
11 #OPT1 = -O -g -qarch=qp -qtune=qp -qdebug=function_trace
12 OPT1 = ${OPT}
13 #OPT2 = -O2 -qarch=qp -qtune=qp
14 #OPT2 = -O2 -qarch=qp -qtune=qp -qdebug=function_trace
15 OPT2 = ${OPT}
16 #OPTE = -O4 -qarch=qp -qtune=qp
17 #OPTE = -O4 -qarch=qp -qtune=qp
18 OPTE=${OPT}
19
20 CFLAGS = -c
21 FFLAGS = -c ${OPT} -I$(INSTALL_DIR)/include
22 FFLAGS1 = -c ${OPT1} -I$(INSTALL_DIR)/include
23 FFLAGS2 = -c ${OPT2} -I$(INSTALL_DIR)/include
24 FFLAGSE = -c ${OPTE} -I$(INSTALL_DIR)/include
25
26 LIBS = xdrf/libxdrf.a
27
28 ARCH = LINUX
29 PP = /lib/cpp -P
30
31 all: no_option
32         @echo "Specify force field: GAB, E0LL2Y, 4P or CASP3"
33
34 .SUFFIXES: .F
35 .F.o:
36         ${FC} ${FFLAGS} ${CPPFLAGS} $*.F
37
38
39 object = unres_csa.o arcos.o cartprint.o chainbuild.o initialize_p.o \
40         matmult.o readrtns_csa.o parmread.o \
41         pinorm.o randgens.o rescode.o intcor.o timing.o misc.o intlocal.o \
42         cartder.o checkder_p.o econstr_local.o energy_p_new_barrier.o \
43         gradient_p.o minimize_p.o sumsld.o \
44         cored.o rmdd.o geomout_min.o readpdb.o \
45         intcartderiv.o \
46         MP.o printmat.o convert.o int_to_cart.o \
47         dfa.o \
48         together.o csa.o minim_jlee.o shift.o diff12.o bank.o newconf.o ran.o \
49         indexx.o prng_32.o contact.o gen_rand_conf.o \
50         sc_move.o test.o local_move.o rmsd.o fitsq.o elecont.o djacob.o \
51         distfit.o banach.o TMscore_subroutine.o minim_mult.o refsys.o
52
53 no_option:
54
55 GAB: CPPFLAGS = -DPROCOR -DLINUX -DPGI -DAMD64 -DUNRES -DISNAN -DMP -DMPI \
56         -DSPLITELE -DLANG0 -DCRYST_BOND -DCRYST_THETA -DCRYST_SC
57 GAB: BIN = ../../../bin/unres/CSA/unres_csa_xlf77_MPICH_GAB.exe
58 LIBS =  -lpthread -L$(INSTALL_DIR)/lib -lmpich
59 GAB: ${object}
60         cc -o compinfo compinfo.c
61         ./compinfo | true
62         ${FC} ${FFLAGS} cinfo.f
63         ${FC} ${OPT} ${object} cinfo.o ${LIBS}  -o ${BIN}
64
65 E0LL2Y: CPPFLAGS = -DPROCOR -DLINUX -DPGI -DAMD64 -DUNRES -DISNAN -DMP -DMPI \
66         -DSPLITELE -DLANG0
67 E0LL2Y: BIN = ../../../bin/unres/CSA/unres_csa_xlf77_MPICH_E0LL2Y.exe
68 E0LL2Y: ${object} 
69         cc -o compinfo compinfo.c
70         ./compinfo | true
71         ${FC} ${FFLAGS} cinfo.f
72         ${FC} ${OPT} ${object} cinfo.o ${LIBS}  -o ${BIN}
73
74 CASP3: CPPFLAGS = -DLINUX -DPGI -DISNAN -DMP -DMPI -DUNRES \
75            -DSPLITELE -DAMD64 -DLANG0 -DMOMENT \
76            -DCRYST_BOND -DCRYST_THETA -DCRYST_SC -DCRYST_TOR
77 CASP3: BIN = ../../../bin/unres/CSA/unres_csa_xlf77_MPICH_CASP3.exe
78 CASP3: ${object} 
79         cc -o compinfo compinfo.c
80         ./compinfo | true
81         ${FC} ${FFLAGS} cinfo.f
82         ${FC} ${OPT} ${object} cinfo.o ${LIBS}  -o ${BIN}
83
84 4P: CPPFLAGS = -DLINUX -DPGI -DISNAN -DMP -DMPI -DUNRES \
85            -DSPLITELE -DAMD64 -DLANG0 \
86            -DCRYST_BOND -DCRYST_THETA -DCRYST_SC 
87 4P: BIN = ../../../bin/unres/CSA/unres_csa_xlf77_MPICH_4P.exe
88 4P: ${object} 
89         cc -o compinfo compinfo.c
90         ./compinfo | true
91         ${FC} ${FFLAGS} cinfo.f
92         ${FC} ${OPT} ${object} cinfo.o ${LIBS}  -o ${BIN}
93
94 clean:
95         /bin/rm -f *.o && /bin/rm -f compinfo 
96
97 test.o: test.F
98         ${FC} ${FFLAGS} ${CPPFLAGS} test.F
99
100 chainbuild.o: chainbuild.F
101         ${FC} ${FFLAGS} ${CPPFLAGS} chainbuild.F
102
103 matmult.o: matmult.f
104         ${FC} ${FFLAGS} ${CPPFLAGS} matmult.f
105
106 parmread.o : parmread.F
107         ${FC} ${FFLAGS} ${CPPFLAGS} parmread.F
108
109 intcor.o : intcor.f
110         ${FC} ${FFLAGS} ${CPPFLAGS} intcor.f
111
112 cartder.o : cartder.F
113         ${FC} ${FFLAGS} ${CPPFLAGS} cartder.F
114
115 readpdb.o : readpdb.F
116         ${FC} ${FFLAGS2} ${CPPFLAGS} readpdb.F
117
118 sumsld.o : sumsld.f
119         ${FC} ${FFLAGS} ${CPPFLAGS} sumsld.f
120         
121 cored.o : cored.f
122         ${FC} ${FFLAGS1} ${CPPFLAGS} cored.f
123  
124 rmdd.o : rmdd.f
125         ${FC} ${FFLAGS} ${CPPFLAGS} rmdd.f
126
127 energy_p_new_barrier.o : energy_p_new_barrier.F
128         ${FC} ${FFLAGSE} ${CPPFLAGS} energy_p_new_barrier.F
129
130 gradient_p.o : gradient_p.F
131         ${FC} ${FFLAGSE} ${CPPFLAGS} gradient_p.F
132
133 energy_p_new-sep_barrier.o : energy_p_new-sep_barrier.F
134         ${FC} ${FFLAGSE} ${CPPFLAGS} energy_p_new-sep_barrier.F
135
136 lagrangian_lesyng.o : lagrangian_lesyng.F
137         ${FC} ${FFLAGSE} ${CPPFLAGS} lagrangian_lesyng.F
138
139 MD_A-MTS.o : MD_A-MTS.F
140         ${FC} ${FFLAGSE} ${CPPFLAGS} MD_A-MTS.F
141
142 blas.o : blas.f
143         ${FC} ${FFLAGS1} blas.f
144
145 add.o : add.f
146         ${FC} ${FFLAGS1} add.f
147
148 eigen.o : eigen.f
149         ${FC} ${FFLAGS2} eigen.f
150
151 proc_proc.o: proc_proc.c
152         ${CC} ${CFLAGS} proc_proc.c