summaryrefslogtreecommitdiffstats
path: root/bitbake
Commit message (Collapse)AuthorAgeFilesLines
* Update version to 1.13.2Richard Purdie2011-06-282-2/+2
| | | | | | (Bitbake rev: 5d41720d1550c04aac76275614ca15110c1c7f52) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake/ast: Add optional argument for BBCLASSEXTENDRichard Purdie2011-06-281-3/+21
| | | | | | | | | | | | | Add an optional argument to BBCLASSEXTEND entries which gets passed to the extention class as BBEXTENDVARIANT. Also add BBEXTENDCURR whic is set to the current extension class name. This mode functions slightly differently to the previous BBCLASSEXTEND code in that PN is not changed. (Bitbake rev: 8d3c899e0a15840c54de26d2f1fc552430517778) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake/ast: Call expandkeys after the RecipePreFinalise eventRichard Purdie2011-06-281-2/+1
| | | | | | | | | This means the event handler can change variables such as PN and those changes will be reflected in the updated variable key names. (Bitbake rev: 664b85742d1afc94b291a85fd245abebffacdf3d) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake/data_smart: Don't track overrides in deleted variable namesRichard Purdie2011-06-281-1/+4
| | | | | | | | | | | | | When we delete a variable we no longer expect it to override other variables. To do this we remove it from the list of active overrides at deletion time. It turns out we already had to do this at override expansion time so this cleans up the code to be more consistent as an added bonus. (Bitbake rev: d924ff9ede57c3dea6e1c738ba3633f18d460b14) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake/data_smart: Don't export deleted/empty entries in the list of keysRichard Purdie2011-06-281-0/+2
| | | | | | | | | | | | | | | If you d.delVar(), you expect the variable to be gone. Even empty variables continue to exist in the datastore and are still user visible unfortunately. The COW siutation means you can't just remove it since it might unmask a variable from an inner copy. This patch therefore stops empty variables from appearing in key lists exposed to the external world making empty variables an internal implementation detail only. (Bitbake rev: 2b5548c591d4cfde9238d2cc0959c42cfc08f09c) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake/data_smart: Optimise the data store iteratorRichard Purdie2011-06-281-10/+12
| | | | | | | | | | Since we're going to creat the seen set() anyway, we might as well use it directly. If we don't do this, we see thousands of function calls with associated overhead on profiles. (Bitbake rev: 9d43e3279895639ee4899df635f2546c7ee13737) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: Add task specific stamp file supportRobert Yang2011-06-283-2/+15
| | | | | | | | | | | | | | | | | | This patch, based on proof of concept code from Richard adds code to bitbake to allow individual tasks to optionally specify their stamp file using the stamp-base flag. This takes the same form as the STAMP variable but can be specified on a per task basis. Code is also added to runqueue to ensure that if two tasks share the same stamp file, only one will be executed at once. A significant usecase for this code is to share source code (${S}) between recipes where separate build directories (${B}) are used. (Bitbake rev: 41bef02bef8379590ba012319aebe05068a8081e) Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* runqueue.py: Add umask task controlMark Hatle2011-06-242-0/+12
| | | | | | | | | | | | | | | | The umask for a task can now be set as: task[umask] = 022 task[umask] = '022' If specified as a text string, it must be octal. (This is due to recipe parsing where it's always set to a string.) [RP tweaked to use None instead of -1] (Bitbake rev: a5caaaaba8f0db1af5d8f2e610021d6d4b56894e) Signed-off-by: Mark Hatle <mark.hatle@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* doc/usermanual.xml: Tweaks for the manualBrandon Stafford2011-06-221-67/+66
| | | | | | | | | | | This patch contains what I hope are non-controversial improvements to the manual. Most of the changes are single characters, but the line-by-line diff makes the patch look large. (Bitbake rev: 5481cc90645e13c4e3cdea41e8e369528a0b1649) Signed-off-by: Brandon Stafford <brandon@pingswept.org> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* fetch2/git.py: improve error reporting when an invalid protocol is usedScott Garman2011-06-221-0/+3
| | | | | | | | | | | | | | | | | | | | When an invalid 'protocol' parameter is used in a git SRC_URI, the error reported was not helpful: ERROR: Function 'Fetcher failure for URL: 'None'. <environment dump> fatal: Could not make temporary directory: No such file or directory So instead check that ud.proto is set to something valid, and if not raise a meaningful ParameterError which explains that the protocol type is the source of the problem. This fixes bug [YOCTO #1142] (Bitbake rev: a2a29b72275ab03a263f4479a590b92111a0d6a8) Signed-off-by: Scott Garman <scott.a.garman@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* process.py: Fix issue where early errors weren't making it to the consoleRichard Purdie2011-06-161-1/+1
| | | | | | (Bitbake rev: d97f7d762e3d2f1b0da038d4d99f2531b2490670) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* make exception handling syntax consistentScott Garman2011-06-1510-28/+28
| | | | | | | | | | Update exception handling syntax to use the modern style: except ExcType as localvar (Bitbake rev: dbf5f42b06bef81749b13aa99945cc1292a6676d) Signed-off-by: Scott Garman <scott.a.garman@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* codeparser: When loading the cache, ignore ValueErrorRichard Purdie2011-06-151-1/+1
| | | | | | (Bitbake rev: 9bff182a4ba9571679985b45b309990a6eddad14) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake/fetch2: When replacing URLs in mirror handling mask out empty entriesRichard Purdie2011-06-131-1/+4
| | | | | | | | | | | | | The symptom of this problem is something like a cvs url which specifies a username where the username is then passed through to something like an http mirror. This patch fixes things by ensuring empty entries are preserved in the new URL. (Bitbake rev: c1d978d7bd1ac8eb1e2d50029ab2384be9f72fb4) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake/cooker: Fix -b option by ensuring the empty cache structure is presentRichard Purdie2011-06-132-1/+3
| | | | | | (Bitbake rev: 1430a36e81737bd92245042710eb9d6ad8b6f1a7) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* Update version to 1.13.1Richard Purdie2011-06-092-2/+2
| | | | | | (Bitbake rev: c3c2ad6f22e35b893a353d4c21d0e923e46ad07b) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake/event/ast: Add RecipePreFinalise eventRichard Purdie2011-06-093-9/+17
| | | | | | | | | | One of the implications is we need to register the event handlers before executing the anonymous python functions. I can't find any issue with making that change in any existing metadata use cases. (Bitbake rev: a981df3cc9bf410d24f39919959952bdc6c76d03) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake/parse/ast: We always need to finalize the default data since ↵Richard Purdie2011-06-091-2/+1
| | | | | | | | otherwise overrides to BBCLASSEXTEND may not be applied (Bitbake rev: f22ac9149cc9ab96510bb377deb82cd9bceb95c1) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake/data_smart: Change overrides behaviour to remove expanded variables ↵Richard Purdie2011-06-091-1/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | from the datastore Currently if you do: OVERRIDES = "z" DEPENDS_prepend = "a " DEPENDS = "b" DEPENDS_z = "c" d.update_data() d.getVar("DEPENDS") gives "a c" d.update_data() d.getVar("DEPENDS") then gives "c" This patch changes the behaviour such that at the time bitbake expands the DEPENDS_z override, it removes "DEPENDS_z" from the data store. In the above example this would mean that it wouldn't matter how often you call d.update_data(), you'd always get "a c" back. See the bitbake-devel mailing list for further discussion and analysis of the potential impact of this change. (Bitbake rev: 899d45b90061eb3cf3e71029072eee42cd80930c) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* cache.py: fix bitbake -s commandScott Garman2011-06-091-1/+1
| | | | | | | | | | | | This uses the correct index of self.pn when setting up cachedata's pkg_pn, fixing the output of bitbake -s. This fixes bug [YOCTO #1149]. (Bitbake rev: d000493c09ac5c1dcbab22d3a91296a9cb194ac0) Signed-off-by: Scott Garman <scott.a.garman@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake-layers: handle skipped recipesPaul Eggleton2011-06-091-5/+19
| | | | | | | | | | | | Report bbappends correctly for skipped recipes instead of reporting the bbappends as not having any matching recipe. (From Poky rev: 39d72ecf6bc1da85aefb11e6481719185f0cb953) (Bitbake rev: a71183762e5d7d9f8153832efb9595e3a21d62f1) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* track skipped packagesPaul Eggleton2011-06-093-9/+28
| | | | | | | | | | | | | Add skiplist to cooker that allows access to the list of packages skipped via SkipPackage (this includes COMPATIBLE_MACHINE, INCOMPATIBLE_LICENSE, etc.) This can be used to enhance error reporting. (From Poky rev: 6c12b7b1099c77b87d4431d55e949cf7c5f52ded) (Bitbake rev: 7d2363f35350be27a33f568c23eb07fcd3d27e53) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* Drop psyco supportRichard Purdie2011-06-094-21/+0
| | | | | | | | | | | At best it gave 1-2% improvement now, its 32 bit x86 only and isn't supported after python 2.6. PyPy is probably a better option now. (Bitbake rev: 3c3bd0c2fa80d747f25401c17b785c7c2f3787ca) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake/data/runqueue: Sync up with upstream to clean up environment ↵Richard Purdie2011-06-082-26/+12
| | | | | | variable handling Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake/build.py: Drop exec_shell environment as its now unneededRichard Purdie2011-06-081-6/+1
| | | | Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* runqueue.py: Wrap parsing with exception trappingRichard Purdie2011-06-081-24/+24
| | | | Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* Shift traceback pre-formatting into LogHandlerChris Larson2011-06-081-4/+1
| | | | | | | | | | | It's cleaner to leave it behaving as usual, passing the exception data in the exc_info attribute of the LogRecord where it normally lies, and then let LogHandler make it pickleable so it can be sent to the UI. (Bitbake rev: 3539c9474a0b53f57e614544c70a7197ecdfb130) Signed-off-by: Chris Larson <chris_larson@mentor.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake/cooker.py: Misc sync with upstreamRichard Purdie2011-06-084-19/+20
| | | | Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* cooker: use BBHandler.inherit for INHERITChris Larson2011-06-081-10/+24
| | | | | | | | | | | | | | | | | Ideally we'd avoid direct BBHandler usage, but honestly, to say the whole bb.parse abstraction is incredibly leaky is an understatement. If we try to make handle() not reparse classes, things get ugly fairly quickly, as inherit() calls handle() itself after adding the class to the inherit cache. This change fixes it so we no longer risk reparsing a class if: - it's listed in INHERIT multiple times - it's listed in INHERIT and is 'inherit'ed from a class in INHERIT (Bitbake rev: 057c3cddeb72584c6c3908bd702288cece9b66ea) Signed-off-by: Chris Larson <chris_larson@mentor.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* cooker: simplify self.configuration.data vs data usageChris Larson2011-06-081-10/+9
| | | | | | | (Bitbake rev: 87112adee4e8add0a97ff8be8311d9afe202412d) Signed-off-by: Chris Larson <chris_larson@mentor.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* cooker: don't choke if we have nothing to parseChris Larson2011-06-081-5/+11
| | | | | | | | | | If all our recipes were cached, there's no reason to fire off any parsing progress events at all. (Bitbake rev: e9e174e5781fc3de4dfd60d01228048a06a62b16) Signed-off-by: Chris Larson <chris_larson@mentor.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bb.exceptions: don't choke on frames without argumentsChris Larson2011-06-081-0/+3
| | | | | | | (Bitbake rev: c9bb37e588ee7ee95eca798b0eae57bad68e8caf) Signed-off-by: Chris Larson <chris_larson@mentor.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* cooker: handle ExpansionError the same way we do ParseErrorChris Larson2011-06-081-1/+1
| | | | | | | (Bitbake rev: 12aef37618bc77fb5ef085d24ad85471fb85c111) Signed-off-by: Chris Larson <chris_larson@mentor.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* Shift exception formatting into the UIChris Larson2011-06-083-8/+19
| | | | | | | | | | | | | Now we use bb.exceptions to pass pickleable traceback entries to the UI, and the UI is free to do whatever it wants to do with this information. By default, the log formatter for the UIs formats it with bb.exceptions. This also means that all exceptions should now show 3 lines of context and limit to 5 entries. (Bitbake rev: ee48d628ee038bd72e1cd94aa75f5ccbacbcee4c) Signed-off-by: Chris Larson <chris_larson@mentor.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* cooker: don't show a traceback for ParseErrorChris Larson2011-06-081-0/+2
| | | | | | | (Bitbake rev: cae6bf031dc83ba0439d07584fdbbd4a962408a3) Signed-off-by: Chris Larson <chris_larson@mentor.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* cooker: don't show a useless traceback for SyntaxErrorChris Larson2011-06-081-1/+4
| | | | | | | | | | Note: we rely on the fact that better_compile has already output information about the exception, so don't do it ourselves. (Bitbake rev: caf21e9fbf3c526c1d7c555d8c76dca8710f9def) Signed-off-by: Chris Larson <chris_larson@mentor.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* cooker: use logger.exception for config file parse errorsChris Larson2011-06-081-1/+7
| | | | | | | (Bitbake rev: 775590c154bc189df3f5704bddf9b684b734fde0) Signed-off-by: Chris Larson <chris_larson@mentor.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* cooker: pass traceback back from parsing threadChris Larson2011-06-081-2/+9
| | | | | | | | | | | Uses bb.exceptions to get a traceback back from the parsing thread to the main thread, where it is then formatted. Also enables 3 lines of context for the formatted traceback, and limits the number of entries displayed to 5. (Bitbake rev: 8c33f50eb68411c071c001331e0134aeb776953b) Signed-off-by: Chris Larson <chris_larson@mentor.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* cooker: show a useful message for ParsingFailureChris Larson2011-06-081-3/+6
| | | | | | | (Bitbake rev: a41c217c6e9195f8b9ea2de6e1d335b10b904558) Signed-off-by: Chris Larson <chris_larson@mentor.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bb.exceptions: don't show a repr of 'self'Chris Larson2011-06-081-3/+20
| | | | | | | | | | | | | | Rather than treating self like an ordinary argument, showing a repr of its value in the function spec when formatting the traceback entry, now we show the class name for the method as a part of the function name. Example: Old: bar(self=<some repr of Fooclass>, f=5) New: Fooclass.bar(f=5) (Bitbake rev: dbf405f1f7fda41944093906c13044c6cf78f859) Signed-off-by: Chris Larson <chris_larson@mentor.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bb.exceptions: handle tb entries without contextChris Larson2011-06-081-2/+5
| | | | | | | (Bitbake rev: b010c4d37cfff5f74747d7da8cc1bf6719e29357) Signed-off-by: Chris Larson <chris_larson@mentor.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bb.exceptions: add to_string convenience functionChris Larson2011-06-081-0/+6
| | | | | | | (Bitbake rev: 17a64df7e91438ee3fe1f7095c319f700a5372f1) Signed-off-by: Chris Larson <chris_larson@mentor.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bb.exceptions: add code to create pickleable traceback entriesChris Larson2011-06-081-0/+55
| | | | | | | | | | | | | | | This lets you get as much useful information as possible from traceback entries while staying pickleable. In addition, it has improved traceback formatting. It shows the values of the arguments for the functions, lines of context from the file for the code, and has an optional formatter to do things like syntax highlighting for the code lines. (Bitbake rev: ad8ad3fcae29eafbdc09286984495d693a4b73ef) Signed-off-by: Chris Larson <chris_larson@mentor.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bb.namedtuple_with_abc: add useful util from activestateChris Larson2011-06-081-0/+255
| | | | | | | (Bitbake rev: bf9391c60d8dd9eeaca87783cb874c56fa7a4e91) Signed-off-by: Chris Larson <chris_larson@mentor.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake-layers: Fixup after recent server changesRichard Purdie2011-06-081-2/+4
| | | | Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake/cooker.py: Fix debug message argumentsRichard Purdie2011-06-081-1/+1
| | | | | | | | (From Poky rev: 06bb59d) (Bitbake rev: b420e865f6dfb04b58c1dbc5f1b5332b137f49ff) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake/lib/bb/__init__.py: Sync with upstream bitbakeRichard Purdie2011-06-081-4/+8
| | | | Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake/bin/bitbake: Return an error if exceptions occurRichard Purdie2011-06-081-0/+2
| | | | Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake/server/xmlrpc: Fix typoRichard Purdie2011-06-081-1/+1
| | | | Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake/server/process: Implement getEvent()Richard Purdie2011-06-081-0/+7
| | | | Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>