summaryrefslogtreecommitdiffstats
path: root/bitbake/lib
Commit message (Collapse)AuthorAgeFilesLines
* bitbake: server/bitbake: Remove launchUI methodRichard Purdie2013-05-302-9/+0
| | | | | | | | | With the removal of the none server type, we can remove the launchUI method and simplify the code slightly. (Bitbake rev: 9bef2f2dd0bcaa59528ebcb3c1ce053b7dff1ec6) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: server: Remove none serverRichard Purdie2013-05-301-203/+0
| | | | | | | | | | | | The process server backend has been serving well as the default for a long time now and the UI model is much better thought out that it used to be. With the move to make bitbake a memory resident process, the none server is now looking rather pointless and complicates the code needlessly. Lets therefore now remove it. (Bitbake rev: 9af03a89605e3db9bce3cea1e0f2d0b6cfaa6fe1) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: cooker/cookerdata: Fix up event handling for hobRichard Purdie2013-05-241-1/+2
| | | | | | | | | The init function call was clobbering data hob relies on injecting, fix this so the data injected by hob isn't overwritten. (Bitbake rev: 64ca1aa1fd5f0473196b6cd805637fa644a92173) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: build: Avoid empty promisesRichard Purdie2013-05-241-1/+1
| | | | | | | | | | | | The "see xxx for further information" is misleading since it is just the same information. Clarify just to mention the that this is the location of the logfile without any empty promise. [YOCTO #4343] (Bitbake rev: 7088c0e8553dd3c408b5bc06f8c34d5b72e9ea9a) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: cooker/cookerdata: Improve configuration object handlingRichard Purdie2013-05-244-16/+16
| | | | | | | | | | | | | | | | | | | | | Originally it seemed like a good idea to keep the parameters around. Having seen this in real life use, its incorrect, we should pull all the data we need into the cooker's configuguration and then use this to build the datastore. Being able to just build the datastore from the parameters seemed like a good idea but having a dummy cooker configuration object is now looking like the better option. This also fixes failures in hob since the parseFiles command can call into cooker directly now and reset the configuration prefiles and postfiles at will, rather than the indirect calls before which were breaking the datastore (e.g. BBPATH wasn't set). The cleanup this allows in tinfoil illustrates how this change makes more sense. (Bitbake rev: f50df5b891bf318f12fc61c74adfcc626cc6f836) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: fetch2: Fix missing assignmentRichard Purdie2013-05-241-1/+1
| | | | | | | | The assignment to True was missing from the code, well spotted Saul! (Bitbake rev: e493fe8cb4953935f01361ffc0240e5818ebb283) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: cooker/cookerdata/event: Improve class handlers managementRichard Purdie2013-05-243-3/+13
| | | | | | | | | Similarly to the execution context changes, establish better lifetime management API of the class event handlers. (Bitbake rev: 54e35a6cceead9521f8b1dacd48e55064e85c8bd) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: cooker/cookerdata/utils: Improve context managementRichard Purdie2013-05-243-10/+22
| | | | | | | | | | | | | | | The current execution context management for bitbake is ugly and the use of a global variable is nasty. Fixing that is hard, however we can improve things to start to establish an API for accessing and changing that context. This patch also adds in an explicit reset of the context when we reparse the configuration data which starts to improve the lifecycle of the data in setups like hob. (Bitbake rev: 6c3281a140125337fc75783973485e16785d05a1) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: event: Drop Handled/NotHandled status return valuesRichard Purdie2013-05-241-11/+0
| | | | | | | | These have long since been deprecated, lets remove them. (Bitbake rev: 3dc83bbb1bf387bb7ecea2e17f0f72cfccecba92) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: cooker.py: Remove global scope class event handlersRichard Purdie2013-05-241-0/+2
| | | | | | | | | | | | | | | | Its confusing when an event handler in for example a bbclass receives events for a recipe which doesn't use the class. This is due to the class event handlers having confusing scope. Worse, the issue is not deterministic and the events a handler will see depends on the parse order. To avoid these issues, remove the class event handler global scope and only have class handlers recieve events for recipes using the class. (Bitbake rev: 7fb95f3d133e440d463d2faa7151c731f8e1ae96) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: methodpool: Retire it, remove global method scopeRichard Purdie2013-05-244-51/+5
| | | | | | | | | | | | | | | | | Having a global method scope confuses users and with the introduction of parallel parsing, its not even possible to correctly detect conflicting functions. Rather than try and fix that, its simpler to retire the global method scope and restrict functions to those locations they're defined within. This is more what users actually expect too. If we remove the global function scope, the need for methodpool is reduced to the point we may as well retire it. There is some small loss of caching of parsed functions but timing measurements so the impact to be neglibile in the overall parsing time. (Bitbake rev: 4d50690489ee8dc329a9b0c7bc4ceb29b71e95e9) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: methodpool: Conflicting methodnames should be a fatal errorRichard Purdie2013-05-241-1/+1
| | | | | | | | | | When this error occurs, the build should stop, not continue uninterrupted. [YOCTO #4460] (Bitbake rev: acd6d7ffa8813b3b11cad9145e8e614a695ae04a) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: hob: Table sorting criteria should not change after deselecting ↵Cristiana Voicu2013-05-223-7/+27
| | | | | | | | | | | | | recipes/packages After a recipe/package is deselected, the table is sorted as before the fadeout animation. [YOCTO #4453] (Bitbake rev: d4968eac539f777367ab1243a1049117cb261176) Signed-off-by: Cristiana Voicu <cristiana.voicu@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: hob: apply a fade out animation when deselecting from tablesCristiana Voicu2013-05-222-34/+30
| | | | | | | | | | | | | | -applied a fade out mechanism for deselctiong on all the tabs of recipes and packages list page -set cursor on the package/recipe when it is included(important when the its place is changing; like when the tree si order by included tab) [YOCTO #4342] (Bitbake rev: 8bd0e0681a6a39c00accbfc0041ab248993f3877) Signed-off-by: Cristiana Voicu <cristiana.voicu@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: cookerdata: rename _parse to parse_config_filePaul Eggleton2013-05-221-6/+6
| | | | | | | | | | We use this externally in the OE layer index update script, so it shouldn't really be named as an internal function. (Bitbake rev: 89332a7874e94c8d91ea24200f9739abb1a50397) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: tinfoil: fix for changes to cooker config structurePaul Eggleton2013-05-221-20/+21
| | | | | | | | | | Fix the code here for recent changes to the initialisation of configuration objects for cooker. (Bitbake rev: 9d3ca9aa73a448b0594f03ac8e8317403ec0dc8d) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: command: Fix function module reference after code rearrangementRichard Purdie2013-05-221-1/+1
| | | | | | (Bitbake rev: ff9f62fd5f76892ad41a5329b75472501e17e712) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: runqueue.py: Ensure export flag is set for fakeroot environment ↵Richard Purdie2013-05-221-0/+1
| | | | | | | | | | | | variables This means the variables show up in the shell execution "run" files since its useful to know what the fakeroot environment is and how to set it up manually. (Bitbake rev: bdf437747b664479acde6deaa9096e2a6bcdf483) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: bitbake/cookerdata: Explicitly specify cooker configuration optionsRichard Purdie2013-05-221-2/+11
| | | | | | | | | | | | | | As the code stands today its hard to know which configuration variables are used by which parts of the system. Some are used by the UIs, some by bin/bitbake itself, some by cooker. This patch changes the configuration to just contain the variables cooker uses, and changes bin/bitbake to access the variables it needs directly which hopefully lets us start to untangle this mess. (Bitbake rev: e57497a24b6157c92519a34accd66035a39ad1f8) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: cooker: Split configuration parsing code into cookerdataRichard Purdie2013-05-222-118/+139
| | | | | | | | | | | | | | | | | | | In order to have a memory resident bitbake and to allow task execution, we need to be able to rebuild the base configuration without a cooker. This moves the code into its own class so it can be built independently. The interface is less than ideal here but I didn't want to add parsing methods a subclassed DataSmart, at least until we've experimented further with this code and are certain that makes sense. At the very least, the methods are ugly and need cleaning up. Spliting the code out seems to be the right thing to do though and should unblock various activities on BitBake so I believe this code is a step in the right direction. Based on a patch from Alexandru Damian <alexandru.damian@intel.com> (Bitbake rev: 22a0b3cf73d2689db0c118b37aa7492632f8b0a7) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: cooker: Move commandline parsing back into the UI/cookerdataRichard Purdie2013-05-228-87/+103
| | | | | | | | | | | | | | | | | | | | | Building up a set of actions for the server is tricky since we depend upon the commandline but fall back to values from the datastore. We should be able to build a datastore without a commandline and vice versa. Ultimately the UI should send the commands to the server. This patch amounts to code rearranging, moving the heavy lifting to the UI, though a helper in the configuration option. This will need further cleanup/tweaking but this should be the only update needed to the UIs. The code now queries the server for any missing data should it need to. This code allows various knowledge of configuration variables to move to the UI side only, partcularly pkgs_to_build but also all the command specifiers. It should also be possible to move cmd eventually, I'm just unsure if any callers call the commands expecting this to default to something sane right now. (Bitbake rev: 2dbbb1d51dafd4451fef8fe16f095bcd4b8f1177) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: bitbake: Create cookerdata splitting config from cooker and bin/bitbakeRichard Purdie2013-05-223-7/+79
| | | | | | | | | | | | | | | | | | | Currently the UI and server configuration is one big incestuous mess. To start to untangle this we creater cookerdata, a new module which contains various confiuration modules and the code for building the base datastore. To start with we add a ConfigParameters() class which contains information about both the commandline configuration and the original environment. The CookerConfiguration class is created to contain the cooker.configuration options. This means we can transfer new paramters to the server over something like XMLRPC and then build a new configuration from these on the server. Based on a patch from Alexandru Damian <alexandru.damian@intel.com> (Bitbake rev: 35bd5997e8d8e74bc36019030cc10c560a8134f9) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: fetch2: Shorten long srcrevsRichard Purdie2013-05-221-0/+4
| | | | | | | | | | | | | | | | | | | | | The long srcrevs are mainly used or the workdir construction as well as the package version. The long entries are hashes generated by the git fetcher and other scms using a similar revision mechanism. We need these to change when the package changes however collisions are unlikely to happen within the domains we care about. The long revisions have generated negative user feedback due to the use in path and file names. This patch therefore truncates the revisions to 10 characters maximum. This should be safe in the contexts where these revisions are used as the chances of spatially close collisions is very low (distant collisions are not a major issue in the way we use these). (Bitbake rev: 43a8319cda7fae37862dae323eeb24cb39ca21b7) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: fetch2/git: Clean up sortable_revisionRichard Purdie2013-05-223-21/+14
| | | | | | | | | | | Now we no longer try and provide increasing values from the fetcher, we can simplify the function structure for the sortable_revision pieces and move the AUTOINC handling directly into the function which needs it, simplifying the code. (Bitbake rev: fb068bee47bb1a06f02447daf16c2b2a79c03288) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: data: Ensure dependencies of subfunctions are accounted forRichard Purdie2013-05-221-0/+1
| | | | | | | | | | | | Currently we account of the top level function's vardeps but not those of any subfunction. This would imply we'd have to manually write the dependencies of all parent functions which would be crazy. This patch adds the dependencies to fix the issue. (Bitbake rev: 658008cc6a8acd5c1f26877c9444c96002db01e7) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: test/fetch: Allow the conditional network tests to work under ↵Richard Purdie2013-05-171-96/+86
| | | | | | | | | | | python 2.6 The skipIf decorator is unavailable under python 2.6 and finding a syntax works there is hard. This patch does allow network tests under 2.6. (Bitbake rev: 565b3e31e0226c6e193ee0b031bd5e7bef25591e) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: test/fetch: Split the network tests from the rest of the fetcher testsRichard Purdie2013-05-171-23/+24
| | | | | | (Bitbake rev: f32265bcc6b4fe5566aca16f6b05555ec6a96d01) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: fetch2/utils: Clean up importsRichard Purdie2013-05-172-10/+8
| | | | | | | | | Move various random imports to the start of the modules as cleanup and avoid an import issue with bb.process on python 2.6. (Bitbake rev: aed4adfbe3a591ca4f8e41fb763c9f961bf2e6d5) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: tests/fetch: Allow to work on python 2.6Richard Purdie2013-05-171-2/+2
| | | | | | | | | | Currently the fetch tests fail on python 2.6 since check_output doesn't exist on this version of python. Use bb.process instead to avoid this problem. (Bitbake rev: a3637155e829e06bbfe50fb8753de3de7ee8c22e) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: hob: fix for XMLRPC modeBogdan Marinescu2013-05-141-1/+1
| | | | | | | | | | | | | | Contains a small fix to the builder.py code (a missing "self" in a variable assignment). With this changes, "hob" can run with the XMLRPC backend: $ hob -t xmlrpc (Bitbake rev: 3497478f803986af32099ddd124c47df8e89f6da) Signed-off-by: Bogdan Marinescu <bogdan.a.marinescu@intel.com> Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: cooker/bitbake-layers/tinfoil: Fix recipecache typoRichard Purdie2013-05-132-71/+71
| | | | | | (Bitbake rev: 0f5eee689992f84d263cb817dc2ce755a9a075f7) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: bitbake-layers/tinfoil: Catch up with status -> recpiecache renameRichard Purdie2013-05-121-2/+2
| | | | | | (Bitbake rev: 0a9cbe7a6a17c5df38cd442ee8650097d6bbf502) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: cooker: Rename status variable to recipecacheRichard Purdie2013-05-121-69/+69
| | | | | | | | | "status" is a relic of very early versions of bitbake, rename it to match what it now means. (Bitbake rev: db307fc68773868de2db614a061f51c5c6a90468) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: cooker: Rename confusing buildDepgraph task to handlePrefProvidersRichard Purdie2013-05-121-4/+3
| | | | | | (Bitbake rev: a25722175bf61f22961f45dbd356cb6d79864b35) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: cooker: Drop pointless variablesRichard Purdie2013-05-121-7/+2
| | | | | | (Bitbake rev: 0d7517db234ef5f6b3eb99822ecb5e86cf48fe2e) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: cooker.py: Drop confusing updateCache callsRichard Purdie2013-05-121-10/+1
| | | | | | | | | updateCache() gets called by command.py when needed and needs to be iterated over. The calls in cooker.py are therefore just plain wrong/confusing now. (Bitbake rev: 8b7c65bba466bb6773c56849074978ce2c956129) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: cooker: Remove pointless repeated importRichard Purdie2013-05-121-3/+1
| | | | | | (Bitbake rev: e01914a8eaa97a410cb5fe9480f2d96bb6553342) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: cooker: Fix get_bbfiles()Richard Purdie2013-05-121-4/+4
| | | | | | | | | Its clear looking at the code the path argument has never been used and doesn't work. Tweak the function to be a little more readable. (Bitbake rev: d7047ceaf29b870ade3257e263e010f65aa8bc6e) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: cooker: Separate out collections handling code into its own classRichard Purdie2013-05-122-108/+128
| | | | | | | | | | The Cooker class is too large and needs to be split up into different functional units. Splitting out the collections code into its own class seems like a good place to start to try and disentangle things. (Bitbake rev: ca1fcbb6e214c155a05328779d3d326e10c5eac0) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: cooker: Drop unused variables from collect_bbfiles()Richard Purdie2013-05-121-1/+1
| | | | | | (Bitbake rev: 67a8e13eed6433bd1e4fab82ece5f6774b42fa00) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: pysh: Say what kind of token isn't implementedOlof Johansson2013-05-101-1/+1
| | | | | | | | | | When the shell lexer finds an unrecognized dollar token, the error message should contain what kind of token it is having problems with. (Bitbake rev: 1acb9c338018c612db519d2db823c66b567863b9) Signed-off-by: Olof Johansson <olof.johansson@axis.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: hob: assure consistency for image size labelCristiana Voicu2013-05-103-8/+16
| | | | | | | | | | After the image was build, update the image size in the packagelistpage. [YOCTO #4388] (Bitbake rev: 4d6d02e61b32d1d710c708774f08cc5e7764415d) Signed-off-by: Cristiana Voicu <cristiana.voicu@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: hob: clicking on "cancel" should reset table sorting to defaultCristiana Voicu2013-05-102-0/+19
| | | | | | | | | | | Changed the "cancel" callback function for both recipes and packages list page. [YOCTO #4333] (Bitbake rev: 05ebbaa2426716c6254c4a98872020d02d2944bd) Signed-off-by: Cristiana Voicu <cristiana.voicu@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: hob: "Brought in by" sorting should take into account the (+#) ↵Cristiana Voicu2013-05-101-2/+44
| | | | | | | | | | information [YOCTO #4332] (Bitbake rev: 226a5f2d0947460cb6df9e97f0146b65f96a7f8c) Signed-off-by: Cristiana Voicu <cristiana.voicu@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: hob: sort alphabetically results in groups of recipes/packagesCristiana Voicu2013-05-101-26/+12
| | | | | | | | | | | When you search a string, there are 2 groups: recipes/packages starting with that string, and the rest. These 2 groups are now sorted. [YOCTO #4111] (Bitbake rev: 8d2b2a1c97570d3c6b40727f1afa1db8c00882f9) Signed-off-by: Cristiana Voicu <cristiana.voicu@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: Updated information in tooltipsAndrei Dinu2013-05-101-2/+2
| | | | | | | | | | | | | | Updated information for "Additional free space" and "Image basic size" to match the description in the manual. [HOB #4354] [HOB #4355] (Bitbake rev: d3eac3f104689137c071c91a343ca4558b9d9f17) Signed-off-by: Andrei Dinu <andrei.adrianx.dinu@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: lib: print is a function in moderm python, covert remaining usersRichard Purdie2013-05-092-4/+4
| | | | | | (Bitbake rev: d0b180d868390a464b6799ad90db6bbe0350e158) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: lib: Use modern expcetion syntaxRichard Purdie2013-05-093-3/+3
| | | | | | (Bitbake rev: a4a37b6a83faa62f61433122c4583e93e64f7372) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: prserv: Drop StandardError usageRichard Purdie2013-05-091-1/+1
| | | | | | | | StandardError doesn't exist in python 3, use Exception instead. (Bitbake rev: 4a40046036493f0cdf0f66487ad5ce083461a5c2) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: siggen: Add missing error message parameterRichard Purdie2013-05-091-1/+1
| | | | | | | | There is clearly a missing parameter from this error message, add it. (Bitbake rev: d98be5ea69b99fb7934fc3093422f139bc37a1cc) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>