Ed *_*d K 2 eclipse automake autoconf unit-testing autotools
有没有办法编译autoconf项目的"检查"目标而不运行它?
我有Eclipse Juno和"C/C++单元测试"插件.我希望能够制作检查目标,然后在插件的上下文中运行它,以便我可以利用它的便利性.
目前我已经设置了项目配置来构建"make check",然后运行它创建的"test"二进制文件.这有两个问题.
1)它是冗余的并且减慢了过程(测试运行两次)
2)测试失败导致构建失败.Eclipse不知道区别.我必须注意输出,然后在单元测试插件中运行,以获得我想要的东西.
如果没有办法只编译检查目标,是否有其他方法可以设置autoconf/automake以允许我构建测试目标而无需创建一个特殊的配置来构建测试作为"make all"的一部分?基本上,我想在一个配置中拥有所有3个选项:
make unitTest (for development)
make check (for automated testing)
make all (for release)
Run Code Online (Sandbox Code Playgroud)
编辑:只是澄清一点,我知道我可以从目标目录运行"make targetName"来编译该目标(project/src/test> make myUnitTests).我正在寻找从项目的基本目录(项目> make check_PROGRAMS)执行此操作的通用方法.
为您的根添加一条新规则怎么样Makefile.am?
.PHONY: unitTest
unitTest:
cd src/test && $(MAKE) $(AM_MAKEFLAGS) myUnitTests
Run Code Online (Sandbox Code Playgroud)
如果应该从make myUnitTests构建所有内容,只需在 中添加这样的规则:$(check_PROGRAMS)src/test/Makefile.amsrc/test/Makefile.am
.PHONY: myUnitTests
myUnitTests: $(check_PROGRAMS)
Run Code Online (Sandbox Code Playgroud)