dnl AM_PATH_CHECK([MINIMUM-VERSION, [ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND]]]) dnl Test for check, and define CHECK_CFLAGS and CHECK_LIBS dnl AC_DEFUN([AM_PATH_CHECK], [ AC_ARG_WITH(check, [ --with-check=PATH prefix where check is installed [default=auto]]) min_check_version=ifelse([$1], ,0.8.2,$1) AC_MSG_CHECKING(for check - version >= $min_check_version) if test x$with_check = xno; then AC_MSG_RESULT(disabled) ifelse([$3], , AC_MSG_ERROR([disabling check is not supported]), [$3]) else if test "x$with_check" != x; then CHECK_CFLAGS="-I$with_check/include" CHECK_LIBS="-L$with_check/lib -lcheck" else CHECK_CFLAGS="" CHECK_LIBS="-lcheck" fi ac_save_CFLAGS="$CFLAGS" ac_save_LIBS="$LIBS" CFLAGS="$CFLAGS $CHECK_CFLAGS" LIBS="$CHECK_LIBS $LIBS" rm -f conf.check-test AC_TRY_RUN([ #include #include #include int main () { int major, minor, micro; char *tmp_version; system ("touch conf.check-test"); /* HP/UX 9 (%@#!) writes to sscanf strings */ tmp_version = strdup("$min_check_version"); if (sscanf(tmp_version, "%d.%d.%d", &major, &minor, µ) != 3) { printf("%s, bad version string\n", "$min_check_version"); return 1; } if ((CHECK_MAJOR_VERSION != check_major_version) || (CHECK_MINOR_VERSION != check_minor_version) || (CHECK_MICRO_VERSION != check_micro_version)) { printf("\n*** The check header file (version %d.%d.%d) does not match\n", CHECK_MAJOR_VERSION, CHECK_MINOR_VERSION, CHECK_MICRO_VERSION); printf("*** the check library (version %d.%d.%d).\n", check_major_version, check_minor_version, check_micro_version); return 1; } if ((check_major_version > major) || ((check_major_version == major) && (check_minor_version > minor)) || ((check_major_version == major) && (check_minor_version == minor) && (check_micro_version >= micro))) { return 0; } else { printf("\n*** An old version of check (%d.%d.%d) was found.\n", check_major_version, check_minor_version, check_micro_version); printf("*** You need a version of check being at least %d.%d.%d.\n", major, minor, micro); printf("***\n"); printf("*** If you have already installed a sufficiently new version, this error\n"); printf("*** probably means that the wrong copy of the check library and header\n"); printf("*** file is being found. Rerun configure with the --with-check=PATH option\n"); printf("*** to specify the prefix where the correct version was installed.\n"); } return 1; } ],, no_check=yes, [echo $ac_n "cross compiling; assumed OK... $ac_c"]) CFLAGS="$ac_save_CFLAGS" LIBS="$ac_save_LIBS" if test "x$no_check" = x ; then AC_MSG_RESULT(yes) ifelse([$2], , :, [$2]) else AC_MSG_RESULT(no) if test -f conf.check-test ; then : else echo "*** Could not run check test program, checking why..." CFLAGS="$CFLAGS $CHECK_CFLAGS" LIBS="$CHECK_LIBS $LIBS" AC_TRY_LINK([ #include #include #include ], , [ echo "*** The test program compiled, but did not run. This usually means" echo "*** that the run-time linker is not finding check. You'll need to set your" echo "*** LD_LIBRARY_PATH environment variable, or edit /etc/ld.so.conf to point" echo "*** to the installed location Also, make sure you have run ldconfig if that" echo "*** is required on your system" echo "***" echo "*** If you have an old version installed, it is best to remove it, although" echo "*** you may also be able to get things to work by modifying LD_LIBRARY_PATH"], [ echo "*** The test program failed to compile or link. See the file config.log for" echo "*** the exact error that occured." ]) CFLAGS="$ac_save_CFLAGS" LIBS="$ac_save_LIBS" fi CHECK_CFLAGS="" CHECK_LIBS="" rm -f conf.check-test ifelse([$3], , AC_MSG_ERROR([check not found]), [$3]) fi AC_SUBST(CHECK_CFLAGS) AC_SUBST(CHECK_LIBS) rm -f conf.check-test fi ]) dnl Usage: dnl GTK_DOC_CHECK([minimum-gtk-doc-version]) AC_DEFUN([GTK_DOC_CHECK], [ AC_BEFORE([AC_PROG_LIBTOOL],[$0])dnl setup libtool first AC_BEFORE([AM_PROG_LIBTOOL],[$0])dnl setup libtool first dnl for overriding the documentation installation directory AC_ARG_WITH(html-dir, AC_HELP_STRING([--with-html-dir=PATH], [path to installed docs]),, [with_html_dir='${datadir}/gtk-doc/html']) HTML_DIR="$with_html_dir" AC_SUBST(HTML_DIR) dnl enable/disable documentation building AC_ARG_ENABLE(gtk-doc, AC_HELP_STRING([--enable-gtk-doc], [use gtk-doc to build documentation [default=no]]),, enable_gtk_doc=no) have_gtk_doc=no if test x$enable_gtk_doc = xyes; then if test -z "$PKG_CONFIG"; then AC_PATH_PROG(PKG_CONFIG, pkg-config, no) fi if test "$PKG_CONFIG" != "no" && $PKG_CONFIG --exists gtk-doc; then have_gtk_doc=yes fi dnl do we want to do a version check? ifelse([$1],[],, [gtk_doc_min_version=$1 if test "$have_gtk_doc" = yes; then AC_MSG_CHECKING([gtk-doc version >= $gtk_doc_min_version]) if $PKG_CONFIG --atleast-version $gtk_doc_min_version gtk-doc; then AC_MSG_RESULT(yes) else AC_MSG_RESULT(no) have_gtk_doc=no fi fi ]) if test "$have_gtk_doc" != yes; then enable_gtk_doc=no fi fi AM_CONDITIONAL(ENABLE_GTK_DOC, test x$enable_gtk_doc = xyes) AM_CONDITIONAL(GTK_DOC_USE_LIBTOOL, test -n "$LIBTOOL") ])