cmake - 如何使用命令行(CMake)跳过一些目标
问题描述
我依赖于 Xerces-c++ 并且对于instal
目标它总是构建示例可执行文件和文档。这会消耗大约 50% 的构建时间(在我的构建 VM 上需要 6 分钟)。
我当前的构建命令是cmake --build ${proj}\build_${platform} --config RelWithDebInfo --target install --parallel
.
如何跳过非必要目标?
它是第三方依赖,所以我不想修改CMakeLists.txt
.
解决方案
根据消息来源,没有选项可以控制样本的构建
add_subdirectory(samples)
参考:https ://github.com/apache/xerces-c/blob/master/CMakeLists.txt#L172
但是你可以修补它!
option(BUILD_SAMPLES "Build samples" ON)
message(STATUS "Build samples: ${BUILD_SAMPLES}")
...
if(BUILD_SAMPLES)
add_subdirectory(samples)
endif()
注意:如果你有超级版本,你也可以启用 CMP0077...
推荐阅读
- coldfusion - CFWheels 错误:元素 RETURNVALUE 在 LOC 中未定义
- javascript - 从标题下的降价列表中获取每个项目
- java - 安装了 JDK 8 的“警告:发生了非法反射访问操作”
- html - 发生错误后如何通过代码将已经打开的网页重新设置为焦点
- python - 为什么 Django 抱怨一个新的模型列是未知的而不是迁移它?
- sml - 如何与 SML 和 CM 共享数据类型声明
- mongodb - 蒙哥数据库。通过嵌套键查找文档并在文档中切片另一个键。我使用 GraphQl Apollo 服务器来处理与 db 的通信
- python - 无法正确找到列表中的子列表数量
- javascript - 具有复杂名称的全局变量与用于搜索的输入字段之间的真正区别是什么?
- python - 如何在 discord.py 的某个频道中嵌入用户加入?