tcmode-default: Update PREFERRED_PROVIDERS

Update PREFERRED_PROVIDERS after cross tooling name change to include PN.

Also drop the now obsolete gcc-intermediate which no longer exists.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
sanity: Bump BitBake minimal version to 1.23.0

The metadata started using the bb.utils.contains_any which has been
add in the BitBake 1.23.0 release, set this as the minimal version to
ensure parsing compatibility.

Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
tcmode-default.inc: Add default SDK PREFERRED_PROVIDERS

We should be explicit about the providers for the SDK toolchain so
add entries to do this.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
base.bbclass: Silence PREFERRED_PROVIDER warnings for sdk builds

Unfortunately expandKeys() notices overlap between the SDK and TARGET
PREFERRED_PROVIDERS entries when we set things up for the SDK recipes.

To avoid this, delete one of the sets of keys to avoid supurious warnings.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
layer.conf: Exclude gcc-cross dependencies from checksums

gcc-cross technically depends on the C library however we can use
one toolchain for multiple different tunes within a given architecture.

Manually remove these dependencies so that gcc-cross isn't rebuild with
every tune change.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
cross: Update PKG_CONFIG variables after recent changes

The PKG_CONFIG definitions should now more closely match those from native.bbclass.
We can't use ${libdir} here since it contains the target arch prefix.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
gcc-cross: Drop TARGET_CC_ARCH

Since we no longer build target libs within gcc-cross, we can drop the
TARGET_CC_ARCH flags and hence make it independent of tune.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
gcc-common: Only apply fpu settings to target gcc

Within the OE build environment, we supply the correct fpu settings. These
only need to be spelt out for the on-target gcc.

Doing this means the checksums for the core compiler don't depend on the fpu
settings. We exclude the compiler tunes for similar reasons, it doesn't need
to influence the compiler build.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Add texinfo.bbclass; recipes that use texinfo utils at build-time inherit it.

The class itself currently does nothing. The idea is to mark all recipes that
make use of the texinfo utilities. In the future, this class could be used to
suppress the generation/formatting of documentation for performance,
explicitly track dependencies on these utilities, and eliminate Yocto's
current dependency on the host system's texinfo utilities.

Signed-off-by: Max Eliaser <max.eliaser@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
PR bumps to remove PRINC usage from meta-raspberrypi

This allows us to remove the following uses of PRINC in meta-raspberrypi:

recipes-bsp/formfactor/formfactor_0.0.bbappend:
    PRINC = "1"

recipes-graphics/xorg-xserver/xserver-xf86-config_0.1.bbappend:
    PRINC := "${@int(PRINC) + 5}"

Signed-off-by: Paul Barker <paul@paulbarker.me.uk>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
gcc-common: Ensure checksums don't change to match old behaviour

There is a fix about to go into bitbake to ensure that datastores
being accessed with a name other than "d" are correctly reflected
in checksums. This will cause this function to add in a number of
dependencies we don't want.

These do need to be properly unravelled in due course but would
only really affect multilib builds. For now therefore just exclude
the variables as per the old behaviour.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
curl: Backport a fix for a build issue

mkhelp: generate code for --disable-manual as well

This allows configure --disable-manual to run and build without having
to regenerate the src/tool_hugehelp.c file which otherwise is necessary
since we ship tarballs with that file present.

Signed-off-by: Tudor Florea <tudor.florea@enea.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
sstatetests: Update after binutils-cross name change with PN addition

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
sstatetests: Use TUNE_ARCH instead of TARGET_ARCH

The scripts extact variable values from bitbake -e. Unfortunately
TARGET_ARCH is unset from that environment so we use TUNE_ARCH instead
which will have the value we need.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
cleanup-workdir: Fix crosssdk reference after addition of PN

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
gcc: Add 4.9 recipes

(From OE-Core rev: f051216ea373f166016b15bbd2a2a6f136430372)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
cairo: Fix build with gcc 4.9

Fix upstream bug
https://bugs.freedesktop.org/show_bug.cgi?id=77060

gcc 4.9 now generates slim objects when LTO is used
These slim objects only contain intermediate language
representation for LTO. Use -ffat-lto-objects to create files which
contain additionally the object code. When linking some .so file, the option
'-flto' is missed, so the error happens.
We add '-ffat-lto-objects' flag to make gcc 4.9 behaves the same as gcc 4.8.

(From OE-Core rev: c4e65e14fbdf957aa34e074337c5649a0b0888b7)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
binutils: Fix building nativesdk binutils with gcc 4.9

Patches explain the issue in detail but this is exposed
with gcc 4.9 in binutils 2.24

(From OE-Core rev: fc5c467b680fc5aef4b0f689e6988e17a9322ae0)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
systemd: Fix build with gcc 4.9

We need to use gcc-nm and gcc-ar to deal with slim objects
which are generated when using -flto

(From OE-Core rev: e6d84c9f4fef201217ada60711ecfb94bc5dc2e0)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
oprofile: Update to 0.9.9

Backport patches to fix with gcc 4.9
delete applied patches and obsoleted ones

(From OE-Core rev: 9ef0ed510aff5e975fb6d8be9330a10172a5b5d8)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>