Use new gtk-doc features available in latest gdbus-codegen(1)
authorDavid Zeuthen <davidz@redhat.com>
Mon, 6 Sep 2010 18:35:08 +0000 (14:35 -0400)
committerDavid Zeuthen <davidz@redhat.com>
Mon, 6 Sep 2010 18:35:08 +0000 (14:35 -0400)
Signed-off-by: David Zeuthen <davidz@redhat.com>
doc/Makefile.am
doc/udisks-docs.xml
doc/udisks-sections.txt.in [new file with mode: 0644]
doc/udisks.types.in [new file with mode: 0644]
src/Makefile.am
src/udisksdaemon.c
src/udisksfilesystemimpl.c
src/udiskslinuxblock.c
src/udiskslinuxprovider.c

index fea5be1..5ca5f18 100644 (file)
@@ -1,85 +1,87 @@
 
-SUBDIRS = man dbus
-
 NULL =
 
-AUTOMAKE_OPTIONS = 1.7
+SUBDIRS = man
 
 # The name of the module.
 DOC_MODULE=udisks
 
 # The top-level SGML file.
-DOC_MAIN_SGML_FILE=udisks-docs.xml
+DOC_MAIN_SGML_FILE=$(DOC_MODULE)-docs.xml
+
+udisks.types : udisks.types.in $(top_srcdir)/udisks/generated-bindings.types udisks-sections.txt.in $(top_srcdir)/udisks/generated-bindings-sections.txt
+       cat $(top_srcdir)/udisks/generated-bindings.types udisks.types.in > udisks.types
+       cat $(top_srcdir)/udisks/generated-bindings-sections.txt udisks-sections.txt.in > udisks-sections.txt
+
+scan-build.stamp : udisks.types
 
 # Extra options to supply to gtkdoc-scan
-SCAN_OPTIONS=--ignore-headers=config.h
+SCAN_OPTIONS=
 
 # The directory containing the source code. Relative to $(srcdir)
-DOC_SOURCE_DIR=../policy
+DOC_SOURCE_DIR=$(top_srcdir)
 
-# Used for dependencies
-HFILE_GLOB=
-#$(top_srcdir)/policy/*.h
-CFILE_GLOB=
-#$(top_srcdir)/policy/*.c
+HFILE_GLOB=$(top_srcdir)/udisks/*.h $(top_srcdir)/src/*.h
+CFILE_GLOB=$(top_srcdir)/udisks/*.c $(top_srcdir)/src/*.c
 
 # Headers to ignore
-IGNORE_HFILES= \
+IGNORE_HFILES=                         \
+       config.h                        \
        $(NULL)
 
 # CFLAGS and LDFLAGS for compiling scan program. Only needed
 # if $(DOC_MODULE).types is non-empty.
 INCLUDES = \
-       $(DBUS_GLIB_CFLAGS)             \
+       -I$(srcdir)                     \
+       -I$(top_srcdir)                 \
+       -I$(top_builddir)               \
        $(GLIB_CFLAGS)                  \
-       -I$(top_srcdir)/policy          \
-       -I$(top_builddir)/policy        \
+       $(GIO_CFLAGS)                   \
        $(NULL)
 
-GTKDOC_LIBS =                  \
-       $(DBUS_GLIB_LIBS)       \
+GTKDOC_LIBS =                                  \
+       $(GLIB_LIBS)                            \
+       $(GIO_LIBS)                             \
+       $(top_builddir)/udisks/libudisks.la     \
+       $(top_builddir)/src/libudisks-daemon.la \
        $(NULL)
 
 # Extra options to supply to gtkdoc-mkdb
-MKDB_OPTIONS=--sgml-mode --output-format=xml
-
-# Extra options to supply to gtkdoc-mktmpl
-MKTMPL_OPTIONS=
-
-# Non-autogenerated SGML files to be included in $(DOC_MAIN_SGML_FILE)
-content_files =                                                \
-       version.xml                                             \
-       man/udisks.xml                                          \
-       man/udisks-daemon.xml                                   \
-       man/udisks7.xml                                         \
-       man/udisks-tcp-bridge.xml                               \
-       dbus/org.freedesktop.UDisks.ref.xml                     \
-       dbus/org.freedesktop.UDisks.Device.ref.xml              \
-       dbus/org.freedesktop.UDisks.Adapter.ref.xml             \
-       dbus/org.freedesktop.UDisks.Port.ref.xml                \
-       dbus/org.freedesktop.UDisks.Expander.ref.xml            \
-       $(NULL)
+MKDB_OPTIONS = --output-format=xml --sgml-mode --name-space=udisks
 
 # Images to copy into HTML directory
-HTML_IMAGES =                          \
+HTML_IMAGES =                  \
        $(NULL)
 
-# Extra options to supply to gtkdoc-fixref
-FIXXREF_OPTIONS=
+content_files =                        \
+       $(NULL)
+
+expand_content_files =         \
+       $(NULL)
 
-MAINTAINERCLEANFILES =         \
-       *~                      \
-       Makefile.in             \
-       udisks.types            \
-       udisks-*.txt            \
+extra_files =                  \
        $(NULL)
 
-if ENABLE_GTK_DOC
 include $(top_srcdir)/gtk-doc.make
-else
-EXTRA_DIST =
-endif
 
-# Version information for marking the documentation
-EXTRA_DIST += version.xml.in
 
+EXTRA_DIST +=                  \
+       version.xml.in
+
+CLEANFILES +=                  \
+       $(DOC_MODULE)-decl-list.txt     \
+       $(DOC_MODULE)-decl.txt          \
+       $(DOC_MODULE)-overrides.txt     \
+       $(DOC_MODULE)-sections.txt      \
+       $(DOC_MODULE)-undeclared.txt    \
+       $(DOC_MODULE)-undocumented.txt  \
+       $(DOC_MODULE)-unused.txt        \
+       $(DOC_MODULE).args              \
+       $(DOC_MODULE).hierarchy         \
+       $(DOC_MODULE).interfaces        \
+       $(DOC_MODULE).prerequisites     \
+       $(DOC_MODULE).signals           \
+       $(DOC_MODULE).types             \
+       *.stamp                         \
+       -rf xml html tmpl               \
+       $(NULL)
index 4091e3c..7d927fe 100644 (file)
     </legalnotice>
   </bookinfo>
 
-  <reference id="ref-dbus">
+  <reference id="ref-library">
+    <title>Library API Reference</title>
+    <partintro>
+      <para>
+       This part documents the library interfaces in libudisks.
+      </para>
+    </partintro>
+  </reference>
+
+  <reference id="ref-dbus-api">
     <title>D-Bus API Reference</title>
     <partintro>
       <para>
-       This part documents the D-Bus interface used to access the
-       udisks daemon.
+       This part documents the D-Bus interfaces exposed by udisks.
       </para>
     </partintro>
-    <xi:include href="dbus/org.freedesktop.UDisks.ref.xml"/>
-    <xi:include href="dbus/org.freedesktop.UDisks.Device.ref.xml"/>
-    <xi:include href="dbus/org.freedesktop.UDisks.Adapter.ref.xml"/>
-    <xi:include href="dbus/org.freedesktop.UDisks.Expander.ref.xml"/>
-    <xi:include href="dbus/org.freedesktop.UDisks.Port.ref.xml"/>
+    <xi:include href="xml/generated-udisksblockdevice.xml"/>
+    <xi:include href="xml/generated-udisksblockdeviceprobed.xml"/>
+    <xi:include href="xml/generated-udisksfilesystem.xml"/>
+    <xi:include href="xml/generated-udisksjob.xml"/>
+    <xi:include href="xml/generated-udiskslinuxsysfsdevice.xml"/>
+  </reference>
+
+  <reference id="ref-daemon">
+    <title>Daemon Implementation Details</title>
+    <partintro>
+      <para>
+       This part documents the daemon implementation.
+      </para>
+    </partintro>
+    <xi:include href="xml/udisksdaemon.xml"/>
+    <xi:include href="xml/udisksfilesystemimpl.xml"/>
+    <xi:include href="xml/udiskslinuxblock.xml"/>
+    <xi:include href="xml/udiskslinuxprovider.xml"/>
   </reference>
 
   <reference id="tools-fileformats">
     <title>Index</title>
   </index>
 
-  <!-- License -->
-
-  <appendix id="license">
-    <title>License</title>
-    <para>
-<programlisting><xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="../COPYING" parse="text"><xi:fallback>FIXME: MISSING XINCLUDE CONTENT</xi:fallback></xi:include></programlisting>
-    </para>
-  </appendix>
+  <chapter id="gio-hierarchy">
+    <title>Object Hierarchy</title>
+      <xi:include href="xml/tree_index.sgml"/>
+  </chapter>
 </book>
diff --git a/doc/udisks-sections.txt.in b/doc/udisks-sections.txt.in
new file mode 100644 (file)
index 0000000..7981260
--- /dev/null
@@ -0,0 +1,56 @@
+<SECTION>
+<FILE>udisksdaemon</FILE>
+<TITLE>UDisksDaemon</TITLE>
+UDisksDaemon
+udisks_daemon_new
+udisks_daemon_get_connection
+udisks_daemon_get_object_manager
+<SUBSECTION Standard>
+UDISKS_TYPE_DAEMON
+UDISKS_DAEMON
+UDISKS_IS_DAEMON
+<SUBSECTION Private>
+udisks_daemon_get_type
+</SECTION>
+
+<SECTION>
+<FILE>udisksfilesystemimpl</FILE>
+<TITLE>UDisksFilesystemImpl</TITLE>
+UDisksFilesystemImpl
+<SUBSECTION Standard>
+UDISKS_TYPE_FILESYSTEM_IMPL
+UDISKS_FILESYSTEM_IMPL
+UDISKS_IS_FILESYSTEM_IMPL
+<SUBSECTION Private>
+udisks_filesystem_impl_get_type
+</SECTION>
+
+<SECTION>
+<FILE>udiskslinuxblock</FILE>
+<TITLE>UDisksLinuxBlock</TITLE>
+UDisksLinuxBlock
+udisks_linux_block_new
+udisks_linux_block_uevent
+udisks_linux_block_get_daemon
+udisks_linux_block_get_device
+<SUBSECTION Standard>
+UDISKS_TYPE_LINUX_BLOCK
+UDISKS_LINUX_BLOCK
+UDISKS_IS_LINUX_BLOCK
+<SUBSECTION Private>
+udisks_linux_block_get_type
+</SECTION>
+
+<SECTION>
+<FILE>udiskslinuxprovider</FILE>
+<TITLE>UDisksLinuxProvider</TITLE>
+UDisksLinuxProvider
+udisks_linux_provider_new
+udisks_linux_provider_get_daemon
+<SUBSECTION Standard>
+UDISKS_TYPE_LINUX_PROVIDER
+UDISKS_LINUX_PROVIDER
+UDISKS_IS_LINUX_PROVIDER
+<SUBSECTION Private>
+udisks_linux_provider_get_type
+</SECTION>
diff --git a/doc/udisks.types.in b/doc/udisks.types.in
new file mode 100644 (file)
index 0000000..454fadc
--- /dev/null
@@ -0,0 +1,4 @@
+udisks_daemon_get_type
+udisks_filesystem_impl_get_type
+udisks_linux_block_get_type
+udisks_linux_provider_get_type
index b6d7a1f..a085827 100644 (file)
@@ -21,12 +21,13 @@ INCLUDES = \
        $(GIO_CFLAGS)                                           \
        $(NULL)
 
-libexec_PROGRAMS = udisks-daemon
+# ----------------------------------------------------------------------------------------------------
 
-udisks_daemon_SOURCES =                                                \
-                                       main.c                          \
-       gposixsignal.h                  gposixsignal.c                  \
+noinst_LTLIBRARIES = libudisks-daemon.la
+
+libudisks_daemon_la_SOURCES =                                          \
        types.h                                                         \
+       gposixsignal.h                  gposixsignal.c                  \
        udisksdaemon.h                  udisksdaemon.c                  \
        udiskslinuxprovider.h           udiskslinuxprovider.c           \
        udiskslinuxblock.h              udiskslinuxblock.c              \
@@ -34,22 +35,42 @@ udisks_daemon_SOURCES =                                             \
        udisksjobimpl.h                 udisksjobimpl.c                 \
        $(NULL)
 
-udisks_daemon_CPPFLAGS =                               \
+libudisks_daemon_la_CFLAGS =                           \
        -I$(top_srcdir)                                 \
        -DG_LOG_DOMAIN=\"udisks-daemon\"                \
-       $(AM_CPPFLAGS)                                  \
+       $(GLIB_CFLAGS)                                  \
+       $(GIO_CFLAGS)                                   \
+       $(GUDEV_CFLAGS)                                 \
+       $(LIBATASMART_CFLAGS)                           \
+       $(POLKIT_GOBJECT_1_CFLAGS)                      \
+       $(NULL)
+
+libudisks_daemon_la_LIBADD =                           \
+       $(GLIB_LIBS)                                    \
+       $(GIO_LIBS)                                     \
+       $(GUDEV_LIBS)                                   \
+       $(LIBATASMART_LIBS)                             \
+       $(POLKIT_GOBJECT_1_LIBS)                        \
+       $(top_builddir)/udisks/libudisks.la             \
+       $(NULL)
+
+# ----------------------------------------------------------------------------------------------------
+
+libexec_PROGRAMS = udisks-daemon
+
+udisks_daemon_SOURCES =                                \
+                               main.c                  \
        $(NULL)
 
 udisks_daemon_CFLAGS =                                         \
+       -DG_LOG_DOMAIN=\"udisks-daemon\"                \
        $(LIBATASMART_CFLAGS)                           \
        $(NULL)
 
 udisks_daemon_LDADD =                                  \
+       $(GLIB_LIBS)                                    \
        $(GIO_LIBS)                                     \
-       $(POLKIT_GOBJECT_1_LIBS)                        \
-       $(GUDEV_LIBS)                                   \
-       $(LIBATASMART_LIBS)                             \
-       $(top_builddir)/udisks/libudisks.la             \
+       $(top_builddir)/src/libudisks-daemon.la         \
        $(NULL)
 
 # ----------------------------------------------------------------------------------------------------
index 2dbdf6e..4afccb9 100644 (file)
 #include "udisksdaemon.h"
 #include "udiskslinuxprovider.h"
 
+/**
+ * SECTION:udisksdaemon
+ * @title: UDisksDaemon
+ * @short_description: Main daemon object
+ *
+ * Object holding all global state.
+ */
+
 typedef struct _UDisksDaemonClass   UDisksDaemonClass;
 
+/**
+ * UDisksDaemon:
+ *
+ * The #UDisksDaemon structure contains only private data and should
+ * only be accessed using the provided API.
+ */
 struct _UDisksDaemon
 {
   GObject parent_instance;
index 2935d6e..934730d 100644 (file)
 
 #include "udisksfilesystemimpl.h"
 
+/**
+ * SECTION:udisksfilesystemimpl
+ * @title: UDisksFilesystemImpl
+ * @short_description: Filesystem Implementation
+ *
+ * This type provides an implementation of the #UDisksFilesystem
+ * interface that uses the <command>mount</command> and
+ * <command>umount</command> commands.
+ *
+ * TODO: mention other impl details like
+ * <filename>/var/lib/udisks/mtab</filename>, how mount options work,
+ * what role <filename>/etc/fstab</filename> plays and so on.
+ */
+
+
 typedef struct _UDisksFilesystemImplClass   UDisksFilesystemImplClass;
 
+/**
+ * UDisksFilesystemImpl:
+ *
+ * The #UDisksFilesystemImpl structure contains only private data and
+ * should only be accessed using the provided API.
+ */
 struct _UDisksFilesystemImpl
 {
   UDisksFilesystemStub parent_instance;
index a8691bf..a91848f 100644 (file)
 #include "udiskslinuxblock.h"
 #include "udisksfilesystemimpl.h"
 
+/**
+ * SECTION:udiskslinuxblock
+ * @title: UDisksLinuxBlock
+ * @short_description: Linux block devices
+ *
+ * Object corresponding to a Linux block device.
+ */
+
 typedef struct _UDisksLinuxBlockClass   UDisksLinuxBlockClass;
 
+/**
+ * UDisksLinuxBlock:
+ *
+ * The #UDisksLinuxBlock structure contains only private data and
+ * should only be accessed using the provided API.
+ */
 struct _UDisksLinuxBlock
 {
   GDBusObject parent_instance;
@@ -273,7 +287,7 @@ udisks_linux_block_class_init (UDisksLinuxBlockClass *klass)
 /**
  * udisks_linux_block_new:
  * @daemon: A #UDisksDaemon.
- * @object_path: The object path to use for the new object.
+ * @device: The #GUdevDevice for the sysfs block device.
  *
  * Create a new block object.
  *
index b840d12..162b68e 100644 (file)
 #include "udiskslinuxprovider.h"
 #include "udiskslinuxblock.h"
 
+/**
+ * SECTION:udiskslinuxprovider
+ * @title: UDisksLinuxProvider
+ * @short_description: Provider of Linux-specific objects
+ *
+ * This object is used to add/remove Linux specific objects. Right now
+ * it only handles #UDisksLinuxBlock devices.
+ */
+
 typedef struct _UDisksLinuxProviderClass   UDisksLinuxProviderClass;
 
+/**
+ * UDisksLinuxProvider:
+ *
+ * The #UDisksLinuxProvider structure contains only private data and
+ * should only be accessed using the provided API.
+ */
 struct _UDisksLinuxProvider
 {
   GObject parent_instance;