summaryrefslogtreecommitdiff
path: root/bitbake/lib
Commit message (Collapse)AuthorAgeFilesLines
* bitbake/fetch: Make URL checking slightly less verbose (distracting with the ↵Richard Purdie2010-10-221-1/+1
| | | | | | sstate code) Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
* pseudo/fakeroot: Move the pseudo directory creation into bitbakeRichard Purdie2010-10-221-0/+4
| | | | | | | | | | | | | | If sstate was used to accelerate a build, the pseudo directory might not have been created leading to subsequent task failures. Also, sstate packages were not being installed under pseudo context meaning file permissions could have been lost. Fix these problems by creating a FAKEROOTDIRS variable which bitbake ensures exists before running tasks and running the appropriate setscene tasks under fakeroot context. Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
* bitbake/fetch/git: Ensure fullclone repositories are fully fetchedRichard Purdie2010-10-191-1/+4
| | | | | | | | | | | The git fetcher was failing to pull in new branches into a git repository mirror tarball as the git fetch command being used didn't add new remote branches. This patch uses "git fetch --all" for fullclones to ensure any new remote branches are cloned correctly. Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
* bitbake/fetcher: Deal with a ton of different bugsRichard Purdie2010-10-192-36/+38
| | | | | | | | | | | | | | | | | | | | | | The more we try and patch up the fetcher code, the more things break. The code blocks in question are practically unreadable and are full of corner cases where fetching could fail. In summary the issues noticed included: a) Always fetching strange broken urls from the premirror for "noclone" git repositories b) Not creating or rewriting .md5 stamp files inconsistently c) Always fetching git source mirror tarballs from the premirror even if they already exist but the checkout directory does now d) Passing "None" values to os.access() and os.path.extsts() checks under certain circumstances e) Not using fetched git mirror tarballs if the preexist and always try and fetch them. This patch rewrites the sections of code in question to be simpler and more readable, fixing the above problems and most likely other odd corner cases. Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
* bitbake/fetch/git.py: Fix git fetcher to correctly use mirror tarballsRichard Purdie2010-10-191-1/+5
| | | | Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
* bitbake-runtask: Ensure logging settings take effect in the worker process ↵Richard Purdie2010-10-141-0/+1
| | | | | | (and pass verbose setting) Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
* bitbake/runqueue: make the runtask program configurableJoshua Lock2010-10-121-1/+2
| | | | Signed-off-by: Joshua Lock <josh@linux.intel.com>
* bitbake/build.py: Write logfiles on a per task basis, not per functionRichard Purdie2010-10-111-71/+78
| | | | | | | | | Per function logging made it hard to track down what was happening so switch to logging on a per task basis. [BUGID #383] Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
* bitbake-runtask: Ensure logging options are inherited from the parentRichard Purdie2010-10-111-0/+3
| | | | | | [BUGID #291] Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
* bitbake/fetch: Ensure SRCREV is still set correctly if the pn-X override has ↵Richard Purdie2010-10-091-0/+2
| | | | | | been expanded Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
* bitbake/runqueue.py: Fix invalid variable reference fixing the -f option ↵Richard Purdie2010-10-071-1/+1
| | | | | | with setscene tasks Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
* bitbake/fetch/__init__.py: Abstract mirror variable handling and enhance to ↵Richard Purdie2010-10-071-5/+8
| | | | | | accept \n delimitation in variables Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
* Export ALL_PROXY for bitbake commandsDarren Hart2010-10-071-1/+4
| | | | | | | | We already export http,ftp,https proxy environment variables. Some environments, GNOME for instance, place the socks proxy in ALL_PROXY and all_proxy. Export it as well. Signed-off-by: Darren Hart <dvhart@linux.intel.com>
* bitbake/sstate: Implement a lookup function to speed up setscene processingRichard Purdie2010-10-052-1/+28
| | | | Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
* bitbake/fetch: if mirror fetching fails, ensure exception is raisedJoshua Lock2010-10-051-1/+3
| | | | | | | | | | | | | | We catch any exception raised by the fetchers go() method and attempt to work around it by trying any (post) mirrors which are configured. However, should the mirrors fail the exception is lost and the fetch is assumed to have completed successfully. Instead, save the exception and if the local file does not exist after trying the mirrors re-raise the exception. Fixes [BUGID #362] Signed-off-by: Joshua Lock <josh@linux.intel.com>
* build.py: Add a symlink for the loggingMark Hatle2010-10-011-0/+17
| | | | | | | | | | | [BUGID #375] When configuring for the log file output, we generate a symlink to the target filename. This link uses the same file naming, but without the active pid, making it easier to see which log file is the last one generated. Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
* bitbake/bitbake-sigdiff: Extend to handle dumping single state siginfo filesRichard Purdie2010-09-301-0/+24
| | | | Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
* bitbake/siggen: Fix issue where excluded dependencies caused exceptionsRichard Purdie2010-09-301-0/+2
| | | | Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
* bitbake/siggen: Ensure full signature data is not held unless needed, ↵Richard Purdie2010-09-293-15/+22
| | | | | | reducing memory consumption Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
* bitbake: Pass task hash information to subprocessesRichard Purdie2010-09-282-2/+27
| | | | | | | Pass task has informaiton to work processes, allowing full manipulation of the hash data in the task context allowing checksums to be usable. Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
* bitbake/fetch: fix logic to prevent fetches when the file already existsJoshua Lock2010-09-281-0/+2
| | | | Signed-off-by: Joshua Lock <josh@linux.intel.com>
* codeparser.py: Fix storing of hash values as object references can be corruptedRichard Purdie2010-09-281-8/+11
| | | | Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
* bitbake/runqueue: Remove now unneeded indentationRichard Purdie2010-09-131-45/+44
| | | | Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
* bitbake/runqueue.py: Optimise delay values to avoid unneeded delaysRichard Purdie2010-09-131-9/+9
| | | | Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
* bitbake/siggen: Allow generation of siggen data from task contextRichard Purdie2010-09-131-2/+10
| | | | Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
* bitbake/build.py: Set BB_FILENAME to represent the .bb file being built ↵Richard Purdie2010-09-131-1/+2
| | | | | | (including any virtual prefix) Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
* bitbake/siggen.py: Improve debugging of checksumsRichard Purdie2010-09-131-7/+9
| | | | Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
* bitbake/data.py: Allow variables to suplement dependencies using the vardep flagRichard Purdie2010-09-131-0/+1
| | | | Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
* bitbake/fetch: ensure the go() method completes when not using premirrorsJoshua Lock2010-09-101-6/+10
| | | | Signed-off-by: Joshua Lock <josh@linux.intel.com>
* bitbake: Add proxy variables to standard export listZhai Edwin2010-09-101-1/+1
| | | | | | | With "no_proxy" exported to bitbake, both internal and externel file mirror can be used. "https_proxy" enable fetching "https://" file through proxy. Signed-off-by: Zhai Edwin <edwin.zhai@intel.com>
* bitbake/__init__.py: Fix named SRCREVS variable name ordering with backwards ↵Richard Purdie2010-09-091-1/+3
| | | | | | compatibility Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
* bitbake: save the initial PATH for use when starting a subprocessJoshua Lock2010-09-081-0/+1
| | | | | | | | | | | It was possible for bitbake-runtime to be run against a semi-installed python-native resulting in tracebacks with ImportError's. To prevent this we stash the initial PATH in the BBConfiguration when bitbake is started and then set this in the env when launching bitbake-runtask through subprocesses Popen() call. Signed-off-by: Joshua Lock <josh@linux.intel.com>
* bitbake/fetch/git: fix try_premirror() definition .Method takes 4 parameters.Joshua Lock2010-09-081-1/+1
| | | | Signed-off-by: Joshua Lock <josh@linux.intel.com>
* bitbake/fetch: fix by moving try_premirror() to the right placeJoshua Lock2010-09-081-12/+11
| | | | | | The previous commit didn't define the method as part of the Fetch object Signed-off-by: Joshua Lock <josh@linux.intel.com>
* bitbake/fetch: add try_premirror method and special case git fetcherJoshua Lock2010-09-082-2/+20
| | | | | | | | | | | Add a new method, try_premirror, to the Fetch object which checks to see whether the file needs to be fetched from a premirror. Override this in the Git fetcher to only require a pre-mirror fetch when the clone directory does not exist. Fixes [BUGID 290] Signed-off-by: Joshua Lock <josh@linux.intel.com>
* bitbake/codeparser: Deal with functions with trailing whitespaceRichard Purdie2010-09-071-1/+8
| | | | Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
* fetch: fix setting of localpath in SRC_URI parametersJoshua Lock2010-09-061-0/+1
| | | | | | | | | When setting localpath in the SRC_URI parameters the basename should be set explicitly as the localpath() method is not called. Fixes [BUGID #81] Signed-off-by: Joshua Lock <josh@linux.intel.com>
* bitbake: Add missing signature filesRichard Purdie2010-09-031-0/+213
| | | | Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
* bitbake: Implement signaturesRichard Purdie2010-09-036-5/+56
| | | | | | Includes functionality to find out what changes between two different singature data dumps. Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
* bitbake/codeparser: Ensure cached sheel entries return the correct dependenciesRichard Purdie2010-09-031-1/+1
| | | | Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
* bitbake/ast: Ensure function definitions are always added to the dictonaryRichard Purdie2010-09-031-4/+4
| | | | Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
* bitbake/fetch: ensure the mirrored repository is updated as requiredJoshua Lock2010-09-011-1/+3
| | | | | | | | | If we fetch a tarball from a mirror it's entirely possible that the mirror will have been from before the required tag/branch/etc was included in the repository. To that end use forcefetch() as a way of testing whether the repository is up to date and if not fetch updates. Signed-off-by: Joshua Lock <josh@linux.intel.com>
* bitbake/git: define a forcefetch methodJoshua Lock2010-09-011-1/+6
| | | | | | | The git fetcher should force a fetch if the required tag is not present in the local clone, or if the fullclone parameter is set. Signed-off-by: Joshua Lock <josh@linux.intel.com>
* bitbake/fetch: Respect forcefetch even when pulling from a mirrorJoshua Lock2010-09-011-3/+3
| | | | | | | | | When pulling from a premirror we would prefer a local tarball even when the caller had specified the forcefetch parameter. Add an extra parameter 'force' to try_mirrors, defaulting to False. If set the mirrors will be tested even if the file exists locally. Signed-off-by: Joshua Lock <josh@linux.intel.com>
* bitbake/codeparser: Implement persistent cacheRichard Purdie2010-08-312-10/+58
| | | | | | | For a given input to this code, the output doesn't change to implement a persistent cache of the data to speed up parsing. Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
* bitbake/data.py: Add emit_func() and generate_dependencies() functionsRichard Purdie2010-08-313-1/+78
| | | | | | | | These functions allow generation of dependency data between funcitons and variables allowing moves to be made towards generating checksums and allowing use of the dependency information in other parts of bitbake. Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
* bitbake: Add codeparser for parsing shell and python functionsRichard Purdie2010-08-312-3/+276
| | | | | | | | | | | This commit is derived from Chris Larson's checksum work, turned into a standalone piece of code for parsing python and shell functions. The deindent code has been replaced with code to work around indentation for speed. The original NodeVisitor in the ast was replaced with a faster class walk call. Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
* bitbake/BBHandler: Save python functions into the dictonaryRichard Purdie2010-08-312-5/+10
| | | | Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
* bitbake/data_smart.py: Allow the data expand function to keep track of ↵Richard Purdie2010-08-311-22/+47
| | | | | | references (including those from python code) Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
* bitbake/runqueue.py: Ensure rqexe always exists and that empty task lists ↵Richard Purdie2010-08-251-3/+16
| | | | | | cause a graceful exit Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>