timing.F
thread.F
unres.F
+ ssMD.F
)
if(Fortran_COMPILER_NAME STREQUAL "ifort")
set(UNRES_MD_SRC0 ${UNRES_MD_SRC0} prng.f )
+elseif(Fortran_COMPILER_NAME STREQUAL "mpif90")
+ set(UNRES_MD_SRC0 ${UNRES_MD_SRC0} prng.f )
+elseif(Fortran_COMPILER_NAME STREQUAL "f95")
+ set(UNRES_MD_SRC0 ${UNRES_MD_SRC0} prng.f )
+elseif(Fortran_COMPILER_NAME STREQUAL "gfortran")
+ set(UNRES_MD_SRC0 ${UNRES_MD_SRC0} prng.f )
else()
set(UNRES_MD_SRC0 ${UNRES_MD_SRC0} prng_32.F )
endif (Fortran_COMPILER_NAME STREQUAL "ifort")
#set(FFLAGS3 "-c -w -O3 -ipo -ipo_obj -opt_report" )
set(FFLAGS3 "-w -ipo " )
elseif (Fortran_COMPILER_NAME STREQUAL "gfortran")
- set(FFLAGS0 "-I. " )
- set(FFLAGS1 "-g -I. " )
- set(FFLAGS2 "-I. ")
+ set(FFLAGS0 "-std=legacy -I. " )
+ set(FFLAGS1 "-std=legacy -g -I. " )
+ set(FFLAGS2 "-std=legacy -I. ")
#set(FFLAGS3 "-c -w -O3 -ipo -ipo_obj -opt_report" )
- set(FFLAGS3 "-I. " )
+ set(FFLAGS3 "-std=legacy -I. " )
endif (Fortran_COMPILER_NAME STREQUAL "ifort")
endif(UNRES_WITH_MPI)
#=========================================
-# cinfo.f stupid workaround for cmake
-# - shame on me ]:)
+# cinfo.f workaround for cmake
#=========================================
-set_property(SOURCE compinfo.c PROPERTY CMAKE_C_FLAGS "-c" )
-add_executable(compinfo-md compinfo.c)
-set_target_properties(compinfo-md PROPERTIES OUTPUT_NAME compinfo)
-
-set(UNRES_CINFO_DIR "${CMAKE_CURRENT_BINARY_DIR}" )
-add_custom_command(OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/cinfo.f
- COMMAND ${CMAKE_COMMAND} -E copy ${CMAKE_CURRENT_SOURCE_DIR}/cinfo.f ${CMAKE_CURRENT_BINARY_DIR}/cinfo.f
- COMMAND ${CMAKE_COMMAND} -E copy ${CMAKE_CURRENT_SOURCE_DIR}/COMMON.IOUNITS ${CMAKE_CURRENT_BINARY_DIR}/COMMON.IOUNITS
- COMMAND ${CMAKE_CURRENT_BINARY_DIR}/compinfo | true
- DEPENDS compinfo-md )
-set_property(SOURCE ${UNRES_CINFO_DIR}/cinfo.f PROPERTY COMPILE_FLAGS ${FFLAGS0} )
+# get the current date
+TODAY(DATE)
+# generate cinfo.f
+
+set(CINFO "${CMAKE_CURRENT_BINARY_DIR}/cinfo.f")
+FILE(WRITE ${CINFO}
+"C CMake generated file
+ subroutine cinfo
+ include 'COMMON.IOUNITS'
+ write(iout,*)'++++ Compile info ++++'
+ write(iout,*)'Version ${UNRES_MAJOR}.${UNRES_MINOR} build ${UNRES_PATCH}'
+")
+
+CINFO_FORMAT(${CINFO} "Compiled" "${DATE}" )
+CINFO_FORMAT(${CINFO} "Compiled by" "$ENV{USER}@$ENV{HOST}" )
+CINFO_FORMAT(${CINFO} "OS name:" "${CMAKE_SYSTEM_NAME}" )
+CINFO_FORMAT(${CINFO} "OS release:" "${CMAKE_SYSTEM}" )
+CINFO_FORMAT(${CINFO} "Fortran Compiler:" "${CMAKE_Fortran_COMPILER}" )
+CINFO_FORMAT(${CINFO} "MD Force field:" "${UNRES_MD_FF}" )
+CINFO_FORMAT(${CINFO} "CPPFLAGS =" "${CPPFLAGS}")
+
+FILE(APPEND ${CINFO}
+" write(iout,*)'++++ End of compile info ++++'
+ return
+ end ")
+
+# add include path
+set_property(SOURCE ${CMAKE_CURRENT_BINARY_DIR}/cinfo.f PROPERTY COMPILE_FLAGS "${FFLAGS0} -I${CMAKE_CURRENT_SOURCE_DIR}")
#=========================================
# Set full unres MD sources
#=========================================
-set(UNRES_MD_SRCS ${UNRES_MD_SRC0} ${UNRES_MD_SRC3} ${UNRES_CINFO_DIR}/cinfo.f )
+set(UNRES_MD_SRCS ${UNRES_MD_SRC0} ${UNRES_MD_SRC3} ${CMAKE_CURRENT_BINARY_DIR}/cinfo.f )
#=========================================
# test_single_ala.sh
#=========================================
-FILE(WRITE ${CMAKE_CURRENT_BINARY_DIR}/test_single_ala.sh
+FILE(WRITE ${CMAKE_CURRENT_BINARY_DIR}/scripts/test_single_ala.sh
"#!/bin/sh
export POT=GB
export PREFIX=ala10
export SIDEPAR=$DD/sc_GB_opt.1gab_3S_qclass5no310-shan2-sc-16-10-8k
export FOURIER=$DD/fourier_opt.parm.1igd_hc_iter3_3
export SCPPAR=$DD/scp.parm
-export SCCORPAR=$DD/rotcorr_AM1.parm
+export SCCORPAR=$DD/sccor_pdb_shelly.dat
export PATTERN=$DD/patterns.cart
#-----------------------------------------------------------------------------
$UNRES_BIN
")
+#
+# File permissions workaround
+#
+FILE( COPY ${CMAKE_CURRENT_BINARY_DIR}/scripts/test_single_ala.sh
+ DESTINATION ${CMAKE_CURRENT_BINARY_DIR}
+ FILE_PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE
+)
+
+
+
#=========================================
# ala10.inp
#=========================================
file(WRITE ${CMAKE_CURRENT_BINARY_DIR}/ala10.inp
"ala10 unblocked
-SEED=-1111333 MD ONE_LETTER rescale_mode=2 PDBOUT
+SEED=-1111333 MD ONE_LETTER rescale_mode=2
nstep=15000 ntwe=100 ntwx=1000 dt=0.1 lang=0 tbf t_bath=300 damax=1.0 &
-reset_moment=1000 reset_vel=1000 MDPDB
+reset_moment=1000 reset_vel=1000
WLONG=1.35279 WSCP=1.59304 WELEC=0.71534 WBOND=1.00000 WANG=1.13873 &
WSCLOC=0.16258 WTOR=1.98599 WTORD=1.57069 WCORRH=0.42887 WCORR5=0.00000 &
WCORR6=0.00000 WEL_LOC=0.16036 WTURN3=1.68722 WTURN4=0.66230 WTURN6=0.00000 &
else(NOT UNRES_WITH_MPI)
- add_test(NAME UNRES_MD_MPI_Ala10 COMMAND mpirun -np 1 ${CMAKE_CURRENT_BINARY_DIR}/test_single_ala.sh )
+
+ add_test(NAME UNRES_MD_MPI_Ala10 COMMAND mpiexec -boot ${CMAKE_CURRENT_BINARY_DIR}/test_single_ala.sh )
endif(NOT UNRES_WITH_MPI)