[gnome-todo/wip/gbsneto/documentation] docs: add documentation



commit c8d31568338723c4a4164d3add2bc709434c16ec
Author: Georges Basile Stavracas Neto <georges stavracas gmail com>
Date:   Mon Apr 25 21:28:23 2016 -0300

    docs: add documentation

 Makefile.am                  |    7 ++-
 autogen.sh                   |    1 +
 configure.ac                 |   18 ++++++
 doc/Makefile.am              |    3 +
 doc/reference/Makefile.am    |  127 ++++++++++++++++++++++++++++++++++++++++++
 doc/reference/version.xml.in |    1 +
 src/Makefile.am              |   81 +++++++++++++++++++++++++++
 7 files changed, 236 insertions(+), 2 deletions(-)
---
diff --git a/Makefile.am b/Makefile.am
index fa7745f..2d4066b 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -2,8 +2,8 @@ include $(top_srcdir)/common.am
 
 ACLOCAL_AMFLAGS = --install -I m4 ${ACLOCAL_FLAGS}
 
-SUBDIRS = plugins src data po
-DIST_SUBDIRS = src data plugins po
+SUBDIRS = plugins src data po doc
+DIST_SUBDIRS = $(SUBDIRS)
 
 INTLTOOL_FILES = \
        intltool-extract.in \
@@ -25,6 +25,7 @@ DISTCLEANFILES = \
 
 DISTCHECK_CONFIGURE_FLAGS = \
        --enable-appstream-util \
+       --disable-gtk-doc \
        --enable-introspection
 
 # Remove doc directory on uninstall
@@ -38,6 +39,8 @@ GITIGNOREFILES = \
        build-aux \
        config \
        config.h.in \
+       gtk-doc.m4 \
+       gtk-doc.make \
        m4 \
        src/.deps \
        src/Makefile \
diff --git a/autogen.sh b/autogen.sh
index d841196..08e886a 100755
--- a/autogen.sh
+++ b/autogen.sh
@@ -24,6 +24,7 @@ fi
 set -x
 aclocal --install || exit $?
 intltoolize --force --copy --automake || exit $?
+gtkdocize || exit 1
 autoreconf --verbose --force --install -Wno-portability || exit $?
 
 cd $olddir
diff --git a/configure.ac b/configure.ac
index d726a14..2d8f855 100644
--- a/configure.ac
+++ b/configure.ac
@@ -88,6 +88,20 @@ dnl Plugins
 dnl ================================================================
 GNOME_TODO_ADD_PLUGIN([eds], [Evolution-Data-Server], [yes])
 
+
+dnl ***********************************************************************
+dnl Support for gtk-doc Documentation Engine
+dnl ***********************************************************************
+GTK_DOC_CHECK([1.14],[--flavour no-tmpl])
+AM_CONDITIONAL(ENABLE_GTK_DOC, test "x$enable_gtk_doc" = "xyes")
+AC_ARG_ENABLE(doc-cross-references,
+              AS_HELP_STRING([--disable-doc-cross-references],
+                             [cross reference symbols from other libraries @<:@default=yes@:>@]),
+              enable_doc_cross_references=$enableval,
+              enable_doc_cross_references=yes)
+AM_CONDITIONAL(ENABLE_DOC_CROSS_REFERENCES, test x$enable_doc_cross_references != xno)
+
+
 AC_CONFIG_FILES([
       Makefile
       src/Makefile
@@ -95,6 +109,9 @@ AC_CONFIG_FILES([
       data/icons/Makefile
       data/gnome-todo.pc
       data/org.gnome.Todo.desktop.in
+      doc/Makefile
+      doc/reference/Makefile
+      doc/reference/version.xml
       plugins/Makefile
       po/Makefile.in
 ])
@@ -114,6 +131,7 @@ echo "
        project flags: ${GNOME_TODO_CFLAGS} ${GNOME_TODO_LIBS} ${LIBS}
         warning flags: ${GNOME_TODO_WARN_CFLAGS} ${GNOME_TODO_WARN_LDFLAGS}
         release:       ${ax_is_release}
+        documentation: ${enable_gtk_doc}
 
         Now type 'make' to build $PACKAGE
 "
diff --git a/doc/Makefile.am b/doc/Makefile.am
new file mode 100644
index 0000000..034926c
--- /dev/null
+++ b/doc/Makefile.am
@@ -0,0 +1,3 @@
+SUBDIRS = reference
+
+-include $(top_srcdir)/git.mk
diff --git a/doc/reference/Makefile.am b/doc/reference/Makefile.am
new file mode 100644
index 0000000..00255a7
--- /dev/null
+++ b/doc/reference/Makefile.am
@@ -0,0 +1,127 @@
+## Process this file with automake to produce Makefile.in
+
+# see /gtk-doc/examples/Makefile.am
+
+# We require automake 1.6 at least.
+AUTOMAKE_OPTIONS = 1.6
+
+# The name of the module, e.g. 'glib'.
+DOC_MODULE=gnome-todo
+
+# The top-level SGML file. You can change this if you want to.
+DOC_MAIN_SGML_FILE=$(DOC_MODULE)-docs.sgml
+
+# The directory containing the source code. Relative to $(srcdir).
+# gtk-doc will search all .c & .h files beneath here for inline comments
+# documenting the functions and macros.
+DOC_SOURCE_DIR=$(top_srcdir)/src
+
+# 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-types
+
+# Extra options to supply to gtkdoc-mkdb.
+MKDB_OPTIONS=--sgml-mode --output-format=xml
+
+# Extra options to supply to gtkdoc-mktmpl
+# e.g. MKTMPL_OPTIONS=--only-section-tmpl
+MKTMPL_OPTIONS=
+
+if ENABLE_DOC_CROSS_REFERENCES
+# 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 = \
+       --extra-dir=$(GLIB_PREFIX)/share/gtk-doc/html/glib              \
+       --extra-dir=$(GLIB_PREFIX)/share/gtk-doc/html/gmodule           \
+       --extra-dir=$(GLIB_PREFIX)/share/gtk-doc/html/gobject           \
+       --extra-dir=$(GLIB_PREFIX)/share/gtk-doc/html/gio               \
+       --extra-dir=$(GTK_PREFIX)/share/gtk-doc/html/gtk                \
+       --extra-dir=$(GTK_PREFIX)/share/gtk-doc/html/gtksourceview-3.0
+endif
+
+# Used for dependencies. The docs will be rebuilt if any of these change.
+HFILE_GLOB = \
+       $(top_srcdir)/src/gtd*.h \
+       $(top_srcdir)/src/*/gtd-*.h \
+       $(NULL)
+CFILE_GLOB = \
+       $(top_srcdir)/src/gtd*.c \
+       $(top_srcdir)/src/*/gtd-*.c \
+       $(NULL)
+
+# Header files to ignore when scanning.
+IGNORE_HFILES = \
+       gtd-application.h \
+       gtd-arrow-frame.h \
+       gtd-edit-pane.h \
+       gtd-enum-types.h \
+       gtd-initial-setup-window.h \
+       gtd-list-selector.h \
+       gtd-list-selector-grid.h \
+       gtd-list-selector-grid-item.h \
+       gtd-list-selector-item.h \
+       gtd-list-selector-list.h \
+       gtd-list-selector-list-item.h \
+       gtd-list-selector-panel.h \
+       gtd-notification-widget.h \
+       gtd-plugin-dialog.h \
+       gtd-plugin-dialog-row.h \
+       gtd-plugin-manager.h \
+       gtd-provider-dialog.h \
+       gtd-provider-popover.h \
+       gtd-provider-row.h \
+       gtd-provider-selector.h \
+       gtd-resources.h \
+       gtd-task-row.h \
+       gtd-types.h
+
+# Images to copy into HTML directory.
+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 = \
+       version.xml
+
+# 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.
+GTKDOC_CFLAGS = \
+       -I$(top_srcdir)/src \
+       -I$(top_builddir)/src \
+       $(GNOME_TODO_CFLAGS)
+
+GTKDOC_LIBS = \
+       $(top_builddir)/src/libgnome-todo.la \
+       $(GNOME_TODO_LIBS)
+
+# This includes the standard gtk-doc make rules, copied by gtkdocize.
+include $(top_srcdir)/gtk-doc.make
+
+# Other files to distribute
+EXTRA_DIST += \
+       version.xml.in
+
+
+if ENABLE_GTK_DOC
+
+TESTS_ENVIRONMENT = \
+       SRCDIR=$(abs_srcdir)                            \
+       BUILDDIR=$(abs_builddir)                        \
+       DOC_MODULE=$(DOC_MODULE)                        \
+       DOC_MAIN_SGML_FILE=$(DOC_MAIN_SGML_FILE)
+
+check-local: $(GTKDOC_CHECK)
+       @$(TESTS_ENVIRONMENT) ./$(GTKDOC_CHECK)
+
+endif
+
+-include $(top_srcdir)/git.mk
diff --git a/doc/reference/version.xml.in b/doc/reference/version.xml.in
new file mode 100644
index 0000000..d78bda9
--- /dev/null
+++ b/doc/reference/version.xml.in
@@ -0,0 +1 @@
+ VERSION@
diff --git a/src/Makefile.am b/src/Makefile.am
index 428226d..b3e8dd0 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -153,6 +153,87 @@ EXTRA_DIST = \
 
 
 #==================================
+# Documentation
+#==================================
+if ENABLE_GTK_DOC
+
+noinst_LTLIBRARIES = libgnome-todo.la
+
+libgnome_todo_la_SOURCES = \
+       engine/gtd-manager.c \
+       engine/gtd-manager.h \
+       engine/gtd-manager-protected.h \
+       engine/gtd-plugin-manager.c \
+       engine/gtd-plugin-manager.h \
+       interfaces/gtd-activatable.c \
+       interfaces/gtd-activatable.h \
+       interfaces/gtd-panel.c \
+       interfaces/gtd-panel.h \
+       interfaces/gtd-provider.c \
+       interfaces/gtd-provider.h \
+       notification/gtd-notification.c \
+       notification/gtd-notification.h \
+       notification/gtd-notification-widget.c \
+       notification/gtd-notification-widget.h \
+       provider/gtd-provider-dialog.c \
+       provider/gtd-provider-dialog.h \
+       provider/gtd-provider-popover.c \
+       provider/gtd-provider-popover.h \
+       provider/gtd-provider-row.c \
+       provider/gtd-provider-row.h \
+       provider/gtd-provider-selector.c \
+       provider/gtd-provider-selector.h \
+       views/gtd-list-selector.c \
+       views/gtd-list-selector.h \
+       views/gtd-list-selector-grid.c \
+       views/gtd-list-selector-grid.h \
+       views/gtd-list-selector-grid-item.c \
+       views/gtd-list-selector-grid-item.h \
+       views/gtd-list-selector-item.c \
+       views/gtd-list-selector-item.h \
+       views/gtd-list-selector-list.c \
+       views/gtd-list-selector-list.h \
+       views/gtd-list-selector-list-item.c \
+       views/gtd-list-selector-list-item.h \
+       views/gtd-list-selector-panel.c \
+       views/gtd-list-selector-panel.h \
+       gtd-application.c \
+       gtd-application.h \
+       gtd-arrow-frame.c \
+       gtd-arrow-frame.h \
+       gtd-edit-pane.c \
+       gtd-edit-pane.h \
+       gtd-enums.h \
+       gtd-initial-setup-window.c \
+       gtd-initial-setup-window.h \
+       gtd-object.c \
+       gtd-object.h \
+       gtd-plugin-dialog.c \
+       gtd-plugin-dialog.h \
+       gtd-plugin-dialog-row.c \
+       gtd-plugin-dialog-row.h \
+       gtd-task.c \
+       gtd-task.h \
+       gtd-task-list.c \
+       gtd-task-list.h \
+       gtd-task-list-view.c \
+       gtd-task-list-view.h \
+       gtd-task-row.c \
+       gtd-task-row.h \
+       gtd-types.h \
+       gtd-window.c \
+       gtd-window.h
+
+libgnome_todo_la_CFLAGS = \
+       $(GNOME_TODO_CFLAGS) \
+       $(GNOME_TODO_WARN_CFLAGS)
+
+libgnome_todo_la_LDFLAGS = \
+       -Wl,--export-dynamic
+
+endif
+
+#==================================
 # GObject introspection
 #==================================
 if HAVE_INTROSPECTION


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]