В моем проекте CMake у меня есть несколько целей, которые просто запускают определенный набор модульных тестов (например, runTestsForA
, runTestsForB
и runTestsForC
). У меня также есть цель, tests
, которая зависит от всех этих целевых объектов объекта, поэтому я могу запустить их с помощью одной команды.Принудительное последовательное исполнение для конкретных целей в CMake
Я использую CLion - это моя IDE, которая пытается использовать параллельные make-сборки по умолчанию (которые я хочу, а также выполняю на сервере непрерывной интеграции). Тем не менее, похоже, что тесты также выполняются параллельно, и некоторые тесты для этого не выполняются (они используют локальный loopback для создания некоторой магии с сокетами), что иногда приводит к сбою.
Вот почему я хотел бы принудительно выполнить серийное исполнение для некоторых/всех зависимостей моей цели tests
. К сожалению, документация CMake не помогла мне, когда я искал информацию о том, как это сделать. Что подводит меня к моим вопросам: это вообще возможно и как это можно сделать, если это так?
В случае, если Вы не использовали dd_test, чтобы определить ваш тестовый пакет, и если вы используете что-то вроде add_custom_target (runTestsForA) ... Используйте add_dependencies (runTestsForA runTestsForB) –
@MuraliPaluru Это было бы трудно сделать, так это не знаю, какие тестовые цели были определены. –
@ jet47 Это, вероятно, подходит для моего использования, но что, если это не тесты, а некоторые другие инструменты. Каким будет правильный подход? –