繁体   English   中英

将源文件的一些头依赖项添加到解决方案资源管理器以获取cmake目标

[英]Add some header dependencies of source files to solution explorer for cmake target

假设我有一个a.cpp作为源,我将它添加到cmake目标:

add_executable(MY_TARG a.cpp)

如果a.cpp包含ah它将被添加为目标的依赖项,当我更改标题时,一切都将正确重建,但是ah不会出现在我的项目的源列表中(例如在visual studio中) )。

有没有办法在那里添加它? 我可以区分系统标题(如<vector> )和来自同一目录结构的文件夹中的标题吗? 我可能希望只添加带引号的头文件而不是括号( "header.h"而不是<header.h>

我正在寻找一些自动的东西 - 我已经有很多CMakeLists.txt文件,其中只列出了.cpp文件,所有这些文件似乎都不切实际。

这很简单 - 如果您希望将文件作为IDE中项目的一部分列出,请将其列为CMake中目标的一部分:

add_executable(MY_TARG a.cpp a.h)

CMake知道它足以将其识别为标题(因此不会尝试编译它),但它会在生成的IDE项目中列出它。

编辑

根据寻找自动更改现有系统的附加信息,我认为这并不容易。 但它应该仍然可行。 编译器通常有一种列出他们编译的文件所包含的头文件的方法(例如gcc具有-MM )。 您应该能够使用此输出和您喜欢的文本处理语言构建一次性转换脚本。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM