Merge branch 'prerelease-3.2.1' into czarek
[unres.git] / source / unres / src_MD / CMakeLists.txt
index a0353f4..ea7776c 100644 (file)
@@ -59,6 +59,7 @@ set(UNRES_MD_SRC0
        parmread.F 
        pinorm.f 
        printmat.f 
+       prng_32.F
        q_measure.F 
        randgens.f 
        rattle.F 
@@ -81,19 +82,6 @@ set(UNRES_MD_SRC0
        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(UNRES_MD_SRC3 
        energy_p_new_barrier.F 
        energy_p_new-sep_barrier.F 
@@ -124,6 +112,7 @@ set(UNRES_MD_PP_SRC
        MP.F 
        MREMD.F 
        parmread.F 
+       prng_32.F
        q_measure1.F 
        q_measure3.F 
        q_measure.F
@@ -141,11 +130,6 @@ set(UNRES_MD_PP_SRC
        proc_proc.c 
 ) 
 
-
-if(NOT Fortran_COMPILER_NAME STREQUAL "ifort")
-  set(UNRES_MD_PP_SRC ${UNRES_MD_PP_SRC} prng_32.F) 
-endif(NOT Fortran_COMPILER_NAME STREQUAL "ifort")
-
 #================================================
 # Set comipiler flags for different sourcefiles  
 #================================================
@@ -166,10 +150,10 @@ endif (Fortran_COMPILER_NAME STREQUAL "ifort")
 
 # Add MPI compiler flags
 if(UNRES_WITH_MPI)
-  set(FFLAGS0 "${FFLAGS0} -I${MPIF_INCLUDE_DIRECTORIES}")
-  set(FFLAGS1 "${FFLAGS1} -I${MPIF_INCLUDE_DIRECTORIES}")
-  set(FFLAGS2 "${FFLAGS2} -I${MPIF_INCLUDE_DIRECTORIES}")
-  set(FFLAGS3 "${FFLAGS3} -I${MPIF_INCLUDE_DIRECTORIES}")
+  set(FFLAGS0 "${FFLAGS0} -I${MPI_Fortran_INCLUDE_PATH}")
+  set(FFLAGS1 "${FFLAGS1} -I${MPI_Fortran_INCLUDE_PATH}")
+  set(FFLAGS2 "${FFLAGS2} -I${MPI_Fortran_INCLUDE_PATH}")
+  set(FFLAGS3 "${FFLAGS3} -I${MPI_Fortran_INCLUDE_PATH}")
 endif(UNRES_WITH_MPI)
 
 set_property(SOURCE ${UNRES_MD_SRC0} APPEND PROPERTY COMPILE_FLAGS ${FFLAGS0} )
@@ -222,6 +206,13 @@ if (UNRES_WITH_MPI)
 endif(UNRES_WITH_MPI)
 
 #=========================================
+# Add 64-bit specific preprocessor flags
+#=========================================
+if (architektura STREQUAL "64")
+  set(CPPFLAGS "${CPPFLAGS} -DAMD64")
+endif (architektura STREQUAL "64")
+
+#=========================================
 # Apply preprocesor flags to *.F files
 #=========================================
 set_property(SOURCE ${UNRES_MD_PP_SRC} PROPERTY COMPILE_DEFINITIONS ${CPPFLAGS} )  
@@ -232,10 +223,10 @@ set_property(SOURCE ${UNRES_MD_PP_SRC} PROPERTY COMPILE_DEFINITIONS ${CPPFLAGS}
 #========================================
 if(UNRES_WITH_MPI) 
   # binary with mpi
-  set(UNRES_BIN "unres_${Fortran_COMPILER_NAME}_MPICH_${UNRES_MD_FF}.exe")
+  set(UNRES_BIN "unresMD_${Fortran_COMPILER_NAME}_MPICH_${UNRES_MD_FF}.exe")
 else(UNRES_WITH_MPI)
   # binary without mpi
-  set(UNRES_BIN "unres_${Fortran_COMPILER_NAME}_single_${UNRES_MD_FF}.exe")
+  set(UNRES_BIN "unresMD_${Fortran_COMPILER_NAME}_single_${UNRES_MD_FF}.exe")
 endif(UNRES_WITH_MPI)  
 
 #=========================================
@@ -281,7 +272,7 @@ set(UNRES_MD_SRCS ${UNRES_MD_SRC0} ${UNRES_MD_SRC3} ${CMAKE_CURRENT_BINARY_DIR}/
 #=========================================
 add_executable(UNRES_BIN-MD ${UNRES_MD_SRCS} )
 set_target_properties(UNRES_BIN-MD PROPERTIES OUTPUT_NAME ${UNRES_BIN})
-#set_property(TARGET ${UNRES_BIN} PROPERTY RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/bin/unres/MD )
+set_property(TARGET UNRES_BIN-MD PROPERTY RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/bin )
 #add_dependencies (${UNRES_BIN} ${UNRES_XDRFLIB})
 
 
@@ -290,13 +281,18 @@ set_target_properties(UNRES_BIN-MD PROPERTIES OUTPUT_NAME ${UNRES_BIN})
 #=========================================
 # link MPI library (libmpich.a)  
 if(UNRES_WITH_MPI)
-  target_link_libraries( UNRES_BIN-MD ${MPIF_LIBRARIES} )
+  target_link_libraries( UNRES_BIN-MD ${MPI_Fortran_LIBRARIES} )
 endif(UNRES_WITH_MPI)
 # link libxdrf.a 
 #message("UNRES_XDRFLIB=${UNRES_XDRFLIB}")
 target_link_libraries( UNRES_BIN-MD xdrf )
 
 #=========================================
+# Install Path
+#=========================================
+install(TARGETS UNRES_BIN-MD DESTINATION ${CMAKE_INSTALL_PREFIX}) 
+
+#=========================================
 # TESTS 
 #=========================================
 
@@ -326,7 +322,7 @@ FILE(WRITE ${CMAKE_CURRENT_BINARY_DIR}/scripts/test_single_ala.sh
 export POT=GB
 export PREFIX=ala10
 #-----------------------------------------------------------------------------
-UNRES_BIN=./${UNRES_BIN}
+UNRES_BIN=${CMAKE_BINARY_DIR}/bin/${UNRES_BIN}
 #-----------------------------------------------------------------------------
 DD=${CMAKE_SOURCE_DIR}/PARAM
 export BONDPAR=$DD/bond.parm