summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorThomas Wood <thomas.wood@intel.com>2014-03-11 16:04:28 +0000
committerDaniel Vetter <daniel.vetter@ffwll.ch>2014-03-11 17:19:47 +0100
commit14ea2a04ebfa287e33b69a3bc7e47f02ba93c9ed (patch)
tree92979ef4b06e2e8cb61287076d364cfe76c43ddf
parentc769d0988b7fae0e758046ba165c9c52c4f2816a (diff)
Add API documentation support
Add optional support for building API documentation using gtk-doc. Signed-off-by: Thomas Wood <thomas.wood@intel.com> Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
-rw-r--r--.gitignore3
-rw-r--r--Makefile.am2
-rw-r--r--NEWS2
-rwxr-xr-xautogen.sh7
-rw-r--r--configure.ac12
-rw-r--r--docs/Makefile.am1
-rw-r--r--docs/reference/Makefile.am1
-rw-r--r--docs/reference/intel-gpu-tools/.gitignore26
-rw-r--r--docs/reference/intel-gpu-tools/Makefile.am105
-rw-r--r--docs/reference/intel-gpu-tools/intel-gpu-tools-docs.xml40
-rw-r--r--docs/reference/intel-gpu-tools/version.xml.in1
11 files changed, 199 insertions, 1 deletions
diff --git a/.gitignore b/.gitignore
index 28ef75b8..c622b7cf 100644
--- a/.gitignore
+++ b/.gitignore
@@ -83,3 +83,6 @@ TAGS
build-aux/
__pycache__
version.h
+
+gtk-doc.make
+gtk-doc.m4
diff --git a/Makefile.am b/Makefile.am
index 431e7b41..9949679b 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -21,7 +21,7 @@
ACLOCAL_AMFLAGS = ${ACLOCAL_FLAGS} -I m4
-SUBDIRS = lib man tools scripts benchmarks demos overlay
+SUBDIRS = docs lib man tools scripts benchmarks demos overlay
if BUILD_ASSEMBLER
SUBDIRS += assembler
diff --git a/NEWS b/NEWS
index 75352ae6..22bb0142 100644
--- a/NEWS
+++ b/NEWS
@@ -26,6 +26,8 @@ Release 1.6 (2014-XX-YY)
- Broadwell support for intel_audio_dump (Mengdong Lin).
+- API documentation support (Thomas)
+
Release 1.5 (2013-11-06)
------------------------
diff --git a/autogen.sh b/autogen.sh
index 354f254e..629a2575 100755
--- a/autogen.sh
+++ b/autogen.sh
@@ -6,6 +6,13 @@ test -z "$srcdir" && srcdir=.
ORIGDIR=`pwd`
cd $srcdir
+if ! type gtkdocize > /dev/null 2>&1; then
+ echo "EXTRA_DIST =" > gtk-doc.make
+ echo "CLEANFILES =" >> gtk-doc.make
+else
+ gtkdocize || exit $?
+fi
+
autoreconf -v --install || exit 1
cd $ORIGDIR || exit $?
diff --git a/configure.ac b/configure.ac
index 4aee793e..2c991a85 100644
--- a/configure.ac
+++ b/configure.ac
@@ -42,6 +42,14 @@ AC_PROG_CC
AM_PROG_LEX
AC_PROG_YACC
+# check for gtk-doc
+m4_ifdef([GTK_DOC_CHECK], [
+GTK_DOC_CHECK([1.14],[--flavour no-tmpl])
+],[
+AM_CONDITIONAL([ENABLE_GTK_DOC], false)
+])
+
+
# Checks for functions, headers, structures, etc.
AC_HEADER_STDC
AC_CHECK_HEADERS([termios.h])
@@ -192,6 +200,10 @@ AC_CONFIG_FILES([
Makefile
benchmarks/Makefile
demos/Makefile
+ docs/Makefile
+ docs/reference/Makefile
+ docs/reference/intel-gpu-tools/Makefile
+ docs/reference/intel-gpu-tools/version.xml
lib/Makefile
man/Makefile
scripts/Makefile
diff --git a/docs/Makefile.am b/docs/Makefile.am
new file mode 100644
index 00000000..b68c7745
--- /dev/null
+++ b/docs/Makefile.am
@@ -0,0 +1 @@
+SUBDIRS=reference
diff --git a/docs/reference/Makefile.am b/docs/reference/Makefile.am
new file mode 100644
index 00000000..4f579b58
--- /dev/null
+++ b/docs/reference/Makefile.am
@@ -0,0 +1 @@
+SUBDIRS = intel-gpu-tools
diff --git a/docs/reference/intel-gpu-tools/.gitignore b/docs/reference/intel-gpu-tools/.gitignore
new file mode 100644
index 00000000..9415974c
--- /dev/null
+++ b/docs/reference/intel-gpu-tools/.gitignore
@@ -0,0 +1,26 @@
+/gtkdoc-check.log
+/gtkdoc-check.trs
+/html-build.stamp
+/html.stamp
+/html/
+/intel-gpu-tools-decl-list.txt
+/intel-gpu-tools-decl.txt
+/intel-gpu-tools-overrides.txt
+/intel-gpu-tools-sections.txt
+/intel-gpu-tools-undeclared.txt
+/intel-gpu-tools-undocumented.txt
+/intel-gpu-tools-unused.txt
+/intel-gpu-tools.args
+/intel-gpu-tools.hierarchy
+/intel-gpu-tools.interfaces
+/intel-gpu-tools.prerequisites
+/intel-gpu-tools.signals
+/intel-gpu-tools.types
+/scan-build.stamp
+/setup-build.stamp
+/sgml-build.stamp
+/sgml.stamp
+/test-suite.log
+/version.xml
+/xml/
+
diff --git a/docs/reference/intel-gpu-tools/Makefile.am b/docs/reference/intel-gpu-tools/Makefile.am
new file mode 100644
index 00000000..daaa3f42
--- /dev/null
+++ b/docs/reference/intel-gpu-tools/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=intel-gpu-tools
+
+# Uncomment for versioned docs and specify the version of the module, e.g. '2'.
+#DOC_MODULE_VERSION=2
+
+
+# The top-level XML file (SGML in the past). You can change this if you want to.
+DOC_MAIN_SGML_FILE=$(DOC_MODULE)-docs.xml
+
+# Directories containing the source code.
+# gtk-doc will search all .c and .h files beneath these paths
+# for inline comments documenting functions and macros.
+# e.g. DOC_SOURCE_DIR=$(top_srcdir)/gtk $(top_srcdir)/gdk
+DOC_SOURCE_DIR=$(top_srcdir)/lib
+
+# 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=
+
+# 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=$(top_srcdir)/lib/*.h
+CFILE_GLOB=$(top_srcdir)/lib/*.c
+
+# 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=gen6_render.h gen7_media.h gen7_render.h gen8_media.h gen8_render.h i830_reg.h i915_3d.h i915_pciids.h i915_reg.h intel_reg.h
+
+# 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/reference/intel-gpu-tools/intel-gpu-tools-docs.xml b/docs/reference/intel-gpu-tools/intel-gpu-tools-docs.xml
new file mode 100644
index 00000000..a3a66f53
--- /dev/null
+++ b/docs/reference/intel-gpu-tools/intel-gpu-tools-docs.xml
@@ -0,0 +1,40 @@
+<?xml version="1.0"?>
+<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN"
+ "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd"
+[
+ <!ENTITY % local.common.attrib "xmlns:xi CDATA #FIXED 'http://www.w3.org/2003/XInclude'">
+ <!ENTITY version SYSTEM "version.xml">
+]>
+<book id="index">
+ <bookinfo>
+ <title>intel-gpu-tools Reference Manual</title>
+ <releaseinfo>
+ for intel-gpu-tools &version;.
+ </releaseinfo>
+ </bookinfo>
+
+ <chapter>
+ <title>Intel GPU Tools</title>
+ <xi:include href="xml/debug.xml"/>
+ <xi:include href="xml/drmtest.xml"/>
+ <xi:include href="xml/igt_debugfs.xml"/>
+ <xi:include href="xml/igt_display.xml"/>
+ <xi:include href="xml/igt_kms.xml"/>
+ <xi:include href="xml/intel_batchbuffer.xml"/>
+ <xi:include href="xml/intel_chipset.xml"/>
+ <xi:include href="xml/intel_gpu_tools.xml"/>
+ <xi:include href="xml/media_fill.xml"/>
+ <xi:include href="xml/rendercopy.xml"/>
+
+ </chapter>
+ <index id="api-index-full">
+ <title>API Index</title>
+ <xi:include href="xml/api-index-full.xml"><xi:fallback /></xi:include>
+ </index>
+ <index id="deprecated-api-index" role="deprecated">
+ <title>Index of deprecated API</title>
+ <xi:include href="xml/api-index-deprecated.xml"><xi:fallback /></xi:include>
+ </index>
+
+ <xi:include href="xml/annotation-glossary.xml"><xi:fallback /></xi:include>
+</book>
diff --git a/docs/reference/intel-gpu-tools/version.xml.in b/docs/reference/intel-gpu-tools/version.xml.in
new file mode 100644
index 00000000..a24f9877
--- /dev/null
+++ b/docs/reference/intel-gpu-tools/version.xml.in
@@ -0,0 +1 @@
+@PACKAGE_VERSION@