Blame m4/gtk-doc.m4

Packit aa0600
# -*- mode: autoconf -*-
Packit aa0600
#
Packit aa0600
# gtk-doc.m4 - configure macro to check for gtk-doc
Packit aa0600
# Copyright (C) 2003 James Henstridge
Packit aa0600
#               2007-2017  Stefan Sauer
Packit aa0600
#
Packit aa0600
# This program is free software: you can redistribute it and/or modify
Packit aa0600
# it under the terms of the GNU General Public License as published by
Packit aa0600
# the Free Software Foundation, either version 3 of the License, or
Packit aa0600
# (at your option) any later version.
Packit aa0600
#
Packit aa0600
# This program is distributed in the hope that it will be useful,
Packit aa0600
# but WITHOUT ANY WARRANTY; without even the implied warranty of
Packit aa0600
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
Packit aa0600
# GNU General Public License for more details.
Packit aa0600
#
Packit aa0600
# You should have received a copy of the GNU General Public License
Packit aa0600
# along with this program.  If not, see <http://www.gnu.org/licenses/>.
Packit aa0600
#
Packit aa0600
# As a special exception, the above copyright owner gives unlimited
Packit aa0600
# permission to copy, distribute and modify the configure scripts that
Packit aa0600
# are the output of Autoconf when processing the Macro. You need not
Packit aa0600
# follow the terms of the GNU General Public License when using or
Packit aa0600
# distributing such scripts, even though portions of the text of the
Packit aa0600
# Macro appear in them. The GNU General Public License (GPL) does govern
Packit aa0600
# all other use of the material that constitutes the Autoconf Macro.
Packit aa0600
Packit aa0600
# serial 2
Packit aa0600
Packit aa0600
dnl Usage:
Packit aa0600
dnl   GTK_DOC_CHECK([minimum-gtk-doc-version])
Packit aa0600
AC_DEFUN([GTK_DOC_CHECK],
Packit aa0600
[
Packit aa0600
  AC_REQUIRE([PKG_PROG_PKG_CONFIG])
Packit aa0600
  AC_BEFORE([AC_PROG_LIBTOOL],[$0])dnl setup libtool first
Packit aa0600
  AC_BEFORE([AM_PROG_LIBTOOL],[$0])dnl setup libtool first
Packit aa0600
Packit aa0600
  ifelse([$1],[],[gtk_doc_requires="gtk-doc"],[gtk_doc_requires="gtk-doc >= $1"])
Packit aa0600
  AC_MSG_CHECKING([for gtk-doc])
Packit aa0600
  PKG_CHECK_EXISTS([$gtk_doc_requires],[have_gtk_doc=yes],[have_gtk_doc=no])
Packit aa0600
  AC_MSG_RESULT($have_gtk_doc)
Packit aa0600
Packit aa0600
  if test "$have_gtk_doc" = "no"; then
Packit aa0600
      AC_MSG_WARN([
Packit aa0600
  You will not be able to create source packages with 'make dist'
Packit aa0600
  because $gtk_doc_requires is not found.])
Packit aa0600
  fi
Packit aa0600
Packit aa0600
  dnl check for tools we added during development
Packit aa0600
  dnl Use AC_CHECK_PROG to avoid the check target using an absolute path that
Packit aa0600
  dnl may not be writable by the user. Currently, automake requires that the
Packit aa0600
  dnl test name must end in '.test'.
Packit aa0600
  dnl https://bugzilla.gnome.org/show_bug.cgi?id=701638
Packit aa0600
  AC_CHECK_PROG([GTKDOC_CHECK],[gtkdoc-check],[gtkdoc-check.test])
Packit aa0600
  AC_PATH_PROG([GTKDOC_CHECK_PATH],[gtkdoc-check])
Packit aa0600
  AC_PATH_PROGS([GTKDOC_REBASE],[gtkdoc-rebase],[true])
Packit aa0600
  AC_PATH_PROG([GTKDOC_MKPDF],[gtkdoc-mkpdf])
Packit aa0600
Packit aa0600
  dnl for overriding the documentation installation directory
Packit aa0600
  AC_ARG_WITH([html-dir],
Packit aa0600
    AS_HELP_STRING([--with-html-dir=PATH], [path to installed docs]),,
Packit aa0600
    [with_html_dir='${datadir}/gtk-doc/html'])
Packit aa0600
  HTML_DIR="$with_html_dir"
Packit aa0600
  AC_SUBST([HTML_DIR])
Packit aa0600
Packit aa0600
  dnl enable/disable documentation building
Packit aa0600
  AC_ARG_ENABLE([gtk-doc],
Packit aa0600
    AS_HELP_STRING([--enable-gtk-doc],
Packit aa0600
                   [use gtk-doc to build documentation [[default=no]]]),,
Packit aa0600
    [enable_gtk_doc=no])
Packit aa0600
Packit aa0600
  AC_MSG_CHECKING([whether to build gtk-doc documentation])
Packit aa0600
  AC_MSG_RESULT($enable_gtk_doc)
Packit aa0600
Packit aa0600
  if test "x$enable_gtk_doc" = "xyes" && test "$have_gtk_doc" = "no"; then
Packit aa0600
    AC_MSG_ERROR([
Packit aa0600
  You must have $gtk_doc_requires installed to build documentation for
Packit aa0600
  $PACKAGE_NAME. Please install gtk-doc or disable building the
Packit aa0600
  documentation by adding '--disable-gtk-doc' to '[$]0'.])
Packit aa0600
  fi
Packit aa0600
Packit aa0600
  dnl don't check for glib if we build glib
Packit aa0600
  if test "x$PACKAGE_NAME" != "xglib"; then
Packit aa0600
    dnl don't fail if someone does not have glib
Packit aa0600
    PKG_CHECK_MODULES(GTKDOC_DEPS, glib-2.0 >= 2.10.0 gobject-2.0  >= 2.10.0,,[:])
Packit aa0600
  fi
Packit aa0600
Packit aa0600
  dnl enable/disable output formats
Packit aa0600
  AC_ARG_ENABLE([gtk-doc-html],
Packit aa0600
    AS_HELP_STRING([--enable-gtk-doc-html],
Packit aa0600
                   [build documentation in html format [[default=yes]]]),,
Packit aa0600
    [enable_gtk_doc_html=yes])
Packit aa0600
    AC_ARG_ENABLE([gtk-doc-pdf],
Packit aa0600
      AS_HELP_STRING([--enable-gtk-doc-pdf],
Packit aa0600
                     [build documentation in pdf format [[default=no]]]),,
Packit aa0600
      [enable_gtk_doc_pdf=no])
Packit aa0600
Packit aa0600
  if test -z "$GTKDOC_MKPDF"; then
Packit aa0600
    enable_gtk_doc_pdf=no
Packit aa0600
  fi
Packit aa0600
Packit aa0600
  if test -z "$AM_DEFAULT_VERBOSITY"; then
Packit aa0600
    AM_DEFAULT_VERBOSITY=1
Packit aa0600
  fi
Packit aa0600
  AC_SUBST([AM_DEFAULT_VERBOSITY])
Packit aa0600
Packit aa0600
  AM_CONDITIONAL([HAVE_GTK_DOC], [test x$have_gtk_doc = xyes])
Packit aa0600
  AM_CONDITIONAL([ENABLE_GTK_DOC], [test x$enable_gtk_doc = xyes])
Packit aa0600
  AM_CONDITIONAL([GTK_DOC_BUILD_HTML], [test x$enable_gtk_doc_html = xyes])
Packit aa0600
  AM_CONDITIONAL([GTK_DOC_BUILD_PDF], [test x$enable_gtk_doc_pdf = xyes])
Packit aa0600
  AM_CONDITIONAL([GTK_DOC_USE_LIBTOOL], [test -n "$LIBTOOL"])
Packit aa0600
  AM_CONDITIONAL([GTK_DOC_USE_REBASE], [test -n "$GTKDOC_REBASE"])
Packit aa0600
])