Commit Graph

2915 Commits

Author SHA1 Message Date
Alexandru DAMIAN 24f0617e25 bitbake: toaster: update database schema
This patch updates the database schema to resolve a
number of issues discovered while implementing the
UI interface.

We do not expect that all the data will come in valid
at this point.

	[YOCTO #5453]
	[YOCTO #5833]
	[YOCTO #5836]
	[YOCTO #5811]
	[YOCTO #5812]
	[YOCTO #5820]

(Bitbake rev: f8ad96d10a095e21fd2ce424c45e17f54642fb54)

Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-03-09 12:24:01 -07:00
Belen Barros Pena 0bad725381 bitbake: toaster: Move long content toggle to main.js
I have move all javascript needed for toggling very long
values for bitbake variables to main.js. I have changed the
names of the classes involved to make them more generic,
since I hope we'll be able to reuse them in other parts
of the Toaster interface.

.full-variable is now .full
.full-variable-hide is now full-hide
.full-variable-show is now full-show

I have also removed all the inline scripting in base.html, since
it is no longer needed.

(Bitbake rev: 73828f047385ced160c7900cad24535aa8d325cd)

Signed-off-by: Belen Barros Pena <belen.barros.pena@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-03-09 12:24:01 -07:00
David Reyna 4717749fd6 bitbake: toaster: implement the configuration pagedreyna/configure-detail-view
Update the configuration page with the file list pop-up, implement the file and description filters.

[YOCTO #4259]

(Bitbake rev: 54a767809960b66b2fe2d3bc46aa9c7e040c4ae3)

Signed-off-by: David Reyna <David.Reyna@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-03-09 12:24:01 -07:00
Ravi Chintakunta 31d4bf8484 bitbake: toaster: View detailed information about a task
Information about a task is displayed depending on it's execution
status and outcome status.

Edited to iterate through all possible entries for related setscene
tasks.

[YOCTO #4282]

(Bitbake rev: 62f502b1237d4060df6be1ee4f4865db5fa39a6a)

Signed-off-by: Ravi Chintakunta <ravi.chintakunta@timesys.com>
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-03-09 12:24:00 -07:00
Ravi Chintakunta 2bd19cd026 bitbake: toaster: Bug fix in reload page with parameters
Fix the bug in reload_params function that was failing when
the page URL did not have any parameters.

(Bitbake rev: 8cba40daf521d1740687f9a030f8472f980a4563)

Signed-off-by: Ravi Chintakunta <ravi.chintakunta@timesys.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-03-09 12:24:00 -07:00
Belen Barros Pena 76615857f0 bitbake: toaster: Fix breadcrumb date format in detail pages
The template basebuilddetailpage.html had the completed
on date in the breadcrumb set to naturaltime. Changed to
d/m/y H:i to match the date format in the basebuildpage.html
template, so that breadcrumbs display the same date format across
all pages.

(Bitbake rev: 188c12901c9573285956cded76f27a0d6330c82e)

Signed-off-by: Belen Barros Pena <belen.barros.pena@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-03-09 12:24:00 -07:00
Belen Barros Pena 48a93d6452 bitbake: toaster: Sort packages and dependencies in recipe.html
The tables in the Packages, Build dependencies and
Reverse build dependencies tabs in the recipe details
pages (template recipe.html) should be sorted by package
name and recipe name respectively.

This change adds the sorting.

(Bitbake rev: ff6c448c7b5bc7bf4fe75e15e66c4e02f07f7618)

Signed-off-by: Belen Barros Pena <belen.barros.pena@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-03-09 12:24:00 -07:00
Belen Barros Pena 5a5e7c0a68 bitbake: toaster: Change popover headings in recipes table
In the recipes table, dependencies and reverse dependencies
are shown inside a popover. The popover headings did not
match the table headings, so changed to "dependencies" and
"reverse dependencies" as per the design spec.

(Bitbake rev: 05f19e5cd8cca48e6e52f4b3ea1cd25d2ba4ac1c)

Signed-off-by: Belen Barros Pena <belen.barros.pena@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-03-09 12:24:00 -07:00
Belen Barros Pena 5462bd0f74 bitbake: toaster: Change help text for Section
The help text for the Section information in the
recipes table and the recipe details page said
"packages" instead of recipes, and it said there
were 5 possible values for the SECTION variable
(which is not true).

Changed to "The section in which recipes should
be categorised"

(Bitbake rev: 984273e07126674c674ad8b400418117ae087860)

Signed-off-by: Belen Barros Pena <belen.barros.pena@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-03-09 12:24:00 -07:00
Belen Barros Pena f0dce4283d bitbake: toaster: Hide the applied filter tooltip on click
When you apply a filter, we show you a tooltip on hover
that tells you which filter you have applied and allows you
to clear it quickly. That tooltip does not disappear
straight away if you click on the filter button: it hangs
in there because the tooltip has a delay specified on
hide. The effect is quite annoying.

This change to main.js makes sure the tooltip disappears when
you click the filter button.

(Bitbake rev: 5928d2f3cba4524966a34d8c845a04627b9b310b)

Signed-off-by: Belen Barros Pena <belen.barros.pena@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-03-09 12:23:59 -07:00
Belen Barros Pena e01f79042f bitbake: toaster: Add .muted class to disabled checkboxes
In the edit columns menu, the checkboxes for the columns in the
minimum table are disabled. To better communicate visually
the disabled state, this change applies the .muted class
to the labels of those checkboxes.

(Bitbake rev: 125a3da654ac7742a93ac93f4f23336ecd251a61)

Signed-off-by: Belen Barros Pena <belen.barros.pena@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-03-09 12:23:59 -07:00
Belen Barros Pena 33203ce371 bitbake: toaster: Set the right styles for definition lists
In the task details page, our labels are quite long and
the default width of the dt elements in the .dl-horizontal
class is too small. Changing the width to 200px, and the
left margin of the dd element to 220px.

Changing the bootstrap.min.css file is not ideal (ok, is
a pretty bad hack), but it is the only way to keep the
nice responsive styles for those definition lists.

(Bitbake rev: 1e655eb121173b4441a9a4e9005fe8c1f235dfbb)

Signed-off-by: Belen Barros Pena <belen.barros.pena@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-03-09 12:23:59 -07:00
Belen Barros Pena fd52dfd22d bitbake: toaster: Set correct string for missed sstate attempts
Replace 'Missed' with 'File not in cache'in models.py

(Bitbake rev: cb76a1d39ce36a36dc398a0422bcfac1c72f9c2b)

Signed-off-by: Belen Barros Pena <belen.barros.pena@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-03-09 12:23:59 -07:00
Belen Barros Pena a6867343b6 bitbake: toaster: Remove inline styles in h1
The templates bpackage.html, recipes.html and build.html included
an inline style declaration in the div containing the h1
tag to add a top margin of 40px. The extra top margin
is unnecessary in bpackage.html and recipes.html, but nicely
separates the Recent builds and All builds sections in build.html.

The changes remove the inline style declaration and create
a .top-air class in default.css to include the extra top margin
when needed, i.e. in the build.html template.

(Bitbake rev: 2841f0740024a8351606452a5f803b9b7f70c783)

Signed-off-by: Belen Barros Pena <belen.barros.pena@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-03-09 12:23:59 -07:00
David Reyna 438578e299 bitbake: toaster: extend Tasks to include Time, Disk IO, and CPU Usage
Update the All Tasks page to also cover the Time, Disk I/O, and
CPU Usage pages. Add filter count header support, and fix minor column
enablements.

[YOCTO #4387]

(Bitbake rev: 7e78836ebbddf0240094fd79a18cb057d6c4f322)

Signed-off-by: David Reyna <David.Reyna@windriver.com>
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-03-09 12:23:58 -07:00
Alexandru DAMIAN 93aa4aba74 bitbake: toasterui: add asserts on expected values
We add assert statements that validate expectations of
correct values and context when the data collection code is running.

These checks will help pinpointing unexpected data or
call flows, reducing debugging time.

Also contains a couple of very small fixes discovered through
these checks, including a virtual:native conflict with
regular tasks.

	[YOCTO #5553]

(Bitbake rev: e2fbd5c6fa6b53514e2cb23d42aa639020d8a475)

Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-03-09 12:23:58 -07:00
Alexandru DAMIAN 0daa189028 bitbake: toasterui: task data structure in toasterui
We update the structure used to hold interm task data,
before it is written to the database, to lower the changes
of key collision.

This will also lead to a cleaner data structure and easier
inspection.

(Bitbake rev: 49cb9f543526a161bc4c097f94422ea08b491ef9)

Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-03-09 12:23:58 -07:00
Marius Avram 1660519e5c bitbake: bb/ui: store_dependency_information optimization
This optimization is in support of the bug #5485. The function called
at the beginning of every build: store_dependency_information was taking
approximately 20sec and it was delaying the arrival of events from the
event queue. The change minimizes the calls to _save_a_task(),
reducing the time to half.

(Bitbake rev: b86fd2be40303d886fdb9ad3009355584d285acc)

Signed-off-by: Marius Avram <marius.avram@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-03-09 12:23:58 -07:00
Alexandru DAMIAN 06f9059abc bitbake: toaster: array-assignment fix from Chome
Apparently the JS engine in Chrome can't handle assignments to an array,
so I'm patching this up by using an intermediate array to hold the
values.

(Bitbake rev: 47f5fde1bd8cf2e6f7e5c4ec2534a2f9599c4ea2)

Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-03-09 12:23:58 -07:00
Alexandru DAMIAN 6fc246232a bitbake: toaster: mark dependency packages
We need to mark the package entries that are
created solely for dependency tracking purposes.

In order to avoid altering the database schema,
we mark the dependency targets with size = -1, since
this is not a valid size anyway and makes for easy
filtering.

	[YOCTO #5803]

(Bitbake rev: d11ed273dd6c520b16e9ccfe79476f340006a55d)

Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-03-09 12:23:57 -07:00
Alexandru DAMIAN 3d0bb418a0 bitbake: toasterui: adding new task outcome empty
In order to separate tasks with invalid states from the
no exec tasks, we add a new value OUTCOME_EMPTY for the tasks.

OUTCOME_EMPTY has the same value as OUTCOME_NA as to maintain
compatibility with already existing builds. New value for
OUTCOME_NA can be used to detect tasks with invalid states, i.e.
it should never appear after finishing a build.

Fixing noexec tasks outcomes.

	[YOCTO #5763]

(Bitbake rev: 475643ad78796835bf2e731b9d0fa5794ec80dd1)

Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-03-09 12:23:57 -07:00
Alexandru DAMIAN 7008a24792 bitbake: toastergui: fix task executed status display
The proper way to get a display-able value
in Django is to use a model method instead of clutter
the template with if/else.

	[YOCTO #5641]

(Bitbake rev: bb21b71dab70db163b804c7ebf27b85c59a39112)

Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-03-09 12:23:57 -07:00
Richard Purdie 4ae598195b bitbake: fetch2/wget: Fix downloadfilename functionality
Some of the previous cleanups broke the downloadfilename functionality.
This change fixes the code to ensure the commandline is correctly built.

Thanks Kristof Robot <krirobo@gmail.com> for reporting the issue.

(Bitbake rev: e008d9bb07e5d1a3584cc04ca2cd3dd906fd5759)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-03-09 12:07:01 -07:00
Richard Purdie e9554464d4 bitbake: runqueue: Fix typo
slef.self is clearly meant to be self, fix typo.

Otavio spotted and reported, thanks.

(Bitbake rev: 316daad7928a58cdfc42e27b20e739f4dd74a02a)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-03-06 22:35:55 +00:00
Paul Eggleton 003d3170ed bitbake: data: add vardepvalueexclude varflag
On rare occasions it's useful to be able to exclude a part of a
variable's value from the variable's signature; for example if you want
to add an item to a list sometimes and not have the signature of the
variable change depending on whether the item is in the list or not. The
initial intended use case for this in OpenEmbedded is to allow adding a
function to SSTATEPOSTINSTFUNCS in buildhistory.bbclass and not have
that change any task signatures (so adding and removing
INHERIT += "buildhistory" won't lead to any rebuilds).

Part of the fix for [YOCTO #5897].

(Bitbake rev: f803bf8cfefafcbe212442e66b301ccd9c5aa2a5)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-03-06 17:31:11 +00:00
Richard Purdie 151eaca6e0 bitbake: fetch2: Drop svk fetcher
The svk fetcher never appears to be used by anyone and the development
on svk appears to have stopped in 2010. We might as well drop support
for it.

(Bitbake rev: 8239264753977bd06ad5b1b574245d3842af489b)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-03-02 17:25:29 +00:00
Richard Purdie e955def4d3 bitbake: codeparser: Fix var_execs to append to execs, not references
When using the "execs" information in new code, it became clear that
the returned data was incorrect and there were missing exec'd functions.
This corrects the error and changes one of the test results to match
the correct behaviour.

(Bitbake rev: 8a24f2d3b735bbc59ca4a09670cabbadb1868c1a)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-03-02 17:25:29 +00:00
Richard Purdie 69b4614ff3 bitbake: fetch/wget: Separate out download and checkstatus functions
These two functions have little in common, separate them out.

(Bitbake rev: 7413e0fa4dca9571ea98f32dab87d4fd60bc8de9)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-03-02 17:25:29 +00:00
Richard Purdie 5f0e3a8800 bitbake: fetch/wget: Start to clean up command construction
Start to clean up wget fetcher command construction to allow clearer
and more extensible code structure. Drops support for ${URI} and
${FILE} directly in the commands.

(Bitbake rev: 4e59fe45be2088996abc21e9a631a32b9a9642c9)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-03-02 17:25:29 +00:00
Richard Purdie 6265744ec5 bitbake: wget: Drop usage of old style *COMMAND variables
These variables were dropped from OE-Core some time ago, drop their
usage from the fetcher as well.

(Bitbake rev: bd33e709ab65d6966b234010641861834d170e2b)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-03-02 17:25:29 +00:00
Richard Purdie c0bdd18609 bitbake: fetch/svk: Drop usage of old style *COMMAND variable and MKTEMPDIRCMD
Clean up some horrible old code and drop usage of the old style *COMMAND
variable and MKTEMPDIRCMD whilst in here. This means we don't need to touch
OVERRIDES either.

(Bitbake rev: c127bb3a9b7b1d2ab2c833ff73186b6ead0dc29c)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-03-02 17:25:29 +00:00
Richard Purdie c547149cae bitbake: fetch/perforce: Drop usage of old style *COMMAND variable and MKTEMPDIRCMD
Clean up some horrible old code and drop usage of the old style *COMMAND
variable and MKTEMPDIRCMD whilst in here. This means we don't need to touch
OVERRIDES either.

(Bitbake rev: 6b79789769da160d0e7fca0f9c6044dc1e11a107)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-03-02 17:25:29 +00:00
Richard Purdie 1aab9c797d bitbake: fetch/git: Separate out an ls-remote function
There is other code which can want to run ls-remote style commands with
different parameters so split out the function.

(Bitbake rev: 13f1138f5504feee0ee8e8f3a0675d0bea490351)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-03-02 17:25:29 +00:00
Paul Eggleton c2895edcdd bitbake: tests: add test for gitsm fetcher
Use a newly created "git-submodule-test" repo on git.yoctoproject.org
which currently contains one submodule (the bitbake repository).

(Bitbake rev: a750c57242928c546a5aace632543e956ee908eb)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-02-28 14:50:43 +00:00
Paul Eggleton 0dd3a1bc1d bitbake: tests: add missing import
This was found when trying to run the data tests individually.

(Bitbake rev: e4bf4ad4b99978483541a719105c98ea124e8a34)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-02-28 14:50:43 +00:00
Paul Eggleton 2f8be92de6 bitbake: bitbake-selftest: enable specifying tests to run on command line
If you are just trying to fix one test at a time, it can be useful to be
able to specify an individual test(s) rather than running them all:

 bitbake-selftest bb.tests.codeparser bb.tests.cow

You can even specify the test class or function to run, e.g.:

 bitbake-selftest bb.tests.fetch.URITest
 bitbake-selftest bb.tests.fetch.FetcherNetworkTest.test_fetch

(Bitbake rev: 4df9c72663e972437131a848e6ddcf3769ae1d2b)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-02-28 14:50:43 +00:00
Paul Eggleton 957c9a80bc bitbake: fetch2: fix fetching git submodules with git 1.7.9.x or older
Git versions older than 1.7.10 put absolute paths in configuration files
for the submodule repositories, leading to errors when the repository
checkout is moved. We move the repository as a matter of course in the
gitsm fetcher; the failure occurs in do_unpack). Change the absolute
paths to be relative during processing to fix this.

(At the time of writing, Ubuntu 12.04.4 LTS ships Git version 1.7.9.5,
hence the desire to fix this rather than just mandating a newer Git
version.)

Fixes [YOCTO #5525].

(Bitbake rev: e700d5a41deed4ee837465af526ed30c8a579933)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-02-28 14:50:43 +00:00
Cristiana Voicu 81f4dd661c bitbake: hob: append bbfiles to bblayers.conf instead of local.conf
[YOCTO #5118]
(Bitbake rev: 12946da1353dc35b5c1c4ce56315408f4f5c1edf)

Signed-off-by: Cristiana Voicu <cristiana.voicu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-02-28 14:48:40 +00:00
Cristiana Voicu 2557667aa0 bitbake: hob: remove the code that adds hob layer to bblayers
[YOCTO #5118]
(Bitbake rev: ef32d27b33477a5cbf127cc8b98012b48e89ad07)

Signed-off-by: Cristiana Voicu <cristiana.voicu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-02-28 14:48:40 +00:00
Cristiana Voicu ed19ed0db1 bitbake: hob: create a base hob image used to create custom images
In order to remove hob-image.bb from meta-hob, a hob-image.bb should
be created somewhere in the build directory. I've saved it in build/recipes/images
directory, and moved the templates to recipes/images/custom (here are those
templates saved by the user).
The image is created when hob starts. Also it appends to BBFILES the directory
where it is created.

Removed images directory from meta-hob.

[YOCTO #5118]
(Bitbake rev: 4587297b51b7ca71d314bdb2c06f2061e7d4aa7d)

Signed-off-by: Cristiana Voicu <cristiana.voicu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-02-28 14:48:40 +00:00
Stefan Stanacar 510560338d bitbake: build: filter out expanded empty strings for lockfiles flag
If we have something similar to:

    LOCKFILES = "${TMPDIR}/my.lock"
    LOCKFILES_qemuall = ""

    do_task[lockfiles] += "${LOCKFILES}"

when expanded, lockfiles will be empty for qemu, resulting in

     File "/home/stefans/yocto/poky/bitbake/lib/bb/utils.py", line 630, in mkdirhier
	raise e
    OSError: [Errno 2] No such file or directory: ''

This should filter out the empty expansions.

(Bitbake rev: 7813e1bfd08cd48871f8c03cae2810265590105d)

Signed-off-by: Stefan Stanacar <stefanx.stanacar@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-02-28 14:48:40 +00:00
Cristiana Voicu 72576e2d04 bitbake: hob: replace the use of hob-toolchain with populate_sdk task
Now bitbake has an API to run individual task for targets.
Hob can use this to build the sdk, instead of using the hob-
toolchain.

(Bitbake rev: 4a5009036e9cb38f6e0260a88278948931073bc6)

Signed-off-by: Cristiana Voicu <cristiana.voicu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-02-25 08:06:11 +00:00
Richard Purdie a1faa7df2a bitbake: fetch2: Fix mirror repo tarball creation
A typo was meaning that the mirror creation method wasn't being called
when it should have been. Fix the type to fix mirror tarball creation.

[YOCTO #5284]

(Bitbake rev: 348971d410bfd5d8b1757468d73e1d24ae78a594)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-02-24 13:00:36 +00:00
Martin Jansa dd43700b5d bitbake: runqueue: Catch ValueError from pickle.loads
* exception like this keeps spinning quite quickly generating GBs of logs
  better to kill it asap and show invalid pickle

(Bitbake rev: a69eb4c12c71bba9d742c4e5578f25c388d9f825)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-02-24 12:42:40 +00:00
Jacob Kroon f5a344441a bitbake: ast: Fix support for anonymous methods in wildcard .bbappend files
When using wildcard .bbappend files with anonymous methods in them,
bitbake/python fails to parse the generated code since the '%' is encoded
in the generated method name.

Fix this by including '%' in the convert-to-underscore list during
method name mangling.

While we're at it, move the method name mangling translation table
to a class variable, as suggested by Chris Larson.

[YOCTO #5864]

(Bitbake rev: 537f1f9bbe110acc9848ef95f43468c07d87af79)

Signed-off-by: Jacob Kroon <jacob.kroon@mikrodidakt.se>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-02-24 12:42:40 +00:00
David Reyna deb3859820 bitbake: toaster: implement package summary page
Implement the updated design for the package summay page, with pop-up
boxes for the layer commit ids, column filtering, and column sorting
support.

[YOCTO #4318]

(Bitbake rev: c39b99792547b642570ea5152070e7396e812390)

Signed-off-by: David Reyna <David.Reyna@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-02-17 15:38:53 +00:00
David Reyna 77eeb4200e bitbake: toaster: implement recipe summary page
Implement the updated design for the recipe summay page, with pop-up
boxes for the dependecies and layer commit ids, column filtering, and
column sorting support.

[YOCTO #4294]

(Bitbake rev: 92b71c8e6cfcd656866fbf9bd00bf184b223c5fa)

Signed-off-by: David Reyna <David.Reyna@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-02-17 15:38:53 +00:00
Belen Barros Pena 994236e180 bitbake: toaster: Make popovers mutually exclusive
Table popovers should be mutually exclusive (only one
of them should be open at any given time), and should
close when you click outside their area. But this is not
the default popover behaviour in Bootstrap, so some
additional javascript is needed.

The code in main.js taking care of this in the design
prototype was quite ugly and didn't get on well with
certain browsers. I have replaced it with a better
solution (although still not ideal).

(Bitbake rev: d56633c00f6730c053f355570211eba1bdc41b62)

Signed-off-by: Belen Barros Pena <belen.barros.pena@intel.com>
Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-02-17 15:38:53 +00:00
Belen Barros Pena 49a81f064a bitbake: toaster: Make popovers scrollable
Some recipes and packages have a lot of dependencies.
To stop their popovers from taking over the full
height of the screen, I have given them a maximum
height and made their content scrollable in
default.css

(Bitbake rev: b6416a98f441516100d2ce7baca30f09714a1d1d)

Signed-off-by: Belen Barros Pena <belen.barros.pena@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-02-17 15:38:53 +00:00
Belen Barros Pena ec79df9c9e bitbake: toaster: Make all targets links to the build dashboard
Change the build.html template to remove the conditional check
that added links to the build dashboard only to those targets
that are image recipes.

All targets should be links to their corresponding build
dashboard.

(Bitbake rev: 05f52b9fad597173d813fa4305af65f1c9bb88a1)

Signed-off-by: Belen Barros Pena <belen.barros.pena@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-02-17 15:38:53 +00:00
Ravi Chintakunta 877f87baa0 bitbake: toaster: Select a radio button by default in Filter Dialog
If none of the filter options in the filter dialog are active,
then select the first radio button.

(Bitbake rev: 8aa63143cc446227c69f64688b314c65b74604d8)

Signed-off-by: Ravi Chintakunta <ravi.chintakunta@timesys.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-02-17 15:38:53 +00:00
Belen Barros Pena f8f448e4e6 bitbake: toaster: Fix for task_color tag
This patch changes the task_color tag in
projecttags.py to make sure it adds the error
class to the rows corresponding to failed tasks
in the tasks table.

(Bitbake rev: 44c5b3a93a93a464429e8d998aace25f840ae724)

Signed-off-by: Belen Barros Pena <belen.barros.pena@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-02-17 15:38:53 +00:00
Belen Barros Pena 155302acb2 bitbake: toaster: Apply error style to cell links
This patch changes default.css so that any anchor
tag inside a table cell with the error class applied
inherits the class styles. This ensures that the
failed tasks listed in the builds table look red
like the failed tasks in the tasks table.

(Bitbake rev: e5cbb190317dba2eddd933678474569563ec840b)

Signed-off-by: Belen Barros Pena <belen.barros.pena@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-02-17 15:38:53 +00:00
Belen Barros 2e3fee7291 bitbake: toaster: Make "Edit columns" multiselect
Twitter Boostrap elements with the dropdown-menu class
close by default once a selection is performed. Such
behaviour is not appropriate for our "Edit columns" menu,
since users might want to check / uncheck several
columns.

This patch adds a call to the stopPropagation() jQuery
function to main.js to stop the "Edit columns" menu
from closing every time you change a checkbox.

(Bitbake rev: c2e43750bf0913523a1abcb2c8bf97b764da2524)

Signed-off-by: Belen Barros <belen.barros.pena@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-02-17 15:38:53 +00:00
Alexandru DAMIAN 97c81e089f bitbake: toaster: fix javascript for table filters
This patch adds javascript link for resetting page filters
in the tool tip "Show all" button.

Also fixes a JS bug for when the cookie is not set yet.

(Bitbake rev: e123922274ea875105e6ed855b3368b8b77fca64)

Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-02-17 15:38:52 +00:00
Belen Barros 4157c3849f bitbake: toaster: Add clear filter button to filter tooltips
This patch modifies the basetable_top.html template to add
the 'Show all' button to the applied filter tooltip. It also
adds a delay in the tooltip dismissal in main.js to allow
users to click the button comfortably.

The patch does not add the functionality to the button (when
you click on it nothing happens). Someone else will need
to add that in.

(Bitbake rev: e39857162b5d91cc2f92843a9a14599bab369849)

Signed-off-by: Belen Barros <belen.barros.pena@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-02-17 15:38:52 +00:00
Belen Barros 985017af3d bitbake: toaster: Clean up main.js
Clean up main.js to leave only what is being
used in the design prototype.

Initialise the Bootstrap tooltips for any anchor tag inside
a table heading with the btn-primary class applied. This
effectively styles the title attribute of the applied
filters to look like all other Toaster tooltips.

(Bitbake rev: 71a07268c3a2e969c088ef9f6bcf4c54254b3600)

Signed-off-by: Belen Barros <belen.barros.pena@intel.com>
Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-02-17 15:38:52 +00:00
Belen Barros b4416e324f bitbake: toaster: Clean up default.css
Getting rid of all unused css declarations, grouping
and annotating to make the file more readable.

(Bitbake rev: 90409869d49468d31daa60880f54774c4b24d5aa)

Signed-off-by: Belen Barros <belen.barros.pena@intel.com>
Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-02-17 15:38:52 +00:00
Dave Lerner 620553df86 bitbake: toaster: Implementation of package detail views
Adds new package detail views.  The views are based on
specifications found in attachments to:
    https://bugzilla.yoctoproject.org/show_bug.cgi?id=4328
specifically:
    design-1.5.1-package-details.pdf, and
    design-1.1.1-included-package-details.

This patch includes a redefinition of constant numbers for
task dependency tasks. This is needed in order to achieve
sorting criteria from the design.

This change invalidates currently dependency information for
currently existing builds, as it breaks compatibility.

[YOCTO #4328]

(Bitbake rev: 6855925c06e7e5bb15ae9d0c08d77f3a9a2574bc)

Signed-off-by: Dave Lerner <dave.lerner@windriver.com>
Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-02-17 15:38:52 +00:00
Ravi Chintakunta 47634378ac bitbake: toaster: Added sorting to other columns in All tasks table
Added sorting to recipe, time, cpu, disk i/o and log columns of
all tasks table

(Bitbake rev: 277d076d777f26f215f01cac59302bcf9cf44a9c)

Signed-off-by: Ravi Chintakunta <ravi.chintakunta@timesys.com>
Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-02-17 15:38:52 +00:00
Ravi Chintakunta 6f38844000 bitbake: toaster: Fix builds view filter options to match changes in filter dialog
Filter dialog uses an array of tuples for filter options.Fixed the builds view
by changing the filter options from a dictionary to a list of tuples.

(Bitbake rev: bac1ca6e276b2e276b844d1009dba964810a2957)

Signed-off-by: Ravi Chintakunta <ravi.chintakunta@timesys.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-02-17 15:38:52 +00:00
Ravi Chintakunta fd86e0e557 bitbake: toaster: Filter Dialog fix to display filter options as radio buttons
- Filter options are displayed as radio buttons in the filter dialog.
- To preserve the order of the filter options, the options are passed
as tuples inside a list, instead of key/value pairs of a dictionary. Changed
the filter dialog code to use the tuple

(Bitbake rev: 5e475b312348fa45312946b528648739c78da2ba)

Signed-off-by: Ravi Chintakunta <ravi.chintakunta@timesys.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-02-17 15:38:52 +00:00
Ravi Chintakunta 2b2d3d618f bitbake: toaster: Removed unused 'disabled' css class in Filter dialog
(Bitbake rev: 8cd978ec3cc56e3f30d58d17188e67296bdb120b)

Signed-off-by: Ravi Chintakunta <ravi.chintakunta@timesys.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-02-17 15:38:51 +00:00
Paul Eggleton 0008cd6444 bitbake: build: fix handling of task override for tasks with underscores in their names
Tasks whose names contain underscores (such as do_populate_sdk in OE)
when converted to a task override do not function properly. If we
replace underscores with hyphens we can still have a working override
for these tasks.

(Bitbake rev: cf90bd6b2a0ab7dce922bffb500d6a2ff2ff10e2)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-02-17 15:34:45 +00:00
Paul Eggleton a56bd812a7 bitbake: parse: make vars_from_file return None for non-recipes
It doesn't really make sense to set PN from .conf files, for example.
More concretely, this avoids the config hash changing unnecessarily
within Hob due to PN effectively changing (since bblayers.conf is
parsed first and then .hob.conf).

(Bitbake rev: 22e03ef7ac9bb6b7245250347ae9c10c19f1d74e)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-02-17 15:34:45 +00:00
Richard Purdie 3221d97323 bitbake: runqueue: Fix silly variable overlap
A previous commit of mine used the target variable for two different uses
resulting in a lot more sstate being installed than is needed.

Fix the variable to use two different names and unbreak the setscene
behaviour.

(Bitbake rev: f975ca2cf728561bd6317ed8f76303598546113a)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-02-15 14:02:08 +00:00
Richard Purdie b60ed2d0fd bitbake: runqueue: Ensure we do run 'masked' setscene tasks if specified as targets
If you specify multiple targets on bitbake's commandline and some of them are
setscene tasks which are "masked" by other tasks they may not get run.

For example <image>:do_rootfs <kernel>:do_populate_sysroot

the rootfs tasks "masks" the populate_sysroot task so bitbake would currently
decide not to run it. In this case, we do really want it to be run.

The fix is not to skip anything which has been given as an explict target.

(Bitbake rev: 0753899d1e855795cc18671357609a86f169b379)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-02-13 17:57:20 +00:00
Scott Rifenbark 9c61b6392c bitbake: user-manual-metadata.xml: Edits to the "Sharing Functionality" section.
Applied some review edits from Paul to the section.

(Bitbake rev: 56321b18808f5ed932543d907b9ebcfbf4420233)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-02-11 12:17:06 +00:00
Scott Rifenbark d110f55a94 bitbake: user-manual-metadata.xml: Edits to "Conditional Syntax (Overrides)"
Re-wrote this section to use clearer more described examples.

(Bitbake rev: 6eea23c4783c591c2d2c7f0b2a98e7a0cc8aa3c3)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-02-11 12:17:06 +00:00
Scott Rifenbark decc756e89 bitbake: user-manual-metadata.xml: Edits to "Defining Pure Python Functions"
Made a review edit here to the section per Paul Eggleton.

(Bitbake rev: 3b6ab095862367bc0101b995b002f62e7968ccf3)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-02-11 12:17:06 +00:00
Scott Rifenbark 2fc9281c49 bitbake: user-manual-metadata.xml: Edits through syntax section
I made some general improvements in the "Overview" and
"Basic Syntax" sections.  Additionally, I added a blank
section for "Variable Flags" that will eventually hold general
information on this concept.  Finally, come review edits to the
"Defining Pure Python Functions" section per Paul Eggleton.

(Bitbake rev: 665d655f436f1a353f5fe467c5d97588f7b121c5)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-02-11 12:17:06 +00:00
Scott Rifenbark a2e5746f29 bitbake: user-manual-intro.xml: General edits to Introduction chapter.
I performed a general edit to this chapter.  Some significant changes
include changing the chapter's title to "Overview" when it was titled
"BitBake User Manual", doing some consolidation of text to eliminate
a couple sections that described methods to obtain a copy of BitBake,
and various improvements as needed.

(Bitbake rev: f635c4b36af79b8572095083a392fb58c11198c9)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-02-11 12:17:06 +00:00
Scott Rifenbark 3cdf800334 bitbake: user-manual-metadata.xml: Added "Checksums (Signatures)" section.
Added this section to the end of the Metadata chapter.

(Bitbake rev: b653c58284cafd0b79991520543ca6239705d36b)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-02-11 12:17:06 +00:00
Scott Rifenbark 89058e1ef7 bitbake: user-manual-ref-variables.xml: Review edits to several variables in glossary.
ASSUME_PROVIDED
BBCLASSEXTEND
SRC_URI
PACKAGES_DYNAMIC
BB_NUMBER_THREADS
BB_DANGLINGAPPENDS_WARNONLY

(Bitbake rev: 8e586ccee6d5e78070d28cda67058578e1fe91d7)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-02-11 12:17:06 +00:00
Scott Rifenbark ddcd91c6d6 bitbake: user-manual-ref-variables.xml: Added 11 new variables to glossary.
SRCREV_FORMAT
BUILDNAME
BB_ENV_WHITELIST
BB_PRESERVE_ENV
BB_ENV_EXTRAWHITE
BB_ORIGENV
BB_TASKHASH
BITBAKE_UI
BBDUBUG
BB_DEFAULT_TASK
BBINCLUDED

(Bitbake rev: 0e3106bfdebfa255b2db08a8a4585516d8bebe20)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-02-11 12:17:05 +00:00
Scott Rifenbark 081d31c6bc bitbake: user-manual-ref-variables.xml: Edits to FILESPATH.
(Bitbake rev: 64bdd3ba6fe90ed6e0338ad053c8117db0acfe2e)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-02-11 12:17:05 +00:00
Scott Rifenbark 825366d7f0 bitbake: user-manual-ref-variables.xml: Added 6 new variables to glossary:
MULTI_PROVIDER_WHITELIST
CACHE
PERSISTENT_DIR
FETCHCMD
FILE
FILESDIR

(Bitbake rev: 4aa8c2f93cc126778f7e99229d99b398d603fcac)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-02-11 12:17:05 +00:00
Scott Rifenbark 5f59a85511 bitbake: user-manual-ref-variables.xml: Edits to PREFERRED_PROVIDER.
(Bitbake rev: 9232cca08ec3f099475ad8dfc10e4fa3c2b39366)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-02-11 12:17:05 +00:00
Scott Rifenbark 658d885c0c bitbake: user-manual-ref-variables.xml: Added PREFERRED_PROVIDERS to glossary.
(Bitbake rev: 86cacad8129502088011ebb622dd4d3d3663d39e)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-02-11 12:17:05 +00:00
Scott Rifenbark dac581dbd2 bitbake: user-manual-ref-variables.xml: Added FAKEROOT* variables to glossary.
FAKEROOT
FAKEROOTCMD
FAKEROOTBASEENV
FAKEROOTDIRS
FAKEROOTENV
FAKEROOTNOENV

(Bitbake rev: 8480db0fa7d0363741e7075bb8169a9c1b6a71dd)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-02-11 12:17:05 +00:00
Scott Rifenbark 606e2cb517 bitbake: user-manual-ref-variables.xml: Added BB* variables to glossary.
BB_STRICT_CHECKSUM
BB_WORKERCONTEXT
BB_SIGNATURE_EXCLUDE_FLAGS
BB_HASHBASE_WHITELIST
BB_INVALIDCONF
BB_LOGFMT
BB_RUNFMT
BB_RUNTASK
BB_HASHBASE_WHITELIST
BB_STAMP_POLICY
BB_STAMP_WHITELIST
BB_SCHEDULER
BB_SCHEDULERS
BB_SETSCENE_DEPVALID
BB_SETSCENE_VERIFY_FUNCTION
BB_SIGNATURE_HANDLER
BB_SRCREV_POLICY
BB_VERBOSE_LOGS

(Bitbake rev: f02be6ca79fccc3c7bfbbadeef0c98242f661524)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-02-11 12:17:05 +00:00
Richard Purdie 410a3e1574 bitbake: runqueue: Fix setscene hard dependency problems
Commit c54e738e2b5dc0d8e6fd8e93b284ed96e7a83051 added in the idea of hard dependencies
such as the case a setscene has a hard dependency on pseudo-native and that
dependency wasn't available from sstate for some reason.

Unfortunately the implementation was a bit too enthusiastic, causing rebuilds
of things when it wasn't necessary. A test case was:

bitbake quilt-native
bitbake quilt-native -c clean
bitbake <some-image>

and then you'd watch quilt-native get rebuilt for no good reason.

The clue to the problem is in the for loop where it never depends on
the item being iterated over.

The fix is to include the exact list of hard dependencies rather than
guessing. With these changes, the use case above works, the one in
the original commit also works.

This patch also adds in or cleans up various pieces of logging to
allow issues like this to be more easily debugged in future.

(Bitbake rev: 81bd475585ff1b44b390036b1eca0feae7c149eb)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-02-11 11:53:45 +00:00
Laurentiu Palcu 095bb006c3 bitbake: bitbake: build.py: create separate function for shell trap creation code
Currently, the shell trap code was created in exec_func_shell(). Split
the function so that we can create the code separately.

Also, some whitespaces were automatically deleted by my editor. Since
this is not necessarily a bad thing, leave these changes too.

(Bitbake rev: c712e622d20c61a07c9c172b60e9dc6beae14197)

Signed-off-by: Laurentiu Palcu <laurentiu.palcu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-02-09 10:01:38 +00:00
Richard Purdie 707cdcf905 bitbake: data: Account for pre/postfunc functions when calculating dependencies
pre/postfuncs were not being added to checksums. This meant that when reconfiguration
occurred, tasks were not always being rerun when they should. This include
sstate functions as well as systemd's do_install function in the OE metadata.

With the addition of postfuncs, its possible a shell task can have a python
pre/postfunc so we have to guard against this when generating shell output
in emit_func.

(Bitbake rev: b84d010144de687667cf855ddcb41c9b863c236e)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-02-04 22:03:48 +00:00
Richard Purdie d93620baea bitbake: runqueue: Fix race against tasks sharing stamp files
Shared work directories work by assuming bitbake will not run
more than one task with a specific stamp name. Recent runqueue optimisations
accidentally broke this meaning there could be races. This fixes the code.

(Bitbake rev: b1628b1a260ddf43fc9985535b1ddcfcebbb1e5b)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-31 15:52:17 +00:00
Richard Purdie bfa46b6872 bitbake: user-manual: Fix issue with previous revert
(Bitbake rev: 2d052690d46506ba3f4180ad5cdfa835ce85e59a)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-28 15:29:50 +00:00
Richard Purdie 14778a858e bitbake: Revert "usermanual: Updated CC License to version 3.0"
This reverts commit 0546bc19557de9263b448ceb1707884543d2de56.

This change was not discussed with the copyright holders so the license
needs to remain at version 2.5.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-28 14:29:01 +00:00
Robert Yang d955d6a8f5 bitbake: siggen.py: fix the SignatureGenerator()
If we set:

BB_SIGNATURE_HANDLER = "noop"

Then we would get the following errors:

[snip]
File "runqueue.py", line 876, in RunQueue._start_worker(fakeroot=False, rqexec=None):
                "fakerootnoenv" : self.rqdata.dataCache.fakerootnoenv,
   >            "hashes" : bb.parse.siggen.taskhash,
                "hash_deps" : bb.parse.siggen.runtaskdeps,
AttributeError: 'SignatureGenerator' object has no attribute 'taskhash'
[snip]

This patch fixes the problem.

[YOCTO #5741]

(Bitbake rev: 2bfcb751891cf3b4050e996b3c8e28678c3a8bf4)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-28 00:52:57 +00:00
Richard Purdie 30bfec03e2 bitbake: runqueue: Simplify pointless len() usage
(Bitbake rev: 1f2bdd1b99075babe8dba91478cfc5d3501676cb)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-28 00:52:57 +00:00
Irina Patru 9a46332aa0 bitbake: hob: No need for enable_proxy and same_proxy in conf file
Hob doesn't read these variable from file and bitbake doesn't use them,
so they shouldn't be set in conf file.

(Bitbake rev: a8c9df86b96e27dc49028c2da42034d13988960c)

Signed-off-by: Irina Patru <irina.patru@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-28 00:52:57 +00:00
Irina Patru 914e50e5ea bitbake: hob: Don't always save proxy values in conf file
If enable_proxy is not activated, Hob should not save the proxy values
in the conf file when user hits save button.

[ HOB #5308 ]

(Bitbake rev: fbe0851221ecfcefea5bdd4b629a05ed4f5ac189)

Signed-off-by: Irina Patru <irina.patru@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-28 00:52:57 +00:00
Irina Patru d24611228e bitbake: hob: don't display interruptions as fails
When Hob receives a bb.command.CommandFailed event, it should check if
it's a log kind of information.
"Forced shutdown" and "Stopped build" are messages that show when a build
is not complete, but Hob considered them error.

[HOB #5609]

(Bitbake rev: ea1939f7ec8d8a71ce16a60c251c2413d7d91eb3)

Signed-off-by: Irina Patru <irina.patru@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-28 00:52:57 +00:00
Irina Patru 1b6e11cdcb bitbake: hob: unsetting busy cursor after hitting Stop button
The busy cursor would never change after pressing Stop button.
It should be set after the possible return inside machine_combo_changed_cb()
method.

(Bitbake rev: d440d3ad4b2d99bc20e06d2d5f5e76d07864dff3)

Signed-off-by: Irina Patru <irina.patru@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-28 00:52:57 +00:00
Irina Patru 14e548dbb7 bitbake: bitbake: hob: check if parser has attribute 'shutdown'
It must be checked first if parser has the attribute 'shutdown' when
user hits Stop button and the forceshutdown state is given.

[HOB #5579]

(Bitbake rev: 46943b442ea4fa778f70590b6dcce483595efaf8)

Signed-off-by: Irina Patru <irina.patru@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-28 00:52:57 +00:00
Irina Patru f43c2d8d79 bitbake: hob: change error_msg for CommandFailed event
When a bb.command.CommandFailed event is received by Hob, the error
message is stored inside event.error.
This information tells exactly why bitbake failed, so Hob should display
it instead of the current composed message.

(Bitbake rev: 24543ff6b45771712d624541ae35738d7d98f33c)

Signed-off-by: Irina Patru <irina.patru@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-28 00:52:56 +00:00
Richard Purdie 3c5b68356d bitbake: cooker: Add option of specifying indvidual tasks for targets
Currently its near enough impossible to tell bitbake to run target X,
task Y and target A, task B. We could hack various parts of the API
around but it would mean incompatibilities.

An alternative is to accept the syntax "<target>:do_<task>" as a target
name. The default task would be used where the task is unspecified.

This has the advantage that its neat/clean code and works from all
current APIs including the commandline.

(Bitbake rev: 55f6bee3114e582333a1784caeddb197b9163d02)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-28 00:52:56 +00:00
Scott Rifenbark 5280192555 bitbake: user-manual-ref-variables.xml: Added 10 new variables to the glossary.
Fixes [YOCTO #5472]

1. ASSUME_PROVIDED
2. BB_CURRENTTASK
3. BB_FETCH_PREMIRRORONLY
4. BB_FILENAME
5. BB_NICE_LEVEL
6. BB_HASHCONFIG_WHITELIST
7. BB_TASK_NICE_LEVEL
8. BB_NO_NETWORK
9. BB_NUMBER_PARSE_THREADS
10. STAMPCLEAN

(Bitbake rev: 72a01a54c4786a7a82ae8b86b8e2beedd07f7f21)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-27 21:03:26 +00:00
Scott Rifenbark 6201d18b79 bitbake: user-manual-ref-variables.xml: Fixed references to "Build Directory".
I made sure that these are lower-cased.  Also, removed the tags
for cross-referencing into the term section of the YP Development
Manual.

(Bitbake rev: f9e3de2bb3e73204ef35d102ff26ee7393056ede)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-27 21:03:26 +00:00
Scott Rifenbark 37ab0888a1 bitbake: user-manual-ref-variables.xml: Editing pass.
Corrected grammar and applied active voice where possible.
Also removed several cross-reference tags to the YP manual set.

(Bitbake rev: 17cbad436c97e904a04596237022e84853b10a21)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-27 21:03:26 +00:00
Scott Rifenbark d51fb535a6 bitbake: template/titlepage.templates.xml: Suppress Title Text.
I commented out two blocks of code that are responsible
for getting the book's title to format onto the title page.
Commenting the code out suppresses the title from the
PDF version's title page yet retains the title text for the
HTML tab space of the browser.  The reason this is necessary
is because the BitBake User Manual uses an image file for
the title.  Thus, it is not necessary to print the title
again.

(Bitbake rev: d7f15880c5423d91fd786e291f3e062545342184)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-27 21:03:25 +00:00
Scott Rifenbark 4fb4928504 bitbake: user-manual-customization.xsl: Updated param list to pass
I added five parameters here to match the build process used
for the YP manual set.

(Bitbake rev: f95994be26986098c2603ef6d4cb10f06422b790)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-27 21:03:25 +00:00
Scott Rifenbark 9dcd60395e bitbake: user-manual-metadata.xml: Renamed section tag
There were two section tags that used the same id name "classes".
One was in the intro chapter and one was in the metadata chapter.
This was causing an exception in the PDF creation process and
breaking it.  I renamed the tag in the metadata chapter
"metadata-classes".

(Bitbake rev: d5f405586f7c50c602241519d32d02b1c7b1f345)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-27 21:03:25 +00:00
Scott Rifenbark e501280162 bitbake: user-manual-ref-variavbles.xml: Added new glossary chapter.
Added a scrubbed copy of the YP ref-manual glossary.  The content
was scrubbed to contain BB variables only.  Removed broken
cross-references, made sure the PDF file built.

(Bitbake rev: aae6bcb7fb6e056eb7b1027a8054f6ea5f8ab2b2)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-27 21:03:25 +00:00
Richard Purdie bd4140578e bitbake: user-manual-bitbakecommand: Various edits/cleanups
(Bitbake rev: f079e0886b1b191d84621057f9752cc32bfabb44)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-27 21:03:24 +00:00
Richard Purdie 5cce95c602 bitbake: user-manual-bitbakecommand: Standardise on section tags, not example
(Bitbake rev: c85a035608b7c862d964f45bb1b767fde072a1de)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-27 21:03:24 +00:00
Richard Purdie 2375f55045 bitbake: user-manual-bitbakecommand: Replace screen tags with literallayout
(Bitbake rev: 4fffe48ab607fd0d2f884186006ee168874b8414)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-27 21:03:24 +00:00
Richard Purdie 64f66d7821 bitbake: user-manual-bitbakecommand: Reform whitespace
(Bitbake rev: f1a6d7029e7adc147655809dca71782a143c5ac5)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-27 21:03:24 +00:00
Richard Purdie 32304baea2 bitbake: user-manual-bitbakecommand: Update help text output with that from bitbake master
(Bitbake rev: bd1da5001c03cba17a4c61cfb854ab394c50e732)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-27 21:03:23 +00:00
Richard Purdie 1669f39e47 bitbake: user-manual-fetching: Editing pass over the manual chapter
(Bitbake rev: b0fc79e6405b7070a42cfda035e87edc832f8334)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-27 21:03:23 +00:00
Richard Purdie 123b978c82 bitbake: user-manual-fetching: Change varname/emphasis tags to filename
(Bitbake rev: 3b04c18212f3f0c22a1167dc6f62210e54ed2002)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-27 21:03:23 +00:00
Richard Purdie 0de491b766 bitbake: user-manual-fetching: Change screen -> literallayout
(Bitbake rev: e0474be77c954cac3bb9b403d6c854ff447cc02d)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-27 21:03:23 +00:00
Richard Purdie d0c16f9467 bitbake: user-manual-fetching: Change the file whitespace
(Bitbake rev: 7e32068d1ab4e1f342f70a8338bb8a51fc783da9)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-27 21:03:23 +00:00
Richard Purdie 552d54f2ec bitbake: user-manual-metadata: Clean up task documentation
(Bitbake rev: 55158ce6c5435544a62a60c0055724619bafde27)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-27 21:03:22 +00:00
Richard Purdie ac576f40ac bitbake: user-manual-metadata: Clean up task flag section
(Bitbake rev: b2e8c56d0f554e3b118f23b42858319110501180)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-27 21:03:22 +00:00
Richard Purdie 7b99bc04ac bitbake: user-manual-metadata: Expand parsing process docuemtnation
(Bitbake rev: 2596dd2b42c06ef258032356294cc345a6e25fed)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-27 21:03:22 +00:00
Richard Purdie d6b8f746d4 bitbake: user-manual-metadata: Add section about layers
(Bitbake rev: 0a99fe01dc273c548f7f83f9a7695c21184e7331)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-27 21:03:22 +00:00
Richard Purdie 76072eaa8e bitbake: user-manual-metadata: Add section about INHERIT
(Bitbake rev: f2ffe0365df7aa9c7d6c57b6bff8a5bbed198bfb)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-27 21:03:22 +00:00
Richard Purdie ab18cca2dc bitbake: user-manual-metadata: Add section about running tasks and the environment
(Bitbake rev: b32524643c125c78848630a5ce18d1df36313bc7)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-27 21:03:21 +00:00
Richard Purdie 8705fe2383 bitbake: user-manual-metadata: Rework section about shell/python functions
(Bitbake rev: c2bcb5364ff7c702bc1ec2726169f608b445f979)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-27 21:03:21 +00:00
Richard Purdie 908fdb5cbc bitbake: user-manual-metadata: Add section about data store operations
(Bitbake rev: 85ffd05f292386de1b098debb6a3d3fe18c6b6b7)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-27 21:03:21 +00:00
Richard Purdie c676bf8453 bitbake: user-manual-metadata: Add lists of common events
(Bitbake rev: 240d3f0439e7c1f12e06fa738acc20fbcac8ae65)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-27 21:03:21 +00:00
Richard Purdie c8892fc919 bitbake: user-manual-metadata: Editing pass over the manual chapter
(Bitbake rev: 6f326f2f2785d6d48d7753abee6e8162852d8702)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-27 21:03:20 +00:00
Richard Purdie 98b41e41ff bitbake: user-manual-metadata: Use filename tags instead of literal and varname tags
(Bitbake rev: 56f8c4ad09c244522d68e203fe4cb76d593a9f2f)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-27 21:03:20 +00:00
Richard Purdie a0f3328679 bitbake: user-manual-metadata: Replace screen tags with literallayout tags
(Bitbake rev: be3967f9f088e414c679e72a947817b60bab82d7)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-27 21:03:20 +00:00
Richard Purdie 0e90d0f1a4 bitbake: user-manual-metadata: Update whitespace (no content changes)
(Bitbake rev: 7eb1e340321ab4a5baa23e83eebf65ba13d23aef)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-27 21:03:20 +00:00
Richard Purdie 4dd8a0d6d6 bitbake: user-manual-metadata: Reorder sections to more logical order
(Bitbake rev: 6f2bed62bde5cd20f91c336b158f60f4a6bcb82f)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-27 21:03:20 +00:00
Richard Purdie 633db4f0ff bitbake: user-manual-metadata: Add section ids for most sections
(Bitbake rev: 4ad94fb161d5fe24869696187e01004bff61d569)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-27 21:03:19 +00:00
Scott Rifenbark 437791a23d bitbake: user-manual-hello.xml: Added new chapter for "Hello World Example"
This file was evidently a "working" file and not included in the
manual at the point Bill left off.  The wmat branch, however, had
a load of commits dedicated to this file.  Rather than attempt to
replay them all one-by-one, I simply copied the file from the
wmat branch and hand-inserted the changes to make it equal to what
was there.  Note also that I re-formatted the file to have the
same formatting standards I use in the YP manuals.

(Bitbake rev: 9ddbf31ba7d05a596ca53b8ed78d94221850894b)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-27 21:03:19 +00:00
Scott Rifenbark 1b08402519 bitbake: user-manual.xml: Cleanup on the title page.
1. Added commented out manual revision history.
2. Cleaned up the author stuff.

(Bitbake rev: df92da67ddbb2bcc672911626b9abd1a168cf436)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-27 21:03:19 +00:00
Bill Traynor 3a9593d409 bitbake: user-manual-intro.xml: Re-write of BitBake introduction.
(Bitbake rev: afc998a73f09f3d1a0d7e22425badfa5b7001aa1)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-27 21:03:19 +00:00
Richard Purdie a713dade85 bitbake: user-manual-intro: Various minor cleanups/improvements
(Bitbake rev: 5e22c0c5d4bb9e63142a13618f5f87e53c83d9f2)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-27 21:03:19 +00:00
Richard Purdie 5b60a81c95 bitbake: user-manual-intro: Add obtaining bitbake and summary sections
Add new obtaining bitbake and summary sections from Bill Traynor

(Bitbake rev: 083e4e44f52ffdfca68ce6c56eae85ce3b719e1b)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-27 21:03:18 +00:00
Scott Rifenbark e925730cd8 bitbake: user-manual-intro.xml: Added "Concepts" section.
Provided initial text for recipes, configuration files, and
classes.

(Bitbake rev: 55875bcf682979ce538845a8118452425ff96cfc)

Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-27 21:03:18 +00:00
Richard Purdie 2038b85a46 bitbake: user-manual-intro: Update/improve whitespace
(Bitbake rev: fb74a1926c3a603a4c1ebe0325b27fb2c3aec3ee)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-27 21:03:18 +00:00
Richard Purdie 2ee774782c bitbake: user-manual-intro: Expand introduction and fix spelling mistakes
Expand the introduction section, fill out the section ids and fix some spelling
mistakes.

Wording from Bill Traynor/Scott Rifenbark

(Bitbake rev: 780f61da6a59c52555de8574093a264d565b2a75)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-27 21:03:18 +00:00
Bill Traynor 7c98419b09 bitbake: documentation: Add README based off the YP docs one
Reusing the README file from the Yocto Project Documentation
directory but removed the YP specific content and changed to be
specific to BitBake.

(Bitbake rev: 67b6e9c54676e979c546c0d350b2d01443f13f36)

Signed-off-by: Bill Traynor <wmat@alphatroop.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-27 21:03:17 +00:00
Richard Purdie bfa18b58d3 bitbake: user-manual: Separate out chapters into individual files
Splitting the manual into a chapter per file makes the content
a little more managable.

(Bitbake rev: 020178eba958d2d5142ee0909fc0fd133b97cd92)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-27 21:01:08 +00:00
Bill Traynor 034e49004f bitbake: user-manual: Import YP Docs templates for usermanual improvements
Import the necessary pieces to be able to build the BitBake User
Manual using make in a similar way that the Yocto Documentation is
built.  The Makefile has been edited to remove Yocto Project specific
content and adapt for bitbake's needs.

(Bitbake rev: d4199078692f86341ed5b42a7c2dd4b34819aead)

Signed-off-by: Bill Traynor <wmat@alphatroop.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-27 21:01:08 +00:00
Bill Traynor eeb4c71647 bitbake: usermanual: Renamed manual dir to user-manual to be consistent.
Renaming the manual directory to user-manual in order to allow
for future additions of specific manual types, such as a
dev-manual.

(Bitbake rev: 4617aa5e8491067f7825062ed3baee27cf697e88)

Signed-off-by: Bill Traynor <wmat@alphatroop.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-27 21:01:08 +00:00
Bill Traynor afac3d83bd bitbake: usermanual: Updated CC License to version 3.0
Updated the Creative Commons License to the most current version,
version 3.0.  Also updated the Creative Commons mailing address.

(Bitbake rev: 0546bc19557de9263b448ceb1707884543d2de56)

Signed-off-by: Bill Traynor <wmat@alphatroop.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-27 21:01:07 +00:00
Alexandru DAMIAN e5b3918bb9 bitbake: toaster: fix package data gathering
Under OE-Core, the name under which a package would
be installed in a target may have been different than the
name under it has been built or recorded in the dependencies
listings.

This patch addresses the way that Toaster records package
names, and adds the field of "installed_name" to save the
name under which a package have been installed in an image.

(Bitbake rev: 24e0367429b248108b104ab5a2af05efcf7a8c39)

Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-27 21:01:07 +00:00
Alexandru DAMIAN 9677275d0d bitbake: toaster: fix builds page CSS and functionality
This patch fixes a set of CSS and functionality problems
with the build list page:

* Fix Recent Builds text styles
* Added proper links from Failed Tasks entries.
* Always Search returns to the first page of results.
* Clear search button appears only if search is active.
* Search shows the number of object, proper no objects found
* Various smaller fixes.

(Bitbake rev: 9164948e387a726f318f723f63e8d93435d7afe6)

Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-27 21:01:07 +00:00
Barros Pena, Belen 594eeeba71 bitbake: toaster: Set .error styles for tables
Override the default styles of Twitter Bootstrap for table rows
with the .error class applied, and ensure that table cells and
anchor tags inherit the .error styles when their table row has
that class applied.

(Bitbake rev: 8b44955bb836ccad384718247ceb08d713ebc152)

Signed-off-by: Belen Barros <belen.barros.pena@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-27 21:01:07 +00:00
Ravi Chintakunta 47d19237ef bitbake: toaster: All Tasks Feature with sorting and filtering
- Fixed the all tasks view and template  to match the UI design and use
the new basetable code.

- Added a method to views to add sort order icon to the view context.

- Default sort order when the page is loaded is displayed with the sort icon

- Filtering of columns

(Bitbake rev: b2f8de082c3ae41eb44e6ccdc283849b64d0b0f2)

Signed-off-by: Ravi Chintakunta <ravi.chintakunta@timesys.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-27 21:01:06 +00:00
David Reyna 84b239086d bitbake: toaster: Implementation of recipe detail views
Add the new recipe detail page and update the view context accordingly.
Rename the recipe summary page to 'recipes.html' and add the respective
links to the recipe details page.

The views are based on specifications found in attachments to
	https://bugzilla.yoctoproject.org/show_bug.cgi?id=4299

[YOCTO #4299]

(Bitbake rev: d561000b6c4927ef6ec269e9ab7c70249b3c344a)

Signed-off-by: David Reyna <david.reyna@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-27 21:01:06 +00:00
David Reyna b45defd888 bitbake: toaster: Implementation of base build details page
This page is the standard base page for 'details' views. It is
based on 'basebuildpage.html' but does not include the build's
quick-link sidebar.

(Bitbake rev: 2d7e9a6f8464783e165804974a7d94b544c9a43f)

Signed-off-by: David Reyna <david.reyna@windriver.com>
Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-27 21:01:06 +00:00
Ravi Chintakunta 05a684f6e5 bitbake: toaster: Added custom filter tags for use in templates.
- custom filter tag to return the css class based on
  the task execution status and execution outcome

- custom filters for active filter icon and tooltip text

- custom filter for displaying blank for None, zero, '0' and
  'Not Applicable'

(Bitbake rev: 1e9253984e6f107c6eed1c3b9df3a444076e2989)

Signed-off-by: Ravi Chintakunta <ravi.chintakunta@timesys.com>
Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-27 21:01:06 +00:00
Ravi Chintakunta 87776ca32e bitbake: toaster: Base table fixes for header text, sort icon and filter icon
- Display the table column header as a link only if it is sortable.
   Non-sortable column headers are displayed as plain text.

- Display the sort order by an up / down arrow icon next to the
   column header

- Add style for header in default.css

- Set tooltip for the active filter icon

- Pass the view name to the filter dialog

(Bitbake rev: 53ede15926d45b555252d77919a0568a984c6d74)

Signed-off-by: Ravi Chintakunta <ravi.chintakunta@timesys.com>
Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-27 21:01:05 +00:00
Ravi Chintakunta 4acdf8aaf1 bitbake: toaster: Base html fix to set the page title
Set title of the page if the context includes objectname.

(Bitbake rev: 8bfd140b93bcbfe8be4dd8a30268d3cc033e180f)

Signed-off-by: Ravi Chintakunta <ravi.chintakunta@timesys.com>
Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-27 21:01:05 +00:00
Alexandru DAMIAN dfd7a8a27a bitbake: toaster: settings remove duplicate entry
The 'toastergui' application had duplicate entries,
so this patch removes the duplicate ones.

Based on an original patch from Ravi Chintakunta <ravi.chintakunta@timesys.com>.

(Bitbake rev: 86d3a44e81aa3dbff947330dfaeff6040bbd625f)

Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-27 21:01:05 +00:00
Andreea Proca baaab36f41 bitbake: toaster: Add initial tests
This adds the initial api tests for toaster, using Django's unittest modules.

(Bitbake rev: daf9a61fbf69a46b7afd781a6175b05b05fd452f)

Signed-off-by: Andreea Proca <andreea.b.proca@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-27 21:01:05 +00:00
Alexandru DAMIAN b0b1acbe62 bitbake: toaster: Toaster GUI Build and Dashboard pages fixes
THis is a large set of fixes for the generic table, Build and
Dashboard pages.

Among the fixes:
* the table remembers which columns to show across refreshes,
based on saving the settings in a cookie
* added column timespent for a build which is  a denormalization
of the completed_on - started_on information due to limits in
computing datetime differences in the SQL engine
* fixed formatting of the time differences
* various sorting header links fixed
* correct error and warning CSS classes applied to the
respective rows
* fixes multiple divide-by-zero error in displaying duration
estimations

(Bitbake rev: 61e3dee55ac577fce1c0ae0fe7e0d3cf644e8ae6)

Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-27 21:01:04 +00:00
Alexandru DAMIAN d27c7f26d3 bitbake: toaster: add jquery cookie plugin
We add the jquery cookie plugin to allow us to save
and read local client date in cookie.

jquery-cookie using version 1.4.0 under MIT licence.

(Bitbake rev: 8ce1668dd93269add878f8ea69deb8b53f3bca8b)

Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-27 21:01:04 +00:00
Alexandru DAMIAN 15e52903fa bitbake: toaster: add vim modelines for .py files
No-op patch that adds vim modelines for all .py files
intended to be user-edited.

(Bitbake rev: 73271a7c6f1913c68a4b39ab86414f44acc04776)

Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-27 21:01:04 +00:00
Alexandru DAMIAN 731a0ac2c8 bitbake: toaster: update Task classification fields
This patch updates the task classification fields (outcome, etc)
as to

* Changes outcome names from SSTATE to CACHED and
from EXISTING to PREBUILT

* NoExec tasks now recorded as Not Executed / script type NA instead
of Executed / script type NOEXEC. Script type NOEXEC is deleted.

* SetScene tasks do not get order numbers

* New task method that returns a QuerySet for setscene tasks related
to this task: Task.get_related_setscene()

* New custom TaskManager that allows searching for setscene tasks
related to a certain task: Task.objects.related_setscene(task)

(Bitbake rev: a4164821a142f8b625a5fdc209adc6dc80874241)

Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-27 21:01:03 +00:00
Alexandru DAMIAN 3e1dbed338 bitbake: toaster: update Simple UI references to avoid conflict
Since the Toaster GUI was cloned from the Simple UI, we need
to update the URL pattern names in Simple UI to
prevent conflict when determining the reverse URL path.

(Bitbake rev: 6ed1a28eb0e52a6de83a37664ff6f4418ce84ee4)

Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-27 21:01:03 +00:00
Richard Purdie 43a3f47189 bitbake: runqueue: Only attempt to print closest matching task if there is a match
(Bitbake rev: 1dbf400c662354b7826b2b97ee2e3e6d11af9fd2)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-27 11:14:44 +00:00
Richard Purdie 9a4855bc7f bitbake: fetch2/wget: Check downloaded file isn't zero size
I can't think of a reason we'd download zero sized files however there are
reasons zero length files can accidently make it onto source mirrors.

This check allows us to ignore the broken files and switch to another
mirror rather than fail with odd checksum failures.

(Bitbake rev: 300cba2e1a720dba4b83b0c76208ea93c608c1de)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-27 11:14:44 +00:00
Richard Purdie c81d3ad1e3 bitbake: fetch2/git: Dereference unresolved tags with ls-remote
We need to deference tags when trying to map them to commit IDs with
ls-remote. If we don't do this, a given commit might not show up
later in a specific branch. There appears to be no good reason not
to do this.

(Bitbake rev: 8ef24f4c834298348172b96ec0b855bf09552b09)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-21 10:20:14 +00:00
Richard Purdie d21c1537b7 bitbake: fetch2/git: Anchor names when using ls-remote
When specifying tags, they're searched for unanchored so foo/bar could
match:

refs/heads/abc/foo/bar
refs/heads/xyz/foo/bar
refs/heads/foo/bar

This change anchors the expressions so they are based against heads
or tags (or any other base level tree that has been created).

(Bitbake rev: df2e0972cd1db7abd5ec8b7cb295fb0c42e284a4)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-21 10:20:13 +00:00
Richard Purdie 594c2e01e7 bitbake: fetch2: Improve invalid SRCREV error message
The current message can be ambiguous, improve it (and also rename a
variable to clean up the rest of the function).

(Bitbake rev: 0c1bb7c0fce7b0f334311a2893ccb00385fa8d55)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-21 10:20:13 +00:00
Richard Purdie 453eb5432d bitbake: fetch2: Sanity check SRCREV matches rev/tag parameter
Add a sanity check so that if some SRCREV is set and a rev parameter is given
to the url, the revision given should match.

Any tag parameter behaves the same as rev. If both are specified, error to
tell the user we're confused rather than do something which may or may not
be what they intended.

Also add some unittests for this.

(Bitbake rev: e82a4ab48991035866da9914c8b75a9bfbc9a7fc)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-21 10:20:13 +00:00
Richard Purdie 721d3d6e0a bitbake: fetch2: Clean up srcrev_internal_helper
Currently INVALID and None are checked as incorrect values under different
circumstances. This code standardises those checks to be consistent. We
should phase out the use of "INVALID".

(Bitbake rev: 86ef4e65ce18b71dc69643586bd2aa8f48703171)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-21 10:20:13 +00:00
Robert Yang 6dcc4e7ded bitbake: fetch2/__init__.py: let try_mirror_url return correct value
The fetcher will try:

1) PREMIRROR
2) Upstream
3) MIRROR

If it fails to download from the Upstream, but succeeds from the MIRROR,
and ud.localpath != origud.localpath (for example, the git tarball),
then we will get the error (e.g.: xf86-video-omapfb):

ERROR: Function failed: Fetcher failure for URL: 'xxx'. Unable to fetch URL from any source.
ERROR: Logfile of failure stored in: /path/to/log.do_fetch.28024

It should not show the error and let the build go on since it succeeds.
(e.g.: xf86-video-omapfb)

[YOCTO #5686]

(Bitbake rev: c08ca1e4eeb04f78e1354780cf5a4c3855e49572)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-19 13:06:21 +00:00
Martin Jansa 5e5a7fc37c bitbake: SignatureGenerator: Add empty implementation for dump_sigs
* bitbake -S throws exception when 'noop' signature handler is used

[YOCTO #5738]

(Bitbake rev: 53352e8d388b7fc4da73f95b93dcc087e76d0426)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-18 23:29:07 +00:00
Richard Purdie 7b580cd25c bitbake: fetch2/gitsm: Use ud.basecmd instead of hardcoding git
This allows FETCHCMD_git to override the fetcher command as the git fetcher does.

[YOCTO #5717]

(Bitbake rev: 23ab943be3a33077d6ad8be68bba53cd1e2270b4)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-18 23:29:07 +00:00
Martin Jansa a99fa6ded1 bitbake: fetch2: Don't allow '/' in user:pass, fix branch containing '@'
* currently decode_url regexp parses branch=@foo as username so it ends like this:
  - ('git', '', 'foo', 'git.openembedded.org/bitbake;branch=', '', {})
  + ('git', 'git.openembedded.org', '/bitbake', '', '', {'branch': '@foo'})
* http://hg.python.org/cpython/file/2.7/Lib/urlparse.py also assumes
  that there is at least one '/' as separator between netloc and path,
  params, so it looks reasonable to prevent including '/' in username

(Bitbake rev: 2c82742114091cb55055328b54223686816582f2)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-18 23:29:07 +00:00
Richard Purdie 19c75e92a1 bitbake: siggen: Remove fsync that is causing performance issues
This fsync was added for belt and braces protection for things like sstate
on NFS. To be honest, it probably doesn't buy much, if the rename isn't
atomic, all bets are off anyway and there are bigger issues to worry about.

The issue is that at the end of every task, the dump_sig() code is triggered
to save out information about the task and this was triggering an fsync(fd).

Whilst it may select the file descriptor, on file systems like ext4, it will
require large parts of the journal to be written out so it can have
significant impact. latencytop showed an average fsync() call overhead of about
2s and if that happens for 5000 tasks, the time mounts up. This blocks the next
task execution by that time.

We therefore drop the fsync since in reality its causing problems and is unlikely
to buy much.

(Bitbake rev: 46fd841319479f6079d850b3813e64bd8c2680a3)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-18 23:29:07 +00:00
Alexandru DAMIAN 1b636173ca bitbake: toaster: Toaster GUI, generic search, filter and order
This patch implements table searching, filtering and ordering, in a
generic mode reusable for all tables.

The search operates list of fields defined in the corresponding
class for each model, search_allowed_fields.

The search expression and filters are sent through GET requests
using a QuerySet-like input. The inputs are filtered and
validated before usage to prevent inadvertent or malicious use.

Filters and table headers are defined in the views for each table,
and rendered by generic code which is easily modified for various
tables.

The Build table and Configuration table are implemented using this
framework as an example of how it should be used.

    [YOCTO #4249]
    [YOCTO #4254]
    [YOCTO #4255]
    [YOCTO #4256]
    [YOCTO #4257]
    [YOCTO #4259]
    [YOCTO #4260]

(Bitbake rev: 2ca15117e4bbda38cda07511d0ff317273f91528)

Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-10 15:20:26 +00:00
Alexandru DAMIAN 5482409a37 bitbake: toaster: Build dashboard implementation
This patch adds the build dashboard page implementation,
which is the landing page for the Toaster GUI.

Also adds correct links from the main build page
to the various parts of the dashboard.

    [YOCTO #4258]

(Bitbake rev: bf7fbf5c0ee39564d813f82e194242f9d4f73c47)

Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-10 15:20:26 +00:00
Alexandru DAMIAN 2251426ae4 bitbake: toaster: Create the base page navigation structure
Updating the general container pages to use the graphical
design and features from the design phase.

In the process of adapting the Simple UI to the designed
interface, we create all the pages and the navigation
structure for the Toaster GUI.

Views for each page have been added, and the url mapping
has been updated to reflect newly added pages.

The table page has been refactored to be component-oriented
instead of class-oriented in order to facilitate reusage.

Changes are made in different layers of the template
(base, basetable) in order to maximize code reuse among
different pages in the build.

(Bitbake rev: d31f039ae31b77023722c06e66542751536a1362)

Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-10 15:20:25 +00:00
Alexandru DAMIAN c2fc6ca2fa bitbake: toaster: update static media for Toaster GUI
In the process of making the GUI more usable, we
bring in the static assets used during the design
phase into the application.

Licenses used:

    Bootstrap 2.3.2 under Apache License 2.0
    Font Awesome under SIL OFL 1.1 (GPL compatible) and MIT licence
    GLYPHICONS Halflings released with Bootstrap, CC BY 3.0
    jQuery 2.0.3 under MIT licence
    prettify.js under Apache Licence 2.0

(Bitbake rev: 0b3d2000c0bcd2bb5a3af5d49a514a90f001a7d2)

Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-10 15:20:25 +00:00
Alexandru DAMIAN 47621ecb24 bitbake: toaster: clone Simple UI as base for Toaster GUI
This patch clones the Simple UI to provide the base code for
the development of the Toaster GUI. The clone takes the place
of the application that was reserved for Javascript MVC code.

The templates used for Simple UI are renamed to start with
an "simple_" to prevent name resolution conflict with the
Toaster GUI templates.

Minor changes are made to the settings.py and urls.py in the
toaster main section to account for the newly enabled application.

(Bitbake rev: e2fde84f16da017ba0d71aef6a1fa8e2b9255db4)

Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-10 15:20:24 +00:00
Richard Purdie 6ee5d95317 bitbake: fetch2/gitannex: Fix function arguments to match bitbake master
This code clearly uses an earlier fetcher API. Update it to match master.

(Bitbake rev: e13acb4113ce75226664c3006a9776cc885e860d)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-08 15:27:37 +00:00
Richard Purdie 854daab404 bitbake: gitannex: Add missing file from previous commit
(Bitbake rev: e14031fbe4924819ab4c9705eef2bedccae1506c)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-08 13:07:48 +00:00
Zhenhua Luo c4bcaa3f7c bitbake: bitbake: fetch2/git: add description for nobranch
(Bitbake rev: b426740b2ae8245c8cf0f314bf4983b6fff7ecb7)

Signed-off-by: Zhenhua Luo <zhenhua.luo@freescale.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-08 12:49:08 +00:00
Otavio Salvador 2bd4477be7 bitbake: bitbake: gitannex.py: Add Git Annex support
This add a Git Annex backend which reuses the Git fetcher code; it
allows managing files with git, without checking the file contents
into git, being useful when dealing with files larger than git can
currently easily handle, whether due to limitations in memory, time,
or disk space.

(Bitbake rev: a61fc4db598e9d13c966712a6a0e4783e19448be)

Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-08 12:49:08 +00:00
Zhenhua Luo 100c8831a5 bitbake: bitbake: fetch2/git: add nobranch option for SRC_URI to skip SHA validating for branch
For rebased git tree, some commits doesn't exist in any branch, and such commits are
valid in tag, the change is useful for such case.

(Bitbake rev: f594cb9f5a18dd0ab2342f96ffc6dba697b35f65)

Signed-off-by: Zhenhua Luo <zhenhua.luo@freescale.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-07 13:42:55 +00:00
Robert Yang 1d3a139016 bitbake: bitbake/lib/bb/build.py: fix the task flags cleandirs
The user manual said:

'cleandirs' - directories which should created before the task runs but should be empty

But it only removes the dir, doesn't create it

[YOCTO #5703]

(Bitbake rev: 0636797d75874ce4577f29011d69c56a4c6b9e89)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-07 13:42:55 +00:00
Robert Yang 4722965f82 bitbake: bitbake: usermanual.xml: fix a typo
Fixed:
"should created" -> "should be created"

[YOCTO #5703]

(Bitbake rev: 146318729dbeeee4136bcb4832e6f8f69f9a2489)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-07 13:42:55 +00:00
Alexandru DAMIAN 6c294f0a2e bitbake: toaster: add two-stage commit startup logic
Toaster start script lunches multiple process components
of the toaster system.

This patch adds logic into the startup script to
safely fail startup and do proper cleanup on any error
that may happen during system start.

Bitbake needs to return 0 if it will successfully lunches
the server-mode.

(Bitbake rev: f43d284e7ae752049711d8215a6020bee6966d45)

Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-07 13:03:05 +00:00
Robert Yang f4e85cad1b bitbake: bitbake/lib/bb/cooker.py: remove a duplicated self.data
(Bitbake rev: 34afbdd0fc809b8fb20696aeef3e6a61d6812e16)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-03 15:16:42 +00:00
Robert Yang 2c9475edcc bitbake: bitbake: fetcher2: clean(): remove the .patch.done
There was a problem:

$ bitbake xf86-video-omapfb -cfetch && bitbake xf86-video-omapfb -ccleanall

Everything should be removed, but the
0006-omapfb-port-to-new-xserver-video-API.patch.done still exists in the
DL_DIR, this is because the clean() in the fetch2/__init__.py skips
removing the local file, so that it will skip removing the .done.

The local file (file://) isn't needed to be removed since it is not
downloaded into DL_DIR, but the .done should be removed, this patch will
remove the .done, and it doesn't remove anything else since the clean()
in local.py does nothing.

[YOCTO #5687]

(Bitbake rev: 2bc99b9dfa532430a13c39fca4e5ef3a2206b3b8)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-02 13:08:41 +00:00
Robert Yang d8d4b0edb1 bitbake: bitbake: fetcher2: git.py: clean(): remove the .tar.gz.done
There was a problem:

$ bitbake xf86-video-omapfb -cfetch && bitbake xf86-video-omapfb -ccleanall

The git2_git.pingu.fi.xf86-video-omapfb.tar.gz has been removed from the
DL_DIR, but the git2_git.pingu.fi.xf86-video-omapfb.tar.gz.done still exists,
this is because the "open(ud.donestamp, 'w').close()" in try_mirror_url() will
create the git2_git.xxx.tar.gz.done, but no one removes it (the clean() in
fetch2/__init__.py removes the DL_DIR/git2/pkg.done)

This only happens on the git fetcher AFAIK.

[YOCTO #5688]

(Bitbake rev: fb2dc84875eb477661f421b21bc404d4805ce379)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-02 13:08:40 +00:00
Robert Yang d305a05961 bitbake: bitbake: replace 3 spaces with 4
A part of fetch2/__init__.py uses 3 spaces as the indent, I
think that they should be typos.

(Bitbake rev: abafd85e2fcf23cee872e0e9e468898101430f1f)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-02 13:08:40 +00:00
Paul Eggleton 005af45191 bitbake: fetch2: avoid printing "no checksum" error message twice
Because of the way we were handling this error, it was printed twice -
once via logger.error() (to avoid the log being printed) and a second
time when the exception gets wrapped in a FuncFailed at a higher level.
Call logger.error() earlier and change the text we send in the
exception to be more brief, so it more closely resembles the behaviour
when there is an invalid checksum.

(Bitbake rev: 46765369d7f76ec7f67b90430131a79eb6a66235)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-12-22 14:29:13 +00:00
Paul Eggleton 1edb126af3 bitbake: fetch2: fail checksum validation if SRC_URI checksums set to ""
We were checking SRC_URI md5sum/sha256sum values against None here, so
if they were set to "" then no error was produced. Since the value is
still effectively unset in this case, this is not the right behaviour;
just check if the value doesn't evaluate to False instead.

(Bitbake rev: 040943a718795c64dc4e604abfcf08b26b7d00e6)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-12-22 14:29:12 +00:00
Richard Purdie 8bbaed40c1 bitbake: Update to version 1.21.1 for master
(Bitbake rev: 4cc6e61fe11eb233bdba7c1bdc110b8cdafa56f8)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-12-20 12:26:06 +00:00
Richard Purdie 0b5476a3fa bitbake: siggen: Fix reversed difference output
The output when comparing siginfo files for dict_diff is reversed and shows
additions when things were removed and vice versa. This patch reverses the operation
so the changes are shown correctly and makes the output less confusing.

(Bitbake rev: 9b4142df36619099670740a5d3bc94e404ab2b56)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-12-20 12:26:06 +00:00
Richard Purdie eebe65c186 bitbake: runqueue: Further extend bitbake -S output to view signature differences
Based upon the list of difference starting points, we can use the siggen.find_siginfo()
function call and the difference printing code to provide a list of differences
between the current build target and whatever can be obtained from the sstate cache.

(Bitbake rev: 7a77861feb62750ef166d2d1e89ed1f444ca8dc7)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-12-20 12:26:05 +00:00
Richard Purdie a4457cf939 bitbake: siggen: When printing signatures recursively, limit the output
Currently the code prints all differences. If the task dependencies have changed hash,
we recurse into those and print those differences as well. This leads to a lot
of output. The reality is if the parents changed signature, we might as well just
say that and recurse with no other output since we're much more interested in how
the parents changed in nearly all cases. The changes in the parent are probably
the same ones we'd have printed at each level anyway.

By doing this we focus the output more carefully on the thing the user wants/needs
to see.

(Bitbake rev: 7a17fd6e51a76d3582c357b79f5ef86e1969650c)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-12-20 12:26:05 +00:00
Richard Purdie 6d2f3440bb bitbake: runqueue: Fix data being written into siginfo/sigdata files
The way hash_deps was being generated was different to the way siggen generated
the data internally which lead to seemingly different sigdata/siginfo files
for the same checksum. The -S output correct but the files written during
builds contained superflous data which would look like a difference.

This patch removes the badly duplicated data and uses it from the source
which ensures its consistent.

(Bitbake rev: e6d5e925c402cd2cc7ee034e9de4cc6df8944a34)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-12-20 12:26:05 +00:00
Richard Purdie 848961e624 bitbake: runqueue: Add output for -S option for listing the changepoints compared with an sstate cache
Its useful to understand where the delta starts against an existing sstate cache
for a given target. Adding this to the output of the -S option seems like a
natural fit.

We use the hashvalidate function to figure this out and assume it can find siginfo
files for more than just the setscene tasks.

(Bitbake rev: c18b8450640ebfd55a2b35b112959f9ea3e0a700)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-12-18 17:08:08 +00:00
Olof Johansson 52ef6c210c bitbake: bb.fetch2.git: reuse basecmd attribute
The basecmd is initialized in urldata_init; there's no need redoing that
work.

(Bitbake rev: f8df6f746fb2e27f029a5449cee6c891b1f36f4f)

Signed-off-by: Olof Johansson <olof.johansson@axis.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-12-18 17:08:08 +00:00
Richard Purdie 498de04737 bitbake: fetch2/git: Improve handling of unresolved names verses branches
Currently the fetcher doesn't distinguish between names that the fetcher
needs to resolve verses branch names that the user specified.

This meant that if you specify a tag and a branch, the fetcher broke. This
separates the two so that the branch name is preserved and can be used in
appropriate places.

(Bitbake rev: e85f39fe9d1b224414b5da0780da514f75c5df92)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-12-18 17:08:08 +00:00
Richard Purdie ba82035412 bitbake: build/ast: Create strong task add/del API in bb.build
Currently its near impossible to control task addition/deletion from
metadata context. This adds stong add/deltask API to bb.build
which is traditionally where it resided. The rather broken
remove_tasks function was removed, it didn't appear to do anything
useful or have any users.

This allows us to clean up hacks currently in use in metadata and use
standard API for it instead.

(Bitbake rev: bf7138dd38fc1f8efca80891198e3422fef64093)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-12-18 17:08:07 +00:00
Richard Purdie 8a82a3835c bitbake: ast/BBHandler/build: Add support for removing tasks (deltask)
Back in the depths of time we did support task removal. In the pre
AST days it was nearly impossible to continue supporting it, it wasn't
used so it was dropped. With the modern codebase we can easily now support
deltask and it would be very useful within the metadata since it can
massively simplify dependency trees.

As an example, a core-image-sato had 47703 inter task dependencies before
this patch and a patch to native.bbclass, afterwards with the noexec tasks
deleted, we had 29883. Such a significant simplification is worthwhile
and justifies adding a deltask operation to the system.

(Bitbake rev: acecbde6fb70ff3c96deab3cdf819d8442e87ed4)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-12-18 17:08:07 +00:00
Richard Purdie bf71844ce5 bitbake: data_smart: Fix hash corruption issue
We were accidentally using references to sets in the contains functionality
instead of creating a copy. This could cause data corruption and corruption
of the resulting sstate checksums.

This patch fixes this to make a copy of the set and resolved the corruption
issue.

(Bitbake rev: 8f4733257ad665aa7c7e7061c543379d5e4e3af2)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-12-13 12:07:48 +00:00
Richard Purdie d754ddcec7 bitbake: process: Add timeout to select call
On some machines, a hang has been noticed where the system sits in
the select call despite the task having completed.

The exact reasons for this as unknown but adding a timeout unblocked
the builds and resolved the hangs in question.

(Bitbake rev: 5223ffb5b6a46d8b3f6ac3362bd2672e2edf2691)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-12-10 17:55:29 +00:00
Cristiana Voicu e3b9923921 bitbake: hob: after adding a layer, hob do not parse the configuration
Moved the parseConfiguration method before obtaining the machines and
other configurations from bitbake. If not, Hob doesn't see the new machines
added by the new layer.

[YOCTO #5632]
(Bitbake rev: 8de14b2a481d61424eb32fd0234f7a38a961a75b)

Signed-off-by: Cristiana Voicu <cristiana.voicu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-12-10 11:16:14 +00:00
Alexandru DAMIAN 3f611895c7 bitbake: toaster: Add more information for tasks in Simple UI
This patch adds more information about Tasks in the Simple UI:
* all local file system information is not listed in a single
column, showing the common relationship
* adding the display for the location of the task source
* we display the work directory for each task

(Bitbake rev: b102af0b7ebd2f06d6352b834ea083e959c21b0f)

Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-12-10 11:16:14 +00:00
Alexandru DAMIAN 192583a91e bitbake: toaster: add pagination to the Simple UI
In an effort to make the Simple UI more usable and
reponsive, this patch adds pagination support for the
pages with lots of entries: Builds, Configuration and
Tasks.

(Bitbake rev: d4f075c050ad9ecebe750420d49961a7f30d090b)

Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-12-10 11:16:14 +00:00
Alexandru DAMIAN 415ebb738d bitbake: toaster: migrate orm models to South
As Toaster advances, database schema alteration
will force users to delete old versions and lose
all data collected.

In order to prevent this, and to allow database
updates to happen without having to delete old data,
we use South to handle migrations for the ORM
application which stores the Toaster data.

    [YOCTO #5559]

(Bitbake rev: 6936faed8d94f3a2ab4055049cd27d02d8229003)

Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-12-10 11:16:14 +00:00
Alexandru DAMIAN 81ebce0778 bitbake: toaster: update to Django 1.5
In order to remain up to date with the relevant technologies,
Toaster is updated with this patch to Django 1.5. This also
makes headways to allow usage of emerging
Django-related technologies.

Changes include the startup script Django version check, usage
of TemplateView instead of deprecated simple function to do
redirects, and update to the new form of the _url_ template tag.

Support for Django 1.4.5 is now deprecated.

    [YOCTO #5558]

(Bitbake rev: 2d37a1731a2b681bc976f3f391d65abb7745b6f9)

Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-12-10 11:16:13 +00:00
Alexandru DAMIAN 5ab8545c4f bitbake: toasterui: do not link non-image targets
In the Simple UI, builds table, targets that are images
have link to the list of installed packages.

There is no point in having links enabled for the non-image
targets, so we don't link in this case.

    [YOCTO #5366]

(Bitbake rev: 5839e5b0af45d4c9e05145b16c4ed5817e152606)

Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-12-10 11:16:13 +00:00
Alexandru DAMIAN bb70ade1c3 bitbake: toasterui: fix version numbers for no PE specified
PE is an optional field in recipes specifiying the epoch
for the recipe. The canonical form for the
full recipe version string is: PE:PV-PR

If no PE is specified, we shouldn't store the initial ":"
character, as it leads to inconsistency with how the
version string is used elsewhere. This patch drops the leading ":"

    [YOCTO #5459]

(Bitbake rev: f6031bd753917c459ab232d88d7dcfc3f10e8184)

Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-12-10 11:16:13 +00:00
Alexandru DAMIAN 54d0e30433 bitbake: toaster: change package storage model
Up until this patch, package information lived in two
places - one table for build packages and one table for
target installed packaged. This situation leads to
two problems: there is no direct link between a build
package and a installed package, and a lot of data is duplicated.

This change unifies all package types in a single table.
The SimpleUI remains the same for continuity sake,
but the REST API will be changed in a future patch.

The package dependencies and package files are now
kept in a single table.

Since we collect target installed package information at all times,
we need to expand it to supplement missing information if a
package is not actually built in the current build.

Small changes to the Simple UI reflect the updated database schema.

    [YOCTO #5565]
    [YOCTO #5269]

(Bitbake rev: f5d655bfaeb349c8680d74530617e34aa389d1f0)

Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-12-10 11:16:12 +00:00
Alexandru DAMIAN f8120984f4 bitbake: toaster: update build stats reading
In the processes of removing local system accesses
from toaster UI, we remove the build stats
code that was moved to toaster.bbclass, and
adapt the database writing code to read the data
from BuildStatsList event sent by the toaster.bbclass

    [YOCTO #5604]

(Bitbake rev: 4930ff5b471761c2a8d16c1935cdab9cf141d2d8)

Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-12-10 11:16:12 +00:00
Alexandru DAMIAN ea307bbcff bitbake: toaster: move layer information reading code
In the processes of removing local system accesses
from toaster UI, we remove the layer data reading
code that was moved to toaster.bbclass, and
adapt the database writing code to read the data
from event sent by the toaster.bbclass

    [YOCTO #5604]

(Bitbake rev: 33b60a940f58e8374a8c7baa9bf28a98f54cdf13)

Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-12-10 11:16:12 +00:00
Alexandru DAMIAN 6cbc83fe89 bitbake: toaster: remove Author field in SimpleUI
Removes a left-over Author field in the Simple UI
recipe page.

    [YOCTO #5449]

(Bitbake rev: a9c24343f13d33d159dab0ac2fd8f50262408980)

Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-12-10 11:16:11 +00:00
Alexandru DAMIAN 7d24b00d0e bitbake: toaster: Analysis API variablehistory update
This patch updates the Analysis REST API to expose
the variablehistory information. A UI tool can query
this API to get a picture on how a variable value got
to its final form.

The documentation for VariableHistory is updated on
Wiki https://wiki.yoctoproject.org/wiki/Analysis_REST_API_Contracts

(Bitbake rev: f304332da3a51b15e864a853989fe5fbaf5f6079)

Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-12-10 11:16:11 +00:00
Richard Purdie 4aac8d87d4 bitbake: data: Ensure we add the contains keys in a particular order
If we don't sort the data, the values can reorder changing the
signatures meaning we get confused builds and significant cache
misses.

(Bitbake rev: 8f453bb11d72afc90a986ac604b3477d97eaf9a8)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-12-09 10:25:47 +00:00
Richard Purdie 184038bedb bitbake: fetch2/git: Ensure check is made in the correct directory
(Bitbake rev: 73ddf1a3d1c516ad3bc785e0413483e616ce07a8)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-12-06 14:10:15 +00:00
Cristiana Voicu 5301c59503 bitbake: toaster: exclude "set in documentation.conf" from variable history
That has no impact on the builds themselves, so we should just
remove that line from the variable history.

[YOCTO #5561]
(Bitbake rev: ae0ed55e80b7bd30c775b128b4114b306a50ff69)

Signed-off-by: Cristiana Voicu <cristiana.voicu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-12-05 16:27:13 +00:00
Cristiana Voicu 2bd4c2be9f bitbake: hob: changes to INHERIT var should use "append" operation
Setting INHERIT var means to remove other operations made on INHERIT.
This is too intrusive, so we decided to use append for this case.

[YOCTO #5448]
(Bitbake rev: a2d0122c198ee50325e6f0e2f5d1c2284475fc7b)

Signed-off-by: Cristiana Voicu <cristiana.voicu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-12-05 16:27:13 +00:00
Richard Purdie f19546e02d bitbake: fetch2/git: Add sanity check to ensure we really did fetch the correct revisions
The fetcher made the rather bold assumption that if it fetched from the upstream,
the revisions were present and correct. These checks are fast and ensure that
really is the case. The avoids accidental network accessed and missing
branch configuration problems.

(Bitbake rev: a9112a102a89049cda597dad449e922c9e957a5d)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-12-05 16:27:13 +00:00
Valentin Popa c51730aaa9 bitbake: Hob: check if warnings are related to package build
If warnings come from recipes parsing
and not from package build, 'parent' object
will be None; so don't update the color for it.

[YOCTO #5621]

(Bitbake rev: f9d24f55a5ffa9257e7ba3257be1210687513733)

Signed-off-by: Valentin Popa <valentin.popa@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-12-03 17:45:54 +00:00
Paul Eggleton 0a5fdfbf36 bitbake: hob: fix package property dialog for changes to FILES_INFO
The FILES_INFO structure is now much simpler, so remove all of the
horrible mangling we had to do here in order to read it.

(Bitbake rev: 11a664292064dbf76850bf21ba386f78a43a56b6)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-12-03 17:45:54 +00:00
Paul Eggleton 27ae6871db bitbake: hob: name package files list variables appropriately
This treeview code was obviously copy-pasted from one of the config
dialogs and the variables were never renamed. Rename them now to improve
readability.

(Bitbake rev: 93b3ddad4396d757d1d0c199ac168f8b1a205fe3)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-12-03 17:45:54 +00:00
Paul Eggleton 8a02406f1c bitbake: lib/bb/ui: handle PKGSIZE change to bytes
PKGSIZE is now in bytes in pkgdata, so we need to treat it as such in
the UI code for Hob / Toaster.

(Bitbake rev: 3b5ff814cd4a3efa4b17c6b343ec39c9acca5c9e)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-12-03 17:45:54 +00:00
Richard Purdie d1e66643ae bitbake: cooker/command/hob: Cleanup configuration init/reset functions and commands
initConfigurationData and loadConfigurationData are similar functions, the only
reason for them appears to be to be able to reset the pre/post configuration
files. The current code is confusing and unmaintainable.

Instead this patch creates a new Sync command which allows these to be explicitly
set. The init and load functions can then be merged into one. There is then no
need for a parseConfiguration command, we can simply reset the server to have the
settings take effect.

The reset fuction is not an instant value return and triggers an event so it should
be an Async command, not a sync one.

The number of calls for the set pre/post command is probably higher than it
need be but someone with more familiarity with the hob code base can probably
figure out the right places its needed (maybe just init_cooker?).

(Bitbake rev: bae5210d7e048022f083361964ebec7daf1608f7)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-12-03 17:45:54 +00:00
Richard Purdie b8f0963592 bitbake: hob: Use BASEDATASTORE_TRACKING feature
Might as well use this functionality now we have it available.

(Bitbake rev: cd7f4d85e3f187140d1bb0aecf82f657a8f8701a)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-12-03 17:45:54 +00:00
Richard Purdie eba506b301 bitbake: codeparser/data_smart: Optimise parsing speed
The previous "contains" changes caused a ~3% parsing speed impact.
Looking at the cause of those changes was interesting:

* Use of defaultdict was slower than just checking for missing entries
  and setting them when needed.
* Even the "import collections" adversely affects parsing speed
* There was a missing intern function for the contains cache data
* Setting up a log object for each variable has noticeable overhead
  due to the changes in the code paths uses, we can avoid this.
* We can call getVarFlag on "_content" directly within VariableParse
  for a noticeable speed gain since its a seriously hot code path.

This patch therefore tweaks the code based on the above observations to
get some of the speed back.

(Bitbake rev: fca802187a2a30686a8a07d2b6b16a3e5716e293)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-12-03 17:45:53 +00:00
Paul Eggleton a17ffbdbb7 bitbake: hob: fix rotating progress icon animation
I've always found it somewhat annoying that this icon's rotation
animation wasn't quite correct; this was because it was looping around
to the second position instead of the first, which made it appear to
stutter.

(Bitbake rev: 78ad15b669b9c7cde41f7bd1ab884c1d2e0db91b)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-12-02 17:51:35 +00:00
Richard Purdie 35c25907a6 bitbake: imagedetailspage: Fix crash with more than 15 layers
If you had more than 15 layers the system would crash since one more
value is added to one array than the other. This fixes the code
so equal numbers of values are added to the arrays and hence
doesn't crash when many layers are enabled.

(Bitbake rev: 4e65463886a2ef245b2f8974e82e9cb942af224b)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-12-02 17:43:22 +00:00
Jason Wessel a67fde0ab1 bitbake: bitbake.lock: Add host:port to bitbake.lock for memres server
The idea is to build on the --status-only option for bitbake and
expose a mechanism where the oe init scripts can easily switch between
memres server and the non-memres server.

In the case of the standard oe init script the following
can shut down the server:

if [ -z "$BBSERVER" ] && [ -f bitbake.lock ] ; then
    grep ":" bitbake.lock > /dev/null && BBSERVER=`cat bitbake.lock` bitbake --status-only
    if [ $? = 0 ] ; then
       echo "Shutting down bitbake memory resident server with bitbake -m"
       BBSERVER=`cat bitbake.lock` bitbake -m
    fi
fi

A similar function can be used to automatically detect if the server
is already running for the oe memres init script.  This new
functionality allows for the memres init script to be started in a new
shell and connect up to an alaready running server without seeing the
error of trying to start the server multiple times.

(Bitbake rev: b1803958de8d7c3c3279841e38604a08dc2316cc)

Signed-off-by: Jason Wessel <jason.wessel@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-12-02 17:33:14 +00:00
Jason Wessel 6ff9c9e39d bitbake: bitbake, xmlrpc.py: Implement memory resident auto port configuration/restart
This patch adds the ability to dynamically select a port for the
bitbake memory resident server when the BBSERVER port is set to -1.
This allows for running multiple instances of the bitbake memory
resident server on the same system in different build directories.

The client portion of the bitbake instance can also request that the
server automatically start when using the auto port feature.  This is
to deal with a bitbake instance that eventually times out and exits or
that has died for some unknown reason.

The new functionality allows for lazy startup of the server after
sourcing the init script for the memory resident functionality.

(Bitbake rev: d6abc07ff385357d312d8435b89e0a9c1f965433)

Signed-off-by: Jason Wessel <jason.wessel@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-12-02 11:28:27 +00:00
Jason Wessel 0bea372b0f bitbake: bitbake: Add --status-only option
The --status-only option is purely to check the health of the server.
The idea is to use it from the oe environment script so as to know if
the server needs to be started or not.

(Bitbake rev: 46b26ef5c27bfa9c91680f494f02750305b8098c)

Signed-off-by: Jason Wessel <jason.wessel@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-12-02 11:28:27 +00:00
Cristiana Voicu fabdf2f57a bitbake: hob: disable layer drag and drop outside the containing widget
[YOCTO #5577]
(Bitbake rev: d39d957c77b9804670cad3bc9f7742084ead27e8)

Signed-off-by: Cristiana Voicu <cristiana.voicu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-11-30 22:26:30 +00:00
Richard Purdie f5f3ef7b09 bitbake: parse/ConfHander/BBHandler/utils: Fix cache dependency bugs
Currently bitbake only adds files to its dependency list if they exist.
If you add 'include foo.inc' to your recipe and the file doesn't exist,
then later you add the file, the cache will not be invalidated.

This leads to another bug which is that if files don't exist and then
you add them and they should be found first due to BBPATH, again the
cache won't invalidate.

This patch adds in tracking of files we check for the existence of so
that if they are added later, the cache correctly invalidates. This
necessitated a new version of bb.utils.which which returns a list of
files tested for.

The patch also adds in checks for duplicate file includes and for now
prints a warning about this. That will likely become a fatal error at
some point since its never usually desired to include a file twice.

The same issue is also fixed for class inheritance. Now when a class
is added which would be found in the usual search path, it will cause
the cache to be invalidated.

Unfortunately this is old code in bitbake and the patch isn't the
neatest since we have to work within that framework.

[YOCTO #5611]
[YOCTO #4425]

(Bitbake rev: 78d285871e4b8c54ccc4602d571e85f922e37ccd)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-11-30 22:26:30 +00:00
Nathan Rossi f91a3f46a1 bitbake: cooker: Fix support for wildcards in bbappend filenames
The 'bbappend in f' incorrectly compares the current recipe with the avaliable
bbappends recipes. This comparsion causes unrequested bbappend files to be
appended, e.g. in the case of 'libgcc_4.8.bb', the bbappends for 'libgcc_4.8.bb'
and 'gcc_4.8.bb' are added to the filelist (because 'gcc_4.8.bb' is contained in
the 'libgcc_4.8.bb' string) which in turn causes the gcc_4.8.bbappend files to
be appended to the libgcc_4.8 recipe.

This should be a 'bbappend == f' to match the previous implementation of this
function, such that if no wildcard is present the recipe names must match
exactly.

This issue was introduced by commit 31bc9af9cd56e7b318924869970e850993fafc5f,
which it related to [YOCTO #5411].

(Bitbake rev: 991cbeedbde8bd25ce08c669b1bfac8b99e33149)

Signed-off-by: Nathan Rossi <nathan.rossi@xilinx.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-11-29 09:53:00 +00:00
Yi Zhao 463e56ff2b bitbake: crumbs/builder.py: Fix typo for indefinite article
(Bitbake rev: bc3c69e50d36ea5e43f55f7b3b1ff3b0ab3696ee)

Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-11-27 14:43:33 +00:00
Valentin Popa 82ff33fc39 bitbake: Hob: force notebook refresh
Redraw the entire notebook widget after
number-of-issues drawable is incremented
(because for this case, the notebook widget
doesn't refresh it's children automatically).

[YOCTO #5596]

(Bitbake rev: 347b2ead091f00ee60703f6f3d17cfdd9075ac07)

Signed-off-by: Valentin Popa <valentin.popa@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-11-26 23:01:33 +00:00
Richard Purdie a10301f6a9 bitbake: data/codeparser: Improve handling of contains functions
One of the current frustrations with the sstate checksums is that
code like base_contains('X', 'y',...) adds a full dependency on X
and varies depend even on whitespace changes in X.

This patch adds special handling of the contains functions to expand
the first parameter and check for the flag specified by the second
parameter (assuming its a string).

The result is then appended to the value of the variable with a "Set"
or "Unset" status. If the flag is added/removed, the stored variable
value changes and hence the checksum changes. No dependency on X
is added so it is free to change with regard to other flags or
whitespace.

This code is far from ideal, ideally we'd have properly typed variables
however it fixes a major annoyance of the current checksums and
is of enough value its worth adding in a stopgap solution. It shouldn't
significantly restrict any propely typed variable implementation in
future.

(Bitbake rev: ed2d0a22a80299de0cfd377999950cf4b26c512e)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Christopher Larson <chris_larson@mentor.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-11-26 23:01:33 +00:00
Richard Purdie d061692372 bitbake: bitbake: Share BB_TASKDEPDATA with tasks
Currently tasks have no knowledge of which other tasks they depend
upon. This makes it impossible to do at least two things which would be
desirable/interesting:

a) Have the ability to create per recipe sysroots
b) Allow the aclocal files to be present only for the entries in
   DEPENDS (directly and indirectly)

By exporting task data through this new variable, tasks can inspect
their dependencies and then take actions based upon this.

(Bitbake rev: 84f1dde717dac22435005b79d03ee0b80a3e8e62)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-11-26 23:01:33 +00:00
Richard Purdie 4c69970bd3 bitbake: runqueue: Optimise next_buildable_task()
This unlikely looking function was found to be eating a lot of CPU time
since it gets called once per trip through the idle loop if we're not
running a maximum number of processes. This was particularly true in
world builds of 13,000 tasks.

Calling the computation code is pretty pointless because until some
other task finishes nothing is going to become available to build.
We can know when things become available so this patch teaches the
scheduler this knowledge.

It also:

* skips any coputation when nothing can be built
* if there is only one available item to build, ignore the priority map
* precomputes the stamp filenames, rather than doing it every time
* saves the length of the array rather than calculating it each time
  (the extra function overhead is significant)

Timing wise, initially, 5000 iterations through here was 20s, with
the patch 200000 calls takes the same time. The end result is that
builds get up and running faster.

(Bitbake rev: 4841c1d37c503a366f99e3a134dca7440e3a08ea)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-11-26 23:01:33 +00:00
Richard Purdie 3ca58c762f bitbake: codeparser: Drop unneeded variable separation
There is no good reason to separately track var_references and
references so merge them and remove the unneeded variable.

(Bitbake rev: 64d4cbd6360c96574cece70205ea3aecc3f8bae6)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-11-26 23:01:32 +00:00
Peter Kjellerstedt 0aef540dd8 bitbake: fetch2: Correct a few calls to latest_revision()
In 6a48474de9505a3700863f31839a7c53c5e18a8d the url parameter to a
number of functions was removed. However, not all calls to
latest_revision() were fixed...

(Bitbake rev: 7c94ca56b2fd85a989089f58b3dcce3172a778f2)

Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-11-25 13:02:27 +00:00
Florin Sarbu 64372fa027 bitbake: bitbake: fetch2: Remove the unused urldata from the git fetcher.
(Bitbake rev: e0a2e9699e9f338dd7ade8c9eef0a12c7639ec05)

Signed-off-by: Florin Sarbu <florin.sarbu@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-11-25 13:00:18 +00:00
Richard Purdie b1c15cb907 bitbake: data: Fix output inconsistencies for emit_var
VAL = ""     (not shown)
VAL = " "    (shown as "")
VAL = " x"   (shown as "x")

would all show up rather differently to what would be expected in the
bitbake -e output. This fixes things so they appear consistently.

The output for running some shell functions may also change slightly
but shouldn't change in a way that is likely to cause problems.

[YOCTO #5507]

(Bitbake rev: fcba5ef0053dc0ef5360e4912609e5d52f5046b0)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-11-25 13:00:18 +00:00
Richard Purdie 6ddb9bf097 bitbake: perforce: Fix path subdirectory issues
With a SRC_URI = " \
p4://depot/folder/...;module=localfolder/localsubfolder;changeslist=${P4CHANGELIST} \
"

the subfolders of //depot/folder/... get renamed when mapped to the
local folder structure. They lose the first 3 letters. This
patch fixes that.

Issue reported by and patch sent from katutxakurra@gmail.com

[YOCTO #5380]

(Bitbake rev: 40e06dc459d9c0b5d42d65b2d2c846196fd36b1f)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-11-24 12:25:37 +00:00
Paul Eggleton 4ca910d4cf bitbake: bitbake-layers: avoid loading configuration when not needed
In recent versions of bitbake, it is not possible to initialise a
BBCooker object without having it load the configuration first. Thus we
should avoid creating the Tinfoil object here in bitbake-layers which
does that internally until we actually need to, so you can run
"bitbake-layers help" and not have to wait several seconds for the
output.

(Bitbake rev: 8f1e280fbbb6432d7bcc1fb4241f402668c6c5ea)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-11-24 12:25:37 +00:00
Valentin Popa 300b6f7f49 bitbake: HOB: Show warnings in Issues tab
Proper update of warnings view during build.

[YOCTO #3496]

(Bitbake rev: 124428ba8a0b1cc85d4b96053bf71bce14a5774c)

Signed-off-by: Valentin Popa <valentin.popa@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-11-24 12:25:37 +00:00
Saul Wold 381d592018 bitbake: cooker: add support for using % as a wildcard in bbappend filename
There has been a continuing call for supporting wildcard in bbappend
filenames. The wildcard is actually allow matching of the name and
version up to the point of encountering the %.  This approach will
allow for matching of the major or major.minor.

Exampes:

busybox_1.21.1.bb
busybox_1.21.%.bbappend will match
busybox_1.2%.bbappend will also match

if we update to busybox_1.3.0.bb the above won't match, but a busybox_1.%.bb
will.

[YOCTO #5411]

(Bitbake rev: 31bc9af9cd56e7b318924869970e850993fafc5f)

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-11-24 12:25:36 +00:00
Richard Purdie bc267ef6fe bitbake: runqueue/bitbake-worker: Fix dry run fakeroot issues
When using the dry run option (-n), bitbake would still try and fire
a specific fakeroot worker. This is doomed to failure since it might
well not have been built.

Add in some checks to prevent the failures.

[YOCTO #5367]

(Bitbake rev: f34d0606f87ce9dacadeb78bac35879b74f10559)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-11-24 12:25:36 +00:00
Richard Purdie 9d7f8e2a20 bitbake: fetch2: Stop passing around the pointless url parameter
There is no good reason to keep passing around the url parameter when
its contained within urldata (ud). This is left around due to
legacy reasons, some functions take it, some don't and its time
to cleanup.

This is fetcher internal API, there are a tiny number of external users
of the internal API (buildhistory and distrodata) which can be fixed up
after this change.

(Bitbake rev: 6a48474de9505a3700863f31839a7c53c5e18a8d)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-11-22 12:03:02 +00:00
Richard Purdie 4acc7322a2 bitbake: fetch2: Clean up some url parameters to functions
urldata contains the url so we might as well stop passing around
pointless function parameters. This was done for legacy reasons but
its time to clean this mess up.

This is a first step in cleanup and is a standalone patch but there is
more to be done in a second patch.

(Bitbake rev: 06590cfebbcf6565a17b80cc298e3ecdfaba4656)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-11-22 12:03:02 +00:00
Alexandru DAMIAN 725fae6581 bitbake: toasterui: fix typo
A typo in buildinfo helper leads to a bug where
information about tasks is not correctly stored.

This patch fixes the typo.

(Bitbake rev: 67b752993a2c64cba9ccc4fa662f0bddf081e74a)

Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-11-20 14:06:49 +00:00
Alexandru DAMIAN e19ee57c96 bitbake: bitbake: cooker, toaster: mark interrupted builds as failed
This patch changes bitbake to log an error to the
command line when the build is interrupted via Ctrl-C.

This is needed to inform the user that not all tasks
required for the build have been executed, and
the build is not complete.

Internally, the Bitbake server will return a CommandFailed
event that will be logged by Toaster as build failure.

(Bitbake rev: 9a658e8b1511f1b9f91663f546f748fdfbc8965f)

Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-11-20 14:05:52 +00:00
Peter Seebach 10717e5a0a bitbake: build.py: add single-quotes around already-expanded directory name
If the computed name of a directory contains an undefined variable
reference, bitbake dutifully creates a directory with a name that has
${...} in it. However, the actual task script created then tries to cd
to that directory, and the cd command fails, because no such directory
exists -- because the shell has helpfully removed the ${...} which did
not match any actual variables.

Since we want the name to be used exactly-as-is, add single quotes around
the name so this doesn't cause strange failures running tasks, which
allows us to progress past such failures and get to a point where they
can be diagnosed.

(Bitbake rev: 2809c2e6f2f35f9b08058950be896947ab5a0284)

Signed-off-by: Peter Seebach <peter.seebach@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-11-20 14:05:52 +00:00