summaryrefslogtreecommitdiffstats
path: root/documentation/sdk-manual/sdk-appendix-customizing.rst
diff options
context:
space:
mode:
Diffstat (limited to 'documentation/sdk-manual/sdk-appendix-customizing.rst')
-rw-r--r--documentation/sdk-manual/sdk-appendix-customizing.rst72
1 files changed, 50 insertions, 22 deletions
diff --git a/documentation/sdk-manual/sdk-appendix-customizing.rst b/documentation/sdk-manual/sdk-appendix-customizing.rst
index 3bb6ef3a19..7743e3c004 100644
--- a/documentation/sdk-manual/sdk-appendix-customizing.rst
+++ b/documentation/sdk-manual/sdk-appendix-customizing.rst
@@ -18,8 +18,7 @@ build system applies them against ``local.conf`` and ``auto.conf``:
18 18
19- Variables whose values start with "/" are excluded since the 19- Variables whose values start with "/" are excluded since the
20 assumption is that those values are paths that are likely to be 20 assumption is that those values are paths that are likely to be
21 specific to the `build 21 specific to the :term:`Build Host`.
22 host <&YOCTO_DOCS_REF_URL;#hardware-build-system-term>`__.
23 22
24- Variables listed in 23- Variables listed in
25 :term:`SDK_LOCAL_CONF_BLACKLIST` 24 :term:`SDK_LOCAL_CONF_BLACKLIST`
@@ -57,8 +56,8 @@ OpenEmbedded build system used to create the SDK.
57Adjusting the Extensible SDK to Suit Your Build Host's Setup 56Adjusting the Extensible SDK to Suit Your Build Host's Setup
58============================================================ 57============================================================
59 58
60In most cases, the extensible SDK defaults should work with your `build 59In most cases, the extensible SDK defaults should work with your :term:`Build
61host's <&YOCTO_DOCS_REF_URL;#hardware-build-system-term>`__ setup. 60Host`'s setup.
62However, some cases exist for which you might consider making 61However, some cases exist for which you might consider making
63adjustments: 62adjustments:
64 63
@@ -87,8 +86,8 @@ adjustments:
87 opposed to being called explicitly), then you need to do one of the 86 opposed to being called explicitly), then you need to do one of the
88 following: 87 following:
89 88
90 - After ensuring the tasks are `shared 89 - After ensuring the tasks are :ref:`shared
91 state <&YOCTO_DOCS_OM_URL;#shared-state-cache>`__ tasks (i.e. the 90 state <overview-manual/overview-manual-concepts:shared state cache>` tasks (i.e. the
92 output of the task is saved to and can be restored from the shared 91 output of the task is saved to and can be restored from the shared
93 state cache) or ensuring the tasks are able to be produced quickly 92 state cache) or ensuring the tasks are able to be produced quickly
94 from a task that is a shared state task, add the task name to the 93 from a task that is a shared state task, add the task name to the
@@ -124,7 +123,7 @@ adjustments:
124 123
125- If your OpenEmbedded build system setup uses a different environment 124- If your OpenEmbedded build system setup uses a different environment
126 setup script other than 125 setup script other than
127 ````` <&YOCTO_DOCS_REF_URL;#structure-core-script>`__, then you must 126 :ref:`structure-core-script`, then you must
128 set 127 set
129 :term:`OE_INIT_ENV_SCRIPT` 128 :term:`OE_INIT_ENV_SCRIPT`
130 to point to the environment setup script you use. 129 to point to the environment setup script you use.
@@ -152,8 +151,10 @@ from the :term:`DISTRO` variable.
152The 151The
153:ref:`populate_sdk_base <ref-classes-populate-sdk-*>` 152:ref:`populate_sdk_base <ref-classes-populate-sdk-*>`
154class defines the default value of the ``SDK_TITLE`` variable as 153class defines the default value of the ``SDK_TITLE`` variable as
155follows: SDK_TITLE ??= "${@d.getVar('DISTRO_NAME') or 154follows:
156d.getVar('DISTRO')} SDK" 155::
156
157 SDK_TITLE ??= "${@d.getVar('DISTRO_NAME') or d.getVar('DISTRO')} SDK"
157 158
158While several ways exist to change this variable, an efficient method is 159While several ways exist to change this variable, an efficient method is
159to set the variable in your distribution's configuration file. Doing so 160to set the variable in your distribution's configuration file. Doing so
@@ -163,7 +164,10 @@ an example, assume you have your own layer for your distribution named
163does the default "poky" distribution. If so, you could update the 164does the default "poky" distribution. If so, you could update the
164``SDK_TITLE`` variable in the 165``SDK_TITLE`` variable in the
165``~/meta-mydistro/conf/distro/mydistro.conf`` file using the following 166``~/meta-mydistro/conf/distro/mydistro.conf`` file using the following
166form: SDK_TITLE = "your_title" 167form:
168::
169
170 SDK_TITLE = "your_title"
167 171
168Providing Updates to the Extensible SDK After Installation 172Providing Updates to the Extensible SDK After Installation
169========================================================== 173==========================================================
@@ -193,8 +197,12 @@ the installed SDKs to update the installed SDKs by using the
1933. Build the extensible SDK normally (i.e., use the 1973. Build the extensible SDK normally (i.e., use the
194 ``bitbake -c populate_sdk_ext`` imagename command). 198 ``bitbake -c populate_sdk_ext`` imagename command).
195 199
1964. Publish the SDK using the following command: $ oe-publish-sdk 2004. Publish the SDK using the following command:
197 some_path/sdk-installer.sh path_to_shared_http_directory You must 201 ::
202
203 $ oe-publish-sdk some_path/sdk-installer.sh path_to_shared_http_directory
204
205 You must
198 repeat this step each time you rebuild the SDK with changes that you 206 repeat this step each time you rebuild the SDK with changes that you
199 want to make available through the update mechanism. 207 want to make available through the update mechanism.
200 208
@@ -213,7 +221,12 @@ installation directory for the SDK is based on the
213:term:`SDKEXTPATH` variables from 221:term:`SDKEXTPATH` variables from
214within the 222within the
215:ref:`populate_sdk_base <ref-classes-populate-sdk-*>` 223:ref:`populate_sdk_base <ref-classes-populate-sdk-*>`
216class as follows: SDKEXTPATH ??= "~/${@d.getVar('DISTRO')}_sdk" You can 224class as follows:
225::
226
227 SDKEXTPATH ??= "~/${@d.getVar('DISTRO')}_sdk"
228
229You can
217change this default installation directory by specifically setting the 230change this default installation directory by specifically setting the
218``SDKEXTPATH`` variable. 231``SDKEXTPATH`` variable.
219 232
@@ -226,7 +239,10 @@ assume you have your own layer for your distribution named
226does the default "poky" distribution. If so, you could update the 239does the default "poky" distribution. If so, you could update the
227``SDKEXTPATH`` variable in the 240``SDKEXTPATH`` variable in the
228``~/meta-mydistro/conf/distro/mydistro.conf`` file using the following 241``~/meta-mydistro/conf/distro/mydistro.conf`` file using the following
229form: SDKEXTPATH = "some_path_for_your_installed_sdk" 242form:
243::
244
245 SDKEXTPATH = "some_path_for_your_installed_sdk"
230 246
231After building your installer, running it prompts the user for 247After building your installer, running it prompts the user for
232acceptance of the some_path_for_your_installed_sdk directory as the 248acceptance of the some_path_for_your_installed_sdk directory as the
@@ -260,8 +276,11 @@ source, you need to do a number of things:
2603. Set the appropriate configuration so that the produced SDK knows how 2763. Set the appropriate configuration so that the produced SDK knows how
261 to find the configuration. The variable you need to set is 277 to find the configuration. The variable you need to set is
262 :term:`SSTATE_MIRRORS`: 278 :term:`SSTATE_MIRRORS`:
263 SSTATE_MIRRORS = "file://.\* 279 ::
264 http://example.com/some_path/sstate-cache/PATH" You can set the 280
281 SSTATE_MIRRORS = "file://.* http://example.com/some_path/sstate-cache/PATH"
282
283 You can set the
265 ``SSTATE_MIRRORS`` variable in two different places: 284 ``SSTATE_MIRRORS`` variable in two different places:
266 285
267 - If the mirror value you are setting is appropriate to be set for 286 - If the mirror value you are setting is appropriate to be set for
@@ -271,8 +290,10 @@ source, you need to do a number of things:
271 side, and its contents will not interfere with the build), then 290 side, and its contents will not interfere with the build), then
272 you can set the variable in your ``local.conf`` or custom distro 291 you can set the variable in your ``local.conf`` or custom distro
273 configuration file. You can then "whitelist" the variable through 292 configuration file. You can then "whitelist" the variable through
274 to the SDK by adding the following: SDK_LOCAL_CONF_WHITELIST = 293 to the SDK by adding the following:
275 "SSTATE_MIRRORS" 294 ::
295
296 SDK_LOCAL_CONF_WHITELIST = "SSTATE_MIRRORS"
276 297
277 - Alternatively, if you just want to set the ``SSTATE_MIRRORS`` 298 - Alternatively, if you just want to set the ``SSTATE_MIRRORS``
278 variable's value for the SDK alone, create a 299 variable's value for the SDK alone, create a
@@ -296,7 +317,11 @@ This bundling can lead to an SDK installer file that is a Gigabyte or
296more in size. If the size of this file causes a problem, you can build 317more in size. If the size of this file causes a problem, you can build
297an SDK that has just enough in it to install and provide access to the 318an SDK that has just enough in it to install and provide access to the
298``devtool command`` by setting the following in your configuration: 319``devtool command`` by setting the following in your configuration:
299SDK_EXT_TYPE = "minimal" Setting 320::
321
322 SDK_EXT_TYPE = "minimal"
323
324Setting
300:term:`SDK_EXT_TYPE` to 325:term:`SDK_EXT_TYPE` to
301"minimal" produces an SDK installer that is around 35 Mbytes in size, 326"minimal" produces an SDK installer that is around 35 Mbytes in size,
302which downloads and installs quickly. You need to realize, though, that 327which downloads and installs quickly. You need to realize, though, that
@@ -314,9 +339,12 @@ information enables the ``devtool search`` command to return useful
314results. 339results.
315 340
316To facilitate this wider range of information, you would need to set the 341To facilitate this wider range of information, you would need to set the
317following: SDK_INCLUDE_PKGDATA = "1" See the 342following:
318:term:`SDK_INCLUDE_PKGDATA` 343::
319variable for additional information. 344
345 SDK_INCLUDE_PKGDATA = "1"
346
347See the :term:`SDK_INCLUDE_PKGDATA` variable for additional information.
320 348
321Setting the ``SDK_INCLUDE_PKGDATA`` variable as shown causes the "world" 349Setting the ``SDK_INCLUDE_PKGDATA`` variable as shown causes the "world"
322target to be built so that information for all of the recipes included 350target to be built so that information for all of the recipes included