如何在 Eclipse CDT 中有效地管理从构建中排除的文件?

How to efficiently manage file exclusion from build in Eclipse CDT?

我有一个嵌入式 C 项目,该项目由目录层次结构中的数十个源模块和 headers 组成。该项目是为几个目标定义的(使用构建配置进行管理),并且许多模块仅包含在构建中以用于配置的子集。

该项目是一个从命令行构建的 makefile 项目,我使用 Eclipse IDE 主要是因为它具有静态代码分析功能。例如,在搜索 object 的定义时,它知道要打开哪个 header 文件,基于构建配置中包含的那个模块。

过去我使用 Export/Import 功能 bulk-edit 各种配置的包含路径和宏定义。

但我正在寻找一种方法来为模块 inclusion/exclusion 做到这一点。如果我在代码树中的目录中 right-click,我会看到 Exclude from build... 菜单项,它会打开一个包含配置列表的对话框,我可以在其中方便地 select 要排除的配置那个目录。

但是,特定模块的上下文菜单中缺少此对话框。因此,我需要打开“属性”对话框并滚动浏览所有配置,从所需配置中排除 one-by-one.

单个模块有类似目录的对话框吗?

有没有办法将这些设置(包含路径和宏除外)导出到 XML 文件以便于编辑? Eclipse 在哪里保存这些信息?

我使用的是ARM的DS-5 Eclipse平台版本Mars.2(4.5.2)

我在目录和单个文件的 Resource Configurations 子菜单中看到 Exclude from build...

至于 Eclipse 存储此信息的位置:在 .cproject 文件中,在看起来像这样的条目中:

<cproject ...>
  <storageModule ...>
    <cconfiguration ...>
      ...
      <storageModule ...>
        <configuration ...>
          ...
          <sourceEntries>
            <entry excluding="<path-to-excluded-resource>" ...>
            ...
          </sourceEntries> 
          ...