diff --git a/asio/src/doc/.cvsignore b/asio/src/doc/.cvsignore
index 2318f6b..32e513a 100644
--- a/asio/src/doc/.cvsignore
+++ b/asio/src/doc/.cvsignore
@@ -1,3 +1,5 @@
 bin
 html
 reference.tags
+asio.docbook
+*.pdf
diff --git a/asio/src/doc/Jamfile.v2 b/asio/src/doc/Jamfile.v2
index 67ddf29..e2dc9a8 100644
--- a/asio/src/doc/Jamfile.v2
+++ b/asio/src/doc/Jamfile.v2
@@ -57,3 +57,6 @@
     overview/async_op2.png
     asio.png
   ;
+
+install asioref : standalone : <location>. <format>docbook ;
+explicit asioref ;
diff --git a/asio/src/doc/asioref.sty b/asio/src/doc/asioref.sty
new file mode 100644
index 0000000..2bf5a8d
--- /dev/null
+++ b/asio/src/doc/asioref.sty
@@ -0,0 +1,90 @@
+%%
+%% This is a DocBook LaTeX style for Asio
+%%
+\NeedsTeXFormat{LaTeX2e}
+\ProvidesPackage{mybook}[2008/11/11 Asio DocBook Style]
+
+% The defined options
+\DeclareOption{hyperlink}{ \def\DBKhyperlink{yes} }
+\DeclareOption{nohyperlink}{ \def\DBKhyperlink{no} }
+
+% Default values
+\ExecuteOptions{nohyperlink}
+
+% If defined, process the options
+\ProcessOptions\relax
+
+% Needed packages
+\usepackage[top=2cm,bottom=2cm,left=1.5cm,right=1.5cm]{geometry}
+\usepackage{float}
+\usepackage{dbk_core}
+\usepackage{dbk_admonition}
+\usepackage{fancyvrb}
+
+% Text layout
+\setlength\parskip{\medskipamount}
+\setlength\parindent{0pt}
+\raggedbottom
+
+% Stuff we don't need
+\def\DBKinditem#1#2{}
+\newenvironment{DBKindtable}{}{}
+\newenvironment{DBKrevtable}{}{}
+\newenvironment{DBKlegalnotice}{}{}
+
+% Admonitions
+\floatstyle{boxed}
+\newfloat{DBKadmonition}{h}{lop}
+\newfloat{sidebar}{h}{lop}
+
+% Page break before sections
+\let\orig@section\section
+\renewcommand\section{
+  \clearpage\orig@section
+}
+
+% Ensure line break after paragraph heading
+\renewcommand\paragraph{%
+  \@startsection{paragraph}{4}{\z@}%
+  {-2.25ex\@plus -1ex \@minus -.2ex}%
+  {0.5ex \@plus .2ex}%
+  {\normalfont\normalsize\bfseries}%
+}
+
+% Add page numbers to hyperlinks
+%\let\orig@hyperlink\hyperlink
+%\renewcommand{\hyperlink}[2]{
+%  \orig@hyperlink{#1}{#2} (page \pageref{#1})
+%}
+
+% Extra indent on TOC section numbers
+\renewcommand*\l@subsection{\@dottedtocline{2}{1.5em}{3.3em}}
+\renewcommand*\l@subsubsection{\@dottedtocline{3}{3.8em}{4.2em}}
+\renewcommand*\l@paragraph{\@dottedtocline{4}{7.0em}{5.1em}}
+
+% Title page
+\renewcommand\maketitle{
+  \null
+  \thispagestyle{empty}
+  \begin{center}
+  \null\vskip 7cm
+  \begin{LARGE}
+  asio C++ library
+  \end{LARGE}
+  \null\vskip 1cm
+  \begin{large}
+  \DBKsubtitle{}
+  \end{large}
+  \null\vskip 1cm
+  \begin{Large}
+  Reference Manual
+  \end{Large}
+  \null\vskip 5cm
+  \begin{small}
+  \DBKcopyright{}
+  \end{small}
+  \end{center}
+  \vfill
+  \null
+  \cleardoublepage
+}
diff --git a/asio/src/doc/asioref.xsl b/asio/src/doc/asioref.xsl
new file mode 100644
index 0000000..cdc9280
--- /dev/null
+++ b/asio/src/doc/asioref.xsl
@@ -0,0 +1,80 @@
+<?xml version="1.0" encoding="utf-8"?>
+<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
+
+<!--
+  Copyright (c) 2003-2008 Christopher M. Kohlhoff (chris at kohlhoff dot com)
+
+  Distributed under the Boost Software License, Version 1.0. (See accompanying
+  file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
+-->
+
+<xsl:output method="xml"/>
+<xsl:strip-space elements="title"/>
+
+<xsl:param name="asio.version">X.Y.Z</xsl:param>
+
+<xsl:template match="@*|node()">
+  <xsl:copy>
+    <xsl:apply-templates select="@*|node()"/>
+  </xsl:copy>
+</xsl:template>
+
+<xsl:template match="blockquote/para">
+  <xsl:apply-templates select="para"/>
+</xsl:template>
+
+<xsl:template match="title/link">
+  <xsl:value-of select="normalize-space(.)"/>
+</xsl:template>
+
+<xsl:template match="bridgehead[count(link) &gt; 0]">
+  <xsl:element name="bridgehead">
+    <xsl:attribute name="renderas">
+      <xsl:value-of select="@renderas"/>
+    </xsl:attribute>
+    <xsl:value-of select="normalize-space(link)"/>
+  </xsl:element>
+</xsl:template>
+
+<xsl:template match="chapter">
+  <article id="asio" name="Asio Reference Manual" dirname="asio">
+    <xsl:apply-templates select="chapterinfo"/>
+    <title>Asio Reference Manual</title>
+    <xsl:apply-templates select="section"/>
+  </article>
+</xsl:template>
+
+<xsl:template match="chapterinfo">
+  <articleinfo>
+    <xsl:apply-templates select="*"/>
+    <subtitle><xsl:value-of select="$asio.version"/></subtitle>
+  </articleinfo>
+</xsl:template>
+
+<xsl:template match="section[@id='asio.reference']/informaltable">
+  <xsl:element name="informaltable">
+    <xsl:attribute name="role">scriptsize</xsl:attribute>
+    <xsl:apply-templates select="*"/>
+  </xsl:element>
+</xsl:template>
+
+<xsl:template match="section[@id='asio.examples']/*/listitem">
+  <xsl:element name="listitem">
+    <xsl:value-of select="substring-after(normalize-space(ulink), '../')"/>
+  </xsl:element>
+</xsl:template>
+
+<xsl:template match="imagedata">
+  <xsl:element name="imagedata">
+    <xsl:attribute name="fileref">
+      <xsl:value-of select="@fileref"/>
+    </xsl:attribute>
+    <xsl:attribute name="scale">75</xsl:attribute>
+    <xsl:attribute name="align">center</xsl:attribute>
+  </xsl:element>
+</xsl:template>
+
+<xsl:template match="section[@id='asio.index']"></xsl:template>
+
+</xsl:stylesheet>
+
diff --git a/asio/src/doc/makepdf.pl b/asio/src/doc/makepdf.pl
new file mode 100755
index 0000000..a37bdab
--- /dev/null
+++ b/asio/src/doc/makepdf.pl
@@ -0,0 +1,26 @@
+#!/usr/bin/perl -w
+
+# Copyright (c) 2003-2008 Christopher M. Kohlhoff (chris at kohlhoff dot com)
+#
+# Distributed under the Boost Software License, Version 1.0. (See accompanying
+# file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
+
+use strict;
+
+# Determine version number
+my $version = "X.Y.Z";
+open(VERSION, "../../include/asio/version.hpp") or die("Can't open version.hpp");
+while (my $line = <VERSION>)
+{
+  if ($line =~ /^#define ASIO_VERSION .* \/\/ (.*)$/)
+  {
+    $version = $1;
+  }
+}
+close(VERSION);
+
+# Generate PDF output
+system("bjam asioref");
+system("xsltproc --stringparam asio.version $version asioref.xsl asio.docbook > asioref.docbook");
+system("dblatex -I overview -s asioref.sty -P table.in.float=0 -o asioref-$version.pdf asioref.docbook");
+system("rm asioref.docbook");
