a4628bd529f4471613863d8df67bec98d187e220
[unres4.git] / source / wham / Makefile
1 INSTALL_DIR = /users/software/mpich2-1.4.1p1_intel
2 #INSTALL_DIR = /users/software/mpich-1.2.7p1_intel-10.1_em64_ssh
3
4 #FC= ifort
5 OPT = -mcmodel=medium -O3 -ip -w
6
7 FC= ${INSTALL_DIR}/bin/mpif90
8 CC = gcc
9
10 #DEB = -g -CA -CB -auto -zero -traceback -u -check pointer -check uninit
11 DEB = -g -CA -CB -check pointer #-check uninit
12 #OPT =  -O3 #-ip
13 FFLAGS = -fpp -c ${DEB} #${OPT} #-I. -I./include_unres -I$(INSTALL_DIR)/include
14 FFLAGSE = -fpp -c ${DEB} #${OPT} #-I. -I./include_unres -I$(INSTALL_DIR)/include
15 FFLAGS2 = -fpp -c -g -CA -CB #-O0
16 #FFLAGS = -c -g -C -I. -I./include_unres -I$(INSTALL_DIR)/include
17 #LIBS = -L$(INSTALL_DIR)/lib -lmpich ../../lib/xdrf/libxdrf.a
18
19 #CPPFLAGS = -DMPI -DLINUX -DUNRES -DSPLITELE -DPROCOR -DPGI -DCRYST_BOND -DCRYST_SC -DCRYST_THETA -DWHAM_RUN -DMPI -DISNAN
20
21 #EXE_FILE = ../bin/wham_F90_EL.exe
22 #UNRES_FILE= ../../UNRESS/unres_f90/source/unres_MD-M
23 UNRES_FILE= ../unres
24 UNRES_DATA_FILE= ../unres/data
25
26 data = wham_data.o w_compar_data.o w_comm_local.o
27
28 data_unres = names.o io_units.o calc_data.o compare_data.o control_data.o minim_data.o CSA_data.o\
29         energy_data.o geometry_data.o MD_data.o MPI_data.o MCM_data.o comm_local.o
30
31 objects_unres = xdrf/*.o math.o geometry.o \
32         io_base.o energy.o control.o regularize.o compare.o
33
34 objects = conform_compar.o io_database.o io_config.o io_wham.o\
35         enecalc.o wham_calc.o work_partition.o\
36         wham.o
37 #io_config is from unres package
38
39 all: no_option
40         @echo "Specify force field: GAB, 4P or E0LL2Y"
41
42 no_option:
43
44 GAB: CPPFLAGS = -DMPI -DLINUX -DUNRES -DSPLITELE -DPROCOR -DPGI -DISNAN -DAMD64 \
45         -DCRYST_BOND -DCRYST_THETA -DCRYST_SC -DWHAM_RUN  #-DWHAM
46 GAB: EXE_FILE = ../../bin/wham_GAB_F90_EL.exe
47 GAB: ${data} ${data_unres} ${objects_unres} ${objects}
48         cc -o compinfo compinfo.c
49         ./compinfo | true
50         ${FC} ${FFLAGS} cinfo.f90
51         $(FC) ${OPT} ${data}  ${data_unres} ${objects_unres} ${objects} cinfo.o -o ${EXE_FILE}
52 #        $(FC) ${OPT} ${objects} ${objects_compar} cinfo.o \
53 #        ${LIBS} -static-intel -o ${BIN}/wham-mult_ifort_MPICH-GAB.exe
54
55 4P: CPPFLAGS = -DMPI -DLINUX -DUNRES -DSPLITELE -DPGI -DISNAN -DAMD64 \
56         -DCRYST_BOND -DCRYST_THETA -DCRYST_SC -DWHAM_RUN # -DWHAM
57 4P: EXE_FILE = ../../bin/wham_4P_F90_EL.exe
58 4P: ${data}  ${data_unres} ${objects_unres} ${objects}
59         cc -o compinfo compinfo.c
60         ./compinfo | true
61         ${FC} ${FFLAGS} cinfo.f90
62         $(FC) ${OPT} ${data}  ${data_unres} ${objects_unres} ${objects} cinfo.o -o ${EXE_FILE}
63 #        $(FC) ${OPT} ${objects} ${objects_compar} cinfo.o \
64 #        ${LIBS} -static-intel -o ${BIN}/wham-mult_ifort_MPICH_D-4P.exe
65
66 E0LL2Y: CPPFLAGS = -DMPI -DLINUX -DUNRES -DSPLITELE -DPROCOR -DPGI -DISNAN -DAMD64 -DWHAM_RUN #-DWHAM
67 E0LL2Y: EXE_FILE = ../../bin/wham_E0LL2Y_F90_EL.exe
68 E0LL2Y: ${data}  ${data_unres} ${objects_unres} ${objects}
69         cc -o compinfo compinfo.c
70         ./compinfo | true
71         ${FC} ${FFLAGS} cinfo.f90
72         $(FC) ${OPT} ${data}  ${data_unres} ${objects_unres} ${objects} cinfo.o -o ${EXE_FILE}
73 #        $(FC) ${OPT} ${objects} ${objects_compar} cinfo.o \
74 #        ${LIBS} -static-intel -o ${BIN}/wham-mult_ifort_MPICH_D-E0LL2Y.exe
75
76 xdrf/*.o:
77         cd xdrf && make
78
79 clean:
80         rm -f *.o && rm -f *.mod && rm -f compinfo && cd xdrf && make clean
81 #       rm -f *.o && rm -f *.mod && rm -f ${EXE_FILE} && rm -f compinfo && cd xdrf && make clean
82 #       /bin/rm *.o
83
84 wham_data.o: wham_data.f90
85         ${FC} ${FFLAGS} ${CPPFLAGS} wham_data.f90
86
87 w_compar_data.o: w_compar_data.f90
88         ${FC} ${FFLAGS} ${CPPFLAGS} w_compar_data.f90
89
90 w_comm_local.o: w_comm_local.f90
91         ${FC} ${FFLAGS} ${CPPFLAGS} w_comm_local.f90
92
93
94 names.o: ${UNRES_DATA_FILE}/names.f90
95         ${FC} ${FFLAGS} ${CPPFLAGS} ${UNRES_DATA_FILE}/names.f90
96
97 io_units.o: ${UNRES_DATA_FILE}/io_units.f90
98         ${FC} ${FFLAGS} ${CPPFLAGS} ${UNRES_DATA_FILE}/io_units.f90
99
100 calc_data.o: ${UNRES_DATA_FILE}/calc_data.f90
101         ${FC} ${FFLAGS} ${CPPFLAGS} ${UNRES_DATA_FILE}/calc_data.f90
102
103 compare_data.o: ${UNRES_DATA_FILE}/compare_data.f90
104         ${FC} ${FFLAGS} ${CPPFLAGS} ${UNRES_DATA_FILE}/compare_data.f90
105
106 control_data.o: ${UNRES_DATA_FILE}/control_data.f90
107         ${FC} ${FFLAGS} ${CPPFLAGS} ${UNRES_DATA_FILE}/control_data.f90
108
109 CSA_data.o: ${UNRES_DATA_FILE}/CSA_data.f90
110         ${FC} ${FFLAGS} ${CPPFLAGS} ${UNRES_DATA_FILE}/CSA_data.f90
111
112 energy_data.o: ${UNRES_DATA_FILE}/energy_data.f90
113         ${FC} ${FFLAGS} ${CPPFLAGS} ${UNRES_DATA_FILE}/energy_data.f90
114
115 geometry_data.o: ${UNRES_DATA_FILE}/geometry_data.f90
116         ${FC} ${FFLAGS} ${CPPFLAGS} ${UNRES_DATA_FILE}/geometry_data.f90
117
118 MCM_data.o: ${UNRES_DATA_FILE}/MCM_data.f90
119         ${FC} ${FFLAGS} ${CPPFLAGS} ${UNRES_DATA_FILE}/MCM_data.f90
120
121 MD_data.o: ${UNRES_DATA_FILE}/MD_data.f90
122         ${FC} ${FFLAGS} ${CPPFLAGS} ${UNRES_DATA_FILE}/MD_data.f90
123
124 minim_data.o: ${UNRES_DATA_FILE}/minim_data.f90
125         ${FC} ${FFLAGS} ${CPPFLAGS} ${UNRES_DATA_FILE}/minim_data.f90
126
127 MPI_data.o: ${UNRES_DATA_FILE}/MPI_data.f90
128         ${FC} ${FFLAGS} ${CPPFLAGS} ${UNRES_DATA_FILE}/MPI_data.f90
129
130 comm_local.o: ${UNRES_DATA_FILE}/comm_local.f90
131         ${FC} ${FFLAGS} ${CPPFLAGS} ${UNRES_DATA_FILE}/comm_local.f90
132
133 math.o: ${UNRES_FILE}/math.f90
134         ${FC} ${FFLAGS} ${CPPFLAGS} ${UNRES_FILE}/math.f90
135
136 geometry.o: ${UNRES_FILE}/geometry.f90
137         ${FC} ${FFLAGS} ${CPPFLAGS} ${UNRES_FILE}/geometry.f90
138
139 io_base.o: ${UNRES_FILE}/io_base.f90
140         ${FC} ${FFLAGS} ${CPPFLAGS} ${UNRES_FILE}/io_base.f90
141
142 energy.o: ${UNRES_FILE}/energy.f90
143         ${FC} ${FFLAGSE} ${CPPFLAGS} ${UNRES_FILE}/energy.f90
144
145 control.o: ${UNRES_FILE}/control.f90
146         ${FC} ${FFLAGS} ${CPPFLAGS} ${UNRES_FILE}/control.f90
147
148 io_config.o: ${UNRES_FILE}/io_config.f90
149         ${FC} ${FFLAGS2} ${CPPFLAGS} ${UNRES_FILE}/io_config.f90
150
151 regularize.o: ${UNRES_FILE}/regularize.f90
152         ${FC} ${FFLAGS} ${CPPFLAGS} ${UNRES_FILE}/regularize.f90
153
154 compare.o: ${UNRES_FILE}/compare.f90
155         ${FC} ${FFLAGS} ${CPPFLAGS} ${UNRES_FILE}/compare.f90
156
157
158 proc_proc.o: proc_proc.c
159         ${CC} ${CPPFLAGS} -O -c proc_proc.c
160
161 io_database.o: io_database.f90
162         ${FC} ${FFLAGS} ${CPPFLAGS} io_database.f90
163
164 io_wham.o: io_wham.f90
165         ${FC} ${FFLAGS} ${CPPFLAGS} io_wham.f90
166
167 conform_compar.o: conform_compar.f90
168         ${FC} ${FFLAGS} ${CPPFLAGS} conform_compar.f90
169
170 enecalc.o: enecalc.f90
171         ${FC} ${FFLAGS} ${CPPFLAGS} enecalc.f90
172
173 wham_calc.o: wham_calc.f90
174         ${FC} ${FFLAGS} ${CPPFLAGS} wham_calc.f90
175
176 work_partition.o: work_partition.f90
177         ${FC} ${FFLAGS} ${CPPFLAGS} work_partition.f90
178
179 wham.o: wham.f90
180         ${FC} ${FFLAGS} ${CPPFLAGS} wham.f90
181