Richard Purdie [Thu, 24 Nov 2011 14:14:55 +0000 (14:14 +0000)]
runqueue.py: Fix debug message to reference the correct task
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Richard Purdie [Thu, 24 Nov 2011 13:56:52 +0000 (13:56 +0000)]
fetch2/local: Don't default to files in DL_DIR for file:// urls
Defaulting to any file in DL_DIR as the first match for a file:// url
doesn't make much sense and can lead to unexpected results.
This patch changes the logic so this is the last fallback location
instead. Whether it should be using DL_DIR at all for this is a
good question but something for another patch.
[YOCTO #1710]
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Matthew McClintock [Wed, 23 Nov 2011 08:04:00 +0000 (02:04 -0600)]
siggen.py: sort task hash depedencies with basepath
Without this patch the tash hash dependencies can be in a order
that is dependent upon directory/filesystem layout. With this
change the data is sorted the same regardless.
Without this the dependent hashes could be in different orders
on different systems and consequently final md5 hash would differ
as well even though nothing else changed.
Signed-off-by: Matthew McClintock <msm@freescale.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Matthew McClintock [Wed, 23 Nov 2011 08:08:50 +0000 (02:08 -0600)]
bitbake: print out symmetric difference when comparing sigs
This is useful for really longs lists to pinpoint what has
actually changed
Signed-off-by: Matthew McClintock <msm@freescale.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Richard Purdie [Mon, 21 Nov 2011 14:02:00 +0000 (14:02 +0000)]
runqueue.py: Ensure we fully process the covered list
The existing looping code can mask an existing "found = True"
by forcing it to False each time. This can lead to dependency
lists not being fully searched and results in dependency errors.
An exmaple of this was the autobuilder building linux-yocto from
sstate but then rebuilding some of the recipe's tasks for no
apparent reason. Separating the logic into two variables solves this
problem since any "found = True" value is now always preserved.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Richard Purdie [Wed, 23 Nov 2011 12:38:44 +0000 (12:38 +0000)]
runqueue.py: Ensure setscene tasks don't break dependency order
If A depends upon B which depends upon C and the setscene for B
succeeds but C is going to get rebuilt, we should wait for C to
try and build A but currently we don't.
This is due to the timing of when we run the task_skip() as this
triggers other tasks to become buildable. This patch moves the timing
of that call to a more appropriate place allowing dependencies to
behave as expected.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Richard Purdie [Mon, 21 Nov 2011 14:34:23 +0000 (14:34 +0000)]
bitbake/runqueue.py: Add BB_SETSCENE_VERIFY_FUNCTION hook
The OE metadata has cases where it needs to prevent some setscene
functions from running. An example of this is where we know a task
is going to run do_configure (which would clean out do_populate_sysroot)
and hence we don't want do_populate_sysroot_setscene to run.
This change adds in a hook so that the metadata can allow any
such policy decision to filter back up to bitbake.
It removes the existing code which attempted to do this in a generic
way but failed.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Richard Purdie [Mon, 21 Nov 2011 14:40:21 +0000 (14:40 +0000)]
bitbake/runqueue.py: Sort the list of skipped tasks as it makes searching the list easier when debugging
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Richard Purdie [Mon, 21 Nov 2011 14:39:29 +0000 (14:39 +0000)]
bitbake/runqueue.py: Fix incorrect task number reference in debug message
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Richard Purdie [Fri, 18 Nov 2011 14:21:15 +0000 (14:21 +0000)]
parse_py: Use absolute paths for FILE
Its possible for relative paths to creep into FILE. These confuse the
build system no end as its not clear where they might be releative to.
This patch ensures we always use resolved absolute paths for FILE
so that things behave in a deterministic way.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Richard Purdie [Thu, 17 Nov 2011 14:01:06 +0000 (14:01 +0000)]
siggen.py: Include list of variables in hashes
Ensure that the list of dependencies is included in the hash
as well as their contents
Prior to this, adding or removing dependencies with values
of "None" would not change the hash, despite diffsigs reporting
this difference.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Richard Purdie [Thu, 17 Nov 2011 14:02:06 +0000 (14:02 +0000)]
siggen.py: Fix diffsigs output for filename comparisions
When comparing sig files, if the recipe locations had changed, the
dependent tasks list would show as changed even if the actual hash
had not changed. This updates the code to only compare the base part
of the pathnames.
It also tweaks some of the output to add newlines to aid comparing
two lists of variables as it makes the location of the difference
clearer.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Paul Eggleton [Fri, 11 Nov 2011 18:38:15 +0000 (18:38 +0000)]
lib/bb/runqueue: avoid marking runtime dependencies as covered
The code which populates setscene_covered list was adding a task to the
covered list if all of the tasks that depend upon it were also covered;
however, this means that tasks that would have installed "runtime"
dependencies were being marked as covered also, e.g. gmp-native and
mpfr-native are needed by gcc-cross at runtime since they are shared
libraries that gcc links to, but their do_populate_sysroot tasks were
being marked as covered, resulting in failures later on if gcc-cross was
available from sstate but mpfr-native and gmp-native weren't.
Since we currently have no real way to handle runtime dependencies for
native packages, add a workaround which avoids marking tasks as covered
if one or more of their revdeps are from a different recipe.
Fixes [YOCTO #1536].
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Richard Purdie [Tue, 8 Nov 2011 18:02:15 +0000 (18:02 +0000)]
data_smart: Add appendVar/prependVar functions
This patch adds appendVar and prependVar functions to the data store
meaning python code would no longer have to do the getVar, append and
the setVar dance that much of the current python code does.
It also adds corresponding variants for flags.
Currently there is no spacing added by these functions. That could be
added as a parameter if desired.
If these functions turn out to be hotspots in the code, there are tricks
that could potentially be used to increase the speed of these specific
operations within the datastore.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Richard Purdie [Tue, 8 Nov 2011 22:19:38 +0000 (22:19 +0000)]
Add FAKEROOTNOENV variable
Add a FAKEROOTNOENV which does the opposite of the FAKEROOTENV variable
and is data loaded into the environment for tasks without the fakeroot
flag.
The intent here is to provide a way to control the environment when we
aren't needing fakeroot context which allows us to unload the preload
from memory entirely and gain a valuable speedup.
I'm not 100% happy with needing this at the bitbake level, particularly
with the cache hit but it does give a valuable speedup.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Richard Purdie [Tue, 8 Nov 2011 17:52:44 +0000 (17:52 +0000)]
cooker.py: Ensure only one copy of bitbake executes at once
The bitbake codebase makes assumptions that only one copy is active
against a given build directory at a given time. This patch adds a
lockfile in TOPDIR to ensure that is the case.
Note that no unlock is needed, that is automatically dropped when
execution terminates.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Richard Purdie [Tue, 8 Nov 2011 17:49:32 +0000 (17:49 +0000)]
utils.py: Fix lockfile retry handling
The lockfile retry parameter is expected to return immediately after
attempting to take the lock. There was a bug in the logic which this
patch fixed to ensure it does that.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Christopher Larson [Fri, 4 Nov 2011 18:59:46 +0000 (14:59 -0400)]
codeparser: silence non-literal warnings for vardeps
If the vardeps flag is not None, we now silence the warnings about
non-literal usage for that variable.
Signed-off-by: Christopher Larson <chris_larson@mentor.com>
Christopher Larson [Sat, 29 Oct 2011 03:06:18 +0000 (23:06 -0400)]
codeparser: drop expand tracking
There are two usual cases involving bb.data.expand:
- Calling it with a string literal -- "bb.data.expand('${FOO}/${BAZ}/bleh', d)".
- Calling it on getVar results (legacy) -- "bb.data.expand(bb.data.getVar('FOO', d), d)"
Nothing in any of the usual layers uses it in any other way, and I'm
having trouble coming up with any real use cases beyond this. The first
of the above cases is already tracked, via the expandWithRefs called
on the python code string. The second didn't emit a warning anyway,
since the getVar was already handled.
Given this, I see no reason for us to maintain explicit expansion
tracking. Further, we weren't using its results anyway (the var_expands
member).
Signed-off-by: Christopher Larson <chris_larson@mentor.com>
Christopher Larson [Sat, 29 Oct 2011 01:32:26 +0000 (21:32 -0400)]
codeparser: accept a name for better messages
- If a name is passed to the parser, prepend the messages with "while
parsing <name>:". This gives a bit more context.
- Tweak the warning messages slightly (they had to be altered anyway to
inject the variable being parsed).
Before:
DEBUG: Warning: in call to 'bb.data.getVar': argument ''%s' % var' is \
not a literal
After:
DEBUG: while parsing emit_pkgdata, in call of bb.data.getVar, argument \
''%s' % var' is not a string literal
Signed-off-by: Christopher Larson <chris_larson@mentor.com>
Christopher Larson [Fri, 28 Oct 2011 05:37:11 +0000 (22:37 -0700)]
codeparser: simplify how we compare the called node names
With the previous method, using the compare_name methods, we split the
requested match name by '.', reversed it, then compared them piecemeal
during the node traversal. The new method walks the nodes and hands back
the name of what's being called, and then we check that. This also
consolidates the two different implementations of traversal of the
attribute/name nodes (one in compare_name, one for the execs).
Signed-off-by: Christopher Larson <kergoth@gmail.com>
Christopher Larson [Fri, 28 Oct 2011 05:23:05 +0000 (22:23 -0700)]
codeparser: merge the nested python parsing classes
The split is even less necessary now that we use ast.walk rather than an
actual NodeVisitor subclass.
Signed-off-by: Christopher Larson <kergoth@gmail.com>
Richard Purdie [Thu, 3 Nov 2011 17:13:34 +0000 (17:13 +0000)]
Increment version post release
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Richard Purdie [Thu, 3 Nov 2011 17:12:36 +0000 (17:12 +0000)]
Release 1.14.0
Christopher Larson [Fri, 28 Oct 2011 05:45:04 +0000 (22:45 -0700)]
codeparser: make var_expands actually hold useful information
Previously, it was calling var_expands.update() rather than add(), with
a string argument, resulting in adding each character of that string to
the var_expands set, rather than the string itself.
Signed-off-by: Christopher Larson <kergoth@gmail.com>
Richard Purdie [Thu, 27 Oct 2011 07:03:24 +0000 (08:03 +0100)]
Merge branch 'master' of git.openembedded.org:bitbake
Cliff Brake [Wed, 26 Oct 2011 11:48:53 +0000 (07:48 -0400)]
Linefeed to test commits
Joshua Lock [Tue, 11 Oct 2011 20:15:15 +0000 (13:15 -0700)]
doc: update manual for checksum changes
Document the ability to use SRC_URI parameters for checksums
Signed-off-by: Joshua Lock <josh@linux.intel.com>
Joshua Lock [Tue, 11 Oct 2011 16:42:13 +0000 (09:42 -0700)]
fetch2: enable checksum definition as SRC_URI parameter
URI parameters should be able to be defined as a parameter of the SRC_URI,
this patch enables thus for checksums.
An example;
SRC_URI = "http://pkgconfig.freedesktop.org/releases/pkg-config-${PV}.tar.gz;md5sum=
a3270bab3f4b69b7dc6dbdacbcae9745;sha256sum=3ba691ee2431f32ccb8efa131e59bf23e37f122dc66791309023ca6dcefcd10e"
Addresses the remainder of [YOCTO #1399]
Signed-off-by: Joshua Lock <josh@linux.intel.com>
Joshua Lock [Tue, 11 Oct 2011 00:24:41 +0000 (17:24 -0700)]
fetch2: improve usability of checksums
This patch improves the usability of checksums by only requiring one checksum
be defined.
Further, checksum verification will provide as much information as possible
at, rather than a bit at a time. No longer will you need to run fetch, see an
md5sum mismatch, fix it, run fetch, seen an sha256sum mismatch, fix it and
fetch again. If neither checksum is defined we now report both missing sums
at once - rather than one after the other.
Finally, if both sums are incorrect, we'll report both incorrect sums at the
same time.
Fixes part of [YOCTO #1399]
Signed-off-by: Joshua Lock <josh@linux.intel.com>
Joshua Lock [Tue, 11 Oct 2011 17:16:02 +0000 (10:16 -0700)]
hob: fix backtrace when dismissing open dialog
Clearly a logic/indentation error - we should only try and load the recipe
should the file-chooser return OK.
Fixes [YOCTO #1668]
Signed-off-by: Joshua Lock <josh@linux.intel.com>
Matthew McClintock [Tue, 4 Oct 2011 19:08:37 +0000 (14:08 -0500)]
fetch2: Export additional variables to the fetchers
git could need these environment variables when working behind
a proxy
Signed-off-by: Matthew McClintock <msm@freescale.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Matthew McClintock [Tue, 27 Sep 2011 21:41:39 +0000 (16:41 -0500)]
fetch2/git: Make git fetch run with -f so rebased branches don't fail
git fetches can fail (or at least return failed) when trying to
fetch and prune rebased branches. This patch simply adds a -f
to the git fetch command so these failure are ignore
Generally, if some SHA was rebased away it's not coming back so
there is no point in not doing this force
Signed-off-by: Matthew McClintock <msm@freescale.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Paul Eggleton [Fri, 23 Sep 2011 16:05:00 +0000 (17:05 +0100)]
bitbake/lib/bb/msg.py: fix setting debug and verbosity levels
The debug and verbosity levels (as set by the -D and -v command line
options respectively) were not being passed through within msg.py since
bitbake revision
45aad2f9647df14bcfa5e755b57e1ddab377939a due to
incorrect variable names.
Fixes [YOCTO #1513].
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Joshua Lock [Fri, 23 Sep 2011 23:32:52 +0000 (16:32 -0700)]
hob: store recipe path at load time
This fixes the internal dirtiness tracking such that if the Save menu item
is selected after loading a recipe the existing file is updated rather than
the user being prompted for the path to create a recipe at.
Signed-off-by: Joshua Lock <josh@linux.intel.com>
Joshua Lock [Fri, 23 Sep 2011 20:19:16 +0000 (13:19 -0700)]
hob: fix building with current selections after reparse
After the reparse we were setting the model to reflect the values before
the reparse was triggered but clearing the internal variables used to test
whether these values are set, leading to the UI erroneously reporting that
selections had not been made.
Signed-off-by: Joshua Lock <josh@linux.intel.com>
Joshua Lock [Fri, 23 Sep 2011 20:14:02 +0000 (13:14 -0700)]
ui/crumbs/hobeventhandler: fix variable name typo
Signed-off-by: Joshua Lock <josh@linux.intel.com>
Joshua Lock [Fri, 23 Sep 2011 20:13:17 +0000 (13:13 -0700)]
ui/crumbs/hobeventhandler: move remaining getVariable calls to init
Instead of calling getVariable commands each time the BBPATH and BBFILES
entries need testing cache the results as a member variable at object
instantiation.
Fixes [YOCTO #1521]
Signed-off-by: Joshua Lock <josh@linux.intel.com>
Julian Pidancet [Wed, 21 Sep 2011 01:14:54 +0000 (02:14 +0100)]
Fix mercurial fetcher in fetch2
The _build_revision method in Hg class gets called with the wrong number
of arguments. This tiny patch adds a 5th argument to the method
declaration to prevent python from throwing an exception.
Signed-off-by: Julian Pidancet <julian.pidancet@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Joshua Lock [Wed, 21 Sep 2011 01:08:28 +0000 (18:08 -0700)]
hob: fix opening of image output dir on image build completion
Firstly, rather than polling the DEPLOY_DIR_IMAGE directory each time an
image is built store the variable as a member of the hobeventhandler.
Secondly emit the generic "build-complete" signal *after* the specialised
"build-failed" or "build-succeeded" signals such that the appropriate
state variables are set before we try and use them.
Signed-off-by: Joshua Lock <josh@linux.intel.com>
Joshua Lock [Wed, 21 Sep 2011 00:12:09 +0000 (17:12 -0700)]
ui/crumbs/runningbuild: fix log messages right-click menu
Pass the correct callback name to the connect method.
Signed-off-by: Joshua Lock <josh@linux.intel.com>
Joshua Lock [Mon, 19 Sep 2011 22:28:09 +0000 (15:28 -0700)]
hob: enable package only builds even if an image has been built
Once an image build has been performed the selected_image variable would
prevent the package only build choice being triggered - by setting the
variable to None on reset we are able to perform package only builds after
an image build.
Signed-off-by: Joshua Lock <josh@linux.intel.com>
Joshua Lock [Mon, 19 Sep 2011 22:25:45 +0000 (15:25 -0700)]
hob: fix build again when building packages only
The different code paths for package vs image builds have lead to some bit
rot in the package only build and an incompatability between package only
builds and the build again mechanism.
This patch unifies the code paths and fixes build again for package only
builds.
Fixes [YOCTO #1480]
Signed-off-by: Joshua Lock <josh@linux.intel.com>
Joshua Lock [Wed, 14 Sep 2011 23:27:28 +0000 (16:27 -0700)]
ui/crumbs/hobprefs: re-enable reloading of data after prefs changes
When disabling the toolchain w/ headers checkbox in an early commit I
accidentally disabled too much code. This re-enables adding the custom
response handler to the Preferences dialog which triggeres a reparse of
the metadata when appropriate preference changes are made.
Fixes [YOCTO #1479]
Signed-off-by: Joshua Lock <josh@linux.intel.com>
Paul Eggleton [Sat, 17 Sep 2011 11:03:47 +0000 (12:03 +0100)]
fetch2/git: fix subpath destination directory
Make the git fetcher's subpath (path within the git repo to fetch)
option set the destsuffix (destination directory) option by default.
This reverts the behaviour of subpath to the same as when it was
introduced.
Based on a patch by Dmitry Eremin-Solenikov <dbaryshkov@gmail.com>
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Martin Jansa [Fri, 16 Sep 2011 07:38:22 +0000 (09:38 +0200)]
fetch2/git: be more carefull in _contains_ref when checking git log output
* in some cases there could be output like this
ERROR: ld.so: object 'libpseudo.so' from LD_PRELOAD cannot be preloaded: ignored.
before wc -l output and returned 'output.split()[0] != 0' is always True
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Martin Jansa [Mon, 19 Sep 2011 07:58:41 +0000 (09:58 +0200)]
fetch2/git: fix logger.debug
* logging/logger typo was fixed in
38a598731b49c8a0ba0ede570adc33eb1e848235
but debug level is still missing
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Joshua Lock [Wed, 14 Sep 2011 22:40:58 +0000 (15:40 -0700)]
fetch2/wget: make checkstatus() quieter
Change the wget fetcher to not emit the commands output when calling checkstatus, this
matches the behaviour of the git fetchers checkstatus() method.
Signed-off-by: Joshua Lock <josh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Richard Purdie [Mon, 19 Sep 2011 04:53:07 +0000 (05:53 +0100)]
cooker.py: Fix key expansion issues in showVersions
bitbake -s was not displaying correct version information when the
PREFERRED_VERSION string contains other variables. The actual built
versions would differ since the providers.py functions were called
with expanded keys at this point.
This patch expands keys for showVersions bringing everything into
sync correctly.
[YOCTO #1493]
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Richard Purdie [Sat, 17 Sep 2011 11:11:04 +0000 (12:11 +0100)]
git.py: Fix logging vs logger typo
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Christopher Larson [Wed, 14 Sep 2011 17:43:48 +0000 (10:43 -0700)]
taskdata: fix string formatting of an error message
Signed-off-by: Christopher Larson <kergoth@gmail.com>
Joshua Lock [Fri, 9 Sep 2011 01:10:29 +0000 (18:10 -0700)]
hob: correctly set the selected image when loading a recipe
When the user saves their recipe based on an existing image type, loads it
in a newly run hob instance and clicks bake they should not be asked about
building packages vs an empty image up.
Partially addresses [YOCTO #1468]
Signed-off-by: Joshua Lock <josh@linux.intel.com>
Joshua Lock [Fri, 9 Sep 2011 01:00:13 +0000 (18:00 -0700)]
hob: correctly handle an exception
It doesn't matter if we can't remove the temprorary file, for some reason,
so catch the exception and ignore it.
Partially addresses [YOCTO #1468]
Signed-off-by: Joshua Lock <josh@linux.intel.com>
Joshua Lock [Fri, 9 Sep 2011 00:59:20 +0000 (17:59 -0700)]
ui/crumbs/hobeventhandler: don't check BBPATH and BBFILES each build
There's no need to check the BBPATH and BBFILES are set correctly each
build when running multiple builds for one launch of the UI.
Partially addresses [YOCTO #1468]
Signed-off-by: Joshua Lock <josh@linux.intel.com>
Joshua Lock [Thu, 8 Sep 2011 21:50:01 +0000 (14:50 -0700)]
ui/crumbs/hobeventhandler: fix test for BBFILES
It seems we have a race whereby the image_dir variable may not be set
before it's tested for, since the variable is always the same set it in the
initialiser.
Partially addresses [YOCTO #1468]
Signed-off-by: Joshua Lock <josh@linux.intel.com>
Richard Purdie [Fri, 9 Sep 2011 18:07:40 +0000 (19:07 +0100)]
runqueue.py: Ensure fakeroot variables are reflected in the datastore
Without this, variables can be set to one thing in one part of the environment and something
different in another part. This change ensures the datastore and the environment
are consistent.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Richard Purdie [Fri, 9 Sep 2011 17:25:41 +0000 (17:25 +0000)]
runqueue: Ensure task environment is correct
This fixes two problems:
a) Variables which were in the parent environment but not set as "export"
variables in the datastore could end up in the task environment
b) oe.environ.update() can't cope with the generator returned by
bb.data.exported_vars()
Whilst the updated code isn't as neat, it does do the expected thing,
sets the environment correctly and stops unwanted values leaking into
the task environment.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Dmitry Eremin-Solenikov [Sun, 21 Aug 2011 07:57:40 +0000 (11:57 +0400)]
lib/bb/siggen.py: return a string from noop get_taskhash
OpenEmbedded is expecting to get a string from get_taskhash, but noop siggen
returns just 0 (number), so OE classes/sstate.bbclass barfs badly. Fix that.
Signed-off-by: Dmitry Eremin-Solenikov <dbaryshkov@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Paul Eggleton [Mon, 5 Sep 2011 12:30:11 +0000 (13:30 +0100)]
hob: fix segfault on second build
Some internal lists were not being cleared, resulting in incorrect
program flow on the second build, causing a structure to be accessed
incorrectly which resulted in a segfault.
Fixes [YOCTO #1332]
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Joshua Lock <josh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Paul Eggleton [Mon, 5 Sep 2011 12:30:10 +0000 (13:30 +0100)]
hob: clear out temporary file list after deleting
If you don't clear out files_to_clean after the files get deleted and
then you run a second build, it will try to delete the files from the
first build and you will get a "No such file or directory" error.
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Joshua Lock <josh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Joshua Lock [Fri, 2 Sep 2011 23:53:32 +0000 (16:53 -0700)]
hob: disable removal of packages
It's felt that the stability of package deselection is not sufficient for
the upcoming release and thus package removal should be disabled.
I'd actually like to see this patch, or its effects, reverted as soon as
the release bits have been frozen so that this issue can continue to be
worked on.
Signed-off-by: Joshua Lock <josh@linux.intel.com>
Joshua Lock [Fri, 2 Sep 2011 23:39:23 +0000 (16:39 -0700)]
ui/crumbs/runningbuild: mask run_buildstats failure
The buildstats handler causes an exception with: "'NoneType' object has no
attribute 'startswith'" early a build via hob, leaving a glaring red row
which means nothing to the user.
Mask this error until such a time as we have opportunity to correctly
diagnose and fix the root problem.
Workaround fix for [YOCTO #1433]
Signed-off-by: Joshua Lock <josh@linux.intel.com>
Joshua Lock [Fri, 2 Sep 2011 23:02:50 +0000 (16:02 -0700)]
ui/crumbs/hobprefs: disable 'build toolchain with headers'
The generic meta-toolchain-sdk we are currently building when this option
is enabled is likely unsuitable for the majority of images built with hob.
Remove this option from the Preferences UI until such a time as we can
correctly implement this feature to include the library headers for the
selected packages.
Addresses [YOCTO #1302]
Signed-off-by: Joshua Lock <josh@linux.intel.com>
Joshua Lock [Fri, 2 Sep 2011 21:29:38 +0000 (14:29 -0700)]
hob: add a test to ensure hob is run with the required pre and post files
hob requires pre and post configuration files to store configuration values
in, whilst this should (and will) be fixed long-term for so long as we
require these files we should alert the user should they run without them.
Fixes [YOCTO #1383]
Signed-off-by: Joshua Lock <josh@linux.intel.com>
Joshua Lock [Fri, 2 Sep 2011 17:17:52 +0000 (10:17 -0700)]
hob: reflect defaultsetup being default distro
If no value is set for DISTRO the defaultsetup policy is used, reflect this
in the UI by having defaultsetup selected in the Distribution combo when no
other DISTRO is set.
Signed-off-by: Joshua Lock <josh@linux.intel.com>
Joshua Lock [Fri, 2 Sep 2011 03:38:10 +0000 (20:38 -0700)]
hob: use both pre and post files for hob configuration
We need to set various variables *before* parse begins, the simplest way
to ensure this is to use a pre configuration file for the relevant
configuration entries.
This series adapts hob to use both pre and post files to store its
configuration. Any variables which affect initial parse are set in the pre
file and all others in the post file.
Unfortunately this requires hob related code to have even more hard-coded
data as to what is relevant but this is the simplest way to solve issues
with variables and parse order at this time.
Addresses [YOCTO #1281]
Signed-off-by: Joshua Lock <josh@linux.intel.com>
Richard Purdie [Fri, 2 Sep 2011 12:58:54 +0000 (13:58 +0100)]
bitbake/event: Allow event handlers to quietly raise SkipPackage events
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Holger Hans Peter Freyther [Wed, 22 Jun 2011 20:50:13 +0000 (04:50 +0800)]
fetch2/git: Allow to specify the name of the checkout directory
Signed-off-by: Holger Hans Peter Freyther <holger@moiji-mobile.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Richard Purdie [Tue, 30 Aug 2011 20:39:58 +0000 (20:39 +0000)]
bitbake/fetch2/git: Ensure .gitconfig file is ignored
If a user has a ~/.gitconfig file, git fetch --all will reference it. To avoid
this we should run git fetch with an explicit url telling it to fetch all
references (which includes tags).
I'm assured this means git won't reference the file, see the discussion on the
git mailing list (subject Overriding ~/.gitconfig using GIT_CONFIG).
[YOCTO #1134]
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Richard Purdie [Tue, 30 Aug 2011 16:46:46 +0000 (16:46 +0000)]
bitbake: Correctly handle multiline comments including whitespace
If metadata contains:
"""
FOO = "bar"
"""
The variable FOO should get set to "bar" but doesn't due to the empty lines
be swallowed by the parser and FOO becomming part of the multiline comment.
This patch corrects that behaviour so FOO is set as expected.
[YOCTO #1377]
This patch fixes parsing of multiline comments so lines ending with \
behave consistently and we warn users where there is something happening
they likely don't expect.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Joshua Lock [Tue, 30 Aug 2011 17:55:14 +0000 (10:55 -0700)]
ui/crumbs/tasklistmodel: don't add empty entries to COL_BINB
Signed-off-by: Joshua Lock <josh@linux.intel.com>
Joshua Lock [Tue, 30 Aug 2011 16:32:48 +0000 (09:32 -0700)]
ui/crumbs/tasklistmodel: loop optimisation in include_item()
Rather than trying to iterate the model to find whether the item is already
included and then iterate the model again to find the items path attempt to
find the path first and if the path is found test whether the COL_INC of
the row is set.
Signed-off-by: Joshua Lock <josh@linux.intel.com>
Joshua Lock [Tue, 30 Aug 2011 16:31:05 +0000 (09:31 -0700)]
ui/crumbs/tasklistmodel: remove unnecessary check
Cheaper to set COL_INC to True regardless of whether it's already set.
Signed-off-by: Joshua Lock <josh@linux.intel.com>
Joshua Lock [Tue, 30 Aug 2011 16:15:35 +0000 (09:15 -0700)]
ui/crumbs/tasklistmodel: optimise find_path_for_item()
Rather than calling get_path() for each iterated value use the get_value()
method to lookup the COL_NAME value and only call get_path() for a match.
This should save some time by potentially removing N-1 calls to get_path()
from the loop.
Signed-off-by: Joshua Lock <josh@linux.intel.com>
Joshua Lock [Tue, 30 Aug 2011 00:02:39 +0000 (17:02 -0700)]
ui/crumbs/tasklistmodel: prevent packages depending on each other
Don't add y to x's COL_BINB if x is in y's COL_BINB - prevent circular
dependencies.
Further this patch improves the variable naming to make this code easier to
follow.
Fixes [YOCTO #1423]
Signed-off-by: Joshua Lock <josh@linux.intel.com>
Joshua Lock [Mon, 29 Aug 2011 23:29:06 +0000 (16:29 -0700)]
ui/crumbs/tasklistmodel: don't add same item to binb column more than once
In the same vein as a similar, earlier, patch where I missed the second
loop which modifies the binb column.
Fixes [YOCTO #1420]
Signed-off-by: Joshua Lock <josh@linux.intel.com>
Dongxiao Xu [Mon, 29 Aug 2011 07:33:58 +0000 (15:33 +0800)]
data_smart.py: make use of expand cache in getVar()
Currently if passing expand=True to getVar() function, it will pass the
handling to getVarFlag(), which doesn't get any benefit from the expand
cache.
Call the expand() function separately in getVar() to make use of the
expand cache, which can decrease the parsing time by 40%.
(from current 49s to 27s)
Signed-off-by: Dongxiao Xu <dongxiao.xu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Joshua Lock [Sat, 27 Aug 2011 00:19:58 +0000 (17:19 -0700)]
ui/crumbs/runningbuild: add a 'Copy' item to the messages right-click menu
Add another item to the right-click menu enabled for log messages to copy
the message to the clipboard.
Signed-off-by: Joshua Lock <josh@linux.intel.com>
Joshua Lock [Fri, 26 Aug 2011 22:13:33 +0000 (15:13 -0700)]
ui/crumbs/tasklistmodel: don't add same item to binb column more than once
Signed-off-by: Joshua Lock <josh@linux.intel.com>
Joshua Lock [Tue, 23 Aug 2011 23:35:05 +0000 (16:35 -0700)]
hob: disable some menu entries whilst build is in progress
It doesn't make sense to be able to modify the preferences and add/remove
layers whilst a build is in progress - disable the relevant menu items once
the build has started and re-enable them once the user has returned to the
creation view.
Signed-off-by: Joshua Lock <josh@linux.intel.com>
Joshua Lock [Tue, 23 Aug 2011 23:34:50 +0000 (16:34 -0700)]
bb/ui/crumbs/tasklistmodel: fix find_reverse_depends method
This fixes an embarassing typo which meant the method actually returned a
list of packages which didn't depend on the passed pn.
Signed-off-by: Joshua Lock <josh@linux.intel.com>
Joshua Lock [Tue, 23 Aug 2011 23:11:47 +0000 (16:11 -0700)]
hob: don't set PARALLEL_MAKE and BB_NUMBER_THREADS based on cpu count
This was actually broken with recent changes as the values were never
persisted to a file (meaning they were unset on the server at reparse
despite the UI indicating they were set).
However, I've chosen to remove the 'feature' as pegging a users CPU without
them asking to use high thread counts seems a little offensive.
Signed-off-by: Joshua Lock <josh@linux.intel.com>
Joshua Lock [Wed, 24 Aug 2011 20:04:23 +0000 (13:04 -0700)]
bb/fetch2/git: add checkstatus command
Use git ls-remote to implement checkstatus command for the git fetcher.
Signed-off-by: Joshua Lock <josh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Richard Purdie [Sun, 21 Aug 2011 17:39:41 +0000 (10:39 -0700)]
usermanual: The git fetcher defaults to the git protocol (or file)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Richard Purdie [Sun, 21 Aug 2011 17:38:59 +0000 (10:38 -0700)]
fetch2/git: Add rsync as a valid git protocol
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Joshua Lock [Fri, 19 Aug 2011 00:50:22 +0000 (17:50 -0700)]
bb/ui/hob: warn and prevent image build if no IMAGE_FSTYPE is set
If IMAGE_FSTYPE is empty and the user has opted to build an image warn
them and prevent the build.
Fixes [YOCTO #1267]
Signed-off-by: Joshua Lock <josh@linux.intel.com>
Joshua Lock [Fri, 19 Aug 2011 00:46:10 +0000 (17:46 -0700)]
bb/ui/crumbs/hobprefs: fix setting IMAGE_FSYTPES
We were setting the value as a list when a string is expected
Signed-off-by: Joshua Lock <josh@linux.intel.com>
Joshua Lock [Fri, 19 Aug 2011 00:45:16 +0000 (17:45 -0700)]
bb/ui/crumbs/hobeventhandler: fix return values of *_image_output_type
These methods are expected to return lists.
Signed-off-by: Joshua Lock <josh@linux.intel.com>
Joshua Lock [Thu, 18 Aug 2011 21:45:18 +0000 (14:45 -0700)]
bb/ui/hob: fix package only build
Use the models new get_selected_pn method to return a list of PN's for the
selected items and pass that for a package only build, rather than passing
a list of package names (which buildTargets can't handle).
Fixes [YOCTO #1385]
Signed-off-by: Joshua Lock <josh@linux.intel.com>
Joshua Lock [Thu, 18 Aug 2011 21:43:49 +0000 (14:43 -0700)]
bb/ui/crumbs/tasklistmodel: track the PN for each entry in the model
Now that we've switched to packages in the model, rather than PN, it makes
sense to add an extra field to store the PN of the package.
This patch includes a convenience method to retrieve a list of selected PN's.
Signed-off-by: Joshua Lock <josh@linux.intel.com>
Joshua Lock [Thu, 18 Aug 2011 21:18:46 +0000 (14:18 -0700)]
hob: don't try and build if user selects Bake with no selections made
If the user hasn't made any selections inform them that they need to do so
before clicking Bake.
Fixes [YOCTO #1384]
Signed-off-by: Joshua Lock <josh@linux.intel.com>
Joshua Lock [Thu, 18 Aug 2011 04:39:30 +0000 (21:39 -0700)]
bb/ui/crumbs/tasklistmodel: store all binb, not just the first
This makes it easier for the user to determine what the effects of a
removal may be, further it means we no longer need the find_alt_dependency
method which could be a fairly time-consuming method depending on the size
of the contents table.
Partially addresses [YOCTO #1365]
Signed-off-by: Joshua Lock <josh@linux.intel.com>
Joshua Lock [Thu, 18 Aug 2011 03:25:12 +0000 (20:25 -0700)]
bb/ui/crumbs/tasklistmodel: remove useless items from dependency list
Ensure the dependency list is uniquified, doesn't include self references
and further doesn't include -dev references.
Signed-off-by: Joshua Lock <josh@linux.intel.com>
Joshua Lock [Thu, 18 Aug 2011 03:17:42 +0000 (20:17 -0700)]
bb/ui/crumbs/tasklistmodel: more robust checking for substrings
Relying on the count() method of Str to determine whether the string
contains a substring is error prone purely because the return value doesn't
strictly convert to a Boolean value.
To that end take the more pythonic approach of using the in operator (foo
in bar) to check for the substring.
Further, add a helper method for the common case of testing whether a pn
is -native, -cross or virtual/
Signed-off-by: Joshua Lock <josh@linux.intel.com>
Joshua Lock [Tue, 16 Aug 2011 20:58:24 +0000 (13:58 -0700)]
bb/ui/crumbs/runningbuild: hide the progress bar on cache load complete
When we receive the CacheLoadComplete command we need to ensure the
progress bar is hidden as we can't expect the ParseComplete event, where
this would usually be done.
This patch makes the Goggle UI usable again.
Signed-off-by: Joshua Lock <josh@linux.intel.com>
Joshua Lock [Tue, 16 Aug 2011 20:56:37 +0000 (13:56 -0700)]
bb/ui/crumbs/runningbuild: reduce number of messages after recent msg change
The recent change to the message module to remove custom logging domains
resulted in an increased number of messages being displayed in the
running build view, ignore all messages lower than log level INFO.
Signed-off-by: Joshua Lock <josh@linux.intel.com>
Richard Purdie [Mon, 15 Aug 2011 16:29:09 +0000 (17:29 +0100)]
Fixup remaining bb.msg.domain users
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Richard Purdie [Mon, 15 Aug 2011 11:39:38 +0000 (12:39 +0100)]
build.py: Fix cut and paste error
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Joshua Lock [Sat, 13 Aug 2011 00:58:11 +0000 (17:58 -0700)]
Ensure only the filtered environment variables are inherited from the OS
The recent change which modified inheritFromOS to use the intial
environment, rather than the current environment, introduced a bug such
that variables which had been cleaned from the environment where still set
in the data store.
This patch changes things such that a list of approved environment
variables is saved after the environment is cleaned and only the variables
in this list are inherited in inheritFromOS.
CC: James Limbouris <james.limbouris@gmail.com>
CC: Chris Larson <clarson@kergoth.com>
Signed-off-by: Joshua Lock <josh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Richard Purdie [Fri, 12 Aug 2011 14:25:58 +0000 (15:25 +0100)]
bitbake/msg.py: Drop manually created domain lists
This patch removes the majority of the domain related code from bb.msg
on the grounds that we now support dynamic creation of logging domains
so having this hardcoded is just error prone and less flexible. It also
makes the msg code overly and needlessly complex.
It also removes the bb.msg.debug/note/warn/plain/error functions since
we might as well remove them rather than try and fix them at this point.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>