Commit Graph

1348 Commits

Author SHA1 Message Date
Richard Purdie d366c1890e siggen.py: Handle cases where the input to symmetric_difference() may be None
[YOCTO #1967]

(Bitbake rev: f6cee29bf853874876923a7d6ae8574e3801ae8d)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-02-10 16:57:27 +00:00
Shane Wang a95445cf7b bitbake: Add description into the cache and clean up cache duplication
With the addition of new cache domains, the summary, license and section
information is no longer requred in the core cache since its only used by
the hob UI. This patch removes the duplicated entries.

It also adds the DESCRIPTION field to the cache for the benefit of hob2.

(Bitbake rev: 33ffb2e99825cb643b148b3462c2d4cf33ff5f58)

Signed-off-by: Shane Wang <shane.wang@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-02-02 16:55:28 +00:00
Richard Purdie 64662290d3 fetch2/git: Add workaround for clone using alternates problem
To quote my report of this to the git mailing list:
"""

I have a problem with git clone commands using alternates failing by
mixing up different repositories. I have a situation where I could end
up with both:

/srv/mirrors/repo
/srv/mirrors/repo.git

as bare clones.

I then try cloning "repo" with alternates with the command:

$ git clone -s -n /srv/mirrors/repo /tmp/foo
Cloning into /tmp/foo...
done.

$ cat /tmp/foo/.git/objects/info/alternates
/srv/mirrors/repo.git/objects

Note how I'm now referencing repo.git, not repo. This doesn't work as
expected giving some very bizarre results when actually using the
repository.

I appreciate this is a rather bizarre corner case but its one that is
breaking the build system I work with. Ideally people would use a
consistent URL for the same repository but we have an example where they
haven't and this really shouldn't break like this.

Looking at the code, the cause seems to be

clone.c:get_repo_path():
        static char *suffix[] = { "/.git", ".git", "" };

since its looking in order for:
 repo/.git (fails)
 repo.git (suceeds, incorrect)
 repo (never looked at)

I'm not sure what would break if that order were to change, swapping the
last two options.

I can "force" the issue by running:

git clone -s -n /srv/mirrors/repo/ /tmp/foo

but this results in the slightly odd looking:

$ cat /tmp/foo/.git/objects/info/alternates

/srv/mirrors/repo//objects

which does at least work.
"""

This patch adds the trailing slash to ensure the correct repository is
referenced at the expense of some ugliness in the alternates file.

(Bitbake rev: d978e7b35550e3785c7c567ffe4c40a3c3947450)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-02-01 15:08:43 +00:00
Christopher Larson 38daf8b7eb cooker: add missing shutdowns to the exception handling
(Bitbake rev: c9f58ef6b897d3fa5b0d23734b5f2cb3dabb057a)

Signed-off-by: Christopher Larson <chris_larson@mentor.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-02-01 15:08:42 +00:00
Paul Eggleton 526264e7d7 bitbake-layers: improve show-overlayed output
Make the following improvements to the show-overlayed subcommand:

* Show recipes that are overlayed when the version is higher or lower,
  not just when it is the same. This gives a much better picture of the
  influence each layer is having over the metadata used for building.
  This can be disabled with the -s option if you just want to see
  recipes with the same version as before.
* Default to showing name (PN), layer and version rather than the full
  path and filename. The old style formatting can be used by specifying
  the -f option.
* Mark skipped recipes as such in the output, and print them in the
  correct sorted place in the list rather than at the end
* Prefix/suffix title line with === so it can be filtered out easily in
  shell scripts if desired

(Bitbake rev: 43b473275d3cb2e60a14e4a52cdc4654b3f4e5e7)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-02-01 15:08:41 +00:00
Richard Purdie de7a6ab1ba runqueue.py: Add inter setscene task dependency handling
This is being added to resolve setscene race issues where we do have
particular dependencies required between setscene tasks. This allows
specific dependencies to be specified. This allows us to fix the races
in sstate with the useradd class in OE-Core.

Any tasks being depended upon have their reverse dependencies cleared to
ensure we don't have circular references.

(Bitbake rev: e1b157d26374a70e6274edcb4c0b9f3bc48f765c)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-01-27 09:40:06 +00:00
Richard Purdie 9aeb38a5b8 runqueue.py: Fix missing setscene dependencies
When constructing the setscene inter-dependencies, we need to account for all task,
not just the last one found. This patch corrects this oversight and ensures all
dependencies are added, not just the first one found.

(Bitbake rev: b9b5b5129d066e1ff7d3effda116afc3c6657beb)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-01-27 09:40:05 +00:00
Richard Purdie 2a361cdb39 data/runqueue.py: Fix commented out test code after variable name changes
(Bitbake rev: 175c5c8a5e51365aa127562e8598e84f5cd36495)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-01-27 09:40:05 +00:00
Richard Purdie 76c16c4fa8 Bump the version to 1.15.1
(Bitbake rev: 65c2eb1c095fe7ba3259060aefd4ba0e20cae319)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-01-23 09:01:36 +00:00
Richard Purdie 7a8bae92ed siggen.py: Abstract the runtime task dependency handling code in the generators
This means that custom signature handlers can override specific parts
of the code without having to reimplement whole functions allowing them
more flexibility.

(Bitbake rev: 164195c068a656733cfe7aa07369c5ed6ea62ca5)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-01-20 16:47:40 +00:00
Richard Purdie c4a8fab1a4 cooker.py: Allow siggen classes to be added by the metadata
By calling init_parser which sets up the siggen code after the ConfigParsed
event is fired, we can allow the metadata to add siggen classes which
was always what the code intended.

(Bitbake rev: 69fd5ad4a8402fab5eb8348260966b337c5648ff)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-01-20 16:47:40 +00:00
Paul Eggleton 8878ee89ba bitbake/fetch2: allow resuming interrupted fetch
A lot of our checks in the fetcher code assume that if the downloaded
file exists, the download finished successfully; this meant that if
BitBake was interrupted in the middle of a fetch then it would not
resume the fetch the next time, but instead attempt to use the
half-fetched file and usually fail as a result.

Since we're already writing a ".done" stamp file when a fetch completes,
just check for its existence and assume the download didn't complete
successfully if it isn't present.

(Bitbake rev: 721e986624529aedef96dd06c9fe6243f2897b10)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-01-20 16:47:39 +00:00
Paul Eggleton 42645b0965 bitbake/runqueue: always log tasks summary
It's unclear from the history but at some point we stopped logging the
"Tasks Summary" NOTE when tasks failed. Reinstate this for failure, and
also make the count of attempted tasks include the failed task.

(Bitbake rev: e44d5be98fc5d2589cd929ce143638395936b936)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-01-20 16:47:39 +00:00
Richard Purdie f3e51862f1 siggen: Ensure correct runtask dependency output is shown for diffsigs
The actual task names are discounted for comparison of dependent tasks, only
the actual hashes are used. This updates the comparison code to account for
this change, attempting heuristic matching for more user friendly output but
falling back to showing the changed hashes directly. This avoids some confusing
output to users where it looked like tasks had changed when they had not and
actually had the same hash but a different taskname.

(Bitbake rev: 7da7dff83ed765c9cde1d7f91ee1b65e49520481)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-01-20 16:47:39 +00:00
Christopher Larson 0779a90e2a cooker: use futures rather than a multiprocessing pool
This avoids some silent parser hangs we were seeing which were
near impossible to debug as no user feedback was given.

[RP: Tweak commit message]
(Bitbake rev: d104f29871c04a5a36600a35b2568b49e5b21ca0)

Signed-off-by: Christopher Larson <chris_larson@mentor.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-01-20 16:47:38 +00:00
Lianhao Lu 1fedd166b7 bitbake/persist_data: Reconnect when DB is locked
[YOCTO #1761]
Reconnect to the backend Sqlite DB in 'database is locked' exception so
the timeout can be leveraged in each time retry.

(Bitbake rev: b310382764367b573c84f33d847c6eb821266f9e)

Signed-off-by: Lianhao Lu <lianhao.lu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-01-19 00:15:38 +00:00
Paul Eggleton 684c6ef2d0 bitbake/knotty: print task failure summary
Remove the error logged within cooker summarising the list of failed
tasks, and instead print this in the UI (knotty) where it belongs. This
also adds the actual name of the task that failed as well as the
corresponding recipe file that was being shown previously.

In addition, reformat the summary messages more tidily - no extra breaks
between lines and use correct English singular/plurals, with some
allowance for future translation.

(Bitbake rev: cdf69913f99d28bc7f51067a60257701f952c6cb)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-01-15 10:06:23 +00:00
Paul Eggleton 9fd17bbe1c bitbake/cooker: avoid printing stack trace for -b match error
Improves error output for matching problems when the -b / --buildfile
command line option is used.

Rename MultipleMatches exception to NoSpecificMatch (as it is also
raised when there are no matching recipes) and make it inherit from
BBHandledException so that it doesn't print a stack trace (we always log
an ERROR prior to raising it.)

In addition, improve the formatting of the error message - only call the
log function once rather than once for every match, and use a more
appropriate message if there are no matches.

Fixes [YOCTO #1141]

(Bitbake rev: 803550a5098ec878164245e71344c3d687310b72)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-01-15 10:06:22 +00:00
Paul Eggleton 5f5ae14ee3 bitbake/fetch2: reduce output for fetch failures
Make the warning for the initial fetch failure a single line - we don't
need the full command and output here yet, but write it into the log in
full as a debug message. However, if fetching from mirrors fails as well
then print out the full details for the first error that occurred as an
ERROR rather than a WARNING.

Since this is logged as an ERROR, combined with an earlier patch it
suppresses the full log which does make the output much more readable
for any fetch error.

Fixes [YOCTO #1832].

(Bitbake rev: 6bbdc7d259c0cc041b62dbdb26cfc3ec6edcb6f3)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-01-15 10:06:22 +00:00
Paul Eggleton eb6291b36f bitbake/knotty: avoid printing full task log when error already printed
If a task has logged an ERROR then don't print the contents of the
task's log file in knotty (the default terminal UI).

As a side-effect we now also respect BBINCLUDELOGS in knotty; if it is
false we never print the log (but the pointer to the log file is always
printed).

(Bitbake rev: b9746b7e4d7aa5c34eba15a61427bfc6949af123)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-01-15 10:06:22 +00:00
Paul Eggleton ecdfc1ebbe bitbake/fetch2: correctly decode exit signal/status
The termination signal and exit code of the fetch process were not being
decoded correctly, resulting in bitbake reporting that the process
terminated with a signal of the exit code (if it was under 255). There
are functions in the Python os module to do this decoding correctly (for
Unix at least), so let's use them.

(Bitbake rev: 50aea9a76e40cf71cc3f1462c88298e4846a031c)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-01-15 10:06:21 +00:00
Paul Eggleton 4e8085ccfa bitbake/runqueue: avoid "failed" in task summary if nothing did
Seeing the word "failed" alone without reading the whole context has
occasionally triggered an automatic assumption on the part of some users
(myself included) that something has gone wrong, even when this message
is telling you that "0 [tasks] failed". To avoid this let's just say
"all succeeded" in this case instead.

As a bonus this means you can now search the output for "fail" and not
find anything if all went well.

(Bitbake rev: b6f067af12d4661758a78788f1db472684b9aba8)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-01-15 10:06:21 +00:00
Paul Eggleton dcf6b641fe bitbake/fetch2: improve error formatting for fetcher errors
* The "name" argument to FuncFailed is rarely used as a name in actual
  usage within bitbake, so don't treat it as one in the output.
* Don't print URL for FetchError if it was not specified (i.e. don't
  output "Fetcher failure for URL 'None'")
* Don't include URL in "unable to fetch from any source" message since
  we supply it to FetchError and it will be printed anyway.
* Don't include URL in "checksum failed" message for the same reason

(Bitbake rev: 86811bd85e2e453ee92a05fe60160d9b49ac69e8)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-01-15 10:06:21 +00:00
Paul Eggleton 98a610b3db bitbake/knotty: don't count errors as warnings in summary
The count of warnings being shown in the summary at the end was also
including the number of errors.

(Bitbake rev: d242d6ca81dd83b2b13a3ac77ac4cd829a69cf83)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-01-15 10:06:20 +00:00
Lianhao Lu 489cde8eb0 bitbake: Automatically start local PR service.
[YOCTO #1126]
A local PR service will be started and stopped automatically along
with the bitbake invocation/ternimation.

This local PR service will be started only and if only when the
PRSERV_HOST is set to 'localhost' and PRSERV_PORT is set to '0'.

When started, the sqlite3 database is stored at
"${PERSISTEN_DIR}/prserv.sqlite3" or "${CACHE}/prserv.sqlite3".

(Bitbake rev: 9d8f45407c67ed0d3c4f820cf646de3c385067c7)

Signed-off-by: Lianhao Lu <lianhao.lu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-01-11 10:36:20 +00:00
Richard Purdie a5463088fe bitbake: Add BBHandledException exception class
We have a problem knowing when to show the user debug information and
when not to since the code has already shown the user suitable information
about why a failure is occurring.

This patch adds a bb.BBHandledException exception class which can be used
to identify those exceptions which don't need further explanation to
the user.

This patch uses this class for the bb.providers exceptions and ensures the
command handling code correctly filters the exceptions meaning that

"bitbake invalid"

now shows an simple error message and not a python traceback.

[YOCTO #1141 partial]

(Bitbake rev: eac9249b40ae1e3aa21e016010c862664e59a8d4)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-01-10 17:40:43 +00:00
Richard Purdie e4a365098a bitbake/knotty: Show summary of warning/error messages shown
Show a summary count of warning/errors messages shown to the user during the
build and make it clear when an error exit code is being set.

[YOCTO #1540]

(Bitbake rev: 9943bad611a974e4d37a00c7a4de1752250370c5)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-01-10 17:40:42 +00:00
Dongxiao Xu 468998cddb command.py: add parseConfigurationFiles API
The parseConfigurationFiles API calls the related function in
cooker.py to parse config files.

(Bitbake rev: 96c307b9874131ad8c7d9caea6f6dfbd09aab9d4)

Signed-off-by: Dongxiao Xu <dongxiao.xu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-01-06 16:01:44 +00:00
Dongxiao Xu eb2a8fe6c0 cooker: remove command import in cooker.py
There is no direct use of command in cooker.py, and it is using
bb.command instead. Remove command in the import list.

This fixes a problem of embedded import between command.py and
cooker.py.

(Bitbake rev: c353316b2efcc7a893d6b4aa9a9647d51a6f69e3)

Signed-off-by: Dongxiao Xu <dongxiao.xu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-01-06 15:55:57 +00:00
Dongxiao Xu 4c30a7e9a3 cooker: remove command import in cooker.py
There is no direct use of command in cooker.py, and it is using
bb.command instead. Remove command in the import list.

This fixes a problem of embedded import between command.py and
cooker.py.

(Bitbake rev: 92fec2788e33d301cc63848901bc6adc764a2ecf)

Signed-off-by: Dongxiao Xu <dongxiao.xu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-01-06 15:55:56 +00:00
Dongxiao Xu e69e5a7e0b xmlrpc: Change BitbakeServerInfo init function
Pass host and port to BitbakeServerInfo class instead of the "server"
instance. With this change, GUI can connect with server individually
by host address and port.

(Bitbake rev: 5124351d6c287185723c98e6e4400c5402a5c8a8)

Signed-off-by: Dongxiao Xu <dongxiao.xu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-01-06 15:55:56 +00:00
Dongxiao Xu cf13bfe661 command.py: add initCooker API
initCooker is to set the cooker to the initial state with nothing
parsed.

(Bitbake rev: 8ee9c6cc47938604268242d90bd3007218f9a36e)

Signed-off-by: Dongxiao Xu <dongxiao.xu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-01-06 15:55:56 +00:00
Dongxiao Xu 7d7d3a0009 cooker: user bb.configuration.data to inject events
For buildTargets function, we use bb.configuration.data as parameter
to inject events, since in hob environment, some variables are
modified dynamically and bb.configuration.event_data may out of date.

(Bitbake rev: 487a124942fd5cd9de71413b79a4049a6d26f1e8)

Signed-off-by: Dongxiao Xu <dongxiao.xu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-01-06 15:55:56 +00:00
Dongxiao Xu 1c08843998 command.py: Modify needcache value for certain functions
for findConfigFiels() and findFilesMatchingInDir() functions, they
don't need to parse all the bb files, thus setting the needcache
value to be False.

(Bitbake rev: 3ef73dee8b08ccfd15a4901cce315a99b22e71d7)

Signed-off-by: Dongxiao Xu <dongxiao.xu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-01-06 15:55:55 +00:00
Richard Purdie 7f837eb05f bitbake/runqueue: Improve the setscene logging
When debugging setscene problems it was found that some extra debug messages were useful.
This patch adds them.

(Bitbake rev: cff2c258b77fde01d530a5923e553e6111b15eb5)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-01-05 13:04:19 +00:00
Juraj Hercek 51d64452f6 fetch2/git: change colon to dot in ud.host
Local cloning of git repositories from DL_DIR into WORKDIR fails when
using ssh URL with port specification e.g.
"ssh://user@host:port/path/to/repo.git". Git fetcher clones such remote
repository into "${DL_DIR}/git2/host:port.path.to.repo.git". However,
when clonging from ${DL_DIR}/git2/host:port.path.to.repo.git into
${WORKDIR}, git fetcher fails with "ssh: Could not resolve hostname
${DLDIR}/git2/host: Name or service not known".

A solution is to replace ":" by "." in host component, similarly as it
is done when replacing "/" with "." in path component, so that local
clone directory in DL_DIR looks like this: "host.port.path.to.repo.git".

(Bitbake rev: 1f2867b79f1cd2bfbdc849ba5677a39db6fa3396)

Signed-off-by: Juraj Hercek <juraj.hercek@jhksoftware.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-01-04 16:04:07 +00:00
Joshua Lock 4648aadfe1 ui/crumbs/hobprefs: trigger a reparse after changing IMAGE_FSTYPES
As reported on the mailing list[1] when changing IMAGE_FSTYPES through the
hob preferences a reparse is required before the changes will be picked up
by the system. This patch sets the reload_required property of the class to
true when the image types have been modified to ensure the reparse is
triggered.

1. https://lists.yoctoproject.org/pipermail/yocto/2011-December/006002.html

(Bitbake rev: 6c0babf08909307ab69a66ed06e77e8818b2a8c5)

Signed-off-by: Joshua Lock <josh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-12-20 13:15:54 +00:00
Joshua Lock 25e449a710 ui/crumbs/runningbuild: handle InvalidTask events
The knotty UI just ignores these and so should RunningBuild, if these events
aren't handled the UI appears to hang.

Fixes [YOCTO #1665]

(Bitbake rev: 540ba78075bd525776aa23bf38bee66350c66534)

Signed-off-by: Joshua Lock <josh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-12-20 13:15:54 +00:00
Matthew McClintock 4d6f8d4b74 siggen.py: If both sigs have a variable in it's whitelist then don't say it's changed
Some BB_HASHBASE_WHITELIST variables are in the lists of variable
dependencies for signatures. Ignore those differences in lists
since this difference does not matter

(Bitbake rev: 71b53a3f0766ca464560a1f6a449f9424fbdf7ae)

Signed-off-by: Matthew McClintock <msm@freescale.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-12-05 16:23:52 +00:00
Robert Yang 2639c37b25 Remove the async_cmds and sync_cmds from command.py
In bitbake/lib/bb/command.py::Command::__init__, we have the following
lines:

for attr in CommandsSync.__dict__:
    command = attr[:].lower()
    method = getattr(CommandsSync, attr)
    sync_cmds[command] = (method)

for attr in CommandsAsync.__dict__:
    command = attr[:].lower()
    method = getattr(CommandsAsync, attr)
    async_cmds[command] = (method)

The sync_cmds and async_cmds are defined as global dictionaries, but it
seems that we've never used them (I did a "grep -r async_cmds bitbake/",
, there is no result except the ones that I have removed), and I can't
find the history of it from "git log -p", I guess that they have been
replaced by the self.cmds_sync and self.cmds_async.

[YOCTO #1791]

(Bitbake rev: 24e99460800856035bb54a84c7aa33b3517436e9)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-12-05 16:16:10 +00:00
Joshua Lock 897d1cd951 fetch2: fix Exception parameters when BB_STRICT_CHECKSUM enabled
BB_STRICT_CHECKSUM caused a backtrace as the FetchError parameters are
incorrectly specified such that FetchError is being passed 8 params
when it's expecting 3. This fixes the parameters so we're passing a
formatted string and the url.

(Bitbake rev: b8b2f4287c9125542b18a294c0a94ed89a7e73a8)

Signed-off-by: Joshua Lock <josh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-12-05 16:16:10 +00:00
Robert Yang dccb9b9fe8 Remove the duplicated assignments of self.configuration.cmd
The assignments of self.configuration.cmd in BBCooker seems duplicated,
have the followings in both BBCooker::__init__ and
BBCooker::loadConfigurationData:

if not self.configuration.cmd:
    self.configuration.cmd = self.configuration.data.getVar("BB_DEFAULT_TASK", True) or "build"

The __init__ invokes the loadConfigurationData, and it would make sure
that self.configuration.cmd has been assigned a proper value, so we can
remove the one in __init__.

[YOCTO #1791]

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-12-05 16:15:46 +00:00
Richard Purdie 9d6790c440 cooker.py: Allow the -e option to work with virtual classes and -b
Using bitbake -e -b virtual:xxxx:/path/to/the.bb would result in
zero matches since the virtual:xxxx piece wasn't being processed.

This adds in the necessary functionality to handle it correctly.

[YOCTO #1793]

(Bitbake rev: bd5a727c8447bcb747c1d2463b7de2ab6d21a7de)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-12-01 23:14:05 +00:00
Richard Purdie aab6939cb1 build.py: Be determistic about a function's cwd
There is a subtle but nasty problem that a function's cwd can vary
depending on whether ${B} (often ${S}) exists before the funciton is
called or not. Most functions in the system can cope with this but
its bad practise and I've just witnessed build failures resulting
from this during image generation from bootimg.bbclass. I also
suspect this could explain some odd fetcher behaviour witnessed in
the past.

This change ensures we always call funcitons with a specific build
directory making things deterministic.

(Bitbake rev: ef0888f83fa4408eb768257d7e03700202faad18)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-12-01 12:06:27 +00:00
Richard Purdie 4cd9671078 bitbake: Update users of getVar/setVar to use the data store functions directly
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-11-27 10:35:30 +00:00
Richard Purdie 4bf73cbbe2 bitbake/siggen.py: Don't backtrace if the taskhash data isn't present
This allows the code to safely fall back to dumping the basehash data
if the taskhash data isn't present for some reason. We could effecitvely
obsolete the runtime option and use this approach instead exclusively.

(Bitbake rev: 5ace320ccc01f4e326f90b7ba060dcbff3380dca)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-11-25 11:25:59 +00:00
Matthew McClintock 340657142e Nothing uses USERNAME, remove it - can cause sstate-cache conflicts
USER is the correct variable to use, also this can affect sstate
cache as well.

(Bitbake rev: d7f9edda65dae2e046871afa275c5a51dff48fc4)

Signed-off-by: Matthew McClintock <msm@freescale.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-11-25 00:30:30 +00:00
Richard Purdie b62a7559a3 data/siggen: Add vardepvalue mechanism to allow the variable dependency code to be forced to specific values
We have a problem if we want to inject specific information into the variable
dependency code. There are cases for example where we want a dependency
on the value of X but it doesn't matter how X was constructed or what
dependencies it might have had, we only care about the absolute value.
With the current code, its near enough impossible to do this.

This patch adds such a mechanism so the user can trigger this with code like:

baselib[vardepvalue] = "${baselib}"

It also refactors some of the code so we do variable lookups once
instead of doing this in two different functions.

[YOCTO #1583]

(Bitbake rev: 6c879b44ccf42dc73fe4467076e114700d7ba81b)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-11-24 22:11:45 +00:00
Richard Purdie 437928dfa4 fetch2: Improve uri_replace to handle paths with no trailing '/'
Currently if you specify a mirror like:

file://.* http://linux.freescale.net/yocto/sstate-cache

it won't work as you expect whilst:

file://.* http://linux.freescale.net/yocto/sstate-cache/

will since it has the trailing slash.

This patch handles both cases correctly. It also adds some debug to
the uri_replace function since its near impossible to debug it without
some kind of output.

[YOCTO #1578]

(Bitbake rev: a0246bf09c93bb657eaf6ba61d090b247ed33640)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-11-24 22:11:45 +00:00
Richard Purdie 2d8e5349a3 knotty: Add support for logging the console to logfile
The BB_CONSOLELOG variable is used to specify the console log file
to use. This means people can look up things that happened during a
build by may have scrolled off the screen.

[YOCTO #1771]

(Bitbake rev: a34ff490a46577a64345365fa1ac39c48d0861cd)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-11-24 22:11:44 +00:00
Richard Purdie ddd3f56ded runqueue.py: Fix debug message to reference the correct task
(Bitbake rev: 035c673c463ca450245acf824e7b7e8f889bdc89)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-11-24 22:11:44 +00:00
Richard Purdie 8b0a893e75 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]

(Bitbake rev: 5597a68fac0954c682b67471722c2643e2415f99)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-11-24 22:11:44 +00:00
Matthew McClintock 2485a81f48 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.

(Bitbake rev: 9a2029899c946ce9aa8adbc85f2cfe7a85b92182)

Signed-off-by: Matthew McClintock <msm@freescale.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-11-23 23:40:07 +00:00
Matthew McClintock a89443e1e0 bitbake: print out symmetric difference when comparing sigs
This is useful for really longs lists to pinpoint what has
actually changed

(Bitbake rev: f1eb6d3dcc10c42bb09383a87bde3afa69bc6ed9)

Signed-off-by: Matthew McClintock <msm@freescale.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-11-23 23:40:06 +00:00
Richard Purdie 319ea222ee 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.

(Bitbake rev: 61017fc5d30b7a13308d038872ec92efc1a84cef)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-11-23 23:40:06 +00:00
Richard Purdie 54217ee467 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.

(Bitbake rev: b7114d8e5d9b0720339bd5d24d243c0f2a7c1f3b)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-11-23 12:45:30 +00:00
Richard Purdie d43175e747 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.

(Bitbake rev: 2f6d987d9957a5d713ce119c24c2e87540611f53)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-11-22 13:07:07 +00:00
Richard Purdie 9320b76a97 bitbake/runqueue.py: Sort the list of skipped tasks as it makes searching the list easier when debugging
(From Poky rev: 5de8a495fba657e1febc616bbc737a8136cc88f9)

(Bitbake rev: 110f6cccbcc5907e15262c05d5c47da101e1a47d)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-11-21 16:55:11 +00:00
Richard Purdie 14fbf3eab4 bitbake/runqueue.py: Fix incorrect task number reference in debug message
(From Poky rev: 45887bbd5479041be05b914668f14de6ec9b9831)

(Bitbake rev: dc4439ca8c7db7ceee78bd0552f65ceddcff17a7)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-11-21 16:55:11 +00:00
Richard Purdie 9d4f955874 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.

(Bitbake rev: 658d7daa70e46c2b20973b90ee53f0bbadc8bf5d)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-11-18 14:22:40 +00:00
Richard Purdie 3148a6192e 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.

(Bitbake rev: 727ca945177ce9bd44515cf611e3e95a09466d98)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-11-18 10:47:09 +00:00
Richard Purdie cb66ebaa8b 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.

(Bitbake rev: 165a22ddcc647b945707fb5c483146bb336d5f66)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-11-18 10:47:09 +00:00
Paul Eggleton 97a40ff05e 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].

(Bitbake rev: e492eb4dc9016cd0bed194377c6f2b85cf0ad113)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-11-15 12:05:24 +00:00
Richard Purdie 2203a31dcb 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.

(Bitbake rev: 4a4046268f84b85559eea2c4b6a6004ad8cccb77)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-11-10 11:51:11 +00:00
Richard Purdie 12c6bcbf49 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.

(Bitbake rev: 05c29ab0b2ad3c521414cabb6a92bca15c6e919c)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-11-10 11:51:11 +00:00
Richard Purdie eda0ed9015 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.

(Bitbake rev: 6004cbf36c980c2574c1c9153df81a7c55317e17)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-11-10 11:44:58 +00:00
Richard Purdie d07473d2c2 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.

(Bitbake rev: f421ef819f00ac659504d9af41bcc8323422ff8c)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-11-10 11:44:29 +00:00
Christopher Larson ab3488264b 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.

(Bitbake rev: e724b9f417d1baf898f5afc6376c73c1a2ad8db9)

Signed-off-by: Christopher Larson <chris_larson@mentor.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-11-10 11:44:29 +00:00
Christopher Larson 7e436a9845 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).

(Bitbake rev: 405dfe69e6a608826e599ebf2f83ef8cf5083b96)

Signed-off-by: Christopher Larson <chris_larson@mentor.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-11-10 11:44:29 +00:00
Christopher Larson ae96ac1189 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

(Bitbake rev: 1060193ae4d54e667735dbff5d1d2be49a3f95c9)

Signed-off-by: Christopher Larson <chris_larson@mentor.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-11-10 11:44:29 +00:00
Christopher Larson 48d7f5251b 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).

(Bitbake rev: 84e535b5165c7e936c5b1486bdf4626ed3649f5f)

Signed-off-by: Christopher Larson <kergoth@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-11-10 11:44:28 +00:00
Christopher Larson 002451b3a2 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.

(Bitbake rev: d6c44fac184abae8395bfa7078f06675218aa534)

Signed-off-by: Christopher Larson <kergoth@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-11-10 11:44:28 +00:00
Richard Purdie 01f59c4169 Increment version post release
(Bitbake rev: 9c097704b4309dbe67fc360c8377edbedc354d00)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-11-04 15:43:27 +00:00
Richard Purdie 52253285fe Release 1.14.0
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-11-04 15:43:26 +00:00
Christopher Larson 925184a2a7 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.

(Bitbake rev: 8e4e75383e43d6da2c16ec5286186a0d0569b0f8)

Signed-off-by: Christopher Larson <kergoth@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-11-04 15:43:26 +00:00
Joshua Lock cd1b27291d 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]

(Bitbake rev: 5f8f923b76722c9b6c7ffbe19e94df50f900155f)

Signed-off-by: Joshua Lock <josh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-10-24 17:35:42 +01:00
Joshua Lock 64a54dbd73 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]

(Bitbake rev: 30ca41e596955fcbbe1ae6f4436ecf14cef96f8d)

Signed-off-by: Joshua Lock <josh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-10-24 17:35:42 +01:00
Joshua Lock e9f66d981a 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]

(Bitbake rev: db59297aa1861614ffaea4295b9b054baa8a12b9)

Signed-off-by: Joshua Lock <josh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-10-24 17:35:42 +01:00
Robert Yang be9ee810bd Fix typos in local.conf.sample and local.conf.sample.extended
Fixes bug [YOCTO #1667]

Fix typos in local.conf.sample and local.conf.sample.extended:

differernt -> different
chages -> changes
complation -> compilation
egde -> edge
"an an" -> "as an"
images's -> image's

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-10-11 14:11:30 +01:00
Matthew McClintock 191e61a39c fetch2: Export additional variables to the fetchers
git could need these environment variables when working behind
a proxy

(Bitbake rev: dca46cc2e1c75b6add2c4801e2994a4812745f5b)

Signed-off-by: Matthew McClintock <msm@freescale.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-10-06 16:59:34 +01:00
Matthew McClintock dd71f67db1 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

(Bitbake rev: a7b75e4db52445b30ec0fc0053dcf454f5f7d2db)

Signed-off-by: Matthew McClintock <msm@freescale.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-10-04 13:46:15 +01:00
Paul Eggleton dea2fd181a 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].

(Bitbake rev: c6e88b7c0e61f9586a275df53f48b90687c5f92f)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-09-25 16:25:27 +01:00
Joshua Lock e271de0fab 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.

(Bitbake rev: 00fc1d7249b5e217cc7c36ac71b63ddad1c5b769)

Signed-off-by: Joshua Lock <josh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-09-25 16:25:06 +01:00
Joshua Lock 7b578b9b73 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.

(Bitbake rev: 656eafe0f2c9ec7730d33e15705b8c720f787c49)

Signed-off-by: Joshua Lock <josh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-09-25 16:25:06 +01:00
Joshua Lock 98a762009d ui/crumbs/hobeventhandler: fix variable name typo
(Bitbake rev: f7d0560307707fe10bf80820f1e6ae300864f915)

Signed-off-by: Joshua Lock <josh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-09-25 16:25:05 +01:00
Joshua Lock f159dfb628 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]

(Bitbake rev: 109e1597671dfb7222672e268190aabc727960ca)

Signed-off-by: Joshua Lock <josh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-09-25 16:25:05 +01:00
Julian Pidancet bcfff457f6 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.

(Bitbake rev: 623e9c7f7a9cf12b8c81c26cc608990682a601dd)

Signed-off-by: Julian Pidancet <julian.pidancet@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-09-21 14:07:31 +01:00
Joshua Lock 863f43a093 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.

(Bitbake rev: 043914a8b478fd4a7799acd1b44bdb3b0af2165a)

Signed-off-by: Joshua Lock <josh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-09-21 14:07:30 +01:00
Joshua Lock 7dc4495951 ui/crumbs/runningbuild: fix log messages right-click menu
Pass the correct callback name to the connect method.

(Bitbake rev: d2b9167a7b0eb3fcb31d64f915beef41aac659a5)

Signed-off-by: Joshua Lock <josh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-09-21 14:07:30 +01:00
Joshua Lock 6bed96c4dc 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.

(Bitbake rev: 705156e2812afb288632f01416fcbbf9add26bee)

Signed-off-by: Joshua Lock <josh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-09-20 22:24:10 +01:00
Joshua Lock 081990b2a3 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]

(Bitbake rev: ab6c63f35739c30df0e8a9d0f1ae982b96e538ed)

Signed-off-by: Joshua Lock <josh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-09-20 22:24:10 +01:00
Joshua Lock 8ebca0c5a8 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]

(Bitbake rev: bdbd724e806c9ca69cc1508bac7ec0a2dce95543)

Signed-off-by: Joshua Lock <josh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-09-20 22:24:10 +01:00
Paul Eggleton 92015c7863 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>

(Bitbake rev: 3e7f8afeacf7c8c8de3e87778a3907e33d4a06b3)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-09-20 22:24:10 +01:00
Martin Jansa 28c3aa8b85 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

(Bitbake rev: 3a54dcc09a12406ec6cf22b4b1a2cc4fc203822c)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-09-20 22:24:09 +01:00
Martin Jansa 35fdd5a195 fetch2/git: fix logger.debug
* logging/logger typo was fixed in 38a598731b49c8a0ba0ede570adc33eb1e848235
  but debug level is still missing

(Bitbake rev: 9de432fe2348cdbc93037bb49abb508d1fd38336)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-09-20 22:24:09 +01:00
Joshua Lock 9e4dc60c75 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.

(Bitbake rev: 5896d8ff7bcf85b3bab20fc27c4c15e87f86b4d9)

Signed-off-by: Joshua Lock <josh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-09-20 22:24:09 +01:00
Christopher Larson 2a09a93cba taskdata: fix string formatting of an error message
(Bitbake rev: 224db31c46f5e91ced0e509c5fc564baaffa7b27)

Signed-off-by: Christopher Larson <kergoth@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-09-20 22:22:21 +01:00
Richard Purdie 7a0cbe6b0e 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]

(Bitbake rev: 3a0f2dda3c6de993f08ed50e9d513add9407339c)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-09-19 05:55:37 +01:00
Richard Purdie 92518c5017 git.py: Fix logging vs logger typo
(Bitbake rev: 1043bbcd095314e717b372ed69ea6ee5b8a06573)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-09-17 12:11:18 +01:00
Joshua Lock 826a53adf6 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]

(Bitbake rev: f4be83aae77a713e2b5a2d094651639b6e641031)

Signed-off-by: Joshua Lock <josh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-09-13 21:48:35 +01:00
Joshua Lock 684a7c655b 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]

(Bitbake rev: 4394e38b038e1bc9845adf01d73363157d98c96d)

Signed-off-by: Joshua Lock <josh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-09-13 21:48:35 +01:00
Joshua Lock 58570ec6a5 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]

(Bitbake rev: 39ed18e70e9f3a13b522b4ea02bf6f4bdb7de89c)

Signed-off-by: Joshua Lock <josh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-09-13 21:48:34 +01:00
Joshua Lock 3d09687196 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]

(Bitbake rev: 09f5aed2edb0b8f4a6570e1041b5db66cf2d17cc)

Signed-off-by: Joshua Lock <josh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-09-13 21:48:34 +01:00
Richard Purdie 20dbf00243 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.

(Bitbake rev: 459addf13721a6847406f215650fa1882fb83ea9)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-09-09 19:08:54 +01:00
Richard Purdie fa071627ad 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.

(Bitbake rev: 67e5e23034c5ec2b9efcca935242830306c0048d)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-09-09 18:39:25 +01:00
Dmitry Eremin-Solenikov a6994f8413 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.

(Bitbake rev: 24272dae15ccf641ece11ef5a6e2bfa3ebb6f5f9)

Signed-off-by: Dmitry Eremin-Solenikov <dbaryshkov@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-09-05 20:25:43 +01:00
Paul Eggleton a9325ecad8 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]

(Bitbake rev: 71ac7fda51ed80e9ef6d1a3bca653683893e4770)

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>
2011-09-05 20:25:43 +01:00
Paul Eggleton 88852a522d 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.

(Bitbake rev: 069d85cde01d14f8da31ad5cbd843a4d99628d42)

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>
2011-09-05 20:25:43 +01:00
Joshua Lock 09d78741ea 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.

(Bitbake rev: 73b6ff4654d10baae59d83e8568d58d989e99dd7)

Signed-off-by: Joshua Lock <josh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-09-05 20:25:42 +01:00
Joshua Lock 38653d64d2 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]

(Bitbake rev: b0cce5b52a20c0dad5ec0c4053f437cae89b6137)

Signed-off-by: Joshua Lock <josh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-09-05 20:25:42 +01:00
Joshua Lock c0cb486a39 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]

(Bitbake rev: 3157967d08266b8d1ac563ba609ac3027b60d040)

Signed-off-by: Joshua Lock <josh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-09-05 20:25:42 +01:00
Joshua Lock 9a67398791 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]

(Bitbake rev: bb3e9113074ea1254aa03a247a1a1070682df9c8)

Signed-off-by: Joshua Lock <josh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-09-05 20:25:41 +01:00
Joshua Lock 7d3d3e9000 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.

(Bitbake rev: 126267c545ede65042959d134ea75c0345577747)

Signed-off-by: Joshua Lock <josh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-09-05 20:25:41 +01:00
Joshua Lock cffbab5c06 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]

(Bitbake rev: 02ab0e11d8dd42f5ca440b3d8d2073e23f55113a)

Signed-off-by: Joshua Lock <josh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-09-05 20:25:41 +01:00
Richard Purdie c9c76ef2cf bitbake/event: Allow event handlers to quietly raise SkipPackage events
(Bitbake rev: 2a7c92bdadf9a86d9ea2ea0c128108e38e0e97e5)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-09-02 18:15:27 +01:00
Holger Hans Peter Freyther 4baae7875d fetch2/git: Allow to specify the name of the checkout directory
(Bitbake rev: 639db8c766cada7180f9447f51303f9b30d7e817)

Signed-off-by: Holger Hans Peter Freyther <holger@moiji-mobile.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-09-02 18:15:27 +01:00
Richard Purdie 9958a579e7 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]

(Bitbake rev: 8540c09d4e509e3277940464c71174d8a0aca6ab)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-08-31 19:38:28 +01:00
Richard Purdie 64327ba9ea 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.

(Bitbake rev: 30eaef7f50fff855cf8830772a7088dd83a4240e)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-08-31 19:38:22 +01:00
Joshua Lock e853d0a378 ui/crumbs/tasklistmodel: don't add empty entries to COL_BINB
(Bitbake rev: 85c5b8b3b9c805883537900a46eddb2301ee93f9)

Signed-off-by: Joshua Lock <josh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-08-30 21:57:15 +01:00
Joshua Lock ea33ddc6a4 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.

(Bitbake rev: 82845569c37591f6b097b9db071484f8171a39ea)

Signed-off-by: Joshua Lock <josh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-08-30 21:57:15 +01:00
Joshua Lock ed15be3313 ui/crumbs/tasklistmodel: remove unnecessary check
Cheaper to set COL_INC to True regardless of whether it's already set.

(Bitbake rev: 12c6f98ba7a68baeeaee00594d910e1be8d55d87)

Signed-off-by: Joshua Lock <josh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-08-30 21:57:14 +01:00
Joshua Lock bfdc8a295b 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.

(Bitbake rev: d2450536269996147a22d6eafbdf72aa62afa4f6)

Signed-off-by: Joshua Lock <josh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-08-30 21:57:14 +01:00
Joshua Lock 9a047762cf 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]

(Bitbake rev: 01ef2ab0d201f3cb3666462558c9cf485592e04f)

Signed-off-by: Joshua Lock <josh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-08-30 21:57:14 +01:00
Joshua Lock e2a3f28330 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]

(Bitbake rev: 6ad1103b5fd592afa9ea03ef5a0d706604cc0e0f)

Signed-off-by: Joshua Lock <josh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-08-30 21:57:13 +01:00
Dongxiao Xu dfce2695b9 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)

(Bitbake rev: 6555a77c199f41bf35460138764e03e30c56d29f)

Signed-off-by: Dongxiao Xu <dongxiao.xu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-08-29 14:13:34 +01:00
Joshua Lock 85cf4de96c 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.

(Bitbake rev: 419b52e832f506504778d4d5957d1e77477bb513)

Signed-off-by: Joshua Lock <josh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-08-29 13:57:51 +01:00
Joshua Lock cd51ea63e6 ui/crumbs/tasklistmodel: don't add same item to binb column more than once
(Bitbake rev: 5e95098be1c1f92c2d72fb371c94bab31c46cf83)

Signed-off-by: Joshua Lock <josh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-08-29 13:57:51 +01:00
Joshua Lock d1b1109e82 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.

(Bitbake rev: 0423587db09f6f28cf9d801f5657a84157f42dbe)

Signed-off-by: Joshua Lock <josh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-08-24 19:49:33 -07:00
Joshua Lock 39e90c81d7 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.

(Bitbake rev: a17334e85869bf78d63df1b2336d68980a0b359f)

Signed-off-by: Joshua Lock <josh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-08-24 19:49:33 -07:00
Joshua Lock 8ac3cec827 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.

(Bitbake rev: 27dcf245abf3805be47894773406392fdf055e48)

Signed-off-by: Joshua Lock <josh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-08-24 19:49:32 -07:00
Joshua Lock cd80b4fc6d bb/fetch2/git: add checkstatus command
Use git ls-remote to implement checkstatus command for the git fetcher.

(Bitbake rev: 0ed281feb6d244d3700da484f4e83394ae394f93)

Signed-off-by: Joshua Lock <josh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-08-24 19:49:32 -07:00
Richard Purdie 09761c95e7 fetch2/git: Add rsync as a valid git protocol
(Bitbake rev: 4cc4e318fd6907a4742f327177f321d140385c9e)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-08-23 10:00:35 -07:00
Joshua Lock 5c34022a11 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]

(Bitbake rev: 023edbe6d04f25c7e0e7b615eb06cd3727c665cb)

Signed-off-by: Joshua Lock <josh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-08-23 10:00:34 -07:00
Joshua Lock ba63660821 bb/ui/crumbs/hobprefs: fix setting IMAGE_FSYTPES
We were setting the value as a list when a string is expected

(Bitbake rev: fc3bb3a4f04f64c6d47c7bf040b7522e9204a458)

Signed-off-by: Joshua Lock <josh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-08-23 10:00:34 -07:00
Joshua Lock 17bd3a0c6b bb/ui/crumbs/hobeventhandler: fix return values of *_image_output_type
These methods are expected to return lists.

(Bitbake rev: 4e101de9034c20dfda0bb851e84f4315335620f6)

Signed-off-by: Joshua Lock <josh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-08-23 10:00:34 -07:00
Joshua Lock a17e6c4a2e 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]

(Bitbake rev: c969857c7f5963098e6584803eafb4e2be0eea46)

Signed-off-by: Joshua Lock <josh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-08-23 10:00:33 -07:00
Joshua Lock 4ea4f44645 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.

(Bitbake rev: cf79424592a81378de5edad11cf6c4f427c94bcc)

Signed-off-by: Joshua Lock <josh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-08-23 10:00:33 -07:00
Joshua Lock 989ce0cf55 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]

(Bitbake rev: e176dcf637da2d0105a4361a46d5df5238e3b8ce)

Signed-off-by: Joshua Lock <josh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-08-23 10:00:33 -07:00
Joshua Lock b6009b2952 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]

(Bitbake rev: 91d1f5f5a44c80e6702221509e2e9aadbe05bcc0)

Signed-off-by: Joshua Lock <josh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-08-23 10:00:32 -07:00
Joshua Lock d2f1ede68a 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.

(Bitbake rev: 70aebebc3867d52e460355667e711c7c6dcd50ce)

Signed-off-by: Joshua Lock <josh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-08-23 10:00:32 -07:00
Joshua Lock c1b31f8996 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/

(Bitbake rev: d7768cefcddd59a5102d7e9b67e4416bf8603f55)

Signed-off-by: Joshua Lock <josh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-08-23 10:00:32 -07:00
Joshua Lock 108220137b 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.

(Bitbake rev: 64dfc574c12d882761e4958c8b1881cd47a87e0d)

Signed-off-by: Joshua Lock <josh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-08-23 10:00:31 -07:00
Joshua Lock 38393fb3c2 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.

(Bitbake rev: a12da000a8e4138fbdfd77f9c49b11fc69a315e1)

Signed-off-by: Joshua Lock <josh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-08-23 10:00:31 -07:00
Richard Purdie a21ff559e7 Fixup remaining bb.msg.domain users
(Bitbake rev: d5abdacaf9ac604ef8d8c1bafb9b30617827cb4f)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-08-15 17:31:52 +01:00
Richard Purdie e7981ad10d build.py: Fix cut and paste error
(Bitbake rev: a1980fc89e45be6fbd4a193aaa8142e8bebcf3f4)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-08-15 12:40:45 +01:00
Joshua Lock 61d83c6d6b 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>
(Bitbake rev: cb6c07054e8baf94614713ec257c643b22266d75)

Signed-off-by: Joshua Lock <josh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-08-15 09:49:37 +01:00
Richard Purdie a6c48298b1 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.

(Bitbake rev: 7627b561cbcb1482b464d69db70f38ea663180f3)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-08-15 09:49:11 +01:00
Joshua Lock 1c30381714 bb/ui/crumbs/tasklistmodel: simplify conditional in include_item
No need to check if the name ends with -native or -cross as path will be
None in this instance.

(Bitbake rev: bca739cdf55ba2a1c5e372e512d4f088345f245f)

Signed-off-by: Joshua Lock <josh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-08-15 09:47:09 +01:00
Joshua Lock cf1cd31c5c bb/ui/crumbs/tasklistmodel: make package_model_filter a little safer
Ignore names that include '-cross', rather than just 'cross'

(Bitbake rev: 06abfc9caf7f237a6bb762fb3ae9f3dec99688ca)

Signed-off-by: Joshua Lock <josh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-08-15 09:47:08 +01:00
Joshua Lock c82dc42d4d bb/ui/crumbs/tasklistmodel: optimise find_path_for_item
If the item_name contains virtual/, -native or -cross it won't be present
in the model. Return None early in this circumstance rather than iterating
the entire model and still returning None.

(Bitbake rev: aeef5a4b3999bd924e89e7738efe24f80ae94fd0)

Signed-off-by: Joshua Lock <josh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-08-15 09:47:08 +01:00