gplugin/gplugin

Start of gplugin-gtk docs
feature/gtk-doc
2017-08-01, Gary Kramlich
ad5a61020b96
Start of gplugin-gtk docs
--- a/gplugin-gtk/meson.build Mon Jul 31 22:55:34 2017 -0500
+++ b/gplugin-gtk/meson.build Tue Aug 01 22:23:57 2017 -0500
@@ -25,10 +25,10 @@
GPLUGIN_GTK_PRIVATE_HEADERS = [
]
-GPLUGIN_GTK_BUILT_SOURCES = [
+GPLUGIN_GTK_PUBLIC_BUILT_SOURCES = [
]
-GPLUGIN_GTK_BUILT_HEADERS = [
+GPLUGIN_GTK_PUBLIC_BUILT_HEADERS = [
]
###############################################################################
@@ -59,8 +59,8 @@
GPLUGIN_GTK_HEADERS,
GPLUGIN_GTK_PRIVATE_SOURCES,
GPLUGIN_GTK_PRIVATE_HEADERS,
- GPLUGIN_GTK_BUILT_SOURCES,
- GPLUGIN_GTK_BUILT_HEADERS,
+ GPLUGIN_GTK_PUBLIC_BUILT_SOURCES,
+ GPLUGIN_GTK_PUBLIC_BUILT_HEADERS,
c_args : ['-DGPLUGIN_GTK_COMPILATION', '-DG_LOG_DOMAIN="GPluginGtk"'],
include_directories : toplevel_inc,
dependencies : [gplugin_dep, GTK3],
@@ -68,16 +68,13 @@
install : true
)
-# install the normal includes into the gplugin-gtk subdirectory
-install_headers(
- GPLUGIN_GTK_HEADERS,
- subdir : 'gplugin-1.0/gplugin-gtk'
-)
+gplugin_gtk_inc = include_directories('.')
-# install the GtkBuilder files
-install_data(
- 'gplugin-gtk-plugin-info.ui',
- install_dir : join_paths(get_option('datadir'), 'gplugin', 'gplugin-gtk')
+gplugin_gtk_dep = declare_dependency(
+ include_directories: [toplevel_inc, gplugin_gtk_inc],
+ link_with : [gplugin, gplugin_gtk],
+ sources : GPLUGIN_GTK_PUBLIC_BUILT_HEADERS, # Ensure they're built before use.
+ dependencies : [GLIB, GOBJECT, GTK3],
)
pkgconfig.generate(
@@ -98,8 +95,7 @@
###############################################################################
gplugin_gtk_viewer = executable('gplugin-gtk-viewer',
'gplugin-gtk-viewer.c',
- link_with : [gplugin_gtk],
- dependencies : [gplugin_dep, GTK3],
+ dependencies : [gplugin_dep, gplugin_gtk_dep],
install : true
)
@@ -115,4 +111,26 @@
install_dir : join_paths(get_option('mandir'), 'man1'))
endif
+###############################################################################
+# Install Stuff
+###############################################################################
+# install the normal includes into the gplugin-gtk subdirectory
+install_headers(
+ GPLUGIN_GTK_HEADERS,
+ subdir : 'gplugin-1.0/gplugin-gtk'
+)
+
+# install the GtkBuilder files
+install_data(
+ 'gplugin-gtk-plugin-info.ui',
+ install_dir : join_paths(get_option('datadir'), 'gplugin', 'gplugin-gtk')
+)
+
+###############################################################################
+# subdirectories
+###############################################################################
+if ENABLE_DOC
+ subdir('reference')
+endif
+
endif # gtk3
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/gplugin-gtk/reference/gplugin-gtk-docs.xml Tue Aug 01 22:23:57 2017 -0500
@@ -0,0 +1,47 @@
+<?xml version="1.0"?>
+<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.1.2//EN"
+ "http://www.oasis-open.org/docbook/xml/4.1.2/docbookx.dtd" [
+
+<!ENTITY % local.common.attrib "xmlns:xi CDATA #FIXED 'http://www.w3.org/2003/XInclude'">
+<!ENTITY version SYSTEM "version.xml">
+]>
+<book id="index" xmlns:xi="http://www.w3.org/2003/XInclude">
+ <bookinfo>
+ <title>GPlugin Gtk+ Reference Manual</title>
+ <abstract>
+ <title>GPlugin Gtk+ &version;</title>
+ <para>
+ GPlugin Gtk+ is a GObject based library that implements a reusable plugin system that
+ supports loading plugins in other languages
+ via loaders. GPlugin also implements
+ dependencies among the plugins.
+ </para>
+ </abstract>
+ </bookinfo>
+
+ <part id="object-hierarchy">
+ <title>Object Hierarchy</title>
+
+ <xi:include href="xml/tree_index.sgml"/>
+ </part>
+
+ <part id="API">
+ <title>API Reference</title>
+
+ </part>
+
+ <index id="api-index-full">
+ <title>Index</title>
+ <xi:include href="xml/api-index-full.xml"><xi:fallback /></xi:include>
+ </index>
+ <index id="api-index-deprecated" role="deprecated">
+ <title>Index of deprecated symbols</title>
+ <xi:include href="xml/api-index-deprecated.xml"><xi:fallback /></xi:include>
+ </index>
+<!-- <index id="api-index-2.11.0" role="2.11.0">
+ <title>Index of new symbols in 2.11.0</title>
+ <xi:include href="xml/api-index-2.11.0.xml"><xi:fallback /></xi:include>
+ </index>
+ -->
+ <xi:include href="xml/annotation-glossary.xml"><xi:fallback /></xi:include>
+</book>
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/gplugin-gtk/reference/meson.build Tue Aug 01 22:23:57 2017 -0500
@@ -0,0 +1,38 @@
+DOC_MODULE = 'gplugin-gtk'
+
+# Header files or dirs to ignore when scanning. Use base file/dir names
+ignore_hfiles = [
+]
+ignore_hfiles += GPLUGIN_GTK_PRIVATE_HEADERS
+
+# Extra options to supply to gtkdoc-scan.
+scan_args = [
+ '--deprecated-guards=GPLUGIN_GTK_DISABLE_DEPRECATED',
+ '--rebuild-types',
+ '--rebuild-sections',
+ '--ignore-headers=' + ' '.join(ignore_hfiles),
+]
+
+# Extra options to supply to gtkdoc-mkdb.
+mkdb_args = [
+ '--ignore-files=' + ' '.join(ignore_hfiles),
+]
+
+gplugin_gtk_version_xml = configure_file(
+ input : 'version.xml.in',
+ output : 'version.xml',
+ configuration : version_conf)
+
+content_files = [
+]
+
+gnome.gtkdoc(DOC_MODULE,
+ main_xml : DOC_MODULE + '-docs.xml',
+ src_dir : gplugin_gtk_inc,
+ dependencies : gplugin_gtk_dep,
+ install : true,
+ scan_args : scan_args,
+ mkdb_args : mkdb_args,
+ gobject_typesfile : DOC_MODULE + '.types',
+ content_files : content_files,
+)
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/gplugin-gtk/reference/version.xml.in Tue Aug 01 22:23:57 2017 -0500
@@ -0,0 +1,1 @@
+@GPLUGIN_GTK_VERSION@