如何使用命令行CMake跳过某些目标

问题描述

我依赖Xerces-c ++,对于instal目标,它总是生成示例可执行文件和文档。这会消耗大约50%的构建时间(在我的构建VM上为6分钟)。

我当前的构建命令是cmake --build ${proj}\build_${platform} --config RelWithDebInfo --target install --parallel

如何跳过非必要目标?

这是第三方依赖性,所以我不想修改CMakeLists.txt

解决方法

根据消息来源,没有选择来控制样本的构建

add_subdirectory(samples)

ref: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 ...

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...