diff options
author | Scott Rifenbark <scott.m.rifenbark@intel.com> | 2014-02-10 12:31:56 -0600 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2014-03-09 18:59:01 -0700 |
commit | bfafc2fc3c9d7eef60628fb6ec204389253dd2dc (patch) | |
tree | a4550d2dcac5e5a5c258d7713b812c259862e950 /bitbake/doc | |
parent | 3940d59e64586962c197718f8b4e6e9da4acc7ea (diff) | |
download | poky-bfafc2fc3c9d7eef60628fb6ec204389253dd2dc.tar.gz |
bitbake: user-manual-metadata.xml: Re-write of "Variants - Class Extension Mechanism" section.
Some general rewrites here.
(Bitbake rev: 7149ab6f6e936c19d681f05aa64b123c10f2f3da)
Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'bitbake/doc')
-rw-r--r-- | bitbake/doc/user-manual/user-manual-metadata.xml | 69 |
1 files changed, 40 insertions, 29 deletions
diff --git a/bitbake/doc/user-manual/user-manual-metadata.xml b/bitbake/doc/user-manual/user-manual-metadata.xml index 5d7a9d753c..2e19f4572c 100644 --- a/bitbake/doc/user-manual/user-manual-metadata.xml +++ b/bitbake/doc/user-manual/user-manual-metadata.xml | |||
@@ -1451,40 +1451,51 @@ | |||
1451 | <title>Variants - Class Extension Mechanism</title> | 1451 | <title>Variants - Class Extension Mechanism</title> |
1452 | 1452 | ||
1453 | <para> | 1453 | <para> |
1454 | Two BitBake features exist to facilitate the creation of | 1454 | BitBake supports two features that facilitate creating |
1455 | multiple buildable incarnations from a single recipe file. | 1455 | from a single recipe file multiple incarnations of that |
1456 | </para> | 1456 | recipe file where all incarnations are buildable. |
1457 | 1457 | These features are enabled through the | |
1458 | <para> | 1458 | <link linkend='var-BBCLASSEXTEND'><filename>BBCLASSEXTEND</filename></link> |
1459 | The first is <filename>BBCLASSEXTEND</filename>. | 1459 | and |
1460 | This variable is a space separated list of classes used to "extend" the | 1460 | <link linkend='var-BBVERSIONS'><filename>BBVERSIONS</filename></link> |
1461 | recipe for each variant. | 1461 | variables: |
1462 | Here is an example that results in a second incarnation of the current | 1462 | <itemizedlist> |
1463 | recipe being available. | 1463 | <listitem><para><emphasis><filename>BBCLASSEXTEND</filename>:</emphasis> |
1464 | This second incarnation will have the "native" class inherited. | 1464 | This variable is a space separated list of classes used to "extend" the |
1465 | <literallayout class='monospaced'> | 1465 | recipe for each variant. |
1466 | Here is an example that results in a second incarnation of the current | ||
1467 | recipe being available. | ||
1468 | This second incarnation will have the "native" class inherited. | ||
1469 | <literallayout class='monospaced'> | ||
1466 | BBCLASSEXTEND = "native" | 1470 | BBCLASSEXTEND = "native" |
1467 | </literallayout> | 1471 | </literallayout></para></listitem> |
1468 | The second feature is <filename>BBVERSIONS</filename>. | 1472 | <listitem><para><emphasis><filename>BBVERSIONS</filename>:</emphasis> |
1469 | This variable allows a single recipe to build multiple versions of a | 1473 | This variable allows a single recipe to build multiple versions of a |
1470 | project from a single recipe file, and allows you to specify | 1474 | project from a single recipe file. |
1471 | conditional metadata (using the <filename>OVERRIDES</filename> | 1475 | You can also specify conditional metadata |
1472 | mechanism) for a single version, or an optionally named range of versions: | 1476 | (using the |
1473 | <literallayout class='monospaced'> | 1477 | <link linkend='var-OVERRIDES'><filename>OVERRIDES</filename></link> |
1478 | mechanism) for a single version, or an optionally named range of versions. | ||
1479 | Here is an example: | ||
1480 | <literallayout class='monospaced'> | ||
1474 | BBVERSIONS = "1.0 2.0 git" | 1481 | BBVERSIONS = "1.0 2.0 git" |
1475 | SRC_URI_git = "git://someurl/somepath.git" | 1482 | SRC_URI_git = "git://someurl/somepath.git" |
1476 | </literallayout> | 1483 | |
1477 | <literallayout class='monospaced'> | ||
1478 | BBVERSIONS = "1.0.[0-6]:1.0.0+ \ 1.0.[7-9]:1.0.7+" | 1484 | BBVERSIONS = "1.0.[0-6]:1.0.0+ \ 1.0.[7-9]:1.0.7+" |
1479 | SRC_URI_append_1.0.7+ = "file://some_patch_which_the_new_versions_need.patch;patch=1" | 1485 | SRC_URI_append_1.0.7+ = "file://some_patch_which_the_new_versions_need.patch;patch=1" |
1480 | </literallayout> | 1486 | </literallayout> |
1481 | The name of the range will default to the original version of the | 1487 | The name of the range defaults to the original version of the |
1482 | recipe, so given OE, a recipe file of <filename>foo_1.0.0+.bb</filename> | 1488 | recipe. |
1483 | will default the name of its versions to <filename>1.0.0+</filename>. | 1489 | For example, in OpenEmbedded, the recipe file |
1484 | This is useful, as the range name is not only placed into overrides; | 1490 | <filename>foo_1.0.0+.bb</filename> creates a default name range |
1485 | it's also made available for the metadata to use in the form of the | 1491 | of <filename>1.0.0+</filename>. |
1486 | <filename>BPV</filename> variable, for use in | 1492 | This is useful because the range name is not only placed |
1487 | <filename>file://</filename> search paths (<filename>FILESPATH</filename>). | 1493 | into overrides, but it is also made available for the metadata to use |
1494 | in the variable that defines the base recipe versions for use in | ||
1495 | <filename>file://</filename> search paths | ||
1496 | (<link linkend='var-FILESPATH'><filename>FILESPATH</filename></link>). | ||
1497 | </para></listitem> | ||
1498 | </itemizedlist> | ||
1488 | </para> | 1499 | </para> |
1489 | </section> | 1500 | </section> |
1490 | 1501 | ||