使用"make check"为使用程序二进制文件的测试启动bash脚本

tfl*_*tre 5 autotools

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

在步骤3中,"test.bash"需要知道"myprog"的路径.如果我自己在独立版本上启动"test.bash",我可以在命令行中将"myprog"的路径作为选项.但是,可以使用当我make check还是make distcheck

我正在阅读Autotools/Automake手册.我想通过使用变量设置有一种方法configure,但我不知道如何使用它们,所以任何解决方案都非常受欢迎!

Bre*_*ale 5

您可以使用TESTS变量Makefile.am并设置AM_TESTS_ENVIRONMENT变量来传递选项或为bash脚本设置环境变量.它在这个页面上描述了autotools手册中常见的偶然风格.

由于myprog可以在源树之外构建,因此可以将变量设置$(top_builddir)/relative/path为在脚本中使用,或者将pwd命令用于执行脚本的目录.