Как установить политику и свойство CMake для внешнего проекта, добавленного с помощью ExternalProject_Add - PullRequest
0 голосов
/ 25 февраля 2020

У меня есть проект cmake, который использует внешний проект с помощью функции CMake ExternalProject_Add. Есть ли способ установить политику и свойства для внешнего проекта?

Я бы хотел, чтобы следующие правила и свойства, заданные в моем проекте, пересылались также во внешний проект, чтобы вместо динамически c использовались многопоточные библиотеки времени выполнения windows.

cmake_policy(SET CMP0091 NEW)
set(CMAKE_MSVC_RUNTIME_LIBRARY "MultiThreaded$<$<CONFIG:Debug>:Debug>")

1 Ответ

1 голос
/ 26 февраля 2020

Вы можете просто добавить эти настройки в переменную CMAKE_ARGS команды ExternalProject_Add, например,

ExternalProject_Add(<you_name_it>
  ...
  CMAKE_ARGS
           -DCMAKE_POLICY_DEFAULT_CMP0091:STRING=NEW 
           -DCMAKE_MSVC_RUNTIME_LIBRARY:STRING=MultiThreaded$<$<CONFIG:Debug>:Debug>
           ...
)
...