aboutsummaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)Author
2012-06-08hob2: create a standalone deploy image toolKang Kai
[Yocto 2388] Create a deploy image tool using the existing dialog including DeployImageDialog and ImageSelectionDialog. This tool writes bootable images to USB devices, and it can be run directly without hob. Signed-off-by: Kang Kai <kai.kang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-06-08hob2: update DeployImageDialog for seperated toolKang Kai
Part of [Yocto 2388] Update class DeployImageDialog to get ready for a standalone deploy image tool. The standalone tool can be run directly without hob, and add a button to select image file. So adjust the layout of DeployImageDialog. Signed-off-by: Kang Kai <kai.kang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-06-08ui/crumbs/hig.py: check deploy process return valueKang Kai
Update function response_cb of DeployImageDialog to get deploy process return value. According the return value tell user that deploy image successfully or not. Signed-off-by: Kang Kai <kai.kang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-06-08ui/crumbs/hig.py: remove extra spacesKang Kai
Remove extra spaces at the end of line or blank line. Signed-off-by: Kang Kai <kai.kang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-06-08ui/crumbs/hig.py: fix run time errorKang Kai
Commit 094742bed2fc01d55f572da946fcfa7a48521401 re-implement the function popen_read(). If there is no USB device, it crashes with "ExecutionError: Execution of 'ls /dev/disk/by-id/usb*' failed with exit code 2:" Replace popen_read() way with glob module to get the USB devices. Signed-off-by: Kang Kai <kai.kang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-06-08ui/crumbs/utils.py: import module bbKang Kai
When I try to call function which_terminal() of utils.py directly, it complains NameError: global name 'bb' is not defined So import module bb Signed-off-by: Kang Kai <kai.kang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-06-08Hob: fixed the index issue when set actived item for base image comboLiming An
The combo item index dosn't be increased as the insert a dummy item, when execute the upadate base image combo operation. [YOCTO #2500] Signed-off-by: Liming An <limingx.l.an@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-06-08Hob: Change 'run image' work flow and image detail screen as ui designLiming An
Added the qemu_image_kernel selection view box to image detail screen GUI, and changed the 'run image' button clicked work flow. [YOCTO #2155] Signed-off-by: Liming An <limingx.l.an@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-06-08Hob: Interpret some special characters for label markupShane Wang
Interpret some special characters for label markup, such as &, <, >, etc. Otherwise, the message dialog can't show them, and worsely, it makes the whole message blank. [Yocto #2492] Signed-off-by: Shane Wang <shane.wang@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-06-08Hob: add versions for compatibility check between Hob and templatesShane Wang
If a user uses a very old version of Hob and does some work, later on he/she upgrade to the latest version of Hob, because Hob may change the settings (add more config option into the Adv. Settings dialog or remove some), then the old templates are not loadable and workable for the new Hob. Even though the user hasn't save any template before, the Hob could remember the settings between Hob sessions as a default template, (Remember we have a bug to ask Hob remember between sessions?), the new Hob will also load the default template. By adding versions, we can easily to fix the issue. If the versions don't match, Hob will remove the old default template first and initiate a new build, which has very very little impact on the user. (Just can't remember from the previous session after the user upgrades to a new and incompatible Hob) [Yocto #2492] Signed-off-by: Shane Wang <shane.wang@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-06-08Hob: lower the limitation for PyGTKShane Wang
Signed-off-by: Shane Wang <shane.wang@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-06-08Hob: fixed a definition not match issue when click choose directflb in ↵Liming An
package page [YOCTO #2526] Signed-off-by: Liming An <limingx.l.an@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-06-08Hob: fix entry of recipe page can't be edited in case after clicked clear buttonLiming An
cancel some inviable code and fixed this issue Signed-off-by: Liming An <limingx.l.an@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-06-08Hob: clear the repeated function get_kernel_file_nameLiming An
there are a repeated function in builder.py and imagedetailspage.py, so combine them to one. Signed-off-by: Liming An <limingx.l.an@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-05-30bitbake: include varflags in checksumsPaul Eggleton
Add a dependency to each variable on a filtered list of its varflags. This is intended to catch things such as SRC_URI checksums, varflags controlling extra functionality from classes (e.g. the recently updated update-alternatives class in OE-Core), etc. and ensure their values influence the sstate checksums. There is an exclusion list which needs to be set via bitbake.conf (BB_SIGNATURE_EXCLUDE_FLAGS), if this is not set then the functionality is disabled. The existing vardepsexclude mechanism can also be used to exclude undesired varflags, but they must be fully specified, e.g.: do_patch[vardepsexclude] += "do_patch[someflag]" Implements [YOCTO #2517]. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-05-30lib/bb/fetch2: ignore remote URIs when doing file checksumsPaul Eggleton
Skip evaluating remote URIs when doing local file checksums, because we don't need to process them and doing so will trigger a parse failure if SRCREV is not fully specified. Whilst this is just delaying a check until runtime (when do_fetch runs for the recipe) we're only validating this here accidentally and if we did wish to check it during parsing it ought to be done explicitly. Fixes [YOCTO #2512] Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-05-30cooker: report recipe being parsed when ExpansionError occursPaul Eggleton
When an ExpansionError occurs during parsing it is useful to know which recipe was being parsed when it occurred. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-05-30cooker: fix UnboundLocalError when exception occurs during parsingPaul Eggleton
Fix a recent regression where we see the following additional error after an error occurs during parsing: ERROR: Command execution failed: Traceback (most recent call last): File "/home/paul/poky/poky/bitbake/lib/bb/command.py", line 84, in runAsyncCommand self.cooker.updateCache() File "/home/paul/poky/poky/bitbake/lib/bb/cooker.py", line 1202, in updateCache if not self.parser.parse_next(): File "/home/paul/poky/poky/bitbake/lib/bb/cooker.py", line 1672, in parse_next self.virtuals += len(result) UnboundLocalError: local variable 'result' referenced before assignment Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-05-30lib/bb/data_smart.py: don't report variable in ExpansionError if not setPaul Eggleton
If the variable name is not specified then don't confuse the error message by starting off with "Failure expanding variable None...". Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-05-30hob: handle sanity check failures as a separate eventPaul Eggleton
In order to show a friendlier error message that does not bury the actual sanity error in our typical preamble about disabling sanity checks, use a separate event to indicate that sanity checks failed. This change is intended to work together with the related change to sanity.bbclass in OE-Core. Fixes [YOCTO #2336]. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-05-30Hob: add the 'build new' be as the primary action for 'Image detail' pageLiming An
As ui design, we should set at least one primary action for 'My Image' and 'Image detail' screen as the differnt selected image. if no 'run image' or no 'save as template' or no 'deploy image' we should set 'build new image' [YOCTO #2326] Signed-off-by: Liming An <limingx.l.an@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-05-30Hob: Fixed a compatible issue for indicator icon viewLiming An
Because some screen not support the alpha visual channel, so the function 'screen.get_rgba_colormap()' will return None, it's a compatible issue, so change it by another way. Signed-off-by: Liming An <limingx.l.an@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-05-30HOB: 'str' object has no attribute 'close'Robert Yang
For builddetailspage.py: The "f" was a stream in the past, it is a string now, so it doesn't need f.close(), and change its name to "branch". And we don't need the "2>&1" since bb.process.run() can handle it, it will raise exception when error occurs, we should handle the exception ourselves if we want to ignore the error. For hig.py: Use bb.process.Popen() since it doesn't need the return value. If we use bb.process.run(), the parent process will wait for the child process to terminate to get the result. [YOCTO #2511] Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-05-30hob2: set beginning folders for FileChooserDialogKang Kai
Set begining folders FileChooserDialog for the select images and some local directory configurations. That may make user feel more convenient. Signed-off-by: Kang Kai <kai.kang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-05-25cooker.py: terminate the Parser processesKang Kai
[Yocto 2142] Force to exit HOB when hob is parsing recipes, the bitbake doesn't stop. It hangs on function BitBakeServerConnection::terminate in file server/process.py: else: self.procserver.join() It is waiting for the children process quit. In stage of parse recipes BBCooker spawns Parser processes as many as cpu numbers. When quit the Parser processes they make their internal Queue to call cancel_join_thread() to avoid block but don't work at this time. So force to terminate the Parser processes. Signed-off-by: Kang Kai <kai.kang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-05-25lib/bb/fetch2: fix comments for verify_checksumPaul Eggleton
This function no longer returns a value, it raises errors instead, so update the comments to reflect this. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-05-24bitbake/exceptions: Handle reports from the field of exception code failuresRichard Purdie
Despite using python 2.6, there have been reports of issues where bitbake is printing tracebacks with errors in the exception handling code. This was masking the real error. Since we need to do whatever we can to give the user good feedback about errors, detect the tuple instead of namedtuple case and don't fault in the exception handler but just give up trying to traceback any further. In the reported cases, this gives a message the user can then understand. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-05-24bitbake/utils.py: Ensure utils.which() returns full pathsRichard Purdie
If the path passed to which contains empty elements, it will search the current working directory for the file which is correct baheviour. Various pieces of code assume the path returned is a full path though. This commit ensures we don't return relative paths. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-05-24bitbake/cooker: Ensure matchFile returns full pathnamesRichard Purdie
We should always be passing full pathnames around within bitbake. If a file was referenced as a relative path to the current working directory, it might not get passed through the abspath call and hence the cwd would not get added as a prefix. This change adds a second pass at ensuring we only return absolute paths. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-05-24Hob:fixed the issue of primary button is not an 'orange hob button'Liming An
In image detail page, the primary button should be an 'orange hob button', there has a primary button is not, so change it. [YOCTO #2326] Signed-off-by: Liming An <limingx.l.an@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-05-24BBHandler: Tweak some data store access methods to the preferred syntaxRichard Purdie
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-05-23Hob: Adjust the progress bar and set 100% only when all is done.Shane Wang
After parsing recipes, Hob will populate recipes and packages, which is probably time exhaused. So, this patch is to adjust the progress bar and ensure 100% is set if and only if all populations are done. The patch also fixes "weird 18 second delay when parsing recipes" on build appliance. Because Hob is doing something, but the progress bar shows 100% and wait there. [Yocto #2341] Signed-off-by: Shane Wang <shane.wang@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-05-23build.py: Add support for log and run filename changesMark Hatle
The format of the log file and run file are now selectable using BB_LOGFMT and BB_RUNFMT, respectively. The following values may be used: {task} - task name {taskfunc} - task.func or func, if task==func {func} - function name, only available in BB_RUNFMT {pid} - pid The log/run files may be placed into a subdirectory that is relative to T. Default BB_LOGFMT is: log.{task}.{pid} Default BB_RUNFMT is: run.{func}.{pid} Signed-off-by: Mark Hatle <mark.hatle@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-05-23build.py: Add additional debug messagesMark Hatle
We now add a debug message when entering and exiting a python or shell function. This makes it easier to inspect a log and figure out the run order from the logs. Signed-off-by: Mark Hatle <mark.hatle@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-05-23build.py: Cleanup exec_func_shellMark Hatle
exec_func_python and exec_func_shell are similar, but variable usage has diverged sync the two up. Since exec_func_python is first use that as the guide for the later exec_func_shell variable naming. Signed-off-by: Mark Hatle <mark.hatle@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-05-23build.py: Add a log to capture task execution orderMark Hatle
The new log.task_order contains an ordered list of the tasks as they were executed in any given recipe. The format of the lines is <task> <pid>: <log file> Signed-off-by: Mark Hatle <mark.hatle@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-05-23replace os.popen with subprocess.PopenRobert Yang
Replace os.popen with subprocess.Popen since the older function would fail (more or less) silently if the executed program cannot be found There is a bb.process.run() which will invoke the Popen to run command, use it for simplify the code. For the: p4file = os.popen("%s%s files %s" % (p4cmd, p4opt, depot)) ... for file in p4file: list = file.split() in bitbake/lib/bb/fetch2/perforce.py, it should be an error in the past, since it didn't use readline() to read the pipe, but directly used the split() for the pipe. Use the bb.process.run would fix the problem since bb.process.run will return strings. More info: http://docs.python.org/library/subprocess.html#subprocess-replacements [YOCTO #2075] Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-05-23replace os.system with subprocess.callRobert Yang
Replace os.system with subprocess.call since the older function would fail (more or less) silently if the executed program cannot be found More info: http://docs.python.org/library/subprocess.html#subprocess-replacements [YOCTO #2075] Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-05-23bitbake: support $BITBAKE_UI environmentEnrico Scholz
Patch adds support for a $BITBAKE_UI environment variable which allows to configure the preferred user interface. Although an '-u' option (which will override the environment variable) exists already, it was required to specify this option on every invocation of bitbake. Because user interface is instanciated very early in the program it is not possible to use bitbake.conf for setting up a default. An environment variable (which acts in a similar category like $PAGER or $EDITOR) is a simple way for configuring the default. Signed-off-by: Enrico Scholz <enrico.scholz@sigma-chemnitz.de> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-05-23bitbake: implement checksums for local files in SRC_URIPaul Eggleton
Gathers a list of paths to have checksums calculated at parse time, and processes these when calculating task hashes. Checksums are cached with the file's current mtime. Thus, changing any local file in SRC_URI will now cause the do_fetch taskhash to change, thus forcing a rebuild. This change adds very roughly about an 8% increase in parse time (a few seconds) and maybe a few seconds during runqueue generation, so a fairly moderate performance hit. Note that since paths are resolved at parse time, this will not force a rebuild when files are introduced which would cause that resolved path to be different - for example, where a machine-specific version of a file was added without otherwise changing the recipe. This will need to be handled in a future update. Code to hook this into the signature generator was courtesy of Richard Purdie <richard.purdie@linuxfoundation.org>. Implements [YOCTO #2044]. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-05-23bitbake: refactor out codeparser cache into a separate classPaul Eggleton
We want to be able to reuse most this functionality for the file checksum cache. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-05-23Hob: fixed the issue about the 'run image' page should have the primary bugLiming An
issues: when build a image for atom-pc, the output does not include live image, and 'Save as template' should become the primary action on the screen [YOCTO 2326] Signed-off-by: Liming An <limingx.l.an@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-05-23Hob: fixed the line width of base image description viewLiming An
As ui design, adjusted the line width for each base image description [YOCTO 2310] Signed-off-by: Liming An <limingx.l.an@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-05-23Hob: fixed the issue about bug 'running image' workflow and related viewLiming An
[YOCTO #2155] Signed-off-by: Liming An <limingx.l.an@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-05-23Hob: change the build failure scenario as ui designLiming An
change the top bar display in build 'issue' page [YOCTO #2183] Signed-off-by: Liming An <limingx.l.an@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-05-22Hob: add '--select a machine--' and '--select a base image--' to GUILiming An
[YOCTO #2175] Signed-off-by: Liming An <limingx.l.an@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-05-22fetch2: quote/unquote url pathsChristopher Larson
This ensures we can handle things like %-encoded characters in the path portion of urls. Signed-off-by: Christopher Larson <kergoth@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-05-22Hob: Get image name internally when updating the image descriptionDongxiao Xu
The image name shouldn't be passed from outside caller, since the image name may not in the combobox list. Getting the name from update_image_desc() internally. Signed-off-by: Dongxiao Xu <dongxiao.xu@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-05-22Hob: Add filter for images listed in image comboDongxiao Xu
Define BBUI_IMAGE_WHITE_PATTERN variable to indicate which image is allowed to be displayed in image combobox. Define BBUI_IMAGE_BLACK_PATTERN variable to indicate which image is NOT allowed to be displayed in image combobox. This fixes [YOCTO #1581] Signed-off-by: Dongxiao Xu <dongxiao.xu@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-05-22Hob: reimplement the proxy pageShane Wang
This patch is to reimplement the proxy page in the "Advanced Settings" dialog per the new design in https://bugzilla.yoctoproject.org/attachment.cgi?id=442 and https://bugzilla.yoctoproject.org/attachment.cgi?id=443. [Yocto #2247] Signed-off-by: Shane Wang <shane.wang@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>