printmat added to cmake
[unres.git] / source / cluster / wham / src / CMakeLists.txt
index ec0b67e..63fa1fe 100644 (file)
@@ -16,11 +16,12 @@ set(UNRES_CLUSTER_WHAM_SRC0
        energy_p_new.F
        fitsq.f
        geomout.F
+       gnmr1.f
        hc.f
        icant.f
        initialize_p.F
        intcor.f
-       int_from_cart1.f
+       int_from_cart1.F
        main_clust.F
        matmult.f
        misc.f
@@ -29,15 +30,18 @@ set(UNRES_CLUSTER_WHAM_SRC0
        pinorm.f
        probabl.F
        read_coords.F
-       readpdb.f
+       readpdb.F
        readrtns.F
        rescode.f
        setup_var.f
        srtclust.f
+       ssMD.F
        timing.F
        track.F
        wrtclust.f
        work_partition.F
+       dfa.F
+       printmat.f
 )
 
 set(UNRES_CLUSTER_WHAM_PP_SRC
@@ -49,10 +53,10 @@ set(UNRES_CLUSTER_WHAM_PP_SRC
        probabl.F
        read_coords.F
        readrtns.F
+       ssMD.F
        timing.F
        track.F
        work_partition.F
-       proc_proc.c
 ) 
 
 
@@ -62,18 +66,41 @@ set(UNRES_CLUSTER_WHAM_PP_SRC
 if (Fortran_COMPILER_NAME STREQUAL "ifort")
   set(FFLAGS0 "-ip -w -I. -I${CMAKE_CURRENT_SOURCE_DIR}/include_unres " ) 
 elseif (Fortran_COMPILER_NAME STREQUAL "gfortran")
-  set(FFLAGS0 "-I. -I${CMAKE_CURRENT_SOURCE_DIR}/inlude_unres " ) 
+  set(FFLAGS0 "-std=legacy -I. -I${CMAKE_CURRENT_SOURCE_DIR}/include_unres " ) 
+else ()
+  set(FFLAGS0 "-g -I. -I${CMAKE_CURRENT_SOURCE_DIR}/include_unres" )
 endif (Fortran_COMPILER_NAME STREQUAL "ifort")
 
 # Add MPI compiler flags
 if(UNRES_WITH_MPI)
-  set(FFLAGS0 "${FFLAGS0} -I${MPIF_INCLUDE_DIRECTORIES}")
+  set(FFLAGS0 "${FFLAGS0} -I${MPI_Fortran_INCLUDE_PATH}")
 endif(UNRES_WITH_MPI)
 
 set_property(SOURCE ${UNRES_CLUSTER_WHAM_SRC0} PROPERTY COMPILE_FLAGS ${FFLAGS0} )
 
-set(CPPFLAGS "PROCOR -DSPLITELE -DPROCOR -DCRYST_BOND -DCRYST_THETA -DCRYST_SC" )
+#=========================================
+#  Settings for GAB force field
+#=========================================
+if(UNRES_MD_FF STREQUAL "GAB" )
+   # set preprocesor flags   
+   set(CPPFLAGS "PROCOR  -DSPLITELE -DCRYST_BOND  -DCRYST_THETA -DCRYST_SC  -DSCCORPDB" )
+
+#=========================================
+#  Settings for E0LL2Y force field
+#=========================================
+elseif(UNRES_MD_FF STREQUAL "E0LL2Y")
+   # set preprocesor flags   
+   set(CPPFLAGS "PROCOR  -DSPLITELE -DSCCORPDB" )
+endif(UNRES_MD_FF STREQUAL "GAB")
 
+#=========================================
+# Additional flags
+#=========================================
+set(CPPFLAGS "${CPPFLAGS} -DUNRES -DISNAN -DCLUST" )
+
+#=========================================
+# Compiler specific flags
+#=========================================
 if (Fortran_COMPILER_NAME STREQUAL "ifort")
   # Add ifort preprocessor flags
   set(CPPFLAGS "${CPPFLAGS} -DPGI") 
@@ -113,25 +140,48 @@ set_property(SOURCE ${UNRES_CLUSTER_WHAM_PP_SRC} PROPERTY COMPILE_DEFINITIONS ${
 set(UNRES_CLUSTER_WHAM_BIN "unres_clustMD.exe")
 
 #=========================================
-# 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-wham-m compinfo.c)
-#set_target_properties(compinfo-wham-m PROPERTIES OUTPUT_NAME compinfo)
+# 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 ")
+
+# set include path
+set_property(SOURCE ${CMAKE_CURRENT_BINARY_DIR}/cinfo.f PROPERTY COMPILE_FLAGS "${FFLAGS0} -I${CMAKE_CURRENT_SOURCE_DIR}" )
+
+
+set_property(SOURCE proc_proc.c PROPERTY COMPILE_DEFINITIONS "LINUX -DPGI" )  
+
 
-#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-wham-m )
-#set_property(SOURCE ${UNRES_CINFO_DIR}/cinfo.f PROPERTY COMPILE_FLAGS ${FFLAGS0} )
 
 #=========================================
 # Set full unres CLUSTER sources
 #=========================================
-set(UNRES_CLUSTER_WHAM_SRCS ${UNRES_CLUSTER_WHAM_SRC0} ${CMAKE_CURRENT_SOURCE_DIR}/proc_proc.c)
+set(UNRES_CLUSTER_WHAM_SRCS ${UNRES_CLUSTER_WHAM_SRC0} ${CMAKE_CURRENT_BINARY_DIR}/cinfo.f proc_proc.c)
+
+
 
 #=========================================
 # Build the binary