summaryrefslogtreecommitdiffstats
path: root/documentation/dev-manual/dev-manual-model.xml
diff options
context:
space:
mode:
authorScott Rifenbark <srifenbark@gmail.com>2017-06-29 15:54:35 -0700
committerRichard Purdie <richard.purdie@linuxfoundation.org>2017-07-12 00:28:15 +0100
commitb643938bdecd4ed928713c3a9b4c9f7e0e637964 (patch)
tree7dbde3901caa80b516a49eb1c7bc1a85ca819499 /documentation/dev-manual/dev-manual-model.xml
parent0e92314239dc4b81a1d944b54f485292b422f982 (diff)
downloadpoky-b643938bdecd4ed928713c3a9b4c9f7e0e637964.tar.gz
dev-manual, kernel-dev: Moved the kernel build hierarchy section
Fixes [YOCTO #11630] The section that presented the Yocto Linux kernel file structure resulting from a build using BitBake needed to be in the kernel-dev manual. I moved it over. This required transferring over a figure as well. (From yocto-docs rev: 0abc6c7d87a6aa10dac28fefbb280eb51fea61a7) Signed-off-by: Scott Rifenbark <srifenbark@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'documentation/dev-manual/dev-manual-model.xml')
-rw-r--r--documentation/dev-manual/dev-manual-model.xml71
1 files changed, 3 insertions, 68 deletions
diff --git a/documentation/dev-manual/dev-manual-model.xml b/documentation/dev-manual/dev-manual-model.xml
index 05ff369f5d..0055bccfed 100644
--- a/documentation/dev-manual/dev-manual-model.xml
+++ b/documentation/dev-manual/dev-manual-model.xml
@@ -82,71 +82,6 @@
82 <ulink url='&YOCTO_DOCS_KERNEL_DEV_URL;'>Yocto Project Linux Kernel Development Manual</ulink>. 82 <ulink url='&YOCTO_DOCS_KERNEL_DEV_URL;'>Yocto Project Linux Kernel Development Manual</ulink>.
83 </para> 83 </para>
84 84
85 <section id='kernel-overview'>
86 <title>Kernel Overview</title>
87
88 <para>
89 Upstream storage of all the available kernel source code is
90 one thing, while representing and using the code on your host
91 development system is another.
92 Conceptually, you can think of the kernel source repositories
93 as all the source files necessary for all the supported
94 Yocto Linux kernels.
95 As a developer, you are just interested in the source files
96 for the kernel on which you are working.
97 And, furthermore, you need them available on your host system.
98 </para>
99
100 <para>
101 Kernel source code is available on your host system a couple
102 of different ways.
103 If you are working in the kernel all the time, you probably
104 would want to set up your own local Git repository of the
105 Yocto Linux kernel tree.
106 If you just need to make some patches to the kernel, you can
107 access temporary kernel source files that were extracted and
108 used during a build.
109 We will just talk about working with the temporary source code.
110 For more information on how to get kernel source code onto your
111 host system, see the
112 "<link linkend='local-kernel-files'>Setting Up to Work On a Kernel</link>"
113 section.
114 </para>
115
116 <para>
117 What happens during the build?
118 When you build the kernel on your development system, all files needed for the build
119 are taken from the source repositories pointed to by the
120 <ulink url='&YOCTO_DOCS_REF_URL;#var-SRC_URI'><filename>SRC_URI</filename></ulink> variable
121 and gathered in a temporary work area
122 where they are subsequently used to create the unique kernel.
123 Thus, in a sense, the process constructs a local source tree specific to your
124 kernel to generate the new kernel image - a source generator if you will.
125 </para>
126
127 <para>
128 The following figure shows the temporary file structure
129 created on your host system when the build occurs.
130 This
131 <ulink url='&YOCTO_DOCS_REF_URL;#build-directory'>Build Directory</ulink>
132 contains all the source files used during the build.
133 </para>
134
135 <para>
136 <imagedata fileref="figures/kernel-overview-2-generic.png"
137 width="6in" depth="5in" align="center" scale="100" />
138 </para>
139
140 <para>
141 Again, for additional information on the Yocto Project kernel's
142 architecture and its branching strategy, see the
143 <ulink url='&YOCTO_DOCS_KERNEL_DEV_URL;'>Yocto Project Linux Kernel Development Manual</ulink>.
144 You can also reference the
145 "<link linkend='patching-the-kernel'>Patching the Kernel</link>"
146 section for a detailed example that modifies the kernel.
147 </para>
148 </section>
149
150 <section id='kernel-modification-workflow'> 85 <section id='kernel-modification-workflow'>
151 <title>Kernel Modification Workflow</title> 86 <title>Kernel Modification Workflow</title>
152 87
@@ -219,9 +154,9 @@
219 Try to resist the temptation to directly edit an 154 Try to resist the temptation to directly edit an
220 existing <filename>.config</filename> file, which is 155 existing <filename>.config</filename> file, which is
221 found in the Build Directory among the source code 156 found in the Build Directory among the source code
222 used for the build (e.g. see the bottom 157 used for the build (e.g. see the workflow illustration
223 illustration in the 158 in the
224 "<link linkend='kernel-overview'>Kernel Overview</link>" 159 "<link linkend='kernel-modification-workflow'>Kernel Modification Workflow</link>"
225 section). 160 section).
226 Doing so, can produce unexpected results when the 161 Doing so, can produce unexpected results when the
227 OpenEmbedded build system regenerates the configuration 162 OpenEmbedded build system regenerates the configuration