gnu-efi: fix the LIBDIR

Its LIBDIR in Makefile is:

LIBDIR = $(PREFIX)/lib

This is incorrect for 64 bit bsp, thus will cause build failures on gummiboot:

ld: cannot open linker script file /path/to/usr/lib64/elf_x86_64_efi.lds: No such file or directory

[YOCTO #6053]

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
gummiboot: add COMPATIBLE_HOST

The gummiboot depends on gnu-efi which had set:

COMPATIBLE_HOST = "(x86_64.*|i.86.*)-linux"

We also need set this for gummiboot, otherwise there would be build
failures for other non-x86 archs.

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
gummiboot: use objcopy from the env

Fix the error:
[snip]
| nm -D -u src/efi/gummiboot.so | grep ' U ' && exit 1 || :
| objcopy -j .text -j .sdata -j .data -j .dynamic \
|   -j .dynsym -j .rel -j .rela -j .reloc -j .eh_frame \
|   --target=efi-app-x86_64 src/efi/gummiboot.so gummibootx64.efi
| objcopy: src/efi/gummiboot.so: Invalid bfd target
| make[1]: *** [gummibootx64.efi] Error 1
| make[1]: *** Waiting for unfinished jobs....
| make: *** [all] Error 2
[snip]

It uses the "objcopy" directly, which is not suitable for cross compile.

[YOCTO #6054]

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
gummiboot: fix the installed but not shipped warning

Fix the warning:
WARNING: QA Issue: gummiboot: Files/directories were installed but not shipped
  /usr/lib
  /usr/lib/gummiboot
  /usr/lib/gummiboot/gummibootx64.efi

This is because it uses "/usr/lib" in gummibootlibdir, use ${libdir} to
fix it.

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
build-appliance-image: update to head ae938eba92b2c89a9fd91161e57c5dbc594ad4ad

Build Appliance includes a more recent version
of poky, up to commit:
ae938eba92b2c89a9fd91161e57c5dbc594ad4ad.

Adds bitbake fixes/optimizations;

Signed-off-by: Cristian Iorga <cristian.iorga@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
run-postinsts: fix issue with checking IMAGE_FEATURES

The old implementation was wrong. It was not very generic and it checked
IMAGE_FEATURES while building the recipe, which led to various issues
with the generation of the final script. That is, the run-postinsts
script was generated once, while building the package for the first
time. Hence, any other changes to IMAGE_FEATURES, like removing/adding
'package-management' did not reflect in the final script.

This commit makes run-postinsts script autodetect the backend used for
creating the image, making it generic.

[YOCTO #5666]
[YOCTO #5972]

Signed-off-by: Laurentiu Palcu <laurentiu.palcu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
cryptodev-linux: add recipe

Yocto kernel linux-yocto uses cryptodev-linux to use device /dev/crypto.
So add cryptodev-linux which is one alternative of ocf-linux and then
remove ocf-linux later.

Signed-off-by: Kai Kang <kai.kang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
openssl: replace dependency ocf-linux with cryptodev-linux

ocf-linux only provides header files but no implementation in kernel.
And Yocto kernel linux-yocto use cryptodev-linux to implement
/dev/crypto interface. So replace dependency ocf-linux with
cryptodev-linux for openssl.

Signed-off-by: Kai Kang <kai.kang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
ocf-linux: remove recipe

ocf-linux only provides header file and no kernel module is built. We
can't use ocf-linux without its implementation. And linux-yocto uses an
alternative project cryptodev-linux, so we remove ocf-linux and use
cryptodev-linux instead.

Signed-off-by: Kai Kang <kai.kang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
package.bbclass: add SHLIBSSEARCHDIRS to define where to search for shlib providers

* when package contains some files matching "^.*\.so", but in directory
  not default linker search paths (e.g. /opt/package/bundled-lib/libfoo.so)
  don't register it as libfoo provider, because it's possible that there
  is different package providing libfoo.so in ${libdir} and that would
  be better shlib provider for other packages to depend on
* recipes providing libs intentionally in some other directory can
  define own SHLIBSSEARCHDIRS value

[YOCTO #4628]

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
qemux86: Add identical qemux86copy variant for tests

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
WIP: Add KERNEL_EXTRA_ARGS?
gtk+: Add PACKAGECONFIG for directfb

* building without x11 doesn't work, because it sets default
  gdkbackend to x11 and then requires cairo-xlib to be available
* checking for CAIRO_BACKEND... no
  configure: error: Package requirements (cairo-xlib >= 1.6) were not met:

  No package 'cairo-xlib' found

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
libsdl: Add support for libsdl-native

Change-Id: I4fb1e623c7bbb1f35ae3001c839cd7e16ce1bd65
Signed-off-by: Alexandru Niculita <alexnick87@gmail.com>
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
cmake: Add ugly hack from meta-qt5 to prevent cmake trying to detect qt5

* cmake doesn't have dependency on qt4/qt5, so these tests usually fail
  but still can cause undeterministic results or build failures (when
  OE_QMAKE_PATH_EXTERNAL_HOST_BINS is undefined or native qmake removed
  while running the test in cmake

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>