package.bbclass: Move provides and requires code to the spec file

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
test-rexec extras

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
atom-pc: Tweaks to turn into a more general 'work anywhere' configuration along with basic X image

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
build.py: Dump out performance data of individual tasks

Signed-off-by: Richard  Purdie <richard.purdie@linuxfoundation.org>
Revert "build.py: Dump out performance data of individual tasks"

This reverts commit f223728a0f6a1e40202ecedbfaef026509454973.
linux-yocto-3.2: Enable lzma compression
linux-yocto: Set an increased ramdisk size

This allows booting from larger compressed root filesystems as the initrd.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
image-live.bbclass: Use the rootfs as an initrd using lzma compression and drop the initrd usage

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
scripts/cp-noerror: Copy the code from shutils.copytree, update not to error if the mkdir fails

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
autotools: Fix race over aclocal macro directory

The previous steps taken to address races over the aclocal macro directory and the removal
of files hasn't been sufficient since aclocal still looks at that directory as part of its
default search path. This patch passes the aclocal-copy directory into aclocal as its system
directory, removing any chance of it accessing the original aclocal directory.

Hopefully this should therefore fix the race issues once and for all.

In order to do this, cp-noerror needs to not error if the directory already exists.

Its also been noticed that aclocal defaults to using STAGING_DATADIR_NATIVE even when
building for the target. Only using the target directory would cause errors such as
missing pkgconfig macros (since we only depend on pkgconfig-native, not pkgconfig).
This patch processes both sets of macros maintaining existing behaviour. At a future
date we could look into potentially optimsing this.

[YOCTO #3216]

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
libc-package: Drop bogus replacement operation

The names used to generate the binary-localdata packages need to match the location
the dependencies are added. In one case the dash replacement is made, in the other it
is not leading to packages which cannot be installed:

	eglibc-binary-localedata-af-za.iso88591 is needed by locale-base-af-za.iso-8859-1-2.16-r22.i586
	eglibc-binary-localedata-cs-cz.iso88592 is needed by locale-base-cs-cz.iso-8859-2-2.16-r22.i586
	eglibc-binary-localedata-ru-ru.koi8r is needed by locale-base-ru-ru.koi8-r-2.16-r22.i586
	eglibc-binary-localedata-pl-pl.iso88592 is needed by locale-base-pl-pl.iso-8859-2-2.16-r22.i586
	eglibc-binary-localedata-hu-hu.iso88592 is needed by locale-base-hu-hu.iso-8859-2-2.16-r22.i586
	eglibc-binary-localedata-de-at+euro.iso885915 is needed by locale-base-de-at+euro.iso-8859-15-2.16-r22.i586
	eglibc-binary-localedata-sv-fi.iso88591 is needed by locale-base-sv-fi.iso-8859-1-2.16-r22.i586

This fixes things so the names are consistent.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
package: Recommend virtual-locale-*, don't depend on it

The virtual-locale-* packages are provided by libc which may or
may not have a matching locale for any given recipes's provided locales.
Certainly, we shouldn't get a failure if the locale package isn't
available.

This patch therefore makes the dependency optional rather than
required, allowing the locale packages in question to install. This
resolves errors like:

	virtual-locale-eo is needed by bash-locale-eo-4.2-r5.i586
	virtual-locale-en+boldquot is needed by bash-locale-en+boldquot-4.2-r5.i586
	virtual-locale-en+quot is needed by bash-locale-en+quot-4.2-r5.i586

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
pkgconfig: Drop automatic pkgconfig RDEPENDS

Just because a recipe uses pkgconfig, it doesn't mean that it's -dev
package should RDEPENDS on pkgconfig. I can understand the thinking
that lead to this but it makes sense to be able to install the package
when pkgconfig hasn't been built.

Currently you can also get failures where pkgconfig wasn't built yet
a -dev package is included that depends on it leading to rootfs failures.

I considered making this a RRECOMMENDS but it should probably be an
RSUGGESTS at best given the tenuous pkgconfig requirement any given
-dev package has.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
libtool: Ensure the paths to sed are not hardcoded

If you:

bitbake sed-native
bitbake libtool-cross

then libtool-cross has SED="/path/to/sysroot/sed" which is incorrect. If that
is reused from sstate or sed-native is cleaned, the build will fail.

This patch simply sets sed to be "sed" since we're not on systems where
the sed from PATH is broken.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
autotools.bbclass: Fix gettext macro versions issues

gettext m4 macros don't use the usual versioning/serial mechanism used by
aclocal. It therefore won't update them over and above any local version of
the macro. Equally, we don't run gettextize due to it doing slightly crazy
things to the build.

When we put the aclocal directory as a -I option to aclocal, if this was
found first compared to any recipe provided macros, the correct version
of the gettext macro would still "win". With the switch so correctly override
the system directory, older recipe provided macros may get used.

This patch manually removes the problematic m4 macros in the case we're using
gettext and need to use the correct m4 macros.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
sstate: Use -m option to tar when unpacking sstate

We've noticed failures on the project autobuilders where a shared sstate
directory is used accross multiple builders and the clocks become skewed.

Most of the time this causes harmless building but if this happens where
an environment is changed (make install vs make in qt4-x11-free for example),
the build can fail.

This avoids modification times in the future and should make builds safer
in shared environments sstate was designed for.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
sripts/cp-noerror: Try and use hardlinks if possible

Since we generally have lots of copies of the directories created using this tool, use
hardlinks where possible. This should save a little disk space and improve performance
slightly.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>