Commit Graph

3185 Commits

Author SHA1 Message Date
Ross Burton 42e122de0f cmake.bbclass: fix note when warning about deprecated variables
The note issues when OECMAKE_BUILDPATH and OECMAKE_SOURCEPATH were being used
stated that an in-tree build would be done, but the default is in fact an
out-of-tree build.

(From OE-Core rev: 0dafb9f78e9ab9ec1a1483efc37902c2e8de3623)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-22 07:20:04 +00:00
Robert Yang a6c6659b3f sstate.bbclass: remove previous version's stamp
There is a potential problem if we don't remove the previous version's
stamp, for example:

The depend chain is:
libtool-native -> autoconf-native -> m4-native
We have two m4-native: 1.4.9 and 1.4.7

1) Clean all of them to make a fresh build so that we can reproduce the
   problem
$ bitbake m4-native autoconf-native libtool-native -ccleansstate

2) Build libtool-native so that the m4-native_1.4.17 will be built
$ bitbake libtool-native

3) Set PREFERRED_VERSION_m4-native = "1.4.9" and build again
$ bitbake libtool-native

4) Set PREFERRED_VERSION_m4-native = "1.4.17" and build again
$ bitbake libtool-native -ccleansstate && bitbake libtool-native

Then the build will fail:
[snip]
| m4: unrecognized option '--gnu'
| Try `m4 --help' for more information.
| autom4te: m4 failed with exit status: 1
[snip]

The is because when we change m4-native to 1.4.17 and build
libtool-native again:
5) libtool-native depends on autoconf-native, and autoconf-native's
   version isn't change, so it can remove the current stamp and mirror
   the sstate (the one depends on m4-native_1.4.9) from the SSTATE_DIR
   correctly.

6) The mirrored autoconf-native depends on m4-native_1.4.17's
   do_populate_sysroot, and the stamp is already there (which is made
   by step 2), so it would do nothing, but this is incorrect, since
   the one that really in the sysroot is m4-native_1.4.9, then the
   error happens.

Remove previous version's stamp in sstate_clean() will fix the problem.

[YOCTO #5422]

(From OE-Core rev: 4659d29b1040349116549644e45035a5b37d9311)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-21 10:45:29 +00:00
Martin Jansa 1180ec37e4 package.bbclass: show warning when package is providing already provided shlib
* move read_shlib_providers before registering package as provider
  and show warning when different package tries to provide something
  already provided.

[YOCTO #4628]

(From OE-Core rev: 8141e3f61f12c8901b990496bcf6b76a9db95a57)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-21 10:20:13 +00:00
Martin Jansa bd938fe510 package.bbclass: move reading shlibs providers to separate function
* prepare for reading shlibs providers only from dependency tree of
  current recipe

[YOCTO #4628]

(From OE-Core rev: c5076f33ac27c0c2b0743bf6dc4edc983254c467)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-21 10:20:12 +00:00
Martin Jansa ea94e0fdee icecc: use exact match in blacklists, re-start with empty system_package_blacklist
* unify debug messages a bit
* old implementation allowed partial match in blacklist, it's safer
  to explicitly list exact matches
* I was able to build all entries from system_package_blacklist with
  icecc enabled, lets assume that they were already resolved by newer
  versions (we've fixed a lot of parallel issues in recipes which were
  detected even without icecc and this list is very old).

(From OE-Core rev: 5a5319d2e6f41bb0e290d6a1decbd996e9572690)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-21 10:20:12 +00:00
Martin Jansa 033671d82a icecc: Fix allarch and native recipes having different signatures
* for different MACHINES
* is there more elegant way to have "overridable" function so that
  signature handler properly uses only the branch without
  STAGING_BINDIR_TOOLCHAIN?

(From OE-Core rev: 418a353a011ca8f04ecc3e2d29f2d1a415492081)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-21 10:20:12 +00:00
Martin Jansa cb714e1342 icecc: use bb.utils.which also for 'as'
* it was introduced in
  commit 3a842ec52e7d010767b13bdcb5629ac07b3ee9e7
  Author: Dmitry Eremin-Solenikov <dbaryshkov@gmail.com>
  Date:   Fri Sep 16 10:55:16 2011 +0400
  Subject: icecc.bbclass: replace with updated version

  without any explanation in which case
    ${ICECC_CC} -print-prog-name=as
  is returning as in current working directory, but will keep old
  behavior just in case

(From OE-Core rev: 6092da20fc3ceb1bc6b4872ad16df565f05723b7)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-21 10:20:12 +00:00
Martin Jansa a7b97cbccc icecc: Don't replace non-empty PARALLEL_MAKE with empty ICECC_PARALLEL_MAKE
* it's needed for use-case like this:
  # Inherit icecc here, so that all builders have the same sstate signatures
  INHERIT_DISTRO += "icecc"
  # and then disable its function by default (so that people still need to explicity
  # enable it in local.conf if they have configured icecc and want to use it.
  # You need to set _empty_ value in local.conf to enable icecc function:
  # ICECC_DISABLED = ""
  ICECC_DISABLED ??= "1"
* so default ICECC_PARALLEL_MAKE is still empty, but we want build
  to respect our PARALLEL_MAKE, unfortunately we cannot do something
  like ICECC_PARALLEL_MAKE ??= "${PARALLEL_MAKE}", because that would
  cause PARALLEL_MAKE to reference itself.

(From OE-Core rev: 7e586d5b7c8c7f20eafc32624200f60a8ed9a582)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-21 10:20:12 +00:00
Martin Jansa 94802fd6fc allarch: Set empty TARGET_PREFIX and TARGET_FPU
* set empty TARGET_PREFIX
  This has a bit weird reason caused by unsupported setup where
  external-toolchain is used in some DISTRO only for some MACHINEs
  and internal is used for other MACHINEs.
  Because external-toolchain usually comes with different TARGET_PREFIX
  it was causing allarch recipes to have different signatures even
  when they don't use toolchain at all.
  Empty TARGET_PREFIX also helps to find allarch recipes which still
  have default dependency on e.g. virtual/${TARGET_PREFIX}gcc.
* add TARGET_FPU just for completeness (it was used in icecc.bbclass
  but now it's vardepexcluded there as well)

(From OE-Core rev: 180ba7f6603b35eb66946649d8860022d2c329b7)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-21 10:20:11 +00:00
Richard Purdie 11cff9446f update-alternatives: We now use u-a in nativesdk so make sure the dependency is present
When update-alternatives was part of opkg which got built in most nativesdk
scenarios, this missing dependency wasn't an issue. We now need nativesdk-opkg-utils
so we need to ensure the dependency is present in nativesdk cases.

This avoids build failures with the recent u-a move to opkg-utils.

(From OE-Core rev: 7e0adf676da45e49287b7ce6478a6dbfd8fa117f)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-19 16:32:10 +00:00
Richard Purdie e4319b6dd0 package_rpm: Fix a race with package_deb/package_ipk
We have the odd situation where the CONTROL/DEBIAN directory can be removed
in the middle of the walk, the isdir() test would then fail and the walk code
would assume its a file hence we check for the names in files too.

This resolves the autobuilder failure:

error: File not found: /home/pokybuild/yocto-autobuilder/yocto-slave/nightly-fsl-arm/build/build/tmp/work/armv7a-vfp-neon-poky-linux-gnueabi/xinit/1_1.3.3-r0/package/DEBIAN

RPM build errors:
     File not found: /home/pokybuild/yocto-autobuilder/yocto-slave/nightly-fsl-arm/build/build/tmp/work/armv7a-vfp-neon-poky-linux-gnueabi/xinit/1_1.3.3-r0/package/DEBIAN

(From OE-Core rev: e38d7702be279d6d6d4c79b3f2379e689a7473d2)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-16 12:05:48 +00:00
Laurentiu Palcu 63cde72515 allarch.bbclass: set SDK_ARCH and SDK_CC_ARCH to "none"
allarch packages shouldn't use these variables.

[YOCTO #5396]

(From OE-Core rev: c7253ad1b00fcef8fe0aeaab06d2fe76c82ba0dc)

Signed-off-by: Laurentiu Palcu <laurentiu.palcu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-16 12:05:47 +00:00
Ross Burton 18e62b88e9 cmake: specify all install paths
Specify the full set of install paths (bindir, libdir, etc) for packages that
use the GNUInstallDirs module, instead of just the prefix and leaving the rest
as default (which breaks with multilib).

(From OE-Core rev: d3995ac14ba05c0420f15f264f7e9d0c3af71f74)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-14 17:03:55 +00:00
Richard Purdie 8699cd4f61 ptest: d.keys() is slow, use a list instead
Unfortunately d.keys is extremely slow. Using a list in this case should be
fine since the addtask lines are immediately above the code and aren't
going to change often.

(From OE-Core rev: 5901189f0442cefc4d17623547f7358ffc2d37a6)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-14 17:03:54 +00:00
Koen Kooi 47d9fa8e3f image_types bbclass: add support for tar.lz4 and cpio.lz4
(From OE-Core rev: 0a541a0497902ee9993449b47da853b6c6a306d9)

Signed-off-by: Koen Kooi <koen.kooi@linaro.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-14 17:03:53 +00:00
Koen Kooi 2fa4364a7d kernel.bbclass: add support for LZ4 initramfs files
(From OE-Core rev: 4cf53999459f3984f541ad5e666057a6727a066c)

Signed-off-by: Koen Kooi <koen.kooi@linaro.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-14 17:03:53 +00:00
Koen Kooi 21551f693a distrodata bbclass: add support for lz4 archives
(From OE-Core rev: 4c6fb26d3fb54c75e99f6531a53054b8c6482a8b)

Signed-off-by: Koen Kooi <koen.kooi@linaro.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-14 17:03:53 +00:00
Koen Kooi ff5a3e9f92 base bbclass: add support for lz4 compressed archives
(From OE-Core rev: 8b31b2d612b7bcd98c393c3760bb2e1542c02bd5)

Signed-off-by: Koen Kooi <koen.kooi@linaro.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-14 17:03:53 +00:00
Ross Burton d6ed40fa2a cmake: default to out-of-tree builds
Set B=${WORKDIR}/build in cmake.bbclass so that recipes using cmake.bbclass do
out-of-tree builds by default.

(From OE-Core rev: 783fb88f476c94d5d4f4b954f7053464d9a6dff5)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-14 11:33:56 +00:00
Ross Burton 6aafc529d7 cmake: respect ${S} and ${B}
Instead of the class-specific variables OECMAKE_BUILDPATH and
OECMAKE_SOURCEPATH, just use ${B} and ${S}.

If these two paths are different, delete any existing ${B} before running a
build so that previous builds don't taint the current build.

Note that OECMAKE_SOURCEPATH and OECMAKE_BUILDPATH are not respected, so recipes
that manually set these in the past will need to be updated to either use
something along the lines of separatebuilddir.inc or set B themselves.  If the
old variables are set, a warning is displayed.

(From OE-Core rev: 43073569cb67d98c11aa71211d77b566b64f9145)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-14 11:33:55 +00:00
Nathan Rossi ad6f3ea1b4 ptest.bblass: Fix package QA issues when disabled
When the ptest distro feature is disabled, a ptest directory is still
created in the install phase, This directory is not cleaned up or
consumed by any package and will throw a QA error, e.g.

ERROR: QA Issue: glib-2.0: Files/directories were installed but not
shipped
  /usr/lib/glib-2.0/ptest
ERROR: QA run found fatal errors. Please consider fixing them.
ERROR: Function failed: do_package_qa

This is caused by the do_install_ptest_base[cleandirs] attribute which
is not setup to be conditional on ptest being enabled.

This patch refactors the use of PTEST_ENABLED in the *ptest_base tasks,
replacing the conditional execution with the removal of the tasks from
the build, this prevents any part (including cleandirs) of the ptest
tasks from executing when disabled.

(From OE-Core rev: def21f3f0bedae51651f1f0fc58b62b8aaaf37ae)

Signed-off-by: Nathan Rossi <nathan.rossi@xilinx.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-14 11:33:51 +00:00
Anders Darander 8172f24b62 terminal.bbclass: do not export PS1
With a complex PS1 setup, PS1 might not have all characters correctly escaped
when terminal.bbclass writes the export. This caused the run.do_terminal.PID to
terminate, making it impossible to use the devshell.

As the spawned shell will parse e.g. .bashrc (or whatever rc-file is being
used), PS1 will be reset in the devshell.

(From OE-Core rev: a5e6926cd409140d16391c72316da00ffbfe5429)

Signed-off-by: Anders Darander <anders@chargestorm.se>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-10 15:16:52 +00:00
Phil Blundell fef870956c package: Keep global pkgfiles[] up to date when snapping library symlinks
Since ca86603607a69a17cc5540d69de0e242b33382d3 we are now calling stat() on
all the pkgfiles[] during emit_pkgdata().  If symlink snapping has removed
some of the files then we will blow up trying to stat a path that no longer
exists.  Fix that by ensuring that pkgfiles[] is updated when we process the
list of library renames.

(From OE-Core rev: bdad58c51dfdda5253933c3e371a7d526cdbb67e)

Signed-off-by: Phil Blundell <pb@pbcl.net>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-10 15:16:51 +00:00
Phil Blundell 8b0be3ffb8 kernel-module-split: Remove extraneous call to depmod from module postinst
During rootfs construction, image.bbclass will call depmod after all the
modules are installed.  There's no need to run it from the postinst when
operating in offline root mode.

(From OE-Core rev: e8db81e4655ab7535db04aa3c8d7f9868ced6039)

Signed-off-by: Phil Blundell <pb@pbcl.net>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-10 15:16:51 +00:00
Ming Liu e93a345fae sstate: add do_package to the noexec list in setscene_depvalid
do_package doesn't exist and are noexec anyway for native/cross/crosssdk
packages.

(From OE-Core rev: 1028ac813fa9803ebfff6bcfa7f8b67012609b27)

Signed-off-by: Ming Liu <ming.liu@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-07 13:58:32 +00:00
Christopher Larson 18d486c58a base.bbclass: pull in file-native for src.rpm
Unpacking an src.rpm uses rpm2cpio.sh, which requires 'file'.

Without this, builds of rpm on a host without 'file' installed will fail with
very strange messages.

(From OE-Core rev: 97e1d84e2d1a74791ce6af88ddc27963bc0e1bec)

Signed-off-by: Christopher Larson <kergoth@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-06 22:17:33 +00:00
Ming Liu 22764d3f4d sstate: Add optimizing logic for crosssdk setscene dependencies
This patch mainly aims to add optimisation for crosssdk setscene dependency
validating which we haven't handled in current logic, and which I think we
could have as we've already implemented to native/cross, although there
are albeit not many crossdk tasks, we could still get some performance
enhancement.

(From OE-Core rev: 1094983ff87a8b745a5bc7bfe9514433ee3c4ad2)

Signed-off-by: Ming Liu <ming.liu@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-06 22:17:33 +00:00
Richard Purdie f4ae439914 Revert "gconf.bbclass: remove --disable-schemas-install"
This reverts commit 84fa245b1d1e7935094e3b8a452d69461dc3dcbb.

Ross Burton comments that:

*Some* packages have migrated away from gconf to gsettings.  Not all
packages have done this, so anything still using gconf is now broken.
Note that almost nothing in oe-core uses gsettings as we're still
using the GTK+ 2 stack generally.

The problem is that people are using gnome.bbclass which is a kitchen
sink class, inheriting many other classes that may or may not be used.
To resolve this warning gnome.bbclass should extend the sanity check
whitelist with --disable-schemas-install as it is the class causing
gconf.bbclass to be inherited on recipes that don't use gconf.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-06 16:30:28 +00:00
Ting Wang bcacd18175 lib/oeqa/runtime: add test for python
Run a python script on the target
1)checks the output.
2)Call os.system method create a testfile

(From OE-Core rev: 4465c9368b0c37a3a2c41b68f65de08690a8179b)

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-06 11:14:01 +00:00
Robert Yang 5ddb7d4ebb mime.bbclass: remove the --disable-update-mimedb
Gnome and other freedesktop's mime data has been moved to
shared-mime-info, and there is no such an option any more, we already
have this recipe, so remove it, this will fix the warning:

configure was passed unrecognised options: --disable-update-mimedb

(From OE-Core rev: da2156ee0f1ddab499d9ca2968b82b411ea84a95)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-06 11:13:56 +00:00
Robert Yang 31fe1b67a2 gconf.bbclass: remove --disable-schemas-install
Gnome has moved the schemas to the gsettings-desktop-schemas pkg, so
there is no --disable-schemas-install option any more, and we already
have the gsettings-desktop-schemas recipe, so remove it, it wil fix
the warning:

configure was passed unrecognised options: --disable-schemas-install

(From OE-Core rev: 84fa245b1d1e7935094e3b8a452d69461dc3dcbb)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-06 11:13:56 +00:00
Chen Qi 655b432ac3 image.bbclass: add ability to set systemd default target
Add ability to set the default target for systemd images.

The default target for system is controlled by SYSTEMD_DEFAULT_TARGET.
The default value for this variable is derived from checking whether
IMAGE_FEATURES contains 'x11-base' or not. Each image could override
this value in its own recipe. For now, we don't need to do any change,
because all images that support graphical environment has 'x11-base'
in its IMAGE_FEATURES.

[YOCTO #3816]

(From OE-Core rev: 049f89155b1e80875aad6e53b21808b827c06915)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-06 11:13:54 +00:00
Paul Eggleton 17aa506450 classes/package: set SUMMARY in do_split_packages()
do_split_packages() is commonly used to split out plugin/module packages
dynamically within recipes. If it doesn't set SUMMARY for each of these
packages then they get a generic SUMMARY from the recipe, which isn't
particularly useful; so add a parameter to set this and default it from
the current description parameter (it ought to have been the other way
around, but the description parameter is what we currently have in use
by all recipes that use this function.)

Fixes [YOCTO #5406].

(From OE-Core rev: 2b3080831042ffab26d70c3feee232fc31aa591a)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-02 22:39:24 +00:00
Richard Purdie a22ee50865 Update after toplevel LICENSE file checksum change
(From OE-Core rev: bbd88aebcabbb19c27a7d752d4a5b8ad9ff9412e)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-02 14:21:04 +00:00
Alexandru DAMIAN 405c322c72 toaster.bbclass: fix crash on buildstats collection
Toaster needs buildstats to be enabled in order to
collect task statistics. The toaster.bbclass didn't
have a guard to stop task data collection if the buildstats
weren't enabled, leading to a crash.

This patch verifies that the task variables are defined before
trying to use them.

(From OE-Core rev: 7f2637ec8d1b8840c31255572b5cb058777382e7)

Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-12-21 17:22:38 +00:00
Paul Eggleton 63fb3587fc classes/insane: restore printing LIC_FILES_CHKSUM checksum if not specified
OE-Core rev ec8590aa81e201e28e500935d31cd7266114471f (by me)
unintentionally disabled printing the actual checksum value if no
checksum was specified, i.e.:

LIC_FILES_CHKSUM = "file://COPYING;md5="

Printing the actual checksum in this case is really useful when writing
a new recipe, so put this back in.

(From OE-Core rev: e58cdd385584d7449236e6b1dc1bce0cbc8f2a0a)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-12-21 17:22:38 +00:00
Richard Purdie 325fb2bd24 sstate: Use datastore copies due to data changes persisting
The way the "all arch" PKGSPEC is enabled, it causes corruption
of the datastore of sstate operations against other tasks.

Data store copies are cheap and allow us to use that trick, resetting
to a clean copy of the data afterwards.

(From OE-Core rev: afaf16100efa79a275a2f4b9f2caa80decfdeb81)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-12-21 09:00:52 +00:00
Richard Purdie 6aa4de3b7c externalsrc: Fix deltask usage
An incorrect version of the patch merged which entirely removed the covered
variable. This corrects the patch so the code works.

(From OE-Core rev: 33874f9af895757c4b0fd2f4d350ed308edac03c)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-12-21 09:00:52 +00:00
Richard Purdie 394691762a terminal: Exclude BB_ORIGENV from the signatures
devshell was printing a traceback when exiting due to the use of dump_sigs()
being called on the task. This is turn was since this function referenced
BB_ORIGENV. We might as well globally exclude this for now since its a
data store object and cannot be pickled, not would it make sense to do so.

[YOCTO #5683]

(From OE-Core rev: 84b549afb46fce7b5cdaa977286aeb2e90d3bfdb)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-12-20 17:18:16 +00:00
Richard Purdie 3ada51f7aa sstate/sstatesig: Add populate_lic to list of arch invariant sstate tasks
Like fetch, unpack and patch, populate_lic doesn't vary between different
archs so we should mark it as such. This means better sstate cache reuse
with fewer duplicate files as well as less confusing sstate debugging.

sstatesig also needs to account for the fact BPN is used for sstate files
in these cases.

(From OE-Core rev: 3d59d0bed756f64d0092caa3892239c779c4a341)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-12-20 12:26:32 +00:00
Richard Purdie e5ee1b8c0d sstate: Convert to use ':' as a filename sperator and use SSTATE_SWSPEC globally
Currently the code has problems differentiating between "gcc-cross" and "gcc-cross-initial"
sstate files. We could add in a ton of special casing but tests show this isn't scaling
well. Using a more unique separator resolves the issue.

The choice of which separator to use is a hard one. We need something which isn't commonly
used in PN, PV, PR, *_OS and *_ARCH which rules out '-', '_' and it needs to work ok with
webservers/http which makes ';' and '%' harder.

The change also sets SSTATE_SWSPEC globally since writing out differently named siginfo
files for the fetch/unpack/patch tasks is a waste of diskspace, the hashes match for
all PN in the majority of cases and if they don't, its not a big issue as the hash is
different. This makes the results from sstate debugging more understandable.

(From OE-Core rev: 6f823a23c5f1d0ffa0a27db1c1bc1907de788505)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-12-20 12:26:31 +00:00
Stefan Stanacar 963b69b5f3 testimage: include traceback when loading a test fails
Makes it much easier to figure out where a syntax error is.

(From OE-Core rev: 0c30a25c3d5f7fb1087dff45e01595329620235f)

Signed-off-by: Stefan Stanacar <stefanx.stanacar@intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-12-20 12:26:30 +00:00
Richard Purdie d32d08fd48 ptest: Disable for native recipes
We don't use or otherwise care about ptest for native recipes. Its therefore
pointless to take the performance hit for them and we can disable them.

(From OE-Core rev: f3d35bb4719d0b8f8e6fc5976e9dbfc0e2019c2e)

(From OE-Core rev: 16dd4cd5564a19b0a221661205430e01c35673af)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-12-20 12:26:26 +00:00
Richard Purdie f857b62b8a ptest: Fix dependency/ordering issue
We've seen occasional issues on the autobuilder where files appear during
do_populate_sysroot and this is due to the ptest installation happening
in parallel. This fixes the order to be deterministic.

(From OE-Core rev: 0ed1641d870f4bb5735aeeb7bd29cc196e61b7cc)

(From OE-Core rev: 96aa9bf8880088c9a710c86cc8ee106138152a98)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-12-20 12:26:26 +00:00
Richard Purdie 64bb800c73 externalsrc: Use deltask API
Now we have deltask API, stop poking around bitbake internal variables.

(From OE-Core rev: 98637df0c04fd14b506d9eec7da8ec6ae441221b)

(From OE-Core rev: 3aa30ca04752c6366a81db6ff99209fa0b46861c)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-12-20 12:26:25 +00:00
Richard Purdie 14471d201b native: Use deltask to remove tasks which have no purpose
core-image-sato has 47703 inter task dependencies before this patch
and 29883 afterwards which is a significant worthwhile task graph
simplification.

(From OE-Core rev: ac4b1518ec549b5a4d7a79c60dbf96b90797e1d8)

(From OE-Core rev: 8f4f229ba8117ba411a858bf47f88a370bb70491)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-12-20 12:26:25 +00:00
Ross Burton 402308cfe2 systemd: pass --root in prerm if running on host
If a systemd image is built without a package manager then packages will be
removed from an image during rootfs generation, but without passing --root the
systemctl will look on the *host* system.

(From OE-Core rev: d01da862d10d9544f8da846b577cf955041d4c0c)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-12-18 17:08:06 +00:00
Ross Burton 7e17255fa8 buildhistory: be quiet when garbage collecting the git repo
(From OE-Core rev: b117403423f700eb4cc6967b9fb8ff3e2858e279)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-12-18 17:08:05 +00:00
Ross Burton 2a58f76935 useradd.bbclass: add dependency on base-files
Packages that use useradd.bbclass should have a dependency on base-files so that
the /etc/skel directory is populated.  Without this dependency base-files may or
may not be installed when the postinst runs, and the skel content may or may not
be copied.

(From OE-Core rev: 556368ba8a1f933a86b69be024bd0711d4bfe0a3)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-12-18 17:08:05 +00:00
Richard Purdie 480bf037ae sstate: Get rid of crazy name mapping
When originally developed, it was thought a task may have more than one associated
sstate archive. The way the code has grown that idea is now not possible or needed.
We can therefore assume one sstate archive per task and drop the crazy name
mapping code. Simpler is better in this case.

The downside is that various sstate archives will change name so this forces a cache
rebuild. Given the other sstate changes going in at this time, this isn't really
a bad thing as things would rebuild anyway.

(From OE-Core rev: 5afe86a6854b21692fd97c5fc7fab50dbc068acb)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-12-18 17:08:05 +00:00