mkman: split into wrapper and module
[gtk-doc.git] / gtk-doc.m4
blob36755432b50175c5e83f76841bc1bb63239ef20e
1 dnl -*- mode: autoconf -*-
3 # serial 2
5 dnl Usage:
6 dnl   GTK_DOC_CHECK([minimum-gtk-doc-version])
7 AC_DEFUN([GTK_DOC_CHECK],
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
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)
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
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])
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])
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])
47   AC_MSG_CHECKING([whether to build gtk-doc documentation])
48   AC_MSG_RESULT($enable_gtk_doc)
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
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
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])
73   if test -z "$GTKDOC_MKPDF"; then
74     enable_gtk_doc_pdf=no
75   fi
77   if test -z "$AM_DEFAULT_VERBOSITY"; then
78     AM_DEFAULT_VERBOSITY=1
79   fi
80   AC_SUBST([AM_DEFAULT_VERBOSITY])
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"])