]> code.ossystems Code Review - openembedded-core.git/log
openembedded-core.git
6 years agooeqa/runner: Print any errors/failures early
Richard Purdie [Wed, 22 Aug 2018 22:12:43 +0000 (23:12 +0100)]
oeqa/runner: Print any errors/failures early

Its a pain to have to wait until oe-selftest finishes to see the
failures for example.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agooeqa/runner: Use the proper logger functions instead of print()
Richard Purdie [Wed, 22 Aug 2018 22:10:51 +0000 (23:10 +0100)]
oeqa/runner: Use the proper logger functions instead of print()

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agooeqa/context: Only set buffer mode for non-concurrent tests
Richard Purdie [Tue, 21 Aug 2018 21:45:31 +0000 (21:45 +0000)]
oeqa/context: Only set buffer mode for non-concurrent tests

Periodically we'd see:

NOTE: core-image-sato-1.0-r0 do_testsdk: ======================================================================
NOTE: core-image-sato-1.0-r0 do_testsdk: ERROR: broken-runner
NOTE: core-image-sato-1.0-r0 do_testsdk: ----------------------------------------------------------------------
NOTE: core-image-sato-1.0-r0 do_testsdk: testtools.testresult.real._StringException: Traceback (most recent call last):
  File "/home/pokybuild/yocto-autobuilder/yocto-worker/nightly-mips/build/meta/lib/oeqa/core/utils/concurrencytest.py", line 122, in _run_test
    test.run(process_result)
  File "/usr/lib/python3.6/site-packages/subunit/__init__.py", line 1194, in run
    protocol = TestProtocolServer(result, self._passthrough, self._forward)
  File "/usr/lib/python3.6/site-packages/subunit/__init__.py", line 514, in __init__
    stream = stream.buffer
AttributeError: '_io.StringIO' object has no attribute 'buffer'

which seems to occur if a result arrives before all the runner threads
have started. The runner's result handling changes sys.stdout to a buffer
temporarily which can be seen in other threads and it can sometimes fail.

Since the tests are running in a separate process we don't need this buffer
handling in the concurrent case so only set when not parallelising. The
concurrent class handle setting buffer mode internally.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agooeqa/concurrencytest: Ensure subunit streams are flushed at exit
Richard Purdie [Tue, 21 Aug 2018 18:28:32 +0000 (18:28 +0000)]
oeqa/concurrencytest: Ensure subunit streams are flushed at exit

Without this, error output such as that in the teardown can be lost
and processes may recieve signals they're not expecting causing other
strange errors.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agopython/python3: add virtual/crypt to DEPENDS
Hongxu Jia [Tue, 21 Aug 2018 05:44:55 +0000 (13:44 +0800)]
python/python3: add virtual/crypt to DEPENDS

Since  `6146b8c glibc: Disable crypt support in glibc' in oe-core,
python2/3 could not find symbol crypt which caused import crypt failed.
[snip]
>>> import crypt
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/usr/lib64/python3.5/crypt.py", line 3, in <module>
    import _crypt
ImportError: /usr/lib64/python3.5/lib-dynload/_crypt.cpython-35m-x86_64-linux-gnu.so: undefined symbol: crypt
[snip]

Add virtual/crypt to DEPENDS, and python's build system (setup.py)
will search libcrypt.so in recipe-sysroot and add `-lcrypt' if it
exists.

Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agosstate: Avoid indirect autoconf-archive-native dependencies
Changqing Li [Tue, 21 Aug 2018 01:30:18 +0000 (09:30 +0800)]
sstate: Avoid indirect autoconf-archive-native dependencies

remove the indirect dependcy of autoconf-archive-native via
SSTATE_EXCLUDEDEPS_SYSROOT to avoid not needed .m4 installed
into sysroot, which may cause compile problem.

Signed-off-by: Changqing Li <changqing.li@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agoopenssl: fix hardcoded paths in native for openssl 1.1
Andre McCurdy [Tue, 21 Aug 2018 00:47:28 +0000 (17:47 -0700)]
openssl: fix hardcoded paths in native for openssl 1.1

Relying on hardcoded built-in paths causes openssl-native to not be
relocateable from sstate.

Solution for openssl 1.1, based on the existing solution from
openssl 1.0:

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

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agoassimp.py: fix AttributeError in tearDownClass
Chen Qi [Fri, 17 Aug 2018 09:17:14 +0000 (17:17 +0800)]
assimp.py: fix AttributeError in tearDownClass

When running this test case, we will see the following error.

  AttributeError: type object 'BuildAssimp' has no attribute 'project'

assimp.py test case does not make use of SDKBuildProject, so remove
the import statement and the tearDownClass.

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agollvm: Enable AMDGPU backend for native/native-sdk builds too
Khem Raj [Mon, 20 Aug 2018 22:25:29 +0000 (15:25 -0700)]
llvm: Enable AMDGPU backend for native/native-sdk builds too

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agollvm: Use HOST_ARCH in LLVM_TARGETS_TO_BUILD for builds
Khem Raj [Mon, 20 Aug 2018 18:59:51 +0000 (11:59 -0700)]
llvm: Use HOST_ARCH in LLVM_TARGETS_TO_BUILD for builds

LLVM_TARGETS_TO_BUILD is needed to represent HOST_ARCH for
builds and target specific additions should use class-target
override

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agodos2unix: Move to oe-core
Khem Raj [Mon, 20 Aug 2018 18:59:50 +0000 (11:59 -0700)]
dos2unix: Move to oe-core

- Import from meta-oe layer

- This is useful for many packages where CR-LF
  needs to be adjusted, many recipes depend on it
  e.g. meta-multimedia libebml and so on.

- Add myself as maintainer for now

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agogdb: Alias rpl_stat to stat() on musl
Khem Raj [Mon, 20 Aug 2018 18:59:49 +0000 (11:59 -0700)]
gdb: Alias rpl_stat to stat() on musl

Use CPPFLAGS instead of CFLAGS since there is C++ compiler being used for somefiles

Fixes
gdb/gdbserver/../../../gdb-8.1.1/gdb/gdbserver/../common/common-utils.c:419: undefined reference to `rpl_stat'
| collect2: error: ld returned 1 exit status
| make[4]: *** [Makefile:414: libinproctrace.so] Error 1

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agogdb: Upgrade to 8.1.1
Khem Raj [Mon, 20 Aug 2018 18:59:48 +0000 (11:59 -0700)]
gdb: Upgrade to 8.1.1

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agomesa: Enable gallium-llvm on x86 and x86_64
Khem Raj [Mon, 20 Aug 2018 18:59:47 +0000 (11:59 -0700)]
mesa: Enable gallium-llvm on x86 and x86_64

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agokernel.bbclass: rename type variable to imageType
Martin Jansa [Sun, 19 Aug 2018 22:16:03 +0000 (22:16 +0000)]
kernel.bbclass: rename type variable to imageType

* to avoid confusion with "type" command in shell

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agokernel-artifact-names.bbclass: Add 2 more variables to make it easier to change all...
Martin Jansa [Sun, 19 Aug 2018 22:16:02 +0000 (22:16 +0000)]
kernel-artifact-names.bbclass: Add 2 more variables to make it easier to change all names with one variable

* some people don't like the ${MACHINE} in the symlink, because now the DEPLOYDIR already
  contains ${MACHINE} subdirectory, add KERNEL_ARTIFACT_LINK_NAME variable to change it
  in one place without the need to list all variables for various artifacts

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agokernel-artifact-names.bbclass, kernel.bbclass: remove prefix and extension from MODUL...
Martin Jansa [Sun, 19 Aug 2018 22:16:01 +0000 (22:16 +0000)]
kernel-artifact-names.bbclass, kernel.bbclass: remove prefix and extension from MODULE_TARBALL_* variables

* for consistency with other artifacts variables, include only the version string, not the actual name or extension
* changing .tgz to something else in the MODULE_TARBALL_NAME variable only wouldn't make much sense
  because then kernel.bbclass still calls "tar -cvzf" to create it

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agokernel*.bbclass: rename *_SYMLINK_NAME variables to *_LINK_NAME and *_BASE_NAME to...
Martin Jansa [Sun, 19 Aug 2018 22:16:00 +0000 (22:16 +0000)]
kernel*.bbclass: rename *_SYMLINK_NAME variables to *_LINK_NAME and *_BASE_NAME to *_NAME

* for consistency with IMAGE_NAME and IMAGE_LINK_NAME
  and to avoid confusion with IMAGE_BASENAME (which is the
  actual name of the artifact, e.g. PN while KERNEL_IMAGE_BASE_NAME
  was only the version suffix)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agokernel-artifact-names, kernel-fitimage: add KERNEL_FIT_BASE_NAME, KERNEL_FIT_SYMLINK_...
Martin Jansa [Sun, 19 Aug 2018 22:15:59 +0000 (22:15 +0000)]
kernel-artifact-names, kernel-fitimage: add KERNEL_FIT_BASE_NAME, KERNEL_FIT_SYMLINK_NAME variables

* use the same naming scheme for fitImage files like all other deployed artifacts
* remove unnecessary cd to DEPLOYDIR
* remove unnecessary cd to B

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agobitbake.conf, kernel-artifact-names.bbclass: introduce IMAGE_VERSION_SUFFIX instead...
Martin Jansa [Sun, 19 Aug 2018 22:15:58 +0000 (22:15 +0000)]
bitbake.conf, kernel-artifact-names.bbclass: introduce IMAGE_VERSION_SUFFIX instead of using DATETIME directly

* this makes it easier to use different version string than DATETIME, e.g. set from jenkins job
  while keeping the suffix consistent across all artifacts stored in DEPLOYDIR

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agorootfs-postcommands: put image testdata under sstate control
André Draszik [Mon, 20 Aug 2018 08:15:09 +0000 (09:15 +0100)]
rootfs-postcommands: put image testdata under sstate control

The testdata.json is being written to DEPLOY_DIR_IMAGE directly,
thus bypassing sstate, which results in an ever growing list
of files.

Write them to IMGDEPLOYDIR instead, so as to benefit from the
automatic management via sstate.

Signed-off-by: André Draszik <andre.draszik@jci.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agoautoconf: update runtime perl module dependencies
Mikko Rapeli [Mon, 20 Aug 2018 15:21:19 +0000 (18:21 +0300)]
autoconf: update runtime perl module dependencies

Test in SDK was failing to execute:

$ autoreconf --install --force

due to missing perl modules. Add the needed perl modules
for target build:

perl-module-bytes
perl-module-thread-queue
perl-module-threads

Duplicate the perl module dependencies for SDK as well.

Now autoreconf runs with a trivial example.

Signed-off-by: Mikko Rapeli <mikko.rapeli@bmw.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agowic: bootimg-partition: Select a preferred type if multi kernel images are installed
Kevin Hao [Mon, 20 Aug 2018 10:42:25 +0000 (18:42 +0800)]
wic: bootimg-partition: Select a preferred type if multi kernel images are installed

Automatically select one kernel type image based on a predefined
precedence list if there are multi kernel images installed.

Signed-off-by: Kevin Hao <kexin.hao@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agowic: bootimg-partition: Add support to specify a custom extlinux.conf
Kevin Hao [Mon, 20 Aug 2018 10:42:24 +0000 (18:42 +0800)]
wic: bootimg-partition: Add support to specify a custom extlinux.conf

Add support to specify a custom extlinux.conf via something like:
    bootloader --configfile="extlinux.conf"

Signed-off-by: Kevin Hao <kexin.hao@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agoweston-init: run login before start weston.service
Wang Quanyang [Fri, 17 Aug 2018 15:01:37 +0000 (11:01 -0400)]
weston-init: run login before start weston.service

When systemd start the weston.service, the script "weston-start" will
check if the dir "XDG_RUNTIME_DIR" (usually is /run/user/0) exits and
create it. Then weston will create a socket file "wayland-0" for communications
with clients in this dir.

If systemd is built with enabling "pam" feature, the login will call "run-user-0.mount"
to mount tmpfs at the dir "/run/user/0", then the socket file "wayland-0" will be
missing since it is created in the old "/run/user/0".

So add "PAMName=login" to let weston.service call login first, once tmpfs is mounted at
"/run/user/0", then call weston-start to create a socket file in it.

Signed-off-by: Quanyang Wang <quanyang.wang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agounzip: fix CVE-2018-1000035
Changqing Li [Fri, 17 Aug 2018 02:02:13 +0000 (10:02 +0800)]
unzip: fix CVE-2018-1000035

Signed-off-by: Changqing Li <changqing.li@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agolibxml2: fix CVE-2018-9251 and CVE-2018-14567
Hongxu Jia [Fri, 17 Aug 2018 07:22:41 +0000 (15:22 +0800)]
libxml2: fix CVE-2018-9251 and CVE-2018-14567

Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agoexpat: upgrade 2.2.5 -> 2.2.6
Yi Zhao [Fri, 17 Aug 2018 07:37:21 +0000 (15:37 +0800)]
expat: upgrade 2.2.5 -> 2.2.6

Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agoopenssl: drop obsolete no-afalgeng workaround for aarch64
Andre McCurdy [Fri, 17 Aug 2018 04:43:37 +0000 (21:43 -0700)]
openssl: drop obsolete no-afalgeng workaround for aarch64

The aarch64 build issue in the afalg engine appears to have been
fixed upstream since openssl 1.1.0g:

  https://github.com/openssl/openssl/commit/a0c262644eab897b51faf1fa013008052c3754c2

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agoopenssl: fix path in nativesdk environment-setup script
Andre McCurdy [Fri, 17 Aug 2018 04:43:36 +0000 (21:43 -0700)]
openssl: fix path in nativesdk environment-setup script

A single version of the openssl.sh environment-setup script is
currently shared by both the openssl 1.0 and 1.1 recipes. The libdir
path in the script needs to be tweaked for openssl 1.1.

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agoopenssl: move the libdir openssl.cnf symlink into the openssl package
Andre McCurdy [Fri, 17 Aug 2018 04:43:35 +0000 (21:43 -0700)]
openssl: move the libdir openssl.cnf symlink into the openssl package

The openssl 1.0 recipe puts the libdir symlink to /etc/ssl/openssl.cnf
in the base openssl package (along with the libdir symlinks to
/etc/ssl/certs and /etc/ssl/private). Keep the openssl 1.1 recipe
aligned with that approach until there's a clear reason to do
something else. For more background, see comments in the following
thread:

  http://lists.openembedded.org/pipermail/openembedded-core/2017-April/135176.html

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agoopenssl: openssl-misc dependency on perl should be unconditional
Andre McCurdy [Fri, 17 Aug 2018 04:43:34 +0000 (21:43 -0700)]
openssl: openssl-misc dependency on perl should be unconditional

The openssl 1.1 recipe doesn't have a PACKAGECONFIG option for perl,
so the RDEPENDS for openssl-misc shouldn't be conditional on it.

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agoopenssl: minor reformatting to align the 1.0 and 1.1 recipes
Andre McCurdy [Fri, 17 Aug 2018 04:43:33 +0000 (21:43 -0700)]
openssl: minor reformatting to align the 1.0 and 1.1 recipes

Formatting and comment tweaks only, no functional changes.

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agoopenssl: update 32bit x86 target from linux-elf -> linux-x86
Andre McCurdy [Fri, 17 Aug 2018 04:43:32 +0000 (21:43 -0700)]
openssl: update 32bit x86 target from linux-elf -> linux-x86

According to comments in Configurations/10-main.conf, the linux-elf
target is "... to be used on older Linux machines where gcc doesn't
understand -m32 and -m64".

The linux-x86 target appears to be the newer replacement (currently
the only difference between the two is that linux-x86 adds -m32 to
cflags).

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agoopenssl: consolidate target name mapping rules
Andre McCurdy [Fri, 17 Aug 2018 04:43:31 +0000 (21:43 -0700)]
openssl: consolidate target name mapping rules

Merge duplicates + minor reformatting (no functional changes).

Note that the openssl 1.1 recipe still needs to be updated to handle
MIPS Release 6 ISA targets (e.g. linux-mipsisa32r6, etc).

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agopython3-git: update to version 2.1.11
Derek Straka [Fri, 17 Aug 2018 12:29:14 +0000 (08:29 -0400)]
python3-git: update to version 2.1.11

Update to the latest stable release

Signed-off-by: Derek Straka <derek@asterius.io>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agopython3-gitdb: update to version 2.0.4
Derek Straka [Fri, 17 Aug 2018 12:28:20 +0000 (08:28 -0400)]
python3-gitdb: update to version 2.0.4

Update to the latest stable release

Signed-off-by: Derek Straka <derek@asterius.io>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agopython3-pip: update to version 18.0
Derek Straka [Fri, 17 Aug 2018 12:25:42 +0000 (08:25 -0400)]
python3-pip: update to version 18.0

License-Update: Update checksum for copyright year changes

Update to the latest stable version

Signed-off-by: Derek Straka <derek@asterius.io>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agognutls: Update to 3.6.3
Armin Kuster [Fri, 17 Aug 2018 14:14:11 +0000 (07:14 -0700)]
gnutls: Update to 3.6.3

[v2]
Fix new config options form with to disable.

[v1]
release notes: https://lists.gnupg.org/pipermail/gnutls-devel/2018-July/008584.html

add ssl3 and tls1.3 config options now supported.

Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agolibidn2: Fix libunistring detection
Khem Raj [Sun, 19 Aug 2018 17:23:41 +0000 (10:23 -0700)]
libidn2: Fix libunistring detection

libunistring is one such library which many autotooled packages
mistake to use from build system if its installed on it. This
is specifically toxic when build host arch is same as target arch
since we only see the problem during runtime but thankfully OE
has build time QA which warns about it.

QA Issue: libidn2: The compile log indicates that host include and/or library paths were used.

Using --with-libunistring-prefix nudges the autoconf system for the
component to first look into target sysroot before going on to search
on the build host

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agobinutils: Update past 2.31.1 release
Khem Raj [Sun, 19 Aug 2018 17:23:39 +0000 (10:23 -0700)]
binutils: Update past 2.31.1 release

list of changes in this rev bump

a69de9c7cf ld-x86-64/pr23486b.d: Swap pr23486a.s and pr23486a.s
28a27bdbb9 x86: Properly add X86_ISA_1_NEEDED property
d692290444 x86: Replace evex-no-scale.s with evex-no-scale-[32|64].s
d55c3e3609 x86: Properly merge GNU_PROPERTY_X86_ISA_1_USED
381c1eb6ec x86: Update assembler tests for non-ELF targets
9b075c7167 x32: Align the .note.gnu.property section to 4 bytes
4aa5eb02fd __tls_get_addr_opt stubs and tocsave optimization
95fbde6791 Re: PowerPC64 __tls_get_addr_opt stub .eh_frame fix
079a6882b5 PowerPC64 __tls_get_addr_opt stub .eh_frame fix
1d8f56a971 Updated Bulgarian translation for the ld/ directory
b7991db94c Add --warn-drop-version option; by default, do not warn when discarding version info.
dbf924a63a Fix type checking errors.
60b3b24ca1 Fix spurious check-ld failures on aarch64-elf
feaed90494 [PATCH, LD, AArch64] Fix ifunc testisms
2069ccaf8d x86: don't mistakenly scale non-8-bit displacements
254ade2586 Fix unwind offset for call_info->start_symbol.
29153520a8 S/390: Set the htm flag on PPA
6737a6b34f x86: Add a GNU_PROPERTY_X86_ISA_1_USED note if needed
01683b308a x86: Split vcvtps2{,u}qq and vcvttps2{,u}qq
be8a252e18 Set the development flag back to true.
0860693812 (tag: binutils-2_31_1) Regenerate files and add changelog entries for 2.31.1 release
4afd6a72e3 Fix typo in src-release.sh script.  Update French translation for gold and Spanish translation for ld.

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agomesa: Define YOCTO_ALTERNATE_MULTILIB_NAME to consider multilib names
Khem Raj [Sun, 19 Aug 2018 17:23:38 +0000 (10:23 -0700)]
mesa: Define YOCTO_ALTERNATE_MULTILIB_NAME to consider multilib names

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agollvm: Use YOCTO_ALTERNATE_MULTILIB_NAME environment variable in llvm-config
Khem Raj [Sun, 19 Aug 2018 17:23:37 +0000 (10:23 -0700)]
llvm: Use YOCTO_ALTERNATE_MULTILIB_NAME environment variable in llvm-config

llvm-config is a tool on similar veins as pkg-config but provides a lot
more information and packages which use llvm e.g. mesa use this tool to
poke for llvm related informaiton e.g. version, libpath, includepaths
to name a few, this has few challanges in cross build environments where
llvm-config is supposed to be build for buildhost but provide information
about target llvm which is addressed by building native llvm-config along
with target llvm build, but this is frowned upon by OE build system since
it detects that host paths are being used so we have to build it as part
of llvm-native but then it means install paths for llvm and llvm-native
are different and wrong paths get reported when llvm-config is used.
This is solved by providing YOCTO_ALTERNATE_EXE_PATH variable to let
llvm-config use that path instead of self-relative path to report back

Second problem is when building multi-lib packages base_libdir is different
for target packages but native llvm-config does not know about it so
it reports non-multilibbed paths as libdir and packages can not find
llvm in sysroot. This is fixed by adding another environment variable
YOCTO_ALTERNATE_MULTILIB_NAME which can be set from recipes to set
proper multilib path

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agodos2unix.bbclass: Move to oe-core
Khem Raj [Sun, 19 Aug 2018 17:23:36 +0000 (10:23 -0700)]
dos2unix.bbclass: Move to oe-core

- Import from meta-oe layer

- This is useful for many packages where CR-LF
  needs to be adjusted, many recipes depend on it
  e.g. meta-multimedia libebml and so on.

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agollvm: Point llvm-config to one built with llvm-native
Khem Raj [Sun, 19 Aug 2018 17:23:35 +0000 (10:23 -0700)]
llvm: Point llvm-config to one built with llvm-native

If not defined, llvm build system tries to build one
which then confuses the OE QA system since its building
native tool and target packages in same package build
moreover it is not required since we already have it via
llvm-native

Fixes
ERROR: llvm-6.0-r0 do_package_qa: QA Issue: llvm: The compile log indicates that host include and/or library paths were used.

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agopowerpc: Remove pie flags from compiler cmdline
Khem Raj [Sun, 19 Aug 2018 17:23:34 +0000 (10:23 -0700)]
powerpc: Remove pie flags from compiler cmdline

Original approach to add -no-<pie> flags cause link time behavior changes
where packages start to lose the -fPIC -DPIC in compiler cmdline and this
list keeps growing as we build more and more packages,

Instead lets just remove the options we dont need from SECURITY_CFLAGS
this makes it more robust and less intrusive

This also means we do not need to re-add pic options as we started to do
for affected packages

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agokernel-devsrc: restructure for out of tree (and on target) module builds
Bruce Ashfield [Sun, 19 Aug 2018 02:50:44 +0000 (22:50 -0400)]
kernel-devsrc: restructure for out of tree (and on target) module builds

The existing kernel-devsrc package starts with a full copy of the kernel
source and then starts to strip out elements that are not required.

This results in extra time (I/O) and extra space being taken up in the
final package. The main purpose of the kernel-devsrc package has been to
build modules against the running kernel, not to include a full copy of
the source code for re-building the kernel. The end result was a
600M kernel-devsrc package.

This restructuring of the package uses an approach similar to other
distros, where the kernel-devsrc package is for building against the
running kernel and uses a curated set of copied infrastructure, versus
a mass copy of the entire kernel.

The differences in this approach versus other is largely due to the
architecture support and the split build/source directory of the
kernel.

The result is a kernel-devsrc package of about 10M, which is capable
of running "make scripts" and compiling kernel modules against the
running kernel.

Along with the changes to the copying of the infrascture, we also
have the following changes:

 - a better/more explicit listing of dependencies for on-target
   builds of "make scripts" or "make modules_prepare"

 - The kernel source is installed into /lib/modules/<version>/build
   and a symlink created from /usr/src/kernel to the new location.
   This aligns with the standard location for module support
   code

 - There is also a symlink from /lib/modules/<version>/source -> build
   to reserve a spot for a new package that is simply the kernel
   source. That package is not part of this update.

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agoopenssl: update 1.1.0h -> 1.1.0i
Andrej Valek [Thu, 16 Aug 2018 12:27:57 +0000 (14:27 +0200)]
openssl: update 1.1.0h -> 1.1.0i

Please see this security advisory:
https://www.openssl.org/news/secadv/20180612.txt

Remove obsolete patch.

Signed-off-by: Andrej Valek <andrej.valek@siemens.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agoopenssl: update 1.0.2o -> 1.0.2p
Andrej Valek [Thu, 16 Aug 2018 12:27:56 +0000 (14:27 +0200)]
openssl: update 1.0.2o -> 1.0.2p

Please see this security advisory:
https://www.openssl.org/news/secadv/20180612.txt

Refresh patches

Signed-off-by: Andrej Valek <andrej.valek@siemens.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agovala: refresh patch
Maxin B. John [Thu, 16 Aug 2018 10:41:30 +0000 (13:41 +0300)]
vala: refresh patch

Refresh the following patch:
"disable-graphviz.patch" to fix this warning:

Some of the context lines in patches were ignored. This can lead to
incorrectly applied patches.
The context lines in the patches can be updated with devtool:

    devtool modify <recipe>
    devtool finish --force-patch-refresh <recipe> <layer_path>

Then the updated patches and the source tree (in devtool's workspace)
should be reviewed to make sure the patches apply in the correct place
and don't introduce duplicate lines (which can, and does happen
when some of the context is ignored). Further information:
http://lists.openembedded.org/pipermail/openembedded-core/2018-March/148675.html
https://bugzilla.yoctoproject.org/show_bug.cgi?id=10450
Details:
        checking file configure.ac
        checking file libvaladoc/Makefile.am
        checking file libvaladoc/html/basicdoclet.vala
        checking file libvaladoc/html/htmlmarkupwriter.vala
        Hunk #1 succeeded at 51 with fuzz 1 (offset 8 lines).

Signed-off-by: Maxin B. John <maxin.john@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agoglibc: re-package for libnss-db
Chen Qi [Thu, 16 Aug 2018 10:37:58 +0000 (18:37 +0800)]
glibc: re-package for libnss-db

On other distros like ubuntu/centos, libnss-db usually provides:
- The libraries
- The Makefile to create database
  (in /var/db for centos, /var/lib/misc/ for ubuntu)
- The makedb command (it's in glibc-common for centos7)

What we had is:
- The libraries are in glibc-extra-nss
- The Makefile is removed
- The makedb command is in glibc-utils (lack of dependency)

So when glibc-extra-nss is installed but glibc-utils is not,
we see error like:
nscd[165]: 165 checking for monitored file `/var/db/group.db': No such file or directory
nscd[165]: 165 checking for monitored file `/var/db/passwd.db': No such file or directory

And there is not an easy way to create these databases.

To fix the issue:
- Re-package the libraries into libnss-db
- Don't remove the Makefile and add it in libnss-db
- Add RDEPENDS for libnss-db on glibc-utils
- Provide a shell script, makedbs.sh, to generate the db files.
  This is to avoid dependency on 'make'.

Notes:
1. For external toolchain, an extra package 'libnss-db' need to be provided
   If replacing glibc from core.
2. I've check the git history of nss/db-Makefile, the last two functionality
   fix is as below.
   - fix non-portable `echo -n` usage   --  Date:   Thu Aug 6 04:14:20 2015 -0400
   - Fix db makefile rule for group.db  --  Date:   Fri Nov 11 14:43:36 2011 +0100
   So I think this file is stable enough. And using makedbs.sh which is crafted according
   to that file is not likely to cause maintanence problem.

Signed-off-by: Jackie Huang <jackie.huang@windriver.com>
Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agoruntime selftest: limit kernel hw bp arches
Hongzhi.Song [Thu, 16 Aug 2018 07:38:48 +0000 (00:38 -0700)]
runtime selftest: limit kernel hw bp arches

1. So far, only qemux86[-64] support hw breakpoint, no matter whether or
not with kvm.

qemuppc: The oe-core configuration uses a PPC G4 system as the
default cpu but qemu doesn't simulate the hw breakpoint register for G4.

qemuarm: The arch more than v7 supports hw breakpoint, however arm use
v5 as default.

qemuarm64: We temporarily drop qemuarm64 for the moment. Normally it
will print debug info once, but endlessly when we trigger the break
point. Now it is hard to located the issue, but we will confirm it
later.

qemumips*: Kernel dosen't support hw bp for mips.

2. Syslog maybe not started, so we use dmesg to confirm.

3. Running 'ls' to trigger the hardware breakpoint test.

Signed-off-by: Hongzhi.Song <hongzhi.song@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agoruntime selftest: test_trace_events_sample of ksample.py
Hongzhi.Song [Thu, 16 Aug 2018 07:38:47 +0000 (00:38 -0700)]
runtime selftest: test_trace_events_sample of ksample.py

The debug info can not be written to trace buffer immediately
by thread. So we should sleep some seconds.

Signed-off-by: Hongzhi.Song <hongzhi.song@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agopython3: enable profile optimized builds
Anuj Mittal [Thu, 16 Aug 2018 06:26:33 +0000 (14:26 +0800)]
python3: enable profile optimized builds

Enable profile guided optimization (pgo) for python3. Enabling pgo in
python is generally as simple as invoking the target profile-opt which:

- builds python binaries with profile instrumentation enabled,
- runs a specific profile task using that python to get the profile
data and,
- feeds the compiler with this profile data and rebuilds python.

This change invokes qemu-user for the second step of running a profile
task using target python. Depending on how long profile task takes to
run, this might add a significant time to compilation (which would be
true for native builds too). The default profile task can be changed by
the users depending on what makes sense for their use case (or can be
left empty). In case qemu-user isn't supported, profile task won't be run.

Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agoqemu: Upgrade QEMU 2.12 -> 3.0
Alistair Francis [Wed, 15 Aug 2018 22:25:19 +0000 (15:25 -0700)]
qemu: Upgrade QEMU 2.12 -> 3.0

Signed-off-by: Alistair Francis <alistair.francis@wdc.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agopiglit: Upgrade to version from 2018-08-13
Khem Raj [Thu, 16 Aug 2018 04:21:11 +0000 (21:21 -0700)]
piglit: Upgrade to version from 2018-08-13

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agollvm: Update to 6.0.1
Khem Raj [Thu, 16 Aug 2018 04:12:00 +0000 (21:12 -0700)]
llvm: Update to 6.0.1

Drop upstreamed patch

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agolibvorbis: 3 CVE fixes
Joe Slater [Wed, 15 Aug 2018 23:13:26 +0000 (16:13 -0700)]
libvorbis: 3 CVE fixes

CVE-2017-14160, CVE-2018-10393 (same as 14160), and CVE-2018-10392.
These fixes should be in libvorbis 1.3.7.

Signed-off-by: Joe Slater <joe.slater@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agore2c: Update to 1.0.1
Khem Raj [Wed, 15 Aug 2018 21:51:50 +0000 (14:51 -0700)]
re2c: Update to 1.0.1

Drop upstreamed patch

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agompfr: Upgrade to 4.0.1
Khem Raj [Wed, 15 Aug 2018 21:51:49 +0000 (14:51 -0700)]
mpfr: Upgrade to 4.0.1

Drop patch present in 4.0.1 already
Depend on autoconf-archive to fix

| configure:14652: error: possibly undefined macro: AX_PTHREAD

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agosstate: Avoid indirect bison-native dependencies (via SSTATE_EXCLUDEDEPS_SYSROOT)
André Draszik [Tue, 22 May 2018 12:25:53 +0000 (13:25 +0100)]
sstate: Avoid indirect bison-native dependencies (via SSTATE_EXCLUDEDEPS_SYSROOT)

Avoid adding bison-native to the sysroot without a specific
dependency in the recipe. This means indirect dependencies
(e.g. X -> Y -> binutils-cross -> bison-native) no longer meet the
dependency incidentally. This improves determinism and avoids build
failures when people switch to external toolchains.

Based on an idea by Richard Purdie:
    http://lists.openembedded.org/pipermail/openembedded-core/2018-January/146324.html

Signed-off-by: André Draszik <andre.draszik@jci.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agoglibc-initial: Add missing bison-native dependency
Richard Purdie [Thu, 16 Aug 2018 09:06:51 +0000 (10:06 +0100)]
glibc-initial: Add missing bison-native dependency

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agoelfutils: check data_list.data.d.d_buf before free it
Robert Yang [Thu, 16 Aug 2018 02:38:22 +0000 (10:38 +0800)]
elfutils: check data_list.data.d.d_buf before free it

[YOCTO #12791]

The one which actually saves the data is data_list.data.d.d_buf, so check it
before free rawdata_base.

This can fix a segmentation fault when prelink libqb_1.0.3:
prelink: /usr/lib/libqb.so.0.18.2: Symbol section index outside of section numbers

The segmentation fault happens when prelink call elf_end().

Fixed:
MACHINE="qemux86-64"
IMAGE_INSTALL_append = " libqb" #libqp is from meta-openembedded
$ bitbake core-image-minimal
Segmention fault

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
6 years agoprelink: use ehdr.e_shstrndx as index rather than ehdr.e_shnum
Robert Yang [Thu, 16 Aug 2018 02:25:46 +0000 (10:25 +0800)]
prelink: use ehdr.e_shstrndx as index rather than ehdr.e_shnum

[YOCTO #12791]

According to struct elf32_hd, the e_shnum is section header number, and the
index is e_shstrndx, not e_shnum.

This can fix segmention fault when handle libqb.so.0.18.2 from libqb_1.0.3.
It fails to handle libqb.so.0.18.2 and get errors:
Symbol section index outside of section numbers

Then segmentation fault, this is because the e_shnum is 34, while e_shstrndx is
27 (it would be 33 when no errors), I've checked several elf files to confirm
that the ones after e_shstrndx is NULL, so use e_shstrndx should be correct.

Fixed:
MACHINE="qemux86-64"
IMAGE_INSTALL_append = " libqb" #libqp is from meta-openembedded
$ bitbake core-image-minimal
Segmention fault

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
6 years agobinutils: Improve check for input file matching output file
Robert Yang [Thu, 16 Aug 2018 02:54:39 +0000 (10:54 +0800)]
binutils: Improve check for input file matching output file

When the assembler reports that the input and output are the same, report the
file names involved, in order to help debugging.  Also do not equate two files
are the same if the have the same inode value but reside on different file
systems.

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
6 years agopopulate_sdk_base.bbclass: inherit and use image-postinst-intercepts
Christopher Larson [Fri, 27 Jul 2018 17:24:30 +0000 (22:24 +0500)]
populate_sdk_base.bbclass: inherit and use image-postinst-intercepts

Signed-off-by: Christopher Larson <chris_larson@mentor.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agoimage.bbclass: inherit and use image-postinst-intercepts
Christopher Larson [Fri, 27 Jul 2018 17:24:29 +0000 (22:24 +0500)]
image.bbclass: inherit and use image-postinst-intercepts

Signed-off-by: Christopher Larson <chris_larson@mentor.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agoimage-postinst-intercepts.bbclass: add class
Christopher Larson [Fri, 27 Jul 2018 17:24:28 +0000 (22:24 +0500)]
image-postinst-intercepts.bbclass: add class

This class sets POSTINST_INTERCEPTS and POSTINST_INTERCEPTS_CHECKSUMS,
to allow us to pull intercepts from BBPATH. This is kept as a separate
class, as it's needed by both image construction and sdk construction,
the latter to support meta-toolchain & similar recipes.

Signed-off-by: Christopher Larson <chris_larson@mentor.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agooe.package_manager: support loading intercepts from multiple paths
Christopher Larson [Fri, 27 Jul 2018 17:24:27 +0000 (22:24 +0500)]
oe.package_manager: support loading intercepts from multiple paths

- if POSTINST_INTERCEPTS is set, use the listed intercept files, or
- if POSTINST_INTERCEPTS_PATH is set, load from the listed paths, or
- if POSTINST_INTERCEPTS_DIR is set, load from it (for compatibility), or
- load from ${COREBASE}/meta/postinst-intercepts

Signed-off-by: Christopher Larson <chris_larson@mentor.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agoacpica: Add missing DEPENDS on bison-native
Richard Purdie [Wed, 15 Aug 2018 20:42:46 +0000 (21:42 +0100)]
acpica: Add missing DEPENDS on bison-native

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agosstate: Optimise SSTATE_EXCLUDEDEPS_SYSROOT handling
Richard Purdie [Wed, 15 Aug 2018 14:30:07 +0000 (14:30 +0000)]
sstate: Optimise SSTATE_EXCLUDEDEPS_SYSROOT handling

Using re.compile() is around six times faster than recompiling the regexp
each time so maintain a cache.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agosstate: use SSTATE_EXCLUDEDEPS_SYSROOT for skipping base-passwd|shadow-sysroot recipes
André Draszik [Tue, 22 May 2018 12:25:52 +0000 (13:25 +0100)]
sstate: use SSTATE_EXCLUDEDEPS_SYSROOT for skipping base-passwd|shadow-sysroot recipes

Use the newly introduced SSTATE_EXCLUDEDEPS_SYSROOT for specifying
the base-passwd|shadow-sysroot recipes to be excluded from a recipe sysroot.

Signed-off-by: André Draszik <andre.draszik@jci.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agosstate: use SSTATE_EXCLUDEDEPS_SYSROOT for skipping *-initial recipes
André Draszik [Tue, 22 May 2018 12:25:51 +0000 (13:25 +0100)]
sstate: use SSTATE_EXCLUDEDEPS_SYSROOT for skipping *-initial recipes

Use the newly introduced SSTATE_EXCLUDEDEPS_SYSROOT for specifying
the *-initial recipes to be excluded from a recipe sysroot.

Signed-off-by: André Draszik <andre.draszik@jci.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agosstate: allow specifying indirect dependencies to exclude from sysroot
André Draszik [Tue, 22 May 2018 12:25:50 +0000 (13:25 +0100)]
sstate: allow specifying indirect dependencies to exclude from sysroot

Currently, a dependency on any -native recipe will pull in
all dependencies of that -native recipe in the recipe
sysroot. This behaviour might not always be wanted, e.g.
when that -native recipe depends on build-tools that are
not relevant for the current recipe.

This change adds a SSTATE_EXCLUDEDEPS_SYSROOT variable,
which will be evaluated for such recursive dependencies to
be excluded. The idea is similar to
   http://lists.openembedded.org/pipermail/openembedded-core/2018-January/146324.html
except that the list is not hard-coded anymore.

SSTATE_EXCLUDEDEPS_SYSROOT is evaluated as two regular
expressions of recipe and dependency to ignore, e.g. in
the above flex-native / bison-native use-case, one would
specify

    SSTATE_EXCLUDEDEPS_SYSROOT = ".*->(flex|bison)-native"

in layer.conf.

The existing special handling of "-initial" as well as
"base-passwd" and "shadow-sysroot" could also be
streamlined:

    SSTATE_EXCLUDEDEPS_SYSROOT += "\
        .*->.*-initial.* \
        .*(base-passwd|shadow-sysroot)->.* \
    "

Another anticipated user is meta-java, where certain newer
JDKs can only be bootstrapped (built) using older JDKs,
but it doesn't make much sense to copy all those older
JDKs and their own build tools (ant, etc.) into the
sysroot of recipes wanting to be built using the newer JDK
(only), e.g.:

    SSTATE_EXCLUDEDEPS_SYSROOT += "\
        openjdk-8-native->(ant-native|attr-native|coreutils-native|icedtea7-native|libxslt-native|make-native|openssl-native|zip-native|unzip-native) \
    "

Signed-off-by: André Draszik <andre.draszik@jci.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agosecurity_flags: Add PIC to cflags for some recipes on ppc
Khem Raj [Wed, 15 Aug 2018 01:40:05 +0000 (18:40 -0700)]
security_flags: Add PIC to cflags for some recipes on ppc

Fixes issues related out of range R_PPC_REL24
e.g.
/usr/lib/xorg/modules/input/libinput_drv.so: /usr/lib/libinput.so.10: R_PPC_REL24 relocation at 0x0e8602c4 for symbol `libevdev_has_event_code' out of range

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agolibdrm: Upgrade to 2.4.93
Khem Raj [Wed, 15 Aug 2018 01:40:04 +0000 (18:40 -0700)]
libdrm: Upgrade to 2.4.93

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agoopenssl-1.1: /etc/ssl location compatibility
Andrej Valek [Tue, 17 Jul 2018 09:10:35 +0000 (11:10 +0200)]
openssl-1.1: /etc/ssl location compatibility

Some packages have hard-coded path to /etc/ssl location.
Create a symlinks to correct location.

Signed-off-by: Andrej Valek <andrej.valek@siemens.com>
Signed-off-by: Marko Peter <peter.marko@siemens.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agoopenssl-1.1: rework packaging
Andrej Valek [Tue, 17 Jul 2018 09:10:34 +0000 (11:10 +0200)]
openssl-1.1: rework packaging

The main idea is to have libssl and libcrypto in separate packages.
This saves space if only single library is needed and also some recipes
(in other layers) depend on these library packages.
Together with this other packages like in 1.0.x were created.
The only difference is that openssl 1.1 has additional package openssl-bin.

Add missing dependency to perl for openssl-bin pkg, c_rehash requires it.

Signed-off-by: Andrej Valek <andrej.valek@siemens.com>
Signed-off-by: Marko Peter <peter.marko@siemens.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agoopenssl-1.1: fix c_rehash perl errors
Andrej Valek [Tue, 17 Jul 2018 09:10:33 +0000 (11:10 +0200)]
openssl-1.1: fix c_rehash perl errors

Patch original c_rehash script with Debian patch instead
of overriding it with own version.

Error output from c_reshah without patching:
  Unknown regexp modifier "/b" at ./c_rehash line 15, at end of line
  Unknown regexp modifier "/W" at ./c_rehash line 28, at end of line
  Unknown regexp modifier "/3" at ./c_rehash line 28, at end of line
  Unknown regexp modifier "/2" at ./c_rehash line 28, at end of line
  No such class installdir at ./c_rehash line 63, near "Prefix our
  installdir"
    (Might be a runaway multi-line // string starting on line 28)
  syntax error at ./c_rehash line 63, near "Prefix our installdir"
  Can't redeclare "my" in "my" at ./c_rehash line 68, near ""
  Execution of ./c_rehash aborted due to compilation errors.

Signed-off-by: Andrej Valek <andrej.valek@siemens.com>
Signed-off-by: Marko Peter <peter.marko@siemens.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agocve-check.bbclass: do not download the CVE DB in package-specific tasks
Konstantin Shemyak [Mon, 13 Aug 2018 07:23:28 +0000 (10:23 +0300)]
cve-check.bbclass: do not download the CVE DB in package-specific tasks

Disable downloading of the vulnerability DB in do_check_cves() task.

When invoked in this task, cve-check-tool attempts re-download of the CVE DB
if the latter is older than certain threshold. While reasonable for a
stand-alone CVE checker, this behavior can cause errors in parallel builds
if the build time is longer than this threshold:
* Other tasks might be using the DB.
* Several packages can start the download of the same file at the same time.

This check is not really needed, as the DB has been downloaded by
cve_check_tool:do_populate_cve_db() which is a prerequisite of any do_build().
The DB will be at most (threshold + build_time) old.

Signed-off-by: Konstantin Shemyak <konstantin.shemyak@ge.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agoimage: Use ${COREBASE}/meta for timestamp, fallback to bitbake.conf
Alex Kiernan [Fri, 20 Jul 2018 04:33:17 +0000 (04:33 +0000)]
image: Use ${COREBASE}/meta for timestamp, fallback to bitbake.conf

To handle the case where ${COREBASE} isn't the git directory, avoid
erroring out when the git command fails. If we don't have a timestamp
after this, fall back to the timestamp from conf/bitbake.conf.

Signed-off-by: Alex Kiernan <alex.kiernan@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agopackage.bbclass: improve -dbg and -src package ordering
Rasmus Villemoes [Wed, 11 Jul 2018 11:38:56 +0000 (13:38 +0200)]
package.bbclass: improve -dbg and -src package ordering

nativesdk-gpgme fails package_qa when setting PACKAGE_DEBUG_SPLIT_STYLE
= "debug-with-srcpkg".

ERROR: nativesdk-gpgme-1.10.0-r0 do_package_qa: QA Issue: non debug package contains .debug directory: nativesdk-python3-gpg path /work/x86_64-nativesdk-oesdk-linux/nativesdk-gpgme/1.10.0-r0/packages-split/nativesdk-python3-gpg/usr/local/oecore-x86_64/sysroots/x86_64-oesdk-linux/usr/lib/python3.5/site-packages/gpg/.debug/_gpgme.cpython-35m-x86_64-linux-gnu.so [debug-files]

This turns out to be because the automatic moving of the -dbg package to
the beginning of the package list is disabled in that case, so the
python3-gpg packages that the recipe prepends to PACKAGES ends up before
the -dbg package.

It's not clear why the "and not split_source_package" was added when
debug-with-srcpkg was introduced. Presumably the intention was to
prevent the -dbg package to end up before the -src package, which we of
course need to. But at the same time, we still need -dbg packages to end
up before all other packages.

Using list.insert(0, ...) also means that if there happens to more than
one -dbg package, their relative ordering gets inverted in the new list.

This tries to fix these issues by sorting the packages by (priority,
original position), where priority is 10 for -src, 30 for -dbg and 50
for everything else. That guarantees that packages of the same "type"
preserve their relative ordering, while also ensuring that -dbg always
preceed other packages. This scheme is also quite extensible, and,
should the need arise, one could even expose the priorities as a knob
the recipe author could use to ensure specific orderings of packages
instead of the somewhat fragile and coarse-grained method of "prepend or
append, and ensure you do that in a proper order".

Probably the autodebug condition needs to stay, but I think the
split_source_package condition in the preceding elif should be removed,
so that that logic applies to all packages called -src, not just the one
we might have created a few lines above.

Signed-off-by: Rasmus Villemoes <rasmus.villemoes@prevas.dk>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agoweston: add dependency on virtual/libgbm for kms PACKAGECONFIG
Martin Jansa [Tue, 14 Aug 2018 10:53:11 +0000 (10:53 +0000)]
weston: add dependency on virtual/libgbm for kms PACKAGECONFIG

* gbm is checked in configure.ac:

AC_ARG_ENABLE(drm-compositor, [  --enable-drm-compositor],,
              enable_drm_compositor=yes)
AM_CONDITIONAL(ENABLE_DRM_COMPOSITOR, test x$enable_drm_compositor = xyes)
if test x$enable_drm_compositor = xyes; then
  AC_DEFINE([BUILD_DRM_COMPOSITOR], [1], [Build the DRM compositor])
  PKG_CHECK_MODULES(DRM_COMPOSITOR, [libudev >= 136 libdrm >= 2.4.30 gbm mtdev >= 1.1.0])
  PKG_CHECK_MODULES(DRM_COMPOSITOR_GBM, [gbm >= 10.2],
                    [AC_DEFINE([HAVE_GBM_FD_IMPORT], 1, [gbm supports dmabuf import])],
                    [AC_MSG_WARN([gbm does not support dmabuf import, will omit that capability])])
fi

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agoswig: fix gcc8 warnings for cast between incompatible function types
Yi Zhao [Wed, 15 Aug 2018 05:20:36 +0000 (13:20 +0800)]
swig: fix gcc8 warnings for cast between incompatible function types

We got an error when building setools in meta-selinux:
setools/policyrep/qpol_wrap.c:1819:23:
error: cast between incompatible function types from 'PyObject * (*)(PyObject *)'
{aka 'struct _object * (*)(struct _object *)'} to 'PyObject * (*)(PyObject *, PyObject *)'
{aka 'struct _object * (*)(struct _object *, struct _object *)'} [-Werror=cast-function-type]
{(char *)"disown", (PyCFunction)SwigPyObject_disown, METH_NOARGS, (char *)"releases ownership of the pointer"},

This is a swig issue. See: https://github.com/swig/swig/issues/1259
Backport a patch from upstream to fix it.

Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agowic: bootimg-partition: Add support to create the u-boot boot config file
Kevin Hao [Tue, 14 Aug 2018 01:31:24 +0000 (09:31 +0800)]
wic: bootimg-partition: Add support to create the u-boot boot config file

By leveraging the distro boot command feature in the u-boot, we can
compose the corresponding extlinux.conf when creating the wic image,
and let u-boot boot the kernel automatically. For more detail about
the u-boot distro boot command feature, please see doc/README.distro
in u-boot source files.

Signed-off-by: Kevin Hao <kexin.hao@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agowic: bootimg-partition: Add do_configure_partition() method
Kevin Hao [Tue, 14 Aug 2018 01:31:23 +0000 (09:31 +0800)]
wic: bootimg-partition: Add do_configure_partition() method

We want to add some u-boot specific config file. Before doing this,
we need know what files will be installed into this partition. So
move the codes about parsing the IMAGE_BOOT_FILES into
do_configure_partition(). No function change.

Signed-off-by: Kevin Hao <kexin.hao@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agowic: bootimg-partition: Use the relative path in the install_task
Kevin Hao [Tue, 14 Aug 2018 01:31:22 +0000 (09:31 +0800)]
wic: bootimg-partition: Use the relative path in the install_task

Signed-off-by: Kevin Hao <kexin.hao@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agowic: Remove the unused variable Partition.sourceparams_dict
Kevin Hao [Tue, 14 Aug 2018 01:31:21 +0000 (09:31 +0800)]
wic: Remove the unused variable Partition.sourceparams_dict

We choose to pass the source parameters to the source plugins' hooks
via a local variable srcparams_dict. So the Partition.sourceparams_dict
is not used by anyone and seems pretty confused. So drop it.

Signed-off-by: Kevin Hao <kexin.hao@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agopackage_manager: Add definitions for riscv machines
Richard Purdie [Wed, 15 Aug 2018 08:34:55 +0000 (09:34 +0100)]
package_manager: Add definitions for riscv machines

Add definitions to the locale table for riscv architecture.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agosystemd: fixes for the compatibility interface
Andrej Valek [Tue, 14 Aug 2018 10:21:19 +0000 (12:21 +0200)]
systemd: fixes for the compatibility interface

Use a heap allocated string to set arg_ifname, since a stack allocated
one would be lost after the function returns. (This last one broke the
case where an interface name was suffixed with a dot, such as in
`resolvconf -a tap0.dhcp`.)

Signed-off-by: Andrej Valek <andrej.valek@siemens.com>
Signed-off-by: Simon Ausserlechner <simon.ausserlechner@siemens.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agolinux-firmware: package Marvel usb 8997 firmware
Joshua Watt [Tue, 14 Aug 2018 20:01:51 +0000 (15:01 -0500)]
linux-firmware: package Marvel usb 8997 firmware

Add package for the firmware required by the Marvell 8997 chipset when
connected over USB.

Signed-off-by: Joshua Watt <JPEWhacker@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agolibunwind: Fix build with musl+security flags
Khem Raj [Tue, 14 Aug 2018 19:21:34 +0000 (12:21 -0700)]
libunwind: Fix build with musl+security flags

Fixes
src/os-linux.c:63: undefined reference to `__stack_chk_fail_local'

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agomeson: Support building allarch recipes again
Peter Kjellerstedt [Tue, 14 Aug 2018 19:06:24 +0000 (21:06 +0200)]
meson: Support building allarch recipes again

This registers "allarch" as a known CPU family.

Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agomeson: Split validate-cpu.patch in three
Peter Kjellerstedt [Tue, 14 Aug 2018 19:06:23 +0000 (21:06 +0200)]
meson: Split validate-cpu.patch in three

This makes it more suitable to work with, e.g., devtool. It also
prepares for the update to 0.47.0 when the first patch will no longer be
needed (as it is a backport).

Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agoeglinfo: Fix build with raspberrypi with userland graphics driver
Khem Raj [Tue, 14 Aug 2018 16:32:43 +0000 (09:32 -0700)]
eglinfo: Fix build with raspberrypi with userland graphics driver

Let pkgconfig figure out headers and libraries instead of manually
forcing waf to do it.

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agomusl: Fix dirent struct alignment issue seen on armv5te
Khem Raj [Tue, 14 Aug 2018 16:32:42 +0000 (09:32 -0700)]
musl: Fix dirent struct alignment issue seen on armv5te

- its a general problem however observed on armv5te based boards in OE
  other arches either have ways to compensate for misaligned access in hardware
  or compiler does not use 8byte alignment

- fix internal linux headers

Full logs
https://git.musl-libc.org/cgit/musl/log/?qt=range&q=9cad27a3dc1a4eb349b6591e4dc8cc89dce32277..1ad8138819ced49851e618c9c063aa0ffc86718c

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agorunqemu: exit gracefully with an error message if qemu system is not evaluated
Jagadeesh Krishnanjanappa [Tue, 14 Aug 2018 14:35:29 +0000 (20:05 +0530)]
runqemu: exit gracefully with an error message if qemu system is not evaluated

It solves below error:
-- snip --
return 'qemu-system-%s' % qbsys
UnboundLocalError: local variable 'qbsys' referenced before assignment
-- snip --

[YOCTO #12846]

Signed-off-by: Jagadeesh Krishnanjanappa <jkrishnanjanappa@mvista.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agopcmciautils: remove from oe-core
Ross Burton [Tue, 14 Aug 2018 13:09:28 +0000 (14:09 +0100)]
pcmciautils: remove from oe-core

PCMCIA is pretty rare these days, so now that the recipe is in meta-oe we can
remove it from oe-core.

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agomesa: Disble TLS for musl
Khem Raj [Tue, 14 Aug 2018 18:34:40 +0000 (11:34 -0700)]
mesa: Disble TLS for musl

See https://bugs.freedesktop.org/show_bug.cgi?id=35268
mesa should infact stop using __attribute__((tls_model("initial-exec")))
until then we disale TLS in glx for musl
The problem could happen even on glibc if static TLS sizes are large enough
which would mean that additional space the glibc leaves for such rogue libraries
get consumed and then same problems show up there as well

Fixes errors seen in xorg logs e.g.

(EE) Failed to load /usr/lib/xorg/modules/extensions/libglx.so: Error relocating /usr/lib/libGL.so.1: _ITM_deregisterTMCloneTable: initial-exec TLS resolves to dynamic definition in /usr/lib/libGL.so.1

enable readonly text segment on x86 for musl

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6 years agoselftest/package: Improve test to cover sparseness and hardlinking from sstate
Richard Purdie [Tue, 14 Aug 2018 17:24:14 +0000 (17:24 +0000)]
selftest/package: Improve test to cover sparseness and hardlinking from sstate

The sparseness test was sometimes working and sometimes failing depending
on whether sstate was valid. This adds an explict test of sstate
to the test for both hardlinking and sparseness. Tweak the test name to
cover the fact its tests sparseness too.

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