cmake - 如何在使用 ExternalProject_Add 添加的外部项目上设置 CMake 策略和属性
问题描述
我有一个使用 CMake 的 ExternalProject_Add 功能使用外部项目的 cmake 项目。有没有办法在外部项目上设置策略和属性?
我希望将在我的项目中设置的以下策略和属性也转发到外部项目,以便使用静态多线程 Windows 运行时库而不是动态库。
cmake_policy(SET CMP0091 NEW)
set(CMAKE_MSVC_RUNTIME_LIBRARY "MultiThreaded$<$<CONFIG:Debug>:Debug>")
解决方案
您可以简单地将这些设置添加到命令的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>
...
)
推荐阅读
- autodesk-forge - 启用伪造查看器测量的条件是什么?
- android - Navigation Drawer Activity 不会在 android studio 4.1.1 中生成
- python - Django 管理脚本未安装到 PATH
- python - 如何按标签解析快速修复传入消息?
- mysql - 我在安装过程中没有设置 Mysql 的 Root 密码的选项
- visual-studio-code - 为什么 VS Code 上下文菜单显示单个项目
- mysql - MySQL获取不同时区的午夜数据
- javascript - jQuery:嵌套字母变换函数
- git - 如何重新编写 Git 存储库中的所有提交?
- powershell - 无法使用批处理文件运行 PowerShell 脚本