1dnl -*- mode: autoconf -*- 2 3# serial 2 4 5dnl Usage: 6dnl GTK_DOC_CHECK([minimum-gtk-doc-version]) 7AC_DEFUN([GTK_DOC_CHECK], 8[ 9 AC_REQUIRE([PKG_PROG_PKG_CONFIG]) 10 AC_BEFORE([AC_PROG_LIBTOOL],[$0])dnl setup libtool first 11 AC_BEFORE([AM_PROG_LIBTOOL],[$0])dnl setup libtool first 12 13 ifelse([$1],[],[gtk_doc_requires="gtk-doc"],[gtk_doc_requires="gtk-doc >= $1"]) 14 AC_MSG_CHECKING([for gtk-doc]) 15 PKG_CHECK_EXISTS([$gtk_doc_requires],[have_gtk_doc=yes],[have_gtk_doc=no]) 16 AC_MSG_RESULT($have_gtk_doc) 17 18 if test "$have_gtk_doc" = "no"; then 19 AC_MSG_WARN([ 20 You will not be able to create source packages with 'make dist' 21 because $gtk_doc_requires is not found.]) 22 fi 23 24 dnl check for tools we added during development 25 dnl Use AC_CHECK_PROG to avoid the check target using an absolute path that 26 dnl may not be writable by the user. Currently, automake requires that the 27 dnl test name must end in '.test'. 28 dnl https://bugzilla.gnome.org/show_bug.cgi?id=701638 29 AC_CHECK_PROG([GTKDOC_CHECK],[gtkdoc-check],[gtkdoc-check.test]) 30 AC_PATH_PROG([GTKDOC_CHECK_PATH],[gtkdoc-check]) 31 AC_PATH_PROGS([GTKDOC_REBASE],[gtkdoc-rebase],[true]) 32 AC_PATH_PROG([GTKDOC_MKPDF],[gtkdoc-mkpdf]) 33 34 dnl for overriding the documentation installation directory 35 AC_ARG_WITH([html-dir], 36 AS_HELP_STRING([--with-html-dir=PATH], [path to installed docs]),, 37 [with_html_dir='${datadir}/gtk-doc/html']) 38 HTML_DIR="$with_html_dir" 39 AC_SUBST([HTML_DIR]) 40 41 dnl enable/disable documentation building 42 AC_ARG_ENABLE([gtk-doc], 43 AS_HELP_STRING([--enable-gtk-doc], 44 [use gtk-doc to build documentation [[default=no]]]),, 45 [enable_gtk_doc=no]) 46 47 AC_MSG_CHECKING([whether to build gtk-doc documentation]) 48 AC_MSG_RESULT($enable_gtk_doc) 49 50 if test "x$enable_gtk_doc" = "xyes" && test "$have_gtk_doc" = "no"; then 51 AC_MSG_ERROR([ 52 You must have $gtk_doc_requires installed to build documentation for 53 $PACKAGE_NAME. Please install gtk-doc or disable building the 54 documentation by adding '--disable-gtk-doc' to '[$]0'.]) 55 fi 56 57 dnl don't check for glib if we build glib 58 if test "x$PACKAGE_NAME" != "xglib"; then 59 dnl don't fail if someone does not have glib 60 PKG_CHECK_MODULES(GTKDOC_DEPS, glib-2.0 >= 2.10.0 gobject-2.0 >= 2.10.0,,[:]) 61 fi 62 63 dnl enable/disable output formats 64 AC_ARG_ENABLE([gtk-doc-html], 65 AS_HELP_STRING([--enable-gtk-doc-html], 66 [build documentation in html format [[default=yes]]]),, 67 [enable_gtk_doc_html=yes]) 68 AC_ARG_ENABLE([gtk-doc-pdf], 69 AS_HELP_STRING([--enable-gtk-doc-pdf], 70 [build documentation in pdf format [[default=no]]]),, 71 [enable_gtk_doc_pdf=no]) 72 73 if test -z "$GTKDOC_MKPDF"; then 74 enable_gtk_doc_pdf=no 75 fi 76 77 if test -z "$AM_DEFAULT_VERBOSITY"; then 78 AM_DEFAULT_VERBOSITY=1 79 fi 80 AC_SUBST([AM_DEFAULT_VERBOSITY]) 81 82 AM_CONDITIONAL([HAVE_GTK_DOC], [test x$have_gtk_doc = xyes]) 83 AM_CONDITIONAL([ENABLE_GTK_DOC], [test x$enable_gtk_doc = xyes]) 84 AM_CONDITIONAL([GTK_DOC_BUILD_HTML], [test x$enable_gtk_doc_html = xyes]) 85 AM_CONDITIONAL([GTK_DOC_BUILD_PDF], [test x$enable_gtk_doc_pdf = xyes]) 86 AM_CONDITIONAL([GTK_DOC_USE_LIBTOOL], [test -n "$LIBTOOL"]) 87 AM_CONDITIONAL([GTK_DOC_USE_REBASE], [test -n "$GTKDOC_REBASE"]) 88]) 89