Извините за такой популярный вопрос. Но я не могу соответствующим образом применить ответы отсюда к моей среде.CMake. Создать цель покрытия
У меня есть api и тесты. Оба являются подпроектами основного проекта «фиктивный». Я застрял, потому что я использовал CMake-anitpattern:
cmake_minimum_required (VERSION 2.8)
set(CMAKE_SKIP_RPATH FALSE)
add_subdirectory (src)
add_subdirectory (test)
add_custom_target(coverage
COMMAND make
COMMAND sh ${CMAKE_SOURCE_DIR}/do_coverage.sh
)
Это COMMAND make
плохое решение, потому что я планировал построить свой проект на Windows, позже (да, мне нужно поместить команды из ш-скрипта в CMakeLists.txt для этой цели слишком).
Итак, как я могу позволить CMake строить тест проекта в автоматическом режиме для выполнения покрытия вещей (gcov, gcovr), даже если после cmake
я хочу make coverage
Тотчас? Спасибо!
Я надеюсь, что [этот пример] (https://github.com/gergap/helloworld) может помочь вам. – Gluttton
Thanks @Gluttton Кажется, вы использовали CTest в своем проекте, но в моем случае у меня есть тестовые источники с определениями Google Test. Мой вопрос заключается в том, как построить gtest двоичный файл в автоматическом режиме, пока цель покрытия выполняется? Извините, если мне нравится с завязанными глазами человек перед вашим примером. – drewpts