2012-03-25 3 views
9

は、私は次のテストを持っている:make checkが呼び出されたときにAutomake入力ファイルのテストにパラメータを渡すにはどうすればよいですか?私<code>Makefile.am</code>で

TESTS += tests/test1 
check_PROGRAMS += tests/test1 
tests_test1_SOURCES = tests/test1.c 
tests_test1_CPPFLAGS = ... 
tests_test1_LDADD = ... 

test1がコンパイルおよび実行されます。 Makefile.amを修正して、コマンドライン引数をtest1に渡す必要がありますか?

答えて

13

テストに引数を渡すことはできません。

#!/bin/sh 
tests/test1 args... < $srcdir/tests/distributed-input-file 
+0

+1テストスクリプトで '$ srcdir'を使う方法があるのか​​どうかは私のはるかに異なっています。 –

0

あなたも渡すことができます。

代わりの

TESTS += tests/test1 

tests/test1.testは、あなたが望む任意の引数を使用してプログラムを実行する実行可能なシェルスクリプトです

TESTS += tests/test1.test 
EXTRA_DIST += tests/test1.test 

を行います環境を介したパラメータ。これは、make checkの異なる実行で異なるパラメータを渡す場合に便利です。

では、次のとtests/test1.testを持って言う:今

#!/bin/bash 
tests/test1 $TEST_FLAGS < $srcdir/tests/distributed-input-file 

は、次のことを実行することができます:あなたはそれがしたい時はいつでも

$ TEST_FLAGS=--verbose make check 

そして--verboseフラグがテストプログラムに渡されますデバッグのために余分な情報を表示します。

関連する問題