From 4ed1303901567aa41d95de073877f465275a6a25 Mon Sep 17 00:00:00 2001 From: Ulrik Sverdrup Date: Sun, 8 May 2011 05:30:15 +0200 Subject: [PATCH] Use gtk-doc for reference documentation --- Makefile.am | 4 +- configure.ac | 7 +++ docs/Makefile.am | 105 +++++++++++++++++++++++++++++++++++ docs/keybinder-docs.sgml | 37 ++++++++++++ docs/keybinder-overrides.txt | 0 5 files changed, 151 insertions(+), 2 deletions(-) create mode 100644 docs/Makefile.am create mode 100644 docs/keybinder-docs.sgml create mode 100644 docs/keybinder-overrides.txt diff --git a/Makefile.am b/Makefile.am index 9392e39..8bf1494 100644 --- a/Makefile.am +++ b/Makefile.am @@ -1,4 +1,4 @@ -SUBDIRS = libkeybinder +SUBDIRS = libkeybinder docs if HAVE_PYTHON SUBDIRS += python-keybinder @@ -28,4 +28,4 @@ DISTCLEANFILES = \ ACLOCAL_AMFLAGS = -I m4 -DISTCHECK_CONFIGURE_FLAGS = --enable-introspection +DISTCHECK_CONFIGURE_FLAGS = --enable-introspection --enable-gtk-doc diff --git a/configure.ac b/configure.ac index 825873f..2ba0965 100644 --- a/configure.ac +++ b/configure.ac @@ -190,6 +190,12 @@ else fi AM_CONDITIONAL(HAVE_LUA, test "x$have_lua" = "xyes") +dnl *** +dnl * GTK DOC +dnl *** + +GTK_DOC_CHECK([1.14], [--flavour no-tmpl]) + dnl **************************************************************************** dnl * -------------------------------------------------------------------------- dnl **************************************************************************** @@ -200,6 +206,7 @@ libkeybinder/$PACKAGE_NAME.pc lua-keybinder/Makefile python-keybinder/__init__.py python-keybinder/Makefile +docs/Makefile ]) echo diff --git a/docs/Makefile.am b/docs/Makefile.am new file mode 100644 index 0000000..6387822 --- /dev/null +++ b/docs/Makefile.am @@ -0,0 +1,105 @@ +## Process this file with automake to produce Makefile.in + +# We require automake 1.6 at least. +AUTOMAKE_OPTIONS = 1.6 + +# This is a blank Makefile.am for using gtk-doc. +# Copy this to your project's API docs directory and modify the variables to +# suit your project. See the GTK+ Makefiles in gtk+/docs/reference for examples +# of using the various options. + +# The name of the module, e.g. 'glib'. +DOC_MODULE = keybinder + +# Uncomment for versioned docs and specify the version of the module, e.g. '2'. +#DOC_MODULE_VERSION=$(VERSION) + + +# The top-level SGML file. You can change this if you want to. +DOC_MAIN_SGML_FILE=$(DOC_MODULE)-docs.sgml + +# Directories containing the source code, relative to $(srcdir). +# gtk-doc will search all .c and .h files beneath these paths +# for inline comments documenting functions and macros. +# e.g. DOC_SOURCE_DIR=../../../gtk ../../../gdk +DOC_SOURCE_DIR= ../libkeybinder + +# Extra options to pass to gtkdoc-scangobj. Not normally needed. +SCANGOBJ_OPTIONS= + +# Extra options to supply to gtkdoc-scan. +# e.g. SCAN_OPTIONS=--deprecated-guards="GTK_DISABLE_DEPRECATED" +SCAN_OPTIONS= --rebuild-sections --rebuild-types + +# Extra options to supply to gtkdoc-mkdb. +# e.g. MKDB_OPTIONS=--xml-mode --output-format=xml +MKDB_OPTIONS=--xml-mode --output-format=xml + +# Extra options to supply to gtkdoc-mktmpl +# e.g. MKTMPL_OPTIONS=--only-section-tmpl +MKTMPL_OPTIONS= + +# Extra options to supply to gtkdoc-mkhtml +MKHTML_OPTIONS= + +# Extra options to supply to gtkdoc-fixref. Not normally needed. +# e.g. FIXXREF_OPTIONS=--extra-dir=../gdk-pixbuf/html --extra-dir=../gdk/html +FIXXREF_OPTIONS= + +# Used for dependencies. The docs will be rebuilt if any of these change. +# e.g. HFILE_GLOB=$(top_srcdir)/gtk/*.h +# e.g. CFILE_GLOB=$(top_srcdir)/gtk/*.c +HFILE_GLOB= +CFILE_GLOB= + +# Extra header to include when scanning, which are not under DOC_SOURCE_DIR +# e.g. EXTRA_HFILES=$(top_srcdir}/contrib/extra.h +EXTRA_HFILES= + +# Header files or dirs to ignore when scanning. Use base file/dir names +# e.g. IGNORE_HFILES=gtkdebug.h gtkintl.h private_code +IGNORE_HFILES= + +# Images to copy into HTML directory. +# e.g. HTML_IMAGES=$(top_srcdir)/gtk/stock-icons/stock_about_24.png +HTML_IMAGES= + +# Extra SGML files that are included by $(DOC_MAIN_SGML_FILE). +# e.g. content_files=running.sgml building.sgml changes-2.0.sgml +content_files= + +# SGML files where gtk-doc abbrevations (#GtkWidget) are expanded +# These files must be listed here *and* in content_files +# e.g. expand_content_files=running.sgml +expand_content_files= + +# CFLAGS and LDFLAGS for compiling gtkdoc-scangobj with your library. +# Only needed if you are using gtkdoc-scangobj to dynamically query widget +# signals and properties. +# e.g. GTKDOC_CFLAGS=-I$(top_srcdir) -I$(top_builddir) $(GTK_DEBUG_FLAGS) +# e.g. GTKDOC_LIBS=$(top_builddir)/gtk/$(gtktargetlib) +GTKDOC_CFLAGS= +GTKDOC_LIBS= + +# This includes the standard gtk-doc make rules, copied by gtkdocize. +include $(top_srcdir)/gtk-doc.make + +# Other files to distribute +# e.g. EXTRA_DIST += version.xml.in +EXTRA_DIST += + +# Files not to distribute +# for --rebuild-types in $(SCAN_OPTIONS), e.g. $(DOC_MODULE).types +# for --rebuild-sections in $(SCAN_OPTIONS) e.g. $(DOC_MODULE)-sections.txt +#DISTCLEANFILES += + +# Comment this out if you want 'make check' to test you doc status +# and run some sanity checks +if ENABLE_GTK_DOC +TESTS_ENVIRONMENT = cd $(srcdir) && \ + DOC_MODULE=$(DOC_MODULE) DOC_MAIN_SGML_FILE=$(DOC_MAIN_SGML_FILE) \ + SRCDIR=$(abs_srcdir) BUILDDIR=$(abs_builddir) +#TESTS = $(GTKDOC_CHECK) +endif + +-include $(top_srcdir)/git.mk diff --git a/docs/keybinder-docs.sgml b/docs/keybinder-docs.sgml new file mode 100644 index 0000000..b686d33 --- /dev/null +++ b/docs/keybinder-docs.sgml @@ -0,0 +1,37 @@ + + +]> + + + libkeybinder Reference Manual + + + + + + + libkeybinder + + + + + Object Hierarchy + + + + API Index + + + + Index of deprecated API + + + + + diff --git a/docs/keybinder-overrides.txt b/docs/keybinder-overrides.txt new file mode 100644 index 0000000..e69de29