automake中的AC_ARG_WITH和AM_CONDITIONAL使用示例
AC_ARG_WITH AC_ARG_WITH(common,"--with-common prefix for installed COMMON-LIBRARY",COMMON_LIBRARY_HOME=$withval,COMMON_LIBRARY_HOME=) AC_SUBST(COMMON_LIBRARY_HOME) AS_IF([test "x$COMMON_LIBRARY_HOME" = "x"],[AC_MSG_ERROR([*** COMMON-LIBRARY could not be located. Please use the --with-common option ***.])]) 经过上面的操作后,在Makefile.am中就可以引用common-library_home了,后面的AS_IF表示如果没有指定,则报错退出(执行configure时)。 最好将AC_ARG_WITH最好修改成: 使用AS_HELP_STRING后,./configure --help显示的就会对齐,否则顶格原原本本输出,效果如下: # Check whether --with-common-library was given. if test "${with-common-library+set}" = set; then withval=$with-common-library; common-library_home=$withval else common-library_home= fi 从上可以看出,将$withval改成$with-common-library也可以。 AM_CONDITIONAL AM_CONDITIONAL(LOG4CXX_INSTALLED_ENV, test $LOG4CXX_HOME -a -d $LOG4CXX_HOME) |