Commit Graph

3204 Commits

Author SHA1 Message Date
Khem Raj 0221af0f4e classes: Add distutils for python3
In line with python2 add distutils and setuptools
classes for handing python3

Use python-distribute instead of python-setuptools in setuptools bbclass

Remove --single-version-externally-managed since its setuptools
specific and we dont use it anymore

Do build_ext as separate step during compile

Add DISTUTILS_BUILD_EXT_ARGS for modules to pass flags to build_ext step
in setup.py

Add build_ext as sepate step during compile and add
the cross sysrooted library and headers since we are cross
compiling

Use ${PYTHON_PN} in place of hardcoding python name

Remove the /etc/share if its empty

Since OE-Core times we now have machine specific sysroots
for targets unlike before when we used arch specific sysroots
so reflect that here

Use MACHINE for sysroot when not building for build host

Python's machinery replaces directories in sysroot path to match OE's
staging area sysroots. Earlier we use to have HOST_SYS represent sysroot
always but now we use MACHINE to represent target sysroots but HOST_SYS
to represent host sysroot. This patch caters to that difference

(From OE-Core rev: 8bb0206ed67228c88dd5bc2d8b36ce28f48b78f4)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-02-02 22:37:39 +00:00
Khem Raj 8314590f09 classes/distutils: Introduce PYTHON_PN
This is needed to accomodate python3 alongside
python2

(From OE-Core rev: ae931c2cf9e48e1fb74b4b727dbf668ea880023f)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-02-02 22:37:38 +00:00
Khem Raj 867b1eee25 package_rpm.bbclass: Trigger the regexp on exact keyword match
This causes issues when postinstalls have ERROR keywords
its interpreted as error and image build is cancelled

(From OE-Core rev: f5bc3cfac9545c402b415695c4e0f98ad38fb2b0)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-02-02 22:37:38 +00:00
Khem Raj 962ea3dfcc python3native.bbclass: Add python3 abstraction class
(From OE-Core rev: ead30aa5e3046f450ee688e14f6d5268d9ed0bd8)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-02-02 22:37:38 +00:00
Robert Yang 4720817502 sanity.bbclass: check that TMPDIR is not located on nfs
There would be some unexpected errors when the whole TMPDIR is located
on nfs, so add a test for it in sanity.bbclass.

Note:
The better way to get the filesystem id should be get f_fsid from struct
statvfs, but there is no f_fsid in os.stat() or os.statvfs(), so we use
'stat -f -c "%t"' here.

BTW., s/tmpdir/TMPDIR/ in the previous comment message to make them have
a uniform.

[YOCTO #5442]

(From OE-Core rev: ee4061b43522c4893b41c3be63d06be1ee7e3c70)

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-02-02 11:22:11 +00:00
Chen Qi 021129ab0b update-rc.d: automatically rdepend on initscripts-funtions
Automatically add 'initscripts-functions' to packages when needed.

This extra dependency is added only when the package's init script
would be used at system start-up. In other words, in a systemd based
image, if the package has already got its service files, it will not
have this extra dependency.

(From OE-Core rev: de875cb8893fd8372dd77babaef54ab2d790693d)

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-02-02 11:22:11 +00:00
Nathan Rossi 0031db1aca kernel.bbclass: Fix empty modules directory QA issue
If a kernel is built without any external modules (aka no CONFIG_*=m),
then during a modules_install of the kernel an empty directory is
created at /lib/modules/${KERNEL_VERIONS}/kernel. This is behaviour of
the kernel infrastructure, the directory would normally be populated
with the modules that were built.

However because of the expectations of kernel-modules-split, no packages
are created when there are no modules and an empty directory lingers.
This raises QA issues as warning or errors (depending on the distro).

The following patch changes the kernel_do_install task to check if the
directory is empty and if so removes it.

(From OE-Core rev: 63d3070b7e1207164891b154a5b9017731e75872)

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-02-02 11:22:08 +00:00
Alexandru DAMIAN 28ba0fbefe toaster.bbclass: save original package name
If we can get the original package name when reading
package infos in toaster.bbclass, we save it for proper
referincing in the toater ui.

(From OE-Core rev: c3f3fed1b397b6ee6d44e7d39e63d084e4a88e30)

Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-29 17:40:33 +00:00
Martin Jansa 3f8f70bc15 package.bbclass: Show which files require given dependency in debug output
* when log.do_package shows some unexpected dependency, people usually
  need to grep package directory to find which binary was creating that
  dependency, show it directly in the debug output

(From OE-Core rev: cf0696a39b811b13bb6e7dd06a2dad607e93a643)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-29 17:38:50 +00:00
Martin Jansa ee045eeb38 package.bbclass: Don't search for providers of PRIVATE_LIBS
* split PRIVATE_LIBS and don't use find(), so that libfoo cannot be
  found in PRIVATE_LIBS = "libfoobar"

(From OE-Core rev: 2dec075478f977b554061dd9a4b2b8ff4af3597a)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-29 17:38:50 +00:00
Jacob Kroon 7bbaf8b149 cml1.bbclass: Fix return code handling in do_menuconfig()
On my system, doing "bitbake -c menuconfig busybox" pops up
a gnome-terminal, I can see that the compilation starts but then the
terminal automatically exits.

It turns out I don't have ncurses development package installed on my host,
and OE's host sysroot isn't being passed to gcc, so compilation fails.
The window automatically closes before I can read the error message
since the '$' in the return code check needs to be escaped.

Make sure the user can read the error message by properly checking the
return code.

(From OE-Core rev: a2241a92fc48e4286de17b23124a9e2f0fd8185b)

Signed-off-by: Jacob Kroon <jacob.kroon@mikrodidakt.se>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-28 11:41:21 +00:00
Ming Liu af1a44ada0 multilib.bbclass: fix Multilib QA Issue
Multilib QA warning was observed, as follows:
------
WARNING: Multilib QA Issue: lib32-oprofile package lib32-oprofile -
suspicious values 'kernel-vmlinux' in RRECOMMENDS
------

The package starting with 'kernel-vmlinux' should be ok with multilib QA
checking.

(From OE-Core rev: 00012b63fefd77c57169f7cc06d648f54890e5df)

Signed-off-by: Ming Liu <ming.liu@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-28 11:41:21 +00:00
Otavio Salvador f328a9d53b buildhistory.bbclass: Improve robustness in image file listing
The filenames sometimes may have strange names. With the 'awk' script
it handled a limited number of spaces in the filename and a package
installing a file named "test file with spaces" would have its name
truncated.

This patch uses the find's printf formating to simplify the code and
properly handle this case. From a testing image, the only diff produced
is:

,----[ files-in-image.txt diff ]
| --rwxr-xr-x root       root                0 ./usr/bin/test\ file\ with\
| +-rwxr-xr-x root       root                0 ./usr/bin/test file with spaces
`----

The options used are available since findutils 4.2.5, released in 19
Nov 2004, making it available in all supported host distributions.

(From OE-Core rev: b09e24449c1c9ae335732dd070eacf66777556a1)

Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-28 11:32:50 +00:00
Koen Kooi a329371eaa scons bbclass: enable parallel make
Scons supports -jX parallel make, so let's use that. A small scale test of a few recipes shows no failures!

(From OE-Core rev: a3ad3602b0e8d4a6387cac3f118722af1a0781eb)

Signed-off-by: Koen Kooi <koen.kooi@linaro.org>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-28 00:52:36 +00:00
Ross Burton 1ec04bb215 image.bbclass: fix paths to run-postinsts
The run-postinsts script has been moved to ${sbindir}.

[YOCTO #5719]

(From OE-Core rev: 2c8dc1b00c0cf83da106ef9544cd11cde7ce43a1)

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-28 00:52:35 +00:00
Robert Yang 8b576acb21 sanity.bbclass: check required perl modules
Several required perl modules may missing on the host, for example the
Text::ParseWords, Thread::Queue and Data::Dumper are not installed by
default on recent Fedora releases (19 and 20 AFAIK). There would be wild
errors if they don't exist, so check them in sanity.bbclass.

And add perl to SANITY_REQUIRED_UTILITIES.

[YOCTO #5744]

(From OE-Core rev: b46d82bea23208733b71642bb262c9a05c08efec)

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-28 00:52:34 +00:00
Leonid Borisenko 66055fbedd package_{ipk, deb, rpm}.bbclass: support additional user-defined metadata
Additional metadata from user-defined variable is written into
control/spec file of binary package.

Three variables are searched for adiitional package metadata:

  * PACKAGE_ADD_METADATA_<PKGTYPE>_<PN>
  * PACKAGE_ADD_METADATA_<PKGTYPE>
  * PACKAGE_ADD_METADATA

First found variable with defined value wins.

<PN> is a package name. <PKGTYPE> is a distinct name of specific
package type:

  * IPK for .ipk packages
  * DEB for .deb packages
  * RPM for .rpm packages

Variable can contain multiple [one-line] metadata fields separated by
literal sequence '\n'. Separator can be redefined through variable flag
'separator'. In package control/spec file separator is replaced by
newline character.

(From OE-Core rev: 773d7352309241e15ef5acadcbe416bdd7d45c18)

Signed-off-by: Leonid Borisenko <ive.found@gmail.com>
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-28 00:52:32 +00:00
Leonid Borisenko be77f3138c package.bbclass: add getter of additional metadata
Two variables are searched for value of additional package metadata:

  * PACKAGE_ADD_METADATA_<PKGTYPE>
  * PACKAGE_ADD_METADATA

First found variable with defined value wins.

<PKGTYPE> is a parameter of getter and expected to be a distinct name
of specific package type. For example: 'DEB' or 'RPM'.

Variable can contain multiple [one-line] metadata fields, separated by
literal sequence '\n'. Separator can be redefined through variable flag
'separator'. Getter returns found value with separator replaced with
newline character.

As side-effect, searched variables acquired flags 'type' (equals to
'list') and 'separator'.

(From OE-Core rev: 98ea2fc35a3ef609a944929e21e0f9be2889036d)

Signed-off-by: Leonid Borisenko <ive.found@gmail.com>
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-28 00:52:32 +00:00
Joao Henrique Ferreira de Freitas e40123a062 boot-directdisk: fix the support of vmdk
Previous change (086ce22b88f5ef5f75a83119a32c8b3fdcfa296d) broke
the creating of vmdk images. This protects shell expansion variables
and let dd generate the image to be transformed to vmdk by image-vmdk.class.

(From OE-Core rev: 2fe667afbdc6880c377657b5ff27e6db3b6cbe77)

Signed-off-by: Joao Henrique Ferreira de Freitas <joaohf@gmail.com>

[edit to change the usage of IMAGE_FSTYPE to IS_VMDK]

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-23 10:17:37 +00:00
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