我有一个用OCaml编码的项目,由makefile
启动。 makefile
的一部分如下:
TESTS = t1 t2 t3 t4 t5 t6 t7 t8 t9 t10
$(TESTS): % : tests/%.ev $(CMX_DOMAIN) analyze
./analyze tests/$*.ev
因此,在终端中,当我启动make t1
时,它将首先编译二进制文件(analyze
),然后使用t1.ev
运行它。
现在,我想要设置的是一个机制,可以逐个测试TESTS
中的所有文件。例如,终端make alltests
中的命令编译二进制文件,然后使用t1.ev
,t2.ev
等运行它。
有谁知道如何在makefile
中实现它?
答案 0 :(得分:2)
对我来说,最简单的方法是添加一个新的目标,并将测试列表作为先决条件:
alltests: $(TESTS)