]> git.ipfire.org Git - thirdparty/openembedded/openembedded-core-contrib.git/log
thirdparty/openembedded/openembedded-core-contrib.git
12 years agohob: replace the init cooker with reset in order to keep the history
Cristiana Voicu [Thu, 20 Jun 2013 14:21:16 +0000 (17:21 +0300)] 
hob: replace the init cooker with reset in order to keep the history

When the cooker initialization is called, the variables history is lost.
It need a reset, in order to load the configuration files.
Also, concatenated the value for INHERIT variable.

Signed-off-by: Cristiana Voicu <cristiana.voicu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 years agobitbake: call the initConfiguration when reparsing
Cristiana Voicu [Thu, 20 Jun 2013 14:21:15 +0000 (17:21 +0300)] 
bitbake: call the initConfiguration when reparsing

As it is implemented now, when parsing the configuration files is
needed, it also needs an initialization.
Also, implemented a function to create an extra configuration files
which can be used as postfile/prefiles when parsing.

Signed-off-by: Cristiana Voicu <cristiana.voicu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 years agocooker: Ensure configuration matches variable tracking state
Richard Purdie [Thu, 20 Jun 2013 13:07:18 +0000 (13:07 +0000)] 
cooker: Ensure configuration matches variable tracking state

When we reset, the current tracking value may change unexpectedly. This
patch ensures that the default value is preserved over a datastore reset.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 years agobuild.py: Cleanup data store references
Richard Purdie [Thu, 20 Jun 2013 13:00:59 +0000 (13:00 +0000)] 
build.py: Cleanup data store references

Clean up a number of old style accesses to the datastore.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 years agobitbake: remove the function for reparse because it does nothing
Cristiana Voicu [Wed, 19 Jun 2013 14:23:28 +0000 (17:23 +0300)] 
bitbake: remove the function for reparse because it does nothing

The command for reparse does nothing, so I have managed to remove it,
because it can be misleading. When a reparse is needed, it can be used
the parse function.

Signed-off-by: Cristiana Voicu <cristiana.voicu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 years agoCorrect a typo
Peter Kjellerstedt [Thu, 20 Jun 2013 09:35:49 +0000 (11:35 +0200)] 
Correct a typo

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 years agoAllow checksums to be used for files retrieved using SFTP
Peter Kjellerstedt [Thu, 20 Jun 2013 09:35:48 +0000 (11:35 +0200)] 
Allow checksums to be used for files retrieved using SFTP

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 years agohob: check if imageconfiguration page has the attribute 'warnings_bar'
Cristiana Voicu [Thu, 20 Jun 2013 11:16:01 +0000 (14:16 +0300)] 
hob: check if imageconfiguration page has the attribute 'warnings_bar'

[YOCTO #4571]
Signed-off-by: Cristiana Voicu <cristiana.voicu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 years agobitbake & hob: modify some commands and call them from hob
Cristiana Voicu [Thu, 20 Jun 2013 10:19:42 +0000 (13:19 +0300)] 
bitbake & hob: modify some commands and call them from hob

This patch adds a new command to create an extra configuration
file, in order to create it from Hob.
Also, it calls the enable/disable data tracking when needed.
Modified the prefiles and postfiles variables because the cooker
expects some lists.

Signed-off-by: Cristiana Voicu <cristiana.voicu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 years agohob: remove the rest of the old template functionality
Cristiana Voicu [Thu, 20 Jun 2013 10:19:41 +0000 (13:19 +0300)] 
hob: remove the rest of the old template functionality

Until now, some configuration settings was saved in a hob specific
directory. From now on, it will be saved in conf directory through bitbake.

Signed-off-by: Cristiana Voicu <cristiana.voicu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 years agofetch2: Enhance error message for BB_NO_NETWORK
Richard Purdie [Wed, 19 Jun 2013 13:06:08 +0000 (14:06 +0100)] 
fetch2: Enhance error message for BB_NO_NETWORK

BB_NO_NETWORK can be set by bitbake internally by the use of
BB_FETCH_PREMIRRORONLY so update the error message to give users a
hint about this.

[YOCTO #3222]

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 years agorunqueue/build: Add recideptask flag
Richard Purdie [Wed, 19 Jun 2013 13:03:39 +0000 (14:03 +0100)] 
runqueue/build: Add recideptask flag

Currently, tasks like fetchall are slightly broken since if a recipe
has specific [depends] which occur after do_fetch and add items not listed
in DEPENDS and RDEPENDS, they are not caught by recrdeptask. We've gone
around in circles on this issue (e.g
http://git.yoctoproject.org/cgit.cgi/poky/commit/bitbake/lib/bb/runqueue.py?id=5fa6036d49ed7befe6ad50ec95c61a50aec48195
) and in many cases the behaviour of recrdepends is correct but tasks like
fetchall need the other behaviour.

To address this we add a recideptask flag which can be used in conjuction
with the recrdeptask flag to specify which task to to the inspection upon.
This means entries like do_rootfs[depends] which have do_fetch tasks are
caught and run.

I'm not 100% happy with needing another flag but I don't see any rational
way to get the correct behaviour in all cases without it.

[YOCTO #4597]

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 years agobitbake: read BBSERVER environement for remote server
Alexandru DAMIAN [Mon, 17 Jun 2013 11:11:53 +0000 (12:11 +0100)] 
bitbake: read BBSERVER environement for remote server

This change allows bitbake to connect to a remote server
by reading the BBSERVER environment variable and effecting
the config. Basically a shortcut to the command line parameters.

Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 years agoknotty, bitbake: add option to terminate a remote server
Alexandru DAMIAN [Mon, 17 Jun 2013 11:11:52 +0000 (12:11 +0100)] 
knotty, bitbake: add option to terminate a remote server

I add an option to terminate a remote server gracefully
as not to need a kill command.

Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 years agoknotty, xmlrpc: add observer-only mode
Alexandru DAMIAN [Mon, 17 Jun 2013 11:11:51 +0000 (12:11 +0100)] 
knotty, xmlrpc: add observer-only mode

I add an observer only mode for the knotty UI and
the XMLRPC server that will allow the UI to register
a callback with a server in order to receive events.

The observer-UI is able to send read-only commands to the
server, and also is able to register as an event handler.

Read-only commands are the commands that do not change
the state of the server and have been marked as such in
the command module.

The observer can switch to a full client if it calls addClient
at any time, and the server has no other client running.

Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 years agoutils: Fix multiprocessing pool reference
Richard Purdie [Fri, 14 Jun 2013 21:00:29 +0000 (22:00 +0100)] 
utils: Fix multiprocessing pool reference

Interestingly the previous version comparision was broken and we were always using
the compatibility code, masking this bug. Oops.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 years agocompat/server/utils: Jettison pre python 2.7.3 workarounds
Richard Purdie [Fri, 14 Jun 2013 16:22:51 +0000 (16:22 +0000)] 
compat/server/utils: Jettison pre python 2.7.3 workarounds

Now we've moved to require python 2.7.3, we can jettison the compatibility
workarounds/hacks for older python versions.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 years agorunqueue: Improve handling of failing setscene tasks with hard dependencies
Richard Purdie [Fri, 14 Jun 2013 16:03:45 +0000 (16:03 +0000)] 
runqueue: Improve handling of failing setscene tasks with hard dependencies

If a setscene task has a hard dependency on a task like pseudo-native, its
expected that the setscene task will not run unless the dependency is met.

This adds code to ensure that is the case, otherwise a bug would show up
with a usecase like:

bitbake gnome-common
bitbake pseudo-native -c cleansstate
bitbake gnome-common -c clean
bitbake gnome-common

With the double wrapper script environment, we'd not see issues like
this as it would be masked. The problem theoretically affects code like
useradd too as well as anything using a sstate postinstall.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 years agoxmlrpc: removes the event servers controller
Alexandru DAMIAN [Fri, 7 Jun 2013 16:03:06 +0000 (17:03 +0100)] 
xmlrpc: removes the event servers controller

XMLRPC API ran a XMLRPC server at port+2 in order
to provide endpoints to register an event server
in which to dump the events.

This is no longer used, so we remove it.

Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 years agobitbake: Add event mask flag support
Bogdan Marinescu [Fri, 31 May 2013 14:19:14 +0000 (14:19 +0000)] 
bitbake: Add event mask flag support

Add a flag to event handlers which lists the events a given handler wishes to
process. By default event handlers recieve all events but this means
we can stop running code in many cases if we know it doesn't want the event.

This is part of the fix for YOCTO #3812, but implements filtering only
for class event handlers; the other part (events filter for UIs) will be
the subject of a different patch.

Signed-off-by: Bogdan Marinescu <bogdan.a.marinescu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 years agobitbake: Update version to 1.19.1
Richard Purdie [Fri, 7 Jun 2013 17:14:10 +0000 (18:14 +0100)] 
bitbake: Update version to 1.19.1

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 years agobitbake: Bump minimum python version to 2.7.3
Richard Purdie [Fri, 7 Jun 2013 17:14:46 +0000 (18:14 +0100)] 
bitbake: Bump minimum python version to 2.7.3

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 years agoprserv: Adapt autostart to bitbake-worker
Richard Purdie [Fri, 7 Jun 2013 17:13:04 +0000 (18:13 +0100)] 
prserv: Adapt autostart to bitbake-worker

With the change to bitbake-worker we need to ensure the workers know
how to contact the PR service, the magic 0 port and singleton is
no longer enough.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 years agorunqueue: Spawn a separate worker for fakeroot tasks
Richard Purdie [Fri, 7 Jun 2013 17:13:04 +0000 (18:13 +0100)] 
runqueue: Spawn a separate worker for fakeroot tasks

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 years agorunqueue: Abstract the start and teardown worker functions
Richard Purdie [Fri, 7 Jun 2013 17:12:30 +0000 (18:12 +0100)] 
runqueue: Abstract the start and teardown worker functions

We're going to need a fakeroot/pseudo version of the worker so
abstract the code to start the worker process.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 years agorunqueue: Move the bitbake-worker execution to a higher level
Richard Purdie [Fri, 7 Jun 2013 17:11:49 +0000 (18:11 +0100)] 
runqueue: Move the bitbake-worker execution to a higher level

The worker was being executed by each execution queue so would get
constructed twice for each build. This is wasteful so move execution
to the main runqueue so we only have to start the worker once.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 years agorunqueue: Split runqueue to use bitbake-worker
Richard Purdie [Fri, 7 Jun 2013 17:11:09 +0000 (18:11 +0100)] 
runqueue: Split runqueue to use bitbake-worker

This is a pretty fundamental change to the way bitbake operates. It
splits out the task execution part of runqueue into a completely
separately exec'd process called bitbake-worker.

This means that the separate process has to build its own datastore and
that configuration needs to be passed from the cooker over to the
bitbake worker process.

Known issues:

* Hob is broken with this patch since it writes to the configuration
  and that configuration isn't preserved in bitbake-worker.
* We create a worker for setscene, then a new worker for the main task
  execution. This is wasteful but shouldn't be hard to fix.
* We probably send too much data over to bitbake-worker, need to
  see if we can streamline it.

These are issues which will be followed up in subsequent patches.

This patch sets the groundwork for the removal of the double bitbake
execution for psuedo which will be in a follow on patch.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 years agofetch2: Fix AUTOINC handling
Richard Purdie [Fri, 7 Jun 2013 17:10:36 +0000 (18:10 +0100)] 
fetch2: Fix AUTOINC handling

AUTOINC was meant to appear once at the start of the version string.
The list of names may not be sorted meaning it could get inserted in
the middle. This patch simplifies the code and ensures it appears at
the start.

Include cache version bump to ensure the cache picks up these changes.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 years agobitbake-layers: fix for move of data object to cooker
Paul Eggleton [Sun, 9 Jun 2013 10:15:35 +0000 (11:15 +0100)] 
bitbake-layers: fix for move of data object to cooker

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 years agotinfoil: fix for move of data attribute to cooker
Paul Eggleton [Sun, 9 Jun 2013 10:15:34 +0000 (11:15 +0100)] 
tinfoil: fix for move of data attribute to cooker

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 years agolib/bb/cache.py: invalidate cache when file checksum entry no longer exists
Paul Eggleton [Tue, 4 Jun 2013 08:59:37 +0000 (09:59 +0100)] 
lib/bb/cache.py: invalidate cache when file checksum entry no longer exists

Go through the cached list of file checksums and check if any of the
files no longer exist; if any are missing then invalidate the cached
recipe, which will force it to be reparsed and thus force the list of
files to be collected again. This prevents a warning when moving a file
to a different location that is still picked up by the recipe, e.g.
moving a file from a "files" subdirectory to one named with the recipe
name (${BPN}).

Fixes [YOCTO #4474].

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 years agocooker: Split data from configuration
Richard Purdie [Thu, 30 May 2013 12:26:58 +0000 (12:26 +0000)] 
cooker: Split data from configuration

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 years ago.gitignore: add vim tag and swp files
Alexandru DAMIAN [Fri, 31 May 2013 10:50:49 +0000 (11:50 +0100)] 
.gitignore: add vim tag and swp files

Modify gitignore as to include popular editor's temporary
files, and lookup tags file.

Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 years agobitbake: Improve remote server handling
Alexandru DAMIAN [Fri, 31 May 2013 11:06:48 +0000 (12:06 +0100)] 
bitbake: Improve remote server handling

Two fixes in bitbake related to running remote servers -
* can now specify correctly the bind port
* the information in print conforms to common server infrastructure

Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 years agoxmlrpc: Allow server to remain memory resident
Alexandru DAMIAN [Fri, 31 May 2013 11:06:47 +0000 (12:06 +0100)] 
xmlrpc: Allow server to remain memory resident

This patch enables the XMLRPC server to remain
resident in memory after a task is run, and to accept
a new controlling client. To check the server after
task completion, do

lsof bitbake.lock

in the build directory. Kill the server with kill.

Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 years agobitbake server: create common server infrastructure
Alexandru DAMIAN [Fri, 31 May 2013 11:06:46 +0000 (12:06 +0100)] 
bitbake server: create common server infrastructure

In an attempt to minimize code duplication, create
clear interfaces, and maximize code reuse through OOP,
bb.server adds base classes for the BitBakeServer,
BitBakeServerConnection and actual server implementations
instructed in particular server types.

These classes document the minimum interfaces that the
derived classes must implement, and provide boilerplate code.

Changes to None, Process and XMLRPC servers as to use
the common server infrastructure.

Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 years agoAdded distroy signal to information dialogs
Andrei Dinu [Wed, 29 May 2013 08:42:22 +0000 (11:42 +0300)] 
Added distroy signal to information dialogs

Added distroy signal to information dialogs
so that when pressing the close button,
the dialog would close.

[HOB #4568]

Signed-off-by: Andrei Dinu <andrei.adrianx.dinu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 years agolib/bb/cache.py: Change debugging note to a debug message
Mark Hatle [Wed, 29 May 2013 04:01:18 +0000 (23:01 -0500)] 
lib/bb/cache.py: Change debugging note to a debug message

Some apparently debugging was left in in a previous commit.  This caused
bitbake to return a list of bbappends when things changed from the cache.

Make this a proper debug message.

Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 years agoprserv: Unbreak after bb.server changes
Richard Purdie [Thu, 30 May 2013 17:05:14 +0000 (17:05 +0000)] 
prserv: Unbreak after bb.server changes

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 years agocookerdata: Fix tinfoil by adding missinge extra_caches default
Richard Purdie [Thu, 30 May 2013 12:37:12 +0000 (12:37 +0000)] 
cookerdata: Fix tinfoil by adding missinge extra_caches default

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 years agobitbake: xmlrpc remote server
Alexandru DAMIAN [Tue, 28 May 2013 16:52:02 +0000 (16:52 +0000)] 
bitbake: xmlrpc remote server

Added code in XMLRPC server that creates a stub local server
for a client-only connection and is able to connect to
a remote server, and receive events from the remote server.

Added the option to start a client with a remote server in
bitbake.

Original code by Bogdan Marinescu <bogdan.a.marinescu@intel.com>

Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 years agobitbake: xmlrpc transport has identification token
Alexandru DAMIAN [Tue, 28 May 2013 13:55:09 +0000 (13:55 +0000)] 
bitbake: xmlrpc transport has identification token

In order to be able to identify different clients over a
stateless XMLRPC connection, we add a custom header named
Bitbake-token, which identifies each client.

We refactor the rest of the code to use the new transport.

Based on a patch by Bogdan Marinescu <bogdan.a.marinescu@intel.com>

Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 years agobitbake: move start server code in a separate function
Alexandru DAMIAN [Tue, 28 May 2013 13:32:48 +0000 (13:32 +0000)] 
bitbake: move start server code in a separate function

This is a code sanitization targeted at making further
server-related changes easier (launch a server
separately or creating a mockup-server) to do.

Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 years agobitbake: move extra cache collection out of cooker
Alexandru DAMIAN [Tue, 28 May 2013 12:49:55 +0000 (12:49 +0000)] 
bitbake: move extra cache collection out of cooker

The collection of the extra caching data should not
be performed by the cooker, but supplied to it.
This patch will also streamline the code for launching servers
without a UI attached.

Based on a patch by Bogdan Marinescu <bogdan.a.marinescu@intel.com>

Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 years agobitbake: retrieve the entire ui module in launcher
Alexandru DAMIAN [Tue, 28 May 2013 12:31:45 +0000 (12:31 +0000)] 
bitbake: retrieve the entire ui module in launcher

Slight change in bitbake as to retrieve the entire UI module
for further processing instead of just the main function.

Based on a patch by Bogdan Marinescu <bogdan.a.marinescu@intel.com>

Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 years agofetch2: Fix missing function call
Richard Purdie [Thu, 30 May 2013 08:50:41 +0000 (09:50 +0100)] 
fetch2: Fix missing function call

Fix the issue:

File: '/srv/home/pokybuild/yocto-autobuilder-new/yocto-slave/build-appliance/build/bitbake/lib/bb/fetch2/__init__.py', lineno: 813, function: try_mirror_url
     0809:    except bb.fetch2.BBFetchException as e:
     0810:        if isinstance(e, ChecksumError):
     0811:            logger.warn("Mirror checksum failure for url %s (original url: %s)\nCleaning and trying again." % (newuri, origud.url))
     0812:            logger.warn(str(e))
 *** 0813:            self.rename_bad_checksum(ud, e.checksum)
     0814:        elif isinstance(e, NoChecksumError):
     0815:            raise
     0816:        else:
     0817:            logger.debug(1, "Mirror fetch failure for url %s (original url: %s)" % (newuri, origud.url))
Exception: NameError: global name 'self' is not defined

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 years agoserver/bitbake: Remove launchUI method
Richard Purdie [Tue, 28 May 2013 13:32:53 +0000 (14:32 +0100)] 
server/bitbake: Remove launchUI method

With the removal of the none server type, we can remove the launchUI
method and simplify the code slightly.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 years agoserver: Remove none server
Richard Purdie [Tue, 28 May 2013 13:28:30 +0000 (14:28 +0100)] 
server: Remove none server

The process server backend has been serving well as the default for a long
time now and the UI model is much better thought out that it used to be. With
the move to make bitbake a memory resident process, the none server is now
looking rather pointless and complicates the code needlessly. Lets therefore
now remove it.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 years agocooker/cookerdata: Fix up event handling for hob
Richard Purdie [Fri, 24 May 2013 12:54:59 +0000 (12:54 +0000)] 
cooker/cookerdata: Fix up event handling for hob

The init function call was clobbering data hob relies on injecting, fix
this so the data injected by hob isn't overwritten.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 years agobuild: Avoid empty promises
Richard Purdie [Fri, 24 May 2013 10:28:38 +0000 (11:28 +0100)] 
build: Avoid empty promises

The "see xxx for further information" is misleading since it is just
the same information. Clarify just to mention the that this is the location
of the logfile without any empty promise.

[YOCTO #4343]

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 years agobitbake-layers: fix show-appends and flatten for recent cooker changes
Paul Eggleton [Fri, 24 May 2013 10:12:50 +0000 (11:12 +0100)] 
bitbake-layers: fix show-appends and flatten for recent cooker changes

Fixes the show-appends and flatten subcommands for recent refactoring in
cooker.

[YOCTO #4536]
[YOCTO #4535]

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 years agocooker/cookerdata: Improve configuration object handling
Richard Purdie [Fri, 24 May 2013 09:27:25 +0000 (09:27 +0000)] 
cooker/cookerdata: Improve configuration object handling

Originally it seemed like a good idea to keep the parameters around. Having
seen this in real life use, its incorrect, we should pull all the data we need
into the cooker's configuguration and then use this to build the datastore.

Being able to just build the datastore from the parameters seemed like a good
idea but having a dummy cooker configuration object is now looking like
the better option.

This also fixes failures in hob since the parseFiles command can call
into cooker directly now and reset the configuration prefiles and postfiles
at will, rather than the indirect calls before which were breaking the datastore
(e.g. BBPATH wasn't set).

The cleanup this allows in tinfoil illustrates how this change makes more sense.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 years agofetch2: Fix missing assignment
Richard Purdie [Thu, 23 May 2013 10:51:04 +0000 (11:51 +0100)] 
fetch2: Fix missing assignment

The assignment to True was missing from the code, well spotted Saul!

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 years agocooker/cookerdata/event: Improve class handlers management
Richard Purdie [Thu, 23 May 2013 09:50:30 +0000 (10:50 +0100)] 
cooker/cookerdata/event: Improve class handlers management

Similarly to the execution context changes, establish better lifetime
management API of the class event handlers.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 years agocooker/cookerdata/utils: Improve context management
Richard Purdie [Thu, 23 May 2013 09:49:57 +0000 (10:49 +0100)] 
cooker/cookerdata/utils: Improve context management

The current execution context management for bitbake is ugly and the
use of a global variable is nasty. Fixing that is hard, however we
can improve things to start to establish an API for accessing
and changing that context.

This patch also adds in an explicit reset of the context when we reparse
the configuration data which starts to improve the lifecycle of the data
in setups like hob.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 years agoevent: Drop Handled/NotHandled status return values
Richard Purdie [Thu, 23 May 2013 09:49:06 +0000 (10:49 +0100)] 
event: Drop Handled/NotHandled status return values

These have long since been deprecated, lets remove them.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 years agocooker.py: Remove global scope class event handlers
Richard Purdie [Thu, 23 May 2013 09:48:26 +0000 (10:48 +0100)] 
cooker.py: Remove global scope class event handlers

Its confusing when an event handler in for example a bbclass receives
events for a recipe which doesn't use the class. This is due to the
class event handlers having confusing scope. Worse, the issue is not
deterministic and the events a handler will see depends on the parse
order.

To avoid these issues, remove the class event handler global scope
and only have class handlers recieve events for recipes using the
class.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 years agomethodpool: Retire it, remove global method scope
Richard Purdie [Thu, 23 May 2013 09:47:10 +0000 (10:47 +0100)] 
methodpool: Retire it, remove global method scope

Having a global method scope confuses users and with the introduction
of parallel parsing, its not even possible to correctly detect conflicting
functions. Rather than try and fix that, its simpler to retire the global
method scope and restrict functions to those locations they're defined
within. This is more what users actually expect too.

If we remove the global function scope, the need for methodpool is reduced
to the point we may as well retire it. There is some small loss of caching
of parsed functions but timing measurements so the impact to be neglibile
in the overall parsing time.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 years agomethodpool: Conflicting methodnames should be a fatal error
Richard Purdie [Thu, 23 May 2013 09:47:45 +0000 (10:47 +0100)] 
methodpool: Conflicting methodnames should be a fatal error

When this error occurs, the build should stop, not continue uninterrupted.

[YOCTO #4460]

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 years agohob: Table sorting criteria should not change after deselecting recipes/packages
Cristiana Voicu [Wed, 22 May 2013 09:52:35 +0000 (12:52 +0300)] 
hob: Table sorting criteria should not change after deselecting recipes/packages

After a recipe/package is deselected, the table is sorted as before the
fadeout animation.

[YOCTO #4453]
Signed-off-by: Cristiana Voicu <cristiana.voicu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 years agohob: apply a fade out animation when deselecting from tables
Cristiana Voicu [Wed, 22 May 2013 09:52:34 +0000 (12:52 +0300)] 
hob: apply a fade out animation when deselecting from tables

-applied a fade out mechanism for deselctiong on all the tabs of
recipes and packages list page
-set cursor on the package/recipe when it is included(important
when the its place is changing; like when the tree si order by
included tab)

[YOCTO #4342]
Signed-off-by: Cristiana Voicu <cristiana.voicu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 years agocookerdata: rename _parse to parse_config_file
Paul Eggleton [Wed, 22 May 2013 14:25:13 +0000 (15:25 +0100)] 
cookerdata: rename _parse to parse_config_file

We use this externally in the OE layer index update script, so it
shouldn't really be named as an internal function.

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 years agotinfoil: fix for changes to cooker config structure
Paul Eggleton [Wed, 22 May 2013 14:25:12 +0000 (15:25 +0100)] 
tinfoil: fix for changes to cooker config structure

Fix the code here for recent changes to the initialisation of
configuration objects for cooker.

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 years agobitbake-layers: fix for move of calc_bbfile_priority within cooker
Paul Eggleton [Wed, 22 May 2013 14:25:11 +0000 (15:25 +0100)] 
bitbake-layers: fix for move of calc_bbfile_priority within cooker

calc_bbfile_priority is now in CookerCollectFiles which can be accessed
on the collection attribute of a cooker instance.

Fixes [YOCTO #4513].

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 years agocommand: Fix function module reference after code rearrangement
Richard Purdie [Wed, 22 May 2013 14:55:14 +0000 (14:55 +0000)] 
command: Fix function module reference after code rearrangement

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 years agorunqueue.py: Ensure export flag is set for fakeroot environment variables
Richard Purdie [Mon, 18 Feb 2013 13:18:31 +0000 (13:18 +0000)] 
runqueue.py: Ensure export flag is set for fakeroot environment variables

This means the variables show up in the shell execution "run" files since
its useful to know what the fakeroot environment is and how to set it up
manually.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 years agobitbake/cookerdata: Explicitly specify cooker configuration options
Richard Purdie [Mon, 20 May 2013 22:01:48 +0000 (23:01 +0100)] 
bitbake/cookerdata: Explicitly specify cooker configuration options

As the code stands today its hard to know which configuration variables
are used by which parts of the system. Some are used by the UIs, some
by bin/bitbake itself, some by cooker.

This patch changes the configuration to just contain the variables cooker
uses, and changes bin/bitbake to access the variables it needs directly
which hopefully lets us start to untangle this mess.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 years agocooker: Split configuration parsing code into cookerdata
Richard Purdie [Mon, 20 May 2013 22:00:31 +0000 (23:00 +0100)] 
cooker: Split configuration parsing code into cookerdata

In order to have a memory resident bitbake and to allow task execution, we need
to be able to rebuild the base configuration without a cooker. This moves the
code into its own class so it can be built independently.

The interface is less than ideal here but I didn't want to add parsing methods
a subclassed DataSmart, at least until we've experimented further with this code
and are certain that makes sense. At the very least, the methods are ugly and need
cleaning up.  Spliting the code out seems to be the right thing to do though and
should unblock various activities on BitBake so I believe this code is a step in
the right direction.

Based on a patch from Alexandru Damian <alexandru.damian@intel.com>

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 years agocooker: Move commandline parsing back into the UI/cookerdata
Richard Purdie [Mon, 20 May 2013 21:54:41 +0000 (22:54 +0100)] 
cooker: Move commandline parsing back into the UI/cookerdata

Building up a set of actions for the server is tricky since we depend upon the
commandline but fall back to values from the datastore. We should be able to build
a datastore without a commandline and vice versa. Ultimately the UI should send
the commands to the server.

This patch amounts to code rearranging, moving the heavy lifting to the UI, though
a helper in the configuration option. This will need further cleanup/tweaking but
this should be the only update needed to the UIs. The code now queries the server
for any missing data should it need to.

This code allows various knowledge of configuration variables to move to the UI side
only, partcularly pkgs_to_build but also all the command specifiers. It should also
be possible to move cmd eventually, I'm just unsure if any callers call the commands
expecting this to default to something sane right now.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 years agobitbake: Create cookerdata splitting config from cooker and bin/bitbake
Richard Purdie [Mon, 20 May 2013 21:54:30 +0000 (22:54 +0100)] 
bitbake: Create cookerdata splitting config from cooker and bin/bitbake

Currently the UI and server configuration is one big incestuous mess. To
start to untangle this we creater cookerdata, a new module which contains
various confiuration modules and the code for building the base datastore.

To start with we add a ConfigParameters() class which contains information
about both the commandline configuration and the original environment.

The CookerConfiguration class is created to contain the cooker.configuration
options. This means we can transfer new paramters to the server over something
like XMLRPC and then build a new configuration from these on the server.

Based on a patch from Alexandru Damian <alexandru.damian@intel.com>

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 years agobin/bitbake: Improve exception handling
Richard Purdie [Mon, 20 May 2013 22:00:10 +0000 (23:00 +0100)] 
bin/bitbake: Improve exception handling

Due to the internal event processing, this excepting handler usually raises an
Empty error, masking the underlying failure. Ensure the original exception is
raised.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 years agofetch2: Shorten long srcrevs
Richard Purdie [Sun, 19 May 2013 10:21:55 +0000 (13:21 +0300)] 
fetch2: Shorten long srcrevs

The long srcrevs are mainly used or the workdir construction as well as
the package version. The long entries are hashes generated by the git fetcher
and other scms using a similar revision mechanism.

We need these to change when the package changes however collisions are
unlikely to happen within the domains we care about. The long revisions
have generated negative user feedback due to the use in path and file
names.

This patch therefore truncates the revisions to 10 characters maximum.

This should be safe in the contexts where these revisions are used as
the chances of spatially close collisions is very low (distant
collisions are not a major issue in the way we use these).

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 years agofetch2/git: Clean up sortable_revision
Richard Purdie [Sun, 19 May 2013 10:17:58 +0000 (13:17 +0300)] 
fetch2/git: Clean up sortable_revision

Now we no longer try and provide increasing values from the fetcher,
we can simplify the function structure for the sortable_revision
pieces and move the AUTOINC handling directly into the function
which needs it, simplifying the code.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 years agodata: Ensure dependencies of subfunctions are accounted for
Richard Purdie [Sun, 19 May 2013 10:16:54 +0000 (13:16 +0300)] 
data: Ensure dependencies of subfunctions are accounted for

Currently we account of the top level function's vardeps but not
those of any subfunction. This would imply we'd have to manually
write the dependencies of all parent functions which would be crazy.

This patch adds the dependencies to fix the issue.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 years agotest/fetch: Allow the conditional network tests to work under python 2.6
Richard Purdie [Fri, 17 May 2013 09:41:04 +0000 (12:41 +0300)] 
test/fetch: Allow the conditional network tests to work under python 2.6

The skipIf decorator is unavailable under python 2.6 and finding a syntax
works there is hard. This patch does allow network tests under 2.6.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 years agotest/fetch: Split the network tests from the rest of the fetcher tests
Richard Purdie [Fri, 17 May 2013 08:46:47 +0000 (11:46 +0300)] 
test/fetch: Split the network tests from the rest of the fetcher tests

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 years agofetch2/utils: Clean up imports
Richard Purdie [Fri, 17 May 2013 08:40:01 +0000 (11:40 +0300)] 
fetch2/utils: Clean up imports

Move various random imports to the start of the modules as cleanup
and avoid an import issue with bb.process on python 2.6.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 years agotests/fetch: Allow to work on python 2.6
Richard Purdie [Fri, 17 May 2013 08:38:57 +0000 (11:38 +0300)] 
tests/fetch: Allow to work on python 2.6

Currently the fetch tests fail on python 2.6 since check_output
doesn't exist on this version of python. Use bb.process instead
to avoid this problem.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 years agobin/bitbake: Fix queue import for pyhton 2 and 3
Richard Purdie [Tue, 14 May 2013 12:04:14 +0000 (15:04 +0300)] 
bin/bitbake: Fix queue import for pyhton 2 and 3

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 years agohob: fix for XMLRPC mode
Bogdan Marinescu [Wed, 16 Jan 2013 12:36:55 +0000 (12:36 +0000)] 
hob: fix for XMLRPC mode

Contains a small fix to the builder.py code
(a missing "self" in a variable assignment).
With this changes, "hob" can run with the XMLRPC backend:

$ hob -t xmlrpc

Signed-off-by: Bogdan Marinescu <bogdan.a.marinescu@intel.com>
Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 years agocooker/bitbake-layers/tinfoil: Fix recipecache typo
Richard Purdie [Mon, 13 May 2013 18:53:26 +0000 (21:53 +0300)] 
cooker/bitbake-layers/tinfoil: Fix recipecache typo

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 years agobitbake-layers/tinfoil: Catch up with status -> recpiecache rename
Richard Purdie [Sun, 12 May 2013 17:00:39 +0000 (18:00 +0100)] 
bitbake-layers/tinfoil: Catch up with status -> recpiecache rename

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 years agocooker: Rename status variable to recipecache
Richard Purdie [Fri, 10 May 2013 17:35:47 +0000 (17:35 +0000)] 
cooker: Rename status variable to recipecache

"status" is a relic of very early versions of bitbake, rename it to match what it now
means.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 years agocooker: Rename confusing buildDepgraph task to handlePrefProviders
Richard Purdie [Fri, 10 May 2013 15:26:03 +0000 (15:26 +0000)] 
cooker: Rename confusing buildDepgraph task to handlePrefProviders

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 years agocooker: Drop pointless variables
Richard Purdie [Fri, 10 May 2013 15:24:01 +0000 (15:24 +0000)] 
cooker: Drop pointless variables

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 years agocooker.py: Drop confusing updateCache calls
Richard Purdie [Fri, 10 May 2013 15:09:36 +0000 (15:09 +0000)] 
cooker.py: Drop confusing updateCache calls

updateCache() gets called by command.py when needed and needs to be iterated
over. The calls in cooker.py are therefore just plain wrong/confusing now.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 years agocooker: Remove pointless repeated import
Richard Purdie [Fri, 10 May 2013 14:54:46 +0000 (14:54 +0000)] 
cooker: Remove pointless repeated import

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 years agocooker: Fix get_bbfiles()
Richard Purdie [Fri, 10 May 2013 14:52:47 +0000 (14:52 +0000)] 
cooker: Fix get_bbfiles()

Its clear looking at the code the path argument has never been used and doesn't
work. Tweak the function to be a little more readable.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 years agocooker: Separate out collections handling code into its own class
Richard Purdie [Fri, 10 May 2013 14:35:39 +0000 (14:35 +0000)] 
cooker: Separate out collections handling code into its own class

The Cooker class is too large and needs to be split up into different
functional units. Splitting out the collections code into its own class
seems like a good place to start to try and disentangle things.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 years agocooker: Drop unused variables from collect_bbfiles()
Richard Purdie [Fri, 10 May 2013 15:16:26 +0000 (16:16 +0100)] 
cooker: Drop unused variables from collect_bbfiles()

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 years agopysh: Say what kind of token isn't implemented
Olof Johansson [Tue, 7 May 2013 09:22:37 +0000 (11:22 +0200)] 
pysh: Say what kind of token isn't implemented

When the shell lexer finds an unrecognized dollar token, the error
message should contain what kind of token it is having problems with.

Signed-off-by: Olof Johansson <olof.johansson@axis.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 years agohob: assure consistency for image size label
Cristiana Voicu [Tue, 7 May 2013 08:07:56 +0000 (11:07 +0300)] 
hob: assure consistency for image size label

After the image was build, update the image size in the packagelistpage.

[YOCTO #4388]
Signed-off-by: Cristiana Voicu <cristiana.voicu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 years agohob: clicking on "cancel" should reset table sorting to default
Cristiana Voicu [Tue, 7 May 2013 08:07:55 +0000 (11:07 +0300)] 
hob: clicking on "cancel" should reset table sorting to default

Changed the "cancel" callback function for both recipes and packages
list page.

[YOCTO #4333]
Signed-off-by: Cristiana Voicu <cristiana.voicu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 years agohob: "Brought in by" sorting should take into account the (+#) information
Cristiana Voicu [Tue, 7 May 2013 08:07:54 +0000 (11:07 +0300)] 
hob: "Brought in by" sorting should take into account the (+#) information

[YOCTO #4332]
Signed-off-by: Cristiana Voicu <cristiana.voicu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 years agohob: sort alphabetically results in groups of recipes/packages
Cristiana Voicu [Tue, 7 May 2013 08:07:53 +0000 (11:07 +0300)] 
hob: sort alphabetically results in groups of recipes/packages

When you search a string, there are 2 groups: recipes/packages starting
with that string, and the rest. These 2 groups are now sorted.

[YOCTO #4111]
Signed-off-by: Cristiana Voicu <cristiana.voicu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 years agoUpdated information in tooltips
Andrei Dinu [Tue, 7 May 2013 08:06:34 +0000 (11:06 +0300)] 
Updated information in tooltips

Updated information for "Additional free space" and
"Image basic size" to match the description in the
manual.

[HOB #4354]
[HOB #4355]

Signed-off-by: Andrei Dinu <andrei.adrianx.dinu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 years agolib: print is a function in moderm python, covert remaining users
Richard Purdie [Thu, 9 May 2013 21:19:04 +0000 (21:19 +0000)] 
lib: print is a function in moderm python, covert remaining users

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 years agolib: Use modern expcetion syntax
Richard Purdie [Thu, 9 May 2013 21:18:20 +0000 (21:18 +0000)] 
lib: Use modern expcetion syntax

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 years agoprserv: Drop StandardError usage
Richard Purdie [Thu, 9 May 2013 21:17:18 +0000 (21:17 +0000)] 
prserv: Drop StandardError usage

StandardError doesn't exist in python 3, use Exception instead.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
12 years agosiggen: Add missing error message parameter
Richard Purdie [Thu, 9 May 2013 21:16:09 +0000 (21:16 +0000)] 
siggen: Add missing error message parameter

There is clearly a missing parameter from this error message, add it.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>