我正在编写自己的单元测试库(使用autoconf,automake和libtool)以更好地满足我的需求(我不需要超大量的功能,只需要测试运行器和断言)。我已经达到了似乎可以使用的程度。

当然,它使用config.h来确定要包含的标头。问题是我不确定config.h应该去哪里,因为它容易与其他项目的config.h发生冲突,以及它依赖于架构这一事实。

我的方法应该用于安装此标头? (所有其他标题都需要它)

有帮助吗?

解决方案

ax_prefix_config_h 宏听起来像你想要的。它提供了一种创建另一个类似config.h的文件的方法,该文件包含前缀为config.h的信息。因此,例如,在config.h中代替#define HAVE_SOMETHING,您将在mylib_config.h中获得#define MYLIB_HAVE_SOMETHING。非常方便。

其他提示

无论如何,你不应该在你的图书馆界面中导出 config.h

此链接显示了一种解决方法,如果你真的安装了标题,真正需要依赖平台。这是一个使用过时的autoconf宏的脆弱方法。

您可以选择通过更改AC_OUTPUT宏来输出不同的配置文件,但我不确定您的项目将如何与其他项目集成。如果它是一个子项目,那么无论如何它都会在子目录中。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top