<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd"
[<!ENTITY % poky SYSTEM "../poky.ent"> %poky; ] >

<book id='toaster-manual' lang='en'
      xmlns:xi="http://www.w3.org/2003/XInclude"
      xmlns="http://docbook.org/ns/docbook"
      >
    <bookinfo>

        <mediaobject>
            <imageobject>
                <imagedata fileref='figures/toaster-title.png'
                    format='SVG'
                    align='left' scalefit='1' width='100%'/>
            </imageobject>
        </mediaobject>

        <title>
            Toaster User Manual
        </title>

        <authorgroup>
            <author>
                <firstname>Scott</firstname> <surname>Rifenbark</surname>
                <affiliation>
                    <orgname>Intel Corporation</orgname>
                </affiliation>
                <email>srifenbark@gmail.com</email>
            </author>
        </authorgroup>

        <revhistory>
            <revision>
                <revnumber>1.8</revnumber>
                <date>April 2015</date>
                <revremark>Released with the Yocto Project 1.8 Release.</revremark>
            </revision>
            <revision>
                <revnumber>2.0</revnumber>
                <date>October 2015</date>
                <revremark>Released with the Yocto Project 2.0 Release.</revremark>
            </revision>
            <revision>
                <revnumber>2.1</revnumber>
                <date>April 2016</date>
                <revremark>Released with the Yocto Project 2.1 Release.</revremark>
            </revision>
            <revision>
                <revnumber>2.2</revnumber>
                <date>October 2016</date>
                <revremark>Released with the Yocto Project 2.2 Release.</revremark>
            </revision>
            <revision>
                <revnumber>2.3</revnumber>
                <date>May 2017</date>
                <revremark>Released with the Yocto Project 2.3 Release.</revremark>
            </revision>
            <revision>
                <revnumber>2.3.1</revnumber>
                <date>June 2017</date>
                <revremark>Released with the Yocto Project 2.3.1 Release.</revremark>
            </revision>
            <revision>
                <revnumber>2.3.2</revnumber>
                <date>September 2017</date>
                <revremark>Released with the Yocto Project 2.3.2 Release.</revremark>
            </revision>
            <revision>
                <revnumber>2.3.3</revnumber>
                <date>January 2018</date>
                <revremark>Released with the Yocto Project 2.3.3 Release.</revremark>
            </revision>
            <revision>
                <revnumber>2.3.4</revnumber>
                <date>April 2018</date>
                <revremark>Released with the Yocto Project 2.3.4 Release.</revremark>
            </revision>
       </revhistory>

    <copyright>
      <year>&COPYRIGHT_YEAR;</year>
      <holder>Linux Foundation</holder>
    </copyright>

    <legalnotice>
      <para>
        Permission is granted to copy, distribute and/or modify this document under
        the terms of the <ulink type="http" url="http://creativecommons.org/licenses/by-sa/2.0/uk/">Creative Commons Attribution-Share Alike 2.0 UK: England &amp; Wales</ulink> as published by Creative Commons.
      </para>
           <note><title>Manual Notes</title>
               <itemizedlist>
                   <listitem><para>
                       For the latest version of the Yocto Project Toaster
                       User Manual associated with this Yocto Project release
                       (version &YOCTO_DOC_VERSION;),
                       see the Yocto Project Toaster User Manual from the
                       <ulink url='&YOCTO_HOME_URL;/documentation'>Yocto Project documentation page</ulink>.
                       </para></listitem>
                   <listitem><para>
                       This version of the manual is version
                       &YOCTO_DOC_VERSION;.
                       For later releases of the Yocto Project (if they exist),
                       go to the
                       <ulink url='&YOCTO_HOME_URL;/documentation'>Yocto Project documentation page</ulink>
                       and use the drop-down "Active Releases" button
                       and choose the Yocto Project version for which you want
                       the manual.
                       </para></listitem>
                   <listitem><para>
                       For an in-development version of the Yocto Project
                       Toaster User Manual, see
                       <ulink url='&YOCTO_DOCS_URL;/latest/toaster-manual/toaster-manual.html'></ulink>.
                       </para></listitem>
               </itemizedlist>
           </note>

    </legalnotice>

    </bookinfo>

    <xi:include href="toaster-manual-intro.xml"/>

    <xi:include href="toaster-manual-start.xml"/>

    <xi:include href="toaster-manual-setup-and-use.xml"/>

    <xi:include href="toaster-manual-reference.xml"/>

</book>
<!--
vim: expandtab tw=80 ts=4
-->
