reset upstream subtrees to yocto 2.6
Reset the following subtrees on thud HEAD:
poky: 87e3a9739d
meta-openembedded: 6094ae18c8
meta-security: 31dc4e7532
meta-raspberrypi: a48743dc36
meta-xilinx: c42016e2e6
Also re-apply backports that didn't make it into thud:
poky:
17726d0 systemd-systemctl-native: handle Install wildcards
meta-openembedded:
4321a5d libtinyxml2: update to 7.0.1
042f0a3 libcereal: Add native and nativesdk classes
e23284f libcereal: Allow empty package
030e8d4 rsyslog: curl-less build with fmhttp PACKAGECONFIG
179a1b9 gtest: update to 1.8.1
Squashed OpenBMC subtree compatibility updates:
meta-aspeed:
Brad Bishop (1):
aspeed: add yocto 2.6 compatibility
meta-ibm:
Brad Bishop (1):
ibm: prepare for yocto 2.6
meta-ingrasys:
Brad Bishop (1):
ingrasys: set layer compatibility to yocto 2.6
meta-openpower:
Brad Bishop (1):
openpower: set layer compatibility to yocto 2.6
meta-phosphor:
Brad Bishop (3):
phosphor: set layer compatibility to thud
phosphor: libgpg-error: drop patches
phosphor: react to fitimage artifact rename
Ed Tanous (4):
Dropbear: upgrade options for latest upgrade
yocto2.6: update openssl options
busybox: remove upstream watchdog patch
systemd: Rebase CONFIG_CGROUP_BPF patch
Change-Id: I7b1fe71cca880d0372a82d94b5fd785323e3a9e7
Signed-off-by: Brad Bishop <bradleyb@fuzziesquirrel.com>
diff --git a/poky/documentation/dev-manual/dev-manual-start.xml b/poky/documentation/dev-manual/dev-manual-start.xml
index d8726b4..3f971ba 100644
--- a/poky/documentation/dev-manual/dev-manual-start.xml
+++ b/poky/documentation/dev-manual/dev-manual-start.xml
@@ -10,8 +10,10 @@
This chapter provides procedures related to getting set up to use the
Yocto Project.
You can learn about creating a team environment that develops using the
- Yocto Project, how to set up a build host, how to locate Yocto Project
- source repositories, and how to create local Git repositories.
+ Yocto Project, how to set up a
+ <ulink url='&YOCTO_DOCS_REF_URL;#hardware-build-system-term'>build host</ulink>,
+ how to locate Yocto Project source repositories, and how to create local
+ Git repositories.
</para>
<section id="usingpoky-changes-collaborate">
@@ -19,69 +21,71 @@
<para>
It might not be immediately clear how you can use the Yocto
- Project in a team development environment, or scale it for a large
- team of developers.
+ Project in a team development environment, or how to scale it for a
+ large team of developers.
One of the strengths of the Yocto Project is that it is extremely
flexible.
Thus, you can adapt it to many different use cases and scenarios.
- However, these characteristics can cause a struggle if you are trying
+ However, this flexibility could cause difficulties if you are trying
to create a working setup that scales across a large team.
</para>
<para>
To help you understand how to set up this type of environment,
- this section presents a procedure that gives you the information
- to learn how to get the results you want.
+ this section presents a procedure that gives you information
+ that can help you get the results you want.
The procedure is high-level and presents some of the project's most
successful experiences, practices, solutions, and available
- technologies that work well.
+ technologies that have proved to work well in the past.
Keep in mind, the procedure here is a starting point.
- You can build off it and customize it to fit any
+ You can build off these steps and customize the procedure to fit any
particular working environment and set of practices.
<orderedlist>
<listitem><para>
<emphasis>Determine Who is Going to be Developing:</emphasis>
You need to understand who is going to be doing anything
related to the Yocto Project and what their roles would be.
- Making this determination is essential to completing the
+ Making this determination is essential to completing
steps two and three, which are to get your equipment together
and set up your development environment's hardware topology.
</para>
<para>The following roles exist:
- <itemizedlist>
- <listitem><para>
- <emphasis>Application Development:</emphasis>
- These types of developers do application level work
- on top of an existing software stack.
- </para></listitem>
- <listitem><para>
- <emphasis>Core System Development:</emphasis>
- These types of developers work on the contents of the
- operating system image itself.
- </para></listitem>
- <listitem><para>
- <emphasis>Build Engineer:</emphasis>
- This type of developer manages Autobuilders and
- releases.
- Not all environments need a Build Engineer.
- </para></listitem>
- <listitem><para>
- <emphasis>Test Engineer:</emphasis>
- This type of developer creates and manages automated
- tests needed to ensure all application and core
- system development meets desired quality standards.
- </para></listitem>
- </itemizedlist>
+ <itemizedlist>
+ <listitem><para>
+ <emphasis>Application Developer:</emphasis>
+ This type of developer does application level work
+ on top of an existing software stack.
+ </para></listitem>
+ <listitem><para>
+ <emphasis>Core System Developer:</emphasis>
+ This type of developer works on the contents of the
+ operating system image itself.
+ </para></listitem>
+ <listitem><para>
+ <emphasis>Build Engineer:</emphasis>
+ This type of developer manages Autobuilders and
+ releases.
+ Not all environments need a Build Engineer.
+ </para></listitem>
+ <listitem><para>
+ <emphasis>Test Engineer:</emphasis>
+ This type of developer creates and manages automated
+ tests that are used to ensure all application and
+ core system development meets desired quality
+ standards.
+ </para></listitem>
+ </itemizedlist>
</para></listitem>
<listitem><para>
<emphasis>Gather the Hardware:</emphasis>
Based on the size and make-up of the team, get the hardware
together.
- Any development, build, or test engineer should be using
- a system that is running a supported Linux distribution.
- Systems, in general, should be high performance (e.g. dual,
- six-core Xeons with 24 Gbytes of RAM and plenty of disk space).
+ Ideally, any development, build, or test engineer uses
+ a system that runs a supported Linux distribution.
+ These systems, in general, should be high performance
+ (e.g. dual, six-core Xeons with 24 Gbytes of RAM and plenty
+ of disk space).
You can help ensure efficiency by having any machines used
for testing or that run Autobuilders be as high performance
as possible.
@@ -107,11 +111,12 @@
<emphasis>Use Git as Your Source Control Manager (SCM):</emphasis>
Keeping your
<ulink url='&YOCTO_DOCS_REF_URL;#metadata'>Metadata</ulink>
- and any software you are developing under the
- control of an SCM system that is compatible
- with the OpenEmbedded build system is advisable.
- Of the SCMs BitBake supports, the
- Yocto Project team strongly recommends using
+ (i.e. recipes, configuration files, classes, and so forth)
+ and any software you are developing under the control of an SCM
+ system that is compatible with the OpenEmbedded build system
+ is advisable.
+ Of the SCMs BitBake supports, the Yocto Project team strongly
+ recommends using
<ulink url='&YOCTO_DOCS_OM_URL;#git'>Git</ulink>.
Git is a distributed system that is easy to backup,
allows you to work remotely, and then connects back to the
@@ -129,20 +134,19 @@
being used to generate the web interface that lets you view the
repositories.
The <filename>gitolite</filename> software identifies users
- using SSH keys and allows branch-based
- access controls to repositories that you can control as little
- or as much as necessary.
-
+ using SSH keys and allows branch-based access controls to
+ repositories that you can control as little or as much as
+ necessary.
<note>
The setup of these services is beyond the scope of this
manual.
- However, sites such as these exist that describe how to
- perform setup:
+ However, sites such as the following exist that describe
+ how to perform setup:
<itemizedlist>
<listitem><para>
<ulink url='http://git-scm.com/book/ch4-8.html'>Git documentation</ulink>:
- Describes how to install <filename>gitolite</filename>
- on the server.
+ Describes how to install
+ <filename>gitolite</filename> on the server.
</para></listitem>
<listitem><para>
<ulink url='http://gitolite.com'>Gitolite</ulink>:
@@ -150,8 +154,8 @@
</para></listitem>
<listitem><para>
<ulink url='https://git.wiki.kernel.org/index.php/Interfaces,_frontends,_and_tools'>Interfaces, frontends, and tools</ulink>:
- Documentation on how to create interfaces and frontends
- for Git.
+ Documentation on how to create interfaces and
+ frontends for Git.
</para></listitem>
</itemizedlist>
</note>
@@ -161,23 +165,22 @@
As mentioned earlier, application developers are creating
applications on top of existing software stacks.
Following are some best practices for setting up machines
- that do application development:
+ used for application development:
<itemizedlist>
<listitem><para>
- Use a pre-built toolchain that
- contains the software stack itself.
+ Use a pre-built toolchain that contains the software
+ stack itself.
Then, develop the application code on top of the
stack.
This method works well for small numbers of relatively
isolated applications.
</para></listitem>
<listitem><para>
- When possible, use the Yocto Project
- plug-in for the
+ When possible, use the Yocto Project plug-in for the
<trademark class='trade'>Eclipse</trademark> IDE
and SDK development practices.
For more information, see the
- "<ulink url='&YOCTO_DOCS_SDK_URL;'>Yocto Project Application Development and the Extensible Software Development Kit (eSDK)</ulink>"
+ <ulink url='&YOCTO_DOCS_SDK_URL;'>Yocto Project Application Development and the Extensible Software Development Kit (eSDK)</ulink>
manual.
</para></listitem>
<listitem><para>
@@ -186,27 +189,29 @@
toolchain downloads or as updates through a package
update mechanism using <filename>opkg</filename>
to provide updates to an existing toolchain.
- The exact mechanics of how and when to do this are a
- question for local policy.
+ The exact mechanics of how and when to do this depend
+ on local policy.
</para></listitem>
<listitem><para>
- Use multiple toolchains installed locally
- into different locations to allow development across
+ Use multiple toolchains installed locally into
+ different locations to allow development across
versions.
</para></listitem>
</itemizedlist>
</para></listitem>
<listitem><para>
<emphasis>Set up the Core Development Machines:</emphasis>
- As mentioned earlier, these types of developers work on the
- contents of the operating system itself.
+ As mentioned earlier, core developers work on the contents of
+ the operating system itself.
Following are some best practices for setting up machines
used for developing images:
<itemizedlist>
<listitem><para>
- Have the Yocto Project build system itself available on
- the developer workstations so developers can run their own
- builds and directly rebuild the software stack.
+ Have the
+ <ulink url='&YOCTO_DOCS_REF_URL;#build-system-term'>OpenEmbedded build system</ulink>
+ available on the developer workstations so developers
+ can run their own builds and directly rebuild the
+ software stack.
</para></listitem>
<listitem><para>
Keep the core system unchanged as much as
@@ -228,8 +233,9 @@
Autobuilders are often the core of the development
environment.
It is here that changes from individual developers are brought
- together and centrally tested and subsequent decisions about
- releases can be made.
+ together and centrally tested.
+ Based on this automated build and test environment, subsequent
+ decisions about releases can be made.
Autobuilders also allow for "continuous integration" style
testing of software components and regression identification
and tracking.</para>
@@ -239,22 +245,23 @@
The Yocto Project team has found this implementation
works well in this role.
A public example of this is the Yocto Project
- Autobuilders, which we use to test the overall health of the
- project.</para>
+ Autobuilders, which the Yocto Project team uses to test the
+ overall health of the project.</para>
<para>The features of this system are:
<itemizedlist>
<listitem><para>
- Highlights when commits break the build.
- </para></listitem>
- <listitem><para>
- Populates an sstate cache from which
- developers can pull rather than requiring local
- builds.
+ Highlights when commits break the build.
</para></listitem>
<listitem><para>
- Allows commit hook triggers,
- which trigger builds when commits are made.
+ Populates an
+ <ulink url='&YOCTO_DOCS_OM_URL;#shared-state-cache'>sstate cache</ulink>
+ from which developers can pull rather than requiring
+ local builds.
+ </para></listitem>
+ <listitem><para>
+ Allows commit hook triggers, which trigger builds when
+ commits are made.
</para></listitem>
<listitem><para>
Allows triggering of automated image booting
@@ -275,19 +282,19 @@
Allows scheduling of builds so that resources
can be used efficiently.
</para></listitem>
- </itemizedlist>
- </para></listitem>
- <listitem><para>
- <emphasis>Set up Test Machines:</emphasis>
- Use a small number of shared, high performance systems
- for testing purposes.
- Developers can use these systems for wider, more
- extensive testing while they continue to develop
- locally using their primary development system.
- </para></listitem>
- <listitem><para>
- <emphasis>Document Policies and Change Flow:</emphasis>
- The Yocto Project itself uses a hierarchical structure and a
+ </itemizedlist>
+ </para></listitem>
+ <listitem><para>
+ <emphasis>Set up Test Machines:</emphasis>
+ Use a small number of shared, high performance systems
+ for testing purposes.
+ Developers can use these systems for wider, more
+ extensive testing while they continue to develop
+ locally using their primary development system.
+ </para></listitem>
+ <listitem><para>
+ <emphasis>Document Policies and Change Flow:</emphasis>
+ The Yocto Project uses a hierarchical structure and a
pull model.
Scripts exist to create and send pull requests
(i.e. <filename>create-pull-request</filename> and
@@ -330,16 +337,20 @@
<listitem><para>
Maintain your Metadata in layers that make sense
for your situation.
- See the "<link linkend='understanding-and-creating-layers'>Understanding
- and Creating Layers</link>" section for more information on
- layers.
+ See the
+ "<ulink url='&YOCTO_DOCS_OM_URL;#the-yocto-project-layer-model'>The Yocto Project Layer Model</ulink>"
+ section in the Yocto Project Overview and Concepts
+ Manual and the
+ "<link linkend='understanding-and-creating-layers'>Understanding and Creating Layers</link>"
+ section for more information on layers.
</para></listitem>
<listitem><para>
Separate the project's Metadata and code by using
separate Git repositories.
See the
"<ulink url='&YOCTO_DOCS_OM_URL;#yocto-project-repositories'>Yocto Project Source Repositories</ulink>"
- section for information on these repositories.
+ section in the Yocto Project Overview and Concepts
+ Manual for information on these repositories.
See the
"<link linkend='locating-yocto-project-source-files'>Locating Yocto Project Source Files</link>"
section for information on how to set up local Git
@@ -360,7 +371,8 @@
</para></listitem>
<listitem><para>
The Yocto Project community encourages you
- to send patches to the project to fix bugs or add features.
+ to send patches to the project to fix bugs or add
+ features.
If you do submit patches, follow the project commit
guidelines for writing good commit messages.
See the "<link linkend='how-to-submit-a-change'>Submitting a Change to the Yocto Project</link>"
@@ -369,10 +381,12 @@
<listitem><para>
Send changes to the core sooner than later
as others are likely to run into the same issues.
- For some guidance on mailing lists to use, see the list in the
+ For some guidance on mailing lists to use, see the list
+ in the
"<link linkend='how-to-submit-a-change'>Submitting a Change to the Yocto Project</link>"
section.
- For a description of the available mailing lists, see the
+ For a description of the available mailing lists, see
+ the
"<ulink url='&YOCTO_DOCS_REF_URL;#resources-mailinglist'>Mailing Lists</ulink>"
section in the Yocto Project Reference Manual.
</para></listitem>
@@ -382,22 +396,28 @@
</para>
</section>
-<section id='setting-up-the-development-host-to-use-the-yocto-project'>
+<section id='dev-preparing-the-build-host'>
<title>Preparing the Build Host</title>
<para>
- This section provides procedures to set up your development host to
- use the Yocto Project.
- You can use the Yocto Project on a native Linux development host or
- you can use
+ This section provides procedures to set up a system to be used as your
+ <ulink url='&YOCTO_DOCS_REF_URL;#hardware-build-system-term'>build host</ulink>
+ for development using the Yocto Project.
+ Your build host can be a native Linux machine (recommended) or it can
+ be a machine (Linux, Mac, or Windows) that uses
<ulink url='https://git.yoctoproject.org/cgit/cgit.cgi/crops/about/'>CROPS</ulink>,
which leverages
- <ulink url='https://www.docker.com/'>Docker Containers</ulink>,
- to prepare any Linux, Mac, or Windows development host.
+ <ulink url='https://www.docker.com/'>Docker Containers</ulink>.
+ <note>
+ You cannot use a build host that is using the
+ <ulink url='https://en.wikipedia.org/wiki/Windows_Subsystem_for_Linux'>Windows Subsystem for Linux</ulink>
+ (WSL).
+ The Yocto Project is not compatible with WSL.
+ </note>
</para>
<para>
- Once your development host is set up to use the Yocto Project,
+ Once your build host is set up to use the Yocto Project,
further steps are necessary depending on what you want to
accomplish.
See the following references for information on how to prepare for
@@ -432,7 +452,7 @@
<para>
Follow these steps to prepare a native Linux machine as your
- Yocto Project development host:
+ Yocto Project Build Host:
<orderedlist>
<listitem><para>
<emphasis>Use a Supported Linux Distribution:</emphasis>
@@ -450,8 +470,8 @@
</para></listitem>
<listitem><para>
<emphasis>Have Enough Free Memory:</emphasis>
- You should have at least 50 Gbytes of free disk space
- for building images.
+ Your system should have at least 50 Gbytes of free disk
+ space for building images.
</para></listitem>
<listitem><para>
<emphasis>Meet Minimal Version Requirements:</emphasis>
@@ -480,14 +500,14 @@
<listitem><para>
<emphasis>Install Development Host Packages:</emphasis>
Required development host packages vary depending on your
- build machine and what you want to do with the Yocto
+ build host and what you want to do with the Yocto
Project.
Collectively, the number of required packages is large
if you want to be able to cover all cases.</para>
<para>For lists of required packages for all scenarios,
see the
- "<ulink url='&YOCTO_DOCS_REF_URL;#required-packages-for-the-host-development-system'>Required Packages for the Host Development System</ulink>"
+ "<ulink url='&YOCTO_DOCS_REF_URL;#required-packages-for-the-build-host'>Required Packages for the Build Host</ulink>"
section in the Yocto Project Reference Manual.
</para></listitem>
</orderedlist>
@@ -514,7 +534,7 @@
<para>
With
- <ulink url='https://git.yoctoproject.org/cgit/cgit.cgi/crops/about/'>CROPS</ulink>,
+ <ulink url='https://github.com/crops/crops/blob/master/README.md'>CROPS</ulink>,
which leverages
<ulink url='https://www.docker.com/'>Docker Containers</ulink>,
you can create a Yocto Project development environment that
@@ -525,66 +545,101 @@
<para>
Follow these general steps to prepare a Windows, Mac, or Linux
- machine as your Yocto Project development host:
+ machine as your Yocto Project build host:
<orderedlist>
<listitem><para>
- <emphasis>Go to the Docker Installation Site:</emphasis>
+ <emphasis>Determine What Your Build Host Needs:</emphasis>
<ulink url='https://www.docker.com/what-docker'>Docker</ulink>
is a software container platform that you need to install
- on the host development machine.
- To start the installation process, see the
- <ulink url='https://docs.docker.com/engine/installation/'>Docker Installation</ulink>
- site.
+ on the build host.
+ Depending on your build host, you might have to install
+ different software to support Docker containers.
+ Go to the Docker installation page and read about the
+ platform requirements in
+ "<ulink url='https://docs.docker.com/install/#supported-platforms'>Supported Platforms</ulink>"
+ your build host needs to run containers.
</para></listitem>
<listitem><para>
- <emphasis>Choose Your Docker Edition:</emphasis>
- Docker comes in several editions.
- For the Yocto Project, the stable community edition
- (i.e. "Docker CE Stable") is adequate.
- You can learn more about the Docker editions from the
- site.
+ <emphasis>Choose What To Install:</emphasis>
+ Depending on whether or not your build host meets system
+ requirements, you need to install "Docker CE Stable" or
+ the "Docker Toolbox".
+ Most situations call for Docker CE.
+ However, if you have a build host that does not meet
+ requirements (e.g. Pre-Windows 10 or Windows 10 "Home"
+ version), you must install Docker Toolbox instead.
</para></listitem>
<listitem><para>
<emphasis>Go to the Install Site for Your Platform:</emphasis>
Click the link for the Docker edition associated with
- your development host machine's native software.
- For example, if your machine is running Microsoft
+ your build host's native software.
+ For example, if your build host is running Microsoft
Windows Version 10 and you want the Docker CE Stable
edition, click that link under "Supported Platforms".
</para></listitem>
<listitem><para>
- <emphasis>Understand What You Need:</emphasis>
- The install page has pre-requisites your machine must
- meet.
- Be sure you read through this page and make sure your
- machine meets the requirements to run Docker.
- If your machine does not meet the requirements, the page
- has instructions to handle exceptions.
- For example, to run Docker on Windows 10, you must have
- the pro version of the operating system.
- If you have the home version, you need to install the
- <ulink url='https://docs.docker.com/toolbox/overview/#ready-to-get-started'>Docker Toolbox</ulink>.
- </para>
-
- <para>Another example is that a Windows machine needs to
- have Microsoft Hyper-V.
- If you have a legacy version of the the Microsoft
- operating system or for any other reason you do not have
- Microsoft Hyper-V, you would have to enter the BIOS and
- enable virtualization.
- </para></listitem>
- <listitem><para>
<emphasis>Install the Software:</emphasis>
Once you have understood all the pre-requisites, you can
download and install the appropriate software.
Follow the instructions for your specific machine and
- the type of the software you need to install.
+ the type of the software you need to install:
+ <itemizedlist>
+ <listitem><para>
+ Install
+ <ulink url='https://docs.docker.com/docker-for-windows/install/#install-docker-for-windows-desktop-app'>Docker CE for Windows</ulink>
+ for Windows build hosts that meet requirements.
+ </para></listitem>
+ <listitem><para>
+ Install
+ <ulink url='https://docs.docker.com/docker-for-mac/install/#install-and-run-docker-for-mac'>Docker CE for Macs</ulink>
+ for Mac build hosts that meet requirements.
+ </para></listitem>
+ <listitem><para>
+ Install
+ <ulink url='https://docs.docker.com/toolbox/toolbox_install_windows/'>Docker Toolbox for Windows</ulink>
+ for Windows build hosts that do not meet Docker
+ requirements.
+ </para></listitem>
+ <listitem><para>
+ Install
+ <ulink url='https://docs.docker.com/toolbox/toolbox_install_mac/'>Docker Toolbox for MacOS</ulink>
+ for Mac build hosts that do not meet Docker
+ requirements.
+ </para></listitem>
+ <listitem><para>
+ Install
+ <ulink url='https://docs.docker.com/install/linux/docker-ce/centos/'>Docker CE for CentOS</ulink>
+ for Linux build hosts running the CentOS
+ distribution.
+ </para></listitem>
+ <listitem><para>
+ Install
+ <ulink url='https://docs.docker.com/install/linux/docker-ce/debian/'>Docker CE for Debian</ulink>
+ for Linux build hosts running the Debian
+ distribution.
+ </para></listitem>
+ <listitem><para>
+ Install
+ <ulink url='https://docs.docker.com/install/linux/docker-ce/fedora/'>Docker CE for Fedora</ulink>
+ for Linux build hosts running the Fedora
+ distribution.
+ </para></listitem>
+ <listitem><para>
+ Install
+ <ulink url='https://docs.docker.com/install/linux/docker-ce/ubuntu/'>Docker CE for Ubuntu</ulink>
+ for Linux build hosts running the Ubuntu
+ distribution.
+ </para></listitem>
+ </itemizedlist>
</para></listitem>
<listitem><para>
<emphasis>Optionally Orient Yourself With Docker:</emphasis>
If you are unfamiliar with Docker and the container
concept, you can learn more here -
<ulink url='https://docs.docker.com/get-started/'></ulink>.
+ </para></listitem>
+ <listitem><para>
+ <emphasis>Launch Docker or Docker Toolbox:</emphasis>
You should be able to launch Docker or the Docker Toolbox
and have a terminal shell on your development host.
</para></listitem>
@@ -593,7 +648,7 @@
Go to
<ulink url='https://github.com/crops/docker-win-mac-docs/wiki'></ulink>
and follow the directions for your particular
- development host (i.e. Linux, Mac, or Windows).</para>
+ build host (i.e. Linux, Mac, or Windows).</para>
<para>Once you complete the setup instructions for your
machine, you have the Poky, Extensible SDK, and Toaster
@@ -622,8 +677,8 @@
<title>Locating Yocto Project Source Files</title>
<para>
- This section contains procedures related to locating Yocto Project
- files.
+ This section shows you how to locate and access the
+ source files that ship with the Yocto Project.
You establish and use these local files to work on projects.
<note><title>Notes</title>
<itemizedlist>
@@ -670,7 +725,7 @@
</para></listitem>
<listitem><para>
<emphasis>Select the Repository:</emphasis>
- Click on the repository in which you are interested (i.e.
+ Click on the repository in which you are interested (e.g.
<filename>poky</filename>).
</para></listitem>
<listitem><para>
@@ -704,6 +759,7 @@
The procedure in this section exists should you desire a
tarball snapshot of any given component.
</note>
+ Follow these steps to locate and download a particular tarball:
<orderedlist>
<listitem><para>
<emphasis>Access the Index of Releases:</emphasis>
@@ -753,7 +809,10 @@
uses a "DOWNLOADS" page from which you can locate and download
tarballs of any Yocto Project release.
Rather than Git repositories, these files represent snapshot
- tarballs.
+ tarballs similar to the tarballs located in the Index of Releases
+ described in the
+ "<link linkend='accessing-index-of-releases'>Accessing Index of Releases</link>"
+ section.
<note><title>Tip</title>
The recommended method for accessing Yocto Project
components is to use Git to clone a repository and work from
@@ -771,18 +830,23 @@
<listitem><para>
<emphasis>Get to the Downloads Area:</emphasis>
Select the "DOWNLOADS" item from the pull-down
- "SOFTWARE" tab menu.
+ "SOFTWARE" tab menu near the top of the page.
</para></listitem>
<listitem><para>
<emphasis>Select a Yocto Project Release:</emphasis>
Use the menu next to "RELEASE" to display and choose
- a Yocto Project release (e.g. sumo, rocko, pyro, and
- so forth.
- For a "map" of Yocto Project releases to version numbers,
- see the
- <ulink url='https://wiki.yoctoproject.org/wiki/Releases'>Releases</ulink>
- wiki page.
- </para></listitem>
+ a recent or past supported Yocto Project release
+ (e.g. &DISTRO_NAME_NO_CAP;,
+ &DISTRO_NAME_NO_CAP_MINUS_ONE;, and so forth).
+ <note><title>Tip</title>
+ For a "map" of Yocto Project releases to version
+ numbers, see the
+ <ulink url='https://wiki.yoctoproject.org/wiki/Releases'>Releases</ulink>
+ wiki page.
+ </note>
+ You can use the "RELEASE ARCHIVE" link to reveal a menu of
+ all Yocto Project releases.
+ </para></listitem>
<listitem><para>
<emphasis>Download Tools or Board Support Packages (BSPs):</emphasis>
From the "DOWNLOADS" page, you can download tools or
@@ -799,8 +863,9 @@
<para>
Yocto Project maintains an area for nightly builds that contains
tarball releases at <ulink url='&YOCTO_AB_NIGHTLY_URL;'/>.
- These builds include Yocto Project releases, SDK installation
- scripts, and experimental builds.
+ These builds include Yocto Project releases ("poky"),
+ toolchains, Yocto Project plugins for Eclipse, and builds for
+ supported machines.
</para>
<para>
@@ -808,14 +873,21 @@
Yocto Project component, use the following procedure:
<orderedlist>
<listitem><para>
- <emphasis>Access the Nightly Builds:</emphasis>
+ <emphasis>Locate the Index of Nightly Builds:</emphasis>
Open a browser and go to
<ulink url='&YOCTO_AB_NIGHTLY_URL;'/> to access the
Nightly Builds.
</para></listitem>
<listitem><para>
+ <emphasis>Select a Date:</emphasis>
+ Click on the date in which you are interested.
+ If you want the latest builds, use "CURRENT".
+ </para></listitem>
+ <listitem><para>
<emphasis>Select a Build:</emphasis>
- Click on any build by date in which you are interested.
+ Choose the area in which you are interested.
+ For example, if you are looking for the most recent
+ toolchains, select the "toolchain" link.
</para></listitem>
<listitem><para>
<emphasis>Find the Tarball:</emphasis>
@@ -831,27 +903,23 @@
</section>
</section>
-<section id='cloning-and-checking-out-branchs'>
+<section id='cloning-and-checking-out-branches'>
<title>Cloning and Checking Out Branches</title>
<para>
- To use the Yocto Project, you need a release of the Yocto Project
- locally installed on your development system.
- The locally installed set of files is referred to as the
+ To use the Yocto Project for development, you need a release locally
+ installed on your development system.
+ This locally installed set of files is referred to as the
<ulink url='&YOCTO_DOCS_REF_URL;#source-directory'>Source Directory</ulink>
in the Yocto Project documentation.
</para>
<para>
- You create your Source Directory by using
+ The preferred method of creating your Source Directory is by using
<ulink url='&YOCTO_DOCS_OM_URL;#git'>Git</ulink> to clone a local
copy of the upstream <filename>poky</filename> repository.
- <note><title>Tip</title>
- The preferred method of getting the Yocto Project Source
- Directory set up is to clone the repository.
- </note>
- Working from a copy of the upstream repository allows you
- to contribute back into the Yocto Project or simply work with
+ Working from a cloned copy of the upstream repository allows you
+ to contribute back into the Yocto Project or to simply work with
the latest software on a development branch.
Because Git maintains and creates an upstream repository with
a complete history of changes and you are working with a local
@@ -871,21 +939,23 @@
<orderedlist>
<listitem><para>
<emphasis>Set Your Directory:</emphasis>
- Be in the directory where you want to create your local
- copy of poky.
+ Change your working directory to where you want to
+ create your local copy of
+ <filename>poky</filename>.
</para></listitem>
<listitem><para>
<emphasis>Clone the Repository:</emphasis>
- The following command clones the repository and uses
+ The following example command clones the
+ <filename>poky</filename> repository and uses
the default name "poky" for your local repository:
<literallayout class='monospaced'>
$ git clone git://git.yoctoproject.org/poky
Cloning into 'poky'...
- remote: Counting objects: 367178, done.
- remote: Compressing objects: 100% (88161/88161), done.
- remote: Total 367178 (delta 272761), reused 366942 (delta 272525)
- Receiving objects: 100% (367178/367178), 133.26 MiB | 6.40 MiB/s, done.
- Resolving deltas: 100% (272761/272761), done.
+ remote: Counting objects: 416542, done.
+ remote: Compressing objects: 100% (98611/98611), done.
+ remote: Total 416542 (delta 311104), reused 416377 (delta 310939)
+ Receiving objects: 100% (416542/416542), 150.39 MiB | 15.77 MiB/s, done.
+ Resolving deltas: 100% (311104/311104), done.
Checking connectivity... done.
</literallayout>
Unless you specify a specific development branch or
@@ -900,8 +970,8 @@
<link linkend='checkout-out-by-tag-in-poky'>Checking Out By Tag in Poky</link>"
sections, respectively.</para>
- <para>Once the repository is created, you can change to
- that directory and check its status.
+ <para>Once the local repository is created, you can
+ change to that directory and check its status.
Here, the single "master" branch exists on your system
and by default, it is checked out:
<literallayout class='monospaced'>
@@ -916,6 +986,10 @@
Your local repository of poky is identical to the
upstream poky repository at the time from which it was
cloned.
+ As you work with the local branch, you can periodically
+ use the <filename>git pull ‐‐rebase</filename>
+ command to be sure you are up-to-date with the upstream
+ branch.
</para></listitem>
</orderedlist>
</para>