bitbake.git
7 years agoFix bad merge of #2162
Bogdan Marinescu [Fri, 28 Sep 2012 15:06:06 +0000 (18:06 +0300)]
Fix bad merge of #2162

This patch fixes the bad merge of #2162 fixes on master.

Signed-off-by: Bogdan Marinescu <bogdan.a.marinescu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
7 years agohob: Error reports are done in a clearer way
Cristian Iorga [Fri, 28 Sep 2012 15:05:53 +0000 (18:05 +0300)]
hob: Error reports are done in a clearer way

For long errors (bigger than 200 letters),
the text box is scrollable and resizable
and text is selectable.

Additionaly, all message dialogs are modal.
Otherwise, a user could still interact with hob
even in an error case, leading to potential problems.

See design details in related bugs.

Fixes [YOCTO #2960], [YOCTO #2983]

Signed-off-by: Cristian Iorga <cristian.iorga@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
7 years agohob/builddetailspage: fix failure_primary_action_button_clicked_cb
Constantin Musca [Fri, 28 Sep 2012 12:37:48 +0000 (15:37 +0300)]
hob/builddetailspage: fix failure_primary_action_button_clicked_cb

[YOCTO #3194]

Signed-off-by: Constantin Musca <constantinx.musca@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
7 years agohob/builddetailspage: remove "back" button
Cristiana Voicu [Fri, 28 Sep 2012 12:50:12 +0000 (15:50 +0300)]
hob/builddetailspage: remove "back" button

When a build fails, there should not be a back button on the screen.
All available actions are provided within the failure notification,
so no back button is needed.

[YOCTO #3104]
Signed-off-by: Cristiana Voicu <cristiana.voicu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
7 years agoknotty: Allow displaying of status when no tasks are active
Richard Purdie [Thu, 27 Sep 2012 21:56:02 +0000 (21:56 +0000)]
knotty: Allow displaying of status when no tasks are active

The console can appear to hang when no tasks are executing even if bitbake
is iterating through a large number of tasks behind the scenes.

This patch tweaks the footer code to display a status even when no tasks
are active to give the user better feedback about what is happening.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
7 years agoparse/ConfHandler: Add negative lookahead to spot some quoting problems
Richard Purdie [Thu, 27 Sep 2012 22:07:28 +0000 (23:07 +0100)]
parse/ConfHandler: Add negative lookahead to spot some quoting problems

Syntax like:

FOO = "bar" # eek"

would result in FOO taking the value 'bar" #eek' which is clearly
not the intention. Whilst our metadata is riddled with mixtures of even
quotes like:

FOO = "d.getVar("X")"

odd numbers of quotes seem rare. This patch adds detection of one odd
quote which we don't have any of in OE-Core so it seems a valid sanity
improvement.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
7 years agohob: set modal flag on progress dialog
Ross Burton [Thu, 27 Sep 2012 15:46:09 +0000 (16:46 +0100)]
hob: set modal flag on progress dialog

The entire interface isn't usable whilst the progress dialog is up so we might
as well set the modal flag so that some WMs (such as GNOME 3) can do nice things
with the dialog (such as pin it to the titlebar).

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
7 years agohob/settings: implement a new tab in settings dialog to show SSTATE_MIRRORS
Cristiana Voicu [Wed, 26 Sep 2012 10:44:08 +0000 (13:44 +0300)]
hob/settings: implement a new tab in settings dialog to show SSTATE_MIRRORS

Add a new tab to show correctly SSTATE_MIRRORS variable. Now you can add new
mirrors or delete mirror. "info" image was also changed( it is smaller, so it
can be next to labels).
>From "Build environment" tab, SSTATE_DIR and SSTATE_MIRRORS vars were removed.

[YOCTO #2893]

Signed-off-by: Cristiana Voicu <cristiana.voicu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
7 years agoAdd missing file from previous commit
Richard Purdie [Fri, 28 Sep 2012 08:55:57 +0000 (09:55 +0100)]
Add missing file from previous commit

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
7 years agohob/builder: When you stop a build, Hob should tell you stopping is happening
Constantin Musca [Wed, 26 Sep 2012 08:08:15 +0000 (11:08 +0300)]
hob/builder: When you stop a build, Hob should tell you stopping is happening

- use the progress bar text to indicate the stopping status
- the text should say: 'Stopping the build...'

[YOCTO #3152]

Signed-off-by: Constantin Musca <constantinx.musca@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
7 years agolib/bb/data.py: improve output for expansion errors
Paul Eggleton [Tue, 25 Sep 2012 14:17:17 +0000 (15:17 +0100)]
lib/bb/data.py: improve output for expansion errors

Instead of logging the function/variable separately as a NOTE when
failing to expand, re-raise ExpansionError with more contextual
information. This means that the full details are reported in Hob as
well as actually reporting the original error message in any UI where
we previously did not. For example, we used to get this with tab/space
indentation issues in a python function:

NOTE: Error expanding variable populate_packages
ERROR: Unable to parse /path/to/recipename.bb

Now, we will get this:

ERROR: ExpansionError during parsing /path/to/recipename.bb: Failure
 expanding variable populate_packages: IndentationError: unindent does
 not match any outer indentation level (<string>, line 4)

Fixes [YOCTO #3162].

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
7 years agocooker: adjust layer dependency error messages
Paul Eggleton [Tue, 25 Sep 2012 15:25:28 +0000 (16:25 +0100)]
cooker: adjust layer dependency error messages

Make these a little easier to understand.

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
7 years agohob/recipeselectionpage: recipes should not be shown brought in by themselves
Cristiana Voicu [Thu, 27 Sep 2012 14:12:59 +0000 (17:12 +0300)]
hob/recipeselectionpage: recipes should not be shown brought in by themselves

[YOCTO #3107]
Signed-off-by: Cristiana Voicu <cristiana.voicu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
7 years agofetch2: add "-d" option to cpio
Robert Yang [Wed, 26 Sep 2012 09:07:57 +0000 (17:07 +0800)]
fetch2: add "-d" option to cpio

Add "-d" option to cpio since it is useful:
  -d
  --make-directories
  Create leading directories where needed.

[YOCTO #3137]

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
7 years agoMultiple user interface fixes in settings
Bogdan Marinescu [Thu, 27 Sep 2012 14:13:45 +0000 (17:13 +0300)]
Multiple user interface fixes in settings

1. Move the "Others" tab from advanced settings to simple settings
2. Organize content of tabs into headings
3. Match various labels in the settings with the design
4. Clean up config_md5 in both simple and advanced settings

This patch implements a part of the changes requested by Belen in the settings dialogs.
The second version of the patch addresses all the UI changes requested by Belen (more
details are in the bug description): alphabetical ordering of the image types and
warnings if no image type is selected.

[YOCTO #2162]

Signed-off-by: Bogdan Marinescu <bogdan.a.marinescu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
7 years agohob/runningbuild: Add missing logging level argument
Constantin Musca [Thu, 27 Sep 2012 10:49:12 +0000 (13:49 +0300)]
hob/runningbuild: Add missing logging level argument

[YOCTO #3170]

Signed-off-by: Constantin Musca <constantinx.musca@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
7 years agoAdd sanity check progress screen
Bogdan Marinescu [Wed, 26 Sep 2012 13:59:57 +0000 (16:59 +0300)]
Add sanity check progress screen

This patch adds a sanity check progress screen to hob. The screen
is displayed when Hob executes the sanity check procedure. The screen
is displayed for at least 5 seconds. If a network error is detected,
a special dialog is displayed which lets the user open the proxy
configuration page directly.
Note that currently bitbake triggers the network tests only when
the value of its TMPDIR variable changes, which happens fairly rare
on my system. This is the subject of another bug (#3026).
Version 2 of the patch splits the changes in two parts (sanity.bbclass
belongs to oe-core).

[YOCTO #3025]

Signed-off-by: Bogdan Marinescu <bogdan.a.marinescu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
7 years agohob/builddetailspage: change branch field
Cristiana Voicu [Wed, 26 Sep 2012 13:11:41 +0000 (16:11 +0300)]
hob/builddetailspage: change branch field

When a user makes a build from a tarball, it shows fatal error in branch field.
Now it not complains as a fatal error. It is a normal message.

[YOCTO #3114]

Signed-off-by: Cristiana Voicu <cristiana.voicu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
7 years agohob: Buttons width and height are taken for host
Ioana Grigoropol [Wed, 26 Sep 2012 12:13:42 +0000 (15:13 +0300)]
hob: Buttons width and height are taken for host

- removed all set_size_request calls for buttons in order to:
- force autosizing of buttons with regard to the text length
- use host theme default height for buttons
- modified buttons on image details page to have the same height (default host one) and the width of the button with the largest text
- modified Stop button on build details page to have the default height by directly attaching it to the containing table instead of hbox

Signed-off-by: Ioana Grigoropol <ioanax.grigoropol@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
7 years agohob/settings: implement a new tab in settings dialog to show SSTATE_MIRRORS
Cristiana Voicu [Wed, 26 Sep 2012 10:44:08 +0000 (13:44 +0300)]
hob/settings: implement a new tab in settings dialog to show SSTATE_MIRRORS

Add a new tab to show correctly SSTATE_MIRRORS variable. Now you can add new
mirrors or delete mirror. "info" image was also changed( it is smaller, so it
can be next to labels).
>From "Build environment" tab, SSTATE_DIR and SSTATE_MIRRORS vars were removed.

[YOCTO #2893]

Signed-off-by: Cristiana Voicu <cristiana.voicu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
7 years agofetch2/git: Don't use deprecated API
Richard Purdie [Tue, 25 Sep 2012 14:55:27 +0000 (15:55 +0100)]
fetch2/git: Don't use deprecated API

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
7 years agohob/packageselectionpage:cancel button should redirect to Image conf screen
Cristiana Voicu [Mon, 24 Sep 2012 13:30:59 +0000 (16:30 +0300)]
hob/packageselectionpage:cancel button should redirect to Image conf screen

Cancel button brings you to Image configuration page.

[YOCTO #3105]
Signed-off-by: Cristiana Voicu <cristiana.voicu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
7 years agohob/builddetailspage: change tooltips and remove a dialog from "Build stopped" message
Cristiana Voicu [Mon, 24 Sep 2012 12:17:58 +0000 (15:17 +0300)]
hob/builddetailspage: change tooltips and remove a dialog from "Build stopped" message

When you stop a build, a "Build stopped" message appears. I have changed 2 tooltips and
also eliminate the alert that comes up when you click 'Edit packages'.

[YOCTO #3160]
Signed-off-by: Cristiana Voicu <cristiana.voicu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
7 years agobitbake: Unbuffer stdout for log files
Jason Wessel [Mon, 17 Sep 2012 22:43:31 +0000 (17:43 -0500)]
bitbake: Unbuffer stdout for log files

It is possible to lose critical log data when python exits in an
unorderly fashion via segmentation fault or certain types of crashes.
This is because the buffer characteristics are inherited from the top
level stdout, which should be set to unbuffered, for the purpose of
all the forked children.

This pushes the buffering to the OS, instead of having python managing
the buffers in its stream handler class.

This change is also to provide the ability to tail logs written from
processes in "real time" because they would be written in an orderly
fashion depending upon the OS characteristics for the file I/O.

Signed-off-by: Jason Wessel <jason.wessel@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
7 years agoevent.py, knotty.py, ncurses.py, runningbuild.py: Add support for LogExecTTY event
Jason Wessel [Mon, 17 Sep 2012 22:43:49 +0000 (17:43 -0500)]
event.py, knotty.py, ncurses.py, runningbuild.py: Add support for LogExecTTY event

The LogExecTTY even is intended to provide the ability to spawn a task
on a the controlling tty, if a tty is availble.  When a controlling
tty is not availble the previous behavior is preserved where a warning
is issued about the action an end user must execute.

All the available UI's were tested against the new event type.

This feature is primarily intended for hooking up a screen client
session automatically on the controlling tty to allow for a more
streamlined end user experience when using a pure command line driven
environment.  The changes that send the LogExecTTY event are in the
oe-core side.

Signed-off-by: Jason Wessel <jason.wessel@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
7 years agoprogress.py: Fix traceback when running goggle ui
Jason Wessel [Mon, 17 Sep 2012 22:43:48 +0000 (17:43 -0500)]
progress.py: Fix traceback when running goggle ui

The following traceback appears when running the following command after the
devshell is exited.

bitbake -u goggle -c devshell busybox

-- traceback --
Traceback (most recent call last):
  File "/work/bitbake/lib/bb/ui/goggle.py", line 35, in event_handle_idle_func
    build.handle_event (event, pbar)
  File "/work/bitbake/lib/bb/ui/crumbs/runningbuild.py", line 299, in handle_event
    pbar.set_text(event.msg)
AttributeError: 'ProgressBar' object has no attribute 'set_text'

Signed-off-by: Jason Wessel <jason.wessel@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
7 years agorunqueue: Add --no-setscene to skip all setscene tasks
Jason Wessel [Mon, 17 Sep 2012 22:43:17 +0000 (17:43 -0500)]
runqueue: Add --no-setscene to skip all setscene tasks

Mainly intended for the purpose of debugging or forcing builds
from source, the --no-setscene will prevent any setscene
tasks from running.

Signed-off-by: Jason Wessel <jason.wessel@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
7 years agofetch2/git: Add missing mkdir
Richard Purdie [Mon, 24 Sep 2012 08:37:09 +0000 (08:37 +0000)]
fetch2/git: Add missing mkdir

bitbake-selftest is failing due to directories not being created. This adds in an
appropriate mkdir so the tests can complete. Presumably in general OE use, something
else is ensuring the parent directory is created.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
7 years agofetch2: improve error output for checksum failures
Paul Eggleton [Sun, 23 Sep 2012 17:05:36 +0000 (18:05 +0100)]
fetch2: improve error output for checksum failures

* Don't print the full exception in the initial warning - if we later
  succeed in fetching the file from a mirror, we won't usually need the
  details (which are in the fetch log if they are needed); otherwise the
  full error will be printed when the fetch operation fails. Also adjust
  the conditional block so that we don't print another warning just
  mentioning we're going to try mirrors.
* Call logger.error() so that with knotty the full log is not printed
* Provide an explanation around the lines we print for easily updating
  the checksums in the recipe. We don't want users to be just blindly
  updating the recipe in case of a transient failure or deliberately
  altered remote file.

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
7 years agofetch2: make fetch failure errors more readable
Paul Eggleton [Sun, 23 Sep 2012 17:05:35 +0000 (18:05 +0100)]
fetch2: make fetch failure errors more readable

Most of the time we don't need to see the fetch command; the fetch log
includes the command as a debug message in any case, so omit it. Also
adjust the way command output is printed (we don't need stderr/stdout
labelled, and print "no output" instead of "output:\nNone" when there is
no output.

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
7 years agolib/bb/runqueue.py: fix exceptions with -k and failed targets
Paul Eggleton [Sun, 23 Sep 2012 13:14:24 +0000 (14:14 +0100)]
lib/bb/runqueue.py: fix exceptions with -k and failed targets

If a target dependency is marked as failed and yet we are continuing on
because -k has been specified, don't try to access the dependency's data
in taskData.build_targets since it will have been removed. This fixes
"IndexError: list index out of range" errors in this situation.

Also, do not print the "unhandled exception" message when SystemExit is
raised since we will have reported the actual error already in this
case (e.g. when -k has been specified and some targets failed).

Fixes [YOCTO #3133].

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
7 years agohob: fix Gtk-WARNINGs due to invalid markup on Back button
Paul Eggleton [Fri, 21 Sep 2012 14:47:26 +0000 (15:47 +0100)]
hob: fix Gtk-WARNINGs due to invalid markup on Back button

You can't use markup characters (e.g '<' or '>') in the labels for many
widgets - you must use the appropriate entities instead.

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
7 years agohob: remove confirmation dialog on close
Paul Eggleton [Fri, 21 Sep 2012 14:47:25 +0000 (15:47 +0100)]
hob: remove confirmation dialog on close

This is not necessary for modern applications - instead we just need to
check if we're in the middle of a build and if so, do the same thing as
pressing the "Stop" button.

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
7 years agohob: allow configuring default machine using HOB_MACHINE
Paul Eggleton [Fri, 21 Sep 2012 14:47:24 +0000 (15:47 +0100)]
hob: allow configuring default machine using HOB_MACHINE

Allow specifying HOB_MACHINE in local.conf to set the initially
selected machine. With this set, Hob will select the specified machine
and then jump straight into parsing recipes. If you do wish to change
the selected machine with HOB_MACHINE set you still can - you just need
to stop the parsing process first.

Fixes [YOCTO #3148].

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
7 years agohob: don't show error dialog for errors during building
Paul Eggleton [Fri, 21 Sep 2012 14:47:23 +0000 (15:47 +0100)]
hob: don't show error dialog for errors during building

During building we already report errors in a special tab and
indicate when the build has failed; bringing up a dialog was a
regression introduced in bitbake revision
5bab81b124087d63d6eb62a861e1241714fcd483.

Fixes [YOCTO #3151].

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
7 years agohob: The title of the packages screen depends on the screen you arrive from
Constantin Musca [Fri, 21 Sep 2012 10:28:43 +0000 (13:28 +0300)]
hob: The title of the packages screen depends on the screen you arrive from

- If you arrive to the packages screen from the recipes screen, the title
should say: 'Step 2 of 2: Edit packages'
- If you arrive to the packages screen from the image details screen, the
title should say: 'Edit packages'
- The title of the recipes screen should say 'Step 1 of 2: Edit recipes'

[YOCTO #2982]

Signed-off-by: Constantin Musca <constantinx.musca@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
7 years agohob: Don't set busy cursor on the root window, just our window
Ross Burton [Tue, 18 Sep 2012 14:55:24 +0000 (15:55 +0100)]
hob: Don't set busy cursor on the root window, just our window

[ YOCTO #3127 ]

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
7 years agohob: add a top bar when building process is stopped
Cristiana Voicu [Tue, 18 Sep 2012 15:15:55 +0000 (18:15 +0300)]
hob: add a top bar when building process is stopped

When a build was stopped, it wasn't obvious what to do next.
Now, on the page it appers a top bar with 3 buttons: "edit image",
"open log", "build new image"

[YOCTO #2537]
Signed-off-by: Cristiana Voicu <cristiana.voicu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
7 years agocooker: Clarify package/recipe wording
Trevor Woerner [Wed, 19 Sep 2012 03:00:33 +0000 (23:00 -0400)]
cooker: Clarify package/recipe wording

When the '-s' option is run, change the heading above the list of recipes
to say "Recipe Name" instead of "Package Name".

Signed-off-by: Trevor Woerner <twoerner@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
7 years agohob/packageselectionpage: "Cancel" button returns to "Image configuration" screen
Cristiana Voicu [Wed, 19 Sep 2012 07:36:57 +0000 (10:36 +0300)]
hob/packageselectionpage: "Cancel" button returns to "Image configuration" screen

Once package building completes, you can customise the list of
packages that will go into the final image. Once you have made
the changes you need, you can either build your image, or you
can exit the process and go back to the 'Image configuration'
screen by selecting 'Cancel'.

[YOCTO #3105]
Signed-off-by: Cristiana Voicu <cristiana.voicu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
7 years agohob: report event handler failures
Paul Eggleton [Wed, 19 Sep 2012 10:25:42 +0000 (11:25 +0100)]
hob: report event handler failures

If an event handler failed we were not recieving an error message -
parsing just "froze" at 99%. This is because we were expecting a
CommandFailure event and this never happened in the case of
RequestPackageInfo which is where the failure was occurring.

This also required tweaking the error formatting slightly, taking the
return value of the format function rather than the message property
since the latter only seems to contain the first line without the
traceback in the case of event handler failure. Other error cases were
tested and their message formatting is unaffected by this change.

Final part of the fix for [YOCTO #2651].

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
7 years agohob/settings: Remove stray "distro" combobox from simple settings
Bogdan Marinescu [Thu, 20 Sep 2012 10:27:56 +0000 (13:27 +0300)]
hob/settings: Remove stray "distro" combobox from simple settings

The "distro" combobox was moved to advanced settings, but it
was also present in simple settings. This patch removed it
from simple settings.

Signed-off-by: Bogdan Marinescu <bogdan.a.marinescu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
7 years agobuild/siggen: Add support for stamp 'clean' masks
Richard Purdie [Tue, 18 Sep 2012 10:32:04 +0000 (11:32 +0100)]
build/siggen: Add support for stamp 'clean' masks

Currently when we execute a task, we don't remove other potentially stale
stamps. This can mean if you switch between two different versions of a
recipe without a clean, the build can get very confused.

This patch adds in functionality to allow a wildcard expression of stamp
files to be removed when creating a new stamp file. This patch adds in
the core of the code to enable this but it also requires metadata support
to enable it.

When writing this improvement I went through several different options but
this was the only way I could find to allow things like noexec tasks to
function correctly (where stamps need to be created without the data store).

[YOCTO #2961]

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
7 years agofetch2/cvs: Fix parameter spacing
Richard Purdie [Thu, 20 Sep 2012 10:34:18 +0000 (11:34 +0100)]
fetch2/cvs: Fix parameter spacing

Add in misssing space between the parameters. Reported by
Jate Sujjavanich <Jate.Sujjavanich@myfuelmaster.com>.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
7 years agofetch2/cvs: Clean up various data store references
Richard Purdie [Thu, 20 Sep 2012 10:32:02 +0000 (11:32 +0100)]
fetch2/cvs: Clean up various data store references

The code in the CVS fetcher is elderly and there are simpler ways of
using the data store. This updates to use the modern APIs.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
7 years agofetch2/cvs: Fix localdata variable reference
Richard Purdie [Thu, 20 Sep 2012 10:25:19 +0000 (11:25 +0100)]
fetch2/cvs: Fix localdata variable reference

The localdata variable was removed, fix up a lost reference to this.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
7 years agohob: Fix settings dialog issues
Bogdan Marinescu [Fri, 14 Sep 2012 14:17:13 +0000 (17:17 +0300)]
hob: Fix settings dialog issues

Fix some issues with the settings dialog that were introduced as
a result of merging the fix for #2162.

[YOCTO #3117]

Signed-off-by: Bogdan Marinescu <bogdan.a.marinescu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
7 years agohob: rename 'View log' to 'Open log'
Constantin Musca [Fri, 14 Sep 2012 09:58:53 +0000 (12:58 +0300)]
hob: rename 'View log' to 'Open log'

Rename all the 'View log' buttons to 'Open log' for
consistency.

[YOCTO #3045]

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
7 years agocompat, event: use OrderedDict from py2.7 for the event handlers
Christopher Larson [Mon, 10 Sep 2012 22:23:19 +0000 (22:23 +0000)]
compat, event: use OrderedDict from py2.7 for the event handlers

This ensures that our event handlers get run in registration order, making the
behavior more deterministic. I pulled in the python2.7 OrderedDict to avoid
essentially reimplementing a version of it ourselves, figuring we can drop it
when we bump our required python version next.

Signed-off-by: Christopher Larson <chris_larson@mentor.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
7 years agoImplement 'settings' dialog as designed
Valentin Popa [Thu, 6 Sep 2012 07:58:32 +0000 (10:58 +0300)]
Implement 'settings' dialog as designed

[YOCTO #2162]

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
7 years agocooker: Fix priority for virtual recipes
Richard Purdie [Thu, 13 Sep 2012 14:25:51 +0000 (15:25 +0100)]
cooker: Fix priority for virtual recipes

When making filename comparisons for recipes for priority calculations,
we need to split off any virtual prefix. Without this, BBCLASSEXTEND
version of recipes don't follow the priority settings they should.

[YOCTO #2933]

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
7 years agohob/builddetailspage: Add tooltips to the build failed notification
Constantin Musca [Thu, 13 Sep 2012 11:33:34 +0000 (14:33 +0300)]
hob/builddetailspage: Add tooltips to the build failed notification

[YOCTO #3046]

Signed-off-by: Constantin Musca <constantinx.musca@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
7 years agolib/bb/event: improve handling of event queue on exit
Paul Eggleton [Tue, 11 Sep 2012 09:37:22 +0000 (10:37 +0100)]
lib/bb/event: improve handling of event queue on exit

If BitBake exits before a UI handler (server) has been registered, we
print the event queue; if there are any errors or other non-debug
messages just print these and suppress the rest of the message queue.

This improves the output when sanity check failures occur with OE-Core
by avoiding printing a long stream of uninformative debug messages.

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
7 years agohob: format error messages properly
Paul Eggleton [Tue, 11 Sep 2012 11:00:05 +0000 (12:00 +0100)]
hob: format error messages properly

Error messages that use arguments need to be formatted properly, or we
don't get the full message. Use a formatter to do this when an error
occurs.

Partial fix for [YOCTO #2983].

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
7 years agohob/imagedetailspage: change "FileCreated" label to "Files created"
Cristiana Voicu [Tue, 11 Sep 2012 07:40:06 +0000 (10:40 +0300)]
hob/imagedetailspage: change "FileCreated" label to "Files created"

[YOCTO #2998]

Signed-off-by: Cristiana Voicu <cristiana.voicu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
7 years agoFixed hob proxy tab tooltip text per review suggestions [YOCTO #2499]
Jessica Zhang [Tue, 11 Sep 2012 23:55:52 +0000 (16:55 -0700)]
Fixed hob proxy tab tooltip text per review suggestions [YOCTO #2499]

Signed-off-by: Jessica Zhang <jessica.zhang@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
7 years agohob: sort base image drop-down list
Paul Eggleton [Tue, 11 Sep 2012 16:52:01 +0000 (17:52 +0100)]
hob: sort base image drop-down list

Sort the list of base images to make it easier to find a specific image
in the list. Note that "Create your own image" still remains the last
item in the list.

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
7 years agolib/bb/command.py: ensure setVariable only sets values as strings
Paul Eggleton [Tue, 11 Sep 2012 16:52:00 +0000 (17:52 +0100)]
lib/bb/command.py: ensure setVariable only sets values as strings

This is the interface Hob uses to set variable values in many instances,
and at the moment it is possible that some of the values it passes are
not strings. If a non-string value gets into the datastore it can
trigger exceptions during parsing when we attempt to expand the variable
and substitute in the non-string value.

This fixes using the meta-ti layer within Hob - it currently has a
reference to BB_NUMBER_THREADS within a shell function and since this
is a variable that Hob was setting from its configuration as an integer,
due to the above this was triggering an ExpansionError.

Fixes [YOCTO #2875].

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
7 years agohob: don't reorder layers list
Paul Eggleton [Tue, 11 Sep 2012 16:51:59 +0000 (17:51 +0100)]
hob: don't reorder layers list

We cannot reorder this list - it must stay in the order shown in the
dialog (which may in future be configurable by the user).

Fixes [YOCTO #2649].

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
7 years agohob/packageselectionpage: restore selected packages
Cristiana Voicu [Mon, 10 Sep 2012 12:49:57 +0000 (15:49 +0300)]
hob/packageselectionpage: restore selected packages

After "Cancel" action, selected packages are restored to default.

[YOCTO #2984]
Signed-off-by: Cristiana Voicu <cristiana.voicu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
7 years agohob: rename task -> packagegroup in recipe selection
Paul Eggleton [Mon, 10 Sep 2012 17:26:46 +0000 (18:26 +0100)]
hob: rename task -> packagegroup in recipe selection

This changes the filtering to use the inheritance of
packagegroup.bbclass to determine if a recipe is a package group.

Also makes the tab tooltip text generic; these recipes could come from
any enabled layer, not just the default ones.

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
7 years agohob: ensure error message text is properly escaped
Paul Eggleton [Mon, 10 Sep 2012 17:11:17 +0000 (18:11 +0100)]
hob: ensure error message text is properly escaped

Our poor implementation of markup escaping was causing invalid
markup, leading to the error dialog being blank. Use the glib markup
escaping function provided by PyGTK+ to do this properly and avoid the
blank error dialogs.

Partial fix for [YOCTO #2983].

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
7 years agohob: use correct semantics for dealing with pkgdata
Paul Eggleton [Mon, 10 Sep 2012 14:36:29 +0000 (15:36 +0100)]
hob: use correct semantics for dealing with pkgdata

Some of these values may or may not be overridden on a per-package
basis, so handle them accordingly.

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
7 years agotinfoil: Add file inadvertently not committed
Richard Purdie [Mon, 10 Sep 2012 20:50:34 +0000 (21:50 +0100)]
tinfoil: Add file inadvertently not committed

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
7 years agocooker: fix handling of exceptions during exception handling
Paul Eggleton [Fri, 7 Sep 2012 15:22:54 +0000 (16:22 +0100)]
cooker: fix handling of exceptions during exception handling

If an exception occurs during handling another exception we were
getting a useless traceback such as the following, after which
BitBake froze:

ERROR: Command execution failed: Traceback (most recent call last):
  File "/home/user/poky/poky/bitbake/lib/bb/command.py", line 84, in runAsyncCommand
    self.cooker.updateCache()
  File "/home/user/poky/poky/bitbake/lib/bb/cooker.py", line 1207, in updateCache
    if not self.parser.parse_next():
  File "/home/user/poky/poky/bitbake/lib/bb/cooker.py", line 1694, in parse_next
    logger.error('Unable to parse %s', value.recipe,
AttributeError: 'exceptions.TypeError' object has no attribute 'recipe'

Fix this to print an actual traceback of the exception and exit
gracefully (well, as gracefully as possible under the circumstances).

The general fix for [YOCTO #2977].

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
7 years agofetch2: fix malformed URL causing a useless traceback
Paul Eggleton [Fri, 7 Sep 2012 15:22:53 +0000 (16:22 +0100)]
fetch2: fix malformed URL causing a useless traceback

The implementation of NoMethodError and MalformedUrl was broken - if you
just set self.args in an exception class to a string it treats it as a
list and then fails later on with a TypeError due to the number of
arguments not matching up.

This nasty exception during exception handling was breaking the normal
exception flow (fixed separately), which meant that if you had a
malformed URL or invalid protocol in SRC_URI you would get the
following:

ERROR: Command execution failed: Traceback (most recent call last):
  File "/home/user/poky/poky/bitbake/lib/bb/command.py", line 84, in runAsyncCommand
    self.cooker.updateCache()
  File "/home/user/poky/poky/bitbake/lib/bb/cooker.py", line 1207, in updateCache
    if not self.parser.parse_next():
  File "/home/user/poky/poky/bitbake/lib/bb/cooker.py", line 1694, in parse_next
    logger.error('Unable to parse %s', value.recipe,
AttributeError: 'exceptions.TypeError' object has no attribute 'recipe'

A specific fix for [YOCTO #2977].

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
7 years agohob/imageconfigurationpage: remove or_label reference
Cristiana Voicu [Mon, 10 Sep 2012 08:49:27 +0000 (11:49 +0300)]
hob/imageconfigurationpage: remove or_label reference

When or_label was removed, I forgot to remove also the references to it.

[YOCTO #3010]

Signed-off-by: Cristiana Voicu <cristiana.voicu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
7 years agofetch2: replace double slashes in paths in encodeurl()
Paul Eggleton [Fri, 7 Sep 2012 13:34:35 +0000 (14:34 +0100)]
fetch2: replace double slashes in paths in encodeurl()

This ensures that if all a MIRRORS entry does is add a slash, this does
not result in a circular loop.

Fixes [YOCTO #3073].

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
7 years agohob: print message when DISPLAY is not set
Cristiana Voicu [Fri, 7 Sep 2012 12:00:11 +0000 (15:00 +0300)]
hob: print message when DISPLAY is not set

If DISPLAY wasn't set, launching hob has printed a traceback
difficult to understand. Now, the exception is caught and it
shows a human message.

[YOCTO #2596]

Signed-off-by: Cristiana Voicu <cristiana.voicu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
7 years agoHob: change view of 'recipes' and 'packages' tables as ui design
Liming An [Wed, 5 Sep 2012 11:13:48 +0000 (19:13 +0800)]
Hob: change view of 'recipes' and 'packages' tables as ui design

changed the order of task tables,
cancel the 'description' column,
add the binb total number indicator, and so on

[YOCTO 2195]

Signed-off-by: Liming An <limingx.l.an@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
7 years agobitbake-diffsigs: allow specifying task & follow deps recursively
Paul Eggleton [Mon, 27 Aug 2012 20:44:35 +0000 (21:44 +0100)]
bitbake-diffsigs: allow specifying task & follow deps recursively

Add the ability to compare the two most recent runs of a specified task,
and follow dependent hash changes recursively. This enables you to trace
back and find exactly why a task was re-run after the fact.

Note that this relies on the metadata providing a function, hooked in
as bb.siggen.find_siginfo, which allows searching in the appropriate
places to find signature data files.

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
7 years agolib/bb/siggen.py: make signature dump/compare functions return a list
Paul Eggleton [Mon, 27 Aug 2012 20:44:34 +0000 (21:44 +0100)]
lib/bb/siggen.py: make signature dump/compare functions return a list

These functions become a little bit more reusable if they return a list
containing the output rather than just printing it.

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
7 years agolib/bb/siggen.py: insert a colon between class and recipe name
Paul Eggleton [Mon, 27 Aug 2012 20:44:33 +0000 (21:44 +0100)]
lib/bb/siggen.py: insert a colon between class and recipe name

before:
  virtual:nativeautomake_1.12.1.bb.do_compile
after:
  virtual:native:automake_1.12.1.bb.do_compile

This separation ensures that the key is readable, and if necessary,
parsable.

Unfortunately this invalidates previous native sstate signatures with
OE-Core - not much that can be done about that; however that occurs
frequently during the development cycle so it's par for the course.

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
7 years agolib/bb/siggen: replace tabs with spaces
Paul Eggleton [Mon, 27 Aug 2012 20:44:32 +0000 (21:44 +0100)]
lib/bb/siggen: replace tabs with spaces

We had one section of the code mixing tabs with spaces, which is
particularly undesirable with python code.

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
7 years agotinfoil: create simple interface for bitbake-based utilities
Paul Eggleton [Mon, 27 Aug 2012 20:44:31 +0000 (21:44 +0100)]
tinfoil: create simple interface for bitbake-based utilities

The code to initialise BitBake within bitbake-layers should be useful
for other utilities that need to query configuration or recipe
information, so refactor it out into its own class, "Tinfoil" (to
continue with our cooking metaphor).

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
7 years agocrumbs/hig: Save toolchain in settings
Bogdan Marinescu [Wed, 5 Sep 2012 10:11:25 +0000 (13:11 +0300)]
crumbs/hig: Save toolchain in settings

Toolchain was not saved in the settings dialog ("Output" tab).

[YOCTO #2695]

Signed-off-by: Bogdan Marinescu <bogdan.a.marinescu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
7 years agohob: The 'run image' and 'deploy image' dialogs text and alignment corrections
Cristiana Voicu [Wed, 5 Sep 2012 07:50:33 +0000 (10:50 +0300)]
hob: The 'run image' and 'deploy image' dialogs text and alignment corrections

-changed the text shown by both dialogs text
-make small tweaks to alignment

[YOCTO #2999]

Signed-off-by: Cristiana Voicu <cristiana.voicu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
7 years agohob/imagedetailspage: "Image ready" icon appers only after the image was generated
Cristiana Voicu [Mon, 3 Sep 2012 11:22:04 +0000 (14:22 +0300)]
hob/imagedetailspage: "Image ready" icon appers only after the image was generated

Now, "Your image is ready" icon doesn't appear when you come back on Imagedetails
page. It appears only after the image was generated.

[YOCTO #2984]

Signed-off-by: Cristiana Voicu <cristiana.voicu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
7 years agohobwidget: Button theme is taken from host, fix
Ioana Grigoropol [Mon, 3 Sep 2012 09:51:06 +0000 (12:51 +0300)]
hobwidget: Button theme is taken from host, fix

- All buttons in the interface inherit a BaseHobButton that
  use the gtk settings for buttons from the host;
- Removed 'or' label between actions on image details page

[Yocto #3011]

Signed-off-by: Ioana Grigoropol <ioanax.grigoropol@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
7 years agofetch2: unpack rpm, ipk and deb binary package
Robert Yang [Sun, 2 Sep 2012 04:08:51 +0000 (12:08 +0800)]
fetch2: unpack rpm, ipk and deb binary package

* Unpack the ".rpm" binary package (only .src.rpm in the past)

* Unpack the .deb and .ipk binary package, their unpack commands are the same.

* This is useful for binary package recipe.

[YOCTO #1592]

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
7 years agohob/recipe&packageselectionpage: Change "Back" button to "Cancel" button
Cristiana Voicu [Fri, 31 Aug 2012 14:10:11 +0000 (17:10 +0300)]
hob/recipe&packageselectionpage: Change "Back" button to "Cancel" button

"Back" button placed on RecipeSelectionPage and PackageSelectionPage
was changed to "Cancel" button to avoid any confusion.
Also, it was placed next to the other buttons on the page.

[YOCTO #3012]

Signed-off-by: Cristiana Voicu <cristiana.voicu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
7 years agohob/imageconfigurationpage: Set secondary action for "Edit image" button
Cristiana Voicu [Fri, 31 Aug 2012 11:37:58 +0000 (14:37 +0300)]
hob/imageconfigurationpage: Set secondary action for "Edit image" button

The image configuration screen should have only one primary action.
"Edit image" button has now secondary action, and also I have removed
"or" label.

[YOCTO #3010]

Signed-off-by: Cristiana Voicu <cristiana.voicu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
7 years agohob/packageselectionpage: Add tooltips to 'Included' and 'All packages' tab and ...
Cristiana Voicu [Fri, 31 Aug 2012 08:48:23 +0000 (11:48 +0300)]
hob/packageselectionpage: Add tooltips to 'Included' and 'All packages' tab and 'Search' field

For the 'Included' tab: "The packages currently included for your image"
For the 'All packages' tab: "All packages that have been built"
For the 'Search' field: "Enter a package name to find it"

[YOCTO #2322]

Signed-off-by: Cristiana Voicu <cristiana.voicu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
7 years agohob/packageselectionpage: Correctly restore previously selected packages
Cristiana Voicu [Fri, 31 Aug 2012 07:00:47 +0000 (10:00 +0300)]
hob/packageselectionpage: Correctly restore previously selected packages

"Back" button from "Packageselection" page now restores correctly previously
selected packages list. Till now "Back" button was implemented just to switch
pages, not to cancel changes you have made to packages list.

[YOCTO #2984]

Signed-off-by: Cristiana Voicu <cristiana.voicu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
7 years agohob2: remove class hcc
Kang Kai [Tue, 28 Aug 2012 02:47:20 +0000 (10:47 +0800)]
hob2: remove class hcc

Because class hcc is useless, remove it.

Signed-off-by: Kang Kai <kai.kang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
7 years agohob2: remove the hard-coded images map
Kang Kai [Tue, 28 Aug 2012 02:47:19 +0000 (10:47 +0800)]
hob2: remove the hard-coded images map

[Yocto #2795]

When a new image type added, the hob will crash because the new type is
not in the hard-coded image dictionary.

For most of the image types, they are same with the image file's
extension name. So use variable "IMAGE_EXTENSION_difftype" to map the
image type which is diff with the image file extension name, such as
type "live". And the variable(s) will be set in image_types.bbclass.

Signed-off-by: Kang Kai <kai.kang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
7 years agotaskdata: Don't add dependencies on tasks that don't exist
Richard Purdie [Tue, 28 Aug 2012 15:11:34 +0000 (08:11 -0700)]
taskdata: Don't add dependencies on tasks that don't exist

"bitbake meta-toolchain" with qemu image testing enabled causes problems
since it adds a task after do_rootfs which doesn't exist in this case.

We should simply ignore these extra dependencies rather than adding
them in which is what this patch does (adding a debug message when this
happens).

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
7 years agobin/bitbake: Clarify wording in help output for -s
Trevor Woerner [Sat, 25 Aug 2012 23:26:45 +0000 (19:26 -0400)]
bin/bitbake: Clarify wording in help output for -s

The '-s' option shows (input) recipes, not (built/output) packages. Clarify
the help wording for this option so it is consistent with how bitbake defines
recipes and packages.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
7 years agoast: Store anonymous python function contents in the datstore
Richard Purdie [Wed, 22 Aug 2012 19:01:55 +0000 (20:01 +0100)]
ast: Store anonymous python function contents in the datstore

This is useful if we need to disable part of one during a backtrace
for debugging purposes.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
7 years agoast: Extract text variable in PythonMethodNode
Richard Purdie [Wed, 22 Aug 2012 12:54:47 +0000 (13:54 +0100)]
ast: Extract text variable in PythonMethodNode

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
7 years agoast: Rename PythonMethodNode define variable to modulename
Richard Purdie [Wed, 22 Aug 2012 12:54:01 +0000 (13:54 +0100)]
ast: Rename PythonMethodNode define variable to modulename

It was hard for me to understand what the define variable was, modulename
is hopefully a bit better.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
7 years agomethodpool: Clean up the parsed module list handling to be slightly less insane
Richard Purdie [Wed, 22 Aug 2012 12:53:11 +0000 (13:53 +0100)]
methodpool: Clean up the parsed module list handling to be slightly less insane

This removes some dubious functions and replaces them with a simpler, cleaner
API which better describes what the code is doing. Unused code/variables are
removed and comments tweaked.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
7 years agomethodpool: Remove unused check_insert_method function
Richard Purdie [Wed, 22 Aug 2012 12:52:24 +0000 (13:52 +0100)]
methodpool: Remove unused check_insert_method function

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
7 years agocooker: Add explict handling of BBHandledException for parsing failures
Richard Purdie [Wed, 22 Aug 2012 21:40:14 +0000 (22:40 +0100)]
cooker: Add explict handling of BBHandledException for parsing failures

This removes some unnecessary tracebacks

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
7 years agocooker: Ensure parsing failures stop the build
Richard Purdie [Wed, 22 Aug 2012 19:33:39 +0000 (20:33 +0100)]
cooker: Ensure parsing failures stop the build

Currently parsing failures still allow bitbake to continue on and try
and execute a build. This is clearly a bad idea and this patch adds in
more correct error handling and stops the build.

The use of sys.exit is nasty but this patches other usage in this function
so is at least consisent and its better than the current situation of
trying to execure a half parsed set of recipes. There are probably better
ways this could be improved to use to stop the build.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
7 years agoutils.py: Once we've printed errors messages, suppress the backtrace
Richard Purdie [Wed, 22 Aug 2012 19:02:39 +0000 (20:02 +0100)]
utils.py: Once we've printed errors messages, suppress the backtrace

Adding a generic backtrace to better_compile and better_exec is pointless,
therefore reraise the exception as a bb.BBHandledException so the
generic code doesn't confuse the user even more.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
7 years agoutils.py: Try harder to extract good traceback information by querying the datastore
Richard Purdie [Wed, 22 Aug 2012 19:01:12 +0000 (20:01 +0100)]
utils.py: Try harder to extract good traceback information by querying the datastore

Currently as soon as execution passes outside the code fragment being
executed by better_exec, we don't get any good traceback information,
just a likely obscure reference to some function name which may
or may not be identifiable.

This patch adds code to query the datastore if present, allowing a more
meaningful back trace to be displayed in many cases.

[YOCTO #2981]

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
7 years agocooker: fix traceback when using -b with skipped recipe
Paul Eggleton [Wed, 22 Aug 2012 15:14:38 +0000 (16:14 +0100)]
cooker: fix traceback when using -b with skipped recipe

If a recipe is skipped during parsing for whatever reason, check and
report this as an error rather than trying to use the data that is sent
back and failing.

Fixes [YOCTO #2976].

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
7 years agoevent/ast: Use better_exec instead of simple_exec
Richard Purdie [Tue, 21 Aug 2012 16:25:07 +0000 (16:25 +0000)]
event/ast: Use better_exec instead of simple_exec

This improves the stacktraces dumped by bitbake when for example anonymous
python functions fail.

Also default to passing code strings to better_exec to match the behaviour of
simple_exec to aid the transition.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
7 years agoui: Improve error message if bitbake cannot import python curses module
Konrad Scherer [Tue, 21 Aug 2012 21:05:58 +0000 (16:05 -0500)]
ui: Improve error message if bitbake cannot import python curses module

On some SuSE systems, the curses python module is not installed by default.
Instead of a python failure, we want a nicer error message.

(On SuSE systems the package is typically python-curses.)

Signed-off-by: Konrad Scherer <Konrad.Scherer@windriver.com>
Signed-off-by: Jeff Polk <jeff.polk@windriver.com>
Reword commit message, rebase to latest bitbake.

Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>