Commit Graph

527 Commits

Author SHA1 Message Date
Robert Yang 6163148c17 sstate-cache-management.sh: update for the SSTATE_MIRRORS
Several fixes:
* We have put the sstate file to SSTATE_DIR/??/ currently, but the
  sstate file on the SSTATE_MIRRORS or the obsolete one is still in
  SSTATE_DIR/ (no subdir), update the script to support manage them.

* Remove the related ".done" file in the SSTATE_DIR.

* Add a "-L, --follow-symlink" which will remove both the symbol link and
  the destination file

* Change the "ls -u file_list" (access time) to "ls -t file_list"
  (change tiem), since the "ls -u" and readlink will change the
  symlink's access time, which would make the result inconsistent.
  A solution is save the access time before every "ls -u" and "readlink",
  save it back after the command, but this would cause performance lost
  since it needs check each file and modify the symlink's status. Use
  the "-t" doesn't cause much different.

[YOCTO #2897]

(From OE-Core rev: 209ec08787981345a7f62b10a8a5c2ace0887c8e)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-08-20 16:53:17 +01:00
Richard Purdie 07cc3dd4e8 scripts/runqueue-internal: Drop enable-gl option
This is no longer necessary since we've dropped the GL passthrough patches.

(From OE-Core rev: b6bc580f1cf56c2e771e87dfeadbb1e5d8416fce)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-08-20 16:53:16 +01:00
Damien Lespiau d48235e3c2 core: Prefer mesa-dri as virtual/libopengles1/2 provider
Wihtout it, you have both mesa-dri and mesa-xlib as providers. Let's
prefer the accelerated version.

(From meta-yocto rev: 13f847744aa842ef38b3f2adf3764425319b5507)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-08-19 10:46:00 +01:00
Scott Garman 641f582f53 runqemu: work with yocto-bsp created kernel filenames
The yocto-bsp tool generates kernels with additional strings within
the filename, e.g. zImage-myqemuarm.bin. Loosen the MACHINE detection
regex to work with these filenames.

Fixes [YOCTO #2890].

(From OE-Core rev: 17d616adffc3514b6778acc6ab5d6da34a7366b5)

Signed-off-by: Scott Garman <scott.a.garman@intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-08-19 10:45:59 +01:00
Scott Garman 5bffd94316 runqemu: support booting ramfs-based images
Added support for booting ramfs-based images (e.g, poky-tiny) which
do not have block device support.

This fixes [YOCTO #2612].

(From OE-Core rev: b09c45f017da71ff966004752f8e926ea00ac451)

Signed-off-by: Scott Garman <scott.a.garman@intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-08-17 18:04:20 +01:00
Robert Yang f8d5e2b6c8 sstate-cache-management.sh: update it for the new layout
Update it for the new layout of sstate-cache.

Note: It doesn't handle the old sstate-cache/sstate-xxx.tgz (or
siginfo), the user should remove it manually (rm -fr
sstate-cache/sstate-* would be OK).

[YOCTO #2897]

(From OE-Core rev: fcb61aa552a641faafdf2216fa57ba5ac6b9991f)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-08-15 15:12:51 +01:00
Elizabeth Flanagan dee07308c1 runqemu-gen-tapdevs: add UID to CL options
runqemu-if* now requires UID as a command line option which means
runqemu-gen-tapdevs needs to take it as an option.

(From OE-Core rev: a624ec02c4acec83efbe66406f22abafbdce5d63)

Signed-off-by: Elizabeth Flanagan <elizabeth.flanagan@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-08-02 23:01:34 +01:00
Laurentiu Palcu 749b8a52c6 scripts: add script for relocating the SDK
This script will be embedded in the SDK tarball and will be called by
the SDK installer. It replaces the interpreter path in all binaries and
it also changes the ld.so.cache and SYSDIRS in dynamic loader.

(From OE-Core rev: 3d366f4953962566f33a3d77d65ed0bd2c48f922)

Signed-off-by: Laurentiu Palcu <laurentiu.palcu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-08-02 15:28:38 +01:00
Darren Hart 0db5532abf send-pull-request: Make -a really imply -c
The switch statement does not fall through as the comment suggests.
This results in -a not implying -c as was intended.

Add the two lines from -c to -a to achieve the intended behavior.

(From OE-Core rev: 319d2cc8e60450106b665ee4172e2e6dc90e14b5)

Signed-off-by: Darren Hart <dvhart@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-08-02 15:28:38 +01:00
Robert Yang 148e19e880 createrepo 0.4.11: add rpm-createsolvedb.py
Move scripts/rpm-createsolvedb.py to
meta/recipes-support/createrepo/createrepo/ since we should wrap it to
use the native python.

[YOCTO #2822]

(From OE-Core rev: 72d673bef385e756bd858f9eca7fe419efaceb39)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-08-01 23:11:17 +01:00
Paul Eggleton ad63b9b11b scripts/oe-pkgdata-util: exclude unpackaged in glob output
Check for .packaged file and exclude packages if this file does not
exist - this avoids attempting to install empty packages during
complementary package installation within do_rootfs that didn't end up
being created (and failing as a result).

(From OE-Core rev: 4a85d8a4026cf1d1603513ed9780f80c603cc611)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-31 12:21:30 +01:00
Paul Eggleton 74aac73d69 combo-layer: ensure init works with split local config
If the local configuration is already split out, ensure the init action
works properly and does not error in the case that last_revision is not
set. Additionally, if the local configuration is within the repository,
prevent it from being committed and add it to .gitignore.

(From OE-Core rev: de339b0cb201035e27df1128ccf526937b8325ec)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-31 11:59:06 +01:00
Christopher Larson 780ba46975 scripts/bitbake: unbreak the git version comparison
With the current code, we're calling awk to do a floating point comparison
between '1.7.0.4' and '1.7.5' (on an ubuntu 10.04 LTS machine). These clearly
aren't proper floating point numbers, and the comparison is incorrect. It's
returning true for 1.7.0.4 >= 1.7.5.

Instead of using a floating point comparison for this, call out to python and
let it do it.

(From OE-Core rev: f28f6267271edbbef16caec323e9ba76e2216723)

Signed-off-by: Christopher Larson <chris_larson@mentor.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-31 11:38:23 +01:00
Paul Eggleton de3abcf78a combo-layer: allow splitting out local config
Allow splitting the local parts of the configuration (mostly
local_repo_dir and last_revision, although there is no limitation) to
a side-by-side -local.conf file, with component sections optionally
tagged with the combo layer branch name. This effectively allows you to:

 * avoid polluting the history by committing the updated last revision
   to the combo repository for every update
 * avoid putting local repo paths into the combo repository
 * manage multiple branches of the combo repository whilst avoiding the
   possibility of mixing the configuration for one branch with another.

An example split configuration (note, values may be artificial):

------------------- combo-layer.conf -------------------
[bitbake]
src_uri = git://git.openembedded.org/bitbake
dest_dir = bitbake
hook = scripts/combo-layer-hook-default.sh

[oe-core]
src_uri = git://git.openembedded.org/openembedded-core
dest_dir = .
hook = scripts/combo-layer-hook-default.sh
--------------------------------------------------------

---------------- combo-layer-local.conf ----------------
[bitbake]
local_repo_dir = ../repos/bitbake

[oe-core]
local_repo_dir = ../repos/oe-core

[bitbake|master]
branch = master
last_revision = db689a99beffea1a285cdfc74a58fe73f1666987

[oe-core|master]
branch = master
last_revision = 121a1499a81706366acc0081272a6bff634d4d62

[bitbake|denzil]
branch = 1.12
last_revision = 24b631acdaa143a4de39c6e1328849660c66f219

[oe-core|denzil]
branch = denzil
last_revision = 741146fa90f28f7ce8d82ee7f7e254872d519724
--------------------------------------------------------

It is assumed that the local config file will be added to .gitignore.

(From OE-Core rev: f0065d7a6973628803a17c57f2265512aba3234c)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-31 08:02:11 +01:00
Paul Eggleton 6bea863704 combo-layer: check that last_revision is valid
If the user edits the configuration file by hand and sets last_revision,
we need to ensure that the revision is valid and on the specified
branch.

(From OE-Core rev: 05382932257257247b8c18bc06e9c0039d134d06)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-31 08:02:11 +01:00
Paul Eggleton 8140c5b7ee combo-layer: improve patch list handling and output
* Ignore blank lines in patch list
* Don't fail in interactive mode if patch list is deleted
* Show patch counter
* Show relative path for patches
* Print headings before applying patch list for each component

Also change to using a "with" block to read the patch list so it gets
closed properly when we're finished.

Fixes [YOCTO #2455].

(From OE-Core rev: 65461d7c35fdadb5b008052798731dce19ed187f)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-31 08:02:10 +01:00
Paul Eggleton 2dc0b337bc combo-layer: drop to a shell when apply fails during update
If applying a patch fails during the update process, drop to a shell
instead of exiting; at that point the user can manually apply the patch,
do nothing and "exit" to skip it, or "exit 1" to abort the process.

(From OE-Core rev: c82b28982c4f630c130c827a7da3ac0454cd93b6)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-31 08:02:10 +01:00
Paul Eggleton f558ecf90e combo-layer: ignore patch-* temp directories in dirty check
Make the dirty repo check somewhat less strict by ignoring old
patch directories created by this tool.

(From OE-Core rev: fea477ac55e2555c5bb0aad36db641aaa27aa915)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-31 08:02:10 +01:00
Paul Eggleton 2ed3f63b02 combo-layer: allow component pull to be done separately
* Add a -n option to disable component repo pull during update
* Add a 'pull' action to pull the component repos only

(From OE-Core rev: 61983b2191253b24117b63f586d5aac00c7eb48e)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-31 08:02:10 +01:00
Paul Eggleton dad01a055b combo-layer: remove &> bashism
&> does not work with dash - use > xxxx 2>&1 instead.

(From OE-Core rev: 5582cc58e42402c4680877e669d8c1ce058e7098)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-31 08:02:10 +01:00
Paul Eggleton fa5640d143 Rework installation of dev, dbg, doc, and locale packages
Use a similar mechanism that was previously used to install locales at
rootfs generation time to install other "complementary" packages (e.g.
*-dev packages) - i.e. install all of the explicitly requested packages
and their dependencies, then get a list of the packages that were
installed, and use that list to install the complementary packages. This
has been implemented by using a list of globs which should make it
easier to extend in future.

The previous locale package installation code assumed that the locale
packages did not have any dependencies that were not already installed;
now that we are installing non-locale packages this is no longer
correct. In practice only the rpm backend actually made use of this
assumption, so it needed to be changed to call into the existing package
backend code to do the complementary package installation rather than
calling rpm directly.

This fixes the doc-pkgs IMAGE_FEATURES feature to work correctly, and
also ensures that all dev/dbg packages get installed for
dev-pkgs/dbg-pkgs respectively even if the dependency chains between
those packages was not ensuring that already.

The code has also been adapted to work correctly with the new
SDK-from-image functionality. To that end, an SDKIMAGE_FEATURES variable
has been added to allow specifying what extra image features should go
into the SDK (extra, because by virtue of installing all of the packages
in the image into the target part of the SDK, we already include all of
IMAGE_FEATURES) with a default value of "dev-pkgs dbg-pkgs".

Fixes [YOCTO #2614].

(From OE-Core rev: 72d1048a8381fa4a8c4c0d082047536727b4be47)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-29 10:16:14 +01:00
Richard Purdie 707cd32457 scripts/bitbake: Check the git-native version and build it if necessary
We require git version 1.7.5 or later for the git remote --mirror=xxx syntax.
If we have an older version of git, this patch ensure we build git-replacement-native.
We add an alternative PROVIDES in the same way as tar-native to allow this script
to trigger the build whilst still allowing git-native in ASSUME_PROVIDED.

(From OE-Core rev: 269f3b3cfacaf229d5e45177ee01b16561370ee3)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-18 14:29:30 +01:00
Khem Raj 9e5bce826a runqemu: Fix running qemu when build without gl
When gl is disabled in PACKAGECONFIG then we dont need
to check for supporting libs to be present before running
qemu.

(From OE-Core rev: 6612873dc59054e6d37fa7488226218bfb759127)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-17 10:53:56 +01:00
Dennis Lan 521cf20942 runqemu/mips: adjust runqemu script to support mipsel machine
(From OE-Core rev: a12e2409af246d4c1d0e0c9a2457fb9c850bd8ca)

Signed-off-by: Dennis Lan <dennis.yxun@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-17 10:53:54 +01:00
Scott Garman 91a3a07884 runqemu: fix support for ext4 rootfs images
(From OE-Core rev: c9479ae46d0b891eda8f0db89bc66fdf08c3f7c2)

Signed-off-by: Scott Garman <scott.a.garman@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-09 16:58:57 +01:00
Scott Garman 24f02d58a7 runqemu: fix usage() help for MACHINE setting
(From OE-Core rev: 36482a0064993b047829631d063beadbc03f2cbf)

Signed-off-by: Scott Garman <scott.a.garman@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-09 16:58:57 +01:00
Cristian Ciupitu 9a4b266674 runqemu: fix fedora pkg names when run fails
runqemu can fail to with the following message:

    You need libGL.so and libGLU.so to exist in your library path to run the QEMU emulator.
        Fedora package names are: mesa-libGL mesa-libGLU.

The libGL.so and libGLU.so files are provided by the mesa-libGL-devel
and mesa-libGLU-devel Fedora packages (yum provides '*/libGL*.so').

(From OE-Core rev: f2b6f9c3a8b4f87b5570b78766a118e4290d773a)

Signed-off-by: Cristian Ciupitu <cristian.ciupitu@yahoo.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-02 16:47:43 +01:00
Tom Zanussi 2a29b7d087 yocto-bsp: update yocto-bsp xorg.conf templates
The non-x86 qemu machines now require an xorg.conf, change the
templates accordingly.

Fixes [YOCTO #2559]

(From meta-yocto rev: d465c09d8df0e6d210ba8cd3c17549a07a8e134d)

Signed-off-by: Tom Zanussi <tom.zanussi@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-06-26 15:34:40 +01:00
Tom Zanussi cad078c4d0 yocto-bsp: update yocto-bsp machine.conf template
Some changes in the ordering assumptions of the qemu include rendered
X inoperative, fix those in the qemu machine template.

Fixes [YOCTO #2559]

(From meta-yocto rev: c3d208267dea6bc0f8be2eb9c63b4125730bb21b)

Signed-off-by: Tom Zanussi <tom.zanussi@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-06-26 15:34:40 +01:00
Kang Kai 0abfb690a8 runqemu-internal: qemu fails to run on ext2 image
[Yocto 2579]

When set DISTRO to poky-tiny, only ext2 image is created. But
runqemu-internal doesn't set QEMUOPTIONS for ext2 image that make qemu
fail to boot.

Fix it for qemux86 arch since poky-tiny can only build for qemux86 now.

(From OE-Core rev: 5f2f951bdcb6f29e3ece39250715293d92db5f69)

Signed-off-by: Kang Kai <kai.kang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-06-25 16:35:52 +01:00
Kang Kai a7f6b0a03a cleanup-workdir: update help text
Update the help text to tell user that the files and dirs under WORKDIR
which are not created by Yocto will be deleted.

(From OE-Core rev: dcd2ebc5d63965a7ad6e714406149f63ffb4a704)

Signed-off-by: Kang Kai <kai.kang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-06-18 13:24:57 +01:00
Kang Kai 3360a4f1b3 cleanup-workdir: only deal dirs related to current arch
Some users may build for different archs under same workdir, so they
don't want to clean the dirs not related to current arch.

Run command 'bitbake -e' with selected packages to get the dirs related
to current arch then clean them.

Update the way to get the WORKDIR by parsing the IMAGE_ROOTFS by the
way.

(From OE-Core rev: a16727ebc341e0a0ce59a5200dc774cf672593ee)

Signed-off-by: Kang Kai <kai.kang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-06-18 13:24:57 +01:00
Kang Kai 21d84d2fe3 cleanup-workdir: replace commands with subprocess
Use modules subprocess to run command instead of module commands.

(From OE-Core rev: 33f18965bbeeec47f694f2aa165e5e07eadb7ab7)

Signed-off-by: Kang Kai <kai.kang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-06-18 13:24:57 +01:00
Kang Kai 7dbc26874f cleanup-workdir: update the way to check obsolete dirs
Update the way to check obsolete directories.

According to package and its version construct a list of all packages'
current build directory. If any directory under $WORKDIR/*/ is not in
the list will be removed.

At same time, all the files(vs. directory) under $WORKDIR and
$WORKDIR/*/ will be removed because they are not created by poky.

(From OE-Core rev: 4d2920dee32bbc5d12ed98234de096d28d29415b)

Signed-off-by: Kang Kai <kai.kang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-06-18 13:24:56 +01:00
Robert Yang 1b112fa9cf pybootchartgui: Fix the filename and add a default format
* Fix teh output filename to make it easy to use
* Add a default output format (svg)
* Fix the usage message
* Fix the version to v1.0.0

Currently, the help messages are:

$ ./pybootchartgui.py --help
Usage: pybootchartgui.py [options] /path/to/tmp/buildstats/<recipe-machine>/<BUILDNAME>/

Options:
  --version             show program's version number and exit
  -h, --help            show this help message and exit
  -i, --interactive     start in active mode
  -f FORMAT, --format=FORMAT
                        image format: svg, pdf, png, [default: svg]
  -o PATH, --output=PATH
                        output path (file or directory) where charts are
                        stored
  -s NUM, --split=NUM   split the output chart into <NUM> charts, only works
                        with "-o PATH"
  -n, --no-prune        do not prune the process tree
  -q, --quiet           suppress informational messages
  --very-quiet          suppress all messages except errors
  --verbose             print all messages

[YOCTO #2403]

(From OE-Core rev: 138c2c31e41e3f1803b7efbedf78326d71821468)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-06-15 15:12:43 +01:00
Robert Yang 0ad3f75432 pybootchartgui: split the output chart into multiple ones
Split the output chart into multiple ones to make it more readable, it
only works with "-o path", which means that it doesn't work if the user
doesn't want to save the chart to the disk. For example:

$ ./pybootchartgui.py /path/to/tmp/buildstats/core-image-sato-qemux86/201205301810/ -f svg -s 5 -o /tmp/
bootchart written to /tmp/bootchart_1.svg
bootchart written to /tmp/bootchart_2.svg
bootchart written to /tmp/bootchart_3.svg
bootchart written to /tmp/bootchart_4.svg
bootchart written to /tmp/bootchart_5.svg

[YOCTO #2403]

(From OE-Core rev: 04a34899e1c15a70babd97a3a59ccb9f8af05bad)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-06-15 15:12:42 +01:00
Robert Yang bc5b86f025 pybootchartgui: make the build profiling in pictures
The original patch is from Richard, I rebased it to the up-to-date
upstream code, here are the original messages from him:

We have just merged Beth's initial buildstats logging work. I was
sitting wondering how to actually evaluate the numbers as I wanted to
know "where are we spending the time?".

It occurred to me that I wanted a graph very similar to that generated
by bootchart. I looked around and found pyboootchartgui and then hacked
it around a bit and coerced it to start producing charts like:

http://tim.rpsys.net/bootchart.png

which is the initial "pseudo-native" part of the build. This was simple
enough to test with.

I then tried graphing a poky-image-sato. To get a graph I could actually
read, I stripped out any task taking less than 8 seconds and scaled the
x axis from 25 units per second to one unit per second. The result was:

http://tim.rpsys.net/bootchart2.png
(warning this is a 2.7MB png)

I also added in a little bit of colour coding for the second chart.
Interestingly it looks like there is more yellow than green meaning
configure is a bigger drain on the build time not that its
unexpected :/.

I quite enjoyed playing with this and on a serious note, the gradient of
the task graph makes me a little suspicious of whether the overhead of
launching tasks in bitbake itself is having some effect on build time.
Certainly on the first graph there are some interesting latencies
showing up.

Anyhow, I think this is the first time bitbake's task execution has been
visualised and there are some interesting things we can learn from it.
I'm hoping this is a start of a much more detailed understanding of the
build process with respect to performance.

[YOCTO #2403]

(From OE-Core rev: 6ea0c02d0db08f6b4570769c6811ecdb051646ad)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-06-15 15:12:42 +01:00
Robert Yang 3d78bc19c5 pybootchartgui: add the original code
This is from:
http://pybootchartgui.googlecode.com/files/pybootchartgui-r124.tar.gz

Will modify it to make the build profiling in pictures.

Remove the examples since they would not work any more, and they cost
much disk space.

[YOCTO #2403]

(From OE-Core rev: 1f0791109e1aed715f02945834d6d7fdb9a411b4)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-06-15 15:12:42 +01:00
Scott Garman 64791642d4 runqemu-ifup: enable arp proxying
This allows core-image-sato to access the WAN.

Thanks to Dexuan Cui for proposing this fix.

Fixes [YOCTO #2329]

(From OE-Core rev: d294b1bddece429f2639676ddc97d2896fc58916)

Signed-off-by: Scott Garman <scott.a.garman@intel.com>
Signed-off-by: Elizabeth Flanagan <elizabeth.flanagan@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-06-08 11:43:20 +01:00
Robert Yang 09a7dc9a46 generate-manifest-2.7.py: replace os.popen with os.unlink
The os.popen function would fail (more or less) silently if the executed
program cannot be found, and here what we need is os.system not os.popen
since it doesn't use the return value, use os.unlink() and ignore
exceptions from it would be better as Chris suggested.

[YOCTO #2454]

(From OE-Core rev: bc9f7d7b7eda1c45ad1aaee469ebe28ee1c0c96b)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-06-05 22:56:32 +01:00
Robert Yang 0efe773c17 kernel.py: replace os.popen with subprocess.Popen
Replace os.popen with subprocess.Popen since the older function would
fail (more or less) silently if the executed program cannot be found

More info:
http://docs.python.org/library/subprocess.html#subprocess-replacements

[YOCTO #2454]

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
2012-06-05 22:49:19 +01:00
Richard Purdie a92ff3ad42 scripts/cp-noerror: Add a special copy function to fix autotools issues
Currently we copy the aclocal directory to the build so that autotools
doesn't see .m4 files disappear when its processing them. This can happen
if for example, package X is being rebuilt at the same time as Y and it
gets uninstalled from sstate (assuming there are no dependencies between
X and Y). This code making the copy was added to avoid races but introduces
a race of its own, namely that the files can disappear during the copy.

This patch adds a cp-noerror script which silently ignores such errors
and gives the behaviour we need in this case. It hence fixes issues which
crop up for users and the autobuilder occasionally.

[YOCTO #2485]

(From OE-Core rev: 0f81fbc0df73675aeb79c724858799a3b6a02f85)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-05-30 12:04:49 +01:00
Paul Eggleton e8dac5a58a scripts/buildhistory-diff: add GitPython version check
Display an error if the user does not have at least version 0.3.1 of
GitPython installed.

(From OE-Core rev: 2f0f5a895504924b5a21699854678e9bc25b447c)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-05-30 12:04:46 +01:00
Robert Yang d760fb97f5 scripts: replace os.system with subprocess.call
Replace os.system with subprocess.call since the older function would
fail (more or less) silently if the executed program cannot be found

More info:
http://docs.python.org/library/subprocess.html#subprocess-replacements

[YOCTO #2454]

(From OE-Core rev: 57f843146ed62c04c23bc380dc8cb38aba264f1c)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-05-30 12:04:45 +01:00
Khem Raj f13ef77b5d runqemu: Add qemush4 and qemumips64 knowledge
New machines need to be added and they also
have different kernel commandlines

(From OE-Core rev: 3a5432aec0faea49d2c04984cd169ceb35bba89f)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-05-21 09:59:03 +01:00
Jiajun Xu 3e57b1d749 test-reexec: Add script to address issues when task re-execution
The script is used to address build issues when tasks of different
recipes are re-executed. The script goes through all available recipes
and their tasks. The test results are saved in ./reexeclogs. Force build
logs are saved with prefix "force". Build failure logs are saved with
prefix "failed".

[YOCTO #2123]

(From OE-Core rev: 6258a11f22103d68d02e329c2e7fb198202cc6ef)

Signed-off-by: Jiajun Xu <jiajun.xu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-05-18 15:25:11 +01:00
Peter Seebach 441623224b runqemu: replace bashism with working shell idiom
The =~ operator is not one of my favorites, not just due to portability
issues, but because it's not well known, and a lot of people might
not expect a regex operator.

The canonical shell idiom for this is to use case with alternation
and wildcards.  As a side note, if you are matching anything containing
core-image-sato, you don't need to also check for core-image-sato-sdk.

(From OE-Core rev: 716ae8dbd1fb29292c9fca0f59d3807a54508e87)

Signed-off-by: Peter Seebach <peter.seebach@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-05-15 18:51:13 +01:00
Richard Purdie 8da9bbfc43 oe-buildenv-internal: Fix BITBAKEDIR changes to work with existing autobuilder scritpts
The BITBAKEDIR change does not work well when the script is sourced from another script
since $2 may be unrelated. This change adds the logic onto the BDIR conditional and
which more external scripts would set, hence avoiding the problem.

(From OE-Core rev: ec8fbe0d1870285a4a972ddcfe83aa63d720cb80)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-05-12 08:43:15 +01:00
Philip Balister 350a459dc3 Add option to oe-buildenv-internal script to change bitbake location.
Having bitbake inside the oe-core is annoying to some people. This commit
adds a second option to the oe-init-build-env script.

Run like this:

. ./oe-init-build-env ../build ../bitbake

for example. Without the second option, the old behavior is preserved.

(From OE-Core rev: 45510a0dd7a9321c29c5b21ac4053192f7ab9ad5)

Signed-off-by: Philip Balister <philip@balister.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-05-11 23:24:03 +01:00
Tom Zanussi 3b78ad8041 yocto-bsp: clarify help with reference to meta-intel
The current yocto-bsp help assumes knowledge that the meta-intel layer
needs to be cloned before it's put into the BBLAYERS.  Avoid the
guesswork and state the details explicitly in the help.

Also, the shorter 'usage' string doesn't mention it at all; it would
help to at minimum mention it and refer the user to the detailed help.

Fixes [YOCTO #2330].

Signed-off-by: Tom Zanussi <tom.zanussi@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-05-06 10:00:39 +01:00