我想看看我的CMake文件中当前的编译器定义集是什么.Ones自动指定,我添加的将是伟大的.该COMPILE_DEFINITIONS宏似乎不包含 - 尽管文档说的是什么.
例如,在下面的设置中,消息从不包含 GUI_BUILD
add_definitions( -DGUI_BUILD )
message( "COMPILE_DEFINITIONS = ${COMPILE_DEFINITIONS}" )
Run Code Online (Sandbox Code Playgroud)
我不需要在最终形式中看到它们,我只想快速输出以帮助验证所有内容都已正确配置.
And*_*dré 23
您想从目录中提取COMPILE_DEFINITIONS属性.例如,使用以下内容:
add_definitions( -DDebug )
get_directory_property( DirDefs DIRECTORY ${CMAKE_SOURCE_DIR} COMPILE_DEFINITIONS )
Run Code Online (Sandbox Code Playgroud)
然后你可以简单地迭代它们,例如:
foreach( d ${DirDefs} )
message( STATUS "Found Define: " ${d} )
endforeach()
message( STATUS "DirDefs: " ${DirDefs} )
Run Code Online (Sandbox Code Playgroud)
请注意,定义也可能与目标或源文件而不是目录相关联.请注意,它们可能因配置而异.根据您的要求,您可能需要检查大量不同的属性.
| 归档时间: |
|
| 查看次数: |
18607 次 |
| 最近记录: |