我知道当我使用函数时,可以使用以下命令在调用范围内设置变量:
set(MYVAR 1 PARENT_SCOPE)
我想要的是能够在祖父母范围内设置变量(如果存在)。
我知道,如果我将函数重新定义为宏,那么set(MYVAR 1 PARENT_SCOPE)
会有效地满足我的需要。但不幸的是,出于不相关的原因,我不能这样做。
一种解决方案对我来说可以解决How to check if the variable is set in the parent scope, (as opposed to being inherited from grandparents) in CMake?中的问题。