Blame m4/gtk-doc.m4

Packit a4058c
dnl -*- mode: autoconf -*-
Packit a4058c
Packit a4058c
# serial 2
Packit a4058c
Packit a4058c
dnl Usage:
Packit a4058c
dnl   GTK_DOC_CHECK([minimum-gtk-doc-version])
Packit a4058c
AC_DEFUN([GTK_DOC_CHECK],
Packit a4058c
[
Packit a4058c
  AC_REQUIRE([PKG_PROG_PKG_CONFIG])
Packit a4058c
  AC_BEFORE([AC_PROG_LIBTOOL],[$0])dnl setup libtool first
Packit a4058c
  AC_BEFORE([AM_PROG_LIBTOOL],[$0])dnl setup libtool first
Packit a4058c
Packit a4058c
  ifelse([$1],[],[gtk_doc_requires="gtk-doc"],[gtk_doc_requires="gtk-doc >= $1"])
Packit a4058c
  AC_MSG_CHECKING([for gtk-doc])
Packit a4058c
  PKG_CHECK_EXISTS([$gtk_doc_requires],[have_gtk_doc=yes],[have_gtk_doc=no])
Packit a4058c
  AC_MSG_RESULT($have_gtk_doc)
Packit a4058c
Packit a4058c
  if test "$have_gtk_doc" = "no"; then
Packit a4058c
      AC_MSG_WARN([
Packit a4058c
  You will not be able to create source packages with 'make dist'
Packit a4058c
  because $gtk_doc_requires is not found.])
Packit a4058c
  fi
Packit a4058c
Packit a4058c
  dnl check for tools we added during development
Packit a4058c
  dnl Use AC_CHECK_PROG to avoid the check target using an absolute path that
Packit a4058c
  dnl may not be writable by the user. Currently, automake requires that the
Packit a4058c
  dnl test name must end in '.test'.
Packit a4058c
  dnl https://bugzilla.gnome.org/show_bug.cgi?id=701638
Packit a4058c
  AC_CHECK_PROG([GTKDOC_CHECK],[gtkdoc-check],[gtkdoc-check.test])
Packit a4058c
  AC_PATH_PROG([GTKDOC_CHECK_PATH],[gtkdoc-check])
Packit a4058c
  AC_PATH_PROGS([GTKDOC_REBASE],[gtkdoc-rebase],[true])
Packit a4058c
  AC_PATH_PROG([GTKDOC_MKPDF],[gtkdoc-mkpdf])
Packit a4058c
Packit a4058c
  dnl for overriding the documentation installation directory
Packit a4058c
  AC_ARG_WITH([html-dir],
Packit a4058c
    AS_HELP_STRING([--with-html-dir=PATH], [path to installed docs]),,
Packit a4058c
    [with_html_dir='${datadir}/gtk-doc/html'])
Packit a4058c
  HTML_DIR="$with_html_dir"
Packit a4058c
  AC_SUBST([HTML_DIR])
Packit a4058c
Packit a4058c
  dnl enable/disable documentation building
Packit a4058c
  AC_ARG_ENABLE([gtk-doc],
Packit a4058c
    AS_HELP_STRING([--enable-gtk-doc],
Packit a4058c
                   [use gtk-doc to build documentation [[default=no]]]),,
Packit a4058c
    [enable_gtk_doc=no])
Packit a4058c
Packit a4058c
  AC_MSG_CHECKING([whether to build gtk-doc documentation])
Packit a4058c
  AC_MSG_RESULT($enable_gtk_doc)
Packit a4058c
Packit a4058c
  if test "x$enable_gtk_doc" = "xyes" && test "$have_gtk_doc" = "no"; then
Packit a4058c
    AC_MSG_ERROR([
Packit a4058c
  You must have $gtk_doc_requires installed to build documentation for
Packit a4058c
  $PACKAGE_NAME. Please install gtk-doc or disable building the
Packit a4058c
  documentation by adding '--disable-gtk-doc' to '[$]0'.])
Packit a4058c
  fi
Packit a4058c
Packit a4058c
  dnl don't check for glib if we build glib
Packit a4058c
  if test "x$PACKAGE_NAME" != "xglib"; then
Packit a4058c
    dnl don't fail if someone does not have glib
Packit a4058c
    PKG_CHECK_MODULES(GTKDOC_DEPS, glib-2.0 >= 2.10.0 gobject-2.0  >= 2.10.0,,[:])
Packit a4058c
  fi
Packit a4058c
Packit a4058c
  dnl enable/disable output formats
Packit a4058c
  AC_ARG_ENABLE([gtk-doc-html],
Packit a4058c
    AS_HELP_STRING([--enable-gtk-doc-html],
Packit a4058c
                   [build documentation in html format [[default=yes]]]),,
Packit a4058c
    [enable_gtk_doc_html=yes])
Packit a4058c
    AC_ARG_ENABLE([gtk-doc-pdf],
Packit a4058c
      AS_HELP_STRING([--enable-gtk-doc-pdf],
Packit a4058c
                     [build documentation in pdf format [[default=no]]]),,
Packit a4058c
      [enable_gtk_doc_pdf=no])
Packit a4058c
Packit a4058c
  if test -z "$GTKDOC_MKPDF"; then
Packit a4058c
    enable_gtk_doc_pdf=no
Packit a4058c
  fi
Packit a4058c
Packit a4058c
  if test -z "$AM_DEFAULT_VERBOSITY"; then
Packit a4058c
    AM_DEFAULT_VERBOSITY=1
Packit a4058c
  fi
Packit a4058c
  AC_SUBST([AM_DEFAULT_VERBOSITY])
Packit a4058c
Packit a4058c
  AM_CONDITIONAL([HAVE_GTK_DOC], [test x$have_gtk_doc = xyes])
Packit a4058c
  AM_CONDITIONAL([ENABLE_GTK_DOC], [test x$enable_gtk_doc = xyes])
Packit a4058c
  AM_CONDITIONAL([GTK_DOC_BUILD_HTML], [test x$enable_gtk_doc_html = xyes])
Packit a4058c
  AM_CONDITIONAL([GTK_DOC_BUILD_PDF], [test x$enable_gtk_doc_pdf = xyes])
Packit a4058c
  AM_CONDITIONAL([GTK_DOC_USE_LIBTOOL], [test -n "$LIBTOOL"])
Packit a4058c
  AM_CONDITIONAL([GTK_DOC_USE_REBASE], [test -n "$GTKDOC_REBASE"])
Packit a4058c
])