diff options
Diffstat (limited to 'documentation')
-rw-r--r-- | documentation/dev-manual/dev-manual-common-tasks.xml | 171 |
1 files changed, 111 insertions, 60 deletions
diff --git a/documentation/dev-manual/dev-manual-common-tasks.xml b/documentation/dev-manual/dev-manual-common-tasks.xml index 11b53ac116..11a7065c4e 100644 --- a/documentation/dev-manual/dev-manual-common-tasks.xml +++ b/documentation/dev-manual/dev-manual-common-tasks.xml | |||
@@ -73,14 +73,18 @@ | |||
73 | meta-GUI_xyz | 73 | meta-GUI_xyz |
74 | meta-mymachine | 74 | meta-mymachine |
75 | </literallayout> | 75 | </literallayout> |
76 | Realize that the name of your layer does not include | 76 | With rare exceptions, a layer's name follows this |
77 | the "meta-" string. | 77 | form: |
78 | For example, the names of the previous three layers | 78 | <literallayout class='monospaced'> |
79 | are "mylayer", "GUI_xyz", and "mymachine". | 79 | meta-<replaceable>root_name</replaceable> |
80 | Following this layer directory naming convention can | 80 | </literallayout> |
81 | save you trouble later when tools or components | 81 | Following this layer naming convention can |
82 | "assume" your layer resides in a directory whose name | 82 | save you trouble later when tools, components, or |
83 | starts with "meta-". | 83 | variables "assume" your layer name begins with "meta-". |
84 | A notable example is in configuration files as | ||
85 | shown in the following step where layer names without | ||
86 | the "meta-" string are appended | ||
87 | to several variables used in the configuration. | ||
84 | </para></listitem> | 88 | </para></listitem> |
85 | <listitem><para> | 89 | <listitem><para> |
86 | <emphasis>Create a Layer Configuration | 90 | <emphasis>Create a Layer Configuration |
@@ -141,7 +145,7 @@ | |||
141 | <listitem><para> | 145 | <listitem><para> |
142 | The | 146 | The |
143 | <filename><ulink url='&YOCTO_DOCS_REF_URL;#var-BBFILE_COLLECTIONS'>BBFILE_COLLECTIONS</ulink></filename> | 147 | <filename><ulink url='&YOCTO_DOCS_REF_URL;#var-BBFILE_COLLECTIONS'>BBFILE_COLLECTIONS</ulink></filename> |
144 | variable is appended with the layer name, | 148 | variable is appended with the layer's root name, |
145 | which is "yoctobsp" in this example. | 149 | which is "yoctobsp" in this example. |
146 | </para></listitem> | 150 | </para></listitem> |
147 | <listitem><para> | 151 | <listitem><para> |
@@ -637,7 +641,8 @@ | |||
637 | 641 | ||
638 | <para> | 642 | <para> |
639 | BitBake parses each <filename>conf/layer.conf</filename> file | 643 | BitBake parses each <filename>conf/layer.conf</filename> file |
640 | as specified in the <filename>BBLAYERS</filename> variable | 644 | from the top down as specified in the |
645 | <filename>BBLAYERS</filename> variable | ||
641 | within the <filename>conf/bblayers.conf</filename> file. | 646 | within the <filename>conf/bblayers.conf</filename> file. |
642 | During the processing of each | 647 | During the processing of each |
643 | <filename>conf/layer.conf</filename> file, BitBake adds the | 648 | <filename>conf/layer.conf</filename> file, BitBake adds the |
@@ -815,8 +820,7 @@ | |||
815 | <para> | 820 | <para> |
816 | To specify the layer's priority manually, use the | 821 | To specify the layer's priority manually, use the |
817 | <ulink url='&YOCTO_DOCS_REF_URL;#var-BBFILE_PRIORITY'><filename>BBFILE_PRIORITY</filename></ulink> | 822 | <ulink url='&YOCTO_DOCS_REF_URL;#var-BBFILE_PRIORITY'><filename>BBFILE_PRIORITY</filename></ulink> |
818 | variable. | 823 | variable and append the layer's root name: |
819 | For example: | ||
820 | <literallayout class='monospaced'> | 824 | <literallayout class='monospaced'> |
821 | BBFILE_PRIORITY_mylayer = "1" | 825 | BBFILE_PRIORITY_mylayer = "1" |
822 | </literallayout> | 826 | </literallayout> |
@@ -837,7 +841,8 @@ | |||
837 | <title>Managing Layers</title> | 841 | <title>Managing Layers</title> |
838 | 842 | ||
839 | <para> | 843 | <para> |
840 | You can use the BitBake layer management tool to provide a view | 844 | You can use the BitBake layer management tool |
845 | <filename>bitbake-layers</filename> to provide a view | ||
841 | into the structure of recipes across a multi-layer project. | 846 | into the structure of recipes across a multi-layer project. |
842 | Being able to generate output that reports on configured layers | 847 | Being able to generate output that reports on configured layers |
843 | with their paths and priorities and on | 848 | with their paths and priorities and on |
@@ -846,42 +851,88 @@ | |||
846 | </para> | 851 | </para> |
847 | 852 | ||
848 | <para> | 853 | <para> |
849 | Use the following form when running the layer management tool. | 854 | For help on the BitBake layer management tool, use the |
855 | following command: | ||
850 | <literallayout class='monospaced'> | 856 | <literallayout class='monospaced'> |
851 | $ bitbake-layers <replaceable>command</replaceable> [<replaceable>arguments</replaceable>] | 857 | $ bitbake-layers --help |
858 | NOTE: Starting bitbake server... | ||
859 | usage: bitbake-layers [-d] [-q] [-F] [--color COLOR] [-h] <subcommand> ... | ||
860 | |||
861 | BitBake layers utility | ||
862 | |||
863 | optional arguments: | ||
864 | -d, --debug Enable debug output | ||
865 | -q, --quiet Print only errors | ||
866 | -F, --force Force add without recipe parse verification | ||
867 | --color COLOR Colorize output (where COLOR is auto, always, never) | ||
868 | -h, --help show this help message and exit | ||
869 | |||
870 | subcommands: | ||
871 | <subcommand> | ||
872 | show-layers show current configured layers. | ||
873 | show-overlayed list overlayed recipes (where the same recipe exists | ||
874 | in another layer) | ||
875 | show-recipes list available recipes, showing the layer they are | ||
876 | provided by | ||
877 | show-appends list bbappend files and recipe files they apply to | ||
878 | show-cross-depends Show dependencies between recipes that cross layer | ||
879 | boundaries. | ||
880 | add-layer Add one or more layers to bblayers.conf. | ||
881 | remove-layer Remove one or more layers from bblayers.conf. | ||
882 | flatten flatten layer configuration into a separate output | ||
883 | directory. | ||
884 | layerindex-fetch Fetches a layer from a layer index along with its | ||
885 | dependent layers, and adds them to conf/bblayers.conf. | ||
886 | layerindex-show-depends | ||
887 | Find layer dependencies from layer index. | ||
888 | create-layer Create a basic layer | ||
889 | |||
890 | Use bitbake-layers <subcommand> --help to get help on a specific command | ||
852 | </literallayout> | 891 | </literallayout> |
892 | </para> | ||
893 | |||
894 | <para> | ||
853 | The following list describes the available commands: | 895 | The following list describes the available commands: |
854 | <itemizedlist> | 896 | <itemizedlist> |
855 | <listitem><para><filename><emphasis>help:</emphasis></filename> | 897 | <listitem><para> |
898 | <emphasis><filename>help:</filename></emphasis> | ||
856 | Displays general help or help on a specified command. | 899 | Displays general help or help on a specified command. |
857 | </para></listitem> | 900 | </para></listitem> |
858 | <listitem><para><filename><emphasis>show-layers:</emphasis></filename> | 901 | <listitem><para> |
902 | <emphasis><filename>show-layers:</filename></emphasis> | ||
859 | Shows the current configured layers. | 903 | Shows the current configured layers. |
860 | </para></listitem> | 904 | </para></listitem> |
861 | <listitem><para><filename><emphasis>show-recipes:</emphasis></filename> | 905 | <listitem><para> |
862 | Lists available recipes and the layers that provide them. | 906 | <emphasis><filename>show-overlayed:</filename></emphasis> |
863 | </para></listitem> | ||
864 | <listitem><para><filename><emphasis>show-overlayed:</emphasis></filename> | ||
865 | Lists overlayed recipes. | 907 | Lists overlayed recipes. |
866 | A recipe is overlayed when a recipe with the same name | 908 | A recipe is overlayed when a recipe with the same name |
867 | exists in another layer that has a higher layer | 909 | exists in another layer that has a higher layer |
868 | priority. | 910 | priority. |
869 | </para></listitem> | 911 | </para></listitem> |
870 | <listitem><para><filename><emphasis>show-appends:</emphasis></filename> | 912 | <listitem><para> |
913 | <emphasis><filename>show-recipes:</filename></emphasis> | ||
914 | Lists available recipes and the layers that provide them. | ||
915 | </para></listitem> | ||
916 | <listitem><para> | ||
917 | <emphasis><filename>show-appends:</filename></emphasis> | ||
871 | Lists <filename>.bbappend</filename> files and the | 918 | Lists <filename>.bbappend</filename> files and the |
872 | recipe files to which they apply. | 919 | recipe files to which they apply. |
873 | </para></listitem> | 920 | </para></listitem> |
874 | <listitem><para><filename><emphasis>show-cross-depends:</emphasis></filename> | 921 | <listitem><para> |
922 | <emphasis><filename>show-cross-depends:</filename></emphasis> | ||
875 | Lists dependency relationships between recipes that | 923 | Lists dependency relationships between recipes that |
876 | cross layer boundaries. | 924 | cross layer boundaries. |
877 | </para></listitem> | 925 | </para></listitem> |
878 | <listitem><para><filename><emphasis>add-layer:</emphasis></filename> | 926 | <listitem><para> |
927 | <emphasis><filename>add-layer:</filename></emphasis> | ||
879 | Adds a layer to <filename>bblayers.conf</filename>. | 928 | Adds a layer to <filename>bblayers.conf</filename>. |
880 | </para></listitem> | 929 | </para></listitem> |
881 | <listitem><para><filename><emphasis>remove-layer:</emphasis></filename> | 930 | <listitem><para> |
931 | <emphasis><filename>remove-layer:</filename></emphasis> | ||
882 | Removes a layer from <filename>bblayers.conf</filename> | 932 | Removes a layer from <filename>bblayers.conf</filename> |
883 | </para></listitem> | 933 | </para></listitem> |
884 | <listitem><para><filename><emphasis>flatten:</emphasis></filename> | 934 | <listitem><para> |
935 | <emphasis><filename>flatten:</filename></emphasis> | ||
885 | Flattens the layer configuration into a separate output | 936 | Flattens the layer configuration into a separate output |
886 | directory. | 937 | directory. |
887 | Flattening your layer configuration builds a "flattened" | 938 | Flattening your layer configuration builds a "flattened" |
@@ -892,18 +943,21 @@ | |||
892 | You might have to perform some manual cleanup of the | 943 | You might have to perform some manual cleanup of the |
893 | flattened layer as follows: | 944 | flattened layer as follows: |
894 | <itemizedlist> | 945 | <itemizedlist> |
895 | <listitem><para>Non-recipe files (such as patches) | 946 | <listitem><para> |
947 | Non-recipe files (such as patches) | ||
896 | are overwritten. | 948 | are overwritten. |
897 | The flatten command shows a warning for these | 949 | The flatten command shows a warning for these |
898 | files. | 950 | files. |
899 | </para></listitem> | 951 | </para></listitem> |
900 | <listitem><para>Anything beyond the normal layer | 952 | <listitem><para> |
953 | Anything beyond the normal layer | ||
901 | setup has been added to the | 954 | setup has been added to the |
902 | <filename>layer.conf</filename> file. | 955 | <filename>layer.conf</filename> file. |
903 | Only the lowest priority layer's | 956 | Only the lowest priority layer's |
904 | <filename>layer.conf</filename> is used. | 957 | <filename>layer.conf</filename> is used. |
905 | </para></listitem> | 958 | </para></listitem> |
906 | <listitem><para>Overridden and appended items from | 959 | <listitem><para> |
960 | Overridden and appended items from | ||
907 | <filename>.bbappend</filename> files need to be | 961 | <filename>.bbappend</filename> files need to be |
908 | cleaned up. | 962 | cleaned up. |
909 | The contents of each | 963 | The contents of each |
@@ -1568,47 +1622,43 @@ | |||
1568 | and have sourced the build environment setup script | 1622 | and have sourced the build environment setup script |
1569 | (i.e. | 1623 | (i.e. |
1570 | <ulink url='&YOCTO_DOCS_REF_URL;#structure-core-script'><filename>oe-init-build-env</filename></ulink>). | 1624 | <ulink url='&YOCTO_DOCS_REF_URL;#structure-core-script'><filename>oe-init-build-env</filename></ulink>). |
1571 | Here is the basic <filename>recipetool</filename> syntax: | 1625 | To get help on the tool, use the following command: |
1572 | <note> | ||
1573 | Running <filename>recipetool -h</filename> or | ||
1574 | <filename>recipetool create -h</filename> produces the | ||
1575 | Python-generated help, which presented differently | ||
1576 | than what follows here. | ||
1577 | </note> | ||
1578 | <literallayout class='monospaced'> | 1626 | <literallayout class='monospaced'> |
1579 | recipetool -h | 1627 | $ recipetool -h |
1580 | recipetool create [-h] | 1628 | NOTE: Starting bitbake server... |
1581 | recipetool [-d] [-q] [--color auto | always | never ] create -o <replaceable>OUTFILE</replaceable> [-m] [-x <replaceable>EXTERNALSRC</replaceable>] <replaceable>source</replaceable> | 1629 | usage: recipetool [-d] [-q] [--color COLOR] [-h] <subcommand> ... |
1582 | 1630 | ||
1583 | -d Enables debug output. | 1631 | OpenEmbedded recipe tool |
1584 | -q Outputs only errors (quiet mode). | 1632 | |
1585 | --color Colorizes the output automatically, always, or never. | 1633 | options: |
1586 | -h Displays Python generated syntax for recipetool. | 1634 | -d, --debug Enable debug output |
1587 | create Causes recipetool to create a base recipe. The create | 1635 | -q, --quiet Print only errors |
1588 | command is further defined with these options: | 1636 | --color COLOR Colorize output (where COLOR is auto, always, never) |
1589 | 1637 | -h, --help show this help message and exit | |
1590 | -o <replaceable>OUTFILE</replaceable> Specifies the full path and filename for the generated | 1638 | |
1591 | recipe. | 1639 | subcommands: |
1592 | -m Causes the recipe to be machine-specific rather than | 1640 | create Create a new recipe |
1593 | architecture-specific (default). | 1641 | newappend Create a bbappend for the specified target in the specified |
1594 | -x <replaceable>EXTERNALSRC</replaceable> Fetches and extracts source files from <replaceable>source</replaceable> | 1642 | layer |
1595 | and places them in <replaceable>EXTERNALSRC</replaceable>. | 1643 | setvar Set a variable within a recipe |
1596 | <replaceable>source</replaceable> must be a URL. | 1644 | appendfile Create/update a bbappend to replace a target file |
1597 | -h Displays Python-generated syntax for create. | 1645 | appendsrcfiles Create/update a bbappend to add or replace source files |
1598 | <replaceable>source</replaceable> Specifies the source code on which to base the | 1646 | appendsrcfile Create/update a bbappend to add or replace a source file |
1599 | recipe. | 1647 | Use recipetool <subcommand> --help to get help on a specific command |
1600 | </literallayout> | 1648 | </literallayout> |
1601 | </para> | 1649 | </para> |
1602 | 1650 | ||
1603 | <para> | 1651 | <para> |
1604 | Running <filename>recipetool create -o</filename> <replaceable>OUTFILE</replaceable> | 1652 | Running |
1653 | <filename>recipetool create -o</filename> <replaceable>OUTFILE</replaceable> | ||
1605 | creates the base recipe and locates it properly in the | 1654 | creates the base recipe and locates it properly in the |
1606 | layer that contains your source files. | 1655 | layer that contains your source files. |
1607 | Following are some syntax examples: | 1656 | Following are some syntax examples: |
1608 | </para> | 1657 | </para> |
1609 | 1658 | ||
1610 | <para> | 1659 | <para> |
1611 | Use this syntax to generate a recipe based on <replaceable>source</replaceable>. | 1660 | Use this syntax to generate a recipe based on |
1661 | <replaceable>source</replaceable>. | ||
1612 | Once generated, the recipe resides in the existing source | 1662 | Once generated, the recipe resides in the existing source |
1613 | code layer: | 1663 | code layer: |
1614 | <literallayout class='monospaced'> | 1664 | <literallayout class='monospaced'> |
@@ -1621,7 +1671,8 @@ | |||
1621 | <literallayout class='monospaced'> | 1671 | <literallayout class='monospaced'> |
1622 | recipetool create -o <replaceable>OUTFILE</replaceable> -x <replaceable>EXTERNALSRC</replaceable> <replaceable>source</replaceable> | 1672 | recipetool create -o <replaceable>OUTFILE</replaceable> -x <replaceable>EXTERNALSRC</replaceable> <replaceable>source</replaceable> |
1623 | </literallayout> | 1673 | </literallayout> |
1624 | Use this syntax to generate a recipe based on <replaceable>source</replaceable>. | 1674 | Use this syntax to generate a recipe based on |
1675 | <replaceable>source</replaceable>. | ||
1625 | The options direct <filename>recipetool</filename> to | 1676 | The options direct <filename>recipetool</filename> to |
1626 | generate debugging information. | 1677 | generate debugging information. |
1627 | Once generated, the recipe resides in the existing source | 1678 | Once generated, the recipe resides in the existing source |