Index: /trunk/doc/manual/Makefile.kmk
===================================================================
--- /trunk/doc/manual/Makefile.kmk	(revision 68359)
+++ /trunk/doc/manual/Makefile.kmk	(revision 68360)
@@ -205,18 +205,9 @@
 if defined(VBOX_WITH_DOCS) && (!defined(VBOX_ONLY_BUILD) || defined(VBOX_ONLY_DOCS) || defined(VBOX_ONLY_SDK))
  if defined(VBOX_ONLY_SDK) || defined(VBOX_WITH_DOCS_SDKREF)
-  INSTALLS += VBox-sdkref-docs
-  VBox-sdkref-docs_INST = $(INST_SDK)docs/
-  VBox-sdkref-docs_MODE = a+r,u+w
-  VBox-sdkref-docs_SOURCES = $(VBOX_PATH_MANUAL_OUTBASE)/en_US/SDKRef.pdf
-  VBox-sdkref-docs_CLEAN = $(VBOX_PATH_MANUAL_OUTBASE)/en_US/SDKRef.pdf
+  INSTALLS += VBox-docs-sdkref
  endif
 
  ifdef VBOX_WITH_DOCS_CHM
-  INSTALLS += VBox-usermanual-chm-docs
-  VBox-usermanual-chm-docs_INST = $(INST_BIN)
-  VBox-usermanual-chm-docs_MODE = a+r,u+w
-  VBox-usermanual-chm-docs_SOURCES = $(VBOX_PATH_MANUAL_OUTBASE)/en_US/VirtualBox.chm
-  VBox-usermanual-chm-docs_CLEAN = $(VBOX_PATH_MANUAL_OUTBASE)/en_US/VirtualBox.chm
-
+  INSTALLS += VBox-docs-usermanual-chm
   VBOX_PATH_BIN_CHM = $(PATH_STAGE_BIN)/VirtualBox.chm
  else  # Do not build chm.
@@ -228,24 +219,12 @@
   		$(PATH_STAGE_BIN)/UserManual.pdf \
   		$(VBOX_PATH_BIN_CHM)
-  INSTALLS += VBox-usermanual-docs
-  VBox-usermanual-docs_INST = $(INST_BIN)
-  VBox-usermanual-docs_MODE = a+r,u+w
-  VBox-usermanual-docs_SOURCES = $(VBOX_PATH_MANUAL_OUTBASE)/en_US/UserManual.pdf
-  VBox-usermanual-docs_CLEAN = $(VBOX_PATH_MANUAL_OUTBASE)/en_US/UserManual.pdf
+  INSTALLS += VBox-docs-usermanual
 
   ifdef VBOX_WITH_DOCS_TRANSLATIONS
-   INSTALLS += VBox-usermanual-add-docs
-   VBox-usermanual-add-docs_INST = $(INST_BIN)
-   VBox-usermanual-add-docs_MODE = a+r,u+w
-   VBox-usermanual-add-docs_SOURCES = $(foreach f,$(VBOX_MANUAL_ADD_LANGUAGES),$(VBOX_PATH_MANUAL_OUTBASE)/$(f)/UserManual.pdf=>UserManual_$(f).pdf)
-   VBox-usermanual-add-docs_CLEAN = $(foreach f,$(VBOX_MANUAL_ADD_LANGUAGES),$(VBOX_PATH_MANUAL_OUTBASE)/$(f)/UserManual.pdf)
+   INSTALLS += VBox-docs-usermanual-l10n
    VBOX_MANUAL_PACK += \
  	$(foreach f,$(VBOX_MANUAL_ADD_LANGUAGES),$(PATH_STAGE_BIN)/UserManual_$(f).pdf)
    ifdef VBOX_WITH_DOCS_CHM
-    INSTALLS += VBox-usermanual-add-chm-docs
-   VBox-usermanual-add-chm-docs_INST = $(INST_BIN)
-   VBox-usermanual-add-chm-docs_MODE = a+r,u+w
-   VBox-usermanual-add-chm-docs_SOURCES = $(foreach f,$(VBOX_MANUAL_ADD_LANGUAGES),$(VBOX_PATH_MANUAL_OUTBASE)/$(f)/VirtualBox.chm=>VirtualBox_$(f).chm)
-   VBox-usermanual-add-chm-docs_CLEAN = $(foreach f,$(VBOX_MANUAL_ADD_LANGUAGES),$(VBOX_PATH_MANUAL_OUTBASE)/$(f)/VirtualBox.chm)
+    INSTALLS += VBox-docs-usermanual-l10n-chm
     VBOX_MANUAL_PACK += \
  	$(foreach f,$(VBOX_MANUAL_ADD_LANGUAGES),$(PATH_STAGE_BIN)/VirtualBox_$(f).chm)
@@ -253,4 +232,10 @@
   endif
  endif # !VBOX_ONLY_SDK
+
+ ifdef VBOX_WITH_DOCS_ACCESSIBILITY
+  INSTALLS += VBox-docs-accessibility
+  INSTALLS += VBox-docs-accessibility-html
+ endif
+
  ifdef VBOX_ONLY_DOCS
   PACKING += $(PATH_STAGE_BIN)/VBoxDocumentation.zip
@@ -290,4 +275,7 @@
  	SDKRef.xml
 
+ VBOX_ACCESSIBILITY_XML_FILES = \
+ 	Accessibility.xml
+
  # Wildcard the images path for every supported language
  $(foreach f,$(VBOX_MANUAL_LANGUAGES), \
@@ -302,4 +290,7 @@
  VBOX_SDKREF_LATEX_FILES_TARGET = \
  	$(addprefix SDKRef.,aux log out toc tex)
+
+ VBOX_ACCESSIBILITY_LATEX_FILES_TARGET = \
+ 	$(addprefix Accessibility.,aux log out toc tex)
 
  BLDDIRS += \
@@ -312,4 +303,7 @@
  	)
 
+ # Explicit cleaning has some overlap with default cleaning rules, since this
+ # Makefile is using very complex conditionals for selectively creating
+ # specific files, and not everyone remembers to use the same with "kmk clean".
  OTHER_CLEAN += \
  	$(VBOX_XML_CATALOG) \
@@ -340,4 +334,6 @@
                HTMLHelp/htmlhelp.hhp \
  		titlepage-htmlhelp.xsl \
+		UserManual.pdf \
+		VirtualBox.chm \
 		ChangeLog.html \
 		validatemanual.run \
@@ -346,9 +342,25 @@
  	$(addprefix $(VBOX_PATH_MANUAL_OUTBASE)/overview_,$(VBOX_MANUAL_XML_REFENTRY_FILES)) \
  	$(VBOX_PATH_MANUAL_OUTBASE)/user_VBoxManage_CommandsOverview.xml \
-       \
+	$(foreach f,$(VBOX_MANUAL_ADD_LANGUAGES),$(PATH_STAGE_BIN)/UserManual_$(f).pdf) \
+	$(foreach f,$(VBOX_MANUAL_ADD_LANGUAGES),$(PATH_STAGE_BIN)/VirtualBox_$(f).chm) \
+	$(PATH_STAGE_BIN)/UserManual.pdf \
+	$(PATH_STAGE_BIN)/VirtualBox.chm \
+	\
  	$(addprefix $(VBOX_PATH_MANUAL_OUTBASE)/en_US/, \
 		$(VBOX_SDKREF_XML_FILES) \
 		$(VBOX_SDKREF_LATEX_FILES_TARGET) \
+		SDKRef.pdf \
 		) \
+    $(PATH_STAGE_BIN)/sdk/docs/SDKRef.pdf \
+	\
+ 	$(addprefix $(VBOX_PATH_MANUAL_OUTBASE)/en_US/, \
+		$(VBOX_ACCESSIBILITY_XML_FILES) \
+		$(VBOX_ACCESSIBILITY_LATEX_FILES_TARGET) \
+		html-single/Accessibility.html \
+		Accessibility.pdf \
+		) \
+	$(PATH_STAGE_BIN)/Accessibility.html \
+	$(PATH_STAGE_BIN)/Accessibility.pdf \
+	\
 	$(VBOX_DOC_XIDL_SRC_TMP) \
 	$(VBOX_MANUAL_APIREF_TMP)
@@ -356,4 +368,52 @@
 endif # if defined(VBOX_WITH_DOCS) && (!defined(VBOX_ONLY_BUILD) || defined(VBOX_ONLY_DOCS) || defined(VBOX_ONLY_SDK))
 
+#
+# target for installing UserManual.pdf
+#
+VBox-docs-usermanual_INST = $(INST_BIN)
+VBox-docs-usermanual_MODE = a+r,u+w
+VBox-docs-usermanual_SOURCES = $(VBOX_PATH_MANUAL_OUTBASE)/en_US/UserManual.pdf
+
+#
+# target for installing translated UserManual_*.pdf
+#
+VBox-docs-usermanual-l10n_INST = $(INST_BIN)
+VBox-docs-usermanual-l10n_MODE = a+r,u+w
+VBox-docs-usermanual-l10n_SOURCES = $(foreach f,$(VBOX_MANUAL_ADD_LANGUAGES),$(VBOX_PATH_MANUAL_OUTBASE)/$(f)/UserManual.pdf=>UserManual_$(f).pdf)
+
+#
+# target for installing VirtualBox.chm
+#
+VBox-docs-usermanual-chm_INST = $(INST_BIN)
+VBox-docs-usermanual-chm_MODE = a+r,u+w
+VBox-docs-usermanual-chm_SOURCES = $(VBOX_PATH_MANUAL_OUTBASE)/en_US/VirtualBox.chm
+
+#
+# target for installing translated VirtualBox_*.chm
+#
+VBox-docs-usermanual-l10n-chm_INST = $(INST_BIN)
+VBox-docs-usermanual-l10n-chm_MODE = a+r,u+w
+VBox-docs-usermanual-l10n-chm_SOURCES = $(foreach f,$(VBOX_MANUAL_ADD_LANGUAGES),$(VBOX_PATH_MANUAL_OUTBASE)/$(f)/VirtualBox.chm=>VirtualBox_$(f).chm)
+
+#
+# target for installing SDKRef.pdf
+#
+VBox-docs-sdkref_INST = $(INST_SDK)docs/
+VBox-docs-sdkref_MODE = a+r,u+w
+VBox-docs-sdkref_SOURCES = $(VBOX_PATH_MANUAL_OUTBASE)/en_US/SDKRef.pdf
+
+#
+# target for installing Accessibility.pdf
+#
+VBox-docs-accessibility_INST = $(INST_BIN)
+VBox-docs-accessibility_MODE = a+r,u+w
+VBox-docs-accessibility_SOURCES = $(VBOX_PATH_MANUAL_OUTBASE)/en_US/Accessibility.pdf
+
+#
+# target for installing Accessibility.html
+#
+VBox-docs-accessibility-html_INST = $(INST_BIN)
+VBox-docs-accessibility-html_MODE = a+r,u+w
+VBox-docs-accessibility-html_SOURCES = $(VBOX_PATH_MANUAL_OUTBASE)/en_US/html-single/Accessibility.html
 
 
@@ -672,5 +732,4 @@
 		$(if $(VBOX_OSE),,$(VBOX_PATH_MANUAL_OUTBASE)/en_US/ucs.sty) \
 		$(addprefix $(VBOX_PATH_MANUAL_OUTBASE)/en_US/,$(VBOX_MANUAL_PNG_FILES_en_US)) | $$(dir $$@)
-	$(QUIET)$(MKDIR) -p $(VBOX_PATH_SDK)/docs
 	$(call MSG_L1,pdflatex $< (three passes))
 	$(QUIET)$(REDIRECT) -C $(<D) -- $(VBOX_PDFLATEX_CMD) SDKRef.tex
@@ -687,4 +746,66 @@
 validate-sdkref:: $(VBOX_PATH_MANUAL_OUTBASE)/en_US/SDKRef.xml
 sdkref:: $(VBOX_PATH_SDK)/docs/SDKRef.pdf
+
+
+
+#
+# Accessibility.pdf
+#
+
+$(evalcall2 def_vbox_replace_stuff_in_xml,/en_US/Accessibility.xml,/en_US)
+
+# Turn Accessibility.xml into latex.
+$(VBOX_PATH_MANUAL_OUTBASE)/en_US/Accessibility.tex: \
+		$(addprefix $(VBOX_PATH_MANUAL_OUTBASE)/en_US/,$(VBOX_ACCESSIBILITY_XML_FILES)) \
+		$(VBOX_PATH_MANUAL_SRC)/docbook2latex.xsl \
+		$(VBOX_XML_CATALOG) $(VBOX_XML_CATALOG_DOCBOOK) $(MAKEFILE_CURRENT) | $$(dir $$@)
+	$(call MSG_TOOL,xsltproc $(notdir $(filter %.xsl,$^)),,$(firstword $(filter %.xml,$^)),$@)
+	$(QUIET)$(RM) -f $(addprefix $(@D/),$(VBOX_ACCESSIBILITY_LATEX_FILES_TARGET))
+#	check it for validity first.
+ifdef VBOX_HAVE_XMLLINT
+	$(QUIET)$(VBOX_XMLLINT_WITH_CAT) --dtdvalid $(VBOX_PATH_DOCBOOK_DTD)/docbookx.dtd $<
+endif
+#	generate TeX source from processed docbook and store it in Accessibility.tex.tmp
+	$(QUIET)$(call VBOX_XSLTPROC_WITH_CAT) --stringparam TARGETLANG en_US \
+		-o $@.tmp $(VBOX_PATH_MANUAL_SRC)/docbook2latex.xsl $<
+#	for pretty quotes, replace " with `` or '' depending on whether it's at the start of a word;
+#   the \QUOTE{} was inserted by docbook2latex.xsl for all quotes _outside_ of screen sections
+	$(QUIET)$(SED) \
+		-e 's|^\\QUOTE{}|\\OQ{}|g' \
+		-e 's|\(\W\)\\QUOTE{}|\1\\OQ{}|g' \
+		-e 's|\(\w\)\\QUOTE{}|\1\\CQ{}|g' \
+		--output $@ $@.tmp
+	$(QUIET)$(RM) -f $@.tmp
+
+# Turn Accessibility.tex into a PDF.
+$(VBOX_PATH_MANUAL_OUTBASE)/en_US/Accessibility.pdf: \
+		$(VBOX_PATH_MANUAL_OUTBASE)/en_US/Accessibility.tex \
+		$(if $(VBOX_OSE),,$(VBOX_PATH_MANUAL_OUTBASE)/en_US/ucs.sty) \
+		$(addprefix $(VBOX_PATH_MANUAL_OUTBASE)/en_US/,$(VBOX_MANUAL_PNG_FILES_en_US)) | $$(dir $$@)
+	$(call MSG_L1,pdflatex $< (three passes))
+	$(QUIET)$(REDIRECT) -C $(<D) -- $(VBOX_PDFLATEX_CMD) Accessibility.tex
+	$(QUIET)$(REDIRECT) -C $(<D) -- $(VBOX_PDFLATEX_CMD) Accessibility.tex
+	$(QUIET)$(REDIRECT) -C $(<D) -- $(VBOX_PDFLATEX_CMD) Accessibility.tex
+	$(QUIET)$(SED) -ne '/Warning: Hyper reference/p' $(basename $<).log
+	$(QUIET)$(SED) -n \
+		-e '/Warning: There were \(undefined references\|multiply-defined labels\)/{p; q 1}' \
+		$(basename $<).log
+	$(call MSG_L1,Fresh LaTeX-generated PDF is now at $@)
+
+$(VBOX_PATH_MANUAL_OUTBASE)/en_US/html-single/Accessibility.html: \
+		$(VBOX_PATH_MANUAL_OUTBASE)/en_US/docbook-html-one-page-formatcfg.xsl \
+		$(addprefix $(VBOX_PATH_MANUAL_OUTBASE)/en_US/,$(VBOX_ACCESSIBILITY_XML_FILES)) \
+		$(VBOX_XML_CATALOG) $(VBOX_XML_CATALOG_DOCBOOK) \
+		| $$(dir $$@)
+	$(call MSG_TOOL,xsltproc $(notdir $(firstword $(filter %.xsl,$^))),,$(firstword $(filter %.xml,$^)),$@)
+	$(QUIET)$(call VBOX_XSLTPROC_WITH_CAT) \
+		--output $(VBOX_PATH_MANUAL_OUTBASE)/en_US/html-single/Accessibility.html \
+		$(VBOX_PATH_MANUAL_OUTBASE)/en_US/docbook-html-one-page-formatcfg.xsl \
+		$(VBOX_PATH_MANUAL_OUTBASE)/en_US/Accessibility.xml
+
+# Handy aliases.
+validate-accessibility:: $(VBOX_PATH_MANUAL_OUTBASE)/en_US/Accessibility.xml
+accessibility:: $(PATH_STAGE_BIN)/Accessibility.pdf
+accessibility-html:: $(VBOX_PATH_MANUAL_OUTBASE)/en_US/html-single/Accessibility.html
 
 
@@ -838,5 +959,5 @@
 
 #
-# VBoxManage man pages (parts also required by VBoxManage build-in help).
+# VBoxManage man pages (parts also required by VBoxManage built-in help).
 #
 $(evalcall2 def_vbox_replace_paths_in_xslt,docbook-refentry-to-manpage.xsl,)
Index: /trunk/doc/manual/en_US/Accessibility.xml
===================================================================
--- /trunk/doc/manual/en_US/Accessibility.xml	(revision 68360)
+++ /trunk/doc/manual/en_US/Accessibility.xml	(revision 68360)
@@ -0,0 +1,35 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN"
+"http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd">
+<book>
+  <bookinfo>
+    <title>@VBOX_PRODUCT@<superscript>®</superscript></title>
+
+    <subtitle>Accessibility Reference</subtitle>
+
+    <edition>Version @VBOX_VERSION_STRING@</edition>
+
+    <corpauthor>@VBOX_VENDOR@</corpauthor>
+
+    <address>http://www.virtualbox.org</address>
+
+    <copyright>
+      <year>2016-@VBOX_C_YEAR@</year>
+
+      <holder>@VBOX_VENDOR@</holder>
+    </copyright>
+  </bookinfo>
+
+  <chapter>
+    <title>Introduction</title>
+
+    <para>Add text here.</para>
+
+    <sect1>
+      <title>Sample section</title>
+
+      <para>Add more text.</para>
+    </sect1>
+  </chapter>
+</book>
+<!-- vim: set shiftwidth=2 tabstop=2 expandtab: -->
