【发布时间】:2018-07-13 08:11:13
【问题描述】:
如果我不提供标志 -DVAR=VAL,我想为变量 VAR 提供默认值 DEF。你有什么想法吗?
谢谢。
【问题讨论】:
-
if(not VAR) set(VAR "DEF") endif()?
标签: cmake
如果我不提供标志 -DVAR=VAL,我想为变量 VAR 提供默认值 DEF。你有什么想法吗?
谢谢。
【问题讨论】:
if(not VAR) set(VAR "DEF") endif() ?
标签: cmake
以下似乎有效。感谢 Kamil Cuk,它让我找到了一个解决方案。
if(not defined VAR)
set(VAR VAL)
endif()
【讨论】:
你可以使用set(... CACHE ...) command:
set(VAR "DEF" CACHE STRING "My VAR for doing xyz")
如果变量已在缓存中设置 - 例如通过命令行开关-D - 它没有被覆盖。用户可以使用cmake-gui 或ccmake 进行更改。
或者,如果您有布尔值,请使用 option() definitions command。
参考文献
【讨论】: