diff options
Diffstat (limited to 'documentation/sdk-manual/extensible.rst')
-rw-r--r-- | documentation/sdk-manual/extensible.rst | 58 |
1 files changed, 29 insertions, 29 deletions
diff --git a/documentation/sdk-manual/extensible.rst b/documentation/sdk-manual/extensible.rst index 7ab43e0a9d..e8a0a5b3ce 100644 --- a/documentation/sdk-manual/extensible.rst +++ b/documentation/sdk-manual/extensible.rst | |||
@@ -47,7 +47,7 @@ Two ways to install the Extensible SDK | |||
47 | Extensible SDK can be installed in two different ways, and both have | 47 | Extensible SDK can be installed in two different ways, and both have |
48 | their own pros and cons: | 48 | their own pros and cons: |
49 | 49 | ||
50 | 1. *Setting up the Extensible SDK environment directly in a Yocto build*. This | 50 | #. *Setting up the Extensible SDK environment directly in a Yocto build*. This |
51 | avoids having to produce, test, distribute and maintain separate SDK installer | 51 | avoids having to produce, test, distribute and maintain separate SDK installer |
52 | archives, which can get very large. There is only one environment for the regular | 52 | archives, which can get very large. There is only one environment for the regular |
53 | Yocto build and the SDK and less code paths where things can go not according to plan. | 53 | Yocto build and the SDK and less code paths where things can go not according to plan. |
@@ -56,7 +56,7 @@ git fetch or layer management tooling. The SDK extensibility is better than in t | |||
56 | second option: just run ``bitbake`` again to add more things to the sysroot, or add layers | 56 | second option: just run ``bitbake`` again to add more things to the sysroot, or add layers |
57 | if even more things are required. | 57 | if even more things are required. |
58 | 58 | ||
59 | 2. *Setting up the Extensible SDK from a standalone installer*. This has the benefit of | 59 | #. *Setting up the Extensible SDK from a standalone installer*. This has the benefit of |
60 | having a single, self-contained archive that includes all the needed binary artifacts. | 60 | having a single, self-contained archive that includes all the needed binary artifacts. |
61 | So nothing needs to be rebuilt, and there is no need to provide a well-functioning | 61 | So nothing needs to be rebuilt, and there is no need to provide a well-functioning |
62 | binary artefact cache over the network for developers with underpowered laptops. | 62 | binary artefact cache over the network for developers with underpowered laptops. |
@@ -64,10 +64,10 @@ binary artefact cache over the network for developers with underpowered laptops. | |||
64 | Setting up the Extensible SDK environment directly in a Yocto build | 64 | Setting up the Extensible SDK environment directly in a Yocto build |
65 | ------------------------------------------------------------------- | 65 | ------------------------------------------------------------------- |
66 | 66 | ||
67 | 1. Set up all the needed layers and a Yocto :term:`Build Directory`, e.g. a regular Yocto | 67 | #. Set up all the needed layers and a Yocto :term:`Build Directory`, e.g. a regular Yocto |
68 | build where ``bitbake`` can be executed. | 68 | build where ``bitbake`` can be executed. |
69 | 69 | ||
70 | 2. Run: | 70 | #. Run: |
71 | $ bitbake meta-ide-support | 71 | $ bitbake meta-ide-support |
72 | $ bitbake -c populate_sysroot gtk+3 | 72 | $ bitbake -c populate_sysroot gtk+3 |
73 | (or any other target or native item that the application developer would need) | 73 | (or any other target or native item that the application developer would need) |
@@ -279,7 +279,7 @@ command: | |||
279 | .. image:: figures/sdk-devtool-add-flow.png | 279 | .. image:: figures/sdk-devtool-add-flow.png |
280 | :width: 100% | 280 | :width: 100% |
281 | 281 | ||
282 | 1. *Generating the New Recipe*: The top part of the flow shows three | 282 | #. *Generating the New Recipe*: The top part of the flow shows three |
283 | scenarios by which you could use ``devtool add`` to generate a recipe | 283 | scenarios by which you could use ``devtool add`` to generate a recipe |
284 | based on existing source code. | 284 | based on existing source code. |
285 | 285 | ||
@@ -352,7 +352,7 @@ command: | |||
352 | Aside from a recipe folder, the command also creates an associated | 352 | Aside from a recipe folder, the command also creates an associated |
353 | append folder and places an initial ``*.bbappend`` file within. | 353 | append folder and places an initial ``*.bbappend`` file within. |
354 | 354 | ||
355 | 2. *Edit the Recipe*: You can use ``devtool edit-recipe`` to open up the | 355 | #. *Edit the Recipe*: You can use ``devtool edit-recipe`` to open up the |
356 | editor as defined by the ``$EDITOR`` environment variable and modify | 356 | editor as defined by the ``$EDITOR`` environment variable and modify |
357 | the file:: | 357 | the file:: |
358 | 358 | ||
@@ -362,7 +362,7 @@ command: | |||
362 | can make modifications to the recipe that take effect when you build | 362 | can make modifications to the recipe that take effect when you build |
363 | it later. | 363 | it later. |
364 | 364 | ||
365 | 3. *Build the Recipe or Rebuild the Image*: The next step you take | 365 | #. *Build the Recipe or Rebuild the Image*: The next step you take |
366 | depends on what you are going to do with the new code. | 366 | depends on what you are going to do with the new code. |
367 | 367 | ||
368 | If you need to eventually move the build output to the target | 368 | If you need to eventually move the build output to the target |
@@ -378,7 +378,7 @@ command: | |||
378 | 378 | ||
379 | $ devtool build-image image | 379 | $ devtool build-image image |
380 | 380 | ||
381 | 4. *Deploy the Build Output*: When you use the ``devtool build`` command | 381 | #. *Deploy the Build Output*: When you use the ``devtool build`` command |
382 | to build out your recipe, you probably want to see if the resulting | 382 | to build out your recipe, you probably want to see if the resulting |
383 | build output works as expected on the target hardware. | 383 | build output works as expected on the target hardware. |
384 | 384 | ||
@@ -400,7 +400,7 @@ command: | |||
400 | ``devtool`` does not provide a specific command that allows you to | 400 | ``devtool`` does not provide a specific command that allows you to |
401 | deploy the image to actual hardware. | 401 | deploy the image to actual hardware. |
402 | 402 | ||
403 | 5. *Finish Your Work With the Recipe*: The ``devtool finish`` command | 403 | #. *Finish Your Work With the Recipe*: The ``devtool finish`` command |
404 | creates any patches corresponding to commits in the local Git | 404 | creates any patches corresponding to commits in the local Git |
405 | repository, moves the new recipe to a more permanent layer, and then | 405 | repository, moves the new recipe to a more permanent layer, and then |
406 | resets the recipe so that the recipe is built normally rather than | 406 | resets the recipe so that the recipe is built normally rather than |
@@ -446,7 +446,7 @@ command: | |||
446 | .. image:: figures/sdk-devtool-modify-flow.png | 446 | .. image:: figures/sdk-devtool-modify-flow.png |
447 | :width: 100% | 447 | :width: 100% |
448 | 448 | ||
449 | 1. *Preparing to Modify the Code*: The top part of the flow shows three | 449 | #. *Preparing to Modify the Code*: The top part of the flow shows three |
450 | scenarios by which you could use ``devtool modify`` to prepare to | 450 | scenarios by which you could use ``devtool modify`` to prepare to |
451 | work on source files. Each scenario assumes the following: | 451 | work on source files. Each scenario assumes the following: |
452 | 452 | ||
@@ -555,11 +555,11 @@ command: | |||
555 | append file for the recipe in the ``devtool`` workspace. The | 555 | append file for the recipe in the ``devtool`` workspace. The |
556 | recipe and the source code remain in their original locations. | 556 | recipe and the source code remain in their original locations. |
557 | 557 | ||
558 | 2. *Edit the Source*: Once you have used the ``devtool modify`` command, | 558 | #. *Edit the Source*: Once you have used the ``devtool modify`` command, |
559 | you are free to make changes to the source files. You can use any | 559 | you are free to make changes to the source files. You can use any |
560 | editor you like to make and save your source code modifications. | 560 | editor you like to make and save your source code modifications. |
561 | 561 | ||
562 | 3. *Build the Recipe or Rebuild the Image*: The next step you take | 562 | #. *Build the Recipe or Rebuild the Image*: The next step you take |
563 | depends on what you are going to do with the new code. | 563 | depends on what you are going to do with the new code. |
564 | 564 | ||
565 | If you need to eventually move the build output to the target | 565 | If you need to eventually move the build output to the target |
@@ -572,7 +572,7 @@ command: | |||
572 | (e.g. for testing purposes), you can use the ``devtool build-image`` | 572 | (e.g. for testing purposes), you can use the ``devtool build-image`` |
573 | command: $ devtool build-image image | 573 | command: $ devtool build-image image |
574 | 574 | ||
575 | 4. *Deploy the Build Output*: When you use the ``devtool build`` command | 575 | #. *Deploy the Build Output*: When you use the ``devtool build`` command |
576 | to build out your recipe, you probably want to see if the resulting | 576 | to build out your recipe, you probably want to see if the resulting |
577 | build output works as expected on target hardware. | 577 | build output works as expected on target hardware. |
578 | 578 | ||
@@ -597,7 +597,7 @@ command: | |||
597 | ``devtool`` does not provide a specific command to deploy the image | 597 | ``devtool`` does not provide a specific command to deploy the image |
598 | to actual hardware. | 598 | to actual hardware. |
599 | 599 | ||
600 | 5. *Finish Your Work With the Recipe*: The ``devtool finish`` command | 600 | #. *Finish Your Work With the Recipe*: The ``devtool finish`` command |
601 | creates any patches corresponding to commits in the local Git | 601 | creates any patches corresponding to commits in the local Git |
602 | repository, updates the recipe to point to them (or creates a | 602 | repository, updates the recipe to point to them (or creates a |
603 | ``.bbappend`` file to do so, depending on the specified destination | 603 | ``.bbappend`` file to do so, depending on the specified destination |
@@ -664,7 +664,7 @@ The following diagram shows the common development flow used with the | |||
664 | .. image:: figures/sdk-devtool-upgrade-flow.png | 664 | .. image:: figures/sdk-devtool-upgrade-flow.png |
665 | :width: 100% | 665 | :width: 100% |
666 | 666 | ||
667 | 1. *Initiate the Upgrade*: The top part of the flow shows the typical | 667 | #. *Initiate the Upgrade*: The top part of the flow shows the typical |
668 | scenario by which you use the ``devtool upgrade`` command. The | 668 | scenario by which you use the ``devtool upgrade`` command. The |
669 | following conditions exist: | 669 | following conditions exist: |
670 | 670 | ||
@@ -716,7 +716,7 @@ The following diagram shows the common development flow used with the | |||
716 | are incorporated into the build the next time you build the software | 716 | are incorporated into the build the next time you build the software |
717 | just as are other changes you might have made to the source. | 717 | just as are other changes you might have made to the source. |
718 | 718 | ||
719 | 2. *Resolve any Conflicts created by the Upgrade*: Conflicts could happen | 719 | #. *Resolve any Conflicts created by the Upgrade*: Conflicts could happen |
720 | after upgrading the software to a new version. Conflicts occur | 720 | after upgrading the software to a new version. Conflicts occur |
721 | if your recipe specifies some patch files in :term:`SRC_URI` that | 721 | if your recipe specifies some patch files in :term:`SRC_URI` that |
722 | conflict with changes made in the new version of the software. For | 722 | conflict with changes made in the new version of the software. For |
@@ -727,7 +727,7 @@ The following diagram shows the common development flow used with the | |||
727 | conflicts created through use of a newer or different version of the | 727 | conflicts created through use of a newer or different version of the |
728 | software. | 728 | software. |
729 | 729 | ||
730 | 3. *Build the Recipe or Rebuild the Image*: The next step you take | 730 | #. *Build the Recipe or Rebuild the Image*: The next step you take |
731 | depends on what you are going to do with the new code. | 731 | depends on what you are going to do with the new code. |
732 | 732 | ||
733 | If you need to eventually move the build output to the target | 733 | If you need to eventually move the build output to the target |
@@ -742,7 +742,7 @@ The following diagram shows the common development flow used with the | |||
742 | 742 | ||
743 | $ devtool build-image image | 743 | $ devtool build-image image |
744 | 744 | ||
745 | 4. *Deploy the Build Output*: When you use the ``devtool build`` command | 745 | #. *Deploy the Build Output*: When you use the ``devtool build`` command |
746 | or ``bitbake`` to build your recipe, you probably want to see if the | 746 | or ``bitbake`` to build your recipe, you probably want to see if the |
747 | resulting build output works as expected on target hardware. | 747 | resulting build output works as expected on target hardware. |
748 | 748 | ||
@@ -764,7 +764,7 @@ The following diagram shows the common development flow used with the | |||
764 | ``devtool`` does not provide a specific command that allows you to do | 764 | ``devtool`` does not provide a specific command that allows you to do |
765 | this. | 765 | this. |
766 | 766 | ||
767 | 5. *Finish Your Work With the Recipe*: The ``devtool finish`` command | 767 | #. *Finish Your Work With the Recipe*: The ``devtool finish`` command |
768 | creates any patches corresponding to commits in the local Git | 768 | creates any patches corresponding to commits in the local Git |
769 | repository, moves the new recipe to a more permanent layer, and then | 769 | repository, moves the new recipe to a more permanent layer, and then |
770 | resets the recipe so that the recipe is built normally rather than | 770 | resets the recipe so that the recipe is built normally rather than |
@@ -1054,17 +1054,17 @@ Working With Recipes | |||
1054 | When building a recipe using the ``devtool build`` command, the typical | 1054 | When building a recipe using the ``devtool build`` command, the typical |
1055 | build progresses as follows: | 1055 | build progresses as follows: |
1056 | 1056 | ||
1057 | 1. Fetch the source | 1057 | #. Fetch the source |
1058 | 1058 | ||
1059 | 2. Unpack the source | 1059 | #. Unpack the source |
1060 | 1060 | ||
1061 | 3. Configure the source | 1061 | #. Configure the source |
1062 | 1062 | ||
1063 | 4. Compile the source | 1063 | #. Compile the source |
1064 | 1064 | ||
1065 | 5. Install the build output | 1065 | #. Install the build output |
1066 | 1066 | ||
1067 | 6. Package the installed output | 1067 | #. Package the installed output |
1068 | 1068 | ||
1069 | For recipes in the workspace, fetching and unpacking is disabled as the | 1069 | For recipes in the workspace, fetching and unpacking is disabled as the |
1070 | source tree has already been prepared and is persistent. Each of these | 1070 | source tree has already been prepared and is persistent. Each of these |
@@ -1322,15 +1322,15 @@ those customers need an SDK that has custom libraries. In such a case, | |||
1322 | you can produce a derivative SDK based on the currently installed SDK | 1322 | you can produce a derivative SDK based on the currently installed SDK |
1323 | fairly easily by following these steps: | 1323 | fairly easily by following these steps: |
1324 | 1324 | ||
1325 | 1. If necessary, install an extensible SDK that you want to use as a | 1325 | #. If necessary, install an extensible SDK that you want to use as a |
1326 | base for your derivative SDK. | 1326 | base for your derivative SDK. |
1327 | 1327 | ||
1328 | 2. Source the environment script for the SDK. | 1328 | #. Source the environment script for the SDK. |
1329 | 1329 | ||
1330 | 3. Add the extra libraries or other components you want by using the | 1330 | #. Add the extra libraries or other components you want by using the |
1331 | ``devtool add`` command. | 1331 | ``devtool add`` command. |
1332 | 1332 | ||
1333 | 4. Run the ``devtool build-sdk`` command. | 1333 | #. Run the ``devtool build-sdk`` command. |
1334 | 1334 | ||
1335 | The previous steps take the recipes added to the workspace and construct | 1335 | The previous steps take the recipes added to the workspace and construct |
1336 | a new SDK installer that contains those recipes and the resulting binary | 1336 | a new SDK installer that contains those recipes and the resulting binary |