2010-11-12 42 views
2

我已经使用autoconf和automake的用以下结构工程:使用自动工具单元测试共享文件

  • /
    • 的src/
      • class.h
      • class.cpp
    • test/
      • class_unittest.cpp

在class_unittest.cpp我包括在源文件和编译也是class.cpp文件class.h。在automake config for test中添加../src作为AM_CPPFLAGS = -I ../ src/definition中的新包含路径,并在SOURCES定义中相对引用class.cpp。

它的工作原理,当我建立从根目录下的软件很棒,但如果我尝试通过创造根,并在目录调用DIR FOO做VPATH构建../configure & &化妆我会得到尝试编译class_unittest.cpp时丢失头文件class.h错误。

那么如何共享测试头以避免此问题呢?

回答

4

您可以使用srcdir变量引用VPATH构建中的等效源目录。

AM_CPPFLAGS = -I$(srcdir)/../src 
+0

很明显很简单,谢谢! :d – JtR 2010-11-12 12:48:12