是否有设置子目录的选项?
所以我有一个依赖于子项目的项目,子项目有一个选项: 选项(WITH_FUNCTION_X“启用X功能”开启)
在我的父项目中,我想要包含子项目,但没有功能X。
谢谢!
答案 0 :(得分:24)
CMake的option
命令或多或少地向缓存添加一个布尔变量。
如果要覆盖选项的默认值,只需在拉入子项目之前自己将相同名称的变量添加到缓存中:
set(WITH_FUNCTION_X OFF CACHE BOOL "enable X functionality")
add_subdirectory(subproject)
请注意,如果缓存中已存在该名称的值,则set
命令不执行任何操作。如果要覆盖任何现有值,请将FORCE
选项添加到该命令。
FORCE
set(WITH_FUNCTION_X OFF CACHE BOOL "enable X functionality" FORCE)
add_subdirectory(subproject)