bitbake: bitbake-user-manual-metadata.xml: Adding some flag examples.
authorRobert P. J. Day <rpjday@crashcourse.ca>
Thu, 10 Jul 2014 07:12:09 +0000 (10:12 +0300)
committerRichard Purdie <richard.purdie@linuxfoundation.org>
Mon, 21 Jul 2014 10:00:57 +0000 (11:00 +0100)
As long as i've understood everything correctly, this is just
throwing in some physical examples of a couple concepts.

(Bitbake rev: a18cc69c2fef6484a6acd78ea008d1da71198e68)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
bitbake/doc/bitbake-user-manual/bitbake-user-manual-metadata.xml

index b8a77e1..5e1a381 100644 (file)
                 The flags are immediately set to "abc" and "123", respectively.
                 The <filename>a</filename> flag becomes "abc456".
             </para>
+
+            <para>
+                No need exists to pre-define variable flags.
+                You can simply start using them.  
+                One extremely common application
+                is to attach some brief documentation to a BitBake variable as
+                follows:
+                <literallayout class='monospaced'>
+    CACHE[doc] = "The directory holding the cache of the metadata."
+                </literallayout>
+            </para>
         </section>
 
         <section id='inline-python-variable-expansion'>
      DATE = "${@time.strftime('%Y%m%d',time.gmtime())}"
                 </literallayout>
                 This example results in the <filename>DATE</filename>
-                variable becoming the current date.
+                variable being set to the current date.
+            </para>
+
+            <para>
+                Probably the most common use of this feature is to extract
+                the value of variables from BitBake's internal data dictionary,
+                <filename>d</filename>. 
+                The following lines select the values of a package name 
+                and its version number, respectively:
+                <literallayout class='monospaced'>
+    PN = "${@bb.parse.BBHandler.vars_from_file(d.getVar('FILE'),d)[0] or 'defaultpkgname'}"
+    PV = "${@bb.parse.BBHandler.vars_from_file(d.getVar('FILE'),d)[1] or '1.0'}"
+                </literallayout>
             </para>
         </section>