cmake - unset() 不会取消设置 CMake 变量
问题描述
使用 CMake 3.5.1 using catkin_make
,它将许多makefile合并在一起,我有:
message("${HDF5_FOUND}")
unset(HDF5_FOUND)
message("${HDF5_FOUND}")
我在一个地方得到了相当出乎意料的结果:
1
1
而在另一个子CMakeLists.txt
TRUE
1
如果我单独运行顶级 make,我会看到以下预期结果:
<-- nothing
<-- nothing
在子制作中:
TRUE
<-- nothing
如果我set(HDF5_FOUND FALSE)
改用,我会得到预期的结果。缓存在CMake
做什么,我该如何解决?