我有一个非常大的项目,我正在尝试使用GPS(Gnat编程工作室)而不是我的工作。
项目的命名约定如下:
something.1.ada for a spec
某人身上的东西
parents.son.2.ada用于单独的过程/函数,其中parent是声明单独的函数/过程的地方,而son是单独的函数/过程的名称。 它甚至可能更复杂,如grandparent.parent.son.2.ada
我的问题是我无法配置GPS以将单独的功能/程序识别为项目中的源文件。
这是一个庞大的项目,所以更改文件的名称或代码本身的任何其他更改都不是我的选择,因为它会导致太多麻烦。
如何正确配置GPS?
答案 0 :(得分:5)
您需要一个包含Naming
的GNAT项目文件。您的命名方案听起来像GPRbuild User's Guide中讨论的Apex命名方案 - 特别是here。
那就是
package Naming is
for Casing use "lowercase";
for Dot_Replacement use ".";
for Spec_Suffix ("Ada") use ".1.ada";
for Body_Suffix ("Ada") use ".2.ada";
end Naming;
我觉得你不需要
for Separate_Suffix ("Ada") use ".2.ada";
,因为
它表示在包含单独实体的文件名中使用的后缀。如果未指定,则默认为与Body_Suffix(“Ada”)相同的值。
答案 1 :(得分:2)
Simon没有提到的另一个选择是在你的程序上运行gnatchop。 gnatchop
是一个程序,它会将您的所有文件重命名为Gnat默认查找的名称。
它的确有一个缺点,即结果不会像以前那样命名和排列文件。但是,与手动构建映射文件或调整项目的命名方案相比,它可能要少得多。