如何通过Autotool为config.h
中定义的所有宏添加前缀?例如,我想要#define MYNAMESPACE_HAVE_STRING_H 1
而不是#define HAVE_STRING_H 1
。我发现一篇帖子说AX_PREFIX_CONFIG_H
可以提供帮助,但我的系统不支持这个宏......
AC_CONFIG_FILES([Makefile])
AC_CONFIG_HEADERS([include/config.h])
答案 0 :(得分:2)
AX_*
宏来自Autoconf Archive,尤其是http://www.gnu.org/software/autoconf-archive/ax_prefix_config_h.html中描述了您所指的宏。
这可能是实现它的最佳方法,只需在项目中复制该宏的最新m4文件,然后由autoreconf
找到它。有关使用外部宏文件的更多详细信息,请参阅Autotools Mythbuster中的我的文章。