dnl ALL_LINGUAS="ar az be bn ca cs cy da de el eo es et eu fa fi fr he hi hr id is it ja ko lt mn ms ne nl nn no pl pt_BR pt ro ru sk sl sq sr@Latn sr sv uk vi zh_CN"
dnl AM_GLIB_GNU_GETTEXT
-GTK_DOC_CHECK([1.0])
+AC_CHECK_PROG(GTKDOC, gtkdoc-mkdb, true, false)
+
+gtk_doc_min_version=0.6
+if $GTKDOC ; then
+ gtk_doc_version=`gtkdoc-mkdb --version`
+ AC_MSG_CHECKING([gtk-doc version ($gtk_doc_version) >= $gtk_doc_min_version])
+ if perl <<EOF ; then
+my @installed = split /\./, "$gtk_doc_version";
+my @required = split /\./, "$gtk_doc_min_version";
+
+while (scalar @required) {
+ my \$installed_ver = (shift @installed || 0);
+ my \$required_ver = shift @required;
+ exit 1 if (\$installed_ver < \$required_ver);
+ exit 0 if (\$installed_ver > \$required_ver);
+}
+exit 0;
+EOF
+ AC_MSG_RESULT(yes)
+ else
+ AC_MSG_RESULT(no)
+ GTKDOC=false
+ fi
+fi
+
+dnl Let people disable the gtk-doc stuff.
+AC_ARG_ENABLE(gtk-doc, [ --enable-gtk-doc Use gtk-doc to build documentation [default=auto]], enable_gtk_doc="$enableval", enable_gtk_doc=auto)
+
+if test x$enable_gtk_doc = xauto ; then
+ if test x$GTKDOC = xtrue ; then
+ enable_gtk_doc=yes
+ else
+ enable_gtk_doc=no
+ fi
+fi
+
+dnl NOTE: We need to use a separate automake conditional for this
+dnl to make this work with the tarballs.
+AM_CONDITIONAL(ENABLE_GTK_DOC, test x$enable_gtk_doc = xyes)
AC_PATH_XTRA
## Process this file with automake to produce Makefile.in
+EXTRA_DIST = Makefile.am at-spi-cspi-docs.sgml at-spi-cspi-sections.txt
+
+# Files whose declarations are to be ignored (private)
+IGNORE_HFILES = spi-impl.h
+
# The name of the module.
-DOC_MODULE = at-spi-cspi
+DOC_MODULE=at-spi-cspi
# The top-level SGML file.
-DOC_MAIN_SGML_FILE = at-spi-cspi-docs.sgml
+DOC_MAIN_SGML_FILE=at-spi-cspi-docs.sgml
# The directory containing the source code (if it contains documentation).
-DOC_SOURCE_DIR = $(top_srcdir)/cspi
+DOC_SOURCE_DIR=../../../cspi
-# Used for dependencies
-HFILE_GLOB = $(top_srcdir)/cspi/*.h
-CFILE_GLOB = $(top_srcdir)/cspi/*.c
+# Extra options to supply to gtkdoc-mkdb
+MKDB_OPTIONS=--output-format=xml
-# Header files to ignore when scanning
-IGNORE_HFILES = \
- spi-impl.h
+INSTALLDIR=$(prefix)/share/gtk-doc
-# CFLAGS and LDFLAGS for compiling scan program. Only needed
-# if $(DOC_MODULE).types is non-empty.
-INCLUDES = \
- -I$(top_srcdir) \
- -I$(top_builddir) \
- $(X_CFLAGS) \
- $(LIBCSPI_CFLAGS)
+HTML_DIR = ${datadir}/gtk-doc/html
-GTKDOC_LIBS = $(top_builddir)/cspi/libspi.la
+TARGET_DIR=$(HTML_DIR)/$(DOC_MODULE)
-# gtkdoc-mkdb related varaibles
-MKDB_OPTIONS =
+# Images to copy into HTML directory
HTML_IMAGES =
-# If you need to override some of the declarations, place them in the
-# $(DOC_MODULE)-overrides.txt file and uncomment the second line here.
-DOC_OVERRIDES = $(DOC_MODULE)-overrides.txt
+# Extra SGML files that are included by $(DOC_MAIN_SGML_FILE)
+content_files =
+
+# Other files to distribute
+extra_files =
+
+####################################
+# Everything below here is generic #
+####################################
+
+# We set GPATH here; this gives us semantics for GNU make
+# which are more like other make's VPATH, when it comes to
+# whether a source that is a target of one rule is then
+# searched for in VPATH/GPATH.
+#
+GPATH = $(srcdir)
+
+TARGET_DIR=$(HTML_DIR)/$(DOC_MODULE)
+
+EXTRA_DIST = \
+ $(content_files) \
+ $(extra_files) \
+ $(HTML_IMAGES) \
+ $(DOC_MAIN_SGML_FILE) \
+ $(DOC_MODULE)-sections.txt \
+ $(DOC_MODULE)-overrides.txt
+
+DOC_STAMPS=scan-build.stamp tmpl-build.stamp sgml-build.stamp html-build.stamp \ $(srcdir)/tmpl.stamp $(srcdir)/sgml.stamp $(srcdir)/html.stamp
+
+SCANOBJ_FILES = \
+ $(DOC_MODULE).args \
+ $(DOC_MODULE).hierarchy \
+ $(DOC_MODULE).signals
+
+if ENABLE_GTK_DOC
+all-local: html-build.stamp
+
+#### scan ####
+
+scan-build.stamp: $(HFILE_GLOB)
+ @echo '*** Scanning header files ***'
+ if grep -l '^..*$$' $(srcdir)/$(DOC_MODULE).types > /dev/null ; then \
+ CC="$(GTKDOC_CC)" LD="$(GTKDOC_LD)" CFLAGS="$(GTKDOC_CFLAGS)" LDFLAGS="$(GTKDOC_LIBS)" gtkdoc-scangobj --module=$(DOC_MODULE) --output-dir=$(srcdir) ; \
+ else \
+ cd $(srcdir) ; \
+ for i in $(SCANOBJ_FILES) ; do \
+ test -f $$i || touch $$i ; \
+ done \
+ fi
+ cd $(srcdir) && \
+ gtkdoc-scan --module=$(DOC_MODULE) --source-dir=$(DOC_SOURCE_DIR) --ignore-headers="$(IGNORE_HFILES)" $(SCAN_OPTIONS) $(EXTRA_HFILES)
+ touch scan-build.stamp
+
+$(DOC_MODULE)-decl.txt $(SCANOBJ_FILES): scan-build.stamp
+ @true
+
+#### templates ####
+
+tmpl-build.stamp: $(DOC_MODULE)-decl.txt $(SCANOBJ_FILES) $(DOC_MODULE)-sections.txt $(DOC_MODULE)-overrides.txt
+ @echo '*** Rebuilding template files ***'
+ cd $(srcdir) && gtkdoc-mktmpl --module=$(DOC_MODULE)
+ touch tmpl-build.stamp
+
+tmpl.stamp: tmpl-build.stamp
+ @true
+
+#### sgml ####
+
+sgml-build.stamp: tmpl.stamp $(CFILE_GLOB) $(srcdir)/tmpl/*.sgml
+ @echo '*** Building SGML ***'
+ cd $(srcdir) && \
+ gtkdoc-mkdb --module=$(DOC_MODULE) --source-dir=$(DOC_SOURCE_DIR) $(MKDB_OPTIONS)
+ touch sgml-build.stamp
+
+sgml.stamp: sgml-build.stamp
+ @true
+
+#### html ####
+
+html-build.stamp: sgml.stamp $(DOC_MAIN_SGML_FILE) $(content_files)
+ @echo '*** Building HTML ***'
+ test -d $(srcdir)/html || mkdir $(srcdir)/html
+ cd $(srcdir)/html && gtkdoc-mkhtml $(DOC_MODULE) ../$(DOC_MAIN_SGML_FILE)
+ test "x$(HTML_IMAGES)" = "x" || ( cd $(srcdir) && cp $(HTML_IMAGES) html )
+ @echo '-- Fixing Crossreferences'
+ cd $(srcdir) && gtkdoc-fixxref --module-dir=html --html-dir=$(HTML_DIR) $(FIXXREF_OPTIONS)
+ touch html-build.stamp
+endif
+
+##############
+
+clean-local:
+ rm -f *~ *.bak $(SCANOBJ_FILES) *-unused.txt $(DOC_STAMPS)
+
+maintainer-clean-local: clean
+ cd $(srcdir) && rm -rf sgml html $(DOC_MODULE)-decl-list.txt $(DOC_MODULE)-decl.txt
+
+install-data-local:
+ $(mkinstalldirs) $(DESTDIR)$(TARGET_DIR)
+ (installfiles=`echo $(srcdir)/html/*.html`; \
+ if test "$$installfiles" = '$(srcdir)/html/*.html'; \
+ then echo '-- Nothing to install' ; \
+ else \
+ for i in $$installfiles; do \
+ echo '-- Installing '$$i ; \
+ $(INSTALL_DATA) $$i $(DESTDIR)$(TARGET_DIR); \
+ done; \
+ echo '-- Installing $(srcdir)/html/index.sgml' ; \
+ $(INSTALL_DATA) $(srcdir)/html/index.sgml $(DESTDIR)$(TARGET_DIR) || :; \
+ fi)
+
+#
+# Require gtk-doc when making dist
+#
+if ENABLE_GTK_DOC
+dist-check-gtkdoc:
+else
+dist-check-gtkdoc:
+ @echo "*** gtk-doc must be installed and enabled in order to make dist"
+ @false
+endif
+
+dist-hook: dist-check-gtkdoc dist-hook-local
+ mkdir $(distdir)/tmpl
+ mkdir $(distdir)/sgml
+ mkdir $(distdir)/html
+ -cp $(srcdir)/tmpl/*.sgml $(distdir)/tmpl
+ -cp $(srcdir)/sgml/*.sgml $(distdir)/sgml
+ -cp $(srcdir)/html/*.html $(srcdir)/html/*.css $(distdir)/html
+
+ images=$(HTML_IMAGES) ; \
+ for i in $$images ; do \
+ cp $(srcdir)/$$i $(distdir)/html ; \
+ done
-include $(top_srcdir)/gtk-doc.make
+.PHONY : html sgml templates scan dist-hook-local