[OE-core] [PATCH 07/15] bin/bitbake: Ensure early errors are shown to the user

Jonathan Liu net147 at gmail.com
Mon May 13 01:31:34 UTC 2013


On 7 May 2013 22:55, Richard Purdie <richard.purdie at linuxfoundation.org>wrote:

> Currently if errors occur early in the init process, the errors may
> not be shown to the user. This change ensures that if a failure does
> occur, the messages are flushed from the queue and shown to the user.
>
> Signed-off-by: Richard Purdie <richard.purdie at linuxfoundation.org>
> ---
>  bitbake/bin/bitbake |   21 ++++++++++++++++-----
>  1 file changed, 16 insertions(+), 5 deletions(-)
>
> diff --git a/bitbake/bin/bitbake b/bitbake/bin/bitbake
> index 0e69207..e05ff5b 100755
> --- a/bitbake/bin/bitbake
> +++ b/bitbake/bin/bitbake
> @@ -240,11 +240,22 @@ Default BBFILES are the .bb files in the current
> directory.""")
>
>      idle = server.getServerIdleCB()
>
> -    cooker = bb.cooker.BBCooker(configuration, idle, initialenv)
> -    cooker.parseCommandLine()
> -
> -    server.addcooker(cooker)
> -    server.saveConnectionDetails()
> +    try:
> +        cooker = bb.cooker.BBCooker(configuration, idle, initialenv)
> +        cooker.parseCommandLine()
> +
> +        server.addcooker(cooker)
> +        server.saveConnectionDetails()
> +    except:
> +        while True:
> +            import queue
>
import queue is Python 3. It is import Queue in Python 2.
If I run bitbake when it is already running, I get:

ImportError: No module named queue
ERROR: Only one copy of bitbake should be run against a build directory


> +            try:
> +                event = server.event_queue.get(block=False)
> +            except (queue.Empty, IOError):
> +                break
> +            if isinstance(event, logging.LogRecord):
> +                logger.handle(event)
> +        raise
>      server.detach()
>
>      # Should no longer need to ever reference cooker
> --
> 1.7.10.4
>
>
> _______________________________________________
> Openembedded-core mailing list
> Openembedded-core at lists.openembedded.org
> http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core
>

Regards,
Jonathan
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openembedded.org/pipermail/openembedded-core/attachments/20130513/97834316/attachment-0001.html>


More information about the Openembedded-core mailing list