对于使用catkin_make
的CMake 3.5.1,它将很多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
正在做什么缓存,如何解决呢?