Richard Purdie [Thu, 23 Jul 2009 16:53:32 +0000 (17:53 +0100)]
cooker.py: Improve server idle handling (from Poky)
This patch:
* Uses the xmlrpc timeout controls added in python 2.6 removing the need to
hack the class instead. The hacking didn't work for 2.6.
* Converts the parsing function to parse a file per call to the function
* Allows checking for xmlrpc commands between parsing files allowing the user
to interrupt parsing.
* Starts to teach the command queue about command properties such as whether
they require the cache.
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
Chris Larson [Fri, 17 Jul 2009 22:26:45 +0000 (15:26 -0700)]
taskdata: fix a possible infinite loop when multiple eligible providers aren't buildable
The code which removes providers which aren't buildable from the eligible list
modifies the list while iterating it, resulting in skipping some entries. If
the list contained two failed providers in sequence, it left the second behind
in the eligible list.
Fixed by replacing the block with a list comprehension that constructs a new
eligible list without the failed entries.
Richard Purdie [Fri, 19 Jun 2009 10:30:15 +0000 (10:30 +0000)]
Merge the BBCLASSEXTEND code from Poky. This allows once recipe to provide mutliple targets (e.g. -native and -sdk) and has been discussed on the OE mailing list
Richard Purdie [Mon, 11 May 2009 21:49:13 +0000 (21:49 +0000)]
data.py: Make sure allowed variables inherited from the environment are exported again (from Poky)
shell.py: When running a stage task in bbshell, run populate_staging, not the stage task (from Poky)
Is anyone still using svk? I don't want to mess with this code
when it might work (due a global) but I might break it... my guess
is that is supposed to be ud.date.
Chris Larson [Fri, 17 Apr 2009 23:14:05 +0000 (23:14 +0000)]
bb.fetch.go: iterate over SRC_URI, not urldata.
urldata can contain urls other than just what's in SRC_URI. The urls of
mirrors, premirrors, stashes, etc can end up in there as well, and we don't
want bb.fetch.go to be fetching those things directly.
Chris Larson [Wed, 8 Apr 2009 17:35:38 +0000 (17:35 +0000)]
Make the bbpath change for includes temporary rather than permanent.
We currently modify BBPATH so that an include/require looks in the current
working directory before it looks elsewhere. Modifying it permanently
doesn't gain anything, just polluting it with locations that don't need to
stay there.
Richard Purdie [Sat, 6 Dec 2008 12:37:35 +0000 (12:37 +0000)]
fetch/__init__.py: export more variables to the fetcher commands to allow ssh checkouts and checkouts through proxies to work better. Also allow user and pswd options in urls globally and improve proxy handling when using mirrors (from Poky)
Richard Purdie [Sat, 6 Dec 2008 11:50:02 +0000 (11:50 +0000)]
Add tryaltconfigs option to control whether bitbake trys using alternative providers to fulfil failed dependencies. It defaults to off, changing the default since this behaviour confuses many users and isn't often useful (from Poky).
Svn tries to be smart about revisions. So, when you check out an older revision of a file it goes to the latest revision (HEAD) and tries to go back to the old file. In this case it was impossible, since the whole thing was moved outside of svn's scope, so svn can't find the file in the HEAD revision.
Svn treats this situation as an exception and provides the "peg-revision"-syntax for that. So where you would normally do
svn co -r1337 http://url/to/somewhere/module module
you would now have to do
svn co -r1337 http://url/to/somewhere/module@1337 module,
the @1337 telling svn to go start looking at revision 1337 instead of HEAD.
[fetch] Always add PN to the _revision_key we get from the fetcher
This is extending r1101 to always append something to the
_revision_key of the fetcher. alphaone spotted that it was missing
for the latest_revision case.
[git] Do not run git-rev-list everytime to increase the speed
Cache the result of git-rev-list for a repo and hash. This
speeds up do_package of the linux kernel tremendously.
[git] Optionally use git-rev-list to get a sortable revision
With setting BB_GIT_CLONE_FOR_SRCREV="1" you can get a sensible
and global (per repository with only fast forwards) revision. The downsides
are you will have to have a repository at parse time which means you will
git-clone certain trees you don't even use. This is also the reason why
this is optional. This also means you might need to download your git
checkouts to get this feature working.
[git] Disable downloading of checkouts.
Instead of calling try_mirror check if we have a local checkout
already. This code fetched a new checkout even if you had a local
repository which is rather bad if you don't have internet but a full
repository. And the overhead of a full checkout vs. repository is not
too big anyway.
Make the revision key unique by adding the PN
If two different recipes (e.g. linux-openmoko and linux-openmoko-devel)
use the same git repository but with different SRCREVs the count just
incremented on each parsing. By adding PN to the key we keep the count on
a per package level. Spotted by Graeme.
Richard Purdie [Tue, 30 Sep 2008 21:08:24 +0000 (21:08 +0000)]
bin/bitbake: Add better environmental variable handling. By default it will now only pass certain whitelisted variables into the data store. If BB_PRESERVE_ENV is set bitbake will use all variable from the environment. If BB_ENV_WHITELIST is set, that whitelist will be used instead of the internal bitbake one. Alternatively, BB_ENV_EXTRAWHITE can be used to extend the internal whitelist.
Richard Purdie [Tue, 30 Sep 2008 20:28:11 +0000 (20:28 +0000)]
cooker.py: Rename __depends to __base_depends after configuration parsing so we don't recheck the validity of the config files time after time. Also bump the cache revision to match the format change (from poky)
Chris Larson [Thu, 11 Sep 2008 17:51:05 +0000 (17:51 +0000)]
Vim syntax:
- Highlight variable expansions as PreProc, both the braces & the contents.
- Highlight inline python (${@...}) as PreProc for the braces and as actual
python inside.
[cvs] Allow to checkout by date and time
With putting YYYYYMMDDHHmm into the SRCDATE bitbake will checkout
using "-D YYYYMMDD HH:mm UTC". Be careful when you switch from SRCDATE
with time and without to always get updatable packages.
Richard Purdie [Wed, 21 May 2008 21:26:46 +0000 (21:26 +0000)]
build.py: Make sure expandKeys has been called on the data dictonary before running tasks fixing various strange issues (from poky). Correctly add a task override in the form task-TASKNAME which whilst a change in behaviour shouldn't matter since the original approach didn't work at all
Richard Purdie [Sun, 4 May 2008 23:01:39 +0000 (23:01 +0000)]
runqueue.py: Add BB_STAMP_WHITELIST option which contains a list of stamps to ignore when checking stamp dependencies and using a BB_STAMP_POLICY of 'whitelist'. Useful for packaged-staging