sstate: Change overlapping files warning to a fatal error

When files overlap in the sysroot, something bad usually happened. We've had
two independent cases recently where a couple of months after one of these
warnings was shown, builds failed due to corruption.

This change moves the warning to become a fatal error. The complaint I've had
about this is that we need to tell the user what happened and more importantly
how to recover from it. If we could recover from it, great but the trouble is
we simply don't know what happened.

As a compromise, we can document several of the possible scenarios in the error
message. We don't normally go to this level of detail however in this case, I'm
lacking other viable alternatives.

I do believe it is important to stop as corruption occurs rather than letting the
build contunue into territory that is not deterministic amongst other things.

The complex message is followed by a simpler one in case the long message is too
much for the user.

(From OE-Core rev: 179ac7de03977b6e440409eddb2166819e07286a)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
systemd: disable resolv.conf symlink unless resolved is enabled

The tmpfiles configuration in systemd unconditionally creates a symlink
from /etc/resolv.conf to the location where systemd's resolved service
will place the real file.  This link is only appropriate when resolved
is enabled and running: its presence prevents connman or other systems
from providing a working resolv.conf when systemd is not assigned that
responsibility.  OE has not yet enabled systemd's networkd or resolved
by default.

There is a TODO in the systemd source to fix this, but it has not been
addressed upstream.  This patch comments out the corresponding line when
resolved is not enabled in the package configuration.

Signed-off-by: Peter A. Bigot <pab@pabigot.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
coreutils: selinux/flask.h should respect to with_selinux

Fixed when build with meta-selinux even with --without-selinux:
runcon.c:49:28: fatal error: selinux/flask.h: No such file or directory
 # include <selinux/flask.h>
                            ^
compilation terminated.

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
gst-plugins-base: fix build failure for x86

On x86, EMMINTRIN is defined but not usable without SSE so check for
__SSE__ and __SSE2__ as well.

Signed-off-by: Jackie Huang <jackie.huang@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
libpam / xtests: remove bash dependency

There's not bash specific syntax in the xtests scripts:

  $ cd Linux-PAM-1.1.6/xtests
  # replace /bin/bash to /bin/sh and check the bashisms:
  $ checkbashisms *.sh
  No output

So the runtime dependency to bash could be removed.

Signed-off-by: Wenzong Fan <wenzong.fan@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
perf: fix issue about package splitting

Currently, perf can't split to perf-archive, perf-tests, perf-python and
perf-perl. All files are included in perf package. Change the perfexecdir
variable to make split successfull. Add python to RDEPENDS_perf-tests.

Signed-off-by: Chong Lu <Chong.Lu@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
qtdemo-init: Make qtdemo startup correctly

The qtdemo can't launch via qtdemo-init initscript. Fix it.

Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
syslog: Change unused variable declaration LOCAL=0 to LOG_LOCAL=1

This fix allows the correct appending of -L to syslogd arguments when both file and remote logging are selected.

Signed-off-by: Michael Gloff <mgloff@emacinc.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
gnomebase: fix indentation

Signed-off-by: Ross Burton <ross.burton@intel.com>
packagegroup-core-standalone-sdk-target: Add libgcov-dev to on device SDK

When a user takes coverage in gcc of SDK, it becomes the link error in SDK
because there is not libgcov.

----
ld: cannot find -lgcov
collect2: error: ld returned 1 exit status
----

Signed-off-by: Nobuhiro Iwamatsu <nobuhiro.iwamatsu.yj@renesas.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
acpid: use ${PN} for SYSTEMD_SERVICE

We should use ${PN} instead of 'acpid' for SYSTEMD_SERVICE, otherwise
we would have the 'installed-not-shipped' QA error if multilib is enabled
and we run `bitbake lib32-acpid'.

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
volatile-binds: use ${PN} for SYSTEMD_SERVICE

As this recipe inherits allarch, it makes no real difference whether
we are using ${PN} or 'volatile-binds'. But using ${PN} would keep
the same style with the other recipes in OE.

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
dhcp: use ${PN} for SYSTEMD_SERVICES

We should use ${PN} instead of hardcoding 'dhcp' for SYSTEMD_SERVICES,
otherwise we would have 'installed-not-shipped' QA error if we are building
lib32-dhcp.

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
pinentry: add recipes

gnupg 2.x.x needs pinentry to work

Signed-off-by: Roy Li <rongqing.li@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
gnupg: add pinentry into RRECOMMENDS

Pinentry is needed for most function of GnuPG, so add it into RRECOMMENDS

Signed-off-by: Roy Li <rongqing.li@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
sstate.bbclass: update the timestamps after install

Update the sstate file's timestamps after it is installed, it will be
very useful for removing the old sstate file, especially, it's not easy
to remove when use the shared SSTATE_DIR, we can easily remove them with
this change, for example:

$ find state-cache -type f -ctime +10 -exec rm -f {} \;

Will remove the sstate file which isn't used by recent 10 days.

We can use the -atime, but it is not always available, for example,
when mounted with "-o noatime".

The touch is a very light weight action, and the
scripts/sstate-cache-management.sh also requires this.

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
oeqa/utils: Added filter to LogResults decorator to enforce custom log level.

Signed-off-by: Lucian Musat <georgex.l.musat@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
git: add Git perl module to perltools package

Git perl tools such as add--interactive load the Git module at runtime.
A previous patch to eliminate a QA error by deleting it instead of
packaging it was incorrect.

    beaglebone[62]$ git add -i
    Can't locate Git.pm in @INC (you may need to install the Git module) (@INC contains: /usr/lib/perl/5.20.0 /prj/pab/Utils/lib/perl5/linux-arm/5.020000 /prj/pab/Utils/lib/perl5/ /prj/pab/Utils/lib/perl5/site_perl/linux-arm /prj/pab/Utils/lib/perl5/site_perl /etc/perl /usr/lib/perl/site_perl/5.20.0/ /usr/lib/perl/site_perl/5.20.0 /usr/lib/perl/vendor_perl/5.20.0/ /usr/lib/perl/vendor_perl/5.20.0 /usr/lib/perl/5.20.0/ /usr/local/lib/site_perl .) at /usr/lib/git/git-core/git-add--interactive line 7.
    BEGIN failed--compilation aborted at /usr/lib/git/git-core/git-add--interactive line 7.

[YOCTO#3780]

Signed-off-by: Peter A. Bigot <pab@pabigot.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
texinfo: fix QA Error while doc compress enabled

While doc compress enabled, ther is a QA issue:
...
ERROR: QA Issue: texinfo: Files/directories were installed but not shipped
  /usr/share/info/info.info.bz2
  /usr/share/info/info-stnd.info.bz2 [installed-vs-shipped]
...

Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
man/texinfo: conditionally add gzip/bzip2/xz to RDEPENDS

Conditionally add 'xz/bz2/gzip' to info/man's RDEPENDS
according to DOC_COMPRESS.

[YOCTO #6750]
[YOCTO #6751]

Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>