[oe-commits] unknown Updated to bitbake 1.3.2

rwhitby commit openembedded-commits at lists.openembedded.org
Mon Oct 23 17:47:06 UTC 2006


Updated to bitbake 1.3.2

Author: rwhitby at nslu2-linux.org
Branch: unknown
Revision: 8b18357f2e44db6d7a19b4c930bd3d8f04b20085
ViewMTN: http://monotone.openembedded.org/revision.psp?id=8b18357f2e44db6d7a19b4c930bd3d8f04b20085
Files:
1
ChangeLog
bin/bitbake
bin/bitdoc
doc/manual/usermanual.xml
lib/bb/__init__.py
lib/bb/parse/parse_py/ConfHandler.py
Diffs:

#
# mt diff -r4fafd70a4fdd28339421a29c7061cd9a78197854 -r8b18357f2e44db6d7a19b4c930bd3d8f04b20085
#
# 
# 
# patch "ChangeLog"
#  from [95e318a4145a2bb46a3e44f8d642d4a980a982fc]
#    to [5321e8a235f6bb178f8b2f028df60c39b97be8d5]
# 
# patch "bin/bitbake"
#  from [85546e27d34eb90f0b7d78f6714b960266a18975]
#    to [3a0a7eaeb57f757d47e14765ca36ac8e4bd46699]
# 
# patch "bin/bitdoc"
#  from [87d341215e8d1cbe1faa0ff76049b7876359dd95]
#    to [e2b3186a2918c0667477f911be1234d585e10159]
# 
# patch "doc/manual/usermanual.xml"
#  from [d06ae4147a595daa771c55f60f6e4f0df24f8fdc]
#    to [46cb85aa51c7bc92fdbaa60dd6506a0aeeb94150]
# 
# patch "lib/bb/__init__.py"
#  from [f003cbd1301abfdfb830a254472e2ba1e3045e67]
#    to [b6d5f29cbac9e32229541fd250eb935cacfb725c]
# 
# patch "lib/bb/parse/parse_py/ConfHandler.py"
#  from [332848401051e25e945534ce2fbf3d69fb085120]
#    to [ad2abbaf8c6e1570b17bece77bffdee1f12d6785]
# 
============================================================
--- ChangeLog	95e318a4145a2bb46a3e44f8d642d4a980a982fc
+++ ChangeLog	5321e8a235f6bb178f8b2f028df60c39b97be8d5
@@ -1,7 +1,11 @@ Changes in BitBake 1.3.2:
 Changes in BitBake 1.3.2:
 	- reintegration of make.py into BitBake
 	- bbread is gone, use bitbake -e
 	- lots of shell updates and bugfixes
+	- Introduction of the .= and =. operator
+	- Sort variables, keys and groups in bitdoc
+	- Fix regression in the handling of BBCOLLECTIONS
+	- Update the bitbake usermanual
 
 Changes in BitBake 1.3.0:
 	- add bitbake interactive shell (bitbake -i)
============================================================
--- bin/bitbake	85546e27d34eb90f0b7d78f6714b960266a18975
+++ bin/bitbake	3a0a7eaeb57f757d47e14765ca36ac8e4bd46699
@@ -604,7 +604,7 @@ class BBCooker:
         # inject custom variables
         if not bb.data.getVar("BUILDNAME", self.configuration.data):
             bb.data.setVar("BUILDNAME", os.popen('date +%Y%m%d%H%M').readline().strip(), self.configuration.data)
-        bb.data.setVar("BUILDSTART", time.strftime('%m/%d/%Y %H:%M:%S',time.localtime()),self.configuration.data)
+        bb.data.setVar("BUILDSTART", time.strftime('%m/%d/%Y %H:%M:%S',time.gmtime()),self.configuration.data)
 
         buildname = bb.data.getVar("BUILDNAME", self.configuration.data)
 
============================================================
--- bin/bitdoc	87d341215e8d1cbe1faa0ff76049b7876359dd95
+++ bin/bitdoc	e2b3186a2918c0667477f911be1234d585e10159
@@ -369,6 +369,7 @@ class Documentation:
             if not group in self.__groups:
                 self.__groups[group] = []
             self.__groups[group].append(item)
+            self.__groups[group].sort()
 
 
     def doc_item(self, key):
============================================================
--- doc/manual/usermanual.xml	d06ae4147a595daa771c55f60f6e4f0df24f8fdc
+++ doc/manual/usermanual.xml	46cb85aa51c7bc92fdbaa60dd6506a0aeeb94150
@@ -12,7 +12,7 @@
             <corpauthor>BitBake Team</corpauthor>
         </authorgroup>
         <copyright>
-            <year>2004</year>
+            <year>2004, 2005</year>
             <holder>Chris Larson</holder>
             <holder>Phil Blundell</holder>
         </copyright>
@@ -109,6 +109,15 @@ share common metadata between many packa
                 <para>In this example, <varname>B</varname> is now <literal>bval additionaldata</literal> and <varname>C</varname> is <literal>test cval</literal>.</para>
             </section>
             <section>
+                <title>Appending (.=) and prepending (=.) without spaces</title>
+                    <para><screen><varname>B</varname> = "bval"
+<varname>B</varname> += "additionaldata"
+<varname>C</varname> = "cval"
+<varname>C</varname> =+ "test"</screen></para>
+                <para>In this example, <varname>B</varname> is now <literal>bvaladditionaldata</literal> and <varname>C</varname> is <literal>testcval</literal>. In contrast to the above Appending and Prepending operators no additional space
+will be introduced.</para>
+            </section>
+            <section>
                 <title>Conditional metadata set</title>
                 <para>OVERRIDES is a <quote>:</quote> seperated variable containing each item you want to satisfy conditions.  So, if you have a variable which is conditional on <quote>arm</quote>, and <quote>arm</quote> is in OVERRIDES, then the <quote>arm</quote> specific version of the variable is used rather than the non-conditional version.  Example:</para>
                 <para><screen><varname>OVERRIDES</varname> = "architecture:os:machine"
@@ -151,7 +160,7 @@ share common metadata between many packa
                 <title>Defining python functions into the global python namespace</title>
                 <para><emphasis>NOTE:</emphasis> This is only supported in .bb and .bbclass files.</para>
                 <para><screen>def get_depends(bb, d):
-    if bb.data.getVar('SOMECONDITION', d, 1):
+    if bb.data.getVar('SOMECONDITION', d, True):
         return "dependencywithcond"
     else:
         return "dependency"
@@ -181,7 +190,19 @@ addtask printdate before do_build</scree
                 <title>Events</title>
                 <para><emphasis>NOTE:</emphasis> This is only supported in .bb and .bbclass files.</para>
                 <para>BitBake also implements a means of registering event handlers.  Events are triggered at certain points during operation, such as, the beginning of operation against a given .bb, the start of a given task, task failure, task success, et cetera.  The intent was to make it easy to do things like email notifications on build failure.</para>
-                <para><emphasis>[Insert instructions on how to add event handlers here]</emphasis></para>
+                <para><screen>addhandler myclass_eventhandler
+python myclass_eventhandler() {
+    from bb.event import NotHandled, getName
+    from bb import data
+
+    print "The name of the Event is %s" % getName(e)
+    print "The file we run for is %s" % data.getVar('FILE', e.data, True)
+
+    return NotHandled
+</screen></para><para>
+This event handler gets called every time an event is triggered. A global variable <varname>e</varname> is defined. <varname>e</varname>.data contains an instance of bb.data. With the getName(<varname>e</varname>)
+method one can get the name of the triggered event.</para><para>The above event handler prints the name
+of the event and the content of the <varname>FILE</varname> variable.</para>
             </section>
         </section>
         <section>
@@ -206,6 +227,8 @@ addtask printdate before do_build</scree
         <section>
             <title>bbread</title>
             <para>bbread is a command for displaying BitBake metadata.  When run with no arguments, it has the core parse 'conf/bitbake.conf', as located in BBPATH, and displays that.  If you supply a file on the commandline, such as a .bb, then it parses that afterwards, using the aforementioned configuration metadata.</para>
+        <para><emphasis>NOTE: the stand a lone bbread command was removed. Instead of bbread use bitbake -e.
+        </emphasis></para>
         </section>
         <section>
             <title>bitbake</title>
@@ -227,23 +250,32 @@ options:
 options:
   --version             show program's version number and exit
   -h, --help            show this help message and exit
-  -bBUILDFILE, --buildfile=BUILDFILE
+  -b BUILDFILE, --buildfile=BUILDFILE
                         execute the task against this .bb file, rather than a
                         package from BBFILES.
   -k, --continue        continue as much as possible after an error. While the
-                        target that failed, and those that depend on it, cannot
-                        be remade, the other dependencies of these targets can
-                        be processed all the same.
+                        target that failed, and those that depend on it,
+                        cannot be remade, the other dependencies of these
+                        targets can be processed all the same.
   -f, --force           force run of specified cmd, regardless of stamp status
-  -cCMD, --cmd=CMD      Specify task to execute
-  -rFILE, --read=FILE   read the specified file before bitbake.conf
+  -i, --interactive     drop into the interactive mode.
+  -c CMD, --cmd=CMD     Specify task to execute. Note that this only executes
+                        the specified task for the providee and the packages
+                        it depends on, i.e. 'compile' does not implicitly call
+                        stage for the dependencies (IOW: use only if you know
+                        what you are doing)
+  -r FILE, --read=FILE  read the specified file before bitbake.conf
   -v, --verbose         output more chit-chat to the terminal
   -D, --debug           Increase the debug level
   -n, --dry-run         don't execute, just go through the motions
   -p, --parse-only      quit after parsing the BB files (developers only)
   -d, --disable-psyco   disable using the psyco just-in-time compiler (not
                         recommended)
-  -s, --show-versions   show current and preferred versions of all packages</screen>
+  -s, --show-versions   show current and preferred versions of all packages
+  -e, --environment     show the global or per-package environment (this is
+                        what used to be bbread)
+
+</screen>
                 </para>
                 <para>
                 <example>
============================================================
--- lib/bb/__init__.py	f003cbd1301abfdfb830a254472e2ba1e3045e67
+++ lib/bb/__init__.py	b6d5f29cbac9e32229541fd250eb935cacfb725c
@@ -23,7 +23,7 @@ Place, Suite 330, Boston, MA 02111-1307 
 Place, Suite 330, Boston, MA 02111-1307 USA.
 """
 
-__version__ = "1.3.0"
+__version__ = "1.3.2"
 
 __all__ = [
 
============================================================
--- lib/bb/parse/parse_py/ConfHandler.py	332848401051e25e945534ce2fbf3d69fb085120
+++ lib/bb/parse/parse_py/ConfHandler.py	ad2abbaf8c6e1570b17bece77bffdee1f12d6785
@@ -26,7 +26,7 @@ from bb.parse import ParseError
 from bb.parse import ParseError
 
 #__config_regexp__  = re.compile( r"(?P<exp>export\s*)?(?P<var>[a-zA-Z0-9\-_+.${}]+)\s*(?P<colon>:)?(?P<ques>\?)?=\s*(?P<apo>['\"]?)(?P<value>.*)(?P=apo)$")
-__config_regexp__  = re.compile( r"(?P<exp>export\s*)?(?P<var>[a-zA-Z0-9\-_+.${}/]+)(\[(?P<flag>[a-zA-Z0-9\-_+.]+)\])?\s*((?P<colon>:=)|(?P<ques>\?=)|(?P<append>\+=)|(?P<prepend>=\+)|=)\s*(?P<apo>['\"]?)(?P<value>.*)(?P=apo)$")
+__config_regexp__  = re.compile( r"(?P<exp>export\s*)?(?P<var>[a-zA-Z0-9\-_+.${}/]+)(\[(?P<flag>[a-zA-Z0-9\-_+.]+)\])?\s*((?P<colon>:=)|(?P<ques>\?=)|(?P<append>\+=)|(?P<prepend>=\+)|(?P<predot>=\.)|(?P<postdot>\.=)|=)\s*(?P<apo>['\"]?)(?P<value>.*)(?P=apo)$")
 __include_regexp__ = re.compile( r"include\s+(.+)" )
 
 def init(data):
@@ -171,6 +171,10 @@ def feeder(lineno, s, fn, data = bb.data
             val = "%s %s" % ((bb.data.getVar(key, data) or ""), groupd["value"])
         elif "prepend" in groupd and groupd["prepend"] != None:
             val = "%s %s" % (groupd["value"], (bb.data.getVar(key, data) or ""))
+        elif "postdot" in groupd and groupd["postdot"] != None:
+            val = "%s%s" % ((bb.data.getVar(key, data) or ""), groupd["value"])
+        elif "predot" in groupd and groupd["predot"] != None:
+            val = "%s%s" % (groupd["value"], (bb.data.getVar(key, data) or ""))
         else:
             val = groupd["value"]
         if 'flag' in groupd and groupd['flag'] != None:






More information about the Openembedded-commits mailing list