diff --git a/poky/documentation/sdk-manual/figures/sdk-installed-extensible-sdk-directory.png b/poky/documentation/sdk-manual/figures/sdk-installed-extensible-sdk-directory.png
index 99e07ce..b71c8ad 100644
--- a/poky/documentation/sdk-manual/figures/sdk-installed-extensible-sdk-directory.png
+++ b/poky/documentation/sdk-manual/figures/sdk-installed-extensible-sdk-directory.png
Binary files differ
diff --git a/poky/documentation/sdk-manual/figures/sdk-installed-standard-sdk-directory.png b/poky/documentation/sdk-manual/figures/sdk-installed-standard-sdk-directory.png
index d4af850..45c0154 100644
--- a/poky/documentation/sdk-manual/figures/sdk-installed-standard-sdk-directory.png
+++ b/poky/documentation/sdk-manual/figures/sdk-installed-standard-sdk-directory.png
Binary files differ
diff --git a/poky/documentation/sdk-manual/sdk-appendix-customizing.xml b/poky/documentation/sdk-manual/sdk-appendix-customizing.xml
index 5b56e73..c3215e6 100644
--- a/poky/documentation/sdk-manual/sdk-appendix-customizing.xml
+++ b/poky/documentation/sdk-manual/sdk-appendix-customizing.xml
@@ -17,26 +17,31 @@
         The extensible SDK primarily consists of a pre-configured copy of
         the OpenEmbedded build system from which it was produced.
         Thus, the SDK's configuration is derived using that build system and
-        the following filters, which the OpenEmbedded build system applies
-        against <filename>local.conf</filename> and
-        <filename>auto.conf</filename> if they are present:
+        the filters shown in the following list.
+        When these filters are present, the OpenEmbedded build system applies
+        them against <filename>local.conf</filename> and
+        <filename>auto.conf</filename>:
         <itemizedlist>
             <listitem><para>
                 Variables whose values start with "/" are excluded since the
                 assumption is that those values are paths that are likely to
-                be specific to the build host.
+                be specific to the
+                <ulink url='&YOCTO_DOCS_REF_URL;#hardware-build-system-term'>build host</ulink>.
                 </para></listitem>
             <listitem><para>
                 Variables listed in
                 <ulink url='&YOCTO_DOCS_REF_URL;#var-SDK_LOCAL_CONF_BLACKLIST'><filename>SDK_LOCAL_CONF_BLACKLIST</filename></ulink>
                 are excluded.
-                The default value blacklists
-                <ulink url='&YOCTO_DOCS_REF_URL;#var-CONF_VERSION'><filename>CONF_VERSION</filename></ulink>,
-                <ulink url='&YOCTO_DOCS_REF_URL;#var-BB_NUMBER_THREADS'><filename>BB_NUMBER_THREADS</filename></ulink>,
-                <ulink url='&YOCTO_DOCS_REF_URL;#var-PARALLEL_MAKE'><filename>PARALLEL_MAKE</filename></ulink>,
-                <ulink url='&YOCTO_DOCS_REF_URL;#var-PRSERV_HOST'><filename>PRSERV_HOST</filename></ulink>,
-                and
-                <ulink url='&YOCTO_DOCS_REF_URL;#var-SSTATE_MIRRORS'><filename>SSTATE_MIRRORS</filename></ulink>.
+                These variables are not allowed through from the OpenEmbedded
+                build system configuration into the extensible SDK
+                configuration.
+                Typically, these variables are specific to the machine on
+                which the build system is running and could be problematic
+                as part of the extensible SDK configuration.</para>
+
+                <para>For a list of the variables excluded by default, see the
+                <ulink url='&YOCTO_DOCS_REF_URL;#var-SDK_LOCAL_CONF_BLACKLIST'><filename>SDK_LOCAL_CONF_BLACKLIST</filename></ulink>
+                in the glossary of the Yocto Project Reference Manual.
                 </para></listitem>
             <listitem><para>
                 Variables listed in
@@ -44,7 +49,7 @@
                 are included.
                 Including a variable in the value of
                 <filename>SDK_LOCAL_CONF_WHITELIST</filename> overrides either
-                of the above two conditions.
+                of the previous two filters.
                 The default value is blank.
                 </para></listitem>
             <listitem><para>
@@ -54,7 +59,7 @@
                 <ulink url='&YOCTO_DOCS_REF_URL;#var-SDK_INHERIT_BLACKLIST'><filename>SDK_INHERIT_BLACKLIST</filename></ulink>
                 are disabled.
                 Using <filename>SDK_INHERIT_BLACKLIST</filename> to disable
-                these classes is is the typical method to disable classes that
+                these classes is the typical method to disable classes that
                 are problematic or unnecessary in the SDK context.
                 The default value blacklists the
                 <ulink url='&YOCTO_DOCS_REF_URL;#ref-classes-buildhistory'><filename>buildhistory</filename></ulink>
@@ -73,11 +78,13 @@
     </para>
 </section>
 
-<section id='adjusting-the-extensible-sdk-to-suit-your-build-system-setup'>
-    <title>Adjusting the Extensible SDK to Suit Your Build System Setup</title>
+<section id='adjusting-the-extensible-sdk-to-suit-your-build-hosts-setup'>
+    <title>Adjusting the Extensible SDK to Suit Your Build Host's Setup</title>
 
     <para>
-        In most cases, the extensible SDK defaults should work.
+        In most cases, the extensible SDK defaults should work with your
+        <ulink url='&YOCTO_DOCS_REF_URL;#hardware-build-system-term'>build host's</ulink>
+        setup.
         However, some cases exist for which you might consider making
         adjustments:
         <itemizedlist>
@@ -88,33 +95,43 @@
                 variable and you do not need or want those classes enabled in
                 the SDK, you can blacklist them by adding them to the
                 <ulink url='&YOCTO_DOCS_REF_URL;#var-SDK_INHERIT_BLACKLIST'><filename>SDK_INHERIT_BLACKLIST</filename></ulink>
-                variable.
-                The default value of <filename>SDK_INHERIT_BLACKLIST</filename>
-                is set using the "?=" operator.
-                Consequently, you will need to either set the complete value
-                using "=" or append the value using "_append".
+                variable as described in the fourth bullet of the previous
+                section.
+                <note>
+                    The default value of
+                    <filename>SDK_INHERIT_BLACKLIST</filename> is set using
+                    the "?=" operator.
+                    Consequently, you will need to either define the entire
+                    list by using the "=" operator, or you will need to append
+                    a value using either "_append" or the "+=" operator.
+                    You can learn more about these operators in the
+                    "<ulink url='&YOCTO_DOCS_BB_URL;#basic-syntax'>Basic Syntax</ulink>"
+                    section of the BitBake User Manual.
+                </note>.
                 </para></listitem>
             <listitem><para>
                 If you have classes or recipes that add additional tasks to
-                the standard build flow (i.e. that execute as part of building
-                the recipe as opposed to needing to be called explicitly), then
-                you need to do one of the following:
+                the standard build flow (i.e. the tasks execute as the recipe
+                builds as opposed to being called explicitly), then you need
+                to do one of the following:
                 <itemizedlist>
                     <listitem><para>
-                        Ensure the tasks are shared state tasks (i.e. their
-                        output is saved to and can be restored from the shared
-                        state cache), or that the tasks are able to be
-                        produced quickly from a task that is a shared state
-                        task and add the task name to the value of
+                        After ensuring the tasks are
+                        <ulink url='&YOCTO_DOCS_OM_URL;#shared-state-cache'>shared state</ulink>
+                        tasks (i.e. the output of the task is saved to and
+                        can be restored from the shared state cache) or
+                        ensuring the tasks are able to be produced quickly from
+                        a task that is a shared state task, add the task name
+                        to the value of
                         <ulink url='&YOCTO_DOCS_REF_URL;#var-SDK_RECRDEP_TASKS'><filename>SDK_RECRDEP_TASKS</filename></ulink>.
                         </para></listitem>
                     <listitem><para>
                         Disable the tasks if they are added by a class and
                         you do not need the functionality the class provides
                         in the extensible SDK.
-                        To disable the tasks, add the class to
-                        <filename>SDK_INHERIT_BLACKLIST</filename> as previously
-                        described.
+                        To disable the tasks, add the class to the
+                        <filename>SDK_INHERIT_BLACKLIST</filename> variable
+                        as described in the previous section.
                         </para></listitem>
                 </itemizedlist>
                 </para></listitem>
@@ -132,7 +149,7 @@
                 <ulink url='&YOCTO_DOCS_REF_URL;#var-SDK_UPDATE_URL'><filename>SDK_UPDATE_URL</filename></ulink>
                 variable.
                 For more information, see the
-                "<link linkend='sdk-providing-updates-after-installing-the-extensible-sdk'>Providing Updates After Installing the Extensible SDK</link>"
+                "<link linkend='sdk-providing-updates-to-the-extensible-sdk-after-installation'>Providing Updates to the Extensible SDK After Installation</link>"
                 section.
                 </para></listitem>
             <listitem><para>
@@ -162,11 +179,12 @@
     </para>
 </section>
 
-<section id='sdk-changing-the-appearance-of-the-extensible-sdk'>
-    <title>Changing the Appearance of the Extensible SDK</title>
+<section id='sdk-changing-the-sdk-installer-title'>
+    <title>Changing the Extensible SDK Installer Title</title>
 
     <para>
-        You can change the title shown by the SDK installer by setting the
+        You can change the displayed title for the SDK installer by setting
+        the
         <ulink url='&YOCTO_DOCS_REF_URL;#var-SDK_TITLE'><filename>SDK_TITLE</filename></ulink>
         variable.
         By default, this title is derived from
@@ -177,21 +195,37 @@
         <ulink url='&YOCTO_DOCS_REF_URL;#var-DISTRO'><filename>DISTRO</filename></ulink>
         variable.
     </para>
+
+    <para>
+        The
+        <ulink url='&YOCTO_DOCS_REF_URL;#ref-classes-populate-sdk-*'><filename>populate_sdk_ext</filename></ulink>
+        class defines the default value of the <filename>SDK_TITLE</filename>
+        variable as follows:
+        <literallayout class='monospaced'>
+     SDK_TITLE_task-populate-sdk-ext = "${@d.getVar('DISTRO_NAME') or d.getVar('DISTRO')} Extensible SDK"
+        </literallayout>
+    </para>
 </section>
 
-<section id='sdk-providing-updates-after-installing-the-extensible-sdk'>
-    <title>Providing Updates After Installing the Extensible SDK</title>
+<section id='sdk-providing-updates-to-the-extensible-sdk-after-installation'>
+    <title>Providing Updates to the Extensible SDK After Installation</title>
 
     <para>
         When you make changes to your configuration or to the metadata and
         if you want those changes to be reflected in installed SDKs, you need
-        to perform additional steps to make it possible for those that use
-        the SDK to update their installations with the
+        to perform additional steps.
+        These steps make it possible for anyone using the installed SDKs to
+        update the installed SDKs by using the
         <filename>devtool sdk-update</filename> command:
         <orderedlist>
             <listitem><para>
-                Arrange to be created a directory that can be shared over
-                HTTP or HTTPS.
+                Create a directory that can be shared over HTTP or HTTPS.
+                You can do this by setting up a web server such as an
+                <ulink url='https://en.wikipedia.org/wiki/Apache_HTTP_Server'>Apache HTTP Server</ulink>
+                or
+                <ulink url='https://en.wikipedia.org/wiki/Nginx'>Nginx</ulink>
+                server in the cloud to host the directory.
+                This directory must contain the published SDK.
                 </para></listitem>
             <listitem><para>
                 Set the
@@ -199,7 +233,10 @@
                 variable to point to the corresponding HTTP or HTTPS URL.
                 Setting this variable causes any SDK built to default to that
                 URL and thus, the user does not have to pass the URL to the
-                <filename>devtool sdk-update</filename> command.
+                <filename>devtool sdk-update</filename> command as described
+                in the
+                "<link linkend='sdk-applying-updates-to-an-installed-extensible-sdk'>Applying Updates to an Installed Extensible SDK</link>"
+                section.
                 </para></listitem>
             <listitem><para>
                 Build the extensible SDK normally (i.e., use the
@@ -209,7 +246,7 @@
             <listitem><para>
                 Publish the SDK using the following command:
                 <literallayout class='monospaced'>
-     $ oe-publish-sdk <replaceable>some_path</replaceable>/sdk-installer.sh <replaceable>path_to_shared/http_directory</replaceable>
+     $ oe-publish-sdk <replaceable>some_path</replaceable>/sdk-installer.sh <replaceable>path_to_shared_http_directory</replaceable>
                 </literallayout>
                 You must repeat this step each time you rebuild the SDK
                 with changes that you want to make available through the
@@ -219,11 +256,11 @@
     </para>
 
     <para>
-        Completing the above steps allows users of the existing SDKs to
-        simply run <filename>devtool sdk-update</filename> to retrieve the
-        latest updates.
+        Completing the above steps allows users of the existing installed
+        SDKs to simply run <filename>devtool sdk-update</filename> to
+        retrieve and apply the latest updates.
         See the
-        "<link linkend='sdk-updating-the-extensible-sdk'>Updating the Extensible SDK</link>"
+        "<link linkend='sdk-applying-updates-to-an-installed-extensible-sdk'>Applying Updates to an Installed Extensible SDK</link>"
         section for further information.
     </para>
 </section>
@@ -232,27 +269,38 @@
     <title>Providing Additional Installable Extensible SDK Content</title>
 
     <para>
-        If you want the users of the extensible SDK you are building to be
-        able to add items to the SDK without needing to build the
-        items from source, you need to do a number of things:
+        If you want the users of an extensible SDK you build to be
+        able to add items to the SDK without requiring the users to build
+        the items from source, you need to do a number of things:
         <orderedlist>
             <listitem><para>
                 Ensure the additional items you want the user to be able to
-                install are actually built.
-                You can ensure these items are built a number of different
-                ways: 1) Build them explicitly, perhaps using one or more
-                "meta" recipes that depend on lists of other recipes to keep
-                things tidy, or 2) Build the "world" target and set
-                <filename>EXCLUDE_FROM_WORLD_pn-</filename><replaceable>recipename</replaceable>
-                for the recipes you do not want built.
-                See the
-                <ulink url='&YOCTO_DOCS_REF_URL;#var-EXCLUDE_FROM_WORLD'><filename>EXCLUDE_FROM_WORLD</filename></ulink>
-                variable for additional information.
+                install are already built:
+                <itemizedlist>
+                    <listitem><para>
+                        Build the items explicitly.
+                        You could use one or more "meta" recipes that depend
+                        on lists of other recipes.
+                        </para></listitem>
+                    <listitem><para>
+                        Build the "world" target and set
+                        <filename>EXCLUDE_FROM_WORLD_pn-</filename><replaceable>recipename</replaceable>
+                        for the recipes you do not want built.
+                        See the
+                        <ulink url='&YOCTO_DOCS_REF_URL;#var-EXCLUDE_FROM_WORLD'><filename>EXCLUDE_FROM_WORLD</filename></ulink>
+                        variable for additional information.
+                        </para></listitem>
+                </itemizedlist>
                 </para></listitem>
             <listitem><para>
                 Expose the <filename>sstate-cache</filename> directory
                 produced by the build.
-                Typically, you expose this directory over HTTP or HTTPS.
+                Typically, you expose this directory by making it available
+                through an
+                <ulink url='https://en.wikipedia.org/wiki/Apache_HTTP_Server'>Apache HTTP Server</ulink>
+                or
+                <ulink url='https://en.wikipedia.org/wiki/Nginx'>Nginx</ulink>
+                server.
                 </para></listitem>
             <listitem><para>
                 Set the appropriate configuration so that the produced SDK
@@ -285,7 +333,7 @@
                         Alternatively, if you just want to set the
                         <filename>SSTATE_MIRRORS</filename> variable's value
                         for the SDK alone, create a
-                        <filename>conf/sdk-extra.conf</filename> either in
+                        <filename>conf/sdk-extra.conf</filename> file either in
                         your
                         <ulink url='&YOCTO_DOCS_REF_URL;#build-directory'>Build Directory</ulink>
                         or within any layer and put your
@@ -324,24 +372,24 @@
         size, which downloads and installs quickly.
         You need to realize, though, that the minimal installer does not
         install any libraries or tools out of the box.
-        These must be installed either "on the fly" or through actions you
-        perform using <filename>devtool</filename> or explicitly with the
-        <filename>devtool sdk-install</filename> command.
+        These libraries and tools must be installed either "on the fly" or
+        through actions you perform using <filename>devtool</filename> or
+        explicitly with the <filename>devtool sdk-install</filename> command.
     </para>
 
     <para>
-        In most cases, when building a minimal SDK you will need to also enable
+        In most cases, when building a minimal SDK you need to also enable
         bringing in the information on a wider range of packages produced by
         the system.
-        This is particularly true so that <filename>devtool add</filename>
-        is able to effectively map dependencies it discovers in a source tree
-        to the appropriate recipes.
-        Also so that the <filename>devtool search</filename> command
-        is able to return useful results.
+        Requiring this wider range of information is particularly true
+        so that <filename>devtool add</filename> is able to effectively map
+        dependencies it discovers in a source tree to the appropriate recipes.
+        Additionally, the information enables the
+        <filename>devtool search</filename> command to return useful results.
     </para>
 
     <para>
-        To facilitate this wider range of information, you would additionally
+        To facilitate this wider range of information, you would need to
         set the following:
         <literallayout class='monospaced'>
      SDK_INCLUDE_PKGDATA = "1"
@@ -384,8 +432,8 @@
         <ulink url='&YOCTO_DOCS_REF_URL;#var-SDK_INCLUDE_TOOLCHAIN'><filename>SDK_INCLUDE_TOOLCHAIN</filename></ulink>
         variable to "1".
         In particular, it is useful to include the toolchain when you
-        have set <filename>SDK_EXT_TYPE</filename> to
-        "minimal", which by default, excludes the toolchain.
+        have set <filename>SDK_EXT_TYPE</filename> to "minimal", which by
+        default, excludes the toolchain.
         Also, it is helpful if you are building a small SDK for use with
         an IDE, such as <trademark class='trade'>Eclipse</trademark>, or some
         other tool where you do not want to take extra steps to install a
diff --git a/poky/documentation/sdk-manual/sdk-appendix-neon.xml b/poky/documentation/sdk-manual/sdk-appendix-neon.xml
index f648047..0fb9298 100644
--- a/poky/documentation/sdk-manual/sdk-appendix-neon.xml
+++ b/poky/documentation/sdk-manual/sdk-appendix-neon.xml
@@ -14,8 +14,8 @@
         from start to finish.
         For general information on using the Eclipse IDE and the Yocto
         Project Eclipse Plug-In, see the
-        "<link linkend='sdk-eclipse-project'>Developing Applications Using <trademark class='trade'>Eclipse</trademark></link>"
-        Chapter.
+        "<link linkend='application-development-workflow-using-eclipse'>Application Development Workflow Using <trademark class='trade'>Eclipse</trademark></link>"
+        section.
     </para>
 
     <section id='neon-setting-up-the-eclipse-ide'>
@@ -53,13 +53,18 @@
                         <ulink url='http://www.eclipse.org/neon/'>http://www.eclipse.org/neon/</ulink>.
                         </para></listitem>
                     <listitem><para><emphasis>Download the Tarball:</emphasis>
-                        Click the "Download" button and then use the "Eclipse
-                        IDE for C/C++ Developers"
-                        appropriate for your development system.
+                        Click the "Download" button and look for the
+                        "Eclipse IDE for C/C++ Developers" Neon 3 Package.
+                        Select the correct platform download link listed at
+                        the right.
+                        For example, click on "64-bit" next to Linux if your
+                        build host is running a 64-bit Linux distribution.
+                        Click through the process to save the file.
                         </para></listitem>
                     <listitem><para><emphasis>Unpack the Tarball:</emphasis>
-                        Move to a clean directory and unpack the tarball.
-                        Here is an example:
+                        Move to a directory and unpack the tarball.
+                        The following commands unpack the tarball into the
+                        home directory:
                         <literallayout class='monospaced'>
      $ cd ~
      $ tar -xzvf ~/Downloads/eclipse-cpp-neon-3-linux-gtk-x86_64.tar.gz
@@ -84,11 +89,22 @@
 
             <para>
                 Follow these steps to configure the Neon Eclipse IDE.
-                <note>
-                    Depending on how you installed Eclipse and what you have
-                    already done, some of the options will not appear.
-                    If you cannot find an option as directed by the manual,
-                    it has already been installed.
+                <note><title>Notes</title>
+                    <itemizedlist>
+                        <listitem><para>
+                            Depending on how you installed Eclipse and what
+                            you have already done, some of the options do
+                            not appear.
+                            If you cannot find an option as directed by the
+                            manual, it has already been installed.
+                            </para></listitem>
+                        <listitem><para>
+                            If you want to see all options regardless of
+                            whether they are installed or not, deselect the
+                            "Hide items that are already installed"
+                            check box.
+                            </para></listitem>
+                    </itemizedlist>
                 </note>
                 <orderedlist>
                     <listitem><para>Be sure Eclipse is running and
@@ -164,11 +180,11 @@
                             in the URL field and provide a meaningful name
                             in the "Name" field.
                             </para></listitem>
-                        <listitem><para>Click "OK" to have the entry added
-                            to the "Work with:" drop-down list.
-                            </para></listitem>
-                        <listitem><para>Select the entry for the plug-in
-                            from the "Work with:" drop-down list.
+                        <listitem><para>
+                            Click "OK" to have the entry automatically
+                            populate the "Work with:" field and to have
+                            the items for installation appear in the window
+                            below.
                             </para></listitem>
                         <listitem><para>Check the boxes next to the following:
                             <literallayout class='monospaced'>
@@ -196,8 +212,14 @@
                     To install the Neon Eclipse Yocto Plug-in from the latest
                     source code, follow these steps:
                     <orderedlist>
-                        <listitem><para>Be sure your development system
-                            has JDK 1.8+
+                        <listitem><para>
+                            Be sure your build host has JDK version 1.8
+                            or greater.
+                            On a Linux build host you can determine the
+                            version using the following command:
+                            <literallayout class='monospaced'>
+     $ java -version
+                            </literallayout>
                             </para></listitem>
                         <listitem><para>install X11-related packages:
                             <literallayout class='monospaced'>
@@ -211,18 +233,19 @@
      $ git clone git://git.yoctoproject.org/eclipse-yocto
                             </literallayout>
                             </para></listitem>
-                        <listitem><para>Use Git to checkout the correct
-                            tag:
+                        <listitem><para>
+                            Use Git to create the correct tag:
                             <literallayout class='monospaced'>
      $ cd ~/eclipse-yocto
-     $ git checkout neon/yocto-&DISTRO;
+     $ git checkout -b neon/&DISTRO_NAME_NO_CAP; remotes/origin/neon/&DISTRO_NAME_NO_CAP;
                             </literallayout>
                             This creates a local tag named
-                            <filename>neon/yocto-&DISTRO;</filename> based on
-                            the branch <filename>origin/neon-master</filename>.
-                            This puts you in a detached HEAD state, which
-                            is fine since you are only going to be building
-                            and not developing.
+                            <filename>neon/&DISTRO_NAME_NO_CAP;</filename>
+                            based on the branch
+                            <filename>origin/neon/&DISTRO_NAME_NO_CAP;</filename>.
+                            You are put into a detached HEAD state,
+                            which is fine since you are only going to
+                            be building and not developing.
                             </para></listitem>
                         <listitem><para>Change to the
                             <filename>scripts</filename>
@@ -243,20 +266,22 @@
                             directory of the Git repository created
                             earlier.
                             </para></listitem>
-                        <listitem><para>Run the <filename>build.sh</filename>
+                        <listitem><para>
+                            Run the <filename>build.sh</filename>
                             script as directed.
-                            Be sure to provide the tag name, documentation
-                            branch, and a release name.</para>
-                            <para>
-                            Following is an example:
+                            Be sure to provide the tag name,
+                            documentation branch, and a release name.</para>
+
+                            <para>Following is an example:
                             <literallayout class='monospaced'>
-     $ ECLIPSE_HOME=/home/scottrif/eclipse-yocto/scripts/eclipse ./build.sh -l neon/yocto-&DISTRO; master yocto-&DISTRO; 2>&amp;1 | tee build.log
+     $ ECLIPSE_HOME=/home/scottrif/eclipse-yocto/scripts/eclipse ./build.sh -l neon/&DISTRO_NAME_NO_CAP; master yocto-&DISTRO; 2>&amp;1 | tee build.log
                             </literallayout>
-                            The previous example command adds the tag you
-                            need for <filename>neon/yocto-&DISTRO;</filename>
-                            to <filename>HEAD</filename>, then tells the
-                            build script to use the local (-l) Git checkout
-                            for the build.
+                            The previous example command adds the tag
+                            you need for
+                            <filename>neon/&DISTRO_NAME_NO_CAP;</filename>
+                            to <filename>HEAD</filename>, then tells
+                            the build script to use the local (-l) Git
+                            checkout for the build.
                             After running the script, the file
                             <filename>org.yocto.sdk-</filename><replaceable>release</replaceable><filename>-</filename><replaceable>date</replaceable><filename>-archive.zip</filename>
                             is in the current directory.
@@ -310,7 +335,7 @@
         </section>
 
         <section id='neon-configuring-the-eclipse-yocto-plug-in'>
-            <title>Configuring the Neon Eclipse Yocto Plug-in</title>
+            <title>Configuring the Neon Eclipse Yocto Plug-In</title>
 
             <para>
                 Configuring the Neon Eclipse Yocto Plug-in involves setting the
@@ -324,14 +349,16 @@
             <para>
                 To start, you need to do the following from within the
                 Eclipse IDE:
-                <itemizedlist>
-                    <listitem><para>Choose "Preferences" from the
+                <orderedlist>
+                    <listitem><para>
+                        Choose "Preferences" from the
                         "Window" menu to display the Preferences Dialog.
                         </para></listitem>
-                    <listitem><para>Click "Yocto Project SDK" to display
+                    <listitem><para>
+                        Click "Yocto Project SDK" to display
                         the configuration screen.
                         </para></listitem>
-                </itemizedlist>
+                </orderedlist>
                 The following sub-sections describe how to configure the
                 the plug-in.
                 <note>
@@ -354,15 +381,15 @@
                     the sysroot location, and select the target
                     architecture.
                     <itemizedlist>
-                        <listitem><para><emphasis>Selecting the Toolchain Type:</emphasis>
-                            Choose between
-                            <filename>Standalone pre-built toolchain</filename>
+                        <listitem><para>
+                            <emphasis>Selecting the Toolchain Type:</emphasis>
+                            Choose between "Standalone pre-built toolchain"
                             and
-                            <filename>Build system derived toolchain</filename>
-                            for Cross Compiler Options.
+                            "Build system derived toolchain" for Cross Compiler
+                            Options.
                                 <itemizedlist>
-                                    <listitem><para><emphasis>
-                                        <filename>Standalone Pre-built Toolchain:</filename></emphasis>
+                                    <listitem><para>
+                                        <emphasis>Standalone Pre-built Toolchain:</emphasis>
                                         Select this type when you are using
                                         a stand-alone cross-toolchain.
                                         For example, suppose you are an
@@ -376,24 +403,25 @@
                                         and installed a pre-built toolchain
                                         for an existing image.
                                         </para></listitem>
-                                   <listitem><para><emphasis>
-                                        <filename>Build System Derived Toolchain:</filename></emphasis>
+                                   <listitem><para>
+                                        <emphasis>Build System Derived Toolchain:</emphasis>
                                         Select this type if you built the
                                         toolchain as part of the
                                         <ulink url='&YOCTO_DOCS_REF_URL;#build-directory'>Build Directory</ulink>.
-                                        When you select
-                                        <filename>Build system derived toolchain</filename>,
-                                        you are using the toolchain built and
-                                        bundled inside the Build Directory.
+                                        When you select "Build system derived
+                                        toolchain", you are using the toolchain
+                                        built and bundled inside the Build
+                                        Directory.
                                         For example, suppose you created a
                                         suitable image using the steps in the
                                         <ulink url='https://wiki.yoctoproject.org/wiki/TipsAndTricks/RunningEclipseAgainstBuiltImage'>wiki</ulink>.
-                                        In this situation, you would select the
-                                        <filename>Build system derived toolchain</filename>.
+                                        In this situation, you would select
+                                        "Build system derived toolchain".
                                         </para></listitem>
                                 </itemizedlist>
                             </para></listitem>
-                        <listitem><para><emphasis>Specify the Toolchain Root Location:</emphasis>
+                        <listitem><para>
+                            <emphasis>Specify the Toolchain Root Location:</emphasis>
                             If you are using a stand-alone pre-built
                             toolchain, you should be pointing to where it is
                             installed (e.g.
@@ -402,10 +430,10 @@
                             "<link linkend='sdk-installing-the-sdk'>Installing the SDK</link>"
                             section for information about how the SDK is
                             installed.</para>
+
                             <para>If you are using a build system derived
                             toolchain, the path you provide for the
-                            <filename>Toolchain Root Location</filename>
-                            field is the
+                            "Toolchain Root Location" field is the
                             <ulink url='&YOCTO_DOCS_REF_URL;#build-directory'>Build Directory</ulink>
                             from which you run the
                             <filename>bitbake</filename> command (e.g
@@ -414,10 +442,12 @@
                             "<link linkend='sdk-building-an-sdk-installer'>Building an SDK Installer</link>"
                             section.
                             </para></listitem>
-                        <listitem><para><emphasis>Specify Sysroot Location:</emphasis>
+                        <listitem><para>
+                            <emphasis>Specify Sysroot Location:</emphasis>
                             This location is where the root filesystem for
                             the target hardware resides.
                             </para>
+
                             <para>This location depends on where you
                             separately extracted and installed the
                             target filesystem when you either built
@@ -438,17 +468,18 @@
                             and you would browse to and select that directory
                             (e.g. <filename>/home/scottrif/build/MY_QEMU_ROOTFS</filename>).
                             </para>
+
                             <para>For more information on how to install the
                             toolchain and on how to extract and install the
                             sysroot filesystem, see the
                             "<link linkend='sdk-building-an-sdk-installer'>Building an SDK Installer</link>"
                             section.
                             </para></listitem>
-                        <listitem><para><emphasis>Select the Target Architecture:</emphasis>
+                        <listitem><para>
+                            <emphasis>Select the Target Architecture:</emphasis>
                             The target architecture is the type of hardware
                             you are going to use or emulate.
-                            Use the pull-down
-                            <filename>Target Architecture</filename> menu
+                            Use the pull-down "Target Architecture" menu
                             to make your selection.
                             The pull-down menu should have the supported
                             architectures.
@@ -473,16 +504,17 @@
                     emulator, or you can choose to run your image on actual
                     hardware.
                     <itemizedlist>
-                        <listitem><para><emphasis>QEMU:</emphasis>
+                        <listitem><para>
+                            <emphasis>QEMU:</emphasis>
                             Select this option if you will be using the
                             QEMU emulator.
                             If you are using the emulator, you also need to
                             locate the kernel and specify any custom
                             options.</para>
-                            <para>If you selected the
-                            <filename>Build system derived toolchain</filename>,
-                            the target kernel you built will be located in
-                            the
+
+                            <para>If you selected the Build system derived
+                            toolchain, the target kernel you built will be
+                            located in the
                             <ulink url='&YOCTO_DOCS_REF_URL;#build-directory'>Build Directory</ulink>
                             in
                             <filename>tmp/deploy/images/<replaceable>machine</replaceable></filename>
@@ -494,10 +526,12 @@
                             followed by the image (e.g.
                             <filename>/home/scottrif/poky/build/tmp/deploy/images/qemux86/bzImage-qemux86.bin</filename>).
                             </para>
+
                             <para>If you selected the standalone pre-built
                             toolchain, the pre-built image you downloaded is
                             located in the directory you specified when you
                             downloaded the image.</para>
+
                             <para>Most custom options are for advanced QEMU
                             users to further customize their QEMU instance.
                             These options are specified between paired
@@ -514,16 +548,16 @@
                             The following is an example:
                            <literallayout class='monospaced'>
     serial ‘&lt;-m 256 -full-screen&gt;’
-                            </literallayout></para>
-                            <para>
+                            </literallayout>
                             Regardless of the mode, Sysroot is already
                             defined as part of the Cross-Compiler Options
-                            configuration in the
-                            <filename>Sysroot Location:</filename> field.
+                            configuration in the "Sysroot Location:" field.
                             </para></listitem>
-                        <listitem><para><emphasis>External HW:</emphasis>
+                        <listitem><para>
+                            <emphasis>External HW:</emphasis>
                             Select this option if you will be using actual
-                            hardware.</para></listitem>
+                            hardware.
+                            </para></listitem>
                     </itemizedlist>
                 </para>
 
@@ -558,31 +592,37 @@
             To create a project based on a Yocto template and then display
             the source code, follow these steps:
             <orderedlist>
-                <listitem><para>Select "C Project" from the "File -> New" menu.
+                <listitem><para>
+                    Select "C Project" from the "File -> New" menu.
                     </para></listitem>
-                <listitem><para>Expand <filename>Yocto Project SDK Autotools Project</filename>.
+                <listitem><para>
+                    Expand "Yocto Project SDK Autotools Project".
                     </para></listitem>
-                <listitem><para>Select <filename>Hello World ANSI C Autotools Projects</filename>.
+                <listitem><para>
+                    Select "Hello World ANSI C Autotools Projects".
                     This is an Autotools-based project based on a Yocto
                     template.
                     </para></listitem>
-                <listitem><para>Put a name in the <filename>Project name:</filename>
-                    field.
+                <listitem><para>
+                    Put a name in the "Project name:" field.
                     Do not use hyphens as part of the name
-                    (e.g. <filename>hello</filename>).
+                    (e.g. "hello").
                     </para></listitem>
-                <listitem><para>Click "Next".
+                <listitem><para>
+                    Click "Next".
                     </para></listitem>
-                <listitem><para>Add appropriate information in the various
-                    fields.
+                <listitem><para>
+                    Add appropriate information in the various fields.
                     </para></listitem>
-                <listitem><para>Click "Finish".
+                <listitem><para>
+                    Click "Finish".
                     </para></listitem>
-                <listitem><para>If the "open perspective" prompt appears,
+                <listitem><para>
+                    If the "open perspective" prompt appears,
                     click "Yes" so that you are in the C/C++ perspective.
                     </para></listitem>
-                <listitem><para>The left-hand navigation pane shows your
-                    project.
+                <listitem><para>
+                    The left-hand navigation pane shows your project.
                     You can display your source by double clicking the
                     project's source file.
                     </para></listitem>
@@ -600,7 +640,8 @@
             You can override these settings for a given project by following
             these steps:
             <orderedlist>
-                <listitem><para>Select "Yocto Project Settings" from
+                <listitem><para>
+                    Select "Yocto Project Settings" from
                     the "Project -> Properties" menu.
                     This selection brings up the Yocto Project Settings
                     Dialog and allows you to make changes specific to an
@@ -613,22 +654,19 @@
                     The Yocto Project Settings Dialog allows you to override
                     those default settings for a given project.
                     </para></listitem>
-                <listitem><para>Make or verify your configurations for the
-                    project and click "OK".
+                <listitem><para>
+                    Make or verify your configurations for the project and
+                    click "OK".
                     </para></listitem>
-                <listitem><para>Right-click in the navigation pane and
-                    select "Reconfigure Project" from the pop-up menu.
+                <listitem><para>
+                    Right-click in the navigation pane and select
+                    "Reconfigure Project" from the pop-up menu.
                     This selection reconfigures the project by running
-                    <filename>autogen.sh</filename> in the workspace for
-                    your project.
-                    The script also runs <filename>libtoolize</filename>,
-                    <filename>aclocal</filename>,
-                    <filename>autoconf</filename>,
-                    <filename>autoheader</filename>,
-                    <filename>automake --a</filename>, and
-                    <filename>./configure</filename>.
-                    Click on the "Console" tab beneath your source code to
-                    see the results of reconfiguring your project.
+                    <ulink url='https://en.wikipedia.org/wiki/GNU_Build_System'>Autotools GNU utility programs</ulink>
+                    such as Autoconf, Automake, and so forth in the
+                    workspace for your project.
+                    Click on the "Console" tab beneath your source code
+                    to see the results of reconfiguring your project.
                     </para></listitem>
             </orderedlist>
         </para>
@@ -656,8 +694,7 @@
                         Select the project.
                         </para></listitem>
                     <listitem><para>
-                        Select "Folder" from the
-                        <filename>File > New</filename> menu.
+                        Select "Folder" from the "File > New" menu.
                         </para></listitem>
                     <listitem><para>
                         In the "New Folder" Dialog, select "Link to alternate
@@ -782,54 +819,66 @@
                 exit out of or close that shell).
             </note>
             <orderedlist>
-                <listitem><para>Select "Debug Configurations..." from the
+                <listitem><para>
+                    Select "Debug Configurations..." from the
                     "Run" menu.</para></listitem>
-                <listitem><para>In the left area, expand
-                    <filename>C/C++Remote Application</filename>.
+                <listitem><para>
+                    In the left area, expand
+                    "C/C++Remote Application".
                     </para></listitem>
-                <listitem><para>Locate your project and select it to bring
+                <listitem><para>
+                    Locate your project and select it to bring
                     up a new tabbed view in the Debug Configurations Dialog.
                     </para></listitem>
-                <listitem><para>Click on the "Debugger" tab to see the
+                <listitem><para>
+                    Click on the "Debugger" tab to see the
                     cross-tool debugger you are using.
                     Be sure to change to the debugger perspective in Eclipse.
                     </para></listitem>
-                <listitem><para>Click on the "Main" tab.
+                <listitem><para>
+                    Click on the "Main" tab.
                     </para></listitem>
                 <listitem><para>Create a new connection to the QEMU instance
                     by clicking on "new".</para></listitem>
-                <listitem><para>Select <filename>SSH</filename>, which means
+                <listitem><para>
+                    Select "SSH", which means
                     Secure Socket Shell.
                     Optionally, you can select a TCF connection instead.
                     </para></listitem>
-                <listitem><para>Click "Next".
+                <listitem><para>
+                    Click "Next".
                     </para></listitem>
-                <listitem><para>Clear out the "Connection name" field and
+                <listitem><para>
+                    Clear out the "Connection name" field and
                     enter any name you want for the connection.
                     </para></listitem>
-                <listitem><para>Put the IP address for the connection in
+                <listitem><para>
+                    Put the IP address for the connection in
                     the "Host" field.
-                    For QEMU, the default is <filename>192.168.7.2</filename>.
+                    For QEMU, the default is "192.168.7.2".
                     However, if a previous QEMU session did not exit
                     cleanly, the IP address increments (e.g.
-                    <filename>192.168.7.3</filename>).
+                    "192.168.7.3").
                     <note>
                         You can find the IP address for the current QEMU
                         session by looking in the xterm that opens when
                         you launch QEMU.
                     </note>
                     </para></listitem>
-                <listitem><para>Enter <filename>root</filename>, which
+                <listitem><para>
+                    Enter "root", which
                     is the default for QEMU, for the "User" field.
                     Be sure to leave the password field empty.
                     </para></listitem>
                 <listitem><para>Click "Finish" to close the
                     New Connections Dialog.
                     </para></listitem>
-                <listitem><para>If necessary, use the drop-down menu now in the
+                <listitem><para>
+                    If necessary, use the drop-down menu now in the
                     "Connection" field and pick the IP Address you entered.
                      </para></listitem>
-                <listitem><para>Assuming you are connecting as the root user,
+                <listitem><para>
+                    Assuming you are connecting as the root user,
                     which is the default for QEMU x86-64 SDK images provided by
                     the Yocto Project, in the "Remote Absolute File Path for
                     C/C++ Application" field, browse to
@@ -874,9 +923,11 @@
                 <listitem><para>
                     Be sure you change to the "Debug" perspective in Eclipse.
                     </para></listitem>
-                <listitem><para>Click "Debug"
+                <listitem><para>
+                    Click "Debug"
                     </para></listitem>
-                <listitem><para>Accept the debug perspective.
+                <listitem><para>
+                    Accept the debug perspective.
                     </para></listitem>
             </orderedlist>
         </para>
diff --git a/poky/documentation/sdk-manual/sdk-appendix-obtain.xml b/poky/documentation/sdk-manual/sdk-appendix-obtain.xml
index aa06358..c608e6f 100644
--- a/poky/documentation/sdk-manual/sdk-appendix-obtain.xml
+++ b/poky/documentation/sdk-manual/sdk-appendix-obtain.xml
@@ -25,32 +25,33 @@
                 Go to <ulink url='&YOCTO_TOOLCHAIN_DL_URL;'></ulink>
                 </para></listitem>
             <listitem><para>
-                <emphasis>Open the Folder for Your Development System:</emphasis>
-                Open the folder that matches your host development system
+                <emphasis>Open the Folder for Your Build Host:</emphasis>
+                Open the folder that matches your
+                <ulink url='&YOCTO_DOCS_REF_URL;#build-system-term'>build host</ulink>
                 (i.e. <filename>i686</filename> for 32-bit machines or
                 <filename>x86_64</filename> for 64-bit machines).
                 </para></listitem>
             <listitem><para>
                 <emphasis>Locate and Download the SDK Installer:</emphasis>
                 You need to find and download the installer appropriate for
-                your development system, target hardware, and image type.
+                your build host, target hardware, and image type.
                 </para>
 
                 <para>The installer files (<filename>*.sh</filename>) follow
                 this naming convention:
                 <literallayout class='monospaced'>
-     poky-eglibc-<replaceable>host_system</replaceable>-core-image-<replaceable>type</replaceable>-<replaceable>arch</replaceable>-toolchain-ext-<replaceable>release</replaceable>.sh
+     poky-glibc-<replaceable>host_system</replaceable>-core-image-<replaceable>type</replaceable>-<replaceable>arch</replaceable>-toolchain[-ext]-<replaceable>release</replaceable>.sh
 
      Where:
          <replaceable>host_system</replaceable> is a string representing your development system:
-                i686 or x86_64.
+                "i686" or "x86_64"
 
-         <replaceable>type</replaceable> is a string representing either a "sato" or "minimal"
-                image.
+         <replaceable>type</replaceable> is a string representing the image:
+                "sato" or "minimal"
 
          <replaceable>arch</replaceable> is a string representing the target architecture:
-                aarch64, armv5e, core2-64, coretexa8hf-neon, i586, mips3242,
-                mips64, or ppc7400.
+                "aarch64", "armv5e", "core2-64", "coretexa8hf-neon", "i586", "mips32r2",
+                "mips64", or "ppc7400"
 
          <replaceable>release</replaceable> is the version of Yocto Project.
 
@@ -65,10 +66,10 @@
                 libraries appropriate for developing against those images.
                 </para>
 
-                <para>For example, if your host development system is a
-                64-bit x86 system and you are need an extended SDK for a
-                64-bit core2 target, go into the <filename>x86_64</filename>
-                folder and download the following installer:
+                <para>For example, if your build host is a 64-bit x86 system
+                and you need an extended SDK for a 64-bit core2 target, go
+                into the <filename>x86_64</filename> folder and download the
+                following installer:
                 <literallayout class='monospaced'>
      poky-glibc-x86_64-core-image-sato-core2-64-toolchain-ext-&DISTRO;.sh
                 </literallayout>
@@ -97,7 +98,7 @@
     <title>Building an SDK Installer</title>
 
     <para>
-        As an alternative to locating and downloading a SDK installer,
+        As an alternative to locating and downloading an SDK installer,
         you can build the SDK installer.
         Follow these steps:
         <orderedlist>
@@ -138,8 +139,7 @@
                 Among other things, the script creates the
                 <ulink url='&YOCTO_DOCS_REF_URL;#build-directory'>Build Directory</ulink>,
                 which is <filename>build</filename> in this case
-                and is located in the
-                <ulink url='&YOCTO_DOCS_REF_URL;#source-directory'>Source Directory</ulink>.
+                and is located in the Source Directory.
                 After the script runs, your current working directory
                 is set to the <filename>build</filename> directory.
                 </para></listitem>
@@ -148,17 +148,31 @@
                 Check to be sure that your
                 <ulink url='&YOCTO_DOCS_REF_URL;#var-MACHINE'><filename>MACHINE</filename></ulink>
                 variable in the <filename>local.conf</filename> file in your
-                <ulink url='&YOCTO_DOCS_REF_URL;#build-directory'>Build Directory</ulink>
-                matches the architecture for which you are building.
+                Build Directory matches the architecture for which you are
+                building.
                 </para></listitem>
             <listitem><para>
                 <emphasis>Make Sure Your SDK Machine is Correctly Set:</emphasis>
                 If you are building a toolchain designed to run on an
                 architecture that differs from your current development host
-                machine (i.e. the build machine), be sure that the
+                machine (i.e. the build host), be sure that the
                 <ulink url='&YOCTO_DOCS_REF_URL;#var-SDKMACHINE'><filename>SDKMACHINE</filename></ulink>
                 variable in the <filename>local.conf</filename> file in your
                 Build Directory is correctly set.
+                <note>
+                    If you are building an SDK installer for the Extensible
+                    SDK, the <filename>SDKMACHINE</filename> value must be
+                    set for the architecture of the machine you are using to
+                    build the installer.
+                    If <filename>SDKMACHINE</filename> is not set appropriately,
+                    the build fails and provides an error message similar to
+                    the following:
+                    <literallayout class='monospaced'>
+     The extensible SDK can currently only be built for the same architecture as the machine being built on - SDK_ARCH is
+     set to i686 (likely via setting SDKMACHINE) which is different from the architecture of the build machine (x86_64).
+     Unable to continue.
+                    </literallayout>
+                </note>
                 </para></listitem>
             <listitem><para>
                 <emphasis>Build the SDK Installer:</emphasis>
@@ -174,7 +188,7 @@
                 <literallayout class='monospaced'>
      $ bitbake <replaceable>image</replaceable> -c populate_sdk_ext
                 </literallayout>
-                These commands result in a SDK installer that contains the
+                These commands produce an SDK installer that contains the
                 sysroot that matches your target root filesystem.</para>
 
                 <para>When the <filename>bitbake</filename> command completes,
@@ -183,16 +197,18 @@
                 <note><title>Notes</title>
                     <itemizedlist>
                         <listitem><para>
-                            By default, this toolchain does not build static
-                            binaries.
+                            By default, the previous BitBake command does not
+                            build static binaries.
                             If you want to use the toolchain to build these
                             types of libraries, you need to be sure your SDK
                             has the appropriate static development libraries.
                             Use the
                             <ulink url='&YOCTO_DOCS_REF_URL;#var-TOOLCHAIN_TARGET_TASK'><filename>TOOLCHAIN_TARGET_TASK</filename></ulink>
                             variable inside your <filename>local.conf</filename>
-                            file to install the appropriate library packages
-                            in the SDK.
+                            file before building the SDK installer.
+                            Doing so ensures that the eventual SDK installation
+                            process installs the appropriate library packages
+                            as part of the SDK.
                             Following is an example using
                             <filename>libc</filename> static development
                             libraries:
@@ -262,32 +278,40 @@
                 Root Filesystem Image File:</emphasis>
                 You need to find and download the root filesystem image
                 file that is appropriate for your target system.
-                These files are kept in the
+                These files are kept in machine-specific folders in the
                 <ulink url='&YOCTO_DL_URL;/releases/yocto/yocto-&DISTRO;/machines/'>Index of Releases</ulink>
                 in the "machines" directory.</para>
 
-                <para>The "machines" directory contains tarballs
-                (<filename>*.tar.bz2</filename>) for supported machines.
-                The directory also contains flattened root filesystem
+                <para>The machine-specific folders of the "machines" directory
+                contain tarballs (<filename>*.tar.bz2</filename>) for supported
+                machines.
+                These directories also contain flattened root filesystem
                 image files (<filename>*.ext4</filename>), which you can use
                 with QEMU directly.</para>
 
                 <para>The pre-built root filesystem image files
                 follow these naming conventions:
                 <literallayout class='monospaced'>
+<!--
+     core-image-<replaceable>profile</replaceable>-<replaceable>arch</replaceable>-<replaceable>date_time</replaceable>.rootfs.tar.bz2
+-->
      core-image-<replaceable>profile</replaceable>-<replaceable>arch</replaceable>.tar.bz2
 
      Where:
          <replaceable>profile</replaceable> is the filesystem image's profile:
-                   lsb, lsb-dev, lsb-sdk, lsb-qt3, minimal, minimal-dev, sato,
-                   sato-dev, sato-sdk, minimal-initramfs, or sdk-ptest. For
-                   information on these types of image profiles, see the
-                   "Images" chapter in the Yocto Project Reference Manual.
+                   lsb, lsb-dev, lsb-sdk, minimal, minimal-dev, minimal-initramfs,
+                   sato, sato-dev, sato-sdk, sato-sdk-ptest. For information on
+                   these types of image profiles, see the "<ulink url='&YOCTO_DOCS_REF_URL;#ref-images'>Images</ulink>" chapter in
+                   the Yocto Project Reference Manual.
 
          <replaceable>arch</replaceable> is a string representing the target architecture:
-                beaglebone, edgerouter, genericx86, genericx86-64, mpc8315e-rdb,
-                qemuarm, qemuarm64, qemumips, qemumips64, qemuppc, qemux86, or
-                qemux86-64.
+                   beaglebone-yocto, beaglebone-yocto-lsb, edgerouter, edgerouter-lsb,
+                   genericx86, genericx86-64, genericx86-64-lsb, genericx86-lsb,
+                   mpc8315e-rdb, mpc8315e-rdb-lsb, and qemu*.
+
+<!-->
+         <replaceable>date_time</replaceable> is a date and time stamp.
+-->
 
                 </literallayout>
                 The root filesystems provided by the Yocto Project are based
@@ -295,26 +319,28 @@
                 <filename>core-image-minimal</filename> images.
                 </para>
 
-                <para>For example, if your target hardware system is a
-                BeagleBone board and your image is a
-                <filename>core-image-minimal</filename> image, you need
-                to download the following root filesystem image file:
+                <para>For example, if you plan on using a BeagleBone device
+                as your target hardware and your image is a
+                <filename>core-image-sato-sdk</filename>
+                image, you can download the following file:
                 <literallayout class='monospaced'>
-     core-image-minimal-beaglebone.tar.bz2
+     core-image-sato-sdk-beaglebone-yocto.tar.bz2
                 </literallayout>
                 </para></listitem>
             <listitem><para>
                 <emphasis>Initialize the Cross-Development Environment:</emphasis>
-                You must <filename>source</filename>
-                the cross-development environment setup script to establish
-                necessary environment variables.</para>
+                You must <filename>source</filename> the cross-development
+                environment setup script to establish necessary environment
+                variables.</para>
 
                 <para>This script is located in the top-level directory in
                 which you installed the toolchain (e.g.
                 <filename>poky_sdk</filename>).</para>
 
-                <para>Following is an example for the Core2 64-bit
-                architecture:
+                <para>Following is an example based on the toolchain installed
+                in the
+                "<link linkend='sdk-locating-pre-built-sdk-installers'>Locating Pre-Built SDK Installers</link>"
+                section:
                 <literallayout class='monospaced'>
      $ source ~/poky_sdk/environment-setup-core2-64-poky-linux
                 </literallayout>
@@ -331,10 +357,10 @@
                 This command extracts the root filesystem into the
                 <filename>core2-64-sato</filename> directory:
                 <literallayout class='monospaced'>
-     $ runqemu-extract-sdk ~/Downloads/core-image-sato-core2-64.tar.bz2 ~/core2-64-sato
+     $ runqemu-extract-sdk ~/Downloads/core-image-sato-sdk-beaglebone-yocto.tar.bz2 ~/beaglebone-sato
                 </literallayout>
                 You could now point to the target sysroot at
-                <filename>core2-64-sato</filename>.
+                <filename>beablebone-sato</filename>.
                 </para></listitem>
         </orderedlist>
     </para>
@@ -350,7 +376,7 @@
     </para>
 
     <para>
-        <imagedata fileref="figures/sdk-installed-standard-sdk-directory.png" scale="60" align="center" />
+        <imagedata fileref="figures/sdk-installed-standard-sdk-directory.png" scale="80" align="center" />
     </para>
 
     <para>
@@ -391,7 +417,7 @@
     </para>
 
     <para>
-        <imagedata fileref="figures/sdk-installed-extensible-sdk-directory.png" scale="60" align="center" />
+        <imagedata fileref="figures/sdk-installed-extensible-sdk-directory.png" scale="80" align="center" />
     </para>
 
     <para>
@@ -406,8 +432,8 @@
     <para>
         Of note in the directory structure are an environment setup script
         for the SDK, a configuration file for the target, a version file for
-        the target, and a log file for the OpenEmbedded build system
-        preparation script run by the installer.
+        the target, and log files for the OpenEmbedded build system
+        preparation script run by the installer and BitBake.
     </para>
 
     <para>
@@ -415,11 +441,9 @@
         portions of the file or directory name.
         For example,
         <replaceable>install_dir</replaceable> is the directory where the SDK
-        is installed, which is <filename>poky_sdk</filename> by default.
+        is installed, which is <filename>poky_sdk</filename> by default, and
         <replaceable>target</replaceable> represents the target
-        architecture (e.g. <filename>i586</filename>) and
-        <replaceable>host</replaceable> represents the development system's
-        architecture (e.g. <filename>x86_64</filename>).
+        architecture (e.g. <filename>i586</filename>).
     </para>
 </section>
 
diff --git a/poky/documentation/sdk-manual/sdk-eclipse-project.xml b/poky/documentation/sdk-manual/sdk-eclipse-project.xml
index 3eb85e8..f8a586f 100644
--- a/poky/documentation/sdk-manual/sdk-eclipse-project.xml
+++ b/poky/documentation/sdk-manual/sdk-eclipse-project.xml
@@ -12,15 +12,34 @@
         application all from within Eclipse.
         This chapter describes general workflow using the SDK and Eclipse
         and how to configure and set up Eclipse.
+        <note><title>Notes</title>
+            <itemizedlist>
+                <listitem><para>
+                    This chapter assumes development of applications on top of
+                    an image prepared using the Yocto Project.
+                    As such, inclusion of a pre-built image or the building of
+                    an image is included in the workflow.
+                    </para></listitem>
+                <listitem><para>
+                    The chapter also assumes development on a build host that
+                    is set up to use the Yocto Project.
+                    Realize that you can easily use Eclipse and the Yocto
+                    Project plug-in to develop an application for any number
+                    of images developed and tested on different machines.
+                    </para></listitem>
+            </itemizedlist>
+        </note>
     </para>
 
-    <section id='workflow-using-eclipse'>
-        <title>Workflow Using <trademark class='trade'>Eclipse</trademark></title>
+    <section id='application-development-workflow-using-eclipse'>
+        <title>Application Development Workflow Using <trademark class='trade'>Eclipse</trademark></title>
 
         <para>
-            The following figure and supporting list summarize the
+            The following figure and supporting list summarize a
             general workflow for application development that uses the
             SDK within the Eclipse IDE.
+            The application developed runs on top of an image created using
+            the Yocto Project.
         </para>
 
         <para>
@@ -32,22 +51,29 @@
             <orderedlist>
                 <listitem><para>
                     <emphasis>Prepare the Host System for the Yocto Project</emphasis>:
+                    Because this example workflow assumes development on a
+                    system set up to use the Yocto Project, you need to be
+                    sure your
+                    <ulink url='&YOCTO_DOCS_REF_URL;#hardware-build-system-term'>build host</ulink>
+                    can use the Yocto Project.
                     See the
-                    "<ulink url='&YOCTO_DOCS_REF_URL;#detailed-supported-distros'>Supported Linux Distributions</ulink>"
-                    and
-                    "<ulink url='&YOCTO_DOCS_REF_URL;#required-packages-for-the-host-development-system'>Required Packages for the Host Development System</ulink>"
-                    sections both in the Yocto Project Reference Manual for
-                    requirements.
-                    In particular, be sure your host system has the
-                    <filename>xterm</filename> package installed.
+                    "<ulink url='&YOCTO_DOCS_DEV_URL;#setting-up-the-development-host-to-use-the-yocto-project'>Preparing a Build Host</ulink>"
+                    section in the Yocto Project Development Tasks Manual for
+                    information on how to set up your build host.
+                    <note>
+                        Be sure you install the "xterm" package, which is a
+                        <ulink url='&YOCTO_DOCS_REF_URL;#required-packages-for-the-host-development-system'>graphical and Eclipse plug-in extra</ulink>
+                        needed by Eclipse.
+                    </note>
                     </para></listitem>
                 <listitem><para>
-                    <emphasis>Secure the Yocto Project Kernel Target
-                    Image</emphasis>:
-                    You must have a target kernel image that has been built
-                    using the OpenEmbedded build system.</para>
-                    <para>Depending on whether the Yocto Project has a
-                    pre-built image that matches your target architecture
+                    <emphasis>Secure the Yocto Project Kernel Target Image</emphasis>:
+                    This example workflow assumes application development on
+                    top of an image built using the Yocto Project.
+                    Depending on whether you are using a pre-built image
+                    that matches your target architecture or you are using an
+                    image you build using the
+                    <ulink url='&YOCTO_DOCS_REF_URL;#build-system-term'>OpenEmbedded Build System</ulink>
                     and where you are going to run the image while you
                     develop your application (QEMU or real hardware), the
                     area from which you get the image differs.
@@ -78,6 +104,10 @@
                             "<ulink url='&YOCTO_DOCS_KERNEL_DEV_URL;#using-devtool-to-patch-the-kernel'>Using <filename>devtool</filename> to Patch the Kernel</ulink>"
                             section in the Yocto Project Linux Kernel
                             Development Manual for an example.
+                            You can also see the
+                            "<ulink url='https://wiki.yoctoproject.org/wiki/TipsAndTricks/RunningEclipseAgainstBuiltImage#Making_a_Suitable_Qemux86_Image'>Making a Suitable Qemux86 Image</ulink>"
+                            wiki for steps needed to build an image suitable
+                            for QEMU and for debugging within the Eclipse IDE.
                             </para></listitem>
                     </itemizedlist>
                     </para></listitem>
@@ -91,10 +121,10 @@
                     section.
                     </para></listitem>
                 <listitem><para>
-                    <emphasis>Secure the Target Root Filesystem
-                    and the Cross-Development Toolchain</emphasis>:
+                    <emphasis>Secure the Target Root Filesystem and the Cross-Development Toolchain</emphasis>:
                     You need to find and download the appropriate root
                     filesystem and the cross-development toolchain.</para>
+
                     <para>You can find the tarballs for the root filesystem
                     in the same area used for the kernel image.
                     Depending on the type of image you are running, the
@@ -102,6 +132,7 @@
                     For example, if you are developing an application that
                     runs on an image that supports Sato, you need to get a
                     root filesystem that supports Sato.</para>
+
                     <para>You can find the cross-development toolchains at
                     <ulink url='&YOCTO_TOOLCHAIN_DL_URL;'><filename>toolchains</filename></ulink>.
                     Be sure to get the correct toolchain for your
@@ -124,8 +155,7 @@
                     </para></listitem>
                 <listitem><para>
                     <emphasis>Create and Build Your Application</emphasis>:
-                    At this point, you need to have source files for your
-                    application.
+                    You need to have source files for your application.
                     Once you have the files, you can use the Eclipse IDE
                     to import them and build the project.
                     </para></listitem>
@@ -270,6 +300,17 @@
                             "Launch" button.
                             You should see the Eclipse welcome page from which
                             can click "workbench" to enter your workspace.
+                            <note>
+                                The executable for Eclipse is located in the
+                                <filename>eclipse/cpp-oxygen/eclipse</filename>
+                                folder.
+                                To launch Eclipse outside of the installation
+                                process, simply execute that binary.
+                                Here is an example:
+                                <literallayout class='monospaced'>
+     $ ~/eclipse/cpp-oxygen/eclipse/eclipse
+                                </literallayout>
+                            </note>
                             </para></listitem>
                     </orderedlist>
                 </para>
@@ -284,13 +325,13 @@
                         <itemizedlist>
                             <listitem><para>
                                 Depending on how you installed Eclipse and what
-                                you have already done, some of the options will
+                                you have already done, some of the options do
                                 not appear.
                                 If you cannot find an option as directed by the
                                 manual, it has already been installed.
                                 </para></listitem>
                             <listitem><para>
-                                If you want to see all items regardless of
+                                If you want to see all options regardless of
                                 whether they are installed or not, deselect the
                                 "Hide items that are already installed"
                                 check box.
@@ -555,7 +596,7 @@
             </section>
 
             <section id='oxygen-configuring-the-eclipse-yocto-plug-in'>
-                <title>Configuring the Oxygen Eclipse Yocto Plug-in</title>
+                <title>Configuring the Oxygen Eclipse Yocto Plug-In</title>
 
                 <para>
                     Configuring the Oxygen Eclipse Yocto Plug-in involves
@@ -604,18 +645,13 @@
                         architecture.
                         <itemizedlist>
                             <listitem><para>
-                                <emphasis>Selecting the Toolchain
-                                Type:</emphasis>
-                                Choose between
-                                <filename>Standalone pre-built toolchain</filename>
-                                and
-                                <filename>Build system derived toolchain</filename>
-                                for Cross Compiler Options.
+                                <emphasis>Selecting the Toolchain Type:</emphasis>
+                                Choose between "Standalone pre-built toolchain"
+                                and "Build system derived toolchain" for
+                                Cross Compiler Options.
                                 <itemizedlist>
                                     <listitem><para>
-                                        <emphasis>
-                                        <filename>Standalone Pre-built Toolchain:</filename>
-                                        </emphasis>
+                                        <emphasis>Standalone Pre-built Toolchain:</emphasis>
                                         Select this type when you are using
                                         a stand-alone cross-toolchain.
                                         For example, suppose you are an
@@ -630,29 +666,24 @@
                                         for an existing image.
                                         </para></listitem>
                                     <listitem><para>
-                                        <emphasis>
-                                        <filename>Build System Derived Toolchain:</filename>
-                                        </emphasis>
+                                        <emphasis>Build System Derived Toolchain:</emphasis>
                                         Select this type if you built the
                                         toolchain as part of the
                                         <ulink url='&YOCTO_DOCS_REF_URL;#build-directory'>Build Directory</ulink>.
-                                        When you select
-                                        <filename>Build system derived toolchain</filename>,
-                                        you are using the toolchain built
-                                        and bundled inside the Build
+                                        When you select "Build system derived
+                                        toolchain", you are using the toolchain
+                                        built and bundled inside the Build
                                         Directory.
                                         For example, suppose you created a
                                         suitable image using the steps in the
                                         <ulink url='https://wiki.yoctoproject.org/wiki/TipsAndTricks/RunningEclipseAgainstBuiltImage'>wiki</ulink>.
                                         In this situation, you would select
-                                        the
-                                        <filename>Build system derived toolchain</filename>.
+                                        "Build system derived toolchain".
                                         </para></listitem>
                                 </itemizedlist>
                                 </para></listitem>
                             <listitem><para>
-                                <emphasis>Specify the Toolchain Root
-                                Location:</emphasis>
+                                <emphasis>Specify the Toolchain Root Location:</emphasis>
                                 If you are using a stand-alone pre-built
                                 toolchain, you should be pointing to where
                                 it is installed (e.g.
@@ -661,11 +692,10 @@
                                 "<link linkend='sdk-installing-the-sdk'>Installing the SDK</link>"
                                 section for information about how the SDK is
                                 installed.</para>
+
                                 <para>If you are using a build system
                                 derived toolchain, the path you provide for
-                                the
-                                <filename>Toolchain Root Location</filename>
-                                field is the
+                                the "Toolchain Root Location" field is the
                                 <ulink url='&YOCTO_DOCS_REF_URL;#build-directory'>Build Directory</ulink>
                                 from which you run the
                                 <filename>bitbake</filename> command (e.g
@@ -676,11 +706,11 @@
                                 section.
                                 </para></listitem>
                             <listitem><para>
-                                <emphasis>Specify Sysroot Location:
-                                </emphasis>
+                                <emphasis>Specify Sysroot Location:</emphasis>
                                 This location is where the root filesystem
                                 for the target hardware resides.
                                 </para>
+
                                 <para>This location depends on where you
                                 separately extracted and installed the
                                 target filesystem when you either built
@@ -702,6 +732,7 @@
                                 directory (e.g.
                                 <filename>/home/scottrif/poky/build/MY_QEMU_ROOTFS</filename>).
                                 </para>
+
                                 <para>For more information on how to
                                 install the toolchain and on how to extract
                                 and install the sysroot filesystem, see the
@@ -709,12 +740,10 @@
                                 section.
                                 </para></listitem>
                             <listitem><para>
-                                <emphasis>Select the Target Architecture:
-                                </emphasis>
+                                <emphasis>Select the Target Architecture:</emphasis>
                                 The target architecture is the type of
                                 hardware you are going to use or emulate.
-                                Use the pull-down
-                                <filename>Target Architecture</filename>
+                                Use the pull-down "Target Architecture"
                                 menu to make your selection.
                                 The pull-down menu should have the
                                 supported architectures.
@@ -747,10 +776,10 @@
                                 If you are using the emulator, you also
                                 need to locate the kernel and specify any
                                 custom options.</para>
-                                <para>If you selected the
-                                <filename>Build system derived toolchain</filename>,
-                                the target kernel you built will be located
-                                in the
+
+                                <para>If you selected the Build system derived
+                                toolchain, the target kernel you built will be
+                                located in the
                                 <ulink url='&YOCTO_DOCS_REF_URL;#build-directory'>Build Directory</ulink>
                                 in
                                 <filename>tmp/deploy/images/<replaceable>machine</replaceable></filename>
@@ -762,11 +791,13 @@
                                 Directory path followed by the image (e.g.
                                 <filename>/home/scottrif/poky/build/tmp/deploy/images/qemux86/bzImage-qemux86.bin</filename>).
                                 </para>
+
                                 <para>If you selected the standalone
                                 pre-built toolchain, the pre-built image
                                 you downloaded is located in the directory
                                 you specified when you downloaded the
                                 image.</para>
+
                                 <para>Most custom options are for advanced
                                 QEMU users to further customize their QEMU
                                 instance.
@@ -785,18 +816,17 @@
                                 The following is an example:
                                <literallayout class='monospaced'>
     serial ‘&lt;-m 256 -full-screen&gt;’
-                                </literallayout></para>
-                                <para>
+                                </literallayout>
                                 Regardless of the mode, Sysroot is already
                                 defined as part of the Cross-Compiler
-                                Options configuration in the
-                                <filename>Sysroot Location:</filename>
-                                field.
+                                Options configuration in the "Sysroot
+                                Location:" field.
                                 </para></listitem>
                             <listitem><para>
                                 <emphasis>External HW:</emphasis>
                                 Select this option if you will be using
-                                actual hardware.</para></listitem>
+                                actual hardware.
+                                </para></listitem>
                         </itemizedlist>
                     </para>
 
@@ -849,7 +879,7 @@
                     <listitem><para>
                         Put a name in the "Project name:" field.
                         Do not use hyphens as part of the name
-                        (e.g. <filename>hello</filename>).
+                        (e.g. "hello").
                         </para></listitem>
                     <listitem><para>
                         Click "Next".
@@ -1080,7 +1110,7 @@
                         </para></listitem>
                     <listitem><para>
                         In the left area, expand
-                        <filename>C/C++Remote Application</filename>.
+                        "C/C++Remote Application".
                         </para></listitem>
                     <listitem><para>
                         Locate your project and select it to bring
@@ -1099,7 +1129,7 @@
                     <listitem><para>
                         Create a new connection to the QEMU instance
                         by clicking on "new".</para></listitem>
-                    <listitem><para>Select <filename>SSH</filename>, which
+                    <listitem><para>Select "SSH", which
                         means Secure Socket Shell and then click "OK".
                         Optionally, you can select a TCF connection
                         instead.
@@ -1111,11 +1141,10 @@
                     <listitem><para>
                         Put the IP address for the connection in
                         the "Host" field.
-                        For QEMU, the default is
-                        <filename>192.168.7.2</filename>.
+                        For QEMU, the default is "192.168.7.2".
                         However, if a previous QEMU session did not exit
                         cleanly, the IP address increments (e.g.
-                        <filename>192.168.7.3</filename>).
+                        "192.168.7.3").
                         <note>
                             You can find the IP address for the current
                             QEMU session by looking in the xterm that
@@ -1123,7 +1152,7 @@
                         </note>
                         </para></listitem>
                     <listitem><para>
-                        Enter <filename>root</filename>, which
+                        Enter "root", which
                         is the default for QEMU, for the "User" field.
                         Be sure to leave the password field empty.
                         </para></listitem>
diff --git a/poky/documentation/sdk-manual/sdk-extensible.xml b/poky/documentation/sdk-manual/sdk-extensible.xml
index 5215a9d..09f0608 100644
--- a/poky/documentation/sdk-manual/sdk-extensible.xml
+++ b/poky/documentation/sdk-manual/sdk-extensible.xml
@@ -1715,31 +1715,35 @@
         </para>
     </section>
 
-    <section id='sdk-updating-the-extensible-sdk'>
-        <title>Updating the Extensible SDK</title>
+    <section id='sdk-applying-updates-to-an-installed-extensible-sdk'>
+        <title>Applying Updates to an Installed Extensible SDK</title>
 
         <para>
-            If you are working with an extensible SDK that gets occasionally
-            updated (e.g. typically when that SDK has been provided to you by
-            another party), then you will need to manually pull down those
-            updates to your installed SDK.
+            If you are working with an installed extensible SDK that gets
+            occasionally updated (e.g. a third-party SDK), then you will need
+            to manually "pull down" the updates into the installed SDK.
         </para>
 
         <para>
-            To update your installed SDK, run the following:
+            To update your installed SDK, use <filename>devtool</filename> as
+            follows:
             <literallayout class='monospaced'>
      $ devtool sdk-update
             </literallayout>
             The previous command assumes your SDK provider has set the default
-            update URL for you.
-            If that URL has not been set, you need to specify it yourself as
-            follows:
+            update URL for you through the
+            <ulink url='&YOCTO_DOCS_REF_URL;#var-SDK_UPDATE_URL'><filename>SDK_UPDATE_URL</filename></ulink>
+            variable as described in the
+            "<link linkend='sdk-providing-updates-to-the-extensible-sdk-after-installation'>Providing Updates to the Extensible SDK After Installation</link>"
+            section.
+            If the SDK provider has not set that default URL, you need to
+            specify it yourself in the command as follows:
             <literallayout class='monospaced'>
      $ devtool sdk-update <replaceable>path_to_update_directory</replaceable>
             </literallayout>
             <note>
-                The URL needs to point specifically to a published SDK and not an
-                SDK installer that you would download and install.
+                The URL needs to point specifically to a published SDK and
+                not to an SDK installer that you would download and install.
             </note>
         </para>
     </section>
diff --git a/poky/documentation/sdk-manual/sdk-manual.xml b/poky/documentation/sdk-manual/sdk-manual.xml
index e858b9b..60db9dc 100644
--- a/poky/documentation/sdk-manual/sdk-manual.xml
+++ b/poky/documentation/sdk-manual/sdk-manual.xml
@@ -56,6 +56,11 @@
                 <date>May 2018</date>
                 <revremark>Released with the Yocto Project 2.5 Release.</revremark>
             </revision>
+            <revision>
+                <revnumber>2.5.1</revnumber>
+                <date>September 2018</date>
+                <revremark>The initial document released with the Yocto Project 2.5.1 Release.</revremark>
+            </revision>
        </revhistory>
 
     <copyright>
