diff options
author | Robert P. J. Day <rpjday@crashcourse.ca> | 2014-08-04 08:05:34 +0300 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2014-08-12 13:50:29 +0100 |
commit | 99a3c1911c72547327c1167caab5f4bfd2b1eb14 (patch) | |
tree | e90a50e40b71d7c9701b25a2ce6db46a762bade4 /documentation/dev-manual/dev-manual-common-tasks.xml | |
parent | 034640585f97327ba163ae773f1b95c0cc2adbd2 (diff) | |
download | poky-99a3c1911c72547327c1167caab5f4bfd2b1eb14.tar.gz |
dev-manual: Edits to several examples and some typos.
These catches are from Robert P. J. Day and applied as a
patch.
(From yocto-docs rev: b805795e9bf68286aa5b79a94792e2fefd293b92)
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-common-tasks.xml')
-rw-r--r-- | documentation/dev-manual/dev-manual-common-tasks.xml | 68 |
1 files changed, 36 insertions, 32 deletions
diff --git a/documentation/dev-manual/dev-manual-common-tasks.xml b/documentation/dev-manual/dev-manual-common-tasks.xml index 05d1e95bdf..a8ef2d1576 100644 --- a/documentation/dev-manual/dev-manual-common-tasks.xml +++ b/documentation/dev-manual/dev-manual-common-tasks.xml | |||
@@ -1320,7 +1320,7 @@ | |||
1320 | <listitem><para><emphasis>Functions:</emphasis> | 1320 | <listitem><para><emphasis>Functions:</emphasis> |
1321 | Functions provide a series of actions to be performed. | 1321 | Functions provide a series of actions to be performed. |
1322 | You usually use functions to override the default | 1322 | You usually use functions to override the default |
1323 | implementation of a task function or to compliment | 1323 | implementation of a task function or to complement |
1324 | a default function (i.e. append or prepend to an | 1324 | a default function (i.e. append or prepend to an |
1325 | existing function). | 1325 | existing function). |
1326 | Standard functions use <filename>sh</filename> shell | 1326 | Standard functions use <filename>sh</filename> shell |
@@ -1332,12 +1332,13 @@ | |||
1332 | do_install () { | 1332 | do_install () { |
1333 | autotools_do_install | 1333 | autotools_do_install |
1334 | install -d ${D}${base_bindir} | 1334 | install -d ${D}${base_bindir} |
1335 | mv ${D}${bindir}/sed ${D}${base_bindir}/sed.${PN} | 1335 | mv ${D}${bindir}/sed ${D}${base_bindir}/sed |
1336 | rmdir ${D}${bindir}/ | ||
1336 | } | 1337 | } |
1337 | </literallayout> | 1338 | </literallayout> |
1338 | It is also possible to implement new functions that | 1339 | It is also possible to implement new functions that |
1339 | are called between existing tasks as long as the | 1340 | are called between existing tasks as long as the |
1340 | new functions are not replacing or complimenting the | 1341 | new functions are not replacing or complementing the |
1341 | default functions. | 1342 | default functions. |
1342 | You can implement functions in Python | 1343 | You can implement functions in Python |
1343 | instead of shell. | 1344 | instead of shell. |
@@ -1488,7 +1489,6 @@ | |||
1488 | Use the <filename>_prepend</filename> operator to | 1489 | Use the <filename>_prepend</filename> operator to |
1489 | prepend values to existing variables. | 1490 | prepend values to existing variables. |
1490 | This operator does not add any additional space. | 1491 | This operator does not add any additional space. |
1491 | This operator does not add any additional space. | ||
1492 | Also, the operator is applied after all the | 1492 | Also, the operator is applied after all the |
1493 | <filename>+=</filename>, and | 1493 | <filename>+=</filename>, and |
1494 | <filename>=+</filename> operators have been applied and | 1494 | <filename>=+</filename> operators have been applied and |
@@ -1506,12 +1506,12 @@ | |||
1506 | only being performed for the specified target or | 1506 | only being performed for the specified target or |
1507 | machine: | 1507 | machine: |
1508 | <literallayout class='monospaced'> | 1508 | <literallayout class='monospaced'> |
1509 | CFLAGS_prepend_sh4 = " file://fix-makefile.patch" | 1509 | CFLAGS_prepend_sh4 = "-I${S}/myincludes " |
1510 | </literallayout> | 1510 | </literallayout> |
1511 | </para></listitem> | 1511 | </para></listitem> |
1512 | <listitem><para><emphasis>Overrides:</emphasis> - | 1512 | <listitem><para><emphasis>Overrides:</emphasis> - |
1513 | You can use overrides to set a value conditionally, | 1513 | You can use overrides to set a value conditionally, |
1514 | typically on how the recipe is being built. | 1514 | typically based on how the recipe is being built. |
1515 | For example, to set the | 1515 | For example, to set the |
1516 | <ulink url='&YOCTO_DOCS_REF_URL;#var-KBRANCH'><filename>KBRANCH</filename></ulink> | 1516 | <ulink url='&YOCTO_DOCS_REF_URL;#var-KBRANCH'><filename>KBRANCH</filename></ulink> |
1517 | variable's value to "standard/base" for any target | 1517 | variable's value to "standard/base" for any target |
@@ -1528,7 +1528,7 @@ | |||
1528 | For example, when setting variables such as | 1528 | For example, when setting variables such as |
1529 | <ulink url='&YOCTO_DOCS_REF_URL;#var-FILES'><filename>FILES</filename></ulink> | 1529 | <ulink url='&YOCTO_DOCS_REF_URL;#var-FILES'><filename>FILES</filename></ulink> |
1530 | and | 1530 | and |
1531 | <ulink url='&YOCTO_DOCS_REF_URL;#var-RDEPENDS'><filename>RDEPENDS</filename></ulink>, | 1531 | <ulink url='&YOCTO_DOCS_REF_URL;#var-RDEPENDS'><filename>RDEPENDS</filename></ulink> |
1532 | that are specific to individual packages produced by | 1532 | that are specific to individual packages produced by |
1533 | a recipe, you should always use an override that | 1533 | a recipe, you should always use an override that |
1534 | specifies the name of the package. | 1534 | specifies the name of the package. |
@@ -1577,7 +1577,7 @@ | |||
1577 | Creating a new recipe is usually an iterative process that | 1577 | Creating a new recipe is usually an iterative process that |
1578 | requires using BitBake to process the recipe multiple times in | 1578 | requires using BitBake to process the recipe multiple times in |
1579 | order to progressively discover and add information to the | 1579 | order to progressively discover and add information to the |
1580 | recipe. | 1580 | recipe file. |
1581 | </para> | 1581 | </para> |
1582 | 1582 | ||
1583 | <para> | 1583 | <para> |
@@ -1599,17 +1599,18 @@ | |||
1599 | 1599 | ||
1600 | <para> | 1600 | <para> |
1601 | During the build, the OpenEmbedded build system creates a | 1601 | During the build, the OpenEmbedded build system creates a |
1602 | temporary work directory for the recipe | 1602 | temporary work directory for each recipe |
1603 | (<filename>${</filename><ulink url='&YOCTO_DOCS_REF_URL;#var-WORKDIR'><filename>WORKDIR</filename></ulink><filename>}</filename>) | 1603 | (<filename>${</filename><ulink url='&YOCTO_DOCS_REF_URL;#var-WORKDIR'><filename>WORKDIR</filename></ulink><filename>}</filename>) |
1604 | where it keeps extracted source files, log files, intermediate | 1604 | where it keeps extracted source files, log files, intermediate |
1605 | compilation and packaging files, and so forth. | 1605 | compilation and packaging files, and so forth. |
1606 | </para> | 1606 | </para> |
1607 | 1607 | ||
1608 | <para> | 1608 | <para> |
1609 | The temporary work directory is constructed as follows and | 1609 | The per-recipe temporary work directory is constructed as follows and |
1610 | depends on several factors: | 1610 | depends on several factors: |
1611 | <literallayout class='monospaced'> | 1611 | <literallayout class='monospaced'> |
1612 | ${TMPDIR}/work/${MULTIMACH_TARGET_SYS}/${PN}/${EXTENDPE}${PV}-${PR} | 1612 | BASE_WORKDIR ?= "${TMPDIR}/work" |
1613 | WORKDIR = "${BASE_WORKDIR}/${MULTIMACH_TARGET_SYS}/${PN}/${EXTENDPE}${PV}-${PR}" | ||
1613 | </literallayout> | 1614 | </literallayout> |
1614 | As an example, assume a Source Directory top-level folder named | 1615 | As an example, assume a Source Directory top-level folder named |
1615 | <filename>poky</filename>, a default Build Directory at | 1616 | <filename>poky</filename>, a default Build Directory at |
@@ -1687,7 +1688,7 @@ | |||
1687 | The | 1688 | The |
1688 | <ulink url='&YOCTO_DOCS_REF_URL;#ref-tasks-fetch'><filename>do_fetch</filename></ulink> | 1689 | <ulink url='&YOCTO_DOCS_REF_URL;#ref-tasks-fetch'><filename>do_fetch</filename></ulink> |
1689 | task uses the prefix of each entry in the | 1690 | task uses the prefix of each entry in the |
1690 | <filename>SRC_URI</filename> variable value to determine what | 1691 | <filename>SRC_URI</filename> variable value to determine which |
1691 | fetcher to use to get your source files. | 1692 | fetcher to use to get your source files. |
1692 | It is the <filename>SRC_URI</filename> variable that triggers | 1693 | It is the <filename>SRC_URI</filename> variable that triggers |
1693 | the fetcher. | 1694 | the fetcher. |
@@ -1717,7 +1718,7 @@ | |||
1717 | 1718 | ||
1718 | <para> | 1719 | <para> |
1719 | Here is a simple example from the | 1720 | Here is a simple example from the |
1720 | <filename>meta/recipes-devtools/cdrtools/cdrtools-native_3.01a17.bb</filename> | 1721 | <filename>meta/recipes-devtools/cdrtools/cdrtools-native_3.01a20.bb</filename> |
1721 | recipe where the source comes from a single tarball. | 1722 | recipe where the source comes from a single tarball. |
1722 | Notice the use of the | 1723 | Notice the use of the |
1723 | <ulink url='&YOCTO_DOCS_REF_URL;#var-PV'><filename>PV</filename></ulink> | 1724 | <ulink url='&YOCTO_DOCS_REF_URL;#var-PV'><filename>PV</filename></ulink> |
@@ -1824,7 +1825,7 @@ | |||
1824 | 1825 | ||
1825 | <para> | 1826 | <para> |
1826 | This final example is a bit more complicated and is from the | 1827 | This final example is a bit more complicated and is from the |
1827 | <filename>meta/recipes-sato/rxvt-unicode/rxvt-unicode_9.19.bb</filename> | 1828 | <filename>meta/recipes-sato/rxvt-unicode/rxvt-unicode_9.20.bb</filename> |
1828 | recipe. | 1829 | recipe. |
1829 | The example's <filename>SRC_URI</filename> statement identifies | 1830 | The example's <filename>SRC_URI</filename> statement identifies |
1830 | multiple files as the source files for the recipe: a tarball, a | 1831 | multiple files as the source files for the recipe: a tarball, a |
@@ -1844,8 +1845,8 @@ | |||
1844 | The path is relative to the | 1845 | The path is relative to the |
1845 | <ulink url='&YOCTO_DOCS_REF_URL;#var-FILESPATH'><filename>FILESPATH</filename></ulink> | 1846 | <ulink url='&YOCTO_DOCS_REF_URL;#var-FILESPATH'><filename>FILESPATH</filename></ulink> |
1846 | variable and searches specific directories in a certain order: | 1847 | variable and searches specific directories in a certain order: |
1847 | <filename>${</filename><ulink url='&YOCTO_DOCS_REF_URL;#var-BPN'><filename>BPN</filename></ulink><filename>}</filename>, | ||
1848 | <filename>${</filename><ulink url='&YOCTO_DOCS_REF_URL;#var-BP'><filename>BP</filename></ulink><filename>}</filename>, | 1848 | <filename>${</filename><ulink url='&YOCTO_DOCS_REF_URL;#var-BP'><filename>BP</filename></ulink><filename>}</filename>, |
1849 | <filename>${</filename><ulink url='&YOCTO_DOCS_REF_URL;#var-BPN'><filename>BPN</filename></ulink><filename>}</filename>, | ||
1849 | and <filename>files</filename>. | 1850 | and <filename>files</filename>. |
1850 | The directories are assumed to be subdirectories of the | 1851 | The directories are assumed to be subdirectories of the |
1851 | directory in which the recipe or append file resides. | 1852 | directory in which the recipe or append file resides. |
@@ -2434,7 +2435,7 @@ | |||
2434 | needs to inherit the | 2435 | needs to inherit the |
2435 | <ulink url='&YOCTO_DOCS_REF_URL;#ref-classes-systemd'><filename>systemd</filename></ulink> | 2436 | <ulink url='&YOCTO_DOCS_REF_URL;#ref-classes-systemd'><filename>systemd</filename></ulink> |
2436 | class. | 2437 | class. |
2437 | See the <filename>systemd.class</filename> file | 2438 | See the <filename>systemd.bbclass</filename> file |
2438 | located in your | 2439 | located in your |
2439 | <link linkend='source-directory'>Source Directory</link>. | 2440 | <link linkend='source-directory'>Source Directory</link>. |
2440 | section for more information. | 2441 | section for more information. |
@@ -2606,7 +2607,7 @@ | |||
2606 | <para> | 2607 | <para> |
2607 | A post-installation function has the following structure: | 2608 | A post-installation function has the following structure: |
2608 | <literallayout class='monospaced'> | 2609 | <literallayout class='monospaced'> |
2609 | pkg_postinst_PACKAGENAME () { | 2610 | pkg_postinst_PACKAGENAME() { |
2610 | #!/bin/sh -e | 2611 | #!/bin/sh -e |
2611 | # Commands to carry out | 2612 | # Commands to carry out |
2612 | } | 2613 | } |
@@ -2629,7 +2630,7 @@ | |||
2629 | To delay script execution until boot time, use the following | 2630 | To delay script execution until boot time, use the following |
2630 | structure in the post-installation script: | 2631 | structure in the post-installation script: |
2631 | <literallayout class='monospaced'> | 2632 | <literallayout class='monospaced'> |
2632 | pkg_postinst_PACKAGENAME () { | 2633 | pkg_postinst_PACKAGENAME() { |
2633 | #!/bin/sh -e | 2634 | #!/bin/sh -e |
2634 | if [ x"$D" = "x" ]; then | 2635 | if [ x"$D" = "x" ]; then |
2635 | # Actions to carry out on the device go here | 2636 | # Actions to carry out on the device go here |
@@ -2811,33 +2812,36 @@ | |||
2811 | <para> | 2812 | <para> |
2812 | In the following example, <filename>mtd-utils</filename> is a makefile-based package: | 2813 | In the following example, <filename>mtd-utils</filename> is a makefile-based package: |
2813 | <literallayout class='monospaced'> | 2814 | <literallayout class='monospaced'> |
2814 | SUMMARY = "Tools for managing memory technology devices." | 2815 | SUMMARY = "Tools for managing memory technology devices" |
2815 | SECTION = "base" | 2816 | SECTION = "base" |
2816 | DEPENDS = "zlib lzo e2fsprogs util-linux" | 2817 | DEPENDS = "zlib lzo e2fsprogs util-linux" |
2817 | HOMEPAGE = "http://www.linux-mtd.infradead.org/" | 2818 | HOMEPAGE = "http://www.linux-mtd.infradead.org/" |
2818 | LICENSE = "GPLv2+" | 2819 | LICENSE = "GPLv2+" |
2819 | LIC_FILES_CHKSUM = "file://COPYING;md5=0636e73ff0215e8d672dc4c32c317bb3 \ | 2820 | LIC_FILES_CHKSUM = "file://COPYING;md5=0636e73ff0215e8d672dc4c32c317bb3 \ |
2820 | file://include/common.h;beginline=1;endline=17;md5=ba05b07912a44ea2bf81ce409380049c" | 2821 | file://include/common.h;beginline=1;endline=17;md5=ba05b07912a44ea2bf81ce409380049c" |
2821 | 2822 | ||
2822 | SRC_URI = "git://git.infradead.org/mtd-utils.git;protocol=git;tag=995cfe51b0a3cf32f381c140bf72b21bf91cef1b \ | 2823 | # Use the latest version at 26 Oct, 2013 |
2823 | file://add-exclusion-to-mkfs-jffs2-git-2.patch" | 2824 | SRCREV = "9f107132a6a073cce37434ca9cda6917dd8d866b" |
2825 | SRC_URI = "git://git.infradead.org/mtd-utils.git \ | ||
2826 | file://add-exclusion-to-mkfs-jffs2-git-2.patch \ | ||
2827 | " | ||
2824 | 2828 | ||
2825 | S = "${WORKDIR}/git/" | 2829 | PV = "1.5.1+git${SRCPV}" |
2826 | 2830 | ||
2827 | PR = "r1" | 2831 | S = "${WORKDIR}/git/" |
2828 | 2832 | ||
2829 | EXTRA_OEMAKE = "'CC=${CC}' 'RANLIB=${RANLIB}' 'AR=${AR}' \ | 2833 | EXTRA_OEMAKE = "'CC=${CC}' 'RANLIB=${RANLIB}' 'AR=${AR}' 'CFLAGS=${CFLAGS} -I${S}/include -DWITHOUT_XATTR' 'BUILDDIR=${S}'" |
2830 | 'CFLAGS=${CFLAGS} -I${S}/include -DWITHOUT_XATTR' 'BUILDDIR=${S}'" | ||
2831 | 2834 | ||
2832 | do_install () { | 2835 | do_install () { |
2833 | oe_runmake install DESTDIR=${D} SBINDIR=${sbindir} MANDIR=${mandir} \ | 2836 | oe_runmake install DESTDIR=${D} SBINDIR=${sbindir} MANDIR=${mandir} INCLUDEDIR=${includedir} |
2834 | INCLUDEDIR=${includedir} | ||
2835 | install -d ${D}${includedir}/mtd/ | ||
2836 | for f in ${S}/include/mtd/*.h; do | ||
2837 | install -m 0644 $f ${D}${includedir}/mtd/ | ||
2838 | done | ||
2839 | } | 2837 | } |
2840 | 2838 | ||
2839 | PACKAGES =+ "mtd-utils-jffs2 mtd-utils-ubifs mtd-utils-misc" | ||
2840 | |||
2841 | FILES_mtd-utils-jffs2 = "${sbindir}/mkfs.jffs2 ${sbindir}/jffs2dump ${sbindir}/jffs2reader ${sbindir}/sumtool" | ||
2842 | FILES_mtd-utils-ubifs = "${sbindir}/mkfs.ubifs ${sbindir}/ubi*" | ||
2843 | FILES_mtd-utils-misc = "${sbindir}/nftl* ${sbindir}/ftl* ${sbindir}/rfd* ${sbindir}/doc* ${sbindir}/serve_image ${sbindir}/recv_image" | ||
2844 | |||
2841 | PARALLEL_MAKE = "" | 2845 | PARALLEL_MAKE = "" |
2842 | 2846 | ||
2843 | BBCLASSEXTEND = "native" | 2847 | BBCLASSEXTEND = "native" |