首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >cmake add_definitions和COMPILE_DEFINITIONS,如何查看它们

cmake add_definitions和COMPILE_DEFINITIONS,如何查看它们
EN

Stack Overflow用户
提问于 2011-03-23 18:19:26
回答 1查看 21.8K关注 0票数 20

我想看看CMake文件中当前的编译器定义集是什么。自动指定的和我添加的将会很棒。COMPILE_DEFINITIONS宏似乎没有包含--不管文档怎么说。

例如,在下面的设置中,消息从不包含GUI_BUILD

代码语言:javascript
复制
add_definitions( -DGUI_BUILD )
message( "COMPILE_DEFINITIONS = ${COMPILE_DEFINITIONS}" )

我不需要看到它们的最终形式,我只需要一个快速的输出,以帮助验证一切都已正确配置。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-03-23 18:44:00

您希望从directory中提取COMPILE_DEFINITIONS属性。例如,使用以下命令:

代码语言:javascript
复制
add_definitions( -DDebug )
get_directory_property( DirDefs DIRECTORY ${CMAKE_SOURCE_DIR} COMPILE_DEFINITIONS )

然后,您可以简单地迭代它们,例如:

代码语言:javascript
复制
foreach( d ${DirDefs} )
    message( STATUS "Found Define: " ${d} )
endforeach()
message( STATUS "DirDefs: " ${DirDefs} )

注意,定义也可以与targetssource-files相关联,而不是与目录相关联。请注意,不同的配置可能会有所不同。根据您的要求,您可能需要检查大量不同的属性。

票数 27
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5403705

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档