diff --git a/doc/gtkdoc/libDesktop-sections.txt b/doc/gtkdoc/libDesktop-sections.txt
new file mode 100644
index 0000000..d7fb83e
--- /dev/null
+++ b/doc/gtkdoc/libDesktop-sections.txt
@@ -0,0 +1,199 @@
+
+
+
+about
+desktop_about_dialog_new
+desktop_about_dialog_set_artists
+desktop_about_dialog_set_authors
+desktop_about_dialog_set_comments
+desktop_about_dialog_set_copyright
+desktop_about_dialog_set_license
+desktop_about_dialog_set_logo_icon_name
+desktop_about_dialog_set_name
+desktop_about_dialog_set_program_name
+desktop_about_dialog_set_translator_credits
+desktop_about_dialog_set_version
+desktop_about_dialog_set_website
+
+
+
+accel
+desktop_accel_create
+
+
+
+compat
+GDK_KEY_0
+GDK_KEY_1
+GDK_KEY_2
+GDK_KEY_3
+GDK_KEY_4
+GDK_KEY_5
+GDK_KEY_6
+GDK_KEY_7
+GDK_KEY_8
+GDK_KEY_9
+GDK_KEY_A
+GDK_KEY_B
+GDK_KEY_C
+GDK_KEY_D
+GDK_KEY_E
+GDK_KEY_F
+GDK_KEY_G
+GDK_KEY_H
+GDK_KEY_I
+GDK_KEY_J
+GDK_KEY_K
+GDK_KEY_L
+GDK_KEY_M
+GDK_KEY_N
+GDK_KEY_O
+GDK_KEY_P
+GDK_KEY_Q
+GDK_KEY_R
+GDK_KEY_S
+GDK_KEY_T
+GDK_KEY_U
+GDK_KEY_V
+GDK_KEY_W
+GDK_KEY_X
+GDK_KEY_Y
+GDK_KEY_Z
+GDK_KEY_Alt_L
+GDK_KEY_Alt_R
+GDK_KEY_asterisk
+GDK_KEY_Back
+GDK_KEY_BackSpace
+GDK_KEY_Control_L
+GDK_KEY_Control_R
+GDK_KEY_Delete
+GDK_KEY_downarrow
+GDK_KEY_Escape
+GDK_KEY_F1
+GDK_KEY_F2
+GDK_KEY_F3
+GDK_KEY_F4
+GDK_KEY_F5
+GDK_KEY_F6
+GDK_KEY_F7
+GDK_KEY_F8
+GDK_KEY_F9
+GDK_KEY_F10
+GDK_KEY_F11
+GDK_KEY_F12
+GDK_KEY_Forward
+GDK_KEY_Home
+GDK_KEY_Left
+GDK_KEY_minus
+GDK_KEY_Page_Down
+GDK_KEY_Page_Up
+GDK_KEY_plus
+GDK_KEY_Return
+GDK_KEY_Right
+GDK_KEY_slash
+GDK_KEY_Up
+GDK_KEY_uparrow
+GtkStateFlags
+gdk_window_clear
+gtk_box_new
+gtk_button_box_new
+gtk_dialog_get_content_area
+gtk_paned_new
+gtk_scale_new
+gtk_scale_new_with_range
+gtk_separator_new
+gtk_widget_get_allocation
+gtk_widget_get_window
+gtk_widget_set_tooltip_text
+gtk_widget_override_color
+gtk_widget_override_font
+
+
+
+help
+desktop_help_contents
+
+
+
+menubar
+desktop_menubar_create
+
+
+
+message
+DesktopMessageCallback
+desktop_message_register
+desktop_message_unregister
+desktop_message_send
+
+
+
+mime
+MimeForeachCallback
+mime_new
+mime_delete
+mime_get_handler
+mime_set_handler
+mime_set_theme
+mime_type
+mime_action
+mime_action_type
+mime_foreach
+mime_icons
+mime_save
+Mime
+
+
+
+mimehandler
+MimeHandlerType
+mimehandler_new
+mimehandler_new_load
+mimehandler_new_load_by_name
+mimehandler_delete
+mimehandler_can_display
+mimehandler_can_execute
+mimehandler_can_open
+mimehandler_get_categories
+mimehandler_get_comment
+mimehandler_get_environment
+mimehandler_get_filename
+mimehandler_get_generic_name
+mimehandler_get_icon
+mimehandler_get_name
+mimehandler_get_path
+mimehandler_get_program
+mimehandler_get_type
+mimehandler_get_types
+mimehandler_get_url
+mimehandler_is_deleted
+mimehandler_set_environment
+mimehandler_open
+mimehandler_load
+mimehandler_load_by_name
+mimehandler_save
+MimeHandler
+
+
+
+toolbar
+desktop_toolbar_create
+
+
+
+widget
+init
+destroy
+get_widget
+set_property
+desktop_widget_new
+desktop_widget_delete
+desktop_widget_get_widget
+desktop_widget_set_property
+DesktopWidget
+DesktopWidgetPlugin
+
+
diff --git a/doc/gtkdoc/libDesktop.types b/doc/gtkdoc/libDesktop.types
new file mode 100644
index 0000000..e69de29
diff --git a/doc/gtkdoc/project.conf b/doc/gtkdoc/project.conf
index ed046e5..c5866a9 100644
--- a/doc/gtkdoc/project.conf
+++ b/doc/gtkdoc/project.conf
@@ -1,2 +1 @@
-subdirs=tmpl
-dist=Makefile,libDesktop-docs.xml
+dist=Makefile,libDesktop.types,libDesktop-docs.xml,libDesktop-sections.txt
diff --git a/doc/gtkdoc/tmpl/project.conf b/doc/gtkdoc/tmpl/project.conf
deleted file mode 100644
index aa207e4..0000000
--- a/doc/gtkdoc/tmpl/project.conf
+++ /dev/null
@@ -1 +0,0 @@
-dist=Makefile,Desktop.sgml,about.sgml,accel.sgml,assistant.sgml,compat.sgml,help.sgml,libDesktop-unused.sgml,menubar.sgml,message.sgml,mime.sgml,toolbar.sgml
diff --git a/doc/project.conf b/doc/project.conf
index fe763b6..c4632ee 100644
--- a/doc/project.conf
+++ b/doc/project.conf
@@ -11,7 +11,7 @@ depends=../config.sh
[gtkdoc/html.stamp]
type=script
script=./gtkdoc.sh
-depends=gtkdoc/libDesktop-docs.xml,gtkdoc/xml.stamp
+depends=gtkdoc/libDesktop-docs.xml,$(OBJDIR)gtkdoc/xml.stamp
install=
[gtkdoc/tmpl.stamp]
@@ -22,7 +22,7 @@ depends=gtkdoc/libDesktop.types
[gtkdoc/xml.stamp]
type=script
script=./gtkdoc.sh
-depends=gtkdoc/tmpl.stamp
+depends=$(OBJDIR)gtkdoc/tmpl.stamp
[widget.1]
type=script