我试图修改某个目录下所有目录的编译器标志(即递归所有当前目录子目录及其所有子目录).所以我发现这里有两种方式:
add_directory(dir1)
# ...
add_directory(dirN)
add_compile_options(flag1 flag2 ...)
# or for CMake versions < 3.0 to do something more like:
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} flag1 flag2 ...")
Run Code Online (Sandbox Code Playgroud)
手册页add_compile_options非常清楚地表明效果将是"当前目录及以下"(这是我想要的)但是set(CMAKE_CXX_FLAGS ...)我不太确定.
Cmake是否设置变量递归?