5

我正在为我的 C++ 包使用 Autotools。我的包有一个二进制文件,例如称为“myprog”。我编写了一个 bash 脚本“test.bash”,其中包含一个功能测试。该脚本有 4 个步骤:(1)创建输入文件,(2)生成预期的输出文件,(3)在输入文件上启动“myprog”,(4)将“prog”的输出与预期的输出进行比较。

在第 3 步中,“test.bash”需要知道“myprog”的路径。如果我自己独立启动“test.bash”,我可以在命令行中提供“myprog”的路径作为选项。make check但是使用or时我能做什么make distcheck

我正在阅读Autotools/Automake 的手册。我想有一种方法可以使用由 设置的变量configure,但是我不知道如何使用它们,因此非常欢迎任何解决方案!

4

1 回答 1

5

您可以使用TESTS变量Makefile.am并设置AM_TESTS_ENVIRONMENT变量以传递选项或为 bash 脚本设置环境变量。它在页面上以 autotools 手册的通常随意风格进行了描述。

由于myprog可能在源代码树之外构建,因此您可以设置一个变量以$(top_builddir)/relative/path在脚本中使用,或者使用该pwd命令作为脚本正在执行的目录。

于 2013-01-09T16:03:22.270 回答