Merge branch 'prerelease-3.2.1' into czarek
[unres.git] / source / unres / src_MD-M / Makefile_bluegene
diff --git a/source/unres/src_MD-M/Makefile_bluegene b/source/unres/src_MD-M/Makefile_bluegene
new file mode 100644 (file)
index 0000000..52bb470
--- /dev/null
@@ -0,0 +1,147 @@
+#
+FC = mpixlf77
+OPT =  -O4 -qarch=qp -qtune=qp -qnocr
+#OPT =  -O3 -qarch=qp -qtune=qp -qdebug=function_trace
+#OPT =  -O -qarch=qp -qtune=qp 
+#OPT = -O0 -C -g -qarch=qp -qtune=qp #-qdebug=function_trace
+#-Minline=name:scalar2,scalar,transpose2,matvec2,prodmat3 \
+#-Mprefetch=distance:8,nta
+
+#OPT1 = -O -g -qarch=qp -qtune=qp
+#OPT1 = -O -g -qarch=qp -qtune=qp -qdebug=function_trace
+OPT1 = ${OPT}
+#OPT2 = -O2 -qarch=qp -qtune=qp
+#OPT2 = -O2 -qarch=qp -qtune=qp -qdebug=function_trace
+OPT2 = ${OPT}
+#OPTE = -O4 -qarch=qp -qtune=qp
+#OPTE = -O4 -qarch=qp -qtune=qp 
+OPTE=${OPT}
+
+CFLAGS = -c
+FFLAGS = -c ${OPT} -I$(INSTALL_DIR)/include
+FFLAGS1 = -c ${OPT1} -I$(INSTALL_DIR)/include
+FFLAGS2 = -c ${OPT2} -I$(INSTALL_DIR)/include
+FFLAGSE = -c ${OPTE} -I$(INSTALL_DIR)/include
+
+LIBS = xdrf/libxdrf.a
+
+ARCH = LINUX
+PP = /lib/cpp -P
+
+
+all: unres
+
+.SUFFIXES: .F
+.F.o:
+       ${FC} ${FFLAGS} ${CPPFLAGS} $*.F
+
+object = unres.o arcos.o cartprint.o chainbuild.o convert.o initialize_p.o \
+        matmult.o readrtns_CSA.o parmread.o gen_rand_conf.o printmat.o map.o \
+        pinorm.o randgens.o rescode.o intcor.o timing.o misc.o intlocal.o \
+        cartder.o checkder_p.o econstr_local.o energy_p_new_barrier.o \
+       energy_p_new-sep_barrier.o gradient_p.o minimize_p.o sumsld.o \
+        cored.o rmdd.o geomout.o readpdb.o permut.o regularize.o thread.o fitsq.o mcm.o \
+        mc.o bond_move.o refsys.o check_sc_distr.o check_bond.o contact.o djacob.o \
+        eigen.o blas.o add.o entmcm.o minim_mcmf.o \
+        together.o csa.o minim_jlee.o shift.o diff12.o bank.o newconf.o ran.o \
+        indexx.o MP.o compare_s1.o prng_32.o \
+        test.o banach.o distfit.o rmsd.o elecont.o dihed_cons.o \
+        sc_move.o local_move.o \
+        intcartderiv.o lagrangian_lesyng.o\
+       stochfric.o kinetic_lesyng.o MD_A-MTS.o moments.o int_to_cart.o \
+        surfatom.o sort.o muca_md.o MREMD.o rattle.o gauss.o energy_split-sep.o \
+       q_measure.o gnmr1.o ssMD.o
+
+all: no_option
+       @echo "Specify force field: GAB, 4P or E0LL2Y"
+
+GAB: CPPFLAGS = -WF,-DAIX -WF,-DPROCOR -WF,-DLINUX -WF,-DPGI -WF,-DUNRES -WF,-DISNAN -WF,-DMP -WF,-DMPI \
+       -WF,-DSPLITELE -WF,-DLANG0 -WF,-DCRYST_BOND -WF,-DCRYST_THETA -WF,-DCRYST_SC
+GAB: BIN = ../bin/unres-mult-symetr_xlf77_MPI_GAB.exe
+GAB: ${object} xdrf/libxdrf.a
+       cc -o compinfo compinfo.c
+       ./compinfo | true
+       ${FC} ${FFLAGS} cinfo.f
+       ${FC} ${OPT} ${object} cinfo.o ${LIBS}  -o ${BIN}
+
+4P: CPPFLAGS = -WF,-DAIX -WF,-DLINUX -WF,-DPGI -WF,-DUNRES -WF,-DISNAN -WF,-DMP -WF,-DMPI \
+       -WF,-DSPLITELE -WF,-DLANG0 -WF,-DCRYST_BOND -WF,-DCRYST_THETA -WF,-DCRYST_SC
+4P: BIN = ../bin/unres-mult-symetr_xlf77_MPI_4P.exe
+4P: ${object} xdrf/libxdrf.a
+       cc -o compinfo compinfo.c
+       ./compinfo | true
+       ${FC} ${FFLAGS} cinfo.f
+       ${FC} ${OPT} ${object} cinfo.o ${LIBS}  -o ${BIN}
+
+E0LL2Y: CPPFLAGS = -WF,-DAIX -WF,-DPROCOR -WF,-DLINUX -WF,-DPGI -WF,-DUNRES -WF,-DISNAN -WF,-DMP -WF,-DMPI \
+       -WF,-DSPLITELE -WF,-DLANG0
+E0LL2Y: BIN = ../bin/unres-mult-symetr_xlf77_MPI_E0LL2Y.exe
+E0LL2Y: ${object} xdrf/libxdrf.a
+       cc -o compinfo compinfo.c
+       ./compinfo | true
+       ${FC} ${FFLAGS} cinfo.f
+       ${FC} ${OPT} ${object} cinfo.o ${LIBS}  -o ${BIN}
+
+xdrf/libxdrf.a:
+       cd xdrf && make
+
+
+clean:
+       /bin/rm -f *.o && /bin/rm -f compinfo && cd xdrf && make clean
+
+test.o: test.F
+       ${FC} ${FFLAGS} ${CPPFLAGS} test.F
+
+chainbuild.o: chainbuild.F
+       ${FC} ${FFLAGS} ${CPPFLAGS} chainbuild.F
+
+matmult.o: matmult.f
+       ${FC} ${FFLAGS} ${CPPFLAGS} matmult.f
+
+parmread.o : parmread.F
+       ${FC} ${FFLAGS} ${CPPFLAGS} parmread.F
+
+intcor.o : intcor.f
+       ${FC} ${FFLAGS} ${CPPFLAGS} intcor.f
+
+cartder.o : cartder.F
+       ${FC} ${FFLAGS} ${CPPFLAGS} cartder.F
+
+readpdb.o : readpdb.F
+       ${FC} ${FFLAGS2} ${CPPFLAGS} readpdb.F
+
+sumsld.o : sumsld.f
+       ${FC} ${FFLAGS} ${CPPFLAGS} sumsld.f
+        
+cored.o : cored.f
+       ${FC} ${FFLAGS1} ${CPPFLAGS} cored.f
+rmdd.o : rmdd.f
+       ${FC} ${FFLAGS} ${CPPFLAGS} rmdd.f
+
+energy_p_new_barrier.o : energy_p_new_barrier.F
+       ${FC} ${FFLAGSE} ${CPPFLAGS} energy_p_new_barrier.F
+
+gradient_p.o : gradient_p.F
+       ${FC} ${FFLAGSE} ${CPPFLAGS} gradient_p.F
+
+energy_p_new-sep_barrier.o : energy_p_new-sep_barrier.F
+       ${FC} ${FFLAGSE} ${CPPFLAGS} energy_p_new-sep_barrier.F
+
+lagrangian_lesyng.o : lagrangian_lesyng.F
+       ${FC} ${FFLAGSE} ${CPPFLAGS} lagrangian_lesyng.F
+
+MD_A-MTS.o : MD_A-MTS.F
+       ${FC} ${FFLAGSE} ${CPPFLAGS} MD_A-MTS.F
+
+blas.o : blas.f
+       ${FC} ${FFLAGS1} blas.f
+
+add.o : add.f
+       ${FC} ${FFLAGS1} add.f
+
+eigen.o : eigen.f
+       ${FC} ${FFLAGS2} eigen.f
+
+proc_proc.o: proc_proc.c
+       ${CC} ${CFLAGS} proc_proc.c