cmake compilation for cluster and wham repaired
authorCezary Czaplewski <czarek@chem.univ.gda.pl>
Thu, 7 May 2015 08:53:22 +0000 (10:53 +0200)
committerCezary Czaplewski <czarek@chem.univ.gda.pl>
Thu, 7 May 2015 08:53:22 +0000 (10:53 +0200)
source/cluster/wham/src-M/CMakeLists.txt
source/cluster/wham/src/CMakeLists.txt
source/unres/src_MD-M/energy_p_new_barrier.F
source/wham/src/CMakeLists.txt
source/wham/src/initialize_p.F

index 2ce99e2..d5fecf6 100644 (file)
@@ -141,6 +141,42 @@ set_property(SOURCE proc_proc.c PROPERTY COMPILE_DEFINITIONS "LINUX -DPGI" )
 set(UNRES_CLUSTER_WHAM_M_BIN "cluster_wham-M_${Fortran_COMPILER_NAME}.exe")
 
 #=========================================
+# cinfo.f workaround for CMake
+#=========================================
+# 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 full unres CLUSTER sources
 #=========================================
 set(UNRES_CLUSTER_WHAM_M_SRCS ${UNRES_CLUSTER_WHAM_M_SRC0} proc_proc.c)
index 760269e..7bdb679 100644 (file)
@@ -21,7 +21,7 @@ set(UNRES_CLUSTER_WHAM_SRC0
        icant.f
        initialize_p.F
        intcor.f
-       int_from_cart1.f
+       int_from_cart1.F
        main_clust.F
        matmult.f
        misc.f
@@ -30,7 +30,7 @@ set(UNRES_CLUSTER_WHAM_SRC0
        pinorm.f
        probabl.F
        read_coords.F
-       readpdb.f
+       readpdb.F
        readrtns.F
        rescode.f
        setup_var.f
@@ -40,6 +40,7 @@ set(UNRES_CLUSTER_WHAM_SRC0
        track.F
        wrtclust.f
        work_partition.F
+       dfa.F
 )
 
 set(UNRES_CLUSTER_WHAM_PP_SRC
@@ -65,11 +66,13 @@ 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 "-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} )
@@ -136,20 +139,37 @@ 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)
-
-#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} )
+# 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" )  
 
@@ -158,7 +178,7 @@ set_property(SOURCE proc_proc.c PROPERTY COMPILE_DEFINITIONS "LINUX -DPGI" )
 #=========================================
 # Set full unres CLUSTER sources
 #=========================================
-set(UNRES_CLUSTER_WHAM_SRCS ${UNRES_CLUSTER_WHAM_SRC0} proc_proc.c)
+set(UNRES_CLUSTER_WHAM_SRCS ${UNRES_CLUSTER_WHAM_SRC0} ${CMAKE_CURRENT_BINARY_DIR}/cinfo.f proc_proc.c)
 
 
 
index 539102b..ec85660 100644 (file)
@@ -663,7 +663,7 @@ c      enddo
           gradc(j,i,icg)=gradbufc(j,i)+welec*gelc(j,i)+
      &                wel_loc*gel_loc(j,i)+
      &                0.5d0*(wscp*gvdwc_scpp(j,i)+
-     &                welec*gelc_long(j,i)
+     &                welec*gelc_long(j,i) +
      &                wel_loc*gel_loc_long(j,i)+
      &                wcorr*gcorr_long(j,i)+
      &                wcorr5*gradcorr5_long(j,i)+
index 4035b15..540872a 100644 (file)
@@ -21,7 +21,7 @@ set(UNRES_WHAM_SRC0
        arcos.f
        cartder.f
        cartprint.f
-       chainbuild.f
+       chainbuild.F
        geomout.F
        gnmr1.f
        icant.f
@@ -42,7 +42,7 @@ set(UNRES_WHAM_SRC0
        timing.F
        wham_calc1.F
         readrtns_compar.F
-       readpdb.f
+       readpdb.F
        fitsq.f 
        contact.f
        elecont.f
@@ -60,6 +60,7 @@ set(UNRES_WHAM_SRC0
        proc_cont.f
        define_pairs.f
        mysort.f
+       dfa.F
 )
 
 set(UNRES_WHAM_PP_SRC
@@ -97,6 +98,8 @@ if (Fortran_COMPILER_NAME STREQUAL "ifort")
   set(FFLAGS0 "-mcmodel=medium -g -CB -I. -I${CMAKE_CURRENT_SOURCE_DIR}/include_unres" ) 
 elseif (Fortran_COMPILER_NAME STREQUAL "gfortran")
   set(FFLAGS0 "-std=legacy -g -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")
 
 
@@ -104,7 +107,7 @@ 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_WHAM_SRC0} PROPERTY COMPILE_FLAGS ${FFLAGS0} )
index 6562302..3184e1f 100644 (file)
@@ -233,12 +233,12 @@ c-------------------------------------------------------------------------
      &   "ECORR6 ","EELLO ","ETURN3 ","ETURN4 ","ETURN6 ",
      &   "EBE bend","ESC SCloc","ETORS ","ETORSD ","EHPB ","EVDWPP ",
      &   "ESTR ","EVDW2_14 ","ESCCOR ", " ","EDIHCNSTR","EHOMOLOGY",
-     &   "DFA DIS","DFA TOR","DFA NEI","DFA BET"/
+     &   "DFA DIS","DFA TOR","DFA NEI","DFA BET"," "/
       data wname /
      &   "WSC","WSCP","WELEC","WCORR","WCORR5","WCORR6","WEL_LOC",
      &   "WTURN3","WTURN4","WTURN6","WANG","WSCLOC","WTOR","WTORD",
      &   "WSTRAIN","WVDWPP","WBOND","SCAL14","WSCCOR"," ","WDIHCNSTR",
-     &   "WHOMOLOGY","WDFAD","WDFAT","WDFAN","WDFAB"/
+     &   "WHOMOLOGY","WDFAD","WDFAT","WDFAN","WDFAB"," "/
       data nprint_ene /24/
       data print_order/1,2,3,11,12,13,14,4,5,6,7,8,9,10,19,18,15,17,16,
      & 21,23,24,25,26,0,0,0/