summaryrefslogtreecommitdiff
path: root/cmake/ctest.cmake
diff options
context:
space:
mode:
Diffstat (limited to 'cmake/ctest.cmake')
-rw-r--r--cmake/ctest.cmake24
1 files changed, 24 insertions, 0 deletions
diff --git a/cmake/ctest.cmake b/cmake/ctest.cmake
new file mode 100644
index 00000000000..08852a366f6
--- /dev/null
+++ b/cmake/ctest.cmake
@@ -0,0 +1,24 @@
+
+INCLUDE(${MYSQL_CMAKE_SCRIPT_DIR}/cmake_parse_arguments.cmake)
+
+MACRO(MY_ADD_TEST name)
+ ADD_TEST(${name} ${name}-t)
+ENDMACRO()
+
+MACRO (MY_ADD_TESTS)
+ MYSQL_PARSE_ARGUMENTS(ARG "LINK_LIBRARIES;EXT" "" ${ARGN})
+
+ INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/include
+ ${CMAKE_SOURCE_DIR}/unittest/mytap)
+
+ IF (NOT ARG_EXT)
+ SET(ARG_EXT "c")
+ ENDIF()
+
+ FOREACH(name ${ARG_DEFAULT_ARGS})
+ ADD_EXECUTABLE(${name}-t "${name}-t.${ARG_EXT}")
+ TARGET_LINK_LIBRARIES(${name}-t mytap ${ARG_LINK_LIBRARIES})
+ MY_ADD_TEST(${name})
+ ENDFOREACH()
+ENDMACRO()
+