Commit graph

4358 commits

Author SHA1 Message Date
Richard Purdie
f02cbc61d4 deploy: Mark deploy tasks as MACHINE specific
This adds the markup to inform bitbake to rerun the deploy task per MACHINE.
This makes sense since DEPLOY_DIR_IMAGE contains MACHINE. Doing it this
way means the same artefact will be reused from sstate rather than rebuilt.

(From OE-Core rev: 4052e0858d72505728c2a746fac935bf281903fd)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-10-01 07:43:36 +01:00
Richard Purdie
6fe4fd234f multilib_global: Add handling of SIGGEN variables for multilib
multilib task signatures turned out to have issues since
SIGGEN_EXCLUDERECIPES_ABISAFE and SIGGEN_EXCLUDE_SAFE_RECIPE_DEP
did not have multilib mappings. This adds those mappings in which
in turn improves multilib task checksums to match the standard
non-mulitlib versions.

(From OE-Core rev: ea872b735c92a30d03cfa32953e060430e6f7f0b)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-10-01 07:43:35 +01:00
Lucian Musat
ba0f6ca796 oeqa/testimage: Add ability to run single test from suite.
Just like we have in oe-selftest, you can add
<filename>.<Class>.<testname> in TEST_SUITES in order to
run just that test

(From OE-Core rev: 3bf5204315fedc586fdf641583cfdb2c1a78c5c0)

Signed-off-by: Lucian Musat <george.l.musat@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-10-01 07:43:33 +01:00
Peter Seebach
385a5e8105 cross-canadian.bbclass: big-endian ARM is also gnueabi.
If building for a BE8 ARM target, arch is "armeb" rather than
"arm", but ABI should still be "gnueabi". Otherwise gcc won't
build.

(From OE-Core rev: d2e1cf176b2a705f3e4bd4ab7c35bb1de5dc6985)

Signed-off-by: Peter Seebach <peter.seebach@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-10-01 07:43:33 +01:00
Richard Purdie
434665d933 populate_sdk_base: Simplify postprocess commands
When looking at and trying to build a slightly customised SDK, I
realised the code could be simplified and written in a way which was
more customisable.

This patch moves various function calls into the SDK_POSTPROCESS_COMMAND
which was intended for this kind of use.

(From OE-Core rev: baa4e43a29e45df17eaa3456acc179b08d571db6)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-10-01 07:43:32 +01:00
Lucian Musat
994915b0af oeqa/testimage: Remove absolute path to oeqa from json
In the json file the whole datastore is serialized which contains
absolute path to the oeqa folder. This breaks the functionality
when trying to run the tests from other machines.

(From OE-Core rev: 94057ccc70aa3fe29d774f571a65f56fd1285d4c)

Signed-off-by: Lucian Musat <george.l.musat@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-28 12:00:30 +01:00
Alexander Kanavin
ea031f05a5 distrodata: handle recipes with empty or absent SRC_URI in checkpkg()
(From OE-Core rev: ea7cd81d6d1d4d00553cd475623af0d24f5ea84f)

Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-28 12:00:25 +01:00
Ross Burton
5fd30897f5 sstate: run recipe-provided hooks outside of ${B}
To avoid races between the sstate tasks/hooks using ${B} as the cwd, and other
tasks such as cmake_do_configure which deletes and re-creates ${B}, ensure that
all sstate hooks are run in the right directory, and run the prefunc/postfunc in WORKDIR.

(From OE-Core rev: 1d3bde02641f4b40030cf7e305ee3d7c2faabe29)

(From OE-Core rev: a026dbfa0ce4ee769ae2c714f27f4c4eaa4a0c73)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-28 12:00:22 +01:00
Patrick Ohly
5f371e5a0b image types: add hdddirect
When image-vm.bbclass was introduced, it indirectly also introduced a
".hdddirect" image type based on boot-directdisk.bbclass. However, one
could only get that image when also enabling at least one of the
virtual machine images.

The .hdddirect images are useful by themselves. By registering
image-vm.bbclass as implementation of it, it becomes possible to
select them with:
  IMAGE_FSTYPES = "hdddirect"

(From OE-Core rev: e3ff509091cbbfdef851f8a3c9e31c7b76d37e89)

Signed-off-by: Patrick Ohly <patrick.ohly@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-28 12:00:21 +01:00
Alex Franco
c5aab3f63e sanity.bbclass: show warning when chmod fails
* for some reason this part of:
  http://patchwork.openembedded.org/patch/102561/
  wasn't ever merged.

[YOCTO #7669]

(From OE-Core rev: 95daa7c26d119ae11f1835ce0e895bbd4a3e9605)

Signed-off-by: Alex Franco <alejandro.franco@linux.intel.com>
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-28 12:00:20 +01:00
Richard Purdie
5d4f39f258 mulitlib: Ensure SDKTARGETSYSROOT is set correctly
When building something like lib32-core-image-minimal -c populate_sdk, we
expect one sysroot with both multilibs installed. We therefore
need a single SDKTARGETSYSROOT value which doesn't change when multilibs
are enabled.

This makes the image generation code match what the meta-environment
files set the SDK up to use.

(From OE-Core rev: a6ade4d24e8153920311db9a9033a7f5c430d1e4)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-28 12:00:17 +01:00
Ross Burton
c356961f15 gtk-icon-cache/pixbufcache: don't set GDK_PIXBUF_MODULEDIR
In normal use gdk-pixbuf knows where to find its own loaders and explicitly
stating this will cause work in the future if the ABI version changes.

(From OE-Core rev: 87eea290a799be0e852d8b3c357879680abedb77)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-28 12:00:17 +01:00
Ross Burton
8a12632e97 gdk-pixbuf: move gdk-pixbuf-query-loaders to $libdir for multilib safety
If for example gdk-pixbuf and lib32-gdk-pixbuf are in an image then only one
${bindir}/gdk-pixbuf-query-loaders will be installed, so only one variant will
actually be usable.

Solve this by moving gdk-pixbuf-query-loaders into ${libdir} as it's intimately
tied to the library and rarely directly invoked by the user, and update the
callers to use the right path.

(From OE-Core rev: 69df75f268e2b3d5874f05e2b5a6125f6d990a03)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-28 12:00:16 +01:00
Richard Purdie
7fb583aa95 multilib: Drop populate_sdk variable manipulation
I believe this code dates from previous times when we didn't extend
the TOOLCHAIN_TARGET* variables to cover all multilibs. We now do
this so this code acutally breaks things by removing the non-multilib
variants.

By changing this, a multilib SDK now contains both sets of base libraries
which matches the tools we ship with it. If the user wishes to customise,
this also becomes easier.

(From OE-Core rev: 568b81b5102213643e382d31a4e5e56f90ee6ff9)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-28 12:00:15 +01:00
Richard Purdie
99fc78653a archiver: stamp-base is dead, remove it
stamp-base was only ever used by the shared workdir code in gcc. This
turned out to be problematic and has been replaced by other approaches
which don't need specialist bitbake knowledge.

stamp-base will likely get removed from bitbake but for now, remove it
from archiver to simplfy the code since gcc no longer uses it.

This stops people getting confused by the obsolete code paths which I'm
getting a lot of questions about.

(From OE-Core rev: 4b9f70f03cbefe9db758500e3ad89f7a8ff8226e)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-24 17:54:31 +01:00
Robert Yang
dd26efba06 insane.bbclass: make package_qa_clean_path return a relative path
Make package_qa_clean_path() return something like "work/path/to/file"
rather than "/work/path/to/file", the relative path is a little clear.

(From OE-Core rev: 67a1e4b087a39db04370685616d5b439b0f2b505)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-24 17:54:26 +01:00
Paul Eggleton
8fb70c6e7a classes/externalsrc: fix setting of deps varflag as a string
The value of the deps varflag for tasks is (unusually) expected to be a
list object rather than a space-separated string, hence we cannot use
appendVarFlag() here. This fixes a traceback when parsing the gcc recipe
with externalsrc enabled, for example.

(From OE-Core rev: 47c1ff11a9b8b1e9f40ffb2b3d387252200cf0ec)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-23 09:53:13 +01:00
Paul Eggleton
586291fe2b classes/externalsrc: scale back warning to a plain note
It turns out that there are folks out there who use externalsrc in
normal builds and don't really need to be warned; additionally within
the extensible SDK or when using devtool, it shouldn't be a warning
situation. Thus, scale it back to a note (we can't use bb.note() here
since that wouldn't actually be piped through to the bitbake UI). Also
touch up the message a little bit.

(From OE-Core rev: 87bedd137a77c5ac0033a1de4587c40dbe93e81d)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-23 09:53:13 +01:00
Paul Eggleton
0dc9299774 classes/populate_sdk_ext: drop work-config.inc
This is not actually used for anything - I thought that we would need to
use it within devtool to set global configuration, but we're able to do
everything we need within the bbappends it creates, which also saves on
parse time. If we're not going to use work-config.inc let's just drop it
completely.

(From OE-Core rev: 84a1f82acd3b6ebb3c073aae6b996d2203dad2ce)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-23 09:53:12 +01:00
Paul Eggleton
3a08728671 classes/populate_sdk_ext: allow custom configuration for extensible SDK
Provide the ability to define a function containing extra configuration
values to be added to the local.conf file that goes into the SDK. For
example, this could be used to set up SSTATE_MIRRORS within the SDK.

(From OE-Core rev: ef7001232ac2da8ee63ec568d1abba13e4fd4382)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-23 09:53:11 +01:00
Paul Eggleton
b853dded41 classes/populate_sdk_ext: fix missing environment settings if running installer with sh
If you ran the extensible SDK installer file with sh (instead of bash),
then the additional call to buildtools environment setup, extension of
PATH to support running devtool, and setting of OE_SKIP_SDK_CHECK
weren't being added to the end of the script. This is because apparently
bash is happy to expand wildcards in the target of a redirection, but
bash running in POSIX sh mode won't (although it apparently does work on
the sh command line rather than within a script run as an argument to
sh). In any case using a wildcard here is a bit of a crutch which we
don't need, so replace it with the proper path to the environment setup
script.

(From OE-Core rev: ba0f6b6ec32275329ebbb7c27f661c027b7a921d)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-23 09:53:11 +01:00
Mike Looijmans
9241ec5793 image_types.bbclass: Don't try to create ubi symlink twice
Fixes b6e64de541b37 "Restore compatibility with previous UBI filesystems"

The multivolume UBI code creates symlinks for each volume. If the volume name
is empty, it will create a symlink that the rootfs code will attempt to
create again later, resulting in a crash like this (unless IMAGE_LINK_NAME
is blank):
  ERROR: Error executing a python function in .../recipes-core/images/my-image.bb:
  File: '.../oe-core/meta/lib/oe/image.py', lineno: 203, function: _create_symlinks
   *** 0203:                    os.symlink(src, dst)
  Exception: OSError: [Errno 17] File exists

To prevent this from happening, only create symlinks to volumes that have
a name, and let the rootfs script create the default symlink later.

(From OE-Core rev: fce257892488b9ef537526ccf412e9deda37c439)

Signed-off-by: Mike Looijmans <mike.looijmans@topic.nl>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-23 09:53:10 +01:00
Marek Vasut
8efff24775 kernel-arch: Add nios2 to valid archs
Add nios2 target to valid arch list definition.

Based on previous work by Walter Goossens <waltergoossens@home.nl>
at https://github.com/wgoossens/meta-nios2 .

(From OE-Core rev: f0af7d0d9316a6eeacc0686b8c4640491f255883)

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Walter Goossens <waltergoossens@home.nl>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-23 09:53:07 +01:00
Marek Vasut
76a8c74c13 insane: Add nios2 support
Add support information for the Altera NIOS-II soft processor.

Based on previous work by Walter Goossens <waltergoossens@home.nl>
at https://github.com/wgoossens/meta-nios2 .

(From OE-Core rev: 4e8175cf0f0a5b9e75e451b030b73643e7b33791)

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Walter Goossens <waltergoossens@home.nl>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-23 09:53:06 +01:00
Christopher Larson
6adffd09e5 autotools: fix traversal bug in aclocal copying
The logic is supposed to avoid following dependencies when we depend on
a target recipe which depends on a native recipe. The problem is, we were
marking the dep (the native recipe) as already processed when we avoided
traversal, meaning that even when that recipe would be pulled in via
a different dependency, we skipped it there too, and whether it was skipped
entirely depended on the non-deterministic dep processing order. If the first
one to be encountered was via the indirect target dep, it wouldn't end up in
configuredeps, otherwise it would.

As we want to avoid traversing that particular dependency relationship, not
*every* dependency on the native, we should continue, but not add it to done,
so it can be traversed from other avenues.

This fixes an intermittent bug in some of my non-GPLv3 builds, where one
dependency upon gettext-minimal-native was skipped, but others should not have
been, resulting in it being removed from configuredeps entirely, and no
gettext macros being available.

Cc: Richard Purdie <richard.purdie@linuxfoundation.org>
(From OE-Core rev: e6d4f8198a8708f54fc17333ae643b51ed9100b6)

Signed-off-by: Christopher Larson <chris_larson@mentor.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-23 09:53:06 +01:00
Mariano Lopez
c8a7d76d36 testimage.bbclass: Fix break introduced with SIGTERM handling
The SIGTERM introduced another break into runexported test,
the handler is in the class TestContext while exporting it
will try to convert the singnal handler to JSON, and this
will throw an exception.

The SIGTERM handler is not needed in the exported test, so this
change will remove the handler before exporting the test. Also
when a test is exported the target is not deployed/started
anymore, it is not necessary.

[YOCTO #8239]

(From OE-Core rev: 94ab9892e87f159840432fdbfb3873d4496d4786)

Signed-off-by: Mariano Lopez <mariano.lopez@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-23 09:53:03 +01:00
Martin Jansa
a96069d410 insane.bbclass: drop extra line-feed in pkgname check
* it was causing QA checck name to be shown on separate line like this:
  sblim-sfcCommon-1.0.1: sblim-sfcCommon-dev doesn't match the [a-z0-9.+-]+ regex
   [pkgname]

(From OE-Core rev: 8df8b942fa570de42910dcd8a1416063cbe1ddbe)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-23 09:53:00 +01:00
Martin Jansa
10fb575d61 insane.bbclass: show PN and relative path in package_qa_check_host_user
* show PN as other QA checks
* strip PKGDEST prefix from shown path as other QA checks

(From OE-Core rev: 39b1bca459d52b58ca055604b5012d9a411e3a59)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-23 09:52:59 +01:00
Martin Jansa
5624889982 package.bbclass: add summary line to installed-vs-shipped QA check
* there is PN at the beginning, then possibly long list of files and
  at the end we don't see which recipe has this issue, add another
  line which says which PN and how many files

(From OE-Core rev: 32412ac530bcf286980a6f9c7367df4944dd603a)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-23 09:52:59 +01:00
Randy Witt
a66f586729 testimage.bbclass: Don't require an image manifest
Sometimes an "image" may not actually have a manifest file such as when
using a "baremetal kernel". This change allows for  a user to set a
IMAGE_NO_MANIFEST flag to 1 in order to inform the code that there is no
corresponding manifest that should exist for an image.

(From OE-Core rev: 78f5c3cb3971c31a950deb5cab8992f3ba577440)

Signed-off-by: Randy Witt <randy.e.witt@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-23 09:52:53 +01:00
Robert Yang
96795000ea autotools.bbclass: mkdir ${B} -> mkdir -p ${B}
${B} is the default cwd of tasks, so there might be race issues such as:
| mkdir: cannot create directory `${B}': File exists
[snip]
NOTE: recipe perf-1.0-r9: task do_configure: Failed

(From OE-Core rev: 72682d72b52355c3fed947167ca3c6064340ead1)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-18 09:05:31 +01:00
Christopher Larson
6c05e6a71a image.bbclass: add do_rootfs vardeps for {COMPRESS, IMAGE}_CMD_*
We want do_rootfs to rerun if the fstype or compression commands or
dependencies change for any of our configured fstypes (IMAGE_FSTYPES).
IMAGE_TYPEDEP isn't explicitly handled, as it's traversed already, so the end
result will change if it does, and we only really care about the results, not
how we got there. This uses oe.image.Image()._get_image_types() to get the
info about the image and compression types in use.

(From OE-Core rev: a3473d1ee30f8ec688d57dddb6e3c2b887194384)

Signed-off-by: Christopher Larson <chris_larson@mentor.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-18 09:05:26 +01:00
Alejandro Hernandez
7eabed3039 distutils.bbclass: Handle python-backport modules
When installing backport modules they stumble upon each other, complaining with
the following error:

ERROR: The recipe python-backports-ssl is trying to install files into a shared
area when those files already exist.

This is the correct behavior since thats just the way they were designed, all backport
modules provide an __init__.py file (the same among all packages), and without it they
simply wouldnt work.

distutils handles FILES_${PN}* variables for python packages, but it uses wildcards
to include the required files, hence removing the __init__.py files from each backport
package during build time is impossible since it doenst actually contain that value,
this patch simply removes the __init__.py* files from the staging area if they already
exist on sysroot, this way, these are not included in FILES_${PN} anymore, fixing the
issue mentioned above.

[YOCTO #8207]

(From OE-Core rev: e607a89267949b3d5e199b139f752db6000eac25)

Signed-off-by: Alejandro Hernandez <alejandro.hernandez@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-14 20:46:38 +01:00
Mike Looijmans
62fca975cf image_types.bbclass: Restore compatibility with previous UBI filesystems
Support for multiple ubi images has broken dozens of machine deployment scripts
in two ways:
Previously, ubi filesystems would be named $IMAGE_NAME as one would expect. The
current version would append "_rootfs" to that name for no reason. Fix it so that
the name for ubi images remains unchanged if there is only one image to build.
Machines would append to IMAGE_CMD_ubi, adding extra image processing of their
own. This is broken now that IMAGE_CMD_ubi became a variable instead of a function.
Make IMAGE_CMD_ubi a function again, this also makes for more logical quotes (I
was surprised to find that " within " would even work).

(From OE-Core rev: b6e64de541b37bc5c558c4ad362a0467291a5609)

Signed-off-by: Mike Looijmans <mike.looijmans@topic.nl>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-14 20:46:36 +01:00
Richard Purdie
58ef81c5cc testimage: Handle core-image-lsb-sdk qemumips test restriction
On qemumips, some tests are slow to the point of the autobuilder appearing
hung. We therefore specifically exclude buildsudoku but to do this, we need
to list the tests we expect to work on core-image-lsb-sdk.

(From OE-Core rev: cf03765705c6cd26c1a904b62b9aca8f914f44aa)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-12 22:48:48 +01:00
Richard Purdie
7c2ff62cb4 populate_sdk_base: Fix aarch64 OLDEST_KERNEL sdk issues
aarch64 sets OLDEST_KERNEL to 3.14. This stops the aarch64 SDK installing on
anything with an older kernel which is clearly incorrect.

I attempted to extract the correct non-overridden version from the data store
but it proved problematic and I was running into data store issues. Those
are a separate problem but there isn't time to fix this right now.

Instead just code the SDK kernel version separately to work around this for
now (and fix the autobuilder tests and SDK usage).

(From OE-Core rev: 522ba4c51fff53566678b2689d0d63c393e417b3)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-12 22:48:47 +01:00
Richard Purdie
6a71f66173 testimage: Fix SDK extraction error handling
Currently if the SDK fails to extract, no error is shown and the test is marked
as passed! Clearly this is incorrect, fix it to correctly raise an error.

(From OE-Core rev: fb2235a21e45fa1a47c3b7a9a6a72c515ef10dd1)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-12 22:48:47 +01:00
Ross Burton
9cda8f782f Revert "ptest: use fakeroot for do_install_ptest_base"
This reverts commit 56c5fa106eeccda2ca92dbeb73ff01ba40992e7d.

(This fix was incorrect and there is a better fix due to be merged)

(From OE-Core rev: 21e044d92e927639a574c43cf7778e31f2e66377)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-12 22:48:46 +01:00
Paul Eggleton
3a9e230b7a classes/sstate: break out function to get sstate manifest filename
It is useful in a few different contexts to see which files have been
written out by an sstate task; break out a function that lets us get the
path to the manifest file easily.

(From OE-Core rev: 090196dd2d8f4306b34b239e78c39d37cc86034c)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-12 22:48:45 +01:00
Ross Burton
48a144b4a4 sstate: only fetch remote signatures if verification is enabled
Only fetch remote signatures if verification has been enabled, as otherwise the
fetcher throws errors that sstate.bbclass can't ignore.

[ YOCTO #8265 ]

(From OE-Core rev: aa8ba5c4af2636dbc2d0c1ad9c230e8aa26d9962)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-12 22:48:35 +01:00
Patrick Ohly
f7056fafd2 Revert "boot-directdisk.bbclass: use rootfs UUID by default"
This reverts commit 8ca8e2e5bf4a9f01dc48300149a8e1d71d715400.

Further testing showed the kernel does not support root=UUID; it is
something typically handled by the initramfs.

Because boot-directdisk.bbclass cannot know whether it is using a
suitable initramfs, root=UUID cannot be the default. Instead, it will
have to be set in image recipes on a case-by-case basis.

(From OE-Core rev: 8478024bd25651aa866d4582dcc193d51553554a)

Signed-off-by: Patrick Ohly <patrick.ohly@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-12 22:48:35 +01:00
Ross Burton
a2ec6d4720 ptest: fix file ownerships in ${PTEST_PATH}
As most upstreams don't have installable test suites it's fairly common to copy
files directly out of a source tree for ptests, but this results in files in the
recipe being owned by the user running bitbake:

  WARNING: QA Issue: .../sed/4.2.2-r0/packages-split/sed-ptest/usr/lib64/
  sed/ptest/testsuite/bug-regex21 is owned by uid 1000, which is the same
  as the user running bitbake. This may be due to host contamination
  [host-user-contaminated]

Instead of needing to fix this in every recipe that has this problem simply
chown the files to root:root in do_install_ptest_base.

(From OE-Core rev: 552daf60c58784c8f1acc12c5a443a44a922f743)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-12 22:48:34 +01:00
Roy Li
d0abea0133 packagegroup-core-nfs: provide the nfs-client IMAGE_FEATURES
provide the nfs-client IMAGE_FEATURES, to ease a user to only
install nfs client related files to image

(From OE-Core rev: bbdc808a8ea76369a36473c906991e25ca49c323)

Signed-off-by: Roy Li <rongqing.li@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-12 22:48:32 +01:00
Markus Lehtonen
9a24b6b123 externalsrc.bbclass: better filtering of cleandirs
We really do not want our (external) source tree to be removed. There
might be multiple values in the 'cleandirs' varflag pointing to our
source tree - causing it to be wiped out. This patch improves the
filtering of 'cleandirs' by examining the expanded values inside it. Any
(expanded) values pointing to our source tree get removed.

(From OE-Core rev: eec871fe405e140a1919999fe2f4cf24f1839e5d)

Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-12 22:48:31 +01:00
Christopher Larson
32633f0844 sanity.bbclass: remove abspath warning for SSTATE_MIRRORS
The sstate URI is relative to begin with, so it's completely valid to want to
alter it in a way that keeps it relative using a mirror, and I have real world
cases where this is causing issues. Remove the warning.

(From OE-Core rev: 6d20514b1289212991b4945ad267f85960dc945c)

Signed-off-by: Christopher Larson <chris_larson@mentor.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-12 22:48:25 +01:00
Ross Burton
dae69e6dcf ptest: use fakeroot for do_install_ptest_base
The do_install_ptest_base task wasn't running in the fakeroot environment so
files installed by do_install_ptest were often not owned by root:root but the
user running the builds.

(From OE-Core rev: 56c5fa106eeccda2ca92dbeb73ff01ba40992e7d)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-09 14:27:55 +01:00
Markus Lehtonen
baf39c800a kernel.bbclass: do not mv/link sources when externalsrc enabled
If externalsrc is enabled the 'do_unpack' task is run if the recipe has
some local source files. In the case of kernel recipe this caused the
(externalsrc) source tree to be moved/symlinked. This patch prevents the
behaviour, making sure the source tree is not moved around when
externalsrc is enabled. Instead of moving the source tree,
STAGING_KERNEL_DIR will be a symlink to it.

[YOCTO #6658]

(From OE-Core rev: 8f6c564661a3801012eb2d9a98cdc99c91712367)

Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-09 14:27:49 +01:00
Markus Lehtonen
0ec0b17f4b kernel-yocto.bbclass: do_kernel_metadata depends on do_unpack
Make sure that 'do_unpack' is executed before 'do_kernel_metadata'.
Enabling externalsrc for kernel disables 'do_validate_branches' task
which caused 'do_kernel_metadata' to fail as the dependency chain to
'do_unpack' got broken.

[YOCTO #6658]

(From OE-Core rev: 8939ea428f642fd6fa48807ded1f9040f09ed375)

Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-09 14:27:49 +01:00
Markus Lehtonen
07ac146c90 extrernalsrc.bbclass: treat kernel meta like local source
Kernel metadata repository needs to be fetched/unpacked into the work
directory in order to build the kernel. Sources pointing to a remote
location are skipped by externalsrc by default which caused kernel build
to fail (because of remote kernel-meta was not made availeble). This
patch will make kernel-meta always available.

[YOCTO #6658]

(From OE-Core rev: b746280c955f48835d119f3fe637876faae6df97)

Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-09 14:27:49 +01:00
Qi.Chen@windriver.com
ee428e27fe devtool: add mechanism for updating extensible SDK
Enable updating the installed extensible SDK from a local or remote
server, avoiding the need to install it again from scratch when
updating. (This assumes that the updated SDK has been built and then
published somewhere using the oe-publish-sdk script beforehand.)

This plugin is only enabled when devtool is used within the extensible
SDK since it doesn't make sense to use it next to a normal install of
the build system.

E.g.
devtool sdk-update /mnt/sdk-repo/
devtool sdk-update http://mysdkhost/sdk

(From OE-Core rev: 32cbd4c57fc8ca097a18929fc404c07322ef36dd)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-09 14:27:43 +01:00
Qi.Chen@windriver.com
ad959638c0 Extensible SDK: allow for installation without preparing build system
When publishing SDK, what we want is basically its metadata and sstate
cache objects. We don't want the SDK to be prepared with running bitbake
as it takes time which reproduces meaningless output for the published SDK.

So this patch adds an option to allow for SDK to be extracted without
preparing the build system.

(From OE-Core rev: 7511862faad1c28804e2410ff42747c8706c5207)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-09 14:27:43 +01:00
Qi.Chen@windriver.com
9f670d18ba populate_sdk_ext: don't remove the native qemu dependencies
These dependencies were deliberately removed because it was assumed that
they were provided by nativesdk packages. On the one hand, nativesdk packages
in extensible SDK don't have these packages; on the other hand, even if we
add these nativesdk packages, they are still not useful because we we need
runqemu to run correctly.

So we don't remove these native qemu dependencies.

(From OE-Core rev: 526537404d5a07189d4c6859f4a572d2107dbfd8)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-09 14:27:42 +01:00
Qi.Chen@windriver.com
164136d310 populate_sdk_ext: consider custom configuration in local.conf
Copy the contents of local.conf under TOPDIR into the final generated
local.conf. In this way, custom settings are also made into the final
local.conf like IMAGE_INSTALL, DISTRO_FEATURES, VIRTUAL-RUNTIME_xxx,
etc. Comments and blank lines are filtered out.

Before this change, installing extensible SDK would usually report failure
when preparing the build system if the user has custom configuration for
DISTRO_FEATURES in local.conf. Also, items in IMAGE_INSTALL_append in
local.conf also don't get built correctly.

This patch solves the above problem by making use of bb.utils.edit_metadata.

In addition, we check to avoid any setting that might lead to host paths
bleeding into the SDK's configuration. Basically, variables with values
starting with '/' are removed. A whitelist mechanism is introduced so that
users could specify variables that should not be ignored. The name of the
whitelist is SDK_LOCAL_CONF_WHITELIST.

The SDK_META_CONF_WHITELIST is removed as it's of no use after this
change.

SDK_LOCAL_CONF_BLACKLIST can be used to prevent copying specific
variable settings to the extensible SDK's local.conf; the default is to
exclude PRSERV_HOST (since this is likely to be internal). Similarly,
SDK_INHERIT_BLACKLIST to forbit local.conf in SDK to inherit certain
classes such as 'buildhistory' or 'icecc' that would not normally make
sense in an SDK environment.

[YOCTO #7616]

(From OE-Core rev: 0dda443bfa5c42f327d8d0ed7b23af11c156a60e)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-09 14:27:42 +01:00
Qi.Chen@windriver.com
479deeb3f1 populate_sdk_ext: install the latest buildtools-tarball
If we do `bitbake buildtools-tarball' and then after one day do `bitbake
core-image-minimal -c populate_sdk_ext', we would meet errors like below.

| install: cannot stat '/buildarea2/chenqi/poky/build-systemd/tmp/deploy/sdk/
poky-glibc-x86_64-buildtools-tarball-core2-64-buildtools-nativesdk-standalone
-1.8+snapshot-20150429.sh': No such file or directory

The problem is that the output name for buildtools-tarball has ${DATE} in it.
So if populate_sdk_ext task is executed but buildtools-tarball is not rebuilt,
the above error appears.

Instead of hardcoding ${DISTRO_VERSION} which consists of ${DATE} in the
install_tools() function, we should find the latest buildtools-tarball based
on the modification time and install it.

[YOCTO #7674]

(From OE-Core rev: fa708504d71e0b01ee97a172ac17ad16a9e3b897)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-09 14:27:41 +01:00
Paul Eggleton
16d0df58d1 classes/populate_sdk_ext: avoid poky-specific buildtools naming
Only poky sets SDK_NAME to include ${IMAGE_BASENAME} (i.e. ${PN}), so we
can't assume the buildtools filename will include it here. Change it to
look for a file with "buildtools-nativesdk-standalone" in the name
(the buildtools-tarball recipe itself sets TOOLCHAIN_OUTPUTNAME to
include this.)

(From OE-Core rev: 78ea4fcdea468888c0faef22a95dea7015a91df2)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-09 14:27:41 +01:00
Brendan Le Foll
08d07355c5 toolchain-shar-extract.sh: better default install path for extensible SDK
Extensible SDK cannot be installed as root so by default offer to install it in
user's home directory under distro/distro_version replacing the normal SDK
version '+' char with a '_' as that's a restricted character for bitbake

(From OE-Core rev: 5486e76cd8abb946b81cff78719d67cfb87cddc6)

Signed-off-by: Brendan Le Foll <brendan.le.foll@intel.com>
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-09 14:27:40 +01:00
Mariano Lopez
6b41b7cc32 testimage: handle SIGTERM to conclude runqemu
In the current state if a SIGTERM is sent to
the testimage worker, the worker will exit but
runqemu and qemu won't exit and the processes
need to be killed manually to free the
bitbake lock.

This allows to catch the SIGTERM signal in
testimage, this way it is possible to stop
runqemu and qemu and allow to free the bitbake lock.

Also this allows to skip the rest of the tests
when running the tests in qemu or real hardware.

This also solves minimal breaks in the setup of the
runtime test when checking if qemu is alive.

[YOCTO #8239]

(From OE-Core rev: 2694d2f17d597b44fcc7aed5f6836081fa88a6b3)

Signed-off-by: Benjamin Esquivel <benjamin.esquivel@linux.intel.com>
Signed-off-by: Mariano Lopez <mariano.lopez@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-09 14:27:39 +01:00
Ross Burton
e3feac122b sstate: implement basic signing/validation
To provide some element of integrity to sstate archives, allow sstate archives
to be GPG signed with a specified key (detached signature to a sidecar .sig
file), and verify the signatures when sstate archives are unpacked.

(From OE-Core rev: 237b6c51b42b0c64434dc45685e10f757ac939c2)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-06 15:26:27 +01:00
Mario Domenech Goulart
afcd243d74 cross-canadian.bbclass: typo fix in comments (s/repsonsible/responsible/)
(From OE-Core rev: 95c183d8afa7924a7995363ef2b8b39e14a87ed0)

Signed-off-by: Mario Domenech Goulart <mario@ossystems.com.br>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-06 15:26:26 +01:00
Patrick Ohly
3b823fe744 boot-directdisk.bbclass: use rootfs UUID by default
This changes the default SYSLINUX_ROOTFS such that the rootfs is no
longer expected under a fixed device path. Instead, the UUID is used
to find it. This makes the resulting .hdddirect (and thus also the
vdi/vdmk/qcow2 images derived from that) more flexible.

(From OE-Core rev: 8ca8e2e5bf4a9f01dc48300149a8e1d71d715400)

Signed-off-by: Patrick Ohly <patrick.ohly@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-06 15:26:26 +01:00
Patrick Ohly
6d7bcd4df5 boot loader: support root=UUID
As mentioned when introducing the VM images
(https://bugzilla.yoctoproject.org/show_bug.cgi?id=7374), the
resulting images only work when the image is mounted as a disk that
results in the hard-coded path (/dev/sda in the current
default). Using the file system UUID to find the rootfs is more
flexible.

To enable this for boot-direct.bbclass and thus image-vm.bbclass (aka
FSTYPEs vdi/vmdk/qcow2), set SYSLINUX_ROOT =
"root=UUID=<<uuid-of-rootfs>>". The rootfs image must use an ext file
system.

The special string will get replaced in the APPEND line with the
actual UUID when the boot loader (grub-efi, syslinux or gummiboot)
writes the boot loader configuration files. At that time, the rootfs
image has already been created and its UUID can be extracted using
"tune2fs -l", which also should be available because the
e2fsprogs-native tools were needed to create the image in the first
place.

(From OE-Core rev: 1e29d77d0d33ee216b43022439876863f0db39bb)

Signed-off-by: Patrick Ohly <patrick.ohly@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-06 15:26:25 +01:00
Patrick Ohly
5d79814b0b image-vm.bbclass: support specifying an initramfs
Set INITRD_IMAGE to automatically add a custom initramfs to the boot
partition.

(From OE-Core rev: 7fa76bd923fd643cf0984077321d6064d8ec3a2b)

Signed-off-by: Patrick Ohly <patrick.ohly@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-06 15:26:25 +01:00
Patrick Ohly
95bfdce73d image-vm.bbclass: avoid duplicating syslinux default values
Some of the SYSLINUX defaults are the same as in the underlying
syslinux.bbclass. Let's not duplicate them, because that makes
changing the default harder.

(From OE-Core rev: 7418709450e428010545dc9943802dd64c9582e1)

Signed-off-by: Patrick Ohly <patrick.ohly@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-06 15:26:25 +01:00
Martin Jansa
924348d54b report-error: send only last 5242000 characters in error logs
* otherwise whole build report submission is rejected because it's too big

(From OE-Core rev: 3544b4d4d72330eb12bb3cda25cb99ed52c8a2eb)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-06 15:26:22 +01:00
zjh
fac0d67ec2 testimage: filter proper test cases by tags
If a test case is decorate by oeqa.utils.decorators.tag, this case will
by add a tag, testrunner will filter these tags by TEST_SUITES_TAGS
[YOCTO #7849]

(From OE-Core rev: 085589b1018ba4d950baf7bcfb499be02c1b29fc)

Signed-off-by: zjh <junhuix.zhang@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-04 16:23:52 +01:00
Christopher Larson
635d38594c image.bbclass: add rootfs_check_host_user_contaminated
This function is intended to be used in ROOTFS_POSTPROCESS_COMMAND, and checks
for any paths outside of /home which are owned by the user running bitbake.

(From OE-Core rev: 72903f7534cccad35886f2cad8aac98a59392ec7)

Signed-off-by: Christopher Larson <chris_larson@mentor.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-04 16:23:48 +01:00
Christopher Larson
2d4976772c insane.bbclass: add host-user-contaminated test
- Add a test which checks for any paths outside of /home which are owned by
  the user running bitbake.
- Add the test to WARN_QA by default.

This test has been in meta-mentor for some time, and in our ERROR_QA for our
builds, and has caught a number of issues for us.

(From OE-Core rev: 1854dc60a4c7e97f0d6d26208fd42bf0dc1bfa7f)

Signed-off-by: Christopher Larson <chris_larson@mentor.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-04 16:23:47 +01:00
Christopher Larson
b95c340443 insane.bbclass: handle tests which need fakeroot
If any tests listed in FAKEROOT_QA are enabled (listed in ALL_QA), then
run do_package_qa under fakeroot.

(From OE-Core rev: 1b697a5e92be01725ad20298f54c277c852c974d)

Signed-off-by: Christopher Larson <chris_larson@mentor.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-04 16:23:47 +01:00
Kevin Hao
a346a3cd52 kernel.bbclass: add the runtime dependency on kernel-vmlinux for kernel-image
When a BSP uses vmlinux for boot, the kernel-image package is just
empty. But by default the kernel-vmlinux is not installed. Then the
pkg_postinst_kernel-image() would create a symlink to a non-existent
file. Fix this by adding the runtime dependency on kernel-vmlinux for
kernel-image if the KERNEL_IMAGETYPE is "vmlinux".

(From OE-Core rev: bd8b9bc716774a8f8b4b97ece5c7b2eb58aa2330)

Signed-off-by: Kevin Hao <kexin.hao@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-03 12:43:23 +01:00
Leonardo Sandoval
636d2477b2 insane.bbclass: Check for invalid characters (non UTF8) on recipe metadata
Check if invalid characters are present on recipe's metadata. Fields
taken into account are: 'DESCRIPTION', 'SUMMARY', 'LICENSE' and 'SECTION'.

(From OE-Core rev: f006296c88bacd3ee18559dedf3a1ff313cde8a4)

Signed-off-by: Leonardo Sandoval <leonardo.sandoval.gonzalez@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-03 12:43:22 +01:00
Markus Lehtonen
752736ae9f package_rpm: support signing of rpm packages
This patch adds a new bbclass for generating rpm packages that are
signed with a user defined key. The packages are signed as part of the
"package_write_rpm" task.

In order to enable the feature you need to
1. 'INHERIT += " sign_rpm"' in bitbake config (e.g. local or
   distro)
2. Create a file that contains the passphrase to your gpg secret key
3. 'RPM_GPG_PASSPHRASE_FILE = "<path_to_file>" in bitbake config,
   pointing to the passphrase file created in 2.
4. Define GPG key name to use by either defining
   'RPM_GPG_NAME = "<key_id>" in bitbake config OR by defining
   %_gpg_name <key_id> in your ~/.oerpmmacros file
5. 'RPM_GPG_PUBKEY = "<path_to_pubkey>" in bitbake config pointing to
   the public key (in "armor" format)

The user may optionally define "GPG_BIN" variable in the bitbake
configuration in order to specify a specific gpg binary/wrapper to use.

The sign_rpm.bbclass implements a simple scenario of locally signing the
packages. It could be replaced by a more advanced class that would
utilize a separate signing server for signing the packages, for example.

[YOCTO #8134]

(From OE-Core rev: 75f5f11b19ba1bf8743caf9ee7c99a3c67f4b266)

Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-03 12:43:19 +01:00
Mariano Lopez
a2b0d04235 runexported: Make it compatible with host dump
Currently it is not possible to run a exported test,
but this patch will allow to use the HosDumper class
when running a exported test, otherwise the HostDumper
class will break runexpored test.

[YOCTO #8118]

(From OE-Core rev: 25814dbdd12db0499e4d81876873158e1b8a4fcc)

Signed-off-by: Mariano Lopez <mariano.lopez@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-03 12:43:17 +01:00
Jussi Kukkonen
b9cdd11c99 mirrors.bbclass: Update gnutls mirrors
* Remove mirror sites that no longer exist
* Update the gnutls.org path so the gnupg mirror gets used

(From OE-Core rev: 13012c4621604947895c312ab612a0f8d4993e87)

Signed-off-by: Jussi Kukkonen <jussi.kukkonen@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-01 11:44:00 +01:00
Alex Franco
cd61c1a6c5 Fix mode +st on TMPDIR when creating it
A sanity check fails when TMPDIR has setuid, setgid set. It was
proposed to fix this on TMPDIR creation instead of failing with
a sanity test only. This patch handles removal of those special
bits (and additonally, the sticky bit) from BUILDDIR and TMPDIR
when these directories are created.

[YOCTO #7669]

(From OE-Core rev: 8236d57439640a185c0226312cd4903a3ce2f53b)

Signed-off-by: Alex Franco <alejandro.franco@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-01 11:43:58 +01:00
Ed Bartosh
7770281354 image.py: write bitbake variables to .env file
Write set of bitbake variables used by wic into
build/tmp/sysroots/<machine>/imagedata/<image>.env

List of variables is defined in WICVARS variable in
meta/classes/image_types.bbclass.

This is needed for wic to be able to get bitbake variables without
running 'bitbake -e'.

(From OE-Core rev: 861ce6c5d4836df1a783be3b01d2de56117c9863)

Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-08-30 23:26:24 +01:00
Ed Bartosh
0f84702f08 image_types.bbclass: add wic image type
wic image type is used to produce partitioned images.

Image configuration should be stored in either <recipe>.<machine>.wks
or <recipe>.wks file.
.wks file should be put to the same location as image recipe
and have the same name.

[YOCTO #7672]

(From OE-Core rev: 3658a3278a3752d4aa72cdff4aa8c9f5e1d90f93)

Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-08-30 21:38:23 +01:00
Mariano Lopez
c78ba0d4f0 dump: allow to have datastore vars on dump commands
This allows to have datastore variables in the dump
commands and will get the data when a new instance
it's created.

Also this remove special cases from the commands.

[YOCTO #8118]

(From OE-Core rev: 384927eb8d52bc5f14c63c8421aa62ee859587f0)

Signed-off-by: Mariano Lopez <mariano.lopez@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-08-30 12:36:13 +01:00
Mariano Lopez
85fd1a7a12 dump: Created new classes for dump host and target
It makes sense to separate the dump commands from the
oeRuntimeTest class, this way it can be used in all
the test context.

These are the changes included in this patch:

    - Created classes: BaseDumper, HostDumper, TargetDumper
    - Create an instance of HostDumper in imagetest.bbclass
      and add it to TestContext class, this way any class
      that have access to the TestContext would be able
      to dump logs from the host
    - Create an instance of TargetDumper in QemuTarget
      class after get the runner, this way it is
      accessible during the tests.

[YOCTO #8118]

(From OE-Core rev: ad10af6be343b5425fde43055263b0744c161cb3)

Signed-off-by: Mariano Lopez <mariano.lopez@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-08-30 12:36:12 +01:00
Paul Eggleton
d14ffaf6a3 classes/buildhistory: add build result to commit message
We have the command in the commit message, we might as well have the
build result as well (succeeded/failed and whether or not it was
interrupted by the user). The interrupted part relies upon a change to
BitBake to extend the BuildCompleted event to include an attribute for
that, but will not fail if the attribute is not present.

(From OE-Core rev: 6ca7f5c0d0f024ae5d21368188e3428534cab2a4)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-08-30 12:36:12 +01:00
Paul Eggleton
734411a9e6 classes/buildhistory: include metadata revisions in commit message
We do already commit these into the repository itself, but have them in
the commit message as well as a reference. As part of this, refactor out
running "git commit" into a separate function so we don't have to
duplicate the code in the two places we call it.

Implements [YOCTO #7966].

(From OE-Core rev: c77a068e534b274dee7fb8a2399ecafd33da0587)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-08-30 12:36:12 +01:00
Paul Eggleton
2a08f4a0e5 classes/buildhistory: handle additional files at recipe level
Avoid an error when attempting to remove previous data if it's not a
subdirectory - we were assuming that anything that wasn't named "latest"
or "latest_srcrev" had to be a directory. This makes it possible to have
a buildhistory_emit_pkghistory_append which writes additional files at
the recipe level.

(From OE-Core rev: b018a046a578e41b105cf72b9fdeed0220ae3046)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-08-30 12:36:11 +01:00
Paul Eggleton
846cb34afa classes/buildhistory: fix permissions in package file listing
If we want the correct file permissions to show up here as they would on
the target, we need to run the command under pseudo. Normally we'd set
the fakeroot varflag on the function and that would be enough, but it
turns out that setting fakeroot on a non-task function that you execute
using bb.build.exec_func() isn't working at the moment. Work around this
by simply using FAKEROOTENV and FAKEROOTCMD. Unfortunately that means we
have to duplicate the command for the two cases but I couldn't find a
better means of doing that that actually works.

(From OE-Core rev: 1380aa333ed90559f4a24d52aefc52cadb60646c)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-08-30 12:36:11 +01:00
Paul Eggleton
1bfae0fd81 classes/buildhistory: tweak buildhistory_list_pkg_files
* Avoid using ${...} for shell variables (since they could be
  expanded as bitbake variables if present)
* Use files-in-package.txt rather than files-in-<packagename>.txt; the
  file is already in a subdirectory named with the package name and this
  naming is consistent with that of files-in-image.txt.

(From OE-Core rev: 6f3992728613c39403ef59bbcf1cb67d9e8c526b)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-08-30 12:36:11 +01:00
Paul Eggleton
5d34d3257a classes/buildhistory: indent recently added function consistently
Shell functions use tabs in this file.

(From OE-Core rev: 14eba06baacca25213e35afa7bfd126fc1f5586a)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-08-30 12:36:10 +01:00
Paul Eggleton
ec412d5c76 classes/buildhistory: exclude . in file listings
We don't care about the permissions on the top-level directory in which
the files are contained, just everything under it; this also avoids
lists with just this entry in it for empty packages. Affects file
listings for both images and packages.

(From OE-Core rev: d503122646b1b148113a4be31b7e88723459dae6)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-08-30 12:36:10 +01:00
Paul Eggleton
e6c330c7e5 classes/buildhistory: ensure we push when "no changes" commits are made
If there aren't any changes, we still make a commit to the buildhistory
repo, but this wasn't being pushed if BUILDHISTORY_PUSH_REPO is set.
Move the push to the end to make it unconditional.

(From OE-Core rev: af2fc914975d06fdd75a65d4b00cf9f5c1610528)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-08-30 12:36:09 +01:00
Mariano Lopez
48373be830 testimage: Run commands in target and host when test fails
This patch modify three files altought two of them
are minimal modifications. This version includes
the changes proposed by Paul.

testimage.bbclass:
    Create new vars for easy modification of the dump
directory and commands to be run on host and target
when a test fails
    TESTIMAGE_DUMP_DIR: Directory to save the dumps
    testimage_dump_target: Commands to run on target
    testimage_dump_host: Commands to run on host

oetest.py:
    - Allow to use the vars defined in testimage class
    - Now able to run commands in the host and dump the
      results
    - Fix an issue with the condition where to run the
      dump commands (Before it run the commands every
      test after a failure, now it runs the commands only
      in tests that failed)
    - Fix the output to stdout

[YOCTO #8118]

(From OE-Core rev: 26fe645457633f90bb5ddbb12f5f7b9ca4a06cc5)

(From OE-Core rev: 7b4fbbf979ed22434b8e3f83ae145139bb0d9fc7)

Signed-off-by: Mariano Lopez <mariano.lopez@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-08-30 12:36:07 +01:00
Roy Li
6874f5e72f autotools.bbclass: Allow dependency tracking option to be overridden
CONFIGUREOPT_DEPTRACK can not be overridden since it is set by =

(From OE-Core rev: 758abeb219520ab5556186babcdb7e6660ce6e40)

Signed-off-by: Roy Li <rongqing.li@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-08-30 12:36:06 +01:00
Richard Purdie
66b7dfb73d package_*.bbclass: Ensure OVERRIDES doesn't change sstate signature
Changes to OVERRIDES (e.g. from changing MACHINE) should not change
the sstate signatures of do_package_write_*. Exclude the variable
explicitly in the package classes to avoid this.

(From OE-Core rev: 5826a9260138c437f87ba1a9f84d5c08442b997d)

(From OE-Core rev: 59ccabdfb59a3e0917585dafab7a1e7c71330996)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-08-30 12:36:01 +01:00
Christopher Larson
a753bc70d5 nativesdk.bbclass: set sbindir to bindir
The sbindir vs bindir separation really doesn't mean much in this context, and
toolchain-scripts.bbclass doesn't add sbindir to the PATH, so set the former
to the latter.

(From OE-Core rev: 51a19850700bd96e3d2e104e1626aceb73a48e72)

(From OE-Core rev: 24b80d211f3808a0ffebee426932f11b8d4d46e0)

Signed-off-by: Christopher Larson <chris_larson@mentor.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-08-30 12:35:59 +01:00
Christopher Larson
67ecba4be0 update-rc.d.bbclass: explicitly dep on initscripts
update-rc.d doesn't just want an initscripts package, it wants
initscripts-functions. In the case where VIRTUAL-RUNTIME_initscripts is set to
nothing, update-rc.d still needs initscripts-functions to satisfy its runtime
dependencies. Further, we shouldn't be using a *runtime* virtual in a *build
time* variable. This should resolve image creation failures with
configurations without sysv initscripts when a recipe inherits update-rc.d and
doesn't inherit systemd.

(From OE-Core rev: e6642ae0849e5ac3174c643a7693af25d829d6d1)

(From OE-Core rev: 833302761df924bb503cc2ad04ecae1023381f8f)

Signed-off-by: Christopher Larson <chris_larson@mentor.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-08-30 12:35:58 +01:00
Christopher Larson
b3d8b37428 image.bbclass: re-run do_rootfs when feature packages change
Currently, FEATURE_PACKAGE_<feature> isn't in any vardeps, so changing the
packages for a feature won't change the checksum for do_rootfs. Rather than
explicitly adding those to vardeps, just use the expanded form of
FEATURE_INSTALL and FEATURE_INSTALL_OPTIONAL, so the actual list of packages
from the features goes into the checksum.

(From OE-Core rev: fdd1669e04bd8219344b1896b9d9c6a187e4f84e)

(From OE-Core rev: 9697d13e48633515b80b2ab9bab84ca54ce3ed48)

Signed-off-by: Christopher Larson <chris_larson@mentor.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-08-30 12:35:58 +01:00
Juro Bystricky
ff7a4cabfe cross-canadian.bbclass: support for TCLIBC="baremetal"
Allow "baremetal" builds.

(From OE-Core rev: 0cd3121058ea620c74622f1200c8040696b4d1d8)

(From OE-Core rev: 16a21e088fd3368ecf90a7bfe88630e4543b6000)

Signed-off-by: Juro Bystricky <juro.bystricky@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-08-30 12:35:52 +01:00
Alex Franco
0cd5d6dcbb Empty image: filesystem allocation
Increase sparse image block size when ROOTFS_SIZE is smaller than
the minimum needed for ext4 to fit into it.

[YOCTO #7664]

(From OE-Core rev: 6938791ff97a23430afb4aa16d71aa8729a12ead)

Signed-off-by: Alex Franco <alejandro.franco@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-08-29 13:38:06 +01:00
Alex Franco
9b6bf6a41f Empty image: package list splitting and iteration
A few short fixes to splitting/iteration done over package lists
in license.bbclass, package_manager.py and rootfs.py.

[YOCTO #7664]

(From OE-Core rev: a902e98c5938f52ec960e0518e0ceaf8f5ee610c)

Signed-off-by: Alex Franco <alejandro.franco@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-08-29 13:38:05 +01:00
Sébastien Mennetrier
311c428636 package_rpm.bbclass : escape "%" in files and directories name
The rpm process replace all the "%name" in the spec file by the name of
the package. So, if the package is composed of some files or directories
named "%name...", the rpm package process failed.

Replace all "%" present in files or directories names by "%%%%%%%%" to
correctly escape "%" due to the number of times that % is treated as an
escape character.  Jeff Johnson says this is the Right Thing To Do.

[ YOCTO #5397 ]

(From OE-Core rev: 5ed1c7f556df3fafd45d493010cc0bbe74d05ebd)

Signed-off-by: Sébastien Mennetrier <smennetrier@voxtok.com>
Signed-off-by: Michaël Burtin <mburtin@voxtok.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-08-24 23:47:04 +01:00
Paul Eggleton
d114b561b1 classes/insane: fix QA check message referring to nativesdk
nativesdk has been a prefix rather than a suffix for some time now.

(From OE-Core rev: 940b9d1736dbe63f80b9d46b2b9b1cea77ed35f1)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-08-24 23:47:02 +01:00
Alexander Kanavin
c89a1eb877 classes/cmake: add arch conversion routine
cmake expects target architecture strings in the format of uname(2),
which do not always match TARGET_ARCH (e.g. powerpc vs ppc).

(From OE-Core rev: 7c61d022aa9bbba3c2f8a2df46eeb19e2772c89a)

Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-08-24 23:46:58 +01:00
Alexander Kanavin
429985c1f6 classes/gnomebase: change tarball compression to xz
Upstream, xz has been the only format for some time now, so let's
make it the default and adjust recipes that package old stuff.

(From OE-Core rev: 0f9ea90dde8f63aace19531e066580e41bf3d7cc)

Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-08-24 23:46:58 +01:00
Khem Raj
aced11f4dc kernel-arch: Force BFD kernel when using gcc for linking
We redefine LD to point to ld.bfd when building kernel, which works in
most cases since kbuild system calls out for bare LD most of the time,
however some of newer kernels e.g. 4.1+ have some code added which can
call gcc directly to do the linking job e.g. arm vdso code

This causes build failures when we have configured the default cross
toolchain to use gold linker as default. Errors like

BFD: arch/arm/vdso/vdso.so: Not enough room for program headers, try
linking with -N
| arm-angstrom-linux-gnueabi-objcopy:arch/arm/vdso/vdso.so[.hash]: Bad
value

start happening.

With this patch we force gcc to choose bfd linker as well

(From OE-Core rev: 5724e4d245f142ac6fb1ea211503fd220683354d)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-08-24 23:46:57 +01:00
Ross Burton
9697c583b7 gnome: move introspection options to gnomebase
The gnome class is really a convenience class to include other classes, so move
the introspection arguments into gnomebase.bbclass.

(From OE-Core rev: ad7073194546c16a5612924eb59152b35de6f340)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-08-24 23:46:53 +01:00
Ross Burton
22a653d028 binconfig-disabled: write an message to stderr to help confused developers
Often configure scripts or Makefiles that use the stub scripts written by
binconfig-disabled fail mysteriously with no obvious problem.  Attempt to solve
this by writing an error to stderr which hopefully makes it to the logs.

[ YOCTO #8169 ]

(From OE-Core rev: c38acd720b3f6ffbeb544063692eb471dada8593)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-08-19 18:05:43 +01:00
Leonardo Sandoval
1019d8c802 package_deb.bbclass: Allow UTF-8 characters on control files
Allow UTF-8 characters on control files. Also handle an expection
in case of invalid characters (non UTF-8).

[YOCTO #6693]

(From OE-Core rev: 4096f3c5d309161999adc996fdfa7526e5504366)

Signed-off-by: Leonardo Sandoval <leonardo.sandoval.gonzalez@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-08-19 18:05:38 +01:00
Clemens Lang
76d7e8e9c9 archiver.bbclass: Run deploy_archives in $WORKDIR
In recipes that are exempt from source code archiving due to
COPYLEFT_LICENSE_EXCLUDE, do_deploy_archives does not have a transitive
dependency on do_unpack. Given enough parallelism, this means
do_deploy_archives can run at the same time or before do_unpack.

Because do_deploy_archives did not specify a working directory, its
working directory was ${B}, which defaults to ${S}, which may be set by
a recipe to a directory that is created by do_unpack.

In this case, do_deploy_archives can fail because do_unpack deletes and
re-creates the directory and do_deploy_archives cannot change into the
non-existent directory. Avoid this problem by explicitly specifying
a working directory for do_deploy_archives (and for
do_deploy_all_archives as well for good measure).

(From OE-Core rev: e22685ff11af6d54c939aa8f327a0aaa1557fbbc)

Signed-off-by: Clemens Lang <clemens.lang@bmw-carit.de>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-08-19 18:05:36 +01:00
Patrick Ohly
3aaea35bb5 image_types.bbclass: allow replacing tar command
Usually, the host's tar command is sufficient. However, special cases
like archiving xattrs depend on a modern GNU tar version. The new
IMAGE_CMD_TAR makes that possible, with xattrs given as example.

(From OE-Core rev: d8db122114f4d0600b662f79b3673108b4b6c0b7)

Signed-off-by: Patrick Ohly <patrick.ohly@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-08-19 18:05:33 +01:00
Juro Bystricky
407d156245 IMAGES_FSTYPES: default to EXT4
The following IMAGES_FSTYPES defaulted to ext3:
"vmdk", "vdi", "qcow2", "live", "iso", "hddimg"

This patch changes the default for those IMAGES_FSTYPES to
ext4 in order to bring the images more in line with other BSPs.

Besides improvements in performance and reliability ext4 provides
additional functionality as well (option to turn off the journaling,
dynamic resizing of VDI volumes etc.).

(From OE-Core rev: 2b56d671d2f0ef22786c97e29e1215eb80c94490)

Signed-off-by: Juro Bystricky <juro.bystricky@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-08-16 22:40:51 +01:00
He Zhe
fd3dd25e0c kernel: Correct mishandling of linux.bin for building uImage
Building uImage fails when KEEPUIMAGE is not "yes".
Remove wrong removal of linux.bin before compressing it.

(From OE-Core rev: ed5c6a0c80bac092e98f4d68dbc9cad77701bc7e)

Signed-off-by: He Zhe <zhe.he@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-08-14 08:30:33 +01:00
Aníbal Limón
6a024c2e43 distrodata: Make self-contained.
Include by default all the files needed to perform checkpkg task.

These files are copied from meta-yocto because they refers recipes in
oe-core, the only missing file are maintainers.inc because it needs
consensus between OE-Core and Yocto project to define a common set of
maintainers.

[YOCTO #7895]

(From OE-Core rev: 973f898e15cf6d1b6715d08da9dc740ee040e0dc)

Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-08-14 08:30:32 +01:00
Ross Burton
161180b8f4 Revert "base.bbclass/blacklist.bbclass: remove doc item when d.getVarFlags()"
This deletes and therefore breaks PACKAGECONFIG[doc], so revert.

This reverts commit b741780d43.

(From OE-Core rev: 45cff248f5f9f4fb2498c34963e6652cc1166737)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-08-11 09:28:52 -07:00
Stefan Müller-Klieser
69790b007f cml1.bbclass: make menuconfig task configurable
Menuconfig is sometimes not the most convenient way to configure a
kernel, as the default color scheme can be hard to read. This variable
gives you access to the MENUCONFIG_COLOR variable or lets you select
nconfig, e.g. by setting it in your local.conf:

KCONFIG_CONFIG_COMMAND = "MENUCONFIG_COLOR=mono menuconfig"
or
KCONFIG_CONFIG_COMMAND = "nconfig"

(From OE-Core rev: fd8880aee4f0f8a535616ef312b283f401f64c7c)

Signed-off-by: Stefan Müller-Klieser <s.mueller-klieser@phytec.de>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-08-11 09:28:50 -07:00
Andre McCurdy
61fe46da92 kernel.bbclass: dont assume ${B}/include/generated exists
Older kernels (e.g. 2.6.32) don't create an include/generated directory,
so check that the directory exists before trying to copy files from it
in do_shared_workdir().

(From OE-Core rev: 5bebaf37429c28134aeb6fd261e282e9a0397771)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-08-11 09:28:50 -07:00
Mikko Rapeli
f820d0275f sanity.bbclass: check SSTATE_DIR, DL_DIR and *MIRROR for broken symlinks
This change makes broken symlinks stand out clearly instead of bitbake
failing with odd error messages. Tested locally with broken symlink
as SSTATE_DIR, DL_DIR and SSTATE_MIRROR.

Change-Id: I2e92702237ab3bdb897d0bdefcf33480aabbc288
(From OE-Core rev: f635b9c00aa8a69130e471b9507f263a1ba081ff)

Signed-off-by: Mikko Rapeli <mikko.rapeli@bmw.de>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-08-11 09:28:50 -07:00
Pau Espin Pedrol
3255d0042e systemd.bbclass: Use systemd_system_unitdir
(From OE-Core rev: 0cd61456c0ae912b9fa525db1b3c811e01349d27)

Signed-off-by: Pau Espin Pedrol <pau.espin@aweurope.be>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-08-10 12:40:29 -07:00
Ricardo Neri
661734759e bootimg.bbclass:iso: determine the -iso-level only if there is a rootfs
It may be possible that some bootable images do not use a rootfs; this
may be the case if the bootable image utilize only an initrd for all its
needs.

If there is not rootfs, the size calculation will fail. Furthermore, given
that the iso9660 conformance level is determined using the size of rootfs,
it makes sense to not make the calculation if there is not such rootfs.

(From OE-Core rev: 57064ac9ccd8a3783789d11feb5a51351cd924bf)

Signed-off-by: Ricardo Neri <ricardo.neri-calderon@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-08-10 12:40:29 -07:00
Robert Yang
f292979302 useradd_base.bbclass: do not warn when the user exists
Use bbnote rather than bbwarn when the user exists, otherwise we would
always get the warnings when rebuild the recipe or build with mulitlib,
everything is OK if the user exists, so it should not be a warning.

(From OE-Core rev: c0da4270c76375a7a8cbcc09319fe4570ebbc5bd)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-08-01 22:24:16 +01:00
Robert Yang
fd92142995 useradd_base.bbclass: print PN when bbnote/bbwarn/bbfatal
Print PN will help debug:
WARNING: openssh: user sshd already exists, not re-creating it

Which is better than:
WARNING: user sshd already exists, not re-creating it

(From OE-Core rev: cfde8621d18967dee71042e02b8d6db5661df3da)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-08-01 22:24:16 +01:00
Robert Yang
b741780d43 base.bbclass/blacklist.bbclass: remove doc item when d.getVarFlags()
The FOO[doc] is set in meta/conf/documentation.conf, we need remove it
from d.getVarFlags()'s return dict when it causes many loops.

(From OE-Core rev: 595a7af8d0a52b24e2bdb5c373c64d27b54bb25b)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-08-01 22:24:16 +01:00
Robert Yang
1df8af4248 base.bbclass: move invalid PACKAGECONFIG checking to insane.bbclass
There was a problem when check invalid PACKAGECONFIG in the anonymous
function (when parsing), for example, there are two versions of a
recipe:
foo_1.0.bb
foo_2.0.bb
While foo_2.0.bb has a "PACKAGECONFIG[item] = 'x,y,z'", but foo_1.0.bb
doesn't, if we set PACKAGECONFIG_pn-foo = "item" in a conf file, we
would get the warning about invalid PACKAGECONFIG for foo_1.0.bb. Delay
the checking to build time will fix the problem.

[YOCTO #8065]

(From OE-Core rev: 0a64dfcdb9f5a37771f881895be230392c4d0aff)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-08-01 22:24:15 +01:00
Christopher Larson
5398b9d95f populate_sdk_ext: pass BBPATH to devtool --bbpath
(From OE-Core rev: 6ffb07715a289e2d3f57f4262beb92acb7280ea0)

Signed-off-by: Christopher Larson <chris_larson@mentor.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-08-01 22:24:12 +01:00
Christopher Larson
2251f712fc populate_sdk_ext: use lnr, not ln -sr, for portability
Not all hosts are running sufficiently new coreutils.

(From OE-Core rev: 3a813f277f8daa7686e26edc87f6a88724adde4e)

Signed-off-by: Christopher Larson <chris_larson@mentor.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-08-01 22:24:12 +01:00
Beth Flanagan
5c76072804 base.bbclass: Note when including pn with INCOMPATIBLE_LICENSES
We need to be able to tell people if we WHITELIST a recipe
that contains an incompatible licese.

Example: If we set WHITELIST_GPL-3.0 ?= "foo", foo will end
up on an image even if GPL-3.0 is incompatible. This is the
correct behaviour but there is nothing telling people that it
is even happening.

(From OE-Core rev: c9da529943b2f563b7b0aeb43576c13dd3b6f932)

Signed-off-by: Beth Flanagan <elizabeth.flanagan@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-08-01 22:24:08 +01:00
Aníbal Limón
b850da9224 license_class: Fix choose_lic_set into incompatible license
Use canonical_license when doing evaluation of license expresion since
INCOMPATIBLE_LICENSE are already canonized.

[YOCTO #8080]

(From OE-Core rev: 799b25e09a149303edc1c098935f38a438878a95)

Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-08-01 07:34:08 +01:00
Alexander Kanavin
4d027f03cc distrodata.bbclass: drop the manual upstream version check logic
It's already taken care of in meta/lib/oe/recipeutils.py

(From OE-Core rev: f7d0c03dc3cbfb79d22e1d89e31026a97c5b12ae)

Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-08-01 07:34:08 +01:00
Alexander Kanavin
a1ec19cd97 distrodata.bbclass: do not skip -native recipes in checkpkg task
Some recipes are available only in the -native flavour, and we need to
check their upstream version too from the command line.

(From OE-Core rev: c63d1a544a3021a4eee2171fc710e71dfa7e6b07)

Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-08-01 07:34:08 +01:00
Richard Purdie
c125ef12ae cross-canadian/gcc: Various mips64 fixes
"n32" is a mips64 variant we need to consider when processing the TARGET_OS
extensions. Also add the multilib extensions for mips64.

(From OE-Core rev: fe26f809aaad5d5d608e841c99b817316c5a59a0)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-08-01 07:34:05 +01:00
Dmitry Eremin-Solenikov
05879d6cef cross.bbclass: override MULTIMACH_TARGET_SYS
Cross packages are built for BUILD_VENDOR/BUILD_OS, rather than
TARGET_VENDOR/TARGET_OS. E.g. there is no point in hardcoding the
target's LIBCEXTENSION and ABIEXTENSION into the STAMPDIR/WORKDIR
variables (set using MULTIMACH_TARGET_SYS).

(From OE-Core rev: 29086fa030d9283261c5840b7ed8227fb419ac3f)

Signed-off-by: Dmitry Eremin-Solenikov <dbaryshkov@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-08-01 07:34:05 +01:00
Richard Purdie
ac692c6af7 multilib_global: Fix PREFERRED_VERSION mapping for gcc-cross-canadian
Our multilib cross toolchains have <ml_prefix> as a prefix however we
only have a single gcc-cross-canadian for each arch and it is not
prefixed even in the multilib case. We can have two versions of
gcc-cross-canadian, 32 and 64 bit.

This fixes the multilib PREFERRED_VERSION mapping code so that
no prefix is added to the preferred version and therefore the
right versions of gcc-cross-canadian are used.

(From OE-Core rev: c4b3540fc2b66730e021dd0b0c89b0fbe9dbf77a)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-08-01 07:34:05 +01:00
Richard Purdie
d3f991a539 cross-canadian: Add symlinks for multilib cases
In the same way we map various TARGET_OS options back to the single
cross-canadian compiler, add mappings for the TARGET_VENDOR cases we
know about in the multilib case.

(From OE-Core rev: 753c98324ae82a67104eaf36e7ebf3553ee1dad7)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-08-01 07:34:05 +01:00
Richard Purdie
146905a33c utils: Handle MLPREFIX in all_multilib_tune_values()
MLPREFIX wasn't being set by the function correctly since its
not an overridden value but directly set. Handle this variable
explicitly so the function returns the expected values.

(From OE-Core rev: 99997043d4106cb8a93a5f4512f1ef6f063a1895)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-08-01 07:34:04 +01:00
Richard Purdie
f351c031a9 testimage: testsdk fixes/improvements
The "bitbake meta-toolchain" comment is dated and incorrect, fix to
point at -c populate_sdk.

If a toolchain contains multiple environment files, iterate them and run
the sdk test suite on each on in turn rather than giving a fatal error and
giving up.

Also improve the debug output so that rather than PN, it also show the
toolchain tarball under test, and the environment file name its using.

Also enable the accidentally disabled cleanup code.

(From OE-Core rev: 44c8b1bd58397db85e6f7bb9a57f0d57d2c69ad5)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-08-01 07:34:04 +01:00
Richard Purdie
e384d9ba0c pixbufcache: Use sceneQueueComplete event to simplify usage
Ensuring the native pixbuf cache is correct after new loaders have
been installed is tricky. This needs to be done without races
and work regardless of whether the build is from sstate or freshly
built for one or more modules.

This adds a hook into base.bbclass which is then triggered by the
code from pixbufcache. This patch is an improved version which
means base.bbclass has no pixbuf knowledge and the mechanism can
be reused in other cases.

(From OE-Core rev: b411085fefc8582d24c172db5f6610705eb44c2f)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-07-31 10:32:45 +01:00
Richard Purdie
d897507008 toolchain-scripts: Extend to cover nativesdk compiler tools (e.g. nativesdk-gcc)
This is needed when we add nativesdk-gcc/binutil to an SDK. Being
present doesn't hurt in other cases.

(From OE-Core rev: b31a75a11f663d13c8089b8abd3a8fd080aa7e9a)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-07-31 10:32:37 +01:00
Richard Purdie
5981ccff2e cross-canadian: Put links in place for uclibc and musl
gcc-cross-canadian-<arch> is only built once. It needs to target all the
different libcs, not just the currently selected one. This change
ensures that if another libc is used, symlinks are present such that the
compiler can be found. The base version is always assumed to be "glibc"
with symlinks from musl and uclibc compiler names.

This means gcc-cross-canadian is consistent regardless of which libc is
selected when its build in multimachine builds.

[YOCTO #8025]

(From OE-Core rev: 83ead626c0da75edec2833ffb1a29011ec7b83d2)

(From OE-Core rev: ee16cb0a3f40384f509083f0ef3f36b68f73b7cf)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-07-27 23:29:16 +01:00
Richard Purdie
72777f4f2f toolchain-scripts: For non-glibc, pass compiler options to ensure the correct libc selection
gcc-cross-canadian-<arch> is only built once. It needs to target all the
different libcs, not just the currently selected one. This change ensures
that if another libc is used, the compiler correctly selects the right one.

[YOCTO #8025]

(From OE-Core rev: da2e92e256054b137a1646fdad1fe1a47ba3215a)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-07-27 23:29:16 +01:00
Ed Bartosh
813c417f26 toaster.bbclass: Fix ValueError
Running "bitbake xxx:do_unpack" resulted in exception at the
BuildCompleted event from toaster.

The reason for this exception was usage of ':' as a field
delimiter in toasterstatlist file. As target can optionally
contain ':<task>' suffix it caused split(':') to throw exception:

File "toaster_collect_task_stats(e)", line 71, in
toaster_collect_task_stats(e=<bb.event.BuildCompleted object at
0x7f8434deed50>)
ValueError: too many values to unpack

Fixed by changing delimiter ':' -> '::'

(From OE-Core rev: 03d01393d14b7b20dcb40ff89b1628883fd3b545)

Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-07-27 12:28:00 +01:00
Richard Purdie
d9411412d2 updated-rc.d: Only add dependencies in target case
Avoid errors like:
  ERROR: Nothing PROVIDES 'nativesdk-update-rc.d' (but virtual:nativesdk:dbus_1.8.18.bb
  DEPENDS on or otherwise requires it).

(From OE-Core rev: 270a1716b02981aad353c266d3d19735fc85cf10)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-07-26 09:14:30 +01:00
Richard Purdie
6381d45db7 update-rc.d: Include updated-rc.d in DEPENDS
If you build a user of updated-rc.d like udev, as things stand currently
nothing pulls in updated-rc.d but there is a dependency added on the
package at do_package time. This can lead to errors during rootfs
construction either with licensing. The fact its a RRECOMMEND means
the image are not deterministic.

A particularly good test case for reproducing this is:

MACHINE=A bitbake core-image-minimal
MACHINE=B bitbake core-image-minimal-initramfs

and since the second machine can find the package but not the license
manifest, a failure will result.

Extending the DEPENDS is the easy way to fix the issues.

(From OE-Core rev: 164b1b54c4b3127733bcd0a21b379bb6869693cc)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-07-25 23:06:59 +01:00
Bruce Ashfield
c29aac6a8b linux-yocto: split meta data from kernel repository
The linux-yocto tree has always been a combined set of kernel changes
and configuration (meta) data carried in a single tree. While this
format is effective at keeping kernel configuration and source
modifications synchronized, it isn't always obvious to developers on
how to manipulate the meta data versus the source.

With this change, we remove the meta data processing from the
kernel-yocto class and use the external meta-data repository that
has always been used to seed the linux-yocto meta branch.

After this change, linux-yocto can no longer process combined trees,
and is simplified as a result.

(From OE-Core rev: 523e4f6a6913b64453579d27a02467e14f7df42e)

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-07-25 14:41:44 +01:00
Christian Ziethén
2963cc25af image: Support for qcow2
Add support for qcow2 image format. Implemented in the same way as
the previously existing vmdk and vdi solutions.

(From OE-Core rev: c1f9ed400e4b5fe5be4fac86021dea11a7546035)

Signed-off-by: Christian Ziethén <christian.ziethen@linaro.org>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-07-25 14:41:43 +01:00
Christian Ziethén
ff037a6df6 boot-directdisk: Make kernel image inclusion conditional.
When building for qcow2 and a dummy kernel, avoid installing
a non existing bzImage.

(From OE-Core rev: 7d476f117c62e532c99abef5728e729b8001fa32)

Signed-off-by: Christian Ziethén <christian.ziethen@linaro.org>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-07-25 14:41:43 +01:00
Ricardo Neri
fbea156fff bootimg: remove previous FATIMG before creating a new one
Since version 3.0.0 of dosfstools, mkdosfs opens the to-be-filesystem
file with O_EXCL. Since the filesystem is also opened with O_CREAT,
the -C option of mkdosfs can only succeed if FATIMG does not exists.
Thus, delete any previous FATIMG file. The file can be safely deleted
as we are inside build_fat_img because we want to create an new
FATIMG.

(From OE-Core rev: a0d4511d358d427e5271420a74c26cc862c5ed74)

Signed-off-by: Ricardo Neri <ricardo.neri-calderon@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-07-23 08:48:40 +01:00
Gary Thomas
6e78cc4fad *image.bbclass: Consolidate ROOTFS_POSTPROCESS_COMMANDs
Move ROOTFS_POSTPROCESS_COMMANDs from core-image.bbclass to
image.bbclass so that images built using just image.bbclass
will benefit from them.  Without this change, an image built
using image.bbclass did not honor read-only-rootfs image feature.

(From OE-Core rev: 2d310470d95f7b387dcde605e4691ee505fc3b4d)

Signed-off-by: Gary Thomas <gary@mlbassoc.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-07-23 08:48:39 +01:00
Mariano Lopez
0a5f2bc3e2 sanity.bbclass: Remove check if /tmp is writable
The check would be managed using BB_DISKMON_DIRS so this
removes the check from the sanity class.

[YOCTO #8000]

(From OE-Core rev: a1e8fa70f6990926b5db976fa1c333073c4f6d8d)

Signed-off-by: Mariano Lopez <mariano.lopez@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-07-21 23:53:44 +01:00
Richard Purdie
b68de1cdc5 native: Move virtclass override to earlier so DEPENDS is handled correctly
Currently the virtclass override is added too late to be taken into
account when DEPENDS and other variables are processed by the virtclass
extension code. This sets the overrides in a more optimal place, meaning
they are accounted for in variables like DEPENDS.

Recipes in meta-oe like libwmf-native showed the issue.

(From OE-Core rev: e9bfd0583d7796cb9f71ff8762650e057103e3d2)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-07-21 23:37:21 +01:00
Richard Purdie
00765258a2 package_ipk/deb: Drop version information from RPROVIDES
In some scenarios rpm needs version information from RPROVIDES. We can
add this to the metadata where needed however we need to stop it entering
the ipk/deb packages. This data is not needed due to the way opkg/dpkg
handle the data.

This patch ensures that data isn't used.

(From OE-Core rev: c68b975693c10899ce50b4d8c2aa3985ca890ce3)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-07-20 10:40:41 +01:00
Richard Purdie
771126cc4d debian: Add versions to RPROVIDES
Recently, libspeexdsp-dev added RCONFLICTS = "speex-dev < 1.2rc2". where
libspeexdsp is 1.2rc3. That all seems reasonable, except there is a problem.

debian.bbclass renames speex-dev to libspeex-dev and adds a "Provides: speex-dev"
which the packaging backends duly note. The trouble is rpm sees that as having no
version at all. This means that "speex-dev < 1.2rc2" conflicts with "speex-dev"
and the -dev package simply cannot be installed.

We can't simply version all Provides for rpm since some dependencies clearly
shouldn't be versioned (e.g. the locale ones).

The solution that seems to work best is to add the versions in debian.bbclass.
If the backend doesn't like these, the backend can then strip them off
(separate patch does this).

(From OE-Core rev: 8b9df5112443c1b712cb5c63128bebbbd38cd7fc)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-07-20 10:40:40 +01:00
Randy Witt
2563aa5528 extensible sdk: Error when trying to install as root.
Since the extensible sdk uses bitbake, which can't run as root, the sdk
shouldn't be installed as root.

Previously it would error out late into setup when bitbake errored
saying not to run bitbake as root.

Now the script errors with a message saying the extensible sdk can't be
installed as root.

[Yocto #7545]

(From OE-Core rev: 309e8f4e536148056223f50637ed291c48d148ca)

Signed-off-by: Randy Witt <randy.e.witt@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-07-20 10:40:40 +01:00
Jussi Kukkonen
5e7f26d082 gtk-icon-utils: Rename, upgrade, add binary
* Rename from gtk-update-icon-cache to gtk-icon-utils to better
  reflect the content. Fix references in other recipes and classes
* Upgrade to GTK+ 3.16.4
* Add gtk-encode-symbolic-svg binary: it is used by icon themes
  (e.g. Adwaita) to generate png versions of svg icons.
* Depend on librsvg-native for gtk-encode-symbolic-svg
* Add a patch that removes Gdk dependency from gtk-encode-symbolic-svg:
  this way the native build stays slim.

(From OE-Core rev: 5f4fe36f735ff8b97c5112b16bd90e794053573d)

Signed-off-by: Jussi Kukkonen <jussi.kukkonen@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-07-16 20:39:15 +01:00
Andre McCurdy
7e7e1239d5 sstate.bbclass: remove redundant cd and mkdir commands
Update sstate_create_package and sstate_unpack_package to remove
redundant initial mkdir and cd commands. The working directory is
now setup correctly before the shell functions are called.

(From OE-Core rev: fd2d50d46e38d86829f88b5884a6fde6c38f155e)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-07-16 15:09:25 +01:00
Paul Eggleton
e60597abb7 classes/logging: allow shell message functions to work in devshell
Fix a regression caused by the shell message changes - if you run a
shell task's runfile, the task isn't actually running in BitBake and
thus the message FIFO won't exist - so we should just fall back to
printing the message with echo as we did before so that the run files
are still useful.

(From OE-Core rev: 607d3306f7abef057693dcb6aac1f7b26880181d)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-07-16 15:09:24 +01:00
Paul Eggleton
ddc1df3e80 Use die() or bbfatal_log() where the log should definitely be printed
Change calls to bbfatal() to either die() or bbfatal_log() where we know
we want the full log to be printed by the UI (calling bberror or bbfatal
would otherwise suppress it since the change to connect these functions
through to the UI.) bbfatal() is still fine to use where there is enough
context information in the message such that the log isn't needed.

(From OE-Core rev: 04ed9a19e1b08003329138b8ab83691d13c11fd9)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-07-16 15:09:23 +01:00
Paul Eggleton
757be608a5 classes/base: fix die() to print the full log
The recent change to connect through the shell logging functions caused
a regression - bb.error() and bb.fatal() cause a flag to be set
internally such that BitBake's UI will not print the full task log on
failure; unfortunately we have in a lot of places called die() or
bbfatal() within shell functions with a very terse message as a means of
exiting out, where we still want to see the full log (and we were
previously). We do still want to have fatal errors with proper messages
that don't result in the full log being printed, however we can't ignore
the typical usage of die(). Having added a mechanism to BitBake to log an
error and reset the flag, create a bbfatal_log() function that uses this
and call it from die() to restore the previous behaviour.

(From OE-Core rev: beec1cf3d22d7dbe85f332a055c72649f4bd3e92)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-07-16 15:09:23 +01:00
Paul Eggleton
546bfe8069 classes/useradd: don't read bbnote/bbwarn/bbfatal values
Since these functions now log through BitBake's message logging system
we must have standalone implementations here.

(From OE-Core rev: dd7449114a33c92a2877b1a6f875d812b10856ff)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-07-16 15:09:23 +01:00
Ross Burton
c713a22368 kernel: fix path assumptions in tasks
Several of the kernel class tasks were making assumptions about what directory
they were executed in.  Clarify the code by making paths absolute or passing -C
to oe_runmake.

(From OE-Core rev: d596286bc4cf19774447b136a27acf3c61aad2ff)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-07-16 15:09:21 +01:00
Ross Burton
a08f8db7a4 libc-package: don't abuse B to change directory
Currently if exec_func() isn't told what directories to create and change to, it
uses B. This is not obvious and may be changed in the future.

Instead, pass -C<dir> to oe_runmake.

(From OE-Core rev: c4a1989f3550e81f188b5789af2c4c18560c3656)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-07-16 15:09:21 +01:00
Ross Burton
c5c80d9edc ptest: add dirs flag to ptest tasks
The ptest configure/compile/install tasks mirror the base
configure/compile/install tasks, so add an explicit dirs flag to ensure they
mkdir() and chdir() the right directory.

(From OE-Core rev: 2b407176091c5a8697260c79f7559c933f38c317)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-07-16 15:09:21 +01:00
Petter Mabäcker
3f9658a482 kernel-yocto: fix machine_srcrev check in do_patch
do_patch is currently doing checks with machine_srcrev without initiate
it which leads to below (additional debug added):

 DEBUG: Executing shell function do_patch
 .
 .
 .
 + [ 0 -ne 0 ]
 + [  != AUTOINC ]
 + git rev-parse --verify ~0
 fatal: Needed a single revision
 + git merge-base HEAD
 usage: git merge-base [-a|--all] <commit> <commit>...
    or: git merge-base [-a|--all] --octopus <commit>...
    or: git merge-base --independent <commit>...
    or: git merge-base --is-ancestor <commit> <commit>
    or: git merge-base --fork-point <ref> [<commit>]

     -a, --all             output all common ancestors
     --octopus             find ancestors for a single n-way merge
     --independent         list revs not reachable from others
     --is-ancestor         is the first one ancestor of the other?
     --fork-point          find where <commit> forked from reflog of <ref>

 + [  =  ]
 + set +x
 DEBUG: Shell function do_patch finished

Only reason it works today is because 'rev-parse/merge-base' with empty machine_srcrev
will result in "false positive". Solve this by adding a similar non-empty check and
use SRCREV as fallback as in 'do_kernel_metadata'

(From OE-Core rev: 5f7403151fc8bfd5b1d77f6626717c8b84d33d93)

Signed-off-by: Petter Mabäcker <petter@technux.se>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-07-16 15:09:19 +01:00
Bian Naimeng
4012fd3235 do_unpack: move qa check of unpack into insane.bbclass
Some source archive are not standard format.
For example, sometimes, we still need decompress file once again after base_do_unpack,
in such case, the following warning will be caught.

 WARNING: xxx : the directory ${WORKDIR}/xxxx (xxxxxx) pointed to by the S variable doesn't exist \
 - please set S within the recipe to point to where the source has been unpacked to

So, we should do this QA check after all of unpack jobs been completed.

(From OE-Core rev: 81216da9fa90dc8a67a0f367742b1e73afec0aa1)

Signed-off-by: Bian Naimeng <biannm@cn.fujitsu.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-07-16 15:09:18 +01:00
Mariano Lopez
45772bab32 sanity.bbclass: Check if /tmp is writable
Used mkstemp instead of raw open file call.
Also added the exception message to the output of
the sanity check.

[YOCTO #7922]

(From OE-Core rev: c101201b3aa7378e4c65a879040fe6f509e7cdcd)

Signed-off-by: Mariano Lopez <mariano.lopez@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-07-16 15:09:16 +01:00
Leonardo Sandoval
b250b5c7be buildhistory.bbclass: Check output folder is present before creating files-in-$pkg.txt
This is just a safe check to make sure the output folder is present, before
creating the files-in-$pkg.txt file.

(From OE-Core rev: d48233cb1fd84f1061a8ba3c15bacc180e93934c)

Signed-off-by: Leonardo Sandoval <leonardo.sandoval.gonzalez@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-07-16 15:09:16 +01:00
Aníbal Limón
7f8286fb9e classes/sstate.bbclass: Improve checkstatus using connection cache.
Use FetcherConnectionCache to improve times when do checkstatus over
sstate resources.

[YOCTO #7796]

(From OE-Core rev: e6f66370c6ce15aca18ef64491bab3dc92b80c57)

Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-07-12 22:55:46 +01:00
Paul Eggleton
c3ac850f69 classes/logging: make shell message functions output to the console
Use the FIFO that is now set up when executing tasks within BitBake to
make bbdebug/bbnote/bbwarn/bbplain/bberror/bbfatal output to the console
through BitBake's UI (as their python counterparts do) instead of only
outputting to the task log.

Note that this requires the corresponding change in BitBake that creates
the FIFO; without it such messages will end up in a file where the FIFO
should have been (but won't cause any other ill effects).

Remainder of the fix for [YOCTO #5275].

(From OE-Core rev: f04139fc2a33ef48dc889ce51ea442927db0c134)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-07-12 22:55:45 +01:00
Patrick Ohly
95083b2699 archiver.bbclass: add do_deploy_all_archives
When working specifically on source archiving, it is useful
to trigger that for all recipes required by something like an
image recipe, without actually having to build that.

"bitbake -c deploy_all_archives <target>" does that now.

(From OE-Core rev: 30b109729a81097cc6cfa65148e0e9ae1a564d2c)

Signed-off-by: Patrick Ohly <patrick.ohly@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-07-12 22:55:41 +01:00
Robert Yang
274389c566 populate_sdk_base.bbclass: don't inherit toolchain-scripts.bbclass
Fixed when enable multilib:
require conf/multilib.conf
MULTILIBS = "multilib:lib32"
DEFAULTTUNE_virtclass-multilib-lib32 = "x86"

$ bitbake core-image-minimal
No lib32 package should be built since we don't build
lib32-core-image-minimal, but a lot them are built:
lib32-opkg-utils
lib32-cryptodev-linux
lib32-sqlite3
lib32-libtool-cross
lib32-ncurses
lib32-db
lib32-diffutils
lib32-zlib
lib32-gcc-cross-i686
lib32-gcc-cross-initial-i686
lib32-flex
lib32-libgcc-initial
lib32-libffi
lib32-linux-libc-headers
lib32-expat
lib32-openssl
lib32-glibc
lib32-binutils-cross-i686
lib32-gcc-runtime

The are introduced by toolchain-scripts.bbclass' anonymous function (the
MULTILIB_VARIANTS), but it doesn't need toolchain-scripts.bbclass, in
fact, so remove it to fix the problem.

[YOCTO #7961]

(From OE-Core rev: 000ff33729854b1a41206a087cde1e50f49017e0)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-07-12 22:55:41 +01:00
Richard Purdie
e9817d59d3 oeqa/sstatetests: Add NATIVELSB sstate signature equivalence test
The sstate checksums should be independent of whichever NATIVELSBSTRING is
detected. Add an automated QA test which tests this using bitbake -S.

To make this possible, we need to be able to override the value of
NATIVELSBSTRING so make a small change to allow this.

(From OE-Core rev: 2da156d491caf25dfa3efd567d6dbb451dd7e9dc)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-07-12 22:55:38 +01:00
zjh
d245899cc9 testimage: Add support for test suites manifest files
Allow the list of TEST_SUITES to be read from a list of manifest files
in the TEST_SUITES_MANIFEST variable.

[YOCTO #7848]

(From OE-Core rev: c270148b3f0e87bbaafbcffbca4ee7b965be6569)

Signed-off-by: zjh <junhuix.zhang@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-07-09 18:00:21 +01:00
zjh
129aed8d79 testimage: Support full TC path such oeqa.runtime.pnp.get_memory_size in TEST_SUITES
If a TC name start with "oeqa", it is thought as a full TC path. if not,
follow original logic (assume under oeqa.runtime)

For example:

TEST_SUITES = "oeqa.runtime.pnp.get_memory_size oeqa.runtime.sanity.reboot"

will run these two case when bitbake -c testimage

[YOCTO #7834]

(From OE-Core rev: 2c3fe7351edd954230b14443f82914a3f70e8a40)

Signed-off-by: zjh <junhuix.zhang@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-07-09 18:00:21 +01:00
Ross Burton
91c1574fbe report-error: expand all variables
BUILDNAME is now composed from ${DATE} and ${TIME} so needs to be expanded to
useful.  Whilst fixing this some other variables were explicitly not expanded
for no clear reason, so expand those too.

(From OE-Core rev: d45f818026429b70d90fb3ae8e017db6516dca44)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-07-09 18:00:17 +01:00
Pushpal Sidhu
9238984340 image_types.bbclass: add support for multiple ubi sizes
Add new FSTYPE called 'multiubi'. This new type has the ability to
create multple ubi's, something that's extremely useful on boards that
can include varying flash sizes (e.g. 256MB vs 2GB).

Because we don't want to reuse code, I extracted the mkfs and ubinize
commands out to a new function that will handle the creation of both
multiple ubi's, as well as the 'ubi' FSTYPE (so as not to break current
boards).

Due to the single processes nature of the OE when doing it's
'create_image', this new multiubi_mkfs function also creates it's own
symlinks as well as cleans up it's own cfg file.

(From OE-Core rev: 1255476161f409a0999650c2c8bdaf36b1ba4b95)

Signed-off-by: Pushpal Sidhu <psidhu@gateworks.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-07-08 00:01:23 +01:00
Yue Tao
09a5cb0cca image_types_uboot: remove the middle file
The .gz, .bz2 or .lzma are middle files for making gz.u-boot,
bz2.u-boot, or lzma.u-boot. It should be removed once the final
image is generated. Otherwise, even RM_OLD_IMAGE = 1, it can't
be removed, moreover more and more middle files are genrated via
'bitbake *-image'

(From OE-Core rev: f322297a48338ba04481faf3743d05a80a492c1f)

Signed-off-by: Yue Tao <Yue.Tao@windriver.com>
Signed-off-by: Roy Li <rongqing.li@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-07-08 00:01:21 +01:00
Christopher Larson
d1874becab multilib_global: expand multilib pref values properly
This ensures that in cases where the preference value changes when the
multilib override is applied, we correctly expand it in that context.

For example, for `PREFERRED_PROVIDER_${TARGET_PREFIX}gcc
= "gcc-external-cross-${TARGET_ARCH}"`, when it sets the prefixed version of
this, we want TARGET_ARCH expanded with the multilib applied, otherwise the
arch suffix will be incorrect for that context.

We ran into this trying to use preferences in meta-sourcery along with
multilibs. We worked around it there via PNBLACKLIST, but this fix should
still go into the core.

(From OE-Core rev: 4d208ebacb3a5d189998ac9be6d1a454c45aa975)

Signed-off-by: Christopher Larson <kergoth@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-07-08 00:01:20 +01:00
Nicolas Guyomard
ae5c24b20a grub-efi: Allow to use file name different from grub.cfg in GRUBCFG
To generate a same image both in live image type and boot-directdisk image type
and make boot-direct image boot directly on the rootfs partition without using
an initramfs we need to have the ability to generate several grub.cfg files.

(From OE-Core rev: 3630f7963a472fa11a1d52bd9782fde9a9880971)

Signed-off-by: Nicolas Guyomard <nicolas.guyomard@open.eurogiciel.org>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-07-08 00:01:19 +01:00
Mariano Lopez
cd379328b9 report-error.bbclass: Added file syncronization.
errorreport_handler would fail if several errors are
triggered at the same time because of two proccess
writting to the same file. This patch add the required
syncronization to handle concurrent process.

[YP #7899]

(From OE-Core rev: 8b20eaf7cbadd0cd87cfa192d60ca1b7da435216)

Signed-off-by: Mariano Lopez <mariano.lopez@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-07-08 00:01:18 +01:00
Andre McCurdy
67ab9eb043 distrodata.bbclass: fix typo, Upsteam -> Upstream
(From OE-Core rev: 09c448b42d1ae0e85b91a61bb814384279b1b6e8)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-07-07 13:33:25 +01:00
Koen Kooi
d451627132 cmake bbclass: fix support for native builds
For native builds  of recipes (e.g. mariadb-native) cmake *must* look outside of its sysroot to find the compiler, so instruct it to do so.

(From OE-Core rev: 907828acebcf07d7a9367432432d04e0dab283d3)

Signed-off-by: Koen Kooi <koen.kooi@linaro.org>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-07-02 23:08:40 +01:00
Mariano Lopez
cea20425a3 sanity.bbclass: Check if /tmp is writable
If /tmp can't be written, bitbake gaves an unrelated error.
This checks if /tmp can be written in every build.

[YOCTO #7922]

(From OE-Core rev: 10c7cf0683494ea1bf2cc6de9b121abf2a04b253)

Signed-off-by: Mariano Lopez <mariano.lopez@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-07-02 23:08:39 +01:00
Koen Kooi
a23d2730b8 bootimg bbclass: don't hardcode 'bzImage' name
In the EFI case there are 2 more architectures besides x86(_64) that may use this class: aarch32, which tends to use 'zImage' and aarch64, which uses 'Image'. Instead of hardcoding those values like the luvOS fork does, use the proper variable.

(From OE-Core rev: df96b8895457deeeffc00e849118f2ac6d352e1e)

Signed-off-by: Koen Kooi <koen.kooi@linaro.org>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-07-02 23:08:39 +01:00
Ross Burton
d73a813aa2 cross.bbclass: delete package_qa task
The package_qa task isn't required for cross builds, so delete it along with the
other packaging tasks to match native.bbclass.

[ YOCTO #7934 ]

(From OE-Core rev: 24a6590e85c941a73ea852b91939db8c0835d683)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-07-02 22:56:38 +01:00
Robert Yang
5c71337cd7 bootimg.bbclass:hddimg: check the size of rootfs.img for hddimg
The hddimg uses FAT, so the single file size should be less than 4GB,
otherwise errors, check that and error out.

Another way might be use ext2/3/4 rather than FAT, but EFI only supports
FAT, if we make EFI use FAT, and non-EFI use extX, that would the code
very different, which seems not worth.

[YOCTO #6449]

(From OE-Core rev: a82f62627f79761e1b09b8f54896a9f85a591443)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-07-01 15:40:00 +01:00
Robert Yang
b3c79c4d0f bootimg.bbclass:iso: use mkisofs -iso-level 3 for large iso
There will be problems when rootfs.img is larger than 4GB:
mkisofs: Value too large for defined data type. File /path/to/iso/rootfs.img is too large for current mkisofs settings - ignoring

And will get a wrong iso.

Check the size of ${ISODIR}/rootfs.img, use mkisofs -iso-level 3
when it exceeds 3.8GB, the specification is 4G - 1 bytes, we need
leave a few space for other files.

[YOCTO #6449]

(From OE-Core rev: 40cdf918dc2507a1270a4d933b2c2f46a514d6e2)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-07-01 15:40:00 +01:00
Robert Yang
304ebe1fa2 cpan_build.bbclass: remove libmodule-build-perl
There is no such a package in perl 5.22.0.

(From OE-Core rev: 80afd9650328de2eb17ba0e104ee2c76a7fb983e)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-07-01 15:39:58 +01:00
Richard Purdie
b3b6483f70 testimage: Don't test xorg/vnc on qemuarm64
The qemuarm64 machine doesn't have graphics so don't test xorg/vnc
as they won't work.

[YOCTO #7103]

(From OE-Core rev: 27d17c662aa103dc728f14e78cac772546a9e5dc)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-27 22:50:41 +01:00
Leonardo Sandoval
01c9c7394d buildhistory.bbclass: Create a files-in-<pkg>.txt containg recipe's pkg files
A file similar (in format) to files-in-image.txt is created for each
recipe's build package. This would allow to easily see what the
recipe's package may install when including it into an image.

These files reside on the specific buildhistory recipe package (i.e.
buildhistory/packages/i586-poky-linux/busybox/busybox-dev/files-in-busybox-dev.txt
for busybox-dev package)

[YOCTO #5870]

(From OE-Core rev: e013fe79cdf67429ff986d8ee6af510b34b31c9d)

Signed-off-by: Leonardo Sandoval <leonardo.sandoval.gonzalez@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-27 22:42:54 +01:00
Andre McCurdy
2eb1794fa0 populate_sdk_base.bbclass: use pbzip2 to compress SDK tarfiles
(From OE-Core rev: 670f5cda06070ae888d17cca7a07aa74d751c2f7)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-27 22:42:53 +01:00
Andre McCurdy
a62cb8a77d image_types.bbclass: use pbzip2 for images requiring bz2 compression
(From OE-Core rev: b269fbe6585df97d02211dc5711e88833365e572)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-27 22:42:53 +01:00
Richard Purdie
98c2bdbd55 testimage: Handle ipk/deb packaging format tests correctly
The default test list only works for rpm packaging. This fixes it for
deb and ipk too.

(From OE-Core rev: 210c8926405fcf695ec00f5768f29ba198320d6a)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-27 22:42:50 +01:00
Robert Yang
48b5ea6782 sanity.bbclass: check /bin/sh is dash or bash
The build would fail when /bin/sh links to ksh or csh, we only test dash
and bash AFAIK.

* When /bin/sh -> csh:
  $ bitbake quilt-native
$ bitbake quilt-native -cfetch
Illegal variable name.
Illegal variable name.
[snip]
uname: extra operand `2'
Try `uname --help' for more information.

* When /bin/sh -> ksh:
  If there are only a few tasks running, for example,
  "bitbake quilt-native", the build would be OK, but it would fail if we
  run "bitbake world" for a while, there would be a lot of "Broken pipe"
  errors:
Exception: CalledProcessError: Command
'cd /path/to/xx; find . -type d -print | tar -cf - -C /path/to/sysroot-destdir -p --files-from - --no-recursion | tar -xf - -C /path/to/xxx'
returned non-zero exit status 2 with output tar: This does not look like a tar archive
tar: Exiting with failure status due to previous errors
find: `standard output': Broken pipe
find: write error

[YOCTO #7917]

(From OE-Core rev: ecdfdd7286a2f406655577f2c4d6fcf3fe3de429)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-26 09:28:53 +01:00
Robert Yang
ad2bd4c1ec toolchain-scripts: fix for multilib
Use MLPREFIX to fix:
| cat: /path/to/sysroots/lib32-qemux86-64/sysroot-providers/virtual_libc: No such file or directory

[YOCTO #7924]

(From OE-Core rev: db9d76a5560d3001abe76518f47da1dfba8c0c7f)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-26 09:28:53 +01:00
Aníbal Limón
615b351bf4 oe/utils.py: Add support for init/end helper functions in ThreadWorker.
Add init/end helper functions for ThreadWorker also pass ThreadWorker
as first argument to init/end/func functions this enables per-thread
storage handling.

classes/sstate.bbclass: Add thread_worker argument to checkstatus
function.

(From OE-Core rev: 08c50d62b520c8405f034e3d7adeea89e06226ee)

Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-26 09:27:30 +01:00
Aníbal Limón
3fa32158c4 oe/utils.py: Fix thread leakage in ThreadPool
In order to fix Thread leakage caused by not call join() in Threads,

Pass num_tasks in ThreadPool for add all the tasks into a Queue this
enable catch of Queue.Empty exception and exit the threads.

classes/sstate.bbclass: Change checkstatus function to match new
ThreadPool operation.

(From OE-Core rev: 524d92ed7b53bef933527095e82f378b934f25ef)

Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-26 09:27:30 +01:00
Richard Purdie
6cfed59323 toolchain-scrpts: Fix sitecache issues with multilib
The use of TCLIBC in TOOLCHAIN_NEED_CONFIGSITE_CACHE is problematic
since a multilib may have both uclibc and glibc for different multilibs
yet switching between them doesn't change TCLIBC. This would result
in "lib32-glibc" being attempted when lib32 was actually uclibc.

The fix here is to use the virtual providers which bitbake switches
to point correctly at the right things.

This does mean we need to resolve virtual providers but we can do this using
sysroot-providers.

[YCOTO #7607]

(From OE-Core rev: 6d1dc943a9c8d97cd59d8cd98069d9bdb2615ff5)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-23 16:07:23 +01:00
Richard Purdie
fed80c3d40 staging: Strip files in sysroot
Add functionality to strip binaries/libraries going into the sysroot. Whilst
this does fractionally slow down the build, it also significantly reduces the
size of the sstate cache files.

(From OE-Core rev: 30f3774f4cd5bbb8c1e6884aeff5af91ab053fc1)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-23 16:07:23 +01:00
Richard Purdie
86d30d756a meta: Add explict getVar param for (non) expansion
Rather than just use d.getVar(X), use the more explict d.getVar(X, False)
since at some point in the future, having the default of expansion would
be nice. This is the first step towards that.

This patch was mostly made using the command:

sed -e 's:\(getVar([^,()]*\)\s*):\1, False):g' -i `grep -ril getVar *`

(From OE-Core rev: ab7c1d239b122c8e549e8112c88fd46c9e2b061b)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-23 11:57:25 +01:00
Joshua Lock
5f0dfecd53 distutils-common-base: add to, don't set, FILES_${PN}
If we set FILES_${PN} and a recipe inherits other classes that
modify FILES_${PN} *before* distutils-common-base is included, any
changes to FILES_${PN} made by those classes are lost.

Instead, append the additional directories we want to include in
FILES_${PN}

(From OE-Core rev: f6478e8c73f9cfb79d1f7680b7bf3ff957eb51cb)

Signed-off-by: Joshua Lock <joshua.lock@collabora.co.uk>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-23 11:47:39 +01:00
Ed Bartosh
ff8ec3db57 image-live: Set syslinux timeout to 5s
Increased syslinux timeout to 5s as default 1s timeout
is not enough to notice syslinux prompt on some devices.

(From OE-Core rev: 165e153f81c5cbd9b7f2fe9a35405617cd94406d)

Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-23 11:47:22 +01:00
Ross Burton
798daa70bf Revert "distrodata: Remove unnecessary include of package_regex.inc"
Instead of asking the user to include a number of configuration files, the class
can do this.  Next step is to fix the documentation.

This reverts commit 2a4ee94667.

(From OE-Core rev: 5af4f61dfa7ac583fb96a0309c6130b7e6820fc9)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-23 11:46:58 +01:00
Patrick Ohly
f677b5893d insane.bbclass: fix false negative in build-deps QA check
When a recipe called 'foobar-test' links against 'foobar' without
listing that in DEPENDS, the build-deps check misses that error
because it looks for 'foobar' in a package string containing (among
others) the 'foobar-test' name, leading to the incorrect conclusion
that the package is listed as dependency.

The 'packages' string needs to be split into individual package names
before the check. Doing that once directly after reading the value is
more efficient than splitting inside package_qa_check_rdepends() because
the caller also needs the individual components.

Also use a set to speed up the 'package in packages' check.

(From OE-Core rev: 9f5792088315ab42f77fe1a1af7d2225e7ad5418)

Signed-off-by: Patrick Ohly <patrick.ohly@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-23 11:46:57 +01:00
Mariano Lopez
ae9102bda3 copyleft_filter.bbclass: Allow to filter on name
The archiver uses a license based filter to provide the source code.
This patch allows to search on name based on two new variables (COPYLEFT_PN_INCLUDE,
COPYLEFT_PN_EXCLUDE). Both variables are empty by default.
The filter by name has higher priority than the license filter.

[YOCTO # 6929]

(From OE-Core rev: 04066239e9cd6a8461fb2c18e826289469ac1240)

Signed-off-by: Mariano Lopez <mariano.lopez@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-23 11:46:57 +01:00
Robert Yang
04a1fea952 base.class: warn for invalid PACKAGECONFIG
There may be typos or out of date values in PACKAGECONFIG, check and
warn them.

(From OE-Core rev: be085657bbab34bb8a822682897f96871bb2d8f4)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-23 11:46:57 +01:00
Patrick Ohly
553305eee8 logging.bbclass: avoid bashism in bbdebug()
Checking the bbdebug() debug level parameter with a regular
test expression only works in bash. Using tr to filter out
digits and then checking whether anything is left achieves
the same result and is more portable.

(From OE-Core rev: 25cb71799e72d4e0c4fe39653d8b84280d087372)

Signed-off-by: Patrick Ohly <patrick.ohly@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-23 11:46:56 +01:00
Alejandro Hernandez
4caed87a38 distutils: regenerate pyc files after being modified by sed
py files are edited by sed and therefore *.pyc files are recreated on first boot, but if you have a read-only filesystem this is not possible. This patch creates pyc files directly after the py files are modified.

[YOCTO #7722]

(From OE-Core rev: a0460ac8a2595d4b064b483ca1f282a255ae6411)

Signed-off-by: Alejandro Hernandez <alejandro.hernandez@linux.intel.com>
Signed-off-by: Thomas Roos <roosesweb@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-23 11:46:56 +01:00
Paul Eggleton
0899d9af1d classes/externalsrc: handle tasks with existing lockfiles
We need to ensure we add a leading space to the value we are prepending
here in case lockfiles already has a value.

Fixes [YOCTO #7813].

(From OE-Core rev: d1b3b384754089e62f6a4c7964690ae6c8d20a96)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-18 09:14:06 +01:00
Richard Purdie
5efbaaf74b packagedata: Fix to ensure variables expand correctly
If we set unsuffixed variables here there is a chance they could clobber
override versions of that variable, e.g. DESCRIPTION could clobber
DESCRIPTION_<pkgname>. We therefore don't clobber for the unsuffixed
variable versions by using the parsing flag to setVar.

This becomes a problem with the modifications to bitbake to
have continual expansion of the datastore, its about the one place this
turns out to be problematic.

The parameter to setVar works with current bitbake even though
we don't have the new API since it gets swallowed by the logging code.

(From OE-Core rev: 45b368427accf6d519078812d5335ec250bacef8)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-16 14:21:29 +01:00
Richard Purdie
04e2dd9e0b multilib_global: Stop empty space influencing RPROVIDES
If the resulting RPROVIDES is empty, don't set it. This streamlines
pkgdata slightly removing empty values and avoids other errors which
confuse the datastore when the variable is best left unset.

(From OE-Core rev: fe10ea6bd6078828016d3954ad9b290f638d6dbb)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-16 14:21:29 +01:00
Richard Purdie
af377d6e0c package_ipk/deb/rpm: Improve OVERRIDES handling
(From OE-Core rev: 59ca90114fb0b770d9d79e548b7e52aa0c089e48)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-16 14:21:29 +01:00
Ross Burton
7b08012204 cmake: extend CMAKE_MODULE_PATH instead of setting
Some (e.g. piglit) CMakeList.txt files will extend CMAKE_MODULE_PATH before
calling project(), which is when the toolchain.cmake file is parsed.  In this
situation the CMAKE_MODULE_PATH is overwritten, so handle this by appending in
toolchain.cmake instead of assigning.

(From OE-Core rev: 2cfa8427d77f680df37c12d00125501ebe7c38a3)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-11 23:59:17 +01:00
Robert Yang
041af82379 multilib.bbclass: use package_qa_handle_error
Use package_qa_handle_error to handle the QA issue.

(From OE-Core rev: c925847dea7b0480c901e94b6a071a18f5e00d45)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-11 23:59:16 +01:00
Robert Yang
ad9542cf26 update-rc.d.bbclass: add MLPREFIX when set RRECOMMENDS
Fixed when build with multilib:
WARNING: Multilib QA Issue: lib32-alsa-state package lib32-alsa-state - suspicious values 'update-rc.d' in RRECOMMENDS
WARNING: Multilib QA Issue: lib32-modutils-initscripts package lib32-modutils-initscripts - suspicious values 'update-rc.d' in RRECOMMENDS
WARNING: Multilib QA Issue: lib32-init-ifupdown package lib32-init-ifupdown - suspicious values 'update-rc.d' in RRECOMMENDS
WARNING: Multilib QA Issue: lib32-xserver-nodm-init package lib32-xserver-nodm-init - suspicious values 'update-rc.d' in RRECOMMENDS
WARNING: Multilib QA Issue: lib32-sysklogd package lib32-sysklogd - suspicious values 'update-rc.d' in RRECOMMENDS

(From OE-Core rev: 43e8192606444c339ef732d611d4cbc18dee21e4)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-11 23:59:16 +01:00
Juro Bystricky
a0b5164923 boot-direct.bbclass: Add support for VDI images
Same treatment for both  VMDK and VDI images.

(From OE-Core rev: 605dd9f8eb719d0aa278c8ec892e62214cdcfddc)

Signed-off-by: Juro Bystricky <juro.bystricky@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-11 23:59:13 +01:00
Juro Bystricky
fe0f643496 sanity.bbclass: Prevent 'vdi' and 'live' to be built together
Same reason and check as for vmdk.

(From OE-Core rev: deb7ee16cd04b03417a68d32d14b5b0ad3c59eca)

Signed-off-by: Juro Bystricky <juro.bystricky@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-11 23:59:13 +01:00
Juro Bystricky
a13c51e751 image: Support for VDI
Added support for VirtualBox VDI format. The support was
implemented by merging with the already existing VMDK support
for VM player by creating a new class image-vm.bbclass.
This class replaces the previous VMDK only image-vmdk.class.

(From OE-Core rev: 0a3e8eb9f592c3f1edd2c7521855f7406541651a)

Signed-off-by: Juro Bystricky <juro.bystricky@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-11 23:59:13 +01:00
Cristian Iorga
63e62599a6 insane: errors out on binaries installed by allarch-inherit recipes
If a prebuilt binary is installed via a recipe that
inherits allarch, an odd-looking traceback is thrown out.
Fixed by implementing a proper check and outputting an
error message that clarifies the issue.

Fixes [YOCTO #7662].

(From OE-Core rev: a938f2117989b596c50d9d7f3929dd3c0f893d08)

Signed-off-by: Cristian Iorga <cristian.iorga@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-11 23:59:09 +01:00
Richard Purdie
ccb2d1b481 sstate: Add eventhandler which cleans up stale recipe data
"Incremental builds do not work well when renaming recipes or changing
architecture" is a long standing issue which causes people considerable
pain. We've struggled for a long time to come up with a way to
generically address the problem.

There are additional issues where removal of a layer caused data to
continue to exist and additionally, changing DISTRO_FEATURES also caused
problems in an existing TMPDIR.

This patch attempts to address this by adding a mapping between stamp
files and manifests. After parsing we can easily tell which stamp files
are still reachable, if any manifest has a stamp that can no longer be
reached, we can remove it. Since this code ties this to the sstate
architecture list, it will not remove data from other than the current
MACHINE (and its active architectures). It does not clean the sstate
cache so if another build activates something which was cleaned, it
should reinstall from sstate.

We can also go one step further, depending on the setting of
SSTATE_PRUNE_OBSOLETEWORKDIR, workdirs which are no longer active can
also be removed. This avoids the buildup of many old copies of data in
WORKDIR for example when versions are upgraded.

The one thing which may surprise people with this change is if you
remove a layer, data added by that layer will be "uninstalled" before
the next build continues. I believe this is a feature and a good thing
to do though.

This code is safe with existing builds. If something isn't in the new
index it simply isn't removed. Since changes to the sstate code trigger
a rebuild, after this merges, we can assume the code will start to
detect changes from that point onwards.

[YOCTO #4102]

(From OE-Core rev: 4ea39427eedeadd51439a62fa015c86be30c3445)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-10 12:00:13 +01:00
Aníbal Limón
20a71d63fc distrodata: Use Python CSV instead of did by hand
Fix CSV generation in distrodata class using Python CSV
module before it some errors happen when read due to
incorrect quoting/delimiters.

[YOCTO #7777]

(From OE-Core rev: de4d9d46bd293da820830f22d9ff08c0f26831c6)

Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-08 17:34:05 +01:00
Aníbal Limón
56072bb3bd distrodata: checkpkg make usage of oe.recipeutils.get_recipe_upstream_version
Now get_recipe_upstream_version function exists in oe.recipeutils module
to avoid duplicate code make usage of it.

(From OE-Core rev: eb296224f24d4bcc833d81a86a71345dfd0e9db4)

Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-08 17:34:05 +01:00
Aníbal Limón
2a4ee94667 distrodata: Remove unnecessary include of package_regex.inc
This causes a warning when follow documentation to use distrodata
class that points to include,

	include conf/distro/include/distro_alias.inc
	include conf/distro/include/recipe_color.inc
	include conf/distro/include/maintainers.inc
	include conf/distro/include/upstream_tracking.inc
	include conf/distro/include/package_regex.inc
	INHERIT+= "distrodata"

(From OE-Core rev: c53917e79dc34757a482c94e653568619868fff4)

Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-08 17:34:05 +01:00
Alejandro Hernandez
c4553e07cd python3-distribute: Upgrade to python3-setuptools 15.2
python3-distribute was merged back to python3-setuptools in 2013,
and it is no longer being maintained, this upgrade also provides
functionality that will be needed for python3-pip.

[YOCTO #7763]

(From OE-Core rev: 8922e609cb947e34cde6e48b82ff37a932d8d8db)

Signed-off-by: Alejandro Hernandez <alejandro.hernandez@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-08 17:34:04 +01:00
Moritz Blume
9c8ed1b197 cmake: Whitespace fix
(From OE-Core rev: f0d6523302fe1d246833b5d0b2dcfe0c0efd5239)

Signed-off-by: Moritz Blume <moritz.blume@bmw-carit.de>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-08 17:34:03 +01:00
Jussi Kukkonen
f63e9b30ea xserver-xorg: Upgrade 1.16.3 -> 1.17.1 (OELAYOUT_ABI change)
* Increase OELAYOUT_ABI: this is required because the
  xf86-video-modesetting package moves from its own recipe to
  xserver-xorg and sanity check cannot handle that currently.
  The upgrade will delete old xf86-video-modesetting files from
  sysroots.
* Remove upstreamed xserver-xorg patches
* Remove xf86-video-modesetting recipe: the driver is now included in
  xserver-xorg recipe, which now produces the xf86-video-modesetting
  package. The package version changes from 0.9 to 1.17.1
* Update xserver-xorg license checksum: modesetting license
  info (another MIT one) has been added to the file

(From OE-Core rev: 950846d019ffac21909a96d90af8cf7e5bdd5738)

Signed-off-by: Jussi Kukkonen <jussi.kukkonen@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-03 16:38:48 +01:00
Mario Domenech Goulart
0420f7f478 distutils.bbclass: consistency between error message and setup.py's command
setup.py was called with build as argument, but the error message
would report build_ext.

(From OE-Core rev: 898b286b92b031db64c2143e81a79fbb20da481a)

Signed-off-by: Mario Domenech Goulart <mario@ossystems.com.br>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-03 16:38:48 +01:00
Richard Purdie
801436bf31 sstate: Add note when performing sstate mirror checks
The build can pause whilst remote sstate mirrors are checked for
sstate objects. Inform the user this is happening.

(From OE-Core rev: 4f4cfe8a4a0c602d6e11ea9bb75b52241deda9d6)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-03 16:38:45 +01:00
Richard Purdie
1f839f233e sstate: Parallelise checkstatus calls for sstate mirror
Currently the urls are checked serially which is a performance bottleneck when
looking at http:// urls in particular. This adds code to check the url status in
parallel, mirroring the way we do this elsewhere.

We need the datastore for the fetcher so we use threads, not multiprocess.

(From OE-Core rev: 77c4865bbde4cd2a061cf333f9ad798afc6de0ef)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-03 16:38:45 +01:00
Richard Purdie
2389d4c57d base: Fix license checksum rebuild problems
"MACHINE=qemux86-64 bitbake init-ifupdown; MACHINE=genericx86-64 bitbake init-ifupdown"
shows a rebuild when it would be expected. The reason is a LIC_FILES_CHKSUM which
contains file://${WORKDIR}, an absolute path which doesn't exist in the first build
but does in the second, causing a signature change and a rebuild.

Fix the problem by ignoring any file:// url which resolves since TMPDIR for
license file dependency purposes.

(From OE-Core rev: f27ddf0de23871fc72cfc31f514f0e144aaa2082)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-06-03 16:38:44 +01:00
Richard Purdie
3b627bb28c update-rc.d: Improve RRECOMMENDS handling
Unfortunately the combination of:

RRECOMMENDS_${PN} = "X"
UPDATERCPN = "${PN}"
RRECOMMENDS_${UPDATERCPN}_append = "Y"

is tricky for bitbake to order correctly since RRECOMMENDS_${UPDATERCPN} can
become "Y" which can then completely overwrite RRECOMMENDS_${PN}.

Avoid these issues and improve handling in general by explictly setting
the RRECOMMENDS on the list of packages modified in the general
code.

(From OE-Core rev: 053b8a4e6b9a4b02c0b1b4bc1e297a1251a901a9)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-05-29 10:17:14 +01:00
Marek Vasut
1604ca299b kernel: Build uImage only when really needed
Build the uImage file using the kernel build system only when
it is really required, which is only in case KEEPUIMAGE == yes.
Otherwise, just build zImage, since the Yocto build system will
handle the uImage generation for us.

(From OE-Core rev: e6952593d810636f26af541b12126848483e619a)

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Richard Purdie <richard.purdie@linuxfoundation.org>
Cc: Koen Kooi <koen@dominion.thruhere.net>
Cc: Paul Eggleton <paul.eggleton@linux.intel.com>
Cc: Ross Burton <ross.burton@intel.com>
Cc: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-05-26 10:57:52 +01:00
Marek Vasut
a33a567644 kernel: Add basic fitImage support
This patch adds support for generating a kernel fitImage, which is
a a successor to the uImage format. Unlike uImage, which could only
contain the kernel image itself, the fitImage can contain all kinds
of artifacts, like the kernel image, device tree blobs, initramfs
images, binary firmwares etc. Furthermore, the fitImage supports
different kinds of checksums, not only CRC32 like the uImage did.
Last, but not least, fitImage supports signatures such that either
the whole image or it's parts can be signed and then in turn can
be verified by the bootloader.

So far we only add support for wrapping the kernel image and DTB
into the fitImage. The fitImage uses the sha1 checksum, which is
the default.

(From OE-Core rev: d92664278cfd0fdb455f78f73f2c44a9ee1716e4)

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Richard Purdie <richard.purdie@linuxfoundation.org>
Cc: Koen Kooi <koen@dominion.thruhere.net>
Cc: Paul Eggleton <paul.eggleton@linux.intel.com>
Cc: Ross Burton <ross.burton@intel.com>
Cc: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-05-26 10:57:52 +01:00
Marek Vasut
bb68c7c9f0 kernel: Separate out uboot_prep_kimage
Separate the function which prepares the kernel for packing into
uImage into separate class, so this function can be reused by the
fitImage class.

(From OE-Core rev: 2d1f700ad098c942834524891ccc90e3a391a09f)

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Richard Purdie <richard.purdie@linuxfoundation.org>
Cc: Koen Kooi <koen@dominion.thruhere.net>
Cc: Paul Eggleton <paul.eggleton@linux.intel.com>
Cc: Ross Burton <ross.burton@intel.com>
Cc: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-05-26 10:57:51 +01:00
Marek Vasut
7f131b8863 kernel: Pull uImage generation into separate class
Pull the uImage image format generation from kernel.bbclass into
a separate kernel-uimage.bbclass. Introduce new KERNEL_CLASSES
variable, which allows registration of additional classes which
implement new kernel image types. The default value of is to
register kernel-uimage to preserve the original behavior.

(From OE-Core rev: 086536ac84fcc9350802c09166f600becd52a1f8)

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Richard Purdie <richard.purdie@linuxfoundation.org>
Cc: Koen Kooi <koen@dominion.thruhere.net>
Cc: Paul Eggleton <paul.eggleton@linux.intel.com>
Cc: Ross Burton <ross.burton@intel.com>
Cc: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-05-26 10:57:51 +01:00
Marek Vasut
12f983b66a kernel: Pull out the linux.bin generation
Pull the generation of linux.bin image, which is then packed into uImage,
into a separate function. No functional change.

(From OE-Core rev: 2879e5423aff8df5731712b853d71a73047a2fd7)

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Richard Purdie <richard.purdie@linuxfoundation.org>
Cc: Koen Kooi <koen@dominion.thruhere.net>
Cc: Paul Eggleton <paul.eggleton@linux.intel.com>
Cc: Ross Burton <ross.burton@intel.com>
Cc: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-05-26 10:57:51 +01:00
Marek Vasut
88d79fee80 kernel: Rework do_uboot_mkimage
Rework the function so part it's internals can be re-used by fitImage
image type. The name of the temporary file , linux.bin , is recycled
a little more as it's now used for both the case where it is gzip
compressed and where it is not. This should be fine, since the file
is temporary and removed after the uImage was created anyway.

There is no functional change here.

(From OE-Core rev: 63e3816b161f8659850d6123a53bdf128780e13d)

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Richard Purdie <richard.purdie@linuxfoundation.org>
Cc: Koen Kooi <koen@dominion.thruhere.net>
Cc: Paul Eggleton <paul.eggleton@linux.intel.com>
Cc: Ross Burton <ross.burton@intel.com>
Cc: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-05-26 10:57:51 +01:00
Marek Vasut
92864a9830 kernel: Clean up KERNEL_IMAGETYPE_FOR_MAKE
Remove the lambda function setting KERNEL_IMAGETYPE_FOR_MAKE and instead
set it in the anonymous python function. This also allows us to handle
image types which are not supported directly by kernel, but require some
other kernel target to be built. This is the case for example with the
fitImage, which is the uImage successor.

There is no functional change.

(From OE-Core rev: a1690131691507bbf5853540229b3ad775b836bf)

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Richard Purdie <richard.purdie@linuxfoundation.org>
Cc: Koen Kooi <koen@dominion.thruhere.net>
Cc: Paul Eggleton <paul.eggleton@linux.intel.com>
Cc: Ross Burton <ross.burton@intel.com>
Cc: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-05-26 10:57:51 +01:00
Richard Purdie
fe405a4968 native: Improve PROVIDES handling
Since this class works on pre finalised data, the logic hasn't needed
to be exact. If we change the way the finalised data works, we find
that certain dependencies can be dropped (e.g. pn isn't in the name).

To fix this, restructure the function to alter each entry in turn
and not drop any entries.

(From OE-Core rev: 4434977ccb95f8f366ba133366093b8c7ef1f718)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-05-26 10:57:51 +01:00
Richard Purdie
a9cb4dd158 autotools: Use space with prepend to clean up variable whitespace
Correct the whitespace in this variable to make this more readable when
debugging, no functional change.

(From OE-Core rev: 4bb586a470a15cf3b93538e8c749a6fb8479c990)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-05-26 10:57:50 +01:00
Mark Hatle
7a7c6b021f image.bbclass: Add a method for creating a companion debug filesystem
The companion debug filesystem contains only the package database and the
complementary *-dbg packages for the main filesystem component.  This is
useful in a production environment to produce a companion filesystem capable
of remote system debugging, without requiring corresponding debug symbols or
source code on the device.

(From OE-Core rev: 1a6ed48c65f922c66b005aa966d7ee4878ee95e3)

Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Robert Yang <liezhi.yang@windriver.com>

If dbg pkgs have already been installed to the rootfs image,
the installation to companion debug filesystem will fail,
because both of image creation make use of the same pm
database.

In this situation, try to copy installed dbg files from rootfs
image to companion debug filesystem.

Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Acked-by: Christopher Larson <chris_larson@mentor.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-05-24 07:19:21 +01:00
Leonardo Sandoval
ace08a2923 package.bbclass: Include missing variables on PACKAGEVARS
PACKAGEVARS appended on this commit:

    LICENSE SECTION
    pkg_preinst
    pkg_prerm
    RREPLACES
    GROUPMEMS_PARAM
    SYSTEMD_AUTO_ENABLE

[Yocto #7754]

(From OE-Core rev: 64a3a4f1b4c6692f0ba9a7192a8e5c2f43beeef2)

Signed-off-by: Leonardo Sandoval <leonardo.sandoval.gonzalez@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-05-24 07:19:20 +01:00
Andre McCurdy
98a3f87518 toolchain-scripts.bbclass: fix quoting for CCACHE_PATH
Single quotes prevent expansion of $sdkpathnative$bindir.

(From OE-Core rev: 986e5f37f3450077c843777c22df6b2d0f9502c5)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-05-24 07:19:19 +01:00
Paul Eggleton
1b2332d338 classes/buildhistory: ensure that git user email and name are set
The git user.email and user.name settings must be set or the commit to
the buildhistory repo (when BUILDHISTORY_COMMIT is set to "1") will
fail. If the user hasn't set these, set some dummy values since the
actual value is unlikely to be particularly useful and it's far worse
for the commit not to be done leaving the repository in a partially set
up state.

Prompted by [YOCTO #6973].

(From OE-Core rev: f62255bfa6c5a322c867b7c4ea5686ea7bfab3fe)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-05-24 07:19:18 +01:00
Chen Qi
9da81df30e buildstats-summary: add eventmask
Add eventmask 'bb.event.BuildCompleted' for buildstats_summary handler to avoid
running the codes in the handler everytime there's an event.

The codes in buildstats_summary only need to run for bb.event.BuildCompleted.
So add this event mask.

Also, we remove the redundant isinstance() statement in the handler.

(From OE-Core rev: 3b635d34d44ee65f8cf93bc180f1ccc1095f2174)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-05-24 07:19:18 +01:00
Bruce Ashfield
03abfcb034 linux-yocto: drop suggestion of devshell for patch failures
When a patch fails to apply, the kernel-yocto bbclass attempted to
be helpful and suggest that devshell be used to fix the issue.

The only problem is that you can't get to devshell if a patch is
failing.

We drop this bad advise and instead point to the linux source directory.

[YOCTO: #6202]

(From OE-Core rev: d6a0c0f60ea85235479d968f75d067a10ce21574)

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-05-24 07:19:17 +01:00
Jussi Kukkonen
9d8c61acd0 sanity.bbclass: import subprocess in correct function
check_sanity() no longer needs the subprocess module but
sanity_handle_abichanges() does use subprocess.call().

(From OE-Core rev: 469b53fb3bb94c7e5e9fb53d07cec2292b13c87d)

Signed-off-by: Jussi Kukkonen <jussi.kukkonen@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-05-22 13:29:47 +01:00
Aníbal Limón
45bf783a23 license_class: Add explicity avoid of CLOSED license in validations
The CLOSED license isn't a generic license it is a set and can
be any closed source license.

[YOCTO #7752]

(From OE-Core rev: f33651a46d12bb763a4e3c13438d084411406849)

Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-05-22 13:29:47 +01:00
Richard Purdie
5bcf9666a6 sstate: Add handling of do_shared_workdir task
Changing TMPDIR and rebuilding an image was resulting in rebuilds of
kernels due to dependencies on the shared_workdir task. If installed
from sstate, nothing needs this task so add it to the whitelisted
task patterns.

After this change, the kernel does not rebuild when a new TMPDIR and
hot sstate cache is used.

(From OE-Core rev: 624f575298c74272b69560735cb6f13f5a7761c1)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-05-21 10:51:15 +01:00
Shiqun Lin
66e2eef21d sanity.bbclass: improve the sanity check for PATH and BBPATH
Build fails if "./" is in the PATH

To reproduce the issue:

  $ export PATH="./:$PATH"
  $ make -C build-tools elfutils

  Error: ./ld: unrecognized option '--sysroot=/'

(From OE-Core rev: b6a23572b8f14e27d4341892b9069e7cac1e9c14)

Signed-off-by: Shiqun Lin <Shiqun.Lin@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-05-20 21:41:09 +01:00
Leonardo Sandoval
5d426794f9 useradd.bbclass: Remove base-passwd dependency
shadow-sysroot (another useradd dependency) recipe already includes
base-passwd dependency, so removing it from useradd class.

This fixes the compilation issue observed when a recipe depends
on another where the latter inherits from useradd as in the
following scenario:

https://bugzilla.yoctoproject.org/show_bug.cgi?id=7724#c0

[Yocto #7724]

(From OE-Core rev: a68a797c7aec607a0720ec5421baf6be821803b8)

Signed-off-by: Leonardo Sandoval <leonardo.sandoval.gonzalez@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-05-16 22:31:51 +01:00
Mario Domenech Goulart
24b8347724 native.bbclass: avoid unintended substring replacement when setting PROVIDES
The way native_virtclass_handler was implemented leaded to
unintended substring replacements when setting PROVIDES for
native providers, in case the original PROVIDES value contains
providees with common substrings.

Here's a practical case where the old behavior was problematic:
the oracle-jse-jdk-x86-64 recipe provides both virtual/java and
virtual/javac:

Before:

$ bitbake -e oracle-jse-jdk-x86-64-native | grep ^PROVIDES=
PROVIDES="oracle-jse-jdk-x86-64-native  virtual/java-native virtual/java-nativec"

After:

$ bitbake -e oracle-jse-jdk-x86-64-native | grep ^PROVIDES=
PROVIDES="oracle-jse-jdk-x86-64-native virtual/java-native virtual/javac-native"

Change-Id: I8186992dae58e37c2a2364586360ff9b7da9198f
(From OE-Core rev: c28291f1fb07fbc80275d9bceefed642c963e204)

Signed-off-by: Mario Domenech Goulart <mario@ossystems.com.br>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-05-16 22:31:50 +01:00
Richard Purdie
1237db6ee3 sstate: Improve HASHCHECK function to make siginfo configurable
In some cases we want to test the availability of siginfo files, in some
cases we do not and really want the .tgz files (which may or may
not be present too). This makes adds a parameter to the function to allow
this.

(From OE-Core rev: e8867b97a772f8e64fe209436c15d382b2175ca0)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-05-15 17:44:59 +01:00
Richard Purdie
f5f2467e4b kernel/rm_work: Improve interaction
The do_shared_workdir task does leave behind the necessary information in
shared-work after it completes. We don't make this a "full" sstate task
however since that means tarring up and copying what is usually a large
amount of data which would be better extracted straight from the original
SCM.

The issue with rm_work occurs since it removes the do_shared_workdir stamp
meaning subsequent builds will add it back if they need to touch any kernel
modules for example. This ends up triggering a near enough complete kernerl
rebuild since if configure reruns, populate_sysroot has to rerun.

This change promotes the task to have a "setscene" variant but it doesn't use
any of the sstate class lifting to generate the sstate file. The sstate function
will therefore never get called since the sstate object will never exist.

We can add the task to the list of tasks rm_work promotes to a setscene variant
and unwanted rebuilds of the kernel should be avoided.

(From OE-Core rev: 55b4f7fd217f0c65d457c731150340c18fb3fa19)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-05-15 17:44:59 +01:00
Richard Purdie
534da08bfc base: Avoid find race
In a similar way to http://git.yoctoproject.org/cgit.cgi/poky/commit/?id=aa1438b56f30515f9c31b306decef7f562dda81f
and http://git.yoctoproject.org/cgit.cgi/poky/commit/?id=527b28c10955daf0387597020d69593ce24bcaa4
there is a find race in base.bbclass.

For recipes with PACKAGES_remove = "${PN}", the find which removes
.la files can race against deletion of other directories in WORKDIR
e.g.:

find: '/home/autobuilder/yocto-autobuilder/yocto-worker/nightly-oe-selftest/build/build/tmp/work/qemux86_64-poky-linux/init-ifupdown/1.0-r7/sstate-build-populate_lic': No such file or directory
| WARNING: /home/autobuilder/yocto-autobuilder/yocto-worker/nightly-oe-selftest/build/build/tmp/work/qemux86_64-poky-linux/init-ifupdown/1.0-r7/temp/run.do_configure.6558:1 exit 1 from
| find /home/autobuilder/yocto-autobuilder/yocto-worker/nightly-oe-selftest/build/build/tmp/work/qemux86_64-poky-linux/init-ifupdown/1.0-r7 -name \*.la -delete

Fix the race in the same way.

[YOCTO #7522]

(From OE-Core rev: 90861b8908d254154f4d1d613471070df8013da8)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-05-14 15:22:52 +01:00
Dmitry Eremin-Solenikov
0bc3a79f28 systemd.bbclass: drop has_exactly_one_service setting
The has_exactly_one_service variable was used in now deleted code. Drop
this part to make code cleaner.

(From OE-Core rev: 8acee5a86efd146186e0de1c41d0e4e4223d8b36)

Signed-off-by: Dmitry Eremin-Solenikov <dmitry_eremin@mentor.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-05-14 11:44:00 +01:00
Mariano Lopez
f6e13ec535 sanity.bbclass: Increased verbosity for connectivity check
The connectivity sanity error doesn't tell you which URL failed to fetch nor how
it failed.

This provides the URL that failed and why it failed using BBFetchException
messages during the connectivity check.

[YOCTO #7592]

(From OE-Core rev: e025d1ff02795fc9236b41606e916749f0d5e959)

Signed-off-by: Mariano Lopez <mariano.lopez@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-05-14 11:43:57 +01:00
Richard Purdie
b12d79ef5e module/module-base/lttng-modules: Improve kernel module dependencies
If we have DEPENDS = "virtual/kernel" is means that the kernel module
depends on the kernel's do_populate_sysroot task. This is not entirely
desireable since that depends on do_install which depends on
do_compile_kernelmodules and so on. In a situation where rm_work in involved
this can cause some pretty length build cycles after the kernel workdir
has been cleaned up by rm_work.

As well as removing this, take the opportunity to clean up duplicated
dependency lines, tweak the dependency of make_scripts for the same
reason and generally try and make things more readable.

(From OE-Core rev: a641247d262971db2d44815c5a668e7e50bdaf4f)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-05-14 11:43:56 +01:00
Richard Purdie
e6bb5dbb62 insserv: Remove
Remove insserv from OE-Core. It did have uses but we've optimised the sysvinit
scripts as needed and there are other directions init systems are moving now.
It no longer belongs in the core.

(From OE-Core rev: 9650efb5bb8fc77627dd567e43f8768b34a22abb)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-05-12 13:10:17 +01:00
Aníbal Limón
2d69dd2caf license_class: license_create_manifest improvment
Use image_list_installed_packges instead of open manually the package
manifest and iterate over it.

(From OE-Core rev: 7ffe10df73cc20d10fcd41b121074445273bd60e)

Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-05-09 22:28:14 +01:00
Aníbal Limón
b394cd4c7e license: Add support for handle INCOMPATIBLE_LICENSE in manifest creation
When INCOMPATIBLE_LICENSE's is specified it need to be removed from
license.manifest and also avoid copy to target image.

Add ManifestVisitor that walk the license string searching for
INCOMPATIBLE_LICENSE's if found remove it.

[YOCTO #6765]

(From OE-Core rev: d1278570041029d7c9fc6ce657e9a1701a421841)

Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-05-09 22:28:14 +01:00
Aníbal Limón
8c7082de0a license_class: Generalize license_ok function
Add dont_want_licenses as parameter to license_ok function and move it
to oe.license module in order to use in other modules.

(From OE-Core rev: 243fe3a4583a21ad6c0b2a26196ed18d41740f7a)

Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-05-09 22:28:14 +01:00
Aníbal Limón
b971eb0313 license_class: Reimplemented manifest creation in python
Reimplemented license_manifest_create from shell to python for
INCOMPATIBLE_LICENSE handle using oe.license module.

Optimizations are made to avoid license copy now uses a hardlink
and symbolic link this helps to save space during build.

(From OE-Core rev: a7976cbae34dc1bd08395afb8d720d43c5f0062e)

Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-05-09 22:28:14 +01:00
Joe Slater
7405f473aa distro_features_check: add any of test
Add a test for distro features including one or more
items in a list.  This is useful when, for example, we
need either x11 or directfb as a feature.

(From OE-Core rev: 60157da8a6df0c7ec5bb572bea5124af273bab08)

Signed-off-by: Joe Slater <jslater@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-05-09 22:26:45 +01:00
Bruce Ashfield
a28371be8b kernel-yocto: propagate in tree defconfigs to WORKDIR
As reported by Steffen Pankratz <Steffen.Pankratz@elektrobit.com>, the
previous logic of KBUILD_DEFCONFIG processing would not propagate an in
tree defcofig to WORKDIR if one was not already present.

We fix the propagation by copying the in tee config if a defconfig is
not already in WORKDIR.

Additionally we only warn (versus copying) if an in tree configuration
is specified, is different than the WORKDIR version and isn't copied.

(From OE-Core rev: 58cc903a5156063b24e48011438a709cb6e09f54)

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-05-09 22:26:44 +01:00
Bruce Ashfield
c1267093c6 linux-yocto: fix race between checkout and meta data generation
There are two tasks that must run before a linux-yocto kernel is built.

  - Kernel checkout and relocation to work-shared (kernel_checkout)
  - Meta data gathering and configuration prep (kernel_metadata)

The current task definitions for both are simply "before do_patch",
which is correct, but kernel_checkout must run before and not race with
kernel_metadata.

So we set the definition of kernel_checkout to be more specific and
enforce the proper ordering.

[YOCTO: #7731]

(From OE-Core rev: 9d806f3d05de918952f839f5e595cb71cd1261db)

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-05-09 22:26:44 +01:00
Khem Raj
0ea0f6d04a insane: Support aarch64 on musl
musl 1.1.8 supports aarch64

Change-Id: Ie8d39a29dcb7a41c8d59d2a00528b6add8a7655c
(From OE-Core rev: e0fdcfe888236abf5751645e9b5cabcc834354fa)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-05-07 13:40:36 +01:00
Ed Bartosh
02d0a003d6 kernel.bbclass: Fix race condition
Race condition between do_compile_kernelmodules and do_shared_workdir
tasks occurs when do_compile_kernelmodules changes files in
include/generated/* while do_shared_workdir tries to copy them to
shared working directory.

Fixed race by moving do_shared_workdir after do_compile but before
do_compile_kernelmodules.

[YOCTO #7321]

(From OE-Core rev: b4ec689f71fe9504559c1921c893f5e096d6b744)

Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-05-07 13:40:36 +01:00
Paul Eggleton
e01db42f69 classes/buildstats: misc cleanups
* Rename BNFILE and DEVFILE so that they are clearly specific to this
  class, since they end up in the global scope
* Use "with open" when opening files consistently
* Use getVar('PF', True) instead of expand('${PF}')
* Drop some unnecessary assignments

(From OE-Core rev: 2392c9bae9fc7732ebafb8c2cd42e49ab281afc9)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-05-07 13:40:36 +01:00
Paul Eggleton
9e9d25dc96 classes/buildstats: don't catch all errors from mkdirhier
mkdirhier() doesn't raise an exception if the directory exists, so if it
does raise one we should just be failing, otherwise we're just going
to hit errors later anyway.

(From OE-Core rev: 76daab82185851608e5e225487e411504ecb6569)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-05-07 13:40:36 +01:00
Paul Eggleton
c045129ce9 classes/buildstats: whitespace cleanup
* Drop trailing whitespace
* Use spaces around equals in assignments
* Replace an errant tab with spaces

(From OE-Core rev: e6d2b407979869219da1f15ed4b5c1c804548fce)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-05-07 13:40:36 +01:00
Alejandro Hernandez
528a256545 python3: Change python BASEVERSION to 3.4
Changes PYTHON_BASEVERSION = 3.4 to fix errors when installing
python3-distribute and probably other libraries

(From OE-Core rev: 59bad496fb57fdc5356ddc343f58eb69ff207863)

Signed-off-by: Alejandro Hernandez <alejandro.hernandez@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-05-07 13:40:33 +01:00
Nathan Rossi
51985eb1ec siteinfo.bbclass: Add MicroBlaze big endian target info
* Add the target info for the 'microblazeeb' target which matches the
  default MicroBlaze target info

(From OE-Core rev: 3e5f4998869d9e01e040a64657315e21167e8355)

Signed-off-by: Nathan Rossi <nathan.rossi@xilinx.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-05-05 22:15:17 +01:00
Nathan Rossi
8473de969f insane.bbclass: Add MicroBlaze big endian target info
* Add the target info for the 'microblazeeb' target which matches the
  default MicroBlaze target info

(From OE-Core rev: 9c02b5af28f43b0b8ac825dffdbfa49a71c63132)

Signed-off-by: Nathan Rossi <nathan.rossi@xilinx.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-05-05 22:15:17 +01:00
Nathan Rossi
55c96db259 kernel-arch: Update mapping for MicroBlaze architectures
* Add pattern matching for the 'microblazeeb' architecture which maps to
  'microblaze' in the same way as 'microblazeel'

(From OE-Core rev: c2f488f629b3dd604db171772b762d46a28c2895)

Signed-off-by: Nathan Rossi <nathan.rossi@xilinx.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-05-05 22:15:17 +01:00
Andre McCurdy
09fa915b56 mirrors.bbclass: drop support for svk sources
The svk fetcher was removed from bitbake 1.22, so svk support should
logically have been removed from oe-core Daisy onwards.

(From OE-Core rev: 9560d58596ceb50280b81296688883f3fca99aa6)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-05-05 22:15:17 +01:00
Richard Purdie
eb4306e4b2 bitbake.conf/base.bbclass: Drop PRINC support
PRINC is no longer needed since we have the PR service instead
which people should be using. Drop the PRINC code.

This has been deprecated with a warning and then an error for quite some
time so we can remove it now.

(From OE-Core rev: a4d530bcf55f03258078c10a123e2717444e1060)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-05-05 22:15:17 +01:00
Richard Purdie
a7afc0468f multilib: Tweak value of PN used for OVERRIDES
Currently, PN is used in overrides which is expanded to have a MLPREFIX. This
means and pn- overrides without the prefix would be ignored which is not what
is usually expected.

We noticed huge problems using poky-lsb with multilib since the per recipe
overrides were not applied. This adds in handling for PN with and without
the prefix. This should unbreak world-lsb builds on the autobuilder.

(From OE-Core rev: b4cf6631efd526728ac515ced1a7e578674ca6c1)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-05-03 11:43:51 +01:00
Richard Purdie
bae7794112 package: Fix license exclusion packaging errors
Currently the license exclusion code removes packages from PACKAGES
pre population of the package directories. This means that the FILES
entries for some packages are not seen and invariably results in
packaging errors.

Instead, remove the packages from PACKAGES post population of the packages
so the usual FILES entries work as expected but the file are not placed
into any packages and no packages containing embargoed licenses are generated.

This avoids errors from gcc-runtime with GPLv3 exclusion like:

ERROR: QA Issue: gcc-runtime: Files/directories were installed but not shipped in any package:
  /usr/share
  /usr/src
  /usr/share/gcc-4.9.2
  /usr/share/gcc-4.9.2/python
Please set FILES such that these items are packaged. Alternatively if they are unneeded, avoid installing them or delete them within do_install. [installed-vs-shipped]

(From OE-Core rev: 09c3d648c95fe88197c15d656bda1c9303aa2079)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-04-30 23:04:18 +01:00
Jackie Huang
9c2e9616c2 license.bbclass: allow copying license not in common licenses
Some package like linux-firmware has many licenses that aren't in any
way common, and new ones will be added from time to time, in order to
avoid adding bunch of such common license files that are only applicable
to a specific package, NO_GENERIC_LICENSE is added to allow copying license
not in common licenses, it should be used in the recipe as:

NO_GENERIC_LICENSE[<license_name>] = "<license file in fetched source>"

e.g.
NO_GENERIC_LICENSE[Firmware-Abilis] = "LICENCE.Abilis.txt"

(From OE-Core rev: 56930227128d55dab22f79138152b29cf040ceff)

Signed-off-by: Jackie Huang <jackie.huang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-04-30 23:04:16 +01:00
Richard Purdie
7b88042b80 gcc-shared-source: Add PV to PN
This means you can have one gcc version for some gcc recipes
(e.g. crosssdk/nativesdk) and another gcc version for target code.

Also remove the preferred version entry from the default toolchains
list since the version issue is now handled automatically.

We also need to specifically handle gcc-source in the license handling
code since expanding ${PV} in the base class isn't possible. Since
gcc-source doesn't generate any packages directly this shouldn't be
an issue and whitelisting in this way is easiest (and matches the
rest of the toolchain handling).

(From OE-Core rev: 67db7182faf6742b0d971d61d8c5ba34f69d2e12)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-04-30 23:04:12 +01:00
Ed Bartosh
74dc93651f split_and_strip_files: regroup hardlinks to make build deterministic
Reverted 7c0fd561bad0250a00cef63e3d787573112a59cf

Created separate group of hardlinks for the files inside
the same package. This should prevent stripped files to be
populated outside of package directories.

This turns out not to be straightforward and has overlap with the
other hardlink handling code in this area. The code is condensed
into a more concise and documented form.

[Original patch from Ed with tweaks from RP]

[YOCTO #7586]

(From OE-Core rev: 82d00f7254b7d3bb6a167d675d798134884d1b19)

Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-04-29 10:58:55 +01:00
Richard Purdie
527b28c109 autotools: Fix find races on source directory
In a similar way to http://git.yoctoproject.org/cgit.cgi/poky/commit/?id=aa1438b56f30515f9c31b306decef7f562dda81f
there are more find races in the autotools class.

For recipes with PACKAGES_remove = "${PN}", the find which removes
.la files can race against deletion of other directories in WORKDIR
e.g.:
find: '/home/autobuilder/yocto-autobuilder/yocto-worker/nightly-oe-selftest/build/build/tmp/work/qemux86_64-poky-linux/init-ifupdown/1.0-r7/sstate-build-populate_lic': No such file or directory
| WARNING: /home/autobuilder/yocto-autobuilder/yocto-worker/nightly-oe-selftest/build/build/tmp/work/qemux86_64-poky-linux/init-ifupdown/1.0-r7/temp/run.do_configure.6558:1 exit 1 from
| find /home/autobuilder/yocto-autobuilder/yocto-worker/nightly-oe-selftest/build/build/tmp/work/qemux86_64-poky-linux/init-ifupdown/1.0-r7 -name \*.la -delete

Fix the remaining races in the same way.

[YOCTO #7522]

(From OE-Core rev: 79770ca14a0cc2f4112fb4d8dc2d8832701b6d5d)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-04-29 10:58:54 +01:00
Richard Purdie
e794d09924 testimage: Improve sdk handling of TEST_SUITES
Currently TEST_SUITES is used for both target image and sdk versions which
can be confusing. This introduces TEST_SUITES_SDK for the sdk version of
the code so that the different test sets can be specified independently.

(From OE-Core rev: ffd84177c68a6c86e654a9ba2512c299b40ec5e9)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-04-29 10:58:54 +01:00
Richard Purdie
591e6a6dcb sstate: Use SSTATE_DIR for FILESPATH
FILESPATH was only being overridden in one fetch location, it should be
equally handled in both.

Also use SSTATE_DIR as FILESPATH so that mirror urls which do remapping
can search the local SSTATE_DIR for other paths.

Also ensure that MIRRORS is removed in both locations, previously
it was only unset in one but both codepaths should be consistent.

(From OE-Core rev: ab6bebddbdefec323e284b6438d9c57b3d8a2cc3)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-04-29 10:58:54 +01:00
Richard Purdie
0007b5c596 testimage: Fix sdk test manifest handling
Fix SDK_MANIFEST -> SDK_TARGET_MANIFEST and add support for host
version too which is useful in SDK QA tests.

(From OE-Core rev: df91dd8d064dc3e59c7f057d3f869500a233a76f)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-04-29 10:58:54 +01:00
Dmitry Eremin-Solenikov
5c93858a51 icecc.bbclass: blacklist libgcc-initial
Building libgcc-initial with IceCC enabled can fail with the CPP sanity
check error in the following case (using ARM for example):
* sysroot contains cross gcc built for another ARM variant
* sysroot contains initial cross gcc built to suit the target machine
* bitbake tries to configure libgcc-initial
* libgcc-initial calls icecc wrapper
* icecc wrapper calls non-initial cross gcc via the full path
* non-initial cross gcc looks for the headers in the wrong place
* BOOM

(From OE-Core rev: 0fe64b080cc9854979b501908060aeb9811d9973)

Signed-off-by: Dmitry Eremin-Solenikov <dmitry_eremin@mentor.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-04-28 07:56:55 +01:00
Chen Qi
6bae518c10 populate_sdk_base: also record the host part into manifest
For now, we can create manifest for the target part for SDK.
I think it's nice to have a place for users to look into to examine contents
of the host part of SDK.

This also affects uninative-tarball and buildtools-tarball as they
inherit populate_sdk.bbclass. After this change, we could have a manifest file
created in the deploy directory containing a list of packages used to
construct them.

[YOCTO #7604]

(From OE-Core rev: 3069641589942f52b11e88cfea564ebba4beb3c2)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-04-28 07:56:54 +01:00
Ross Burton
87de892d68 ptest: add recommends to ptest-runner
If you're installing ptest packages into an image there's a good chance
you want to run the tests.  Assist with this by recommending
ptest-runner in the -ptest packages.

(From OE-Core rev: a9eededcb33b2ee41a061298610126436dfc2c11)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-04-27 15:34:59 +01:00
Chen Qi
2f78aebed2 populate_sdk_base: avoid executing empty function
`bitbake uninative-tarball' raises the following warning.

    WARNING: Function  doesn't exist

This is because SDK_PACKAGING_FUNC is set to "" in its recipe.
Anyway, we need to check this variable to avoid executing empty function.

[YOCTO #7598]

(From OE-Core rev: 4c0ae7cce06de15f6881654ecec7f8bb743ff389)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-04-24 11:14:38 +01:00
Peter Saunderson
4af6384829 siteinfo.bbclass: Added Epiphany archinfo
Adding machine definitions for the epiphany (http://www.adapteva.com/) chip.

(From OE-Core rev: 2081033c11dcd81bd290bc1d6c22ea84eb97923f)

Signed-off-by: Peter Saunderson <peteasa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-04-24 11:06:56 +01:00
Peter Saunderson
b16f22b5ec insane.bbclass: Added Epiphany machine definitions
Adding machine definitions for the epiphany (http://www.adapteva.com/) chip using https://github.com/adapteva/epiphany-binutils-gdb.
For binutils implementation that defines TARGET_ARCH MACHINE "epiphany": 4643 See https://github.com/adapteva/epiphany-binutils-gdb/blob/epiphany-binutils-2.24/bfd/elf32-epiphany.c
For example layer that uses these defines see https://github.com/peteasa/meta-epiphany.git

(From OE-Core rev: 937471ff2c633865d68e6ee73e0ec462d3768116)

Signed-off-by: Peter Saunderson <peteasa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-04-24 11:06:55 +01:00
tprrt
376b6b7068 image: zap_empty_root_password doesn't handle passwd file in shadow case
/etc/passwd isn't editted if /etc/shadow exists and should be else
it can cause problems with some login providers such as toybox.

(From OE-Core rev: 09ac2664fba223111c20c3000af6b8d5cdaabeb1)

Signed-off-by: tprrt <tprrt@tupi.fr>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-04-24 11:06:55 +01:00
Patrick Ohly
bef330582e rootfsdebugfiles.bbclass: quick-and-dirty installation of additional files
The main motivation for this class was the observation that
a) a core-image can hang under qemu when the kernel does not
   have enough entropy to generate the ssh host key
b) ssh complains about changing ssh host key files when
   rebooting the same machine with different images

For debugging it is okay to reuse an ssh host key generated on the device
before. There may be also similar use cases, so the class is generic enough to
also copy more than one file or directory, with dropbear_rsa_host_key given as
example.

The documentation and naming of the class makes it clear that it
should not be used for production images.

(From OE-Core rev: ae4d605d802edb4c8bdb2dbee1b0c36d7730c07f)

Signed-off-by: Patrick Ohly <patrick.ohly@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-04-24 11:06:55 +01:00
Paul Eggleton
f61e57293e classes/populate_sdk_base: Show title in SDK installer
Show a friendly title when running the SDK installer, so the user knows
what SDK they are installing. The title is controlled by the
SDK_INSTALLER_TITLE variable and includes the distro name and SDK
version by default.

(From OE-Core rev: 0af913887f4c0a79c6b950bd5d57c06333520a14)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-04-24 11:06:55 +01:00
Paul Eggleton
617a02d0fd classes/populate_sdk_ext: add warning against editing configuration
It may be tempting to edit the configuration of the encapsulated version
of the build system, however that is not the way it is intended to be
used, so add a warning against doing this.

(From OE-Core rev: 80bbd763448fa061e3dbc3ace8d6bc9f65e4bfaf)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-04-24 11:06:54 +01:00
Paul Eggleton
0c09ff23a5 classes/populate_sdk_ext: disable network connectivity check
Most of the time we shouldn't be downloading anything within the
extensible SDK (since it's all pre-built and we have the sstate
artifacts) therefore there's really no need for a connectivity
check, in fact it may just get in the way.

(From OE-Core rev: beaf851ae8aadb5b9e3c0b9840479efcbb05be23)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-04-24 11:06:54 +01:00
Martin Jansa
29361a0e07 fontcache: allow to pass different fontconfig cache dir
(From OE-Core rev: 40f7986313277ef815b19331388bca124187bfeb)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-04-21 07:20:25 +01:00
Martin Jansa
50c2ef0a5d image.bbclass: Allow to remove do_rootfs -> virtual/kernel:do_packagedata dependency
* this is causing dependency loops in some cases
  e.g. linux-hp-tenderloin depends on initramfs-android-image, but
    commit 41f0f86ec0a3e0b6f6c9bb4ef71a4215c00bf66c
    Author: Richard Purdie <richard.purdie@linuxfoundation.org>
    Date:   Tue Jan 27 15:24:52 2015 +0000
    Subject: image: Add missing depends on virtual/kernel for depmod data
  adds also dependency between <image>.do_rootfs and virtual/kernel:do_packagedata
  causing this dependency loop:

Dependency loop #1 found:
  Task 78 (meta-smartphone/meta-hp/recipes-kernel/linux/linux-hp-tenderloin_git.bb, do_install)
    (dependent Tasks ['linux-hp-tenderloin, do_compile',
                      'pseudo, do_populate_sysroot'])
  Task 88 (meta-smartphone/meta-hp/recipes-kernel/linux/linux-hp-tenderloin_git.bb, do_package)
    (dependent Tasks ['rpm, do_populate_sysroot',
                      'pseudo, do_populate_sysroot',
                      'linux-hp-tenderloin, do_install',
                      'initramfs-android-image.bb, do_packagedata',
                      'glibc, do_packagedata',
                      'file, do_populate_sysroot',
                      'gcc-runtime, do_packagedata'])
  Task 89 (meta-smartphone/meta-hp/recipes-kernel/linux/linux-hp-tenderloin_git.bb, do_package_write_ipk)
    (dependent Tasks ['linux-hp-tenderloin, do_package',
                      'opkg-utils, do_populate_sysroot',
                      'linux-hp-tenderloin, do_packagedata',
                      'pseudo, do_populate_sysroot'])
  Task 560 (meta-smartphone/meta-android/recipes-core/images/initramfs-android-image.bb, do_rootfs)
    (dependent Tasks ['bash, do_package_write_ipk',
                      'run-postinsts, do_package_write_ipk',
                      'db, do_package_write_ipk',
                      'update-rc.d, do_populate_sysroot',
                      'android-tools-conf, do_package_write_ipk',
		      'base-passwd, do_package_write_ipk',
                      'initramfs-boot-android, do_package_write_ipk',
		      'expat, do_package_write_ipk',
                      'bzip2, do_packagedata',
		      'glibc-initial, do_packagedata',
                      'openssl, do_package_write_ipk',
                      'bzip2, do_package_write_ipk',
		      'busybox, do_packagedata',
                      'zlib, do_packagedata',
		      'qemuwrapper-cross, do_packagedata',
                      'base-passwd, do_packagedata',
		      'busybox, do_package_write_ipk',
                      'zlib, do_package_write_ipk',
		      'qemuwrapper-cross, do_package_write_ipk',
		      'gcc-runtime, do_package_write_ipk',
		      'gettext, do_packagedata',
		      'initramfs-boot-android, do_packagedata',
		      'gettext, do_package_write_ipk',
		      'libgcc-initial, do_packagedata',
                      'expat, do_packagedata',
                      'gdbm, do_packagedata',
		      'depmodwrapper-cross, do_package_write_ipk',
                      'libgcc-initial, do_package_write_ipk',
                      'glibc-initial, do_package_write_ipk',
                      'linux-libc-headers, do_packagedata',
                      'glibc, do_packagedata',
                      'initramfs-android-image.bb, do_packagedata',
                      'glibc, do_package_write_ipk',
                      'sqlite3, do_packagedata',
                      'initramfs-android-image.bb, do_package_write_ipk',
                      'sqlite3, do_package_write_ipk',
                      'android-tools-conf, do_packagedata',
                      'ncurses, do_packagedata',
                      'openssl, do_packagedata',
                      'android-tools, do_packagedata',
                      'ncurses, do_package_write_ipk',
                      'cryptodev-linux, do_packagedata',
                      'android-tools, do_package_write_ipk',
                      'pseudo, do_populate_sysroot',
                      'cryptodev-linux, do_package_write_ipk',
                      'linux-libc-headers, do_package_write_ipk',
                      'depmodwrapper-cross, do_packagedata',
                      'linux-hp-tenderloin, do_packagedata',
                      'readline, do_package_write_ipk',
                      'opkg-utils, do_packagedata',
                      'linux-hp-tenderloin, do_package_write_ipk',
                      'python, do_packagedata',
                      'gdbm, do_package_write_ipk',
                      'opkg, do_populate_sysroot',
                      'python, do_package_write_ipk',
                      'libtool-cross, do_packagedata',
                      'db, do_packagedata',
                      'libgcc, do_packagedata',
                      'libtool-cross, do_package_write_ipk',
                      'update-rc.d, do_packagedata',
                      'update-rc.d, do_package_write_ipk',
                      'libgcc, do_package_write_ipk',
                      'opkg-utils, do_populate_sysroot',
                      'makedevs, do_populate_sysroot',
                      'readline, do_packagedata',
                      'base-files, do_packagedata',
                      'gcc-runtime, do_packagedata',
                      'opkg-utils, do_package_write_ipk',
                      'base-files, do_package_write_ipk',
                      'ldconfig-native, do_populate_sysroot',
                      'bash, do_packagedata',
                      'run-postinsts, do_packagedata'])
  Task 82 (meta-smartphone/meta-hp/recipes-kernel/linux/linux-hp-tenderloin_git.bb, do_compile)
    (dependent Tasks ['initramfs-android-image.bb, do_rootfs',
                      'linux-hp-tenderloin, do_configure'])

(From OE-Core rev: 2e3c8fd70694dcf9553b5e4c50a57b617a9130b6)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-04-20 15:29:11 +01:00
Paul Eggleton
494bf2d943 classes/base: clarify S not set correctly warning
Hopefully make it a bit clearer to the user which recipe needs fixing
and what needs to be done to fix it.

(From OE-Core rev: 50e75d0cd7190a009776d72a4ae5c3e835895e6b)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-04-19 13:34:43 +01:00
Paul Eggleton
9fc558721b classes/package: clarify installed-vs-shipped message
Based on the number of times I've had to explain it over the years it
seems that a lot of new users don't immediately realise what is meant
by "shipped" here (nor should we expect them to) so let's at least
mention packaging and briefly tell the user what they need to do. (I was
going to go into more detail in the message, but there is really more
detail than can be covered succinctly here.)

(From OE-Core rev: 7047d02619547401c313de8c6972a7a0af77e2bc)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-04-19 13:34:42 +01:00
Richard Purdie
59c09e3755 toolchain-scripts: Allow the CONFIGSITE_CACHE variable to be overridden
In multilib and baremetal configurations, this variable can cause a variety of
problems due to the use of TCLIBC. At least allowing it to be overriden
is a start and allows various configurations to avoid the issue.

(From OE-Core rev: cfc43743b0e41cf168cad9cbd4e9d870b8f01f03)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-04-15 14:30:18 +01:00
Alejandro Hernandez
1521a3dda0 insane.bbclass: Enhance file-rdeps QA check
Adds symlink-to-sysroot check to QA_WARN to detect symlinks that
point to locations under TMPDIR, which are most likely broken.

Changes filerdepends from set() to dict(), hence methods for adding
or deleting items had to change too. Now it keeps track of key:value
relationship, flags the QA issue; warning the user about which
file/package causes the problem, making it easier to debug.

[YOCTO #7126]

(From OE-Core rev: 9946909dc95c3274a98112cf786d171547b3ed75)

Signed-off-by: Alejandro Hernandez <alejandro.hernandez@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-04-13 22:33:19 +01:00
Patrick Ohly
f626c58c32 testimage: sort modules based on dependencies
TEST_SUITES="auto" is useful to run all suitable tests without
having to hard-code the list. However, it did not take test
dependencies into account, which can be an issue for tests
which really depend on some other test to run first.

To fix this, modules get loaded in the order determined by
TESTS_SUITES, but then get re-ordered based on dependencies
derived from @skipUnlessPassed before running them. The original
order is used to break ties when there are no dependencies, so
reordering only occurs when really necessary.

@skipUnlessPassed gets extended such that it makes the test name
a method depends on available for inspection by the test loader
in oetest.py.

Unfortunately Python's unittest offers no API to inspect tests
in a TestSuite, so the code has to rely on implementation details
to find all tests. The worst that can happen when the implementation
changes is that tests are not found and reordering does not happen.

(From OE-Core rev: 6e4543a35836c572b23b9f8162b19d1e038d3ed2)

Signed-off-by: Patrick Ohly <patrick.ohly@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-04-10 18:10:25 +01:00
Mario Domenech Goulart
efb906a782 useradd_base.bbclass: typo fixes (s/scucess/success/)
(From OE-Core rev: eace0a2c13721d1b8952a01abac30eb2661fcd85)

Signed-off-by: Mario Domenech Goulart <mario@ossystems.com.br>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-04-08 10:53:18 +01:00
Richard Purdie
764fbeaafe image_types: Add missing ext4 support
This is particularly problematic since qemu images switched to ext4 by
default and now cannot work properly with UIs like hob.

This patch adds in ext4 to the appropriate IMAGE* variables fixing this.

[YOCTO #7426]

(From OE-Core rev: e6aab245623b6ba1ca5f06632d1028c863cef737)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-31 22:39:20 +01:00
Richard Purdie
0d0d02af44 insane: Add baremetal mappings to the QA arch test
Add mappings for i586-elf, x86_64-elf and arm-eabi to binary lookup
table which allows for a variety of baremetal toolchain generation.

(From OE-Core rev: bf628a2fb1da704ff2a0f24c774eafdd12a081fb)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-31 22:28:09 +01:00
Richard Purdie
240a797dde siteinfo: Add x86_64-elf support
Teach siteinfo about x86_64-elf so that baremetal toolchains parse/build.

(From OE-Core rev: 15ce2e6af8911db9d3d5181efdd924666eca928d)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-31 22:28:09 +01:00
Randy Witt
051ce59440 populate_sdk_ext: Log the "Preparing build system" step
When using bitbake to do the setscene as part of sdk setup, it would be
useful to have a log in the case where it fails.

The log is called preparing_build_system.log and is in the top level
directory of the extracted sdk.

(From OE-Core rev: 698019f6bb1f72f079cc2cb051e665620bf551a3)

Signed-off-by: Randy Witt <randy.e.witt@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-31 22:23:19 +01:00
Richard Purdie
aa1438b56f autotools: Avoid find race for S = "${WORKDIR}"
For recipes with PACKAGES_remove = "${PN}", the find which removes .la files
can race against deletion of other directories in WORKDIR e.g.:

find: '/home/autobuilder/yocto-autobuilder/yocto-worker/nightly-oe-selftest/build/build/tmp/work/qemux86_64-poky-linux/init-ifupdown/1.0-r7/sstate-build-populate_lic': No such file or directory
| WARNING: /home/autobuilder/yocto-autobuilder/yocto-worker/nightly-oe-selftest/build/build/tmp/work/qemux86_64-poky-linux/init-ifupdown/1.0-r7/temp/run.do_configure.6558:1 exit 1 from
|   find /home/autobuilder/yocto-autobuilder/yocto-worker/nightly-oe-selftest/build/build/tmp/work/qemux86_64-poky-linux/init-ifupdown/1.0-r7 -name \*.la -delete

The simplest fix is to add the find option which ignores these kind of races.

[YOCTO #7522]

(From OE-Core rev: dd8099ca3092fbd5c685e5ef1b1c5a8185a6893d)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-31 22:23:15 +01:00
Ross Burton
6978d8aaa9 kernel-yocto: merge duplicate kernel_configme task definitions
The kernel_configme task was added twice (once in the .bbclass, one in a .inc)
with different ordering constraints.

Change this to be just one definition in the bbclass with the stronger ordering
constraints.

(From OE-Core rev: b9646b9d31c3e0c70337a8c10ebfc087a0e2b829)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-31 22:23:13 +01:00
Ross Burton
a9025e876d linux-yocto: add kern-tools-native to kernel_metadata depends
The autobuilder failed like this:

  temp/run.do_kernel_metadata.25242: line 165: createme: command not found

createme is provided by kern-tools-native.  do_patch has a dependency on
kern-tools-native, but do_kernel_metadata runs before do_patch.  So move the
dependency from do_patch to do_kernel_metadata, moving the statement from the
.inc to the class so it's alongside the task definition.

[ YOCTO #7531 ]

(From OE-Core rev: 4a0371847ff0c30d9b60db63559d89dddfcb009f)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-31 22:23:13 +01:00
Alexandru DAMIAN
66710890c6 toaster.bbclass: do not add symbolic links to artifacts
This patch removes the symbolic links from the artifact list.

[YOCTO #7184]

(From OE-Core rev: cbb64f85dabefe267519e4b983d73c864b41e876)

Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-31 22:23:12 +01:00
Bruce Ashfield
4dbe239ff4 kernel-yocto: allow in-tree defconfigs
In a similar manner to the kernel itself, which does the following to
bring a defconfig into the configuration:

    defconfig: $(obj)/conf
    ifeq ($(KBUILD_DEFCONFIG),)
        $< --defconfig $(Kconfig)
    else
        @echo "*** Default configuration is based on '$(KBUILD_DEFCONFIG)'"
        $(Q)$< --defconfig=arch/$(SRCARCH)/configs/$(KBUILD_DEFCONFIG) $(Kconfig)
    endif

We do the same with the linux-yocto configuration processing. If a
defconfig is specified via the KBUILD_DEFCONFIG variable, we copy it
from the source tree, into a common location and normalized "defconfig"
name, where the rest of the process will include and incorporate it
into the configuration process.

If the fetcher has already placed a defconfig in WORKDIR (from the
SRC_URI), we don't overwrite it, but instead warn the user that SRC_URI
defconfigs take precedence.

[YOCTO: #7474]

(From OE-Core rev: 5f5595eebeb81be7e824d998228e4ef9f0bfac7d)

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-25 12:39:46 +00:00
Randy Witt
d2690754fe image.bbclass: Empty /var/volatile if it is a mount point
If /var/volatile is a mount point it shouldn't contain any files before
mount time. If files are there, they will no longer be able to be accessed
once the tmpfs gets mounted at /var/volatile.

This problem can be seen for instance when systemd creates
/var/volatile/log/journal as part of its package installation. It then
assumes the journal is persistent even though /var/volatile/log/journal
goes away shortly thereafter.

This change makes sure that there are no files in /var/volatile if it is
to be used as a mount point.

[Yocto #7388]

(From OE-Core rev: b574ac6f3c9e07f0054ed4261bc1f83583c29c53)

Signed-off-by: Randy Witt <randy.e.witt@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-25 12:39:45 +00:00
Richard Purdie
96104b825f image: Ensure manifests end with a newline
Manifests should end with a newline character but don't currently. This
is the easiest fix for now, the alternative would be a rewrite of the
internal code which is something to consider in due course.

[YOCTO #7427]

(From OE-Core rev: 98230d2d049c742c349f35b256b13afbc3d26235)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-25 12:39:44 +00:00
Andreas Oberritter
4ca684a0f7 kernel-module-split.bbclass: Avoid bogus recommends for modules ending with -dev
Example: lirc-dev.ko -> kernel-module-lirc-dev

(From OE-Core rev: dc20323cfe6f3f5a880dfeb02e9463ffa3db1ad9)

Signed-off-by: Andreas Oberritter <obi@opendreambox.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-25 12:39:42 +00:00
Andreas Oberritter
68bc42113d kernel-module-split.bbclass: fix autoloading from postinst script
When using KERNEL_MODULE_AUTOLOAD, autoload was empty, causing
"modprobe None" to get appended to the postinst script.

(From OE-Core rev: 2e3768075878b8fc0f7642cae89ab7b9d03fe52c)

Signed-off-by: Andreas Oberritter <obi@opendreambox.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-25 12:39:39 +00:00
Andreas Oberritter
2a473ac17a update-alternatives.bbclass: alternatives should be removed in prerm
This behaviour matches dpkg's manpage and fixes deinstalling
alternatives for programs needed by the postrm script, e.g. /bin/sh.

(From OE-Core rev: 2a5484a90513b58c829a916bfe5268a0fde3512a)

Signed-off-by: Andreas Oberritter <obi@opendreambox.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-25 12:39:38 +00:00
Andreas Oberritter
349f3ab519 package.bbclass: Add SYSTEMD_SERVICE to list of package specific variables
Changes to SYSTEMD_SERVICE should change the sstate checksum. To make that
happen, it needs to be listed in the list of package specific variables,
therefore add it.

(From OE-Core rev: 0a51f024e8212f011bb8b03d81f18bcd9aa6aa1f)

Signed-off-by: Andreas Oberritter <obi@opendreambox.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-25 12:39:37 +00:00
Robert Yang
5dc1f3d8a0 oelint.bbclass: remove duplicated code
The old code 'if not srcpath.find("{PN}") == -1:' looks strange, use
'if srcpath.find("{PN}") != -1:' and remove duplicated code.

(From OE-Core rev: bb3b8e4e7580c1dfdfe584d3b5f0fe6803826a43)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-22 14:42:15 +00:00
Robert Yang
7366894e41 oelint.bbclass: adjust task order
Addtask lint before do_build rather than do_fetch, otherwise it would
cause all the tasks after do_fetch run again every time since
do_lint[nostamp] = "1".

(From OE-Core rev: 122ef911aac96b311bbe19106fb9ecbe004fd51b)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-22 14:42:15 +00:00
Chen Qi
d70c981b83 license.bbclass: skip license checking if the package contains no file
If the package doesn't contain any file, then the license isn't relevant
as far as the final image is concerned. So we skip the license checking
in license_create_manifest if such case.

(From OE-Core rev: f7b6684d2248f4a56e70b292891f9a454275449d)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-22 08:50:03 +00:00
Robert Yang
72ead27887 sanity.bbclass: vmdk and live can't be built together
Both vmdk and live use syslinux, but they have different/conflicted
configurations, the main conflictions are:

                    vmdk                live
SYSLINUX_ROOT       root=/dev/sda2      root=/dev/ram0
SYSLINUX_LABELS     boot                boot install
INITRD              No                  yes

So it would make the boot menu strange and vmdk can't be boot, we need
add a few extra vars to fix the problem such as SYSLINUX_ROOT_VMDK
SYSLINUX_ROOT_LIVE, but that needs a lot of changes in the code, so just
add a sanity checking for it.

[YOCTO #6889]

(From OE-Core rev: 521737f456b6ea7f7f153132c77cb74c08f088dc)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-22 08:50:02 +00:00
Jonathan Liu
0f25dd5b6c base.bbclass: clean up warning message for 'S'
(From OE-Core rev: ddac4f3c1350c3a4e0ea4ae732de0689325d883f)

Signed-off-by: Jonathan Liu <net147@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-20 23:56:02 +00:00
Bruce Ashfield
ad6313d01b kernel-yocto: split meta data generation from patching phase
The linux-yocto kernel has a meta-data component which accompanies the
actual tree. That meta-data is processed to generate a series file that
controls the patching and configuration of the kernel.

patching and configuration are two distinct phases, so when working on
kernel configuration, it doesn't make sense to always have to re-run
the patching step just to update configuration data in the meta-series.

To allow a more granular set of tasks, we break the meta-data generation
into a separate task, which runs before do_patch. This allows the task
to be explicitly called when working on configuration, but otherwise
has no impact on the build.

(From OE-Core rev: 1be4c68fb876b63f19d107275b701fe1c1c121db)

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-20 23:56:00 +00:00
Paul Eggleton
a5047717bd classes/externalsrc: fix for recipes that fetch local files
If SRC_URI contains local files (file:// references) these will almost
certainly be required at some point during the build process, so we need
to actually fetch these to ${WORKDIR} as we would normally.

(From OE-Core rev: f223ad3d5b5c90055e50d1b1be69230f55e06336)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-20 11:27:46 +00:00
Adrian
6ad040a522 Add archiver folder to SSTATE_DUPWHITELIST
Without this patch the source archiver class is not allowed to
archive the same source archive for different builds.

(From OE-Core rev: 37284185912d496a974d507bde7208d93eefc29d)

Signed-off-by: Adrian <adrian.freihofer@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-20 11:03:45 +00:00
Robert Yang
c03c82a707 pixbufcache.bbclass: add harfbuzz-native to PIXBUFCACHE_SYSROOT_DEP
Fixed:
DEBUG: Executing shell function pixbufcache_sstate_postinst
g_module_open() failed for sysroots/x86_64-linux/usr/lib/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-svg.so: libharfbuzz.so.0: cannot open shared object file: No such file or directory

(From OE-Core rev: 892c8d80e7cf36b3a45dca248969d49ce78c0cbf)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-16 17:41:56 +00:00
Robert Yang
788fd5ac01 kernelsrc.bbclass: fix KERNEL_VERSION
The kernel-abiversion is now in STAGING_KERNEL_BUILDDIR not in S.

Fixed rpm pkg like perf: (note the None version)
perf-None-r9.qemux86.rpm

(From OE-Core rev: 85bb679f22b2f5fb308016e62356bd1d6ba455a0)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-16 17:41:56 +00:00
Andre McCurdy
9157c1b0aa chrpath.bbclass: handle RUNPATH as well as RPATH
Binaries linked with gold may contain a RUNPATH instead of an RPATH.
Update chrpath.bbclass process_file_linux() to handle both cases.

(From OE-Core rev: 46ceb4d035e4f49e6b4a3a83bf604944d2b991c1)

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-16 17:41:56 +00:00
Robert Yang
05a69edeb7 license.bbclass: set dirs for do_populate_lic_setscene
Fixed:
ERROR: Build of do_populate_lic failed
ERROR: Traceback (most recent call last):
  File "bitbake/lib/bb/build.py", line 497, in exec_task
    return _exec_task(fn, task, d, quieterr)
  File "bitbake/lib/bb/build.py", line 437, in _exec_task
    exec_func(func, localdata)
  File "bitbake/lib/bb/build.py", line 212, in exec_func
    exec_func_python(func, d, runfile, cwd=adir)
  File "/home/nxadm/nx/ala-blade44.1/builds-2015-03-09-163005/qemuppc_world_oe_bp/bitbake/lib/bb/build.py", line 237, in exec_func_python
    os.chdir(cwd)
OSError: [Errno 2] No such file or directory: 'bitbake_build/tmp/work/ppc7400-wrs-linux/taglib/1.9.1-r0/build'

When running setscene, the cwd is $B which maybe removed by
autotools.bbclass or cmake.bbclass when rebuild.

(From OE-Core rev: b3262af11094f93c9588f2e3edc70a5058491e6d)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-16 17:41:55 +00:00
Ross Burton
8a9ac1de34 devshell: allow the starting directory to be overridden
Some people like to have the devshell start in ${B} instead of ${S}, so allow
this to be overridden.

(From OE-Core rev: 217af639d13258429949b14c67110650288cba7a)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-16 17:41:55 +00:00
Khem Raj
66a4d8bf6e buildstats.bbclass: typecast argument to os.minor/os.major to long
Started to run into this error on ubuntu 15.04

ERROR: Execution of event handler 'run_buildstats' failed
Traceback (most recent call last):
  File "run_buildstats(e)", line 18, in run_buildstats(e=<bb.event.BuildStarted object at 0x7f93341c1b50>)
  File "buildstats.bbclass", line 17, in set_device(e=<bb.event.BuildStarted object at 0x7f93341c1b50>)
SystemError: ../Objects/longobject.c:998: bad argument to internal function

ERROR: Command execution failed: Traceback (most recent call last):
  File "/home/ubuntu/work/bleeding/openembedded-core/bitbake/lib/bb/command.py", line 102, in runAsyncCommand
    commandmethod(self.cmds_async, self, options)
  File "/home/ubuntu/work/bleeding/openembedded-core/bitbake/lib/bb/command.py", line 303, in buildTargets
    command.cooker.buildTargets(pkgs_to_build, task)
  File "/home/ubuntu/work/bleeding/openembedded-core/bitbake/lib/bb/cooker.py", line 1336, in buildTargets
    bb.event.fire(bb.event.BuildStarted(buildname, fulltargetlist), self.data)
  File "/home/ubuntu/work/bleeding/openembedded-core/bitbake/lib/bb/event.py", line 163, in fire
    fire_class_handlers(event, d)
  File "/home/ubuntu/work/bleeding/openembedded-core/bitbake/lib/bb/event.py", line 102, in fire_class_handlers
    execute_handler(name, handler, event, d)
  File "/home/ubuntu/work/bleeding/openembedded-core/bitbake/lib/bb/event.py", line 76, in execute_handler
    ret = handler(event)
  File "run_buildstats(e)", line 18, in run_buildstats
  File "buildstats.bbclass", line 17, in set_device
SystemError: ../Objects/longobject.c:998: bad argument to internal function

similar to here
http://pycuda.2962900.n2.nabble.com/bad-argument-to-internal-function-td4063274.html

If it is right fix .. Dont know

Change-Id: I84f3a4043ad5246e080dfd7e2f066e5292d4af91
(From OE-Core rev: 5f85a7549d119177c5d39f965b949e957e07867e)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-16 17:41:54 +00:00
Jonathan Liu
9d0feb3f29 fontcache.bbclass: prepend to PACKAGEFUNCS instead of appending
Appending to PACKAGEFUNCS results in the font packages missing the
postinst/postrm scripts and the fontconfig cache not being generated
in /var/cache/fontconfig when creating images or installing font
packages. This is because the package data has already been emitted
by emit_pkgdata in PACKAGEFUNCS. Prepend to PACKAGEFUNCS to ensure
add_fontcache_postinsts is executed before emit_pkgdata.

[YOCTO #7410]

(From OE-Core rev: f0e3db4eaacc32423934ce09b91bc619dc5dbd21)

Signed-off-by: Jonathan Liu <net147@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-16 17:41:54 +00:00
Jonathan Liu
d03e1677d5 postinst-intercepts/update_font_cache: fix ownership of fontconfig cache
The file ownership of the cache files in /var/cache/fontconfig needs to
be set to root:root otherwise it inherits the user and group id of the
build user.

[YOCTO #7411]

(From OE-Core rev: 23393c6685860d0b1c459874d35395360d0b6d3c)

Signed-off-by: Jonathan Liu <net147@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-16 17:41:53 +00:00
Chen Qi
a30c6a5225 nativesdk.bbclass: set PKGDATA_DIR explicitly
For now, if we enable 'multilib' and execute `bitbake uninative-tarball
-c populate_sdk', the command would fail, complaining nativesdk-glibc not
found in package feed.

The problem is that PKGDATA_DIR is not set correctly for nativesdk packages
when multilib is enabled.

For now, we have:
meta/conf/bitbake.conf:PKGDATA_DIR = "${STAGING_DIR_HOST}/pkgdata"

The above is overriden by the following is multilib is enabled.
meta/conf/multilib.conf:PKGDATA_DIR = "${STAGING_DIR}/${MACHINE}/pkgdata"

This is correct for normal packages. However, for nativesdk packages, this
is not correctly. This is because nativesdk.bbclass set STAGING_DIR_HOST as
follows.

meta/classes/nativesdk.bbclass:STAGING_DIR_HOST = "${STAGING_DIR}/${MULTIMACH_HOST_SYS}"

The above overrides the value in multilib.conf.

That's why we need to also set PKGDATA_DIR explicitly in nativesdk.bbclass.

(From OE-Core rev: 2f99ee5725ffc173bf32c0b707aa90adbc4eed95)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-16 17:41:53 +00:00
Saul Wold
bd0ed7ce67 image_types: Fix MIN_BTRFS_SIZE to be 1024 blocks to match ROOTFS_SIZE
[YOCTO #7392]

(From OE-Core rev: b75e23568d72aea3c508492c129c361bedd98eb4)

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-10 10:47:47 +00:00
Randy Witt
a39ce568e0 base.bbclass: Add LIC_FILES_CHKSUM files to checksum files.
Previously, files with absolute paths in LIC_FILES_CHKSUM such as
"file://${COMMON_LICENSE_DIR}/foo" would not result in a qa failure
when the license file changed.

To fix this problem, add any files with absolute paths from
LIC_FILES_CHKSUM to the file-checksums varflag, so that changes in the
license file are detected and cause the qa task for licenses to run.

[Yocto #6450]

(From OE-Core rev: 5df681259ae078c9d04d426fb5971eaa79d35ba5)

Signed-off-by: Randy Witt <randy.e.witt@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-10 10:47:44 +00:00
Michael Wood
d5a28582be report-error: Update information on the submission process
The new send-error-report will prompt for review of items and the server is
now specified by using the -s argument.

(From OE-Core rev: c195d70f35ea522854dcdd53aeae60eec6b7ad7e)

Signed-off-by: Michael Wood <michael.g.wood@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-10 10:47:39 +00:00
Bruce Ashfield
e02016e73b kernel-yocto: inhibit BSP description warnings for custom linux-yocto kernels
We don't require that a yocto custom kernel + defconfig have a full BSP
description (but of course it would be better if they did). Since this
isn't a requirement, we shouldn't alarm users by generating a BSP
description warning.

To implement this, we add a bsp audit level flag (like the one that
exists for kconfig audits), and only set it to activate in the versioned
linux-yocto recipes.

[YOCTO: #7370]

(From OE-Core rev: d2fb7fff291b83700d487be093223c1533d915ce)

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-02 22:05:34 +00:00
Patrick Ohly
51908e5141 package_rpm.bbclass: support packaging of symlinks to directories
os.walk() returns symlinks to directories in the "dirs" lists, but then never
enters them by default. As a result, the old code applied neither the
directory handling (because that is active once a directory gets entered) nor
the file handling, and thus never packaged such symlinks.

The fix is simple: find such special directory entries and move them to the
"files" list. However, one has to be careful about the undefined behavior of
modifying a list while iterating over it.

This fix was required for packaging a modified base-files that created
symlinks into /usr for /sbin /lib and /sbin.

(From OE-Core rev: 9c4ab427b6acbc3f708860adace65393562227a7)

Signed-off-by: Patrick Ohly <patrick.ohly@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-02-27 07:39:36 +00:00
Randy Witt
54567379ac populate_sdk_ext: add extensible SDK
This bbclass will create an SDK with a copy of bitbake and the metadata
and sstate for the target specified for the task. The idea is to let
"system" developers both work on applications and then test adding them
to an image without having to switch between workspaces or having to
download separate items.

Rather than running bitbake directly however, the primary way of running
builds within the extensible SDK is to use the "devtool" command. The
rest of the build system is fixed via locked shared state signatures,
and thus only the recipes you have added get built.

(From OE-Core rev: bf81d6bb7f6df5405b8f2148e2a22e0030c12757)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Randy Witt <randy.e.witt@linux.intel.com>
Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-02-24 17:41:43 +00:00
Randy Witt
01c9f3b390 toolchain-shar-template.sh: Make relocation optional.
If the buildsystem is copied into the sdk and its toolchain is to
be used, then the relocation provided in toolchain-shar-template.sh
isn't needed and will actually fail.

So break the relocation aspect out and essentially make it another
SDK_POST_INSTALL_COMMAND script.

(From OE-Core rev: 9721378688a05cd8d8443c6ee4be823e5c0688f6)

Signed-off-by: Randy Witt <randy.e.witt@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-02-24 17:41:43 +00:00
Randy Witt
fe678e75ea toolchain-scripts: Add parameters to toolchain_create_sdk_env_script.
To add some flexibility to setting up the paths for the toolchain,
add some parameters. This initial use will be in order to point at
the buildsystem toolchain copied in by copy_buildsystem.py.

(From OE-Core rev: 62930ea37cfd5ba787ee85bc8dab23c20a775253)

Signed-off-by: Randy Witt <randy.e.witt@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-02-24 17:41:43 +00:00
Paul Eggleton
1bb0022384 classes/sanity: avoid bblayers version issue when switching between poky and other DISTRO values
If you create a build directory with poky, or set DISTRO to "poky" and
run bitbake, you'll get a bblayers.conf file with LCONF_VERSION set to
6. If you then set DISTRO to any other value where the new distro config
doesn't pull in poky's config, e.g. "nodistro", you would then get a
bblayers.conf version error which didn't immediately make sense. (The
layer versions have been out-of-step ever since meta-yocto-bsp was
split out of meta-yocto several years ago).

This is just painful and we'd rather users didn't have to deal with
it. Obviously it isn't an OE-Core problem per se, but a simple way to
resolve it for everyone is to bump OE-Core's version to 6 with an
automatic no-op upgrade. Also ensure that multiple upgrade functions
(such as the poky one) have a chance to execute by not breaking out of
the loop as we were before.

Fixes [YOCTO #6139].

(From OE-Core rev: 2fdeee2fad69445b0d97148826c7b027820be63a)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-02-23 18:00:20 +00:00
Paul Eggleton
4a2e42d71d classes/kernel-yocto: extend SRCTREECOVEREDTASKS
* Add do_shared_workdir which was added recently
* Add do_fetch and do_unpack to this list, because at the moment if you
  enable externalsrc through a bbappend the += in this class wipes out
  the original value from externalsrc (which is set with ?=)

(From OE-Core rev: 5717e3b60731d2cb9394c13bff049a467c3aeec1)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-02-23 17:35:28 +00:00
Paul Eggleton
550d455fcd classes/externalsrc: show a warning on compiling
Make sure there's no chance of anyone forgetting they have a recipe set
up for externalsrc; otherwise you could get confused about what is going
on. (With our default logging setup we can't make it a note because the
UI doesn't forward those; otherwise I would have used bb.note().)

(From OE-Core rev: 7b73473bc9d19331a103cf4958059d3ceb84b486)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-02-23 17:35:28 +00:00
Paul Eggleton
d4af8f0268 classes/externalsrc: add workaround for recipes that use SRCPV in PV
Here we set SRC_URI to blank, however doing so means that the function
that is called when you expand the default value of SRCPV
(i.e. bb.fetch2.get_srcrev()) will fail, so any recipe that references
SRCPV in PV couldn't previously be used with externalsrc.

(At some point we may fix the function to work in the externalsrc case,
but then we would also need to ensure that ${B} did not change as a
result of PV changing any time the HEAD revision changes in the external
source tree, or you'll lose any intermediate build artifacts.)

(From OE-Core rev: 26f8060c3475ec988194b2163e422ba4e776fd8b)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-02-23 17:35:28 +00:00
Paul Eggleton
db7f7b5097 classes/externalsrc: fix source being wiped out on clean with kernel
kernel.bbclass adds ${S} do do_clean[cleandirs], but this means if you
run bitbake -c clean <kernelrecipe> then your external source tree will
be trashed, which could be a disaster. For safety, remove ${S} from
cleandirs for every task. We also have to do the same for ${B} in the
case where EXTERNALSRC_BUILD is set to the same value as EXTERNALSRC.

(From OE-Core rev: b5071fb2667b8751885d38ca62fa36c870177cd5)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-02-23 17:35:28 +00:00
Nathan Rossi
76c8fadec9 Revert "kernel-arch.bbclass: add arm64 support to U-Boot architecture map"
This reverts commit 0b891265716c414ade29d587fc1a3c4ea7beadbe.

U-Boot does support AArch64, this however was only added to newer
versions of U-Boot and at the time of this original commit the U-Boot in
OE-Core did not support the 'arm64' architecture. OE-Core now has a
newer version of U-Boot for the mkimage recipe and thus supports the
'arm64' architecture.

(From OE-Core rev: fd8158134f3d7a7c795c818cc50eb2858a6cae06)

Signed-off-by: Nathan Rossi <nathan.rossi@xilinx.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-02-21 22:05:35 +00:00
Bruce Ashfield
726c6c1f5e linux-yocto: warn when a generated BSP description is used
The meta data (in tree or out of tree) that describes a BSP, its patches
and configuration is not always available when a new/default or manually
configured machine is built.

When this happens, the tools generate a skeleton BSP and use a
architecture defconfig for the build. If this is by design, the build
is typically sane and everything works fine. If an existing BSP
description was expected, chances are that the resulting kernel will not
be correct.

To avoid surprising the user when a default/skeleton BSP is used for the
build, we can make it obvious to the user by emitting a warning like
the following:

   WARNING: [kernel]: An auto generated BSP description was used, this normally indicates a misconfiguration.
            Check that your machine (myqemux86-64) has an associated kernel description.

[YOCTO: #3383]

(From OE-Core rev: f4a460afc4e2676cbf1daaa1d6723da9e6146526)

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-02-21 22:05:34 +00:00
Bruce Ashfield
dfa83e6625 linux-yocto: make kernel configuration audit user visible
After a linux-yocto style kernel is configured, a kernel configuration
audit is executed to detect common errors or issues with the config.

This output used to be visible, but was made less obvious to not alarm
users unnecessarily (since some configuration issues are acceptable).

There are some classes of configuration issue that are worth being
visible, and that is specified configuration values that do not make the
final .config. These dropped options can result in any number of runtime
failures, so flagging them at build time makes sense.

The visibility of auditing is controlled by KCONF_AUDIT_LEVEL:

   0: no reporting
   1: report options that are specified, but not in the final config
   2: report options that are not hardware related, but set by a BSP

The default level is 1, with level 2 and above being for BSP development
only.

If these conditions are detected, warnings will be generated as follows:

  WARNING: [kernel config]: specified values did not make it into the
  kernel's final configuration:

  Value requested for CONFIG_SND_PCSP not in final ".config"
  Requested value: "CONFIG_SND_PCSP=y"
  Actual value set: ""

or

  WARNING: [kernel config]: BSP specified non-hw configuration:

  CONFIG_BLOCK
  CONFIG_CFG80211_WEXT
  CONFIG_CORDIC
  CONFIG_CRC8
  CONFIG_EFIVAR_FS
  CONFIG_EFI_PARTITION
  CONFIG_NET
  CONFIG_NETDEVICES
  CONFIG_PARTITION_ADVANCED
  CONFIG_WEXT_CORE
  CONFIG_WEXT_PROC
  CONFIG_WIRELESS

At this point thse are only a warnings, since there needs to be time for
layers and configuration fragments to be validated against this new
check.

[YOCTO: #6943]

(From OE-Core rev: ad4d59495194b37bc510e9891bd14c0a2ac30dba)

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-02-21 22:05:33 +00:00
Chen Qi
0aa5ea1251 packaging: allow globs in CONFFILES
Allow globs in CONFFILES.

This patch changes the way of CONFFILES handling. After this  change,
the CONFFILES can take the same form as FILES. That means, we don't
have to list a bunch of files for CONFFILES. It will just be expanded
like the FILES variable.

We don't assume default value for CONFFILES in OE. But distro vendors could
provide a default value for CONFFILES in their distro configuration file
like below.

    CONFFILES = "${sysconfdir}"

In this way, files under /etc are treated as configuration files by
default. Of course, setting CONFFILES in recipes take precedence over
the CONFFILES. For example, if the recipe author decides that package A
should only treat files under ${sysconfdir}/default/ as config files,
he/she can write like this.

    CONFFILES_A = "${sysconfdir}/default"

[YOCTO #5200]

(From OE-Core rev: 0d446ef0e5bbca7058eec7259e34f2a1637dfab1)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-02-19 07:51:38 +00:00
Martin Jansa
2f8e5a8be1 license.bbclass: fix unexpected operator for LICENSE values with space
* add quotes around pkged_lic so that it works correctly with spaces
* fixes following error:
  run.license_create_manifest.50601: 193: [: GPLv2: unexpected operator

(From OE-Core rev: 2bb8b2abb689d91b7b7e28e6bd528747bde94dd2)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-02-17 22:35:04 +00:00
Chen Qi
9973ce1703 useradd.bbclass: avoid do_rootfs error for debian package backend
If /etc/login.defs is treated as a configuration file, then we would meet
errors at do_rootfs time telling us that useradd/groupadd cannot execute
correctly.

This is because the dpkg handles config file specially, the login.defs
is temporarily renamed as login.defs.dpkg-new.

How ubuntu deals the user/group adding problem? They do it at postinst of the
package. And, the postinst script of a package would possibly do `chown' of
its files or directories.

The above strategy is not suitable for OE. Because we do chown in do_install
and add user/group in preinst scripts of the packages.

That's why we need this patch so that do_rootfs don't fail.

(From OE-Core rev: d98e5ec575f542b3afaabd96b07ae9a21e1c22f4)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-02-17 22:35:03 +00:00
Chen Qi
3d7c798dff update-rc.d: use '-f' option in updatercd_postrm
Use '-f' ('--force') option so that while removing packages using deb,
we don't fail because of the following error:

   update-rc.d: $initd/$bn exists during rc.d purge (use -f to force)

Using '-f' option would make this a warning but continue to execute.

   update-rc.d: $initd/$bn exists during rc.d purge (continuing)

We need this option because dpkg package backend have special handling for
configuration files. And if files under /etc/init.d are treated as configuration
files, we will have errors.

(From OE-Core rev: ebb2d557bbf410d98040cdaabbddd7e3ee0a9709)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-02-17 22:35:03 +00:00