LINUX.ORG.RU

История изменений

Исправление dvetutnev, (текущая версия) :

Конечно.

Добавляешь пустой таргет tests (название по своему усмотрению). На таргеты тестов навешиваешь свойство EXCLUDE_FROM_ALL. Таргет tests делаешь зависимым от всех таргетов тестов (add_dependencies).

В этом случаи бинарники тестов по умолчанию не собираются. Для их сборки явно указываешь нужную цель: cmake –build . –target tests (или собрать все: –target all).

Для запуска тестов у CMake есть утилитка ctect. Тесты для этого регистрируются командой add_test.

И да, в релизной сборке тесты все же нужно собирать/запускать.

Исходная версия dvetutnev, :

Конечно.

Добавляешь пустой таргет tests (название по своему усмотрению). На таргеты тестов навешиваешь свойство EXCLUDE_FROM_ALL. Таргет tests делаешь зависимым от всех таргетов тестов (add_dependencies).

В этом случаи бинарники тестов по умолчанию не собираются. Для их сборки явно указываешь нужную цель: cmake –build . –target tests (или собрать все: –target all).

Для запуска тестов у CMake есть утилитка ctect. Тесты для этого регистрируются командой add_test.