function (gmx_add_unit_test NAME EXENAME) if (GMX_BUILD_UNITTESTS AND BUILD_TESTING) include_directories(${GMOCK_INCLUDE_DIRS}) add_executable(${EXENAME} ${ARGN} ${TESTUTILS_DIR}/unittest_main.cpp) target_link_libraries(${EXENAME} libgromacs ${TESTUTILS_LIBS} ${GMOCK_LIBRARIES} ${GMX_EXE_LINKER_FLAGS}) get_target_property(DEFS ${EXENAME} COMPILE_DEFINITIONS) if (NOT DEFS) set(DEFS) endif () list(APPEND DEFS TEST_DATA_PATH="${CMAKE_CURRENT_SOURCE_DIR}") set_target_properties(${EXENAME} PROPERTIES COMPILE_DEFINITIONS ${DEFS}) add_test(NAME ${NAME} COMMAND ${EXENAME} --gtest_output=xml:${CMAKE_BINARY_DIR}/Testing/Temporary/${EXENAME}.xml) set_tests_properties(${NAME} PROPERTIES LABELS "GTest") add_dependencies(tests ${EXENAME}) endif () endfunction ()