Skip to contentSkip to conversation

Documentation: Add a couple examples to conditional data.

PATCH In review Robert P. J. Day 2 participants 3 messages Jul 9, 2014 – Jul 10, 2014

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 Documentation: Add a couple examples to conditional data.

---

i think having a couple real-life examples here would make a huge
difference.

doc/bitbake-user-manual/bitbake-user-manual-metadata.xml +29 -0
index a9f5072..e433d85 100644
@@ -372,6 +372,23 @@
                         You select the os-specific version of the <filename>TEST</filename>
                         variable by appending the "os" override to the variable
                         (i.e.<filename>TEST_os</filename>).
+                        </para>
+
+                        <para>
+                            As a practical example, the following lines from
+                            one of the Linux kernel recipe files will first set
+                            the kernel branch variable <filename>KBRANCH</filename>
+                            to a default value, then conditionally override that
+                            value based on the architecture of the build:
+                        <literallayout class='monospaced'>
+    KBRANCH = "standard/base"
+    KBRANCH_qemuarm  = "standard/arm-versatile-926ejs"
+    KBRANCH_qemumips = "standard/mti-malta32"
+    KBRANCH_qemuppc  = "standard/qemuppc"
+    KBRANCH_qemux86  = "standard/common-pc/base"
+    KBRANCH_qemux86-64  = "standard/common-pc-64/base"
+    KBRANCH_qemumips64 = "standard/mti-malta64"
+                        </literallayout>
                         </para></listitem>
                     <listitem><para><emphasis>Appending and Prepending:</emphasis>
                         BitBake also supports append and prepend operations to
@@ -385,6 +402,18 @@
                         </literallayout>
                         In this example, <filename>DEPENDS</filename> becomes
                         "glibc ncurses libmad".
+                        </para>
+
+                        <para>
+                            Again using a kernel recipe file as an example, the
+                            following lines will conditionally append to the
+                            <filename>KERNEL_FEATURES</filename> variable based
+                            on the architecture:
+                        <literallayout class='monospaced'>
+    KERNEL_FEATURES_append = " ${KERNEL_EXTRA_FEATURES}"
+    KERNEL_FEATURES_append_qemux86=" cfg/sound.scc cfg/paravirt_kvm.scc"
+    KERNEL_FEATURES_append_qemux86-64=" cfg/sound.scc cfg/paravirt_kvm.scc"
+                        </literallayout>
                         </para></listitem>
                 </itemizedlist>
             </para>
Signature · 7 lines
========================================================================
Robert P. J. Day                                 Ottawa, Ontario, CANADA
                        http://crashcourse.ca

Twitter:                                       http://twitter.com/rpjday
LinkedIn:                               http://ca.linkedin.com/in/rpjday
========================================================================
#1 lore raw

Applied. I added some wording to call out the examples as being OpenEmbedded metadata-based examples. I am assuming the examples were pulled from the poky area. For the BB manual, we want to try to keep the manual isolated as much as possible from YP. This is difficult but that is the intent. Also, for future patches, I use a 5-space indentation convention for any code examples between the <literallayout> and </literallayout> tags.

Change needs to be merged into the bitbake repo.

Scott

Quoted 85 lines

-----Original Message-----
From: [email protected] [mailto:bitbake- [email protected]] On Behalf Of Robert P. J. Day
Sent: Wednesday, July 09, 2014 5:21 AM
To: BitBake developer list
Subject: [bitbake-devel] [PATCH] Documentation: Add a couple examples to conditional data.

---

i think having a couple real-life examples here would make a huge
difference.

doc/bitbake-user-manual/bitbake-user-manual-metadata.xml +0 -0
index a9f5072..e433d85 100644
@@ -372,6 +372,23 @@
                        You select the os-specific version of the

<filename>TEST</filename>
variable by appending the "os" override to the variable (i.e.<filename>TEST_os</filename>).

doc/bitbake-user-manual/bitbake-user-manual-metadata.xml +17 -0
+                        </para>
+
+                        <para>
+                            As a practical example, the following lines from
+                            one of the Linux kernel recipe files will first set
+                            the kernel branch variable <filename>KBRANCH</filename>
+                            to a default value, then conditionally override that
+                            value based on the architecture of the build:
+                        <literallayout class='monospaced'>
+    KBRANCH = "standard/base"
+    KBRANCH_qemuarm  = "standard/arm-versatile-926ejs"
+    KBRANCH_qemumips = "standard/mti-malta32"
+    KBRANCH_qemuppc  = "standard/qemuppc"
+    KBRANCH_qemux86  = "standard/common-pc/base"
+    KBRANCH_qemux86-64  = "standard/common-pc-64/base"
+    KBRANCH_qemumips64 = "standard/mti-malta64"
+                        </literallayout>
                        </para></listitem>
                    <listitem><para><emphasis>Appending and

Prepending:</emphasis>
BitBake also supports append and prepend operations to @@ -
385,6 +402,18 @@
</literallayout>
In this example, <filename>DEPENDS</filename> becomes "glibc ncurses libmad".

doc/bitbake-user-manual/bitbake-user-manual-metadata.xml +10 -0
+                        </para>
+
+                        <para>
+                            Again using a kernel recipe file as an example, the
+                            following lines will conditionally append to the
+                            <filename>KERNEL_FEATURES</filename> variable based
+                            on the architecture:
+                        <literallayout class='monospaced'>
+    KERNEL_FEATURES_append = " ${KERNEL_EXTRA_FEATURES}"
+    KERNEL_FEATURES_append_qemux86=" cfg/sound.scc

cfg/paravirt_kvm.scc"
+ KERNEL_FEATURES_append_qemux86-64=" cfg/sound.scc
cfg/paravirt_kvm.scc"
+ </literallayout>

                        </para></listitem>
                </itemizedlist>
            </para>

--

===========================================================
=============
Robert P. J. Day Ottawa, Ontario, CANADA
http://crashcourse.ca

Twitter:                                       http://twitter.com/rpjday
LinkedIn:                               http://ca.linkedin.com/in/rpjday

===========================================================
=============
--
_______________________________________________
bitbake-devel mailing list
[email protected]
http://lists.openembedded.org/mailman/listinfo/bitbake-devel

#2 lore raw
Quoted 5 lines · Scott M

Applied. I added some wording to call out the examples as being OpenEmbedded metadata-based examples. I am assuming the examples were pulled from the poky area. For the BB manual, we want to try to keep the manual isolated as much as possible from YP. This is difficult but that is the intent.

i know, but every so often, a concept cries out for an actual
example from the code base. i'll try to keep it to a minimum. :-)

Quoted 3 lines

Also, for future patches, I use a 5-space indentation convention for any code examples between the <literallayout> and </literallayout> tags.

oh, for some reason, i thought it was four. my apologies.

rday

Signature · 7 lines
========================================================================
Robert P. J. Day                                 Ottawa, Ontario, CANADA
                        http://crashcourse.ca

Twitter:                                       http://twitter.com/rpjday
LinkedIn:                               http://ca.linkedin.com/in/rpjday
========================================================================