diff options
author | Scott Rifenbark <srifenbark@gmail.com> | 2018-02-19 15:40:19 -0800 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2018-03-03 08:35:24 +0000 |
commit | 189851f9d6c32f32a236338c35d2a911a91f2282 (patch) | |
tree | 91ea9e610eb481d6f53a0cdc7ca396bdda710336 /documentation/getting-started/getting-started-yp-intro.xml | |
parent | 68823387c35b766f32399b3051f789a2cf4a74f5 (diff) | |
download | poky-189851f9d6c32f32a236338c35d2a911a91f2282.tar.gz |
getting-started: Added section on BB workflow
New section called "The OpenEmbedded Build System Workflow".
This section presents the tried and true flow block figure
that shows what happens when you fire off a build.
(From yocto-docs rev: 5b4313ba87a2ccd139f2b980f4cf097700421cf4)
Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'documentation/getting-started/getting-started-yp-intro.xml')
-rw-r--r-- | documentation/getting-started/getting-started-yp-intro.xml | 75 |
1 files changed, 71 insertions, 4 deletions
diff --git a/documentation/getting-started/getting-started-yp-intro.xml b/documentation/getting-started/getting-started-yp-intro.xml index 964a500ad4..caabb13c10 100644 --- a/documentation/getting-started/getting-started-yp-intro.xml +++ b/documentation/getting-started/getting-started-yp-intro.xml | |||
@@ -72,7 +72,11 @@ | |||
72 | Most ODMs, OSVs, and chip vendors create and supply | 72 | Most ODMs, OSVs, and chip vendors create and supply |
73 | BSPs that support their hardware. | 73 | BSPs that support their hardware. |
74 | If you have custom silicon, you can create a BSP | 74 | If you have custom silicon, you can create a BSP |
75 | that supports that architecture. | 75 | that supports that architecture.</para> |
76 | |||
77 | <para>Aside from lots of architecture support, the | ||
78 | Yocto Project fully supports a wide range of device | ||
79 | emulation through the Quick EMUlator (QEMU). | ||
76 | </para></listitem> | 80 | </para></listitem> |
77 | <listitem><para> | 81 | <listitem><para> |
78 | <emphasis>Images and Code Transfer Easily:</emphasis> | 82 | <emphasis>Images and Code Transfer Easily:</emphasis> |
@@ -104,6 +108,13 @@ | |||
104 | embedded devices. | 108 | embedded devices. |
105 | You only add the feature support or packages that you | 109 | You only add the feature support or packages that you |
106 | absolutely need for the device. | 110 | absolutely need for the device. |
111 | For devices that have display hardware, you can use | ||
112 | available system components such as X11, GTK+, Qt, | ||
113 | Clutter, and SDL (among others) to create a rich user | ||
114 | experience. | ||
115 | For devices that do not have a display or where you | ||
116 | want to use alternative UI frameworks, you can choose | ||
117 | to not install these components. | ||
107 | </para></listitem> | 118 | </para></listitem> |
108 | <listitem><para> | 119 | <listitem><para> |
109 | <emphasis>Comprehensive Toolchain Capabilities:</emphasis> | 120 | <emphasis>Comprehensive Toolchain Capabilities:</emphasis> |
@@ -130,7 +141,9 @@ | |||
130 | You can incrementally add these grouped functionalities | 141 | You can incrementally add these grouped functionalities |
131 | to your project as needed. | 142 | to your project as needed. |
132 | Using layers to isolate and group functionality | 143 | Using layers to isolate and group functionality |
133 | reduces project complexity and redundancy. | 144 | reduces project complexity and redundancy, allows you |
145 | to easily extend the system, make customizations, | ||
146 | and keep functionality organized. | ||
134 | </para></listitem> | 147 | </para></listitem> |
135 | <listitem><para> | 148 | <listitem><para> |
136 | <emphasis>Supports Partial Builds:</emphasis> | 149 | <emphasis>Supports Partial Builds:</emphasis> |
@@ -736,6 +749,9 @@ | |||
736 | It is a working example of how to build your own custom | 749 | It is a working example of how to build your own custom |
737 | Linux distribution from source. | 750 | Linux distribution from source. |
738 | </note> | 751 | </note> |
752 | You can read more about Poky in the | ||
753 | "<link linkend='reference-embedded-distribution'>Reference Embedded Distribution (Poky)</link>" | ||
754 | section. | ||
739 | </para> | 755 | </para> |
740 | </section> | 756 | </section> |
741 | 757 | ||
@@ -1071,9 +1087,60 @@ | |||
1071 | </para> | 1087 | </para> |
1072 | </section> | 1088 | </section> |
1073 | 1089 | ||
1074 | <section id='the-yocto-project-workflow'> | 1090 | <section id='openembedded-build-system-workflow'> |
1075 | <title>The Yocto Project Workflow</title> | 1091 | <title>The OpenEmbedded Build System Workflow</title> |
1092 | |||
1093 | <para> | ||
1094 | The OpenEmbedded build system uses a "workflow" to accomplish | ||
1095 | image and SDK generation. | ||
1096 | The following figure overviews that workflow: | ||
1097 | <imagedata fileref="figures/YP-flow-diagram.png" | ||
1098 | format="PNG" align='center' width="8in"/> | ||
1099 | Following is a brief summary of the "workflow": | ||
1100 | <orderedlist> | ||
1101 | <listitem><para> | ||
1102 | Developers specify architecture, policies, patches and | ||
1103 | configuration details. | ||
1104 | </para></listitem> | ||
1105 | <listitem><para> | ||
1106 | The build system fetches and downloads the source code | ||
1107 | from the specified location. | ||
1108 | The build system supports standard methods such as tarballs | ||
1109 | or source code repositories systems such as Git. | ||
1110 | </para></listitem> | ||
1111 | <listitem><para> | ||
1112 | Once downloaded, the build system extracts the sources | ||
1113 | into a local work area where patches are applied and | ||
1114 | common steps for configuring and compiling the software | ||
1115 | are run. | ||
1116 | </para></listitem> | ||
1117 | <listitem><para> | ||
1118 | The build system then installs the software into a | ||
1119 | temporary staging area where the binary package format you | ||
1120 | select (DEB, RPM, or IPK) is used to roll up the software. | ||
1121 | </para></listitem> | ||
1122 | <listitem><para> | ||
1123 | Different QA and sanity checks run throughout entire | ||
1124 | build process. | ||
1125 | </para></listitem> | ||
1126 | <listitem><para> | ||
1127 | After the binaries are created, the build system | ||
1128 | generates a binary package feed that is used to create | ||
1129 | the final root file image. | ||
1130 | </para></listitem> | ||
1131 | <listitem><para> | ||
1132 | The build system generates the file system image and a | ||
1133 | customized Extensible SDK (eSDSK) for application | ||
1134 | development in parallel. | ||
1135 | </para></listitem> | ||
1136 | </orderedlist> | ||
1137 | </para> | ||
1076 | 1138 | ||
1139 | <para> | ||
1140 | For a very detailed look at this workflow, see the | ||
1141 | "<ulink url='&YOCTO_DOCS_CM_URL;#development-concepts'>Development Concepts</ulink>" | ||
1142 | section in the Yocto Project Concepts Manual. | ||
1143 | </para> | ||
1077 | </section> | 1144 | </section> |
1078 | 1145 | ||
1079 | 1146 | ||