diff options
author | Scott Rifenbark <scott.m.rifenbark@intel.com> | 2015-06-29 10:18:09 -0700 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2015-07-28 18:02:32 +0100 |
commit | 49bcb74203195b5a67e8cb7c5aa26fa29fe3f537 (patch) | |
tree | 3a61eedf6c805a0ac69414eb7329b7c200267fb6 /documentation/dev-manual/dev-manual-model.xml | |
parent | ce97654d8242afc192203cbd71dcd92dae10beab (diff) | |
download | poky-49bcb74203195b5a67e8cb7c5aa26fa29fe3f537.tar.gz |
dev-manual: Applied review edits to devtool section.
(From yocto-docs rev: 2b04710ccb1c63c4dafc2abbb79f5a7feddf43e9)
Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.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.xml | 225 |
1 files changed, 108 insertions, 117 deletions
diff --git a/documentation/dev-manual/dev-manual-model.xml b/documentation/dev-manual/dev-manual-model.xml index 9c549d7464..6e0ded2f17 100644 --- a/documentation/dev-manual/dev-manual-model.xml +++ b/documentation/dev-manual/dev-manual-model.xml | |||
@@ -1721,44 +1721,17 @@ | |||
1721 | section. | 1721 | section. |
1722 | </para> | 1722 | </para> |
1723 | </footnote> | 1723 | </footnote> |
1724 | <note> | ||
1725 | The workflow considers the entire build process for the | ||
1726 | image and not just modification of the external source | ||
1727 | code. | ||
1728 | </note> | ||
1729 | </para> | 1724 | </para> |
1730 | 1725 | ||
1731 | <section id='establish-the-reference-image'> | 1726 | <para> |
1732 | <title>Establish the Reference Image</title> | 1727 | The steps in this section assume you have a previously built |
1733 | 1728 | image that is already either running in QEMU or running on actual | |
1734 | <para> | 1729 | hardware. |
1735 | The steps to clone the <filename>poky</filename> Git | 1730 | Also, it is assumed that for deployment of the image to the |
1736 | repository, build out an image, and test it using QEMU | 1731 | target, SSH is installed in the image and if the image is running |
1737 | are well documented as follows: | 1732 | on real hardware that you have network access to and from your |
1738 | <itemizedlist> | 1733 | development machine. |
1739 | <listitem><para> | 1734 | </para> |
1740 | For information on how to set up a local copy of the | ||
1741 | <filename>poky</filename> repository and on how to | ||
1742 | build a Yocto Project image, see the | ||
1743 | "<ulink url='&YOCTO_DOCS_QS_URL;#qs-building-images'>Building Images</ulink>" | ||
1744 | section in the Yocto Project Quick Start. | ||
1745 | </para></listitem> | ||
1746 | <listitem><para> | ||
1747 | For information on how to test an image using QEMU, see | ||
1748 | the | ||
1749 | "<link linkend='dev-manual-qemu'>Using the Quick EMUlator (QEMU)</link>" | ||
1750 | section. | ||
1751 | </para></listitem> | ||
1752 | </itemizedlist> | ||
1753 | </para> | ||
1754 | |||
1755 | <para> | ||
1756 | Before you start making modifications to your project's | ||
1757 | source code, you should be sure you have the appropriate | ||
1758 | local repositories and have a base image built using | ||
1759 | BitBake that you can run on QEMU. | ||
1760 | </para> | ||
1761 | </section> | ||
1762 | 1735 | ||
1763 | <section id='update-your-external-source'> | 1736 | <section id='update-your-external-source'> |
1764 | <title>Update Your External Source</title> | 1737 | <title>Update Your External Source</title> |
@@ -1806,18 +1779,12 @@ | |||
1806 | <literallayout class='monospaced'> | 1779 | <literallayout class='monospaced'> |
1807 | $ devtool add <replaceable>your-project-name</replaceable> <replaceable>path-to-source</replaceable> | 1780 | $ devtool add <replaceable>your-project-name</replaceable> <replaceable>path-to-source</replaceable> |
1808 | </literallayout> | 1781 | </literallayout> |
1809 | Running <filename>devtool add</filename> modifies the | ||
1810 | <filename>bblayers.conf</filename> that the | ||
1811 | OpenEmbedded build system uses to build an image. | ||
1812 | For more information on the <filename>bblayers.conf</filename>, | ||
1813 | see the | ||
1814 | "<ulink url='&YOCTO_DOCS_REF_URL;#structure-build-conf-bblayers.conf'><filename>build/conf/bblayers.conf</filename></ulink>" | ||
1815 | section in the Yocto Project Reference Manual. | ||
1816 | </para> | 1782 | </para> |
1817 | 1783 | ||
1818 | <para> | 1784 | <para> |
1819 | Running <filename>devtool add</filename> adds a new workspace | 1785 | Running <filename>devtool</filename> for the first time |
1820 | layer to the <filename>bblayers.conf</filename> file that | 1786 | creates a workspace layer through the |
1787 | <filename>bblayers.conf</filename> file that | ||
1821 | is based on your project's location: | 1788 | is based on your project's location: |
1822 | <literallayout class='monospaced'> | 1789 | <literallayout class='monospaced'> |
1823 | <replaceable>path-to-source</replaceable>/<replaceable>build-directory</replaceable>/<replaceable>workspace-layer</replaceable> | 1790 | <replaceable>path-to-source</replaceable>/<replaceable>build-directory</replaceable>/<replaceable>workspace-layer</replaceable> |
@@ -1918,6 +1885,7 @@ | |||
1918 | </para> | 1885 | </para> |
1919 | </section> | 1886 | </section> |
1920 | 1887 | ||
1888 | <!-- | ||
1921 | <section id='dev-build-the-image'> | 1889 | <section id='dev-build-the-image'> |
1922 | <title>Build the Image</title> | 1890 | <title>Build the Image</title> |
1923 | 1891 | ||
@@ -1946,6 +1914,7 @@ | |||
1946 | section. | 1914 | section. |
1947 | </para> | 1915 | </para> |
1948 | </section> | 1916 | </section> |
1917 | --> | ||
1949 | </section> | 1918 | </section> |
1950 | 1919 | ||
1951 | <section id='devtool-quick-reference'> | 1920 | <section id='devtool-quick-reference'> |
@@ -2003,7 +1972,8 @@ | |||
2003 | name and using <filename>--help</filename>: | 1972 | name and using <filename>--help</filename>: |
2004 | <literallayout class='monospaced'> | 1973 | <literallayout class='monospaced'> |
2005 | $ devtool add --help | 1974 | $ devtool add --help |
2006 | usage: devtool add [-h] [--same-dir] [--version VERSION] recipename srctree | 1975 | usage: devtool add [-h] [--same-dir] [--fetch URI] [--version VERSION] |
1976 | recipename srctree | ||
2007 | 1977 | ||
2008 | Adds a new recipe | 1978 | Adds a new recipe |
2009 | 1979 | ||
@@ -2013,9 +1983,11 @@ | |||
2013 | 1983 | ||
2014 | optional arguments: | 1984 | optional arguments: |
2015 | -h, --help show this help message and exit | 1985 | -h, --help show this help message and exit |
2016 | --same-dir, -s Build in same directory as source (default: False) | 1986 | --same-dir, -s Build in same directory as source |
1987 | --fetch URI, -f URI Fetch the specified URI and extract it to create the | ||
1988 | source tree | ||
2017 | --version VERSION, -V VERSION | 1989 | --version VERSION, -V VERSION |
2018 | Version to use within recipe (PV) (default: None) | 1990 | Version to use within recipe (PV) |
2019 | </literallayout> | 1991 | </literallayout> |
2020 | </para> | 1992 | </para> |
2021 | </section> | 1993 | </section> |
@@ -2034,11 +2006,11 @@ | |||
2034 | 2006 | ||
2035 | <para> | 2007 | <para> |
2036 | The following example creates and adds a new recipe named | 2008 | The following example creates and adds a new recipe named |
2037 | <filename>jackson-2.0</filename> to the workspace layer. | 2009 | <filename>jackson</filename> to the workspace layer. |
2038 | The source code built by the recipes resides in | 2010 | The source code built by the recipes resides in |
2039 | <filename>/home/scottrif/sources/jackson</filename>: | 2011 | <filename>/home/scottrif/sources/jackson</filename>: |
2040 | <literallayout class='monospaced'> | 2012 | <literallayout class='monospaced'> |
2041 | $ devtool add jackson-2.0 /home/scottrif/sources/jackson | 2013 | $ devtool add jackson /home/scottrif/sources/jackson |
2042 | </literallayout> | 2014 | </literallayout> |
2043 | <note> | 2015 | <note> |
2044 | For complete syntax, use the | 2016 | For complete syntax, use the |
@@ -2082,44 +2054,8 @@ | |||
2082 | </para> | 2054 | </para> |
2083 | </section> | 2055 | </section> |
2084 | 2056 | ||
2085 | <section id='devtool-creating-the-workspace'> | ||
2086 | <title>Creating the Workspace Layer</title> | ||
2087 | |||
2088 | <para> | ||
2089 | Use the <filename>devtool create-workspace</filename> command to | ||
2090 | create a new workspace layer in your | ||
2091 | <link linkend='build-directory'>Build Directory</link>. | ||
2092 | When you create a new workspace layer, it is populated with the | ||
2093 | <filename>README</filename> file and the | ||
2094 | <filename>conf</filename> directory only. | ||
2095 | </para> | ||
2096 | |||
2097 | <para> | ||
2098 | The following example creates a new workspace layer in your | ||
2099 | current working and by default names the workspace layer | ||
2100 | "workspace": | ||
2101 | <literallayout class='monospaced'> | ||
2102 | $ devtool create-workspace | ||
2103 | </literallayout> | ||
2104 | <note> | ||
2105 | For complete syntax, use the | ||
2106 | <filename>devtool create-workspace --help</filename> command. | ||
2107 | </note> | ||
2108 | </para> | ||
2109 | |||
2110 | <para> | ||
2111 | You can create a workspace layer anywhere by supplying | ||
2112 | a pathname with the command. | ||
2113 | The following command creates a new workspace layer named | ||
2114 | "new-workspace": | ||
2115 | <literallayout class='monospaced'> | ||
2116 | $ devtool create-workspace /home/scottrif/new-workspace | ||
2117 | </literallayout> | ||
2118 | </para> | ||
2119 | </section> | ||
2120 | |||
2121 | <section id='devtool-modifying-a-recipe'> | 2057 | <section id='devtool-modifying-a-recipe'> |
2122 | <title>Modifying a Recipe</title> | 2058 | <title>Modifying an Existing Recipe</title> |
2123 | 2059 | ||
2124 | <para> | 2060 | <para> |
2125 | Use the <filename>devtool modify</filename> command to begin | 2061 | Use the <filename>devtool modify</filename> command to begin |
@@ -2144,18 +2080,62 @@ | |||
2144 | </literallayout> | 2080 | </literallayout> |
2145 | Using the above command form, the default development branch | 2081 | Using the above command form, the default development branch |
2146 | would be "devtool". | 2082 | would be "devtool". |
2083 | <note> | ||
2084 | For complete syntax, use the | ||
2085 | <filename>devtool modify --help</filename> command. | ||
2086 | </note> | ||
2147 | </para> | 2087 | </para> |
2088 | </section> | ||
2089 | |||
2090 | <section id='devtool-updating-a-recipe'> | ||
2091 | <title>Updating a Recipe</title> | ||
2148 | 2092 | ||
2149 | <para> | 2093 | <para> |
2150 | If you want to name a development branch, use the | 2094 | Use the <filename>devtool update-recipe</filename> command to |
2151 | <filename>-b</filename> option with the | 2095 | update your recipe with patches that reflect changes you make |
2152 | <filename>-x</filename> option: | 2096 | to the source files. |
2097 | For example, if you know you are going to work on some | ||
2098 | code, you could first use the | ||
2099 | <link linkend='devtool-modifying-a-recipe'><filename>devtool modify</filename></link> | ||
2100 | command to extract the code and set up the workspace. | ||
2101 | After which, you could modify, compile, and test the code. | ||
2102 | </para> | ||
2103 | |||
2104 | <para> | ||
2105 | When you are satisfied with the results and you have committed | ||
2106 | your changes to the Git repository, you can then | ||
2107 | run the <filename>devtool update-recipe</filename> to create the | ||
2108 | patches and update the recipe: | ||
2153 | <literallayout class='monospaced'> | 2109 | <literallayout class='monospaced'> |
2154 | $ devtool modify -x -b <replaceable>branch</replaceable> <replaceable>recipe</replaceable> <replaceable>path-to-source</replaceable> | 2110 | $ devtool update-recipe <replaceable>recipe</replaceable> |
2155 | </literallayout> | 2111 | </literallayout> |
2112 | If you run the <filename>devtool update-recipe</filename> | ||
2113 | without committing your changes, the command ignores the | ||
2114 | changes. | ||
2115 | </para> | ||
2116 | |||
2117 | <para> | ||
2118 | Often, you might want to apply customizations made to your | ||
2119 | software in your own layer rather than apply them to the | ||
2120 | original recipe. | ||
2121 | If so, you can use the | ||
2122 | <filename>-a</filename> or <filename>--append</filename> | ||
2123 | option with the <filename>devtool update-recipe</filename> | ||
2124 | command. | ||
2125 | These options allow you to specify the layer into which to | ||
2126 | write an append file: | ||
2127 | <literallayout class='monospaced'> | ||
2128 | $ devtool update-recipe <replaceable>recipe</replaceable> -a <replaceable>base-layer-directory</replaceable> | ||
2129 | </literallayout> | ||
2130 | The <filename>*.bbappend</filename> file is created at the | ||
2131 | appropriate path within the specified layer directory, which | ||
2132 | may or may not be in your <filename>bblayers.conf</filename> | ||
2133 | file. | ||
2134 | If an append file already exists, the command updates it | ||
2135 | appropriately. | ||
2156 | <note> | 2136 | <note> |
2157 | For complete syntax, use the | 2137 | For complete syntax, use the |
2158 | <filename>devtool modify --help</filename> command. | 2138 | <filename>devtool update-recipe --help</filename> command. |
2159 | </note> | 2139 | </note> |
2160 | </para> | 2140 | </para> |
2161 | </section> | 2141 | </section> |
@@ -2188,31 +2168,6 @@ | |||
2188 | </para> | 2168 | </para> |
2189 | </section> | 2169 | </section> |
2190 | 2170 | ||
2191 | <section id='devtool-updating-a-recipe'> | ||
2192 | <title>Updating a Recipe</title> | ||
2193 | |||
2194 | <para> | ||
2195 | Use the <filename>devtool update-recipe</filename> command to | ||
2196 | update your recipe with patches that reflect changes you make | ||
2197 | to the source files. | ||
2198 | For example, if you know you are going to work on some | ||
2199 | code, you could first use the | ||
2200 | <link linkend='devtool-modifying-a-recipe'><filename>devtool modify</filename></link> | ||
2201 | command to extract the code and set up the workspace. | ||
2202 | After which, you could modify, compile, and test the code. | ||
2203 | When you are satisfied with the results you can then | ||
2204 | run the <filename>devtool update-recipe</filename> to create the | ||
2205 | patches and update the recipe: | ||
2206 | <literallayout class='monospaced'> | ||
2207 | $ devtool update-recipe <replaceable>recipe</replaceable> | ||
2208 | </literallayout> | ||
2209 | <note> | ||
2210 | For complete syntax, use the | ||
2211 | <filename>devtool update-recipe --help</filename> command. | ||
2212 | </note> | ||
2213 | </para> | ||
2214 | </section> | ||
2215 | |||
2216 | <section id='devtool-building-your-software'> | 2171 | <section id='devtool-building-your-software'> |
2217 | <title>Building Your Software</title> | 2172 | <title>Building Your Software</title> |
2218 | 2173 | ||
@@ -2295,6 +2250,42 @@ | |||
2295 | </note> | 2250 | </note> |
2296 | </para> | 2251 | </para> |
2297 | </section> | 2252 | </section> |
2253 | |||
2254 | <section id='devtool-creating-the-workspace'> | ||
2255 | <title>Creating the Workspace Layer in an Alternative Location</title> | ||
2256 | |||
2257 | <para> | ||
2258 | Use the <filename>devtool create-workspace</filename> command to | ||
2259 | create a new workspace layer in your | ||
2260 | <link linkend='build-directory'>Build Directory</link>. | ||
2261 | When you create a new workspace layer, it is populated with the | ||
2262 | <filename>README</filename> file and the | ||
2263 | <filename>conf</filename> directory only. | ||
2264 | </para> | ||
2265 | |||
2266 | <para> | ||
2267 | The following example creates a new workspace layer in your | ||
2268 | current working and by default names the workspace layer | ||
2269 | "workspace": | ||
2270 | <literallayout class='monospaced'> | ||
2271 | $ devtool create-workspace | ||
2272 | </literallayout> | ||
2273 | <note> | ||
2274 | For complete syntax, use the | ||
2275 | <filename>devtool create-workspace --help</filename> command. | ||
2276 | </note> | ||
2277 | </para> | ||
2278 | |||
2279 | <para> | ||
2280 | You can create a workspace layer anywhere by supplying | ||
2281 | a pathname with the command. | ||
2282 | The following command creates a new workspace layer named | ||
2283 | "new-workspace": | ||
2284 | <literallayout class='monospaced'> | ||
2285 | $ devtool create-workspace /home/scottrif/new-workspace | ||
2286 | </literallayout> | ||
2287 | </para> | ||
2288 | </section> | ||
2298 | </section> | 2289 | </section> |
2299 | 2290 | ||
2300 | <section id="using-a-quilt-workflow"> | 2291 | <section id="using-a-quilt-workflow"> |