summaryrefslogtreecommitdiffstats
path: root/bitbake/doc/user-manual/user-manual-metadata.xml
diff options
context:
space:
mode:
authorScott Rifenbark <scott.m.rifenbark@intel.com>2014-02-10 12:31:56 -0600
committerRichard Purdie <richard.purdie@linuxfoundation.org>2014-03-09 18:59:01 -0700
commitbfafc2fc3c9d7eef60628fb6ec204389253dd2dc (patch)
treea4550d2dcac5e5a5c258d7713b812c259862e950 /bitbake/doc/user-manual/user-manual-metadata.xml
parent3940d59e64586962c197718f8b4e6e9da4acc7ea (diff)
downloadpoky-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/user-manual/user-manual-metadata.xml')
-rw-r--r--bitbake/doc/user-manual/user-manual-metadata.xml69
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