С помощью CMake я использую add_subdirectory(gtest)
для сборки gtest для тестирования моего проекта. Я также использую CPack для установки установщика.add_subdirectory() без установки чего-либо
Проблема в том, что gtest repo (который является подмодулем git) запускает install()
в некоторых файлах, чтобы они попали в мой установщик! Очевидно, я этого не хочу. Есть ли способ отключить команды install()
для данного подкаталога, не удаляя их только из CMakeLists?
Никогда не использовав GTEST, так что это может быть глупый вопрос, но ... почему вы строите инструмент не связан с вашим проект * в * ваш проект? Почему бы вам не построить/установить gtest отдельно и не поделать с ним? (Я бы не создал Boost.Test внутри моего проекта.) – DevSolar
Это упрощает создание проекта и соединение с cmake. Если вы построите его в своем дереве с помощью 'add_directory', вы можете просто сделать« target_link_libraries (mytest gtest) »без необходимости искать его. Это не супер элегантный, но помимо этой проблемы он работает очень хорошо. – Timmmm
Но дело в том, что вы используете 'add_subdirectory()' для чего-то 'find_package()' предназначен для, обнаружил проблему и теперь хотите, чтобы 'add_subdirectory()' to * not * делал что-то, что * * предназначено для. .. Я хотел намекнуть, что «faffing around» с 'find_package()' (что не так сложно сделать) и отбрасывание 'add_subdirectory()' * * * решит вашу проблему. ;-) – DevSolar