]> code.ossystems Code Review - openembedded-core.git/log
openembedded-core.git
6 years agopython3-testtools: add it for oeqa
Robert Yang [Fri, 27 Jul 2018 07:36:17 +0000 (15:36 +0800)]
python3-testtools: add it for oeqa

- It is required by oeqa, add it so that we can add nativesdk-python3-testtools
  to buildtools-tarball.
- The original one is python-testtools_2.3.0.bb which is from meta-openstack
  layer, I divided it into python-testtools.inc and python3-testtools_2.2.0.bb,
  and extended to nativesdk.

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
6 years agopython3-pbr: add it for python3-testtools
Robert Yang [Fri, 27 Jul 2018 06:59:25 +0000 (14:59 +0800)]
python3-pbr: add it for python3-testtools

- The python3-testtools RDEPENDS on it.
- It is from meta-python, I extended it to nativesdk.

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
6 years agopython3-extras: add it for python3-testtools
Robert Yang [Fri, 27 Jul 2018 06:59:25 +0000 (14:59 +0800)]
python3-extras: add it for python3-testtools

- The python3-testtools RDEPENDS on it.
- The original one is python-extras_1.0.0.bb which is from meta-openstack
  layer, I divided it into python-extras.inc and python3-extras_1.0.0.bb, and
  extended to nativesdk.

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
6 years agotestsdk.bbclass: check python module testtools and subunit
Robert Yang [Fri, 27 Jul 2018 03:17:36 +0000 (11:17 +0800)]
testsdk.bbclass: check python module testtools and subunit

The testtools or subunit is not part of python's standard library, so check them
before use.

Fixed when they are not installed on host:
$ bitbake core-image-minimal -ctestsdk
Exception: ImportError: No module named 'testtools'

Now it can run with a warning:
WARNING: core-image-minimal-1.0-r0 do_testsdk: Failed to import testtools or subunit, the testcases will run serially

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
6 years agopax-utils: remove
Ross Burton [Fri, 27 Jul 2018 14:23:04 +0000 (15:23 +0100)]
pax-utils: remove

This was packaged originally to perform QA tests on binaries (text relocations
and RPATHs), but we perform those tests at build-time now.

Signed-off-by: Ross Burton <ross.burton@intel.com>
6 years agooeqa/runtime/scanelf: remove
Ross Burton [Fri, 27 Jul 2018 14:23:12 +0000 (15:23 +0100)]
oeqa/runtime/scanelf: remove

These tests are intended to search for bad RPATHs and text relocations, but we
do these tests at buildtime and as pax-utils is never installed in any default
images the tests are never executed.

Signed-off-by: Ross Burton <ross.burton@intel.com>
6 years agoicon-naming-utils: remove
Ross Burton [Fri, 27 Jul 2018 14:16:07 +0000 (15:16 +0100)]
icon-naming-utils: remove

The last user of this was the sato theme, removed in 2016.

Signed-off-by: Ross Burton <ross.burton@intel.com>
6 years agogccmakedep: remove
Ross Burton [Fri, 27 Jul 2018 14:11:25 +0000 (15:11 +0100)]
gccmakedep: remove

Nothing uses this in oe-core or meta-oe, so drop it.

Signed-off-by: Ross Burton <ross.burton@intel.com>
6 years agolibusb-compat: remove
Ross Burton [Fri, 27 Jul 2018 11:46:52 +0000 (12:46 +0100)]
libusb-compat: remove

Nothing in oe-core or meta-oe links to this now, so the recipe can finally be
removed.

Signed-off-by: Ross Burton <ross.burton@intel.com>
6 years agocups: depend on libusb1
Ross Burton [Fri, 27 Jul 2018 11:55:46 +0000 (12:55 +0100)]
cups: depend on libusb1

There is no need to depend on the compatibility library libusb-compat, as CUPS
links directly to libusb1.

Signed-off-by: Ross Burton <ross.burton@intel.com>
6 years agousbutils: upgrade to 010
Ross Burton [Fri, 27 Jul 2018 11:48:41 +0000 (12:48 +0100)]
usbutils: upgrade to 010

Upgrade to 010.

usbutils uses libusb1 not the older libusb-compat library.

Refresh (and submit upstream) the bashism removal for usb-devices.

Fix LICENSE as lsusb.py is GPLv2 or v3, and set per-package LICENSE fields as
appropriate.  The actual license texts are missing from the 010 tarball (fixed
in git) so point at the SPDX statements in the source files instead.

Remove FILES_${PN}-dev as usbutils.pc doesn't exist anymore.

Remove lsusb.py hashbang change as this doesn't cause any problems now
(installed hashbang is /usr/bin/env python3).

Remove spurious zlib build dependency that isn't required.

Remove spurious RDEPENDS_${PN}-ptest, which doesn't exist.

Signed-off-by: Ross Burton <ross.burton@intel.com>
6 years agounzip: fix symlink problem
Ross Burton [Wed, 25 Jul 2018 20:55:17 +0000 (21:55 +0100)]
unzip: fix symlink problem

Large zip files can cause unzip to crash, take a patch from Fedora to fix it.

Signed-off-by: Ross Burton <ross.burton@intel.com>
6 years agoupdate-rc.d: move to git.yoctoproject.org
Ross Burton [Wed, 25 Jul 2018 10:11:12 +0000 (11:11 +0100)]
update-rc.d: move to git.yoctoproject.org

The update-rc.d repository is now on git.yoctoproject.org, and has merged all of
the patches we were carrying.

Signed-off-by: Ross Burton <ross.burton@intel.com>
6 years agodbus-glib: merge bb and inc
Ross Burton [Wed, 25 Jul 2018 20:15:23 +0000 (21:15 +0100)]
dbus-glib: merge bb and inc

Signed-off-by: Ross Burton <ross.burton@intel.com>
6 years agoossp-uuid: remove
Ross Burton [Thu, 26 Jul 2018 22:44:18 +0000 (23:44 +0100)]
ossp-uuid: remove

This project is dead (upstream website doesn't respond anymore) and can mostly
be replaced with the uuid.h in util-linux.

Signed-off-by: Ross Burton <ross.burton@intel.com>
6 years agoovmf: remove ossp-util from DEPENDS
Ross Burton [Thu, 26 Jul 2018 22:39:42 +0000 (23:39 +0100)]
ovmf: remove ossp-util from DEPENDS

This was added back in the meta-luv days[1] presumably under the impression that
it needs ossp-uuid but in reality we rename ossp-uuid's library and uuid.h comes
from util-linux.

[1] https://github.com/intel/luv-yocto/commit/e08817342b9ea7381944e6c10c555d1c5c62aa6e

Signed-off-by: Ross Burton <ross.burton@intel.com>
6 years agocurl: enable libidn
Ross Burton [Mon, 23 Jul 2018 12:29:43 +0000 (13:29 +0100)]
curl: enable libidn

Now that oe-core has libidn2 we can enable it by default in target curl builds.

Signed-off-by: Ross Burton <ross.burton@intel.com>
6 years agognutls: fix libidn dependencies
Ross Burton [Mon, 23 Jul 2018 11:43:39 +0000 (12:43 +0100)]
gnutls: fix libidn dependencies

gnutls only works with libidn2, so update the build dependency.

Signed-off-by: Ross Burton <ross.burton@intel.com>
6 years agolibidn2: add new version
Ross Burton [Fri, 20 Jul 2018 22:58:32 +0000 (23:58 +0100)]
libidn2: add new version

libidn 1.x is deprecated, add the parallel-installable libidn2.

Signed-off-by: Ross Burton <ross.burton@intel.com>
6 years agoshadow: upgrade 4.2.1 -> 4.6
Chen Qi [Fri, 27 Jul 2018 08:04:34 +0000 (16:04 +0800)]
shadow: upgrade 4.2.1 -> 4.6

The following patches are removed because problems have been fixed in this version.
  0001-shadow-CVE-2017-12424
  fix-installation-failure-with-subids-disabled.patch
  usermod-fix-compilation-failure-with-subids-disabled.patch
  CVE-2017-2616.patch
  check_size_of_uid_t_and_gid_t_using_AC_CHECK_SIZEOF.patch
  0001-Do-not-read-login.defs-before-doing-chroot.patch

The following patches are rebased.
  0001-Disable-use-of-syslog-for-sysroot.patch
  0001-useradd-copy-extended-attributes-of-home.patch
  0001-useradd.c-create-parent-directories-when-necessary.patch
  allow-for-setting-password-in-clear-text.patch

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
6 years agocoreutils: upgrade 8.29 -> 8.30
Chen Qi [Fri, 27 Jul 2018 08:04:33 +0000 (16:04 +0800)]
coreutils: upgrade 8.29 -> 8.30

License-Update: Checksum for src/ls.c is changed but the license remains
the same. The change is only about year change.

Remove 0001-Unset-need_charset_alias-when-building-for-musl.patch as the
target this patches modifies no long exists.

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
6 years agocups: upgrade 2.2.6 -> 2.2.8
Chen Qi [Fri, 27 Jul 2018 08:04:32 +0000 (16:04 +0800)]
cups: upgrade 2.2.6 -> 2.2.8

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
6 years agofreetype: fix potential numeric overflow
Andrej Valek [Thu, 26 Jul 2018 13:24:27 +0000 (15:24 +0200)]
freetype: fix potential numeric overflow

bug: 54023
Signed-off-by: Andrej Valek <andrej.valek@siemens.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
6 years agolsof: upgrade 4.89 -> 4.91
Ovidiu Panait [Wed, 25 Jul 2018 13:06:39 +0000 (16:06 +0300)]
lsof: upgrade 4.89 -> 4.91

Signed-off-by: Ovidiu Panait <ovidiu.panait@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
6 years agodbus: Enable user-session package config
Alistair Francis [Wed, 18 Jul 2018 22:52:25 +0000 (15:52 -0700)]
dbus: Enable user-session package config

If targeting a X11 or Wayland session the user will want user-session
enabled. To target both of these just enable user-session all the time.

Signed-off-by: Alistair Francis <alistair.francis@wdc.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
6 years agogcc-8: Upgrade to 8.2 release
Khem Raj [Fri, 27 Jul 2018 08:31:13 +0000 (01:31 -0700)]
gcc-8: Upgrade to 8.2 release

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
6 years agopackage.bbclass: append to FILERPROVIDES_*/FILERDEPENDS_* variables instead of settin...
Martin Jansa [Thu, 26 Jul 2018 11:09:58 +0000 (11:09 +0000)]
package.bbclass: append to FILERPROVIDES_*/FILERDEPENDS_* variables instead of setting them

* this allows to work around some of the issues with file-rdeps
* e.g. in my case I have /usr/lib/libmali.so.0.1 which according to rpmdeps
  provides only following libmali*
  libmali.so(LIBMALI_1.0)
  libmali.so.0.1
  but many users of this link with libmali.so directly and according to
  rpmdeps require libmali.so which causes file-rdeps for a lot of
  recipes
* I was using simple work around to just set:
  RPROVIDES_${PN} = "libmali.so libGLESv2.so libEGL.so"
  but that doesn't work well with multilib, because the value gets
  expanded with MLPREFIX and
  RPROVIDES_${PN} = "lib32-libmali.so lib32-libGLESv2.so lib32-libEGL.so"
  doesn't help at all.

[YOCTO #9217] Many unsolveable QA warnings from build-deps and file-rdeps

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agoautomake: fix race in parallel builds
Hongxu Jia [Thu, 26 Jul 2018 08:42:14 +0000 (16:42 +0800)]
automake: fix race in parallel builds

While native building, there is a parallel failure
[snip]
|: && mkdir -p doc && ./pre-inst-env /usr/bin/env perl
../automake-1.16.1/doc/help2man --output=doc/aclocal-1.16.1
aclocal-1.16
|help2man: can't get `--help' info from aclocal-1.16
|Try `--no-discard-stderr' if option outputs to stderr
Makefile:3693: recipe for target 'doc/aclocal-1.16.1' failed
[snip]

Correct Makefile rule to fix the issue

Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agoselftest/wic: Fix/cleanup class setup code
Richard Purdie [Thu, 26 Jul 2018 12:03:46 +0000 (12:03 +0000)]
selftest/wic: Fix/cleanup class setup code

The code was using Wic instead of WicTestCase for image_is_ready and
native_sysroot which was confusing some tests. Fix image_is_ready.

For native_sysroot, convert the only user to just run the call itself
as there is no point in executing this for all the other tests which
don't use the value.

Whilst here, move _get_image_env_path to the base class alongside
its parent variabe and fix it to use WicTestCase.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agoclasses/package: fix variable name in comment
Paul Eggleton [Thu, 26 Jul 2018 14:35:39 +0000 (16:35 +0200)]
classes/package: fix variable name in comment

The variable is PACKAGE_WRITE_DEPS as seen in the default below the
comment.

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agooeqa/loader: Ensure invalid test names don't trigger a traceback
Richard Purdie [Thu, 26 Jul 2018 15:03:40 +0000 (15:03 +0000)]
oeqa/loader: Ensure invalid test names don't trigger a traceback

oe-selftest -r <invalid test name>

currently triggers a traceback. Ensure this doesn't happen and the user gets a
sensible error message.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agoqemurunner.py: fix is_alive() to avoid confusing with recycled pid
Robert Yang [Wed, 25 Jul 2018 08:34:33 +0000 (16:34 +0800)]
qemurunner.py: fix is_alive() to avoid confusing with recycled pid

[YOCTO #12493]

Fixed:
- qemu started with pid 10000
- qemu exited unexpectedly
- The pid 10000 is re-used by another different process.

The is_alive() returned True in such a case because both qemu_pidfile and
/proc/10000 exist, but it's another process, this patch fixed the problem.

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agoglibc: Avoid multilibbing on wordsize.h
Daniel Díaz [Wed, 25 Jul 2018 18:35:34 +0000 (13:35 -0500)]
glibc: Avoid multilibbing on wordsize.h

Once another header #includes <bits/wordsize.h>, there is a
potential recursion going on because the
multilib_header_wrapper.h #includes <bits/wordsize.h> again!

This should not happen because an __arm__ (32-bits) or an
__aarch64__ (64-bits) environment guarantees that we will
be getting the correct definition, but when building against
a different target (like BPF), recursion is what happens.

This can be seen, for instance, when building eBPF programs
from the kernel with `clang -target bpf', such as the ones
located in linux/tools/testing/selftests/bpf/.

Signed-off-by: Daniel Díaz <daniel.diaz@linaro.org>
Signed-off-by: Aníbal Limón <anibal.limon@linaro.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agoopenssl: minor indent fixes
Andre McCurdy [Tue, 24 Jul 2018 02:38:55 +0000 (19:38 -0700)]
openssl: minor indent fixes

Fix inconsistent indent (and also make the openssl 1.1 recipe more
consistent and consistent with the openssl 1.0 recipe).

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
6 years agoopenssl: support musl-x32 build
Andre McCurdy [Tue, 24 Jul 2018 02:38:54 +0000 (19:38 -0700)]
openssl: support musl-x32 build

Align the openssl 1.1 recipe with changes made to openssl 1.0:

  http://git.openembedded.org/openembedded-core/commit/?id=a072d4620db462c5d3459441d5684cfd99938400

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
6 years agoopenssl: remove uclibc remnants
Andre McCurdy [Tue, 24 Jul 2018 02:38:53 +0000 (19:38 -0700)]
openssl: remove uclibc remnants

Align the openssl 1.1 recipe with changes made to openssl 1.0:

  http://git.openembedded.org/openembedded-core/commit/?id=e01e7c543a559c8926d72159b5cd55db0c661434

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
6 years agoopenssl_1.0: avoid running make twice for target do_compile()
Andre McCurdy [Tue, 24 Jul 2018 02:38:52 +0000 (19:38 -0700)]
openssl_1.0: avoid running make twice for target do_compile()

Currently target builds call make twice as part of do_compile(). It
appears to be an accidental side effect of needing to only pass
CC_INFO on the make command line for target builds, since CC_INFO is
only referenced by the reproducible build patches.

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
6 years agoopenssl_1.0: drop leading "-" from no-ssl3 config option
Andre McCurdy [Tue, 24 Jul 2018 02:38:51 +0000 (19:38 -0700)]
openssl_1.0: drop leading "-" from no-ssl3 config option

Although passing -no-ssl3 works, comments in the openssl Configure
script suggest doing so isn't really correct:

  s /^-no-/no-/; # some people just can't read the instructions

The documented way to pass no-<cipher> config options is without a
leading "-"

  https://github.com/openssl/openssl/blob/OpenSSL_1_0_2-stable/INSTALL

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
6 years agoopenssl_1.0: fix cryptodev-linux PACKAGECONFIG support
Andre McCurdy [Tue, 24 Jul 2018 02:38:50 +0000 (19:38 -0700)]
openssl_1.0: fix cryptodev-linux PACKAGECONFIG support

Since openssl isn't an autotools recipe, defining cryptodev-linux
related config options via PACKAGECONFIG hasn't worked correctly
since PACKAGECONFIG_CONFARGS stopped being automatically appended to
EXTRA_OECONF in 2016:

  http://git.openembedded.org/openembedded-core/commit/?id=c98fb5f5129e71829ffab4449b3d28082bc95ab4

The issue appears to have been hidden as the flags are also hardcoded
in CFLAG - and therefore always enabled, regardless of the state of
the PACKAGECONFIG option. Fix by passing both EXTRA_OECONF and
PACKAGECONFIG_CONFARGS when running the openssl Configure script.
Although the openssl 1.1 recipe doesn't contain any PACKAGECONFIG
options yet, pre-emptively make the same fix there too.

Also only enable cryptodev-linux by default for target builds (based
on the historical comments in the recipe, that seems to have been the
original intention).

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
6 years agoopenssl_1.0: drop curly brackets from shell local variables
Andre McCurdy [Tue, 24 Jul 2018 02:38:49 +0000 (19:38 -0700)]
openssl_1.0: drop curly brackets from shell local variables

Make clear distinction between local variables and bitbake variables.

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
6 years agoopenssl_1.0: minor recipe formatting tweaks etc
Andre McCurdy [Tue, 24 Jul 2018 02:38:48 +0000 (19:38 -0700)]
openssl_1.0: minor recipe formatting tweaks etc

Drop redundant setting of S to its default value, fix inconsistent
indent and re-order variables to align more closely to the OE
style-guide.

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
6 years agoopenssl_1.0: merge openssl10.inc into the openssl_1.0.2o.bb recipe
Andre McCurdy [Tue, 24 Jul 2018 02:38:47 +0000 (19:38 -0700)]
openssl_1.0: merge openssl10.inc into the openssl_1.0.2o.bb recipe

The openssl10.inc include file only has one user, so we can improve
maintainability by merging the include file into the recipe which
uses it.

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
6 years agoshadow: fix CVE-2017-2616
Andrej Valek [Tue, 24 Jul 2018 11:08:29 +0000 (13:08 +0200)]
shadow: fix CVE-2017-2616

Signed-off-by: Andrej Valek <andrej.valek@siemens.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
6 years agogstreamer1.0-vaapi: Add patch for EGL CFLAGS for proper EGL support
Carlos Rafael Giani [Tue, 24 Jul 2018 10:52:21 +0000 (12:52 +0200)]
gstreamer1.0-vaapi: Add patch for EGL CFLAGS for proper EGL support

Signed-off-by: Carlos Rafael Giani <dv@pseudoterminal.org>
Signed-off-by: Ross Burton <ross.burton@intel.com>
6 years agogstreamer1.0-vaapi: Remove unnecessary FILESPATH modification
Carlos Rafael Giani [Tue, 24 Jul 2018 10:52:20 +0000 (12:52 +0200)]
gstreamer1.0-vaapi: Remove unnecessary FILESPATH modification

Signed-off-by: Carlos Rafael Giani <dv@pseudoterminal.org>
Signed-off-by: Ross Burton <ross.burton@intel.com>
6 years agogstreamer1.0-plugin-bad: Update packageconfigs
Carlos Rafael Giani [Tue, 24 Jul 2018 10:52:19 +0000 (12:52 +0200)]
gstreamer1.0-plugin-bad: Update packageconfigs

* Add packageconfigs for gl, libde265, lcms2, openh264, tinyalsa, ttml,
  webrtc, webrtcdsp
* Remove unnecessary gstglconfig.h line, since that file is no longer
  part of -bad (it is in -base now)
* Update EXTRA_OECONF flags, since new plugins got added to -bad
* Add ttml to the default packageconfigs since its dependencies are
  all in oe-core

Signed-off-by: Carlos Rafael Giani <dv@pseudoterminal.org>
Signed-off-by: Ross Burton <ross.burton@intel.com>
6 years agogstreamer1.0-plugin-good: Update packageconfigs
Carlos Rafael Giani [Tue, 24 Jul 2018 10:52:18 +0000 (12:52 +0200)]
gstreamer1.0-plugin-good: Update packageconfigs

* There is no twolame recipe in oe-core or in meta-openembedded, so
  disable it
* Reorder the packageconfigs alphabetically

Signed-off-by: Carlos Rafael Giani <dv@pseudoterminal.org>
Signed-off-by: Ross Burton <ross.burton@intel.com>
6 years agogstreamer1.0-plugin-base: Update packageconfigs
Carlos Rafael Giani [Tue, 24 Jul 2018 10:52:17 +0000 (12:52 +0200)]
gstreamer1.0-plugin-base: Update packageconfigs

* Add patches for gbm, libpng, libjpeg to conditionally enable/disable
  them in the configure script
* Reorder the packageconfigs alphabetically

Signed-off-by: Carlos Rafael Giani <dv@pseudoterminal.org>
Signed-off-by: Ross Burton <ross.burton@intel.com>
6 years agoautotools.bbclass: fix autoreconf bbnote commandline arguments
Andre McCurdy [Tue, 24 Jul 2018 02:32:18 +0000 (19:32 -0700)]
autotools.bbclass: fix autoreconf bbnote commandline arguments

Leaving -Wcross out of the bbnote version of the autoreconf command
seems to be a long standing inconsistency (dating back to the very
first commit in oe-core) but there's no obvious reason to do so.

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
6 years agopackagegroup-core-full-cmdline: clean up system-services dependencies
Ross Burton [Mon, 23 Jul 2018 16:53:25 +0000 (17:53 +0100)]
packagegroup-core-full-cmdline: clean up system-services dependencies

The 'system services' packagegroup depends on a number of packages which are not
system services, so remove them from the list.

Signed-off-by: Ross Burton <ross.burton@intel.com>
6 years agogrub2.inc: set GRUBPLATFORM_arm to efi
Mingli Yu [Mon, 23 Jul 2018 07:37:42 +0000 (15:37 +0800)]
grub2.inc: set GRUBPLATFORM_arm to efi

* grub-efi support on arm is enabled as below
  commit:
  commit 65f9fb788371a9a08e3b0e6febecb9cc2aaeefe7
  Author: Kristian Amlie <kristian.amlie@northern.tech>
  Date:   Tue Jul 10 16:07:12 2018 +0200

     grub-efi: Provide target architecture for 32-bit ARM.

* But it fails on arm as below:
  | grub-mkimage: error: cannot open `./grub-core//serial.mod': No such file or directory.

  Set GRUBPLATFORM_arm = "efi" to fix the above error

Signed-off-by: Mingli Yu <Mingli.Yu@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
6 years agoapr: fix ptest hangs since enter non-terminating loop
Changqing Li [Mon, 23 Jul 2018 07:37:07 +0000 (15:37 +0800)]
apr: fix ptest hangs since enter non-terminating loop

ptest hangs in teststr since enter non-terminating loop,
fixed by a backport patch

Signed-off-by: Changqing Li <changqing.li@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
6 years agosystemd: Explicitly add hidden attribute to __start_BUS_ERROR_MAP and __stop_BUS_ERRO...
Khem Raj [Sat, 21 Jul 2018 17:06:00 +0000 (10:06 -0700)]
systemd: Explicitly add hidden attribute to __start_BUS_ERROR_MAP and __stop_BUS_ERROR_MAP

These symbols appear in dynsyms of libsystemd.so and musl loader
doesnt like it

Error relocating /mnt/a/oe/build/tmp/work/i586-bec-linux-musl/avahi/0.7-r0/recipe-sysroot//lib/libsystemd.so.0: __start_BUS_ERROR_MAP: symbol not found
Error relocating /mnt/a/oe/build/tmp/work/i586-bec-linux-musl/avahi/0.7-r0/recipe-sysroot//lib/libsystemd.so.0: __stop_BUS_ERROR_MAP: symbol not found

[YOCTO #12577]

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
6 years agono-static-libs.inc: use `?=' to set a default DISABLE_STATIC
Hongxu Jia [Sat, 21 Jul 2018 16:27:15 +0000 (09:27 -0700)]
no-static-libs.inc: use `?=' to set a default DISABLE_STATIC

It could be overrided by basic variable setting `='.

Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
6 years agosystemtap: fix unintialized memory accesses in dwflpp::function_entrypc
Victor Kamensky via Openembedded-core [Sat, 21 Jul 2018 03:38:53 +0000 (20:38 -0700)]
systemtap: fix unintialized memory accesses in dwflpp::function_entrypc

Observed failure in SystemTap v3.3 unit testing, It was tracked down
to unintialized memory access in dwflpp::function_entrypc method.

Upstream-Status: Backport
Signed-off-by: Victor Kamensky <kamensky@cisco.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
6 years agosystemtap: 3.2 -> 3.3
Victor Kamensky via Openembedded-core [Sat, 21 Jul 2018 03:38:52 +0000 (20:38 -0700)]
systemtap: 3.2 -> 3.3

Upgrade systemtap from 3.2 to 3.3: Removed all backported patches.
Removed "remove quotes around -I include" pending patch since 3.3
got similar fix already. Resolved merge conflict in and
regenerated monitor-option.patch patch.

Signed-off-by: Victor Kamensky <kamensky@cisco.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
6 years agoruby: security fix CVE 2018-1000073
Joe Slater [Fri, 20 Jul 2018 21:10:02 +0000 (14:10 -0700)]
ruby: security fix CVE 2018-1000073

Directory traversal vulnerability as described by
https://nvd.nist.gov/vuln/detail/CVE-2018-1000073.

Signed-off-by: Joe Slater <joe.slater@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
6 years agolsb: fix usrmerge install paths
Ioan-Adrian Ratiu [Fri, 20 Jul 2018 11:18:16 +0000 (14:18 +0300)]
lsb: fix usrmerge install paths

${base_prefix} is set in bitbake.conf to empty. This makes lsb_release
always install under /bin which is a problem if usrmerge is in
DISTRO_FEATURES, because it needs to be installed under /usr/bin.

By using ${root_prefix} instead, we fix the usrmerge install path and
the following QA warning goes away while keeping the non-usrmerge path
identical.

WARNING: lsb-5.0-r0 do_package: QA Issue: lsb: Files/directories were
installed but not shipped in any package:
  /bin
  /bin/lsb_release
Please set FILES such that these items are packaged. Alternatively
if they are unneeded, avoid installing them or delete them within do_install.
lsb: 2 installed and not shipped files. [installed-vs-shipped]

Also if usrmerge is defined don't try to create the lib64 symlink
because base-files handles it to avoid the do_rootfs error

Collected errors:
 * check_data_file_clashes: Package lsb wants to install file
 tmp-glibc/work/x64-nilrt-linux/test-image/1.0-r0/rootfs/lib64
         But that file is already provided by package  * base-files

Signed-off-by: Ioan-Adrian Ratiu <adrian.ratiu@ni.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
6 years agolinux-firmware: add separate packages for all brcm files
Martin Jansa [Fri, 20 Jul 2018 11:15:27 +0000 (11:15 +0000)]
linux-firmware: add separate packages for all brcm files

* no changes in the content of previously existing packages

* include some silly commands I've used to "parse" WHENCE file to
  generate these, some manual changes are still needed, like separating
  cypress licensed files, removing duplicates when 2 files are included
  in the same package (bcm4356-pcie is exception because sdio and pcie
  files have different license).

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
6 years agolinux-firmware: update LICENSE for bcm43* packages according to WHENCE file
Martin Jansa [Fri, 20 Jul 2018 11:15:26 +0000 (11:15 +0000)]
linux-firmware: update LICENSE for bcm43* packages according to WHENCE file

* the license was updated
  brcm/brcmfmac43430-sdio.bin:
  https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git/commit/?id=ec734a30
  brcm/brcmfmac43340-sdio.bin:
  https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git/commit/?id=5ac5ad5c
  brcm/brcmfmac43362-sdio.bin:
  https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git/commit/?id=be1c535e
  brcm/brcmfmac4354-sdio.bin:
  https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git/commit/?id=a2921812

* this shows that with every upgrade the changes in WHENCE file should
  checked carefully

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
6 years agolinux-firmware: add ${PN}-cypress-license handling from meta-raspberrypi
Martin Jansa [Fri, 20 Jul 2018 11:15:25 +0000 (11:15 +0000)]
linux-firmware: add ${PN}-cypress-license handling from meta-raspberrypi

* this will break meta-raspberrypi once more, by including
  ${PN}-cypress-license package twice in PACKAGES
  I've sent fix here:
  https://github.com/agherzan/meta-raspberrypi/pull/295

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
6 years agosystemtap: improve reproducibility
Hongxu Jia [Fri, 20 Jul 2018 09:13:50 +0000 (17:13 +0800)]
systemtap: improve reproducibility

- Fix build path issue of .pyc files:
  Supply "--root" directory to the "install" command.

- Fix build path issue of c++ object files:
  Use relative dir to include header string_ref.

- Fix build path issue of c library generated by distutils:
  Add OE's CFLAGS which contains `-fdebug-prefix-map' options
  to setup.py

[YOCTO #12528]

Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
6 years agowic/engine: improve error reporting when using rm with wic
Anuj Mittal [Fri, 20 Jul 2018 07:44:50 +0000 (15:44 +0800)]
wic/engine: improve error reporting when using rm with wic

When trying to delete something from an ext partition using debugfs, we
don't show any error to the user when that operation fails.

Change this behavior to show the error generated by debugfs. Also,
fallback to use rmdir in case we are trying to delete a directory. However,
unlike mdeltree that is used for a FAT partition, there's no easy way to
delete a non empty directory. Show an error instead when that happens so
user can take appropriate action.

Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
6 years agologrotate: Improve configurability of the installed systemd service files
Peter Kjellerstedt [Thu, 19 Jul 2018 18:19:39 +0000 (20:19 +0200)]
logrotate: Improve configurability of the installed systemd service files

This makes it possible to add extra options to the logrotate
application (via ${LOGROTATE_OPTIONS}), and it allows the Persistent
option in logrotate.timer to be configured via
${LOGROTATE_SYSTEMD_TIMER_PERSISTENT}.

It also changes the sed expressions to allow for
${LOGROTATE_SYSTEMD_TIMER_BASIS} to contain commas without having to
prefix them with backslahes, e.g.:
LOGROTATE_SYSTEMD_TIMER_BASIS = "*-*-* *:00,30:00"

Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
6 years agoiputils: upgrade to s20190629
Ross Burton [Mon, 23 Jul 2018 12:36:57 +0000 (13:36 +0100)]
iputils: upgrade to s20190629

License-Update: change license checksums to check the License files themselves (BSD3 and GPL2),
and the tool-to-license file (LICENSE).  Changes to LICENSE will now be
detected.

Backport a patch to fix the build with musl.

Drop upstreamed patch.

Update libidn build-dependency to libidn2.

Patch in an install target and use that to install binaries, to avoid upstream
adding binaries that we don't ship.  Also ship all binaries that are installed.

Signed-off-by: Ross Burton <ross.burton@intel.com>
6 years agognutls: rationalise libunistring arguments
Ross Burton [Mon, 23 Jul 2018 11:30:10 +0000 (12:30 +0100)]
gnutls: rationalise libunistring arguments

No need to pass --without-libunistring-prefix, and it looks a lot like we're
trying to disable it.

Signed-off-by: Ross Burton <ross.burton@intel.com>
6 years agolib/oe: split out machine to ELF data dictionary
Ross Burton [Fri, 20 Jul 2018 11:43:29 +0000 (12:43 +0100)]
lib/oe: split out machine to ELF data dictionary

6 years agobinutils: Upgrade to 2.31 release branch
Khem Raj [Tue, 17 Jul 2018 07:41:04 +0000 (00:41 -0700)]
binutils: Upgrade to 2.31 release branch

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
6 years agogrub: fix build with new binutils
Ross Burton [Wed, 18 Jul 2018 12:24:05 +0000 (13:24 +0100)]
grub: fix build with new binutils

6 years agobase-files: profile: Avoid using "command" to determine if programs exist
Peter Kjellerstedt [Thu, 19 Jul 2018 18:19:40 +0000 (20:19 +0200)]
base-files: profile: Avoid using "command" to determine if programs exist

Since the existence of "command" in itself is not guaranteed, using it
to determine if other executables exist is moot. Instead just run the
executables and let the shell determine if they exist. By piping stderr
to /dev/null we avoid unnecessary warnings in case they do not exist.

Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
6 years agopython3-pip: clean up obsolete
Hongxu Jia [Thu, 19 Jul 2018 14:59:06 +0000 (22:59 +0800)]
python3-pip: clean up obsolete

Since unify var-DISTUTILS_INSTALL_ARGS in distutils and setuptools,
- The local DISTUTILS_INSTALL_ARGS assignment is obsolete;
- The site.py is not be generated any more;
- The layout is in a standard pip dir (such as /usr/lib/python3.5/site-
  packages/pip rather than /lib/python3.5/site-packages/pip-10.0.1-
  py3.5.egg/pip), the pth file is not required;

`#!/usr/bin/env python3' is already used, do not manually sed.

[YOCTO #8446]

Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
6 years agopython-setuptools.inc: clean up useless local var-DISTUTILS_INSTALL_ARGS
Hongxu Jia [Thu, 19 Jul 2018 14:59:05 +0000 (22:59 +0800)]
python-setuptools.inc: clean up useless local var-DISTUTILS_INSTALL_ARGS

Since unify var-DISTUTILS_INSTALL_ARGS in distutils and setuptools,
The local var-DISTUTILS_INSTALL_ARGS broke do_install
...
error: option --script-dir not recognized
ERROR: python3 setup.py install execution failed.
...

[YOCTO #8446]

Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
6 years agodistutils/setuptools, distutils3/setuptools3: improve reproducibility
Hongxu Jia [Thu, 19 Jul 2018 14:59:04 +0000 (22:59 +0800)]
distutils/setuptools, distutils3/setuptools3: improve reproducibility

- Unify var-DISTUTILS_INSTALL_ARGS in distutils and setuptools

- Supply "--root" directory to the "install" command, and use
  it as a prefix to strip off the purported filename encoded
  in bytecode files. (It strips build path prefix from .pyc files)

[YOCTO #8446]
[YOCTO #12084]

Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
6 years agooeqa/sdk/sdkbuildproject: use os.path.join
Ross Burton [Thu, 19 Jul 2018 23:16:16 +0000 (00:16 +0100)]
oeqa/sdk/sdkbuildproject: use os.path.join

Instead of mushing two paths together and hoping that the slashes line up
correctly, use os.path.join.

Signed-off-by: Ross Burton <ross.burton@intel.com>
6 years agooeqa: rationalise Perl tests
Ross Burton [Thu, 19 Jul 2018 16:12:40 +0000 (17:12 +0100)]
oeqa: rationalise Perl tests

As with the Python test, this can be both better and faster.  No need to copy a
file, just run a one-liner.

Signed-off-by: Ross Burton <ross.burton@intel.com>
6 years agolibnss-mdns: Fix search path for avahi socket file
Betacentauri [Thu, 5 Jul 2018 17:26:29 +0000 (19:26 +0200)]
libnss-mdns: Fix search path for avahi socket file

Since v0.7 avahi uses /run/avahi-daemon/socket.
libnss searches in $(localstatedir)/run/avahi-daemon/.
Set localstatedir to / to fix mdns resolving.

Signed-off-by: Ross Burton <ross.burton@intel.com>
6 years agologging: use warning instead warn
Chen Qi [Thu, 19 Jul 2018 05:47:18 +0000 (13:47 +0800)]
logging: use warning instead warn

The warn method is deprecated. We should use the documented warning instead.

Quoting from the python's official doc:
"""
Note: There is an obsolete method warn which is functionally identical to warning.
      As warn is deprecated, please do not use it - use warning instead.
"""

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
6 years agobind: update to 9.11.4
Armin Kuster [Wed, 18 Jul 2018 22:48:03 +0000 (15:48 -0700)]
bind: update to 9.11.4

include:
CVE-2018-5738

Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
6 years agotiff: security fix CVE-2018-7456
Joe Slater [Wed, 18 Jul 2018 18:25:00 +0000 (11:25 -0700)]
tiff: security fix CVE-2018-7456

NULL pointer use as described at nvd.nist.gov/vuln/detail/CVE-2018-7456.

Signed-off-by: Joe Slater <joe.slater@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
6 years agotiff: security fix CVE-2018-8905
Joe Slater [Wed, 18 Jul 2018 18:24:59 +0000 (11:24 -0700)]
tiff: security fix CVE-2018-8905

Buffer overflow described at nvd.nits.gov/vuln/detail/CVE-2018-8905.

Signed-off-by: Joe Slater <joe.slater@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
6 years agolibx11: remove redundant siteinfo inherit
Ross Burton [Thu, 19 Jul 2018 12:16:41 +0000 (13:16 +0100)]
libx11: remove redundant siteinfo inherit

The recipe doesn't use the variables, and autotools inherits this already.

Signed-off-by: Ross Burton <ross.burton@intel.com>
6 years agognu-config: update to 2018-07-13
Ross Burton [Wed, 18 Jul 2018 17:08:14 +0000 (18:08 +0100)]
gnu-config: update to 2018-07-13

License checksum updated as URL changed.

Signed-off-by: Ross Burton <ross.burton@intel.com>
6 years agognu-config: remove obsolete version
Ross Burton [Wed, 18 Jul 2018 17:02:58 +0000 (18:02 +0100)]
gnu-config: remove obsolete version

6 years agocurl: disable C source code generator
Andre McCurdy [Tue, 17 Jul 2018 18:06:57 +0000 (11:06 -0700)]
curl: disable C source code generator

The --libcurl command line option causes curl to generate C source
code which, when compiled and linked with libcurl, creates a binary
which behaves in the same way as curl when run with the other options
passed on the curl command line.

  https://curl.haxx.se/docs/manpage.html#--libcurl

It's a development tool and not generally useful on the target,
especially if the target doesn't contain a toolchain etc.

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
6 years agodistutils/setuptools-native, distutils3/setuptools3-native: do not try to fetch code...
Hongxu Jia [Tue, 17 Jul 2018 13:36:35 +0000 (21:36 +0800)]
distutils/setuptools-native, distutils3/setuptools3-native: do not try to fetch code during do_compile

If a python recipe is using setuptools and the setup_requires argument, where
setuptools will use easy_install to fetch the module if it isn't
present.

The build failed on a machine where a proxy was required, but succeeded on a
machine which had direct access to the internet

Add var-NO_FETCH_BUILD, and set it in distutils_do_compile which does not
allow to fetch code from internet during do_compile.

Example result:
...
ERROR: Do not try to fetch `pytest-runner1' for building. Please add its native recipe to DEPENDS.
Traceback (most recent call last):
  File "setup.py", line 56, in <module>
...

The improvement is flexible for test_requirements argument (used at
`setup.py test'), where use easy_install also.

[YOCTO #12084]
Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
6 years agocmake: put cmake.m4 and toolchain file in PN
Ross Burton [Wed, 18 Jul 2018 15:54:50 +0000 (16:54 +0100)]
cmake: put cmake.m4 and toolchain file in PN

Previously cmake-dev held some files which should be in cmake.

- cmake.m4 should be in installed in cmake so it can be used out of the box
- nativesdk-specific OEToolchainConfig.cmake file used to be in cmake, but the
  change of default packaging rules move it into cmake-dev.  This recipe is the
  exception and it should be moved back.

Add the extra paths to cmake, and clear FILES for cmake-dev to ensure nothing
else slips in.

Signed-off-by: Ross Burton <ross.burton@intel.com>
6 years agocmake: in SDK use OE env var to set default toolchain
Cody P Schafer [Mon, 1 May 2017 19:29:39 +0000 (15:29 -0400)]
cmake: in SDK use OE env var to set default toolchain

Patch the location in cmake where the toolchain file is loaded
to use the (new) OE_CMAKE_TOOLCHAIN_FILE variable to select a default
toolchain if no toolchain has been specified. The cmake alias is
removed.

The alternatives:

 - shell alias fails when cmake is called indirectly (ex: a makefile
   managing several projects which calls cmake for some of them)
   because aliases are not inherited

 - wrapper script that unconditionally adds "-D..." breaks cmake's
   build tests and many other things as it causes cmake to believe it
   should be configuring things when it should not be. For example,
   `cmake -DCMAKE_TOOLCHAIN_FILE=... --build .` does not work (note
   that this also breaks people directly using `cmake --build .` with
   the current alias).

Signed-off-by: Cody P Schafer <dev@codyps.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
6 years agoyocto-uninative: Upgrade to version 2.2
Richard Purdie [Wed, 25 Jul 2018 21:29:57 +0000 (22:29 +0100)]
yocto-uninative: Upgrade to version 2.2

This version adds nativesdk-libnss-nis to resolve glibc symbol issues

We need this to avoid symbol mismatch issues for binaries that use this
on newer systems which then won't run on older ones where it isn't present.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agoselftest/bbtests: Add test for bitbake execution outside the build directory uninative-2.2
Richard Purdie [Wed, 25 Jul 2018 13:44:11 +0000 (13:44 +0000)]
selftest/bbtests: Add test for bitbake execution outside the build directory

Also fix a related test's error message to match what it does.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agoselftest/bblayers: Place the test layer directory in builddir
Richard Purdie [Wed, 25 Jul 2018 13:39:40 +0000 (13:39 +0000)]
selftest/bblayers: Place the test layer directory in builddir

Placing the layer in meta means the directory is in an unclean state
which may influence other tests. Use our build directory instead
since we 'own' that. This helps keep oe-selftest parallelisation
clean.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agolicense_image: Fix race
Richard Purdie [Mon, 23 Jul 2018 16:22:55 +0000 (16:22 +0000)]
license_image: Fix race

The current code pokes into do_deploy manifests from do_image_complete when the
do_image_complete task may or may not depend upon the do_deploy tasks in question.
Often it gets lucky, sometimes it results in build failures.

To fix this, split the functionality to its own task which can have the correct
task dependencies. This means the data in BB_TASKDEPDATA is definitive, the other
code can be dropped, as can the IMAGE_EXTRATYPES do_populate_lic dependencies
from image.bbclass.

This fixes bugs which show up as:

NOTE: recipe linux-yocto-4.14.48+gitAUTOINC+d64aec9793_97c8063d2d-r0: task do_deploy: Started
ERROR: core-image-minimal-1.0-r0 do_image_complete: Error executing a python function in exec_python_func() autogenerated:

The stack trace of python calls that resulted in this exception/failure was:
File: 'exec_python_func() autogenerated', lineno: 2, function: <module>
     0001:
 *** 0002:write_deploy_manifest(d)
     0003:
File: '/home/pokybuild/yocto-autobuilder/yocto-worker/nightly-oe-selftest/build/meta/classes/license.bbclass', lineno: 33, function: write_deploy_manifest
     0029:        'w+').write(output)
     0030:}
     0031:
     0032:python write_deploy_manifest() {
 *** 0033:    license_deployed_manifest(d)
     0034:}
     0035:
     0036:python license_create_manifest() {
     0037:    import oe.packagedata
File: '/home/pokybuild/yocto-autobuilder/yocto-worker/nightly-oe-selftest/build/meta/classes/license.bbclass', lineno: 191, function: license_deployed_manifest
     0187:        # It is necessary to mark this will be used for image manifest
     0188:        man_dic[dep]["IMAGE_MANIFEST"] = True
     0189:        man_dic[dep]["PN"] = dep
     0190:        man_dic[dep]["FILES"] = \
 *** 0191:            " ".join(get_deployed_files(dep_dic[dep]))
     0192:        with open(os.path.join(lic_dir, dep, "recipeinfo"), "r") as f:
     0193:            for line in f.readlines():
     0194:                key,val = line.split(": ", 1)
     0195:                man_dic[dep][key] = val[:-1]
File: '/home/pokybuild/yocto-autobuilder/yocto-worker/nightly-oe-selftest/build/meta/classes/license.bbclass', lineno: 289, function: get_deployed_files
     0285:    """
     0286:
     0287:    dep_files = []
     0288:    excluded_files = []
 *** 0289:    with open(man_file, "r") as manifest:
     0290:        all_files = manifest.read()
     0291:    for f in all_files.splitlines():
     0292:        if ((not (os.path.islink(f) or os.path.isdir(f))) and
     0293:                not os.path.basename(f) in excluded_files):
Exception: FileNotFoundError: [Errno 2] No such file or directory: '/home/pokybuild/yocto-autobuilder/yocto-worker/nightly-oe-selftest/build/build-st-730/tmp/sstate-control/manifest-qemux86_64-linux-yocto.deploy'

ERROR: core-image-minimal-1.0-r0 do_image_complete: Function failed: write_deploy_manifest
ERROR: Logfile of failure stored in: /home/pokybuild/yocto-autobuilder/yocto-worker/nightly-oe-selftest/build/build-st-730/tmp/work/qemux86_64-poky-linux/core-image-minimal/1.0-r0/temp/log.do_image_complete.50537
NOTE: recipe core-image-minimal-1.0-r0: task do_image_complete: Failed
ERROR: Task (/home/pokybuild/yocto-autobuilder/yocto-worker/nightly-oe-selftest/build/meta/recipes-core/images/core-image-minimal.bb:do_image_complete) failed with exit code '1'
NOTE: recipe linux-yocto-4.14.48+gitAUTOINC+d64aec9793_97c8063d2d-r0: task do_deploy: Succeeded

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agolicense: Split image license functions to a separate class
Richard Purdie [Mon, 23 Jul 2018 15:34:31 +0000 (15:34 +0000)]
license: Split image license functions to a separate class

This means the image code is only included in image recipes through
the IMAGE_CLASSES variable.

This sets things up to allow us to fix image deploy dependency problems.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agopackage: Use subprocess to be consistent with the rest of the class
Richard Purdie [Fri, 20 Jul 2018 16:02:41 +0000 (16:02 +0000)]
package: Use subprocess to be consistent with the rest of the class

Using 'sub' in one function just confuses things, standardise and fix
formatting of the parameters too.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agoselftest/wic: clean up runCmd error code handling
Richard Purdie [Mon, 23 Jul 2018 11:12:00 +0000 (11:12 +0000)]
selftest/wic: clean up runCmd error code handling

runCmd handles checking exit 0 internally unless specified otherwise and its
error messages are much more useful including the failed command output.

Clean up the unneeded 0 exit code checks in the wic tests.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agoselftest/wic: Improve error message for test_fixed_size
Richard Purdie [Mon, 23 Jul 2018 10:54:20 +0000 (10:54 +0000)]
selftest/wic: Improve error message for test_fixed_size

Currently this can fail with a message like 127 != 0 which is unhelpful.

If we remove the ignore_status=False, the debugging from runCmd is much
more helpful printing status.output.

Also remove the now unneeded exit code check.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agoRevert "relocate_sdk.py: remove hardcoded SDK path"
Richard Purdie [Wed, 25 Jul 2018 15:45:23 +0000 (16:45 +0100)]
Revert "relocate_sdk.py: remove hardcoded SDK path"

This reverts commit 6671a4d980c8bef8f402780a308f6c43a25044aa.

This breaks uninative tarball since the call of relocate_sdk.py from uninative.bbclass
wasn't updated to account for this change. It isn't clear what value that code could
pass in and this isn't simple to fix so revert until a better fix can be found
that doesn't break uninative.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agouninative-tarball: Add nativesdk-libnss-nis to resolve glibc symbol issues
Richard Purdie [Tue, 24 Jul 2018 10:48:45 +0000 (11:48 +0100)]
uninative-tarball: Add nativesdk-libnss-nis to resolve glibc symbol issues

We need this to avoid symbol mismatch issues for binaries that use this
on newer systems which then won't run on older ones where it isn't present.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agooe-selftest: fix for changes to buildhistory-diff
Paul Eggleton [Mon, 23 Jul 2018 12:40:14 +0000 (14:40 +0200)]
oe-selftest: fix for changes to buildhistory-diff

Now we're not reporting the related fields (as of openembedded-core
8658b3677b9f7cb70806061c41570c709086ef05) we shouldn't expect to see
PR reported here since it's not monitored by buildhistory-diff. However,
with a bit of messing about we can check for the exact output that we
should now see as a result of the test changing PR to go backwards.

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agolib/oe/utils: Drop now unused multiprocess_exec
Richard Purdie [Fri, 20 Jul 2018 15:19:57 +0000 (15:19 +0000)]
lib/oe/utils: Drop now unused multiprocess_exec

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agopackage/package_manager: multiprocess_exec -> multiprocess_launch
Richard Purdie [Fri, 20 Jul 2018 15:15:38 +0000 (15:15 +0000)]
package/package_manager: multiprocess_exec -> multiprocess_launch

After this replacement, the parent exception handling works so we don't
need subprocess wrapping with bb.error in the underlying functions.

The underlying contexts also have better module handling so the imports
can be cleaned up.

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