Ada`Gprbuild`较短的文件名,组织成目录

问题描述 投票:1回答:2

在过去几周里,由于各种不同的原因,我一直在进入Ada。但毫无疑问,关于我为什么使用Ada的个人原因的信息超出了这个问题的范围。

截止到前几天,我开始使用Windows版gprbuild附带的GNAT命令,以获得系统以项目相关方式管理我的应用程序的好处。也就是说,能够在每个项目的基础上定义某些属性,而不是自己手动设置编译阶段。

目前在命名我的文件时,他们的名字是基于grpbuild的标准,尽管我可能非常错。对于句点(在包结构中),-放在文件的名称中,对于下划线,相应地放置_。因此,名为App.Test.File_Utils的包将具有文件名app-test-file_utils.ads.adb

.gpr项目文件中,我指定了:

for Source_Dirs use ("app/src/**");

这样我就可以使用多个目录来存储我的文件,而不是需要将它们全部放在同一个目录中。

问题

然而,出现的问题是文件名往往会变得很长。由于我已经将文件放在基于文件包含的包名的目录中,我想知道是否有办法以某种方式使编译器理解可以从文件的目录名中检索包名。

也就是说,我不希望将App.Test.File_Utils的文件名命名为app-test-file_utils,而是希望它位于app/test目录下,名称为file_utils

这是可行的,还是我会被最终不得不命名我的文件的恐怖所困扰:app-test-some-then-one-has-more_files-another_package-knew-test-more-important_package.ads?当然,我没有错过任何关于如何实际构建Ada应用程序的内容。

我试过了什么

我试着在package Naming configuration of the gpr files in the documentation寻找答案,但无济于事。此外,我一直在浏览网页以获取信息,但我认为通过Stackoverflow获得帮助可能会更好,以便将来可能会遇到此问题的其他人(首先认为这是一个问题)也可能会得到帮助。

任何正确方向的指针都会非常有用!

ada gnat
2个回答
4
投票

top-secret GNAT documentation中有一个如何使用非默认文件名的描述。这是一项很大的努力。您可能会放弃,使用默认名称,并将它们全部放在一个目录中。


1
投票

您还可以通过使用GPS简化大部分工作,并在将文件添加到源目录时让它构建项目文件。

© www.soinside.com 2019 - 2024. All rights reserved.