1 include_directories(${CMAKE_SOURCE_DIR}/src/gromacs/gmxpreprocess)
4 do_gct.c gctio.c genalg.c ionize.c
5 md.c md_openmm.c mdrun.c membed.c
6 pme_switch.c repl_ex.c runner.c xutils.c)
9 include_directories(./gmx_gpu_utils ${OpenMM_INCLUDE_DIR})
10 link_directories(${OpenMM_LIBRARY_DIR})
11 # with this define no evn.var. is needed with OPENMM_PLUGIN_DIR
12 # if the same OpenMM installation is used for running and building
13 add_definitions( -DOPENMM_PLUGIN_DIR="${OpenMM_PLUGIN_DIR}" )
14 file(TO_CMAKE_PATH ${OpenMM_PLUGIN_DIR} _path)
15 add_library(openmm_api_wrapper STATIC openmm_wrapper.cpp)
16 target_link_libraries(openmm_api_wrapper gmx_gpu_utils ${OpenMM_LIBRARIES})
17 set(GMX_OPENMM_LIBRARIES openmm_api_wrapper gmx_gpu_utils ${OpenMM_LIBRARIES})
21 add_library(fahcore ${MDRUN_SOURCES})
23 add_executable(mdrun ${MDRUN_SOURCES})
24 gmx_add_man_page(mdrun)
25 target_link_libraries(mdrun ${GMX_EXTRA_LIBRARIES} libgromacs ${GMX_OPENMM_LIBRARIES}
26 ${OpenMP_LINKER_FLAGS})
27 set_target_properties(mdrun PROPERTIES OUTPUT_NAME "mdrun${GMX_BINARY_SUFFIX}"
28 COMPILE_FLAGS "${OpenMP_C_FLAGS}")
29 install(TARGETS mdrun DESTINATION ${BIN_INSTALL_DIR} COMPONENT mdrun)
31 if(GMX_OPENMM AND MSVC)
32 set_target_properties(mdrun PROPERTIES LINK_FLAGS "/NODEFAULTLIB:LIBCMT")
35 # Create the custom install-mdrun target
36 if (BUILD_SHARED_LIBS)
37 # If shared libraries are used, we need to install the libraries in
38 # addition to the mdrun binary.
39 add_custom_target(install-mdrun
40 COMMAND ${CMAKE_COMMAND} -DCOMPONENT=libraries
41 -P ${CMAKE_BINARY_DIR}/cmake_install.cmake
42 COMMAND ${CMAKE_COMMAND} -DCOMPONENT=mdrun
43 -P ${CMAKE_BINARY_DIR}/cmake_install.cmake
44 COMMENT "Installing mdrun")
45 else (BUILD_SHARED_LIBS)
46 add_custom_target(install-mdrun
47 COMMAND ${CMAKE_COMMAND} -DCOMPONENT=mdrun
48 -P ${CMAKE_BINARY_DIR}/cmake_install.cmake
49 COMMENT "Installing mdrun")
50 endif (BUILD_SHARED_LIBS)
51 add_dependencies(install-mdrun mdrun)