summaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)Author
2014-05-06fetch2/__init__.py: let try_mirror_url return correct value1.20Robert Yang
The fetcher will try: 1) PREMIRROR 2) Upstream 3) MIRROR If it fails to download from the Upstream, but succeeds from the MIRROR, and ud.localpath != origud.localpath (for example, the git tarball), then we will get the error (e.g.: xf86-video-omapfb): ERROR: Function failed: Fetcher failure for URL: 'xxx'. Unable to fetch URL from any source. ERROR: Logfile of failure stored in: /path/to/log.do_fetch.28024 It should not show the error and let the build go on since it succeeds. (e.g.: xf86-video-omapfb) [YOCTO #5686] Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-05-06fetch2: Fix mirror repo tarball creationRichard Purdie
A typo was meaning that the mirror creation method wasn't being called when it should have been. Fix the type to fix mirror tarball creation. [YOCTO #5284] Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-04-13bitbake: fetch2/git: Anchor names when using ls-remoteRichard Purdie
When specifying tags, they're searched for unanchored so foo/bar could match: refs/heads/abc/foo/bar refs/heads/xyz/foo/bar refs/heads/foo/bar This change anchors the expressions so they are based against heads or tags (or any other base level tree that has been created). (Bitbake master rev: df2e0972cd1db7abd5ec8b7cb295fb0c42e284a4) Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-02-17fetch2: Don't allow '/' in user:pass, fix branch containing '@'Martin Jansa
* currently decode_url regexp parses branch=@foo as username so it ends like this: - ('git', '', 'foo', 'git.openembedded.org/bitbake;branch=', '', {}) + ('git', 'git.openembedded.org', '/bitbake', '', '', {'branch': '@foo'}) * http://hg.python.org/cpython/file/2.7/Lib/urlparse.py also assumes that there is at least one '/' as separator between netloc and path, params, so it looks reasonable to prevent including '/' in username Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-08hob/hoblistmodel: check if vals of packages/recipes names are not NoneCristiana Voicu
[YOCTO #5053] (Corresponds to BitBake master rev: ba9fe77e37be31e8246431578902e871dd94515e) Signed-off-by: Cristiana Voicu <cristiana.voicu@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-02imagedetailspage: Fix crash with more than 15 layersRichard Purdie
If you had more than 15 layers the system would crash since one more value is added to one array than the other. This fixes the code so equal numbers of values are added to the arrays and hence doesn't crash when many layers are enabled. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-02parse/ConfHander/BBHandler/utils: Fix cache dependency bugsRichard Purdie
Currently bitbake only adds files to its dependency list if they exist. If you add 'include foo.inc' to your recipe and the file doesn't exist, then later you add the file, the cache will not be invalidated. This leads to another bug which is that if files don't exist and then you add them and they should be found first due to BBPATH, again the cache won't invalidate. This patch adds in tracking of files we check for the existence of so that if they are added later, the cache correctly invalidates. This necessitated a new version of bb.utils.which which returns a list of files tested for. The patch also adds in checks for duplicate file includes and for now prints a warning about this. That will likely become a fatal error at some point since its never usually desired to include a file twice. The same issue is also fixed for class inheritance. Now when a class is added which would be found in the usual search path, it will cause the cache to be invalidated. Unfortunately this is old code in bitbake and the patch isn't the neatest since we have to work within that framework. [YOCTO #5611] [YOCTO #4425] Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-02data: Fix output inconsistencies for emit_varRichard Purdie
VAL = "" (not shown) VAL = " " (shown as "") VAL = " x" (shown as "x") would all show up rather differently to what would be expected in the bitbake -e output. This fixes things so they appear consistently. The output for running some shell functions may also change slightly but shouldn't change in a way that is likely to cause problems. [YOCTO #5507] Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-02runqueue/bitbake-worker: Fix dry run fakeroot issuesRichard Purdie
When using the dry run option (-n), bitbake would still try and fire a specific fakeroot worker. This is doomed to failure since it might well not have been built. Add in some checks to prevent the failures. [YOCTO #5367] Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-12-11bitbake: runqueue: Fix hole in setsceneverify skipped task logicRichard Purdie
We have do_bundle_initramfs which is a task inserted after compile and before build. It is not covered by sstate. If we run a build with a valid sstate cache present, the setsceneverify function realises it will rerun the do_compile step (due to the bundle_initramfs task) and hence marks do_populate_sysroot to rerun. do_install, a dependency of do_populate_sysroot is left as marked as covered by sstate. What we need to do is traverse the dependency tree for any setsceneverify invalided task and ensure any dependencies are also invalidated. We can stop at any point we reach another setscene task though. This means the do_populate_sysroot task has the data from do_install available and doesn't crash. (Bitbake master rev: f21910157d873c030b149c4cdc5b57c5062ab5a6) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-12-11bitbake: build.py: add single-quotes around already-expanded directory namePeter Seebach
If the computed name of a directory contains an undefined variable reference, bitbake dutifully creates a directory with a name that has ${...} in it. However, the actual task script created then tries to cd to that directory, and the cd command fails, because no such directory exists -- because the shell has helpfully removed the ${...} which did not match any actual variables. Since we want the name to be used exactly-as-is, add single quotes around the name so this doesn't cause strange failures running tasks, which allows us to progress past such failures and get to a point where they can be diagnosed. (Bitbake master rev: 2809c2e6f2f35f9b08058950be896947ab5a0284) Signed-off-by: Peter Seebach <peter.seebach@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-12-11bitbake: fetch2: Fix handling of SCM mirrors in MIRRORSRichard Purdie
If an SCM mirror is in PREMIRRORS, the tarball is downloaded and then found by the "upstream" check and handled correctly. If an SCM mirror is in MIRRORS, the tarball is downloaded but not used since there is no "upstream" run after MIRRORS completes. It therefore sits there useless and unused. This code change forces the upstream to run after a mirror tarball is found and fixes the usage of SCM mirrors in MIRRORS. (Bitbake master rev: a66ee0994645aa5658b2f5ea134ed17d89f8751a) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-12-11bitbake: monitordisk: lower inode check warning to noteOlof Johansson
Filesystems like btrfs and reiserfs sets the inode count to 0, since they don't have an inode concept. This is expected, and having a warning show up every time you run bitbake can cause undue concern. (Bitbake master rev: f3ac2d3678f48c68a250a0a20c08cf8687322d38) Signed-off-by: Olof Johansson <olof.johansson@axis.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-12-11bitbake: cooker/command: Add error state for the server and use for ↵Richard Purdie
pre_serve errors Currently if errors occur when starting the PR service, there is a race that occurs since the UI runs various commands including starting builds before processing the CookerExit(). By adding the error state and refusing to run async commands in this mode, builds are prevented from starting and the UI reaches the exit code with the system shutting down cleanly. (Bitbake master rev: 42fa34142ea685f91115a551e74416ca28ef1c91) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-12-03perforce: Fix path subdirectory issuesRichard Purdie
With a SRC_URI = " \ p4://depot/folder/...;module=localfolder/localsubfolder;changeslist=${P4CHANGELIST} \ " the subfolders of //depot/folder/... get renamed when mapped to the local folder structure. They lose the first 3 letters. This patch fixes that. Issue reported by and patch sent from katutxakurra@gmail.com [YOCTO #5380] (Bitbake master rev: 40e06dc459d9c0b5d42d65b2d2c846196fd36b1f) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-12-03fetch/hg: Improve user/password handlingVolker Vogelhuber
Trying to use a server with username and password authentication within the URL of the SRC_URI variable doesn't appear to work. This patch adds the missing parts to the hg fetcher to make this work properly. (Bitbake master rev: dc3d6d73e44802c203b3f7247f6f212acc2f69bf) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-12-03fetch2/svn.py: use log instead of info to retrieve revisionNicolas Dechesne
We have faced a corner case situation where the 'last changed revision' returned from svn info is wrong. It happens when the last revision is a directory move. e.g. if we assume that the svn repository at revA has root/x/y/z/foo/bar and it is moved to root/a/b/c/foo/bar in revB, then svn info 'last change revision' will return revA. As such when using AUTOREV, we are going to attempt to retrieve root/a/b/c/foo/bar (as per SRC_URI) but at revA when it did not exist. So this patch changes how we retrieve the latest revision and uses 'svn log --limit 1' which gives correct result in all tested cases. (Bitbake master rev: 17d8ef0b813a05c231e3dbe6e8bc82a4a9b1d2f8) Signed-off-by: Nicolas Dechesne <nicolas.dechesne@linaro.org> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-10-07hob: change tooltip for live imagesCristiana Voicu
This change is needed to inform the user that selecting live type means that the system will build a hddimg and iso image. Signed-off-by: Cristiana Voicu <cristiana.voicu@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-10-07bitbake: replace comment added in conf filesCristiana Voicu
The patch that implements removeConfigurationVar method was made before merging the patch that replaces "added by bitbake" with "added by hob". This patch corrects this issue. [YOCTO #5284] Signed-off-by: Cristiana Voicu <cristiana.voicu@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-10-04bitbake-dumpsig: introduce command line and error handlingPaul Eggleton
This utility doesn't take any special arguments, but it's nice if it at least knows how to deal with no arguments, --help and errors properly. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-10-04bitbake-diffsigs: improve error handlingPaul Eggleton
* Set up a logger independent of BitBake so we can log errors ourselves * Handle common errors without printing a traceback Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-10-04bitbake-diffsigs: refactor argument parsing slightlyPaul Eggleton
* Use OptionParser to parse the two options to -t rather than trying to pick them out ourselves. * Add a description shown with --help output Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-10-04bitbake-diffsigs: handle if task name is specified without do_ prefixPaul Eggleton
Adjust the task name automatically if the -t option is specified with a task name that doesn't start with do_ (e.g. "configure" instead of "do_configure"). Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-10-04bin/bitbake: Clarify server error messageRichard Purdie
Getting an error message about --remote-server being set when really BBSERVER was is confusing, clarify the message. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-10-04bin/bitbake: Clear ui-queue when starting a serverRichard Purdie
When starting a server we don't want to show the debug event queue which is reserved for when when errors have occurred. This patch copies the UI code to ensure the user doesn't see confusing output. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-10-04bin/bitbake: No need to show tracebacks for BBHandledExceptionsRichard Purdie
For BBHandledExceptions, we've already displaced a sensible error to the user so we don't need to do it again. Just exit with an error value. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-10-04xmlrpc: Show a better error message for connection failuresRichard Purdie
Showing a traceback when unable to connect to a bitbake server is rather ugly. This change allows us to show a sensible error message. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-10-04bin/bitbake: Catch establish connection log messagesRichard Purdie
If for example you try "bitbake -m" with an invalid BBSERVER, error messages are not displayed. This change ensures logging is in place to catch and display such errors. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-10-04bitbake/hob: removing extra parameters from conf files using hobCristiana Voicu
In Hob settings, there is a tab to add/remove extra settings. This patch implements a way to "remove" variables from conf files, through bitbake. But, to keep the history assigment of the variables synchronized, instead of removing, it replaces the lines with blank lines. [YOCTO #5284] Signed-off-by: Cristiana Voicu <cristiana.voicu@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-10-04HOB: MACHINE should be saved in conf files using ?=Valentin Popa
MACHINE var is saved using early assignment operator. Calling MACHINE=x bitbake core-image-... works properly. Comment "#added by bitbake" is replaced with "#added by hob". [YOCTO #5070] Signed-off-by: Valentin Popa <valentin.popa@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-10-04utils: use logger.warn instead of print in copyfileRoss Burton
print disappears into the ether, so use logger.warn and clean up the messages. Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-10-02lib/bb/monitordisk.py: fix spelling in error textErik Botö
Signed-off-by: Erik Botö <erik.boto@pelagicore.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-09-27HOB: Busy cursor when saving configurationValentin Popa
Display a busy cursor while the configuration is saved. [YOCTO #4846] Signed-off-by: Valentin Popa <valentin.popa@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-09-24bitbake: Update to version 1.20.0Richard Purdie
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-09-22tests/data: Whitespace in key names is a really bad ideaRichard Purdie
The parser never has supported it, the datastore API did happen to work but whitespace in key names is a really bad idea and not something I think we should encourage or support. Fix test case failures after excplitly ignoring it for variable expansion purposes. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-09-22data_smart: Variable references don't contain newlines, spaces or tabsRichard Purdie
The code is happily trying to expand variable names containing newlines, spaces and tabs which are illegal characters in variable names. This patch stops it doing this. This will change dependency checksums since some rather weird dependencies were being attempted to be expanded. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-09-22hob: populate "Save image" dialog when saving changes to a custom image recipeCristiana Voicu
If my build starts from a YP standard image recipe, the 'Save image recipe' dialog should be empty. If my build starts from a custom image recipe, the 'Save image recipe' dialog should populate the 'Name' and 'Description' fields with the values set for the custom image recipe. [YOCTO #5004] Signed-off-by: Cristiana Voicu <cristiana.voicu@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-09-22bin/bitbake: Improve --help textRichard Purdie
The --help text was rather inconsistent in style and plain incorrect in places, using confusing terminology in others. I guess most people know what the options do and don't read this but its confusing to new users. This updates it to use the terms recipe and task consistently, remove the references to stage, bbread and generally try and make the output more useful. [YOCTO #4856] Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-09-22build: Add BB_TASK_NICE_LEVEL to task codeRichard Purdie
On Linux its not possible for processes to regain a previous nice level after it has changed. Its therefore not possible to have a core low priority and then raise the priorities of individual tasks. This variable allows us to do something like: BB_TASK_NICE_LEVEL = "5" BB_TASK_NICE_LEVEL_task-testimage = "0" to give priority to specific tasks which the BB_NICE_LEVEL functionality doesn't give us the option of. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-09-18bitbake: runqueue: add task hash to Queue eventsAlexandru DAMIAN
Adding the sstate-related hash for all runqueue and scenequeue tasks, as it's needed in the WebHob data. Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-09-18bitbake: event: adding generic event for metadata usageAlexandru DAMIAN
Adding the generic bb.event.MetadataEvent that is targeted specifically at metadata usage. This is needed in order to let the metadata code send and receive events during asynchrous execution without having to define each event specifically in Bitbake. Metadata code should subscribe to and fire the MetadataEvent in order to communicate asynchronously, and identify the object using event.type field, and parse the data in the event.data field. Knotty UI will ignore these event by default. This deprecates RequestPackageInfo/PackageInfo, and that event pair will be removed in the future. Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-09-18bitbake: cooker, command: add a command to return global dataAlexandru DAMIAN
Adding the 'getAllKeysWithFlags' read-only command that will return a dump of the global data state, together with specified flags for each key. The flag list is passed in as the first parameter to the command. This will be used by UI clients to get the build configuration. Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-09-18bitbake: cooker: get extra information from recipe cacheAlexandru DAMIAN
The loaded cache modules may add extra attributes to the recipecache, that will be populated by the cache classes required by the UI. These attributes will be used by the UI to display relevant information. Adds cachefields cache class field to specify for each cache class which attributes will be set in the recipecache. Adds code to automatically expand depends tree with the fields exported by the extra cache class. Fixes a cache field name in the HOB UI. Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-09-18bitbake: build, runqueue: adds info to the *runQueue* eventsAlexandru DAMIAN
This patch adds task identifying information for all runQueue and sceneQueue events, and for bb.build.Task* events. This will allow matching event to specific tasks in the UI handlers processing these events. Adds RunQueueData functions to get the task name and task file for usage with the runQueue* events. Adds taskfile and taskname properties to bb.build.TaskBase. Adds taskfile and taskname properties to the *runQueue* events Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-09-18bitbake: cooker,runqueue: send the task dependency treeAlexandru DAMIAN
Adding a CookerFeature that allows UIs to enable receving a dependency tree once the task data has been computed and the runQueue is ready to start. This will allow the clients to display dependency data in an efficient manner, and not recompute the runqueue specifically to get the dependency data. Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-09-18bitbake: cooker,xmlrpc,servers: implement CookerFeaturesAlexandru DAMIAN
Implementing feature set selection that allows a client to enable specific features in the server at connection time. Only enabling of features is supported, as there is no way to safely remove data loaded into the cooker. Once enabled, a feature will remain enabled for the life of the cooker. Client-server connection now supports specifying the feature set required by the client. This is implemented in the Process server using a managed proxy list, so the server cooker will now load dynamically needed features based on what client connects to it. In the XMLRPC server the feature set is requested by using a parameter for registerUIHandler function. This allows observer-only clients to also specify features for the server. The server code configuration now is completly separated from the client code. All hardcoding of client knowledge is removed from the server. The extra_caches is removed as the client can now specify the caches it needs using the feature. The UI modules now need to specify the desired featureSet. HOB is modified to conform to the featureSet specification. The only feature available is CookerFeatures.HOB_EXTRA_CACHES which forces loading the bb.cache_extra:HobRecipeInfo class. Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-09-18data_smart: Fix variable reference issuesRichard Purdie
The change to use the expansion cache in VariableParse was incorrect as it was adding in references it shouldn't have been. This patch corrects the codepaths and ensures the references are correct. The cache version is bumped since the previous bug could have leave to invalid checksum calculations and a clean cache is therefore desireable. The impact of the bug was that sstate was not getting reused when it should and some tasks were also being rerun when they should not have been. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-09-18cooker: return a copy checkPackagesRichard Purdie
The syntax used for checkPackages implies a copy is returned but it did not do so. Make it so. This is fixes universe builds where error messaages were being shown but there should have only been warnings. [YOCTO #5222] Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-09-17usermanual.xml: Two new sections added to BitBake "Description"Scott Rifenbark
1. Added a new section "Appending and Prepending (override style syntax)". This section shows how the append and prepend operators work using the override style syntax. 2. Added a new section "Removing (override style syntax)". This section describes the new "_remove" operator. Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-09-17Revert "bb.fatal: Raise a BBHandledException instead of exiting"Richard Purdie
Sanity test failures are no longer fatal with this change so whilst its the right idea, the code paths need more work. This reverts commit a50017ba71250e1710a6425b60ac7e3f03d88295.