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_loadbal.c repl_ex.c runner.c xutils.c
10 include_directories(./gmx_gpu_utils ${OpenMM_INCLUDE_DIR})
11 link_directories(${OpenMM_LIBRARY_DIR})
12 # with this define no evn.var. is needed with OPENMM_PLUGIN_DIR
13 # if the same OpenMM installation is used for running and building
14 add_definitions( -DOPENMM_PLUGIN_DIR="${OpenMM_PLUGIN_DIR}" )
15 file(TO_CMAKE_PATH ${OpenMM_PLUGIN_DIR} _path)
16 add_library(openmm_api_wrapper STATIC openmm_wrapper.cpp)
17 target_link_libraries(openmm_api_wrapper gmx_gpu_utils ${OpenMM_LIBRARIES})
18 set(GMX_OPENMM_LIBRARIES openmm_api_wrapper gmx_gpu_utils ${OpenMM_LIBRARIES})
22 add_library(fahcore ${MDRUN_SOURCES})
24 add_executable(mdrun ${MDRUN_SOURCES})
25 gmx_add_man_page(mdrun)
26 target_link_libraries(mdrun ${GMX_EXTRA_LIBRARIES} libgromacs ${GMX_OPENMM_LIBRARIES}
27 ${GMX_EXE_LINKER_FLAGS})
28 set_target_properties(mdrun PROPERTIES OUTPUT_NAME "mdrun${GMX_BINARY_SUFFIX}"
29 COMPILE_FLAGS "${OpenMP_C_FLAGS}")
30 install(TARGETS mdrun DESTINATION ${BIN_INSTALL_DIR} COMPONENT mdrun)
32 if(GMX_OPENMM AND MSVC)
33 set_target_properties(mdrun PROPERTIES LINK_FLAGS "/NODEFAULTLIB:LIBCMT")
36 # Create the custom install-mdrun target
37 if (BUILD_SHARED_LIBS)
38 # If shared libraries are used, we need to install the libraries in
39 # addition to the mdrun binary.
40 add_custom_target(install-mdrun
41 COMMAND ${CMAKE_COMMAND} -DCOMPONENT=libraries
42 -P ${CMAKE_BINARY_DIR}/cmake_install.cmake
43 COMMAND ${CMAKE_COMMAND} -DCOMPONENT=mdrun
44 -P ${CMAKE_BINARY_DIR}/cmake_install.cmake
45 COMMENT "Installing mdrun")
46 else (BUILD_SHARED_LIBS)
47 add_custom_target(install-mdrun
48 COMMAND ${CMAKE_COMMAND} -DCOMPONENT=mdrun
49 -P ${CMAKE_BINARY_DIR}/cmake_install.cmake
50 COMMENT "Installing mdrun")
51 endif (BUILD_SHARED_LIBS)
52 add_dependencies(install-mdrun mdrun)