]> git.ipfire.org Git - thirdparty/openembedded/openembedded-core-contrib.git/log
thirdparty/openembedded/openembedded-core-contrib.git
6 years agobitbake: server/process: Ensure socket has a timeout set
Richard Purdie [Fri, 14 Dec 2018 17:49:16 +0000 (17:49 +0000)] 
bitbake: server/process: Ensure socket has a timeout set

We're seeing hangs in oe-selftest where server startup and shutdown are
racing. The assumption was a connect would timeout however no timeout is
set which can leave processes hanging. Set a short timeout for
the connection to avoid this.

(Bitbake rev: f02114cb70e8f6f1d32e19c02b758fe0aadecd19)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agoqemu: Bump to version 3.1
Alistair Francis [Thu, 13 Dec 2018 22:06:05 +0000 (22:06 +0000)] 
qemu: Bump to version 3.1

Bump QEMU to the latest 3.1 and update the patches.

(From OE-Core rev: eeb918fc9b67a5d252b9d5ad5f3674cc1a45aa7f)

Signed-off-by: Alistair Francis <alistair.francis@wdc.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agoqemu-targets: Fix the list of QEMU targets
Alistair Francis [Thu, 13 Dec 2018 22:06:03 +0000 (22:06 +0000)] 
qemu-targets: Fix the list of QEMU targets

(From OE-Core rev: b5a69bfa8bf0481658bee10cc8ed186166457eee)

Signed-off-by: Alistair Francis <alistair.francis@wdc.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agoltp: Fix build with glibc 2.29
Khem Raj [Fri, 14 Dec 2018 22:57:05 +0000 (14:57 -0800)] 
ltp: Fix build with glibc 2.29

(From OE-Core rev: 1ba3400e1022ad9ea5bfea8d2237f3db0b83a83c)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agotcl: in run-ptest show output if a test fails
Ross Burton [Fri, 14 Dec 2018 17:10:42 +0000 (17:10 +0000)] 
tcl: in run-ptest show output if a test fails

If a test fails the log has useful information, so include that in the output.

(From OE-Core rev: f66f533eb9974cdefaacfee00d019c65e0d80b9e)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agoRevert "popt: update SRC_URI"
Ross Burton [Fri, 14 Dec 2018 17:08:59 +0000 (17:08 +0000)] 
Revert "popt: update SRC_URI"

Go back to use rpm5.org, as it's the canonical host for popt.  The host is back up now.

This reverts commit 347ee336dcc94e6fa4e4788117013615b90abd70.

(From OE-Core rev: 691e540e724c609cceeb9379e1252a05abebd5b1)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agolibsoup: upgrade to 2.64.2
Ross Burton [Fri, 14 Dec 2018 17:08:54 +0000 (17:08 +0000)] 
libsoup: upgrade to 2.64.2

Add new build dependency libpsl.

(From OE-Core rev: 936d511150f7bb1a3b70a421e7531e89ce37ef67)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agomaintainers: Add entry for libpsl (required by libsoup)
Richard Purdie [Sat, 15 Dec 2018 11:46:59 +0000 (11:46 +0000)] 
maintainers: Add entry for libpsl (required by libsoup)

(From OE-Core rev: 70a1a10ddb2e7e99d4d854c653e89799a16aad74)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agolibpsl: add
Ross Burton [Fri, 14 Dec 2018 17:08:50 +0000 (17:08 +0000)] 
libpsl: add

A Public Suffix List is a collection of Top Level Domains (TLDs) suffixes. TLDs
include Global Top Level Domains (gTLDs) like .com and .net; Country Top Level
Domains (ccTLDs) like .de and .cn; and Brand Top Level Domains like .apple and
.google. Brand TLDs allows users to register their own top level domain that
exist at the same level as ICANN's gTLDs. Brand TLDs are sometimes referred to
as Vanity Domains.

(From OE-Core rev: 30f4c433e3b205648c70b154debdea9eb9e668d7)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agoyocto-uninative: Correct sha256sum for aarch64
Michael Halstead [Fri, 14 Dec 2018 23:08:03 +0000 (15:08 -0800)] 
yocto-uninative: Correct sha256sum for aarch64

Avoid uninative checksum warnings when building on aarch64 hardware.

(From OE-Core rev: 3ccc2de5f08fb2023abeeed39e23c68dbc75725b)

Signed-off-by: Michael Halstead <mhalstead@linuxfoundation.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agooeqa/selftest/distrodata: Port to use the new recipeutils.get_recipe_upgrade_status...
Richard Purdie [Fri, 14 Dec 2018 18:02:17 +0000 (18:02 +0000)] 
oeqa/selftest/distrodata: Port to use the new recipeutils.get_recipe_upgrade_status() function

Rather than use the obsolete do_checkpkg function, use the new recipeutils
function which uses tinfoil to get the data rather than needing csv file
manipulation.

(From OE-Core rev: 3f3f80b00cd999f1b2aef8f5c0ce0900aa4dcbcb)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agolib/oe/recipeutils: Add a new function to mimic do_checkpkg
Richard Purdie [Fri, 14 Dec 2018 17:45:27 +0000 (17:45 +0000)] 
lib/oe/recipeutils: Add a new function to mimic do_checkpkg

The code in distrodata.bbclass related to the do_checkpkg task is rather
dated, has holes in it (ignoring some recipes) and has horrible locking
and csv related issues.

We should use modern APIs such as tinfoil to make the calls we need directly
against bitbake, cutting out the middleman and clarifing the code.

This change imports the bits of distrodata.bbclass that are needed by the
automated upgrade helper (AUH) into a standalone function which uses the
tinfoil API. This can then be used by AUH and by the tests in
oeqa/selftest/distrodata as well as by any other standalone script that needs
this functionality. Its likely it can be further improved from here but this is a
good start and appears to function as before, with slightly wider recipe
coverage as some things skipped by distrodata are not skipped here (images,
pieces of gcc, nativesdk only recipes).

(From OE-Core rev: 92e33277b1b7892bae9cc0801ab379bd1c57c0f0)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agobitbake: utils: Add aarch64 support to ioprio_set
Richard Purdie [Fri, 14 Dec 2018 13:14:03 +0000 (13:14 +0000)] 
bitbake: utils: Add aarch64 support to ioprio_set

With aarch64 hosts coming into use, set the syscall number to
avoid ioprio warnings on that platform.

(Bitbake rev: 5eaf9e7b26f09f5f106e1c3c6976d517b289450a)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agobitbake: data_smart: Allow numeric characters in overrides
Richard Purdie [Fri, 14 Dec 2018 11:02:59 +0000 (11:02 +0000)] 
bitbake: data_smart: Allow numeric characters in overrides

We're seeing problems due to the way x86-64 is handled (or not handled)
as an override. Relax the containts on overrides from being lowercase
to being lowercase or numeric. This fixes problem where MACHINE=qemux86
would work but MACHINE=qemux86-64 would fail the same tests.

(Bitbake rev: 3a3be518536acc868c7eeb3c1111ad1b321480b7)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agobitbake: data_smart: Add missing regexp markup
Richard Purdie [Fri, 14 Dec 2018 11:02:33 +0000 (11:02 +0000)] 
bitbake: data_smart: Add missing regexp markup

Fix some further python3 warnings about unescaped regexs.

(Bitbake rev: 8667605d016e82add95638fcb15c2bbc1b489ecc)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agomaintainers: Clarify/add several entries
Richard Purdie [Thu, 13 Dec 2018 16:21:54 +0000 (16:21 +0000)] 
maintainers: Clarify/add several entries

Images were previously missing but are added, this also corrects the names
used for gcc/go/bintuils/gdb recipes and adds a few other misc missing ones
to ensure we have complete coverage of the recipes in OE-Core.

(From OE-Core rev: 6408b4b90833706dd1307f845266dcf9fccdbcaf)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agogo-crosssdk: PN should use SDK_SYS, not TARGET_ARCH
Richard Purdie [Thu, 13 Dec 2018 14:46:30 +0000 (14:46 +0000)] 
go-crosssdk: PN should use SDK_SYS, not TARGET_ARCH

The crosssdk dependencies are handled using the virtual/ namespace so
this name doesn't matter in the general sense. We want to be able to provide
recipe maintainer information through overrides though, so this standardises it
with the behaviour from gcc-crosssdk and ensures the maintainer overrides work.

(From OE-Core rev: da8c3728bf8bb4d4ae71e15626fc10976802185d)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agovulkan: don't fetch from the deprecated repository
Ross Burton [Thu, 13 Dec 2018 15:35:52 +0000 (15:35 +0000)] 
vulkan: don't fetch from the deprecated repository

(From OE-Core rev: 34109d66cd0f1f9746e8cc50a5d4334efdc0ce38)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agolttng-tools: fix compile error for x32
Kai Kang [Thu, 13 Dec 2018 14:14:11 +0000 (09:14 -0500)] 
lttng-tools: fix compile error for x32

Fix build error of src/common/utils.c for x32:

| .../src/common/utils.c: Assembler messages:
| .../src/common/utils.c:1026: Error: register type mismatch for `bsr'
| .../src/common/utils.c:1028: Error: operand type mismatch for `movq'
| make[3]: *** [utils.lo] Error 1

[YOCTO #13081]

(From OE-Core rev: db9c892eb1697e3ba3c17eabf59b007c0cf3ff33)

Signed-off-by: Kai Kang <kai.kang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agosystemd: fix compile error for x32
Kai Kang [Thu, 13 Dec 2018 14:14:10 +0000 (09:14 -0500)] 
systemd: fix compile error for x32

Backport patch to fix systemd compile error for x32:

| ../git/src/timesync/timesyncd-manager.c:607:19: error: format '%lli'
| expects argument of type 'long long int', but argument 11 has type
| 'long int' [-Werror=format=]

[YOCTO #13074]

(From OE-Core rev: 7201df413616cab8d7f3257f86dd7a0a5c7719ee)

Signed-off-by: Kai Kang <kai.kang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agooe-selftest: distrodata: change test_maintainers() to use tinfoil
Paul Eggleton [Thu, 13 Dec 2018 03:46:56 +0000 (16:46 +1300)] 
oe-selftest: distrodata: change test_maintainers() to use tinfoil

Use tinfoil to enumerate recipes and get the value of RECIPE_MAINTAINER
to make it a bit more reliable in the face of do_checkpkg issues we are
currently seeing on the Yocto Project autobuilder. This also makes it a
little less painful to re-execute test_maintainers() since you don't
have to wait for bitbake -c checkpkg to complete every time.

Note that the new test has been written in such a way that it will still
function if RECIPE_MAINTAINER values are ever moved to the recipes.
Also, the test still currently fails as there are recipes that don't
have an assigned maintainer.

(From OE-Core rev: 47282a2f6f12acebf58961ea9410cfbc335d560b)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agolib/oe/utils: Set stderr for host_gcc_version()
Robert Yang [Thu, 13 Dec 2018 03:19:28 +0000 (11:19 +0800)] 
lib/oe/utils: Set stderr for host_gcc_version()

Fixed:
$ ln -s /usr/bin/ccache /folk/lyang1/bin/gcc
$ rm -fr tmp/hosttools/ && bitbake -p
[snip]
ERROR: Error running gcc  --version:

It didn't print the error message, now it is:
ERROR: Error running gcc  --version: ccache: error: Could not find compiler "gcc" in PATH

For the error itself, it is because ccache is not in my HOSTTOOLS, so this is
an expected error.

(From OE-Core rev: 91955caae584b4f75118e04411851b1a3d783fec)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agoinsane.bbclass: add package specific skips to sstate hash
Michael Ho [Thu, 29 Nov 2018 12:21:37 +0000 (14:21 +0200)] 
insane.bbclass: add package specific skips to sstate hash

The bbclass currently adds INSANE_SKIP to the sstate hash dependencies
however the package specific skips such as INSANE_SKIP_${PN} are
not added automatically because of how the class references them.

This causes the problem that modifying INSANE_SKIP_${PN} does not
invalidate the sstate cache and can mask build breaking warnings.

Add an anonymous python snippet to explicitly include these additional
relevant skips to the sstate hash.

Singed-off-by: Michael Ho <Michael.Ho@bmw.de>
(From OE-Core rev: 8690332183f10a5e5689da7ec030567dfd1ac091)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agocmake.bbclass: append includedir to implicit include dirs
Michael Ho [Thu, 29 Nov 2018 12:21:35 +0000 (14:21 +0200)] 
cmake.bbclass: append includedir to implicit include dirs

This resolves issues with paths being marked as system includes that
differ from /usr/include but are considered implicit by the toolchain.
This enables developers to add directories to system includes
to supress compiler compiler warnings from them.

(From OE-Core rev: 9c2227d5d960f93e00791157354f0c920fbecf39)

Signed-off-by: Michael Ho <Michael.Ho@bmw.de>
Cc: Pascal Bach <pascal.bach@siemens.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agooeqa/sdk: rewrite cpio test
Ross Burton [Tue, 11 Dec 2018 23:26:36 +0000 (23:26 +0000)] 
oeqa/sdk: rewrite cpio test

Don't use the helper class as it gets in the way more than it helps, exercise
the out-of-tree paths, and verify the installed files match the expected
architecture.

(From OE-Core rev: 6d666b0413336de2e556b2722c5be97ae5cd40ad)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agooeqa/sdk: rewrite lzip test
Ross Burton [Tue, 11 Dec 2018 23:26:35 +0000 (23:26 +0000)] 
oeqa/sdk: rewrite lzip test

Don't use the helper class as it gets in the way more than it helps, exercise
the out-of-tree paths, and verify the installed files match the expected
architecture.

(From OE-Core rev: 920ae8c6537c2469f21ab9439587fd094ecc40f6)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agooeqa/sdk: clean up galculator test
Ross Burton [Tue, 11 Dec 2018 23:26:34 +0000 (23:26 +0000)] 
oeqa/sdk: clean up galculator test

Drop redundant imports and variables, and use os.makedirs() instead of
bb.utils.mkdirhier().

(From OE-Core rev: 2de9b1e611e5047afb540f98756994925c22e446)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agooeqa/sdk: show output if run() fails
Ross Burton [Tue, 11 Dec 2018 23:26:33 +0000 (23:26 +0000)] 
oeqa/sdk: show output if run() fails

Use oeqa.utils.subprocesstweak to monkey-patch the subprocess exception so that
any output is shown, and remove any explicit try/catch handling that would have
hidden this.

(From OE-Core rev: 55964b33b561397287779ee474170790dfd03e85)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agooeqa/sdk: clarify ELF assertion message
Ross Burton [Tue, 11 Dec 2018 23:26:32 +0000 (23:26 +0000)] 
oeqa/sdk: clarify ELF assertion message

For example, instead of saying "3 != 62", say "Binary was x86-64 but expected
i586".

(From OE-Core rev: 9ab94cea589fca4394ec1fd8dc06b23fd8e990b9)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agolinux-libc-headers: Fix build failure by using fixed temporary file instead of pipe
He Zhe [Wed, 21 Nov 2018 14:06:05 +0000 (22:06 +0800)] 
linux-libc-headers: Fix build failure by using fixed temporary file instead of pipe

This is a workaround for the following possible build failure.

*** Compiler lacks asm-goto support.. Stop.

When building linux-libc-headers we need to use binutils on build machine.
binutils v2.31 introduces a bug that could cause scripts/gcc-goto.sh to fail
when running in an environment where /tmp is rarely used, e.g. in docker.

(From OE-Core rev: 2322dc4f414da0281fdaffa7bc2205fb82a63d12)

Signed-off-by: He Zhe <zhe.he@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agowebkitgtk: Link compiler-rt for clang specific built-ins
Khem Raj [Mon, 10 Dec 2018 23:52:07 +0000 (15:52 -0800)] 
webkitgtk: Link compiler-rt for clang specific built-ins

When using clang, its increasingly using its own runtime which means
libgcc is not enough to find all primitives its using.

Fixes errors like
recipe-sysroot/usr/lib/libwebkit2gtk-4.0.so: undefined reference to
`__mulodi4'

(From OE-Core rev: 9584fc5ff7e07bb38c6ab115a216d9d28d1632d9)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agoinsane.bbclass: BPF objects may mismatch in endianness and bitness too
Khem Raj [Mon, 10 Dec 2018 23:52:06 +0000 (15:52 -0800)] 
insane.bbclass: BPF objects may mismatch in endianness and bitness too

This ensures that bitness and endianness is ignored for BPF objects
Fixes QA issues like

Bit size did not match (32 to 64) kernel-selftest on
/work/qemumips-yoe-linux/kernel-selftest/1.0-r0/packages-split/kernel-selftest/usr/kernel-selftest/bpf/test_btf_nokv.o

(From OE-Core rev: 26722e59ca5df14bd90fc09306d97ff0fd078f32)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agolzip: clean up recipe
Ross Burton [Tue, 11 Dec 2018 10:49:07 +0000 (10:49 +0000)] 
lzip: clean up recipe

Use cleandirs to ensure ${B} is always empty, and remove redundant assignment of
EXTRA_OEMAKE (presumably from when it had a non-empty default).

(From OE-Core rev: 326e183479f9cae12f2219a2bf9112b322832daa)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agocurl: Add PACKAGECONFIG to enable NSS support
Otavio Salvador [Tue, 11 Dec 2018 13:21:09 +0000 (11:21 -0200)] 
curl: Add PACKAGECONFIG to enable NSS support

(From OE-Core rev: 72e542f564691d892d140a69d7fcc6b442897cf8)

Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agoselftest/package: Correct format arguments in test_gdb_hardlink_debug
Ola x Nilsson [Tue, 11 Dec 2018 11:33:57 +0000 (12:33 +0100)] 
selftest/package: Correct format arguments in test_gdb_hardlink_debug

(From OE-Core rev: 7c2c9b876334cc7357f818c3b3744fc97987e38f)

Signed-off-by: Ola x Nilsson <olani@axis.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agonss: fix Upstream-Status format
Ross Burton [Mon, 10 Dec 2018 17:11:38 +0000 (17:11 +0000)] 
nss: fix Upstream-Status format

(From OE-Core rev: 2f5622bbe8cc59593ad18f54477a7a56a8177f36)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agoliberror-perl: upgrade 0.17026 -> 0.17027
Tim Orling [Sun, 9 Dec 2018 21:43:22 +0000 (13:43 -0800)] 
liberror-perl: upgrade 0.17026 -> 0.17027

* add RDEPENDS
* add RDEPENDS for ptest
  - tested on qemux86 with glibc and musl
* drop do_compile, not obvious why LIBC needed to be set
* Added HOMEPAGE:
  https://bitbucket.org/shlomif/perl-error.pm
  - Repository used to be github.com/shlomif (deadlink)

Upstream release notes:
"""
0.17027         2018-10-28
- Documentation and examples enhancements.
  - https://bitbucket.org/shlomif/perl-error.pm/pull-requests/1/october-prc-some-minor-mostly-doc-changes/diff
  - Thanks to https://metacpan.org/author/JMERELO .
"""

(From OE-Core rev: 236e801df6e3bd859acc2b8456880a4bc4f0943c)

Signed-off-by: Tim Orling <timothy.t.orling@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agocreate_manifest2: Dont match filenames which contain the directory name for new manifest
Alejandro Enedino Hernandez Samaniego [Sat, 8 Dec 2018 01:31:56 +0000 (17:31 -0800)] 
create_manifest2: Dont match filenames which contain the directory name for new manifest

When creating a new python2 manifest, there is a corner case on which
the filepath for a certain dependency that was found, could contain
the path of an existing folder, e.g. ${libdir}/python2.7/xmlrpclib.py
module path contains ${libdir}/python2.7/xml, this causes an issue where
the dependency doesnt get eventually added on FILES for that module.

This patch checks if the dependency that was found is a directory, if it
is, it checks if it matches one of the existing directories on the
manifest, if it is not, then it checks if the dependency's path (without
the filename) matches one of the directories.

Also some misc indentation fixes.

(From OE-Core rev: a1c1253b44eb2000de55b7fa3836e5cdaa28a508)

Signed-off-by: Alejandro Enedino Hernandez Samaniego <alejandr@xilinx.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agobitbake: bitbake-user-manual: Added "usehead" parameter.
Yong, Jonathan [Mon, 10 Dec 2018 18:46:03 +0000 (10:46 -0800)] 
bitbake: bitbake-user-manual: Added "usehead" parameter.

(Bitbake rev: 91e308992d676ea541b891261e21b840606fc1c4)

Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agomdadm: Drop redundant patches and fix build with clang
Khem Raj [Sat, 8 Dec 2018 20:56:02 +0000 (12:56 -0800)] 
mdadm: Drop redundant patches and fix build with clang

Several patches were being applied unnecessarily, the purpose they
served at one point has either been fixed differently, or accepted
upstream.

Add a new patch to make clang's diagnostics happy

(From OE-Core rev: 8bc0d2f2197430723f8b2d0785169e48c883eedb)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agocreate_manifest3: Dont match filenames which contain the directory name for new manifest
Alejandro Enedino Hernandez Samaniego [Sat, 8 Dec 2018 01:33:46 +0000 (17:33 -0800)] 
create_manifest3: Dont match filenames which contain the directory name for new manifest

When creating a new python3 manifest, there is a corner case on which
the filepath for a certain dependency that was found, could contain
the path of an existing folder, e.g. ${libdir}/python3/xmlrpclib.py
module path contains ${libdir}/python3/xml, this causes an issue where
the dependency doesnt get eventually added on FILES for that module.

This patch checks if the dependency that was found is a directory, if it
is, it checks if it matches one of the existing directories on the
manifest, if it is not, then it checks if the dependency's path (without
the filename) matches one of the directories.

(From OE-Core rev: 59db12fdf294cfab5c1730337d092a75867658f7)

Signed-off-by: Alejandro Enedino Hernandez Samaniego <alejandr@xilinx.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agobitbake: bitbake: pysh: Improve error handling for shell code
Robert Yang [Tue, 4 Dec 2018 02:06:03 +0000 (10:06 +0800)] 
bitbake: bitbake: pysh: Improve error handling for shell code

The p_error() is used for printing errors when parse shell code, but it can't
the EOF error correctly

- Add the following lines to quilt.inc
  do_configure_prepend () {
      find ${s} -name "*.in" -exec sed -i -e "1s,^#\!.*@perl@ -w$,#\! @perl@\nuse warnings;," {} \;
      if [ hello ]; then
  }

- Before the patch:
  $ rm -fr cache/ tmp/cache/; bitbake -p
  [snip]
  WARNING: /path/to/quilt/quilt-native_0.65.bb: Error during finalise of /path/to/quilt/quilt-native_0.65.bb
  [snip]
  bb.pysh.sherrors.ShellSyntaxError: None
  followed by:

  We can see that this isn't easy to debug, let p_error() check wheter it is EOF
  and print appropriate errors can improve the error message. And don't let
  codeparser.py except pyshlex.NeedMore (in fact, it never worked since p_error()
  only raise ShellSyntaxError), but make it print the last 5 lines which might be
  useful for debuging.

- After the patch
  $ rm -fr cache/ tmp/cache/; bitbake -p
  [snip]
  ERROR: /path/to/quilt/quilt_0.65.bb: Error during parse shell code, the last 5 lines are:
      find /path/to/quilt/0.65-r0/quilt-0.65 -name "*.in" -exec sed -i -e "1s,^#\!.*@PERL@ -w$,#\! @PERL@\nuse warnings;," {} \;
      if [ hello ]; then
      autotools_do_configure
      sed -e 's,^COMPAT_SYMLINKS.*:=.*,COMPAT_SYMLINKS    :=,' -i /path/to/quilt/0.65-r0/quilt-0.65/Makefile
  [snip]
    File "/path/to/bb/pysh/pyshyacc.py", line 649, in p_error(p=None):
               w('Unexpected EOF')
      >    raise sherrors.ShellSyntaxError(''.join(msg))

  bb.pysh.sherrors.ShellSyntaxError: Unexpected EOF

(Bitbake rev: 44790597951638e32eb1672de2e40bd5a603326b)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agobitbake: pysh/pyshlex.py: Set is not importable
Robert Yang [Tue, 4 Dec 2018 02:06:02 +0000 (10:06 +0800)] 
bitbake: pysh/pyshlex.py: Set is not importable

>>> from Set import Set
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ImportError: No module named 'Set'

So remove related code.

(Bitbake rev: 118e9d8894e64d102543562314b318676006e710)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agobitbake: pysh/sherrors.py: Remove unused classes
Robert Yang [Tue, 4 Dec 2018 02:06:01 +0000 (10:06 +0800)] 
bitbake: pysh/sherrors.py: Remove unused classes

The only two that we need are ShellSyntaxError and ShellError, others are not
used, so remove them.

(Bitbake rev: abee2ff5ee71bf8c3221cd9d3cd4243ebb4ca273)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agobitbake: pysh: Remove unused modules
Robert Yang [Tue, 4 Dec 2018 02:06:00 +0000 (10:06 +0800)] 
bitbake: pysh: Remove unused modules

We don't use these modules in bitbake, so remove them.

And pysh's author declared that pysh is no longer maintained:
http://pysh.sourceforge.net/

(Bitbake rev: 9cc4f12d2aef366a593c7977d3818a3002b1d8bf)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agobitbake: bitbake: persist_data: Retry database setup
Joshua Watt [Fri, 7 Dec 2018 21:59:28 +0000 (15:59 -0600)] 
bitbake: bitbake: persist_data: Retry database setup

The configuration of the sqlite database can timeout due to locking
under heavy load and should be subject to the same retry logic as the
other statements.

[YOCTO #13069]

(Bitbake rev: 5a2a95b0396e39662968690b3065d2f88167a71c)

Signed-off-by: Joshua Watt <JPEWhacker@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agobitbake: utils: Use utils.remove() within prunedir()
Richard Purdie [Fri, 7 Dec 2018 15:39:15 +0000 (15:39 +0000)] 
bitbake: utils: Use utils.remove() within prunedir()

We've already tweaked remove() for speed and not to error if it
races for deletion. Therefore use this for prunedir() which was
starting to show the same bug reports.

[YOCTO #13003]

(Bitbake rev: 47f359f9b017f8d99d0bb2161ac0dcefcbd915de)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agobitbake: fetch2: Fix os.errno references
Richard Purdie [Fri, 7 Dec 2018 15:33:34 +0000 (15:33 +0000)] 
bitbake: fetch2: Fix os.errno references

os.errno used to happen to work but is invalid. Correct to use errno.

[YOCTO #13068]

(Bitbake rev: 03aae96a8859409b1ce7e3d5c1197371fa96bd14)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agobitbake: fetch2/wget: Fix typo in exception name
Richard Purdie [Fri, 7 Dec 2018 13:08:38 +0000 (13:08 +0000)] 
bitbake: fetch2/wget: Fix typo in exception name

This could clearly never have worked since the python3 migration
but as its in an error path, it doesn't get tested/used much.

(Bitbake rev: 704f27dc28d50a6dc02c8b64274ee4ecb3058c4a)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agobitbake: cooker: Add some timing debug messages to the server startup
Richard Purdie [Fri, 7 Dec 2018 12:28:32 +0000 (12:28 +0000)] 
bitbake: cooker: Add some timing debug messages to the server startup

We're seeing slow startup in bitbake, add some timeing debug messages so
the logs are more useful for debugging when its slow.

(Bitbake rev: 8d1fc115b8a176009f1f3a8ce840b422e7e0b45e)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agobitbake: server/process: Increase server startup time delay
Richard Purdie [Sun, 2 Dec 2018 19:18:14 +0000 (19:18 +0000)] 
bitbake: server/process: Increase server startup time delay

On loaded production systems we've seen bitbake server take over
40s to start up. Increase the timeout to 90s which tries to avoid
failures in selftests.

The delays come from setting up the inotify watches (31s) so can't
really be avoided.

After 5s delay we now warn the user we're waiting for 90s so the
interactive exeperience shouldn't be much changed and its very
unlikely the user would see that anyway.

(Bitbake rev: 7a4e105093c3080c1087cd06abc2883852a23e28)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agonfs-utils: Fix build with clang
Khem Raj [Sat, 8 Dec 2018 10:26:38 +0000 (02:26 -0800)] 
nfs-utils: Fix build with clang

(From OE-Core rev: 924d6956fb5bef3effe8914fe61e8cad6f71a231)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agomeson.bbclass: map mips64el TARGET_ARCH to mips64 for the cross file
Andrea Adami [Fri, 7 Dec 2018 23:23:23 +0000 (00:23 +0100)] 
meson.bbclass: map mips64el TARGET_ARCH to mips64 for the cross file

Meson uses 'mips64' for both big- and little-endian MIPS64 machines,
so map mips64el to mips64.

(From OE-Core rev: 8d1023f222f32ef64d37c3cb15b7dcf9c3e5990d)

Signed-off-by: Andrea Adami <andrea.adami@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agooeqa/sdk/galculator: rewrite to use new helpers
Ross Burton [Fri, 7 Dec 2018 21:26:05 +0000 (21:26 +0000)] 
oeqa/sdk/galculator: rewrite to use new helpers

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agooeqa/sdk/python: fix version typo
Ross Burton [Fri, 7 Dec 2018 21:25:18 +0000 (21:25 +0000)] 
oeqa/sdk/python: fix version typo

(From OE-Core rev: 581b43d7b3566624e6b17d516755d8e7a5142ebf)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agooeqa/sdk/assimp: use helpers
Ross Burton [Fri, 7 Dec 2018 21:25:00 +0000 (21:25 +0000)] 
oeqa/sdk/assimp: use helpers

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agooeqa/sdk/case: add fundamental helper methods
Ross Burton [Fri, 7 Dec 2018 21:24:42 +0000 (21:24 +0000)] 
oeqa/sdk/case: add fundamental helper methods

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agoavahi: avoid depending on skipped package
Jens Rehsack [Wed, 28 Nov 2018 08:15:30 +0000 (09:15 +0100)] 
avahi: avoid depending on skipped package

When built without D-Bus, libavahi-client is not build:
  Building libavahi-client:           no   (You need avahi-daemon and D-Bus!)
which causes avahi-dev RDEPENDS failing when creating an image
containing development-tools:
 *   - nothing provides libavahi-client = 0.7-r0 needed by avahi-dev-0.7-r0.cortexa8hf-neon

(From OE-Core rev: 319532792435be73e96c8319e90336e1298ac2a1)

Signed-off-by: Jens Rehsack <sno@netbsd.org>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agouboot-sign.bbclass: fix signature and deployment
Robert Yang [Fri, 30 Nov 2018 02:26:14 +0000 (10:26 +0800)] 
uboot-sign.bbclass: fix signature and deployment

Fixed:
MACHINE = "beaglebone-yocto"
KERNEL_CLASSES += "kernel-fitimage"
KERNEL_IMAGETYPE_beaglebone-yocto = "fitImage"
UBOOT_MACHINE_beaglebone-yocto = "am335x_boneblack_vboot_config"
UBOOT_MKIMAGE_DTCOPTS = "-I dts -O dtb -p 2000"
UBOOT_SIGN_KEYDIR = "${TOPDIR}/conf"
UBOOT_SIGN_KEYNAME = "dev"
UBOOT_SIGN_ENABLE = "1"
IMAGE_INSTALL_remove = "kernel-image-zimage"

$ cd conf
$ openssl genrsa -F4 -out dev.key 2048
$ openssl req -batch -new -x509 -key dev.key -out dev.crt
$ cd ../
$ bitbake u-boot linux-yocto
$ grep signature tmp/deploy/images/beaglebone-yocto/*.dtb
Binary file tmp/deploy/images/beaglebone-yocto/u-boot-beaglebone-yocto-2018.07-r0.dtb matches
Binary file tmp/deploy/images/beaglebone-yocto/u-boot-beaglebone-yocto.dtb matches
Binary file tmp/deploy/images/beaglebone-yocto/u-boot.dtb matches

And there would be no signature info when rebuild from sstate:
$ bitbake u-boot linux-yocto -cclean
$ bitbake u-boot linux-yocto
$ grep signature tmp/deploy/images/beaglebone-yocto/*.dtb
No result

This s because kernel directly edit ${DEPLOY_DIR_IMAGE}/u-boot.dtb, (Note, it
is global ${DEPLOY_DIR_IMAGE}, not recipe's DEPLOYDIR), so that the modified
info is not in sstate, and would be lost when rebuild from sstate.

There are other problems in previouse code:
- The u-boot.dtb is provided by u-boot, but edited by kernel during signing, so
  it should be deployed by kernel rather than u-boot.

- The u-boot.do_concat_dtb directly install files to global ${DEPLOY_DIR_IMAGE},
  this is incorrect, the ${DEPLOY_DIR_IMAGE} should be installed by do_deploy.

- It seems that it assumes do_deploy depends on do_install according the comments,
  but they have no relationships:
  # do_concat_dtb is scheduled _before_ do_install as it overwrite the
  # u-boot.bin in both DEPLOYDIR and DEPLOY_IMAGE_DIR.

- The do_concat_dtb should be run after do_compile, but it doesn't have this
  dependency.

Make u-boot install u-boot.dtb to ${datadir}, kernel copies u-boot.dtb from
${STAGING_DATADIR} to ${B} and deploy it can fix the problem.

[YOCTO #12112]

Reported-by: Christian Andersen <c.andersen@kostal.com>
(From OE-Core rev: 493f70cfb177f1d452a13329647a38642bf2b161)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agostrace: fix ptest fail and strip ptest host references
Changqing Li [Wed, 5 Dec 2018 09:42:26 +0000 (17:42 +0800)] 
strace: fix ptest fail and strip ptest host references

1. Add LDFLAGS_FOR_BUILD for strip host reference
2. Revert one previous replace operation for fix ptest fail.
   refer oe commit: 74b5088f1cc1708db43c33ac2dc7f01f4a4db9c1

(From OE-Core rev: e52eede3dfd7155e4e016734586b527932d1ef2a)

Signed-off-by: Changqing Li <changqing.li@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agou-boot-tools: fix compile error
Kai Kang [Fri, 30 Nov 2018 01:58:22 +0000 (20:58 -0500)] 
u-boot-tools: fix compile error

It uses sandbox_defconfig to produce u-boot tools. But EFI is only
supported by arm and x86, then it fails to run task do_compile on other
arches:

| include/config_distro_bootcmd.h:267:3: error: #error "sandbox EFI
| support is only supported on ARM and x86"

Only enable EFI support for u-boot-tools on x86 and arm to fix the issue.

(From OE-Core rev: f79039497a6bb8521d5dc076924b6eb2626607c5)

Signed-off-by: Kai Kang <kai.kang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agoglibc: improve reproducibility with multilib
Hongxu Jia [Thu, 6 Dec 2018 08:56:15 +0000 (16:56 +0800)] 
glibc: improve reproducibility with multilib

Multilib builds specify several loaders which will end up embedded in
some binaries or script files. To support reproducible builds, we must
ensure the loaders are always in deterministic order.

[YOCTO #2655]
[YOCTO #12478]
[YOCTO #12480]

(From OE-Core rev: 3f839c0cdfe253677ebee47838fe476a0939e0aa)

Signed-off-by: Juro Bystricky <juro.bystricky@intel.com>
Improve the fix and rebase it to 2.28

Here is the log of lib32-glibc
[log.do_compile]
|Adjust ldd script
|ldd "/lib64/ld-linux-x86-64.so.2 /lib/ld-linux.so.2 /lib/ld-linux.so.2
/lib64/ld-linux-x86-64.so.2" -> "/lib/ld-linux.so.2 /lib64/ld-linux-x86-64.so.2"
[log.do_compile]

Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agorecipeutils-test: Add missing LIC_FILES_CHKSUM
Khem Raj [Thu, 6 Dec 2018 00:33:55 +0000 (16:33 -0800)] 
recipeutils-test: Add missing LIC_FILES_CHKSUM

Fixes
ERROR: QA Issue: recipeutils-test: Recipe file fetches files and does
not have license file information (LIC_FILES_CHKSUM) [license-checksum]

(From OE-Core rev: ee65f7ab11302982124bcd1974a05c87342ab28e)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agolibunwind: Enable building static archive on musl
Khem Raj [Thu, 6 Dec 2018 00:07:49 +0000 (16:07 -0800)] 
libunwind: Enable building static archive on musl

This ensures that we have .a for libunwind on musl targets, this is used
for stack unwinding infra e.g. in rust

Help compiling rust compiler and standard library from meta-rust

(From OE-Core rev: 37ddab09f0ed9b532fb9ac57f622c8609121aa65)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agokernel: don't assign the build user/host
Federico Sauter [Wed, 5 Dec 2018 14:22:32 +0000 (14:22 +0000)] 
kernel: don't assign the build user/host

The KBUILD_BUILD_USER and KBUILD_BUILD_HOST variables were
assigned at the kernel class level, which made it impossible
to override them in the local configuration.

By setting only the default values of those variables in the
kernel class, it is now possible to override them as expected.

(From OE-Core rev: a3e8cdf9c3ba966fa4b5a21235540eb0b00fb487)

Signed-off-by: Federico Sauter <federico.sauter@ableton.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agooeqa/selftest/runcmd: Increase timeout delta
Richard Purdie [Thu, 29 Nov 2018 10:28:34 +0000 (10:28 +0000)] 
oeqa/selftest/runcmd: Increase timeout delta

Expecting 1s accuracy on a 2s timeout on a heavily loaded system has proven to be
unreliable. Update this to a 5s timeout with a 3s delta which should be achievable.

(From OE-Core rev: 5feecb639d49d72d8a6abc589b937e07ee72f252)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agoimage-buildinfo: Remove unused function argument
Joshua Watt [Tue, 4 Dec 2018 03:42:45 +0000 (21:42 -0600)] 
image-buildinfo: Remove unused function argument

Removes the listvars argument to image_buildinfo_outputvars(). It
doesn't appear that this argument ever did anything.

(From OE-Core rev: 66ff9408291f3df98e8a6cb3e6e348d7ec8f401d)

Signed-off-by: Joshua Watt <JPEWhacker@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agokernel-fitimage: Replace tabs with spaces in python
Alex Kiernan [Fri, 7 Dec 2018 10:31:07 +0000 (10:31 +0000)] 
kernel-fitimage: Replace tabs with spaces in python

Fix:

  WARNING: python should use 4 spaces indentation, but found tabs in kernel-fitimage.bbclass, line 24

(From OE-Core rev: 4ec42465e9df8cef20a97be11243726aa7dfb8c1)

Signed-off-by: Alex Kiernan <alex.kiernan@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agooeqa/selftest/context: ensure log directory exists
Chen Qi [Fri, 7 Dec 2018 06:43:07 +0000 (14:43 +0800)] 
oeqa/selftest/context: ensure log directory exists

Ensure log directory exists to avoid the following error.

  FileNotFoundError: [Errno 2] No such file or directory: '/.../build-selftest/tmp/log/oe-selftest-results-20181207043431.log'

(From OE-Core rev: 6c41de48db76087fee596d9440d8f05346ab1094)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agobinutils: Fix build with clang
Khem Raj [Fri, 7 Dec 2018 03:12:33 +0000 (19:12 -0800)] 
binutils: Fix build with clang

(From OE-Core rev: 208dadb8f1864aca88c69766f3bfb37a2ef4953c)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agolibart-lgpl: remove
Ross Burton [Thu, 6 Dec 2018 23:40:13 +0000 (23:40 +0000)] 
libart-lgpl: remove

This is very dead, and nothing in oe-core or meta-oe depends on it anymore.

(From OE-Core rev: 508746e28d971952b1153a4c24ee3c5a020f9ee9)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agobitbake.conf: Cleanup deprecated function usage
Richard Purdie [Fri, 7 Dec 2018 00:05:26 +0000 (00:05 +0000)] 
bitbake.conf: Cleanup deprecated function usage

This function was moved in bitbake a long time ago, use the
preferred version to avoid a Deprecation warning.

(From OE-Core rev: aeb189ac8bc6625ec936fd69f18974ebde758946)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agoclasses: Correctly markup regex strings
Richard Purdie [Fri, 7 Dec 2018 00:04:50 +0000 (00:04 +0000)] 
classes: Correctly markup regex strings

There are various escape characters in these stings which python warns
about so use the correct regex markup for them.

(From OE-Core rev: 252b69c9f2abe3258366c540f56b156ed63e5437)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agooeqa/selftest/esdk: Ensure parent directory exists
Richard Purdie [Thu, 6 Dec 2018 14:06:34 +0000 (14:06 +0000)] 
oeqa/selftest/esdk: Ensure parent directory exists

INFO - ======================================================================
INFO - ERROR: setUpClass (eSDK.oeSDKExtSelfTest)
INFO - ----------------------------------------------------------------------
INFO - Traceback (most recent call last):
  File "/home/pokybuild/yocto-worker/oe-selftest-debian/build/meta/lib/oeqa/core/case.py", line 32, in _oeSetUpClass
    clss.setUpClassMethod()
  File "/home/pokybuild/yocto-worker/oe-selftest-debian/build/meta/lib/oeqa/selftest/cases/eSDK.py", line 76, in setUpClass
    cls.tmpdirobj = tempfile.TemporaryDirectory(prefix="selftest-esdk-", dir=bb_vars["WORKDIR"])
  File "/usr/lib/python3.5/tempfile.py", line 929, in __init__
    self.name = mkdtemp(suffix, prefix, dir)
  File "/usr/lib/python3.5/tempfile.py", line 507, in mkdtemp
    _os.mkdir(file, 0o700)
FileNotFoundError: [Errno 2] No such file or directory: '/home/pokybuild/yocto-worker/oe-selftest-debian/build/build/tmp/work/qemux86_64-poky-linux/core-image-minimal/1.0-r0/selftest-esdk-q7ln84gc'

(From OE-Core rev: 48719bc4d108df7e357e7f22f9f356cd72b3ebbd)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agobitbake: cache: Cleanup deprecated function usage
Richard Purdie [Fri, 7 Dec 2018 00:05:49 +0000 (00:05 +0000)] 
bitbake: cache: Cleanup deprecated function usage

Remove a deprecated warning and stop using our own deprecated API!

(Bitbake rev: 83ece2c6f4b000e906fec9148f25bd1dff66cfb0)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agobitbake: siggen: Split out stampfile hash fetch
Joshua Watt [Tue, 4 Dec 2018 03:42:37 +0000 (21:42 -0600)] 
bitbake: siggen: Split out stampfile hash fetch

The mechanism used to get the hash for a stamp file is split out so that
it can be overridden by derived classes

[YOCTO #13030]

(Bitbake rev: ce241534d19b2f1c51dbdb3b92419676d234e464)

Signed-off-by: Joshua Watt <JPEWhacker@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agobitbake: bitbake-worker: Pass taskhash as runtask parameter
Joshua Watt [Tue, 4 Dec 2018 03:42:36 +0000 (21:42 -0600)] 
bitbake: bitbake-worker: Pass taskhash as runtask parameter

Pass the task hash as a parameter to the 'runtask' message instead of
passing the entire dictionary of hashes when the worker is setup. This
is possible less efficient, but prevents the worker taskhashes from
being out of sync with the runqueue in the event that the taskhashes in
the runqueue change.

[YOCTO #13030]

(Bitbake rev: 1e86d8c1bec7ea5d016a5ad2097f999362e29033)

Signed-off-by: Joshua Watt <JPEWhacker@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agobitbake: persist_data: Disable enable_shared_cache
Joshua Watt [Tue, 4 Dec 2018 03:42:33 +0000 (21:42 -0600)] 
bitbake: persist_data: Disable enable_shared_cache

Turns off the shared cache. It isn't a significant factor in performance
(now that WAL is enabled), and is a really bad idea to have enabled in
processes that fork() (as bitbake it prone to do).

[YOCTO #13030]

(Bitbake rev: 71b427bf01374973a971c10cb64024c8ef2a11eb)

Signed-off-by: Joshua Watt <JPEWhacker@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agobitbake: persist_data: Enable Write Ahead Log
Joshua Watt [Tue, 4 Dec 2018 03:42:32 +0000 (21:42 -0600)] 
bitbake: persist_data: Enable Write Ahead Log

Enabling the write ahead log improves database reliability, speeds up
writes (since they mostly happen sequentially), and speeds up readers
(since they are no longer blocked by most write operations). The
persistent database is very read heavy, so the auto-checkpoint size is
reduced from the default (usually 1000) to 100 so that reads remain
fast.

[YOCTO #13030]

(Bitbake rev: 79100fa67539f9654af9bf6d3e6842eb5c12e989)

Signed-off-by: Joshua Watt <JPEWhacker@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agobitbake: persist_data: Add key constraints
Joshua Watt [Tue, 4 Dec 2018 03:42:31 +0000 (21:42 -0600)] 
bitbake: persist_data: Add key constraints

Constructs the "key" column in the persistent database as a non-NULL
primary key. This significantly speeds up lookup operations in large
databases.

[YOCTO #13030]

(Bitbake rev: f5ba7775cfcb90401522d977cc66fe0f5aeb7a66)

Signed-off-by: Joshua Watt <JPEWhacker@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agobitbake: persist_data: Fix leaking cursors causing deadlock
Joshua Watt [Tue, 4 Dec 2018 03:42:30 +0000 (21:42 -0600)] 
bitbake: persist_data: Fix leaking cursors causing deadlock

The original implementation of persistent data executed all SQL
statements via sqlite3.Connection.execute(). Behind the scenes, this
function created a sqlite3 Cursor object, executed the statement, then
returned the cursor. However, the implementation did not account for
this and failed to close the cursor object when it was done. The cursor
would eventually be closed when the garbage collector got around to
destroying it. However, sqlite has a limit on the number of cursors that
can exist at any given time, and once this limit is reached it will
block a query to wait for a cursor to be destroyed. Under heavy database
queries, this can result in Python deadlocking with itself, since the
SQL query will block waiting for a free cursor, but Python can no longer
run garbage collection (as it is blocked) to free one.

This restructures the SQLTable class to use two decorators to aid in
performing actions correctly. The first decorator (@retry) wraps a
member function in the retry logic that automatically restarts the
function in the event that the database is locked.

The second decorator (@transaction) wraps the function so that it occurs
in a database transaction, which will automatically COMMIT the changes
on success and ROLLBACK on failure. This function additionally creates
an explicit cursor, passes it to the wrapped function, and cleans it up
when the function is finished.

Note that it is still possible to leak cursors when iterating. This is
much less frequent, but can still be mitigated by wrapping the iteration
in a `with` statement:

 with db.iteritems() as it:
     for (k, v) in it:
         ...

As a side effect, since most statements are wrapped in a transaction,
setting the isolation_level when the connection is created is no longer
necessary.

[YOCTO #13030]

(Bitbake rev: e8b9d3f534ef404780be23b601d5a4bb9cec928a)

Signed-off-by: Joshua Watt <JPEWhacker@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agooeqa/selftest/esdk: Fix typo causing test failure
Richard Purdie [Thu, 6 Dec 2018 23:25:49 +0000 (23:25 +0000)] 
oeqa/selftest/esdk: Fix typo causing test failure

2018-12-06 23:19:24,564 - oe-selftest - INFO - Traceback (most recent call last):
  File "/media/build1/poky-sumo/meta/lib/oeqa/core/case.py", line 32, in _oeSetUpClass
    clss.setUpClassMethod()
  File "/media/build1/poky-sumo/meta/lib/oeqa/selftest/cases/eSDK.py", line 78, in setUpClass
    cls.tmpdir_eSDKQA = cls.tempdirobj.name
AttributeError: type object 'oeSDKExtSelfTest' has no attribute 'tempdirobj'

(From OE-Core rev: c6de27c2f6f598849dcb8036ee849f449ba7f327)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agotcl: Upgrade to 8.6.9
Hong Liu [Wed, 5 Dec 2018 01:21:32 +0000 (09:21 +0800)] 
tcl: Upgrade to 8.6.9

Upgrade tcl from 8.6.8 to 8.6.9.

(From OE-Core rev: bbe5099ba78369dac861d78e056eb07d1fe6c9d2)

Signed-off-by: Hong Liu <hongl.fnst@cn.fujitsu.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agoat: upgrade to 3.1.23
Chen Qi [Wed, 5 Dec 2018 08:40:46 +0000 (16:40 +0800)] 
at: upgrade to 3.1.23

The following patches are rebased.

  fix_parallel_build_error.patch
  pam.conf.patch

(From OE-Core rev: 30fa97ec4c9d0553f1566bc26a6949e93cb6da90)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agosysstat: upgrade to 12.1.1
Chen Qi [Wed, 5 Dec 2018 08:40:45 +0000 (16:40 +0800)] 
sysstat: upgrade to 12.1.1

(From OE-Core rev: af912ac17f406ff11319eb33bc0d3910bcea39ef)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agocups: upgrade to 2.2.9
Chen Qi [Wed, 5 Dec 2018 08:40:44 +0000 (16:40 +0800)] 
cups: upgrade to 2.2.9

The following patch is rebased.

  0001-don-t-try-to-run-generated-binaries.patch

(From OE-Core rev: ee57d79aec06e9b160cf2713636cda650ba68d5a)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agosudo: upgrade to 1.8.26
Chen Qi [Wed, 5 Dec 2018 08:40:43 +0000 (16:40 +0800)] 
sudo: upgrade to 1.8.26

License-Update: include more files to check, but license remains the same.

(From OE-Core rev: ad0f26263eb51cda4cf96cd2fe7f6e7f950b9e8e)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agopackages: respect PACKAGE_NO_GCONV
Kai Kang [Wed, 5 Dec 2018 13:00:56 +0000 (08:00 -0500)] 
packages: respect PACKAGE_NO_GCONV

PACKAGE_NO_GCONV is set in libc-package.bbclass if not all of
'libc-charsets libc-locale-code libc-locales' included in
DISTRO_FEATURES. And then no packages glibc-gconv-* glibc-charmap-* and
glibc-localedata-* is created. Update recipes and conf file which depend
on these packages to check required distro features.

(From OE-Core rev: 58446992de0f16a345f1f55b66d0d34d31dc341b)

Signed-off-by: Kai Kang <kai.kang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agoimage.bbclass: respect PACKAGE_NO_GCONV
Kai Kang [Wed, 5 Dec 2018 13:00:55 +0000 (08:00 -0500)] 
image.bbclass: respect PACKAGE_NO_GCONV

It installs locale-base-* packages according to var IMAGE_LINGUAS.
Packages locale-base-* are split in libc-package.bbclass if variable
PACKAGE_NO_GCONV is not set. When none of ditro features libc-charsets
libc-locales and libc-locale-code is set, PACKAGE_NO_GCONV is set. Then
no locale-base-* is created and fails to create image.

Clear IMAGE_LINGUAS in such situation.

(From OE-Core rev: 85240094175a8ea726bfba19c00d4556a62862fc)

Signed-off-by: Kai Kang <kai.kang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agoglibc-locale: fix installed-vs-shipped qa issue
Kai Kang [Wed, 5 Dec 2018 13:00:54 +0000 (08:00 -0500)] 
glibc-locale: fix installed-vs-shipped qa issue

Variable PACKAGE_NO_GCONV is set in libc-package.bbclass when none of
libc-charsets, libc-locales and libc-locale-code set in DISTRO_FEATURES.
Then it causes installed-vs-shipped qa issue of glibc-locale:

| ERROR: glibc-locale-2.28-r0 do_package: QA Issue: glibc-locale:
| Files/directories were installed but not shipped in any package:
|   /usr/share/i18n
|   /usr/share/i18n/charmaps
|   /usr/share/i18n/locales
|   /usr/share/i18n/charmaps/CP737.gz
|   ...
|   /usr/share/i18n/locales/ru_RU
|   ...
|   /usr/lib64/gconv/gconv-modules
| Please set FILES such that these items are packaged. Alternatively if they
| are unneeded, avoid installing them or delete them within do_install.
| glibc-locale: 843 installed and not shipped files. [installed-vs-shipped]

So check PACKAGE_NO_GCONV during do_install and not copy those files if
PACKAGE_NO_GCONV has been set.

Simplify call of bb.utils.contains() in libc-package.bbclass as well.

(From OE-Core rev: 39840ed10af559bbcc306b378baa4723921668f5)

Signed-off-by: Kai Kang <kai.kang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agoautoconf-doc: improve reproducibility
Hongxu Jia [Wed, 5 Dec 2018 02:11:48 +0000 (10:11 +0800)] 
autoconf-doc: improve reproducibility

autoconf-doc package contains autoconf.info.
This file contains date when this file was created, i.e:

     "This manual (31 January 2018) .."

Therefore, two builds done on two different days will show different dates for
otherwise identical files, hence breaking reproducibility.
The date is obtained from mtime of "autoconf.texi", unfortunately we patch this
file and change the mtime as a consequence.
We restore reproducibility by removing the patch modifying "autoconf.texi".
As a consequence certain supplemental information will be not added to the documentation.
In particular:  more details on usage, and on workarounds for non-updated projects.

[YOCTO #12524]

(From OE-Core rev: 1eaa918ae3663e3f863c025744a9ced0300b6b78)

Signed-off-by: Juro Bystricky <juro.bystricky@intel.com>
With applying this fix:

    "This manual (24 April 2012) .."

Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agoclasses/waf: Fix builds when B != S
Joshua Watt [Sat, 1 Dec 2018 03:01:42 +0000 (21:01 -0600)] 
classes/waf: Fix builds when B != S

Waf requires that the current working directory be ${S} (the location of
the wscript) when building. Most of the time, this was true only because
B defaults to S. However, anything that changed that behavior (notably,
using externalsrc) would break the recipe. Remedy this by explicitly
changing cwd to ${S} when running waf commands. As a happy side effect,
B can be set up for "out of tree" builds to keep the source directory
clean.

(From OE-Core rev: 62dffb71ce22222c635bd90eaa47dd01f70f9c0f)

Signed-off-by: Joshua Watt <JPEWhacker@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agobitbake: main: Don't use print() directly, use logger
Richard Purdie [Tue, 4 Dec 2018 12:54:58 +0000 (12:54 +0000)] 
bitbake: main: Don't use print() directly, use logger

Avoid failures like:

2018-12-04 03:30:56,033 - oe-selftest - INFO - ======================================================================
2018-12-04 03:30:56,033 - oe-selftest - INFO - FAIL: pkgdata.OePkgdataUtilTests.test_find_path (subunit.RemotedTestCase)
2018-12-04 03:30:56,033 - oe-selftest - INFO - ----------------------------------------------------------------------
2018-12-04 03:30:56,033 - oe-selftest - INFO - testtools.testresult.real._StringException: Traceback (most recent call last):
[...]
AssertionError: 'Previous bitbake instance shutting down?,[77 chars]xist' != 'ERROR: Unable to find any package produci[14 chars]xist'
- Previous bitbake instance shutting down?, waiting to retry...
  ERROR: Unable to find any package producing path /not/exist

We need to use the logger so output is correctly handled in such cases.

(Bitbake rev: b5686fc07d06e1f0a55161b5ebcec6552d74ceff)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agobitbake: process: Flush key output to logs
Richard Purdie [Sat, 1 Dec 2018 17:40:49 +0000 (17:40 +0000)] 
bitbake: process: Flush key output to logs

Small tweak to ensure these items are printed into the log since there
is other logging code which looks for the header and this makes it clearer
the server did start but is slow somewhere in startup.

(Bitbake rev: 7c0b84cac892744225fa0462f918ea9a79b356cb)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agobitbake: server/process: Handle short reads
Richard Purdie [Thu, 29 Nov 2018 16:51:39 +0000 (16:51 +0000)] 
bitbake: server/process: Handle short reads

Its possible the read may return a smaller number of characters. Remove
the possibility by using a single character to signal the server is ready.

(Bitbake rev: 767c9596d129d21ddf5d2e00c55f0a0525c641dc)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agobitbake: server/process: Make lockfile handling clearer
Richard Purdie [Thu, 29 Nov 2018 16:51:18 +0000 (16:51 +0000)] 
bitbake: server/process: Make lockfile handling clearer

This simplifies the code and makes it easier to read but has the
same functionality.

(Bitbake rev: a0b9cfaf2d03fd047a79d32e668001718d02c4bf)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agobitbake: bitbake: BBHandler: Check tab indentation for python code
Robert Yang [Fri, 23 Nov 2018 11:13:44 +0000 (19:13 +0800)] 
bitbake: bitbake: BBHandler: Check tab indentation for python code

The previous check was in data.py which only can check code like "python
funcname()" in the dependency chain, but there are 3 kinds of python functions:
  - python()
  - def py_funcname()
  - python funcname()

Add the checking to BBHandler to check and warn for all of them.

The warning looks like:
WARNING: /path/to/recipes-core/busybox/busybox_1.29.2.bb: python should use 4 spaces indentation, but found tabs in busybox.inc, line 75

(Bitbake rev: 0cdc5b81fc1f5e5281a525a657e420ebc3bb9e90)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agouboot-sign.bbclass: Remove tab indentations in python code
Robert Yang [Fri, 23 Nov 2018 11:08:41 +0000 (19:08 +0800)] 
uboot-sign.bbclass: Remove tab indentations in python code

Use 4 spaces to replace a tab.

(From OE-Core rev: 790828a65316fee57cd7659ad8b7544de5d2610c)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agooeqa/selftest/esdk: run selftest inside workdir not /tmp
Ross Burton [Mon, 3 Dec 2018 20:35:15 +0000 (20:35 +0000)] 
oeqa/selftest/esdk: run selftest inside workdir not /tmp

We've seen issues with rootfs size calculations and we've seen systems
like opensuse which have btrfs mounted on /tmp causing selftest failures.

(From OE-Core rev: 61be3cd748d1b7321a1fc4cfe84efa9b26a6aee0)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agooeqa: don't litter /tmp with temporary directories
Ross Burton [Mon, 3 Dec 2018 20:35:14 +0000 (20:35 +0000)] 
oeqa: don't litter /tmp with temporary directories

If we need to create a temporary directory in targetbuild or buildproject use
tempfile.TemporaryDirectory so that when the test case is finished, the
directory is deleted.

Also synchronise the logic and don't possibly store the temporary directory in
self.tmpdir as nothing uses that.

(From OE-Core rev: db0e658097130d146752785d0d45f46a3e0bad71)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>