kernel-dev, dev-manual: Moved Kernel prep steps

The dev-manual had a place-holder section for getting the
build host ready for using YP and then doing kernel
development.  This stuff is better suited for the actual
kernel development manual.  I moved the section.  Moving
created several broken links in the manual set that had to
be fixed.

In the dev-manual, I updated the introductory list to include
the newly moved kernel stuff.

(From yocto-docs rev: 2e21260bb5f84e9e30eb353ec841d5962e8a7642)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Scott Rifenbark
2017-08-18 15:12:33 -07:00
committed by Richard Purdie
parent 25aacfe1da
commit a64831cad7
6 changed files with 206 additions and 141 deletions

View File

@@ -474,15 +474,15 @@
</para>
<para>
The example assumes a clean build exists for the <filename>qemux86</filename>
machine in a
The example builds an extensible SDK, which is then used to
build, using <filename>devtool</filename>, a clean image for the
default <filename>qemux86</filename> machine in a
<ulink url='&YOCTO_DOCS_REF_URL;#source-directory'>Source Directory</ulink>
named <filename>poky</filename>.
Furthermore, the
In the example, the
<ulink url='&YOCTO_DOCS_REF_URL;#build-directory'>Build Directory</ulink>
is <filename>build</filename> and is located in
<filename>poky</filename> and the kernel is based on the
Linux 3.4 kernel.
is <filename>build</filename> and is located in the default
<filename>poky_sdk</filename> directory.
</para>
<para>
@@ -491,12 +491,74 @@
section.
</para>
<section id='patch-kernel-set-up-the-build-host'>
<title>Set Up the Build Host</title>
<para>
Prior to creating any actual patches for your kernel, you
need to prepare the build host.
This example builds an extensible SDK.
Follow these steps:
<itemizedlist>
<listitem><para>
<emphasis>Set Up the Build Environment:</emphasis>
Be sure you are set up to use BitBake in a shell.
See the
"<ulink url='&YOCTO_DOCS_DEV_URL;#setting-up-the-development-host-to-use-the-yocto-project'>Setting Up the Development Host to Use the Yocto Project</ulink>"
section in the Yocto Project Development Manual for information
on how to get a build host ready that is either a native
Linux machine or a machine that uses CROPS.
</para></listitem>
<listitem><para>
<emphasis>Clone the <filename>poky</filename> Repository:</emphasis>
You need to have a local copy of the Yocto Project
<ulink url='&YOCTO_DOCS_REF_URL;#source-directory'>Source Directory</ulink>
(i.e. a local <filename>poky</filename> repository).
See the
"<ulink url='&YOCTO_DOCS_DEV_URL;#cloning-the-poky-repository'>Cloning the <filename>poky</filename> Repository</ulink>"
and possibly the
"<ulink url='&YOCTO_DOCS_DEV_URL;#checking-out-by-branch-in-poky'>Checking Out by Branch in Poky</ulink>"
and
"<ulink url='&YOCTO_DOCS_DEV_URL;#checkout-out-by-tag-in-poky'>Checking Out by Tag in Poky</ulink>"
sections all in the Yocto Project Development Manual for
information on how to clone the <filename>poky</filename>
repository and check out the appropriate branch for your work.
</para></listitem>
<listitem><para>
<emphasis>Initialize the Build Environment:</emphasis>
While in the root directory of the Source Directory (i.e.
<filename>poky</filename>), run the
<ulink url='&YOCTO_DOCS_REF_URL;#structure-core-script'><filename>&OE_INIT_FILE;</filename></ulink>
environment setup script to define the OpenEmbedded
build environment on your build host.
<literallayout class='monospaced'>
$ source &OE_INIT_FILE;
</literallayout>
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>.
After the script runs, your current working directory
is set to the <filename>build</filename> directory.
<note>
For information on running a memory-resident
<ulink url='&YOCTO_DOCS_REF_URL;#usingpoky-components-bitbake'>BitBake</ulink>,
see the
<ulink url='&YOCTO_DOCS_REF_URL;#structure-memres-core-script'><filename>oe-init-build-env-memres</filename></ulink>
setup script.
</note>
</para></listitem>
</itemizedlist>
</para>
</section>
<section id='create-a-layer-for-your-changes'>
<title>Create a Layer for your Changes</title>
<para>
The first step is to create a layer so you can isolate your
changes.
changes to the kernel.
Rather than use the <filename>yocto-layer</filename> script
to create the layer, this example steps through the process
by hand.