# Добавляем тестadd_test(NAME testqstring COMMAND QtTest)# Добавляем цель для вызова созданного теста с зависимостью от бинарного файла выполняющего тестирование# Вместо QtTest может быть несколько целей для создания программ-тестовadd_custom_target(check DEPENDS QtTest)# Задаем параметры для тестирования# ctest --help# -V verbose mode# -VV extra-verbose# --output-on-failure verbose on test failset(CTEST_ARGUMENTS --output-on-failure)# Добавляем команду, которая будет выполнятся после создания make-цели тестированияadd_custom_command(TARGET check POST_BUILD COMMAND ${CMAKE_CTEST_COMMAND} ${CTEST_ARGUMENTS} QtTest)
make check
set( CTEST_ARGUMENTS --output-on-failure )add_custom_target( check )add_custom_command( TARGET check POST_BUILD COMMAND ${CMAKE_CTEST_COMMAND} ${CTEST_ARGUMENTS} )
# Для библиотекset(CMAKE_DEBUG_POSTFIX _debug)# Для программ# add_executable(${PROJECT_NAME} WIN32set_target_properties(${PROJECT_NAME} PROPERTIES DEBUG_POSTFIX "_debug")
find_package( Qt4 REQUIRED)include_directories(${QT_MKSPECS_DIR}/default)
# Ищем пакет Subversionfind_package(Subversion) if(Subversion_SVN_EXECUTABLE AND EXISTS "${CMAKE_SOURCE_DIR}/.svn") # Получаем информацию о проекте. Все переменные будут иметь префикс переданный вторым параметром Subversion_WC_INFO(${CMAKE_SOURCE_DIR} SciDB) message(STATUS "Reading revision from svn: ${SciDB_WC_REVISION}") set(SCIDB_VERSION "${SCIDB_VERSION}.${SciDB_WC_REVISION}") # Записываем данную ревизию в файл file(WRITE "${CMAKE_BINARY_DIR}/version.txt" ${SciDB_WC_REVISION})else(Subversion_SVN_EXECUTABLE AND EXISTS "${CMAKE_SOURCE_DIR}/.svn")# Если ниче не получилось, то читаем ревизию из файла version.txt file(READ "${CMAKE_SOURCE_DIR}/version.txt" SciDB_WC_REVISION) message(STATUS "Reading revision from file: ${SciDB_WC_REVISION}") set(SCIDB_VERSION "${SCIDB_VERSION}.${SciDB_WC_REVISION}")endif(Subversion_SVN_EXECUTABLE AND EXISTS "${CMAKE_SOURCE_DIR}/.svn")