add_subdirectory(compat)
add_subdirectory(mimic)
add_subdirectory(modularsimulator)
+# Note that this subset should match the subset of module
+# BUILD_INTERFACEs added to libgromacs below.
if (NOT GMX_BUILD_MDRUN_ONLY)
add_subdirectory(gmxana)
add_subdirectory(gmxpreprocess)
# responsibility for setting this up will move to the respective
# modules.
target_link_libraries(libgromacs PRIVATE
- $<BUILD_INTERFACE:analysisdata>
$<BUILD_INTERFACE:applied_forces>
$<BUILD_INTERFACE:commandline>
$<BUILD_INTERFACE:compat>
- $<BUILD_INTERFACE:coordinateio>
- $<BUILD_INTERFACE:correlationfunctions>
$<BUILD_INTERFACE:domdec>
# $<BUILD_INTERFACE:energyanalysis>
$<BUILD_INTERFACE:essentialdynamics>
$<BUILD_INTERFACE:ewald>
$<BUILD_INTERFACE:fft>
$<BUILD_INTERFACE:fileio>
- $<BUILD_INTERFACE:gmxana>
$<BUILD_INTERFACE:gmxlib>
- $<BUILD_INTERFACE:gmxpreprocess>
$<BUILD_INTERFACE:gpu_utils>
$<BUILD_INTERFACE:hardware>
$<BUILD_INTERFACE:imd>
$<BUILD_INTERFACE:restraint>
$<BUILD_INTERFACE:selection>
$<BUILD_INTERFACE:simd>
- $<BUILD_INTERFACE:statistics>
$<BUILD_INTERFACE:swap>
$<BUILD_INTERFACE:tables>
$<BUILD_INTERFACE:taskassignment>
$<BUILD_INTERFACE:timing>
- $<BUILD_INTERFACE:tools>
$<BUILD_INTERFACE:topology>
$<BUILD_INTERFACE:trajectory>
- $<BUILD_INTERFACE:trajectoryanalysis>
$<BUILD_INTERFACE:utility>
)
+# Note that this subset should match the subset of module
+# subdirectories added above.
+if (NOT GMX_BUILD_MDRUN_ONLY)
+ target_link_libraries(libgromacs PRIVATE
+ $<BUILD_INTERFACE:analysisdata>
+ $<BUILD_INTERFACE:coordinateio>
+ $<BUILD_INTERFACE:correlationfunctions>
+ $<BUILD_INTERFACE:gmxana>
+ $<BUILD_INTERFACE:gmxpreprocess>
+ $<BUILD_INTERFACE:statistics>
+ $<BUILD_INTERFACE:tools>
+ $<BUILD_INTERFACE:trajectoryanalysis>
+ )
+endif()
if (GMX_OPENMP)
target_link_libraries(libgromacs PUBLIC OpenMP::OpenMP_CXX)
endif()
add_library(fahcore $<TARGET_OBJECTS:mdrun_objlib>)
target_link_libraries(fahcore PRIVATE ${GMX_COMMON_LIBRARIES} legacy_api)
elseif(GMX_BUILD_MDRUN_ONLY)
- add_executable(mdrun $<TARGET_OBJECTS:mdrun_objlib> mdrun_main.cpp)
- gmx_target_compile_options(mdrun)
- target_include_directories(mdrun SYSTEM BEFORE PRIVATE ${PROJECT_SOURCE_DIR}/src/external/thread_mpi/include)
- target_compile_definitions(mdrun PRIVATE HAVE_CONFIG_H)
- target_link_libraries(mdrun libgromacs
- ${GMX_COMMON_LIBRARIES}
- ${GMX_EXE_LINKER_FLAGS})
+ add_executable(mdrun-only $<TARGET_OBJECTS:mdrun_objlib> mdrun_main.cpp)
+ gmx_target_compile_options(mdrun-only)
+ target_include_directories(mdrun-only SYSTEM BEFORE PRIVATE ${PROJECT_SOURCE_DIR}/src/external/thread_mpi/include)
+ target_compile_definitions(mdrun-only PRIVATE HAVE_CONFIG_H)
+ target_link_libraries(mdrun-only PRIVATE
+ common
+ legacy_modules
+ libgromacs
+ ${GMX_COMMON_LIBRARIES}
+ ${GMX_EXE_LINKER_FLAGS}
+ )
set(BINARY_NAME "mdrun${GMX_BINARY_SUFFIX}")
- set_target_properties(mdrun PROPERTIES
+ set_target_properties(mdrun-only PROPERTIES
OUTPUT_NAME "${BINARY_NAME}")
- install(TARGETS mdrun DESTINATION ${CMAKE_INSTALL_BINDIR} COMPONENT mdrun)
+ install(TARGETS mdrun-only DESTINATION ${CMAKE_INSTALL_BINDIR} COMPONENT mdrun-only)
file(WRITE ${CMAKE_CURRENT_BINARY_DIR}/gmx-completion-${BINARY_NAME}.bash
"complete -o nospace -F _gmx_mdrun_compl ${BINARY_NAME}")
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/gmx-completion-${BINARY_NAME}.bash