【发布时间】:2015-06-17 16:23:07
【问题描述】:
在一个 Autotools 项目中,我试图生成部分 .conf 文件。程序需要从$(pkgdatadir)读取,但我知道那个变量只设置在Makefile.in,所以我改为替换datadir和PACKAGE。
配置.ac:
AC_PREREQ([2.69])
AC_INIT([foo], [1.0.0], [me@foo.com])
AC_CONFIG_SRCDIR([foo.c])
AM_INIT_AUTOMAKE
AC_CONFIG_HEADERS([config.h])
AC_CONFIG_MACRO_DIRS([m4])
AC_SUBST(datadir)
AC_SUBST(PACKAGE)
AC_CONFIG_FILES(foo.conf)
AC_PROG_CC
AC_PROG_INSTALL
AC_PROG_MAKE_SET
AC_PROG_MKDIR_P
AC_CONFIG_FILES([Makefile])
AC_OUTPUT
foo.conf.in:
Dir = @datadir@/@PACKAGE@
生成的 foo.conf:
Dir = ${prefix}/share/foo
我希望 autoconf 在替换时评估 ${prefix},但我不知道如何实现。
【问题讨论】:
标签: autotools autoconf automake m4