]> git.ipfire.org Git - thirdparty/openembedded/openembedded-core.git/log
thirdparty/openembedded/openembedded-core.git
2 years agogobject-introspection: reduce dependencies
Petr Kubizňák [Mon, 3 Apr 2023 11:06:41 +0000 (13:06 +0200)] 
gobject-introspection: reduce dependencies

When GI_DATA_ENABLED is 'False' (e.g. because
'gobject-introspection-data' is not in DISTRO_FEATURES),
gobject-introspection, gobject-introspection-native and qemu-native
should not be added to DEPENDS. This is to reduce dependency chain
when g-i is disabled.

Signed-off-by: Petr Kubizňák <kubiznak@2n.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
2 years agou-boot: Upgrade to 2023.04
Fabio Estevam [Mon, 3 Apr 2023 20:50:00 +0000 (17:50 -0300)] 
u-boot: Upgrade to 2023.04

Upgrade to U-Boot 2023.04.

Remove the patch that is now upstream.

Signed-off-by: Fabio Estevam <festevam@denx.de>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
2 years agoffmpeg: update 5.1.2 -> 6.0
Alexander Kanavin [Fri, 31 Mar 2023 05:26:30 +0000 (07:26 +0200)] 
ffmpeg: update 5.1.2 -> 6.0

Add a patch to gstreamer1.0-libav to address an API compatibility fail.

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
2 years agocve-exclusions: Document some further linux-yocto CVE statuses
Richard Purdie [Fri, 7 Apr 2023 14:23:27 +0000 (15:23 +0100)] 
cve-exclusions: Document some further linux-yocto CVE statuses

Add some information about some further kernel CVEs which don't apply for
either linux-yocto or don't apply for linux-yocto 6.1.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2 years agocve-extra-exclusion: ignore disputed CVE-2023-23005
Yoann Congal [Thu, 6 Apr 2023 14:19:23 +0000 (16:19 +0200)] 
cve-extra-exclusion: ignore disputed CVE-2023-23005

Signed-off-by: Yoann Congal <yoann.congal@smile.fr>
Reviewed-by: Frank WOLFF <frank.wolff@smile.fr>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2 years agocve-exclusions_6.1: ignore patched CVE-2022-38457 & CVE-2022-40133
Yoann Congal [Thu, 6 Apr 2023 14:19:22 +0000 (16:19 +0200)] 
cve-exclusions_6.1: ignore patched CVE-2022-38457 & CVE-2022-40133

Ignore CVE-2022-38457 & CVE-2022-40133 as they looks patched in our 6.1
branch.

I've asked the NVD to add the commit as the patch for these CVEs, but in
the meantime, other sources seem to agree that the commit fixes these
CVEs (and I concur).

Signed-off-by: Yoann Congal <yoann.congal@smile.fr>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2 years agobuild-appliance-image: Update to master head revision
Richard Purdie [Thu, 6 Apr 2023 13:35:58 +0000 (14:35 +0100)] 
build-appliance-image: Update to master head revision

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2 years agocve-extra-exclusions: ignore inapplicable linux-yocto CVEs
Yoann Congal [Thu, 6 Apr 2023 09:11:08 +0000 (11:11 +0200)] 
cve-extra-exclusions: ignore inapplicable linux-yocto CVEs

CVEs CVE-2023-0179, CVE-2023-1079 and CVE-2023-1513 are patched in our
kernels but appear as active because the NVD database is not up to date.

Signed-off-by: Yoann Congal <yoann.congal@smile.fr>
Reviewed-by: Frank WOLFF <frank.wolff@smile.fr>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2 years agocpio: Fix wrong CRC with ASCII CRC for large files
Marek Vasut [Wed, 5 Apr 2023 21:33:58 +0000 (23:33 +0200)] 
cpio: Fix wrong CRC with ASCII CRC for large files

Due to signedness, the checksum is not computed when filesize is bigger
a 2GB. Pick a fix for this problem from CPIO ML, where the fix has been
posted for 5 years. Since CPIO upstream is effectively unresponsive and
any and all attempts to communicate with the maintainer and get the fix
applied upstream failed, add the fix here instead.

Signed-off-by: Marek Vasut <marex@denx.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2 years agooeqa ping.py: fail test if target IP address has not been set
Mikko Rapeli [Wed, 5 Apr 2023 09:08:48 +0000 (12:08 +0300)] 
oeqa ping.py: fail test if target IP address has not been set

It is possible to call exported tests with --target-ip set to ":22"
where IP address is not set at all. Detect this case and fail the test
instead of calling ping without an IP address.

Signed-off-by: Mikko Rapeli <mikko.rapeli@linaro.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2 years agooeqa ping.py: avoid busylooping failing ping command
Mikko Rapeli [Wed, 5 Apr 2023 09:08:31 +0000 (12:08 +0300)] 
oeqa ping.py: avoid busylooping failing ping command

Use a sleep on error path before trying again. For example
when oeqa runtime tests are executed without setting target
IP address correctly, the tests are drowning logs with messages:

2023-04-04 07:19:24,985 - runtime - INFO - test_ping (ping.PingTest.test_ping)
ping: usage error: Destination address required
ping: usage error: Destination address required
ping: usage error: Destination address required
ping: usage error: Destination address required
ping: usage error: Destination address required
ping: usage error: Destination address required
ping: usage error: Destination address required
ping: usage error: Destination address required
ping: usage error: Destination address required
ping: usage error: Destination address required
ping: usage error: Destination address required
ping: usage error: Destination address required
...
2023-04-04 07:19:55,002 - runtime - INFO -  ... FAIL
2023-04-04 07:19:55,002 - runtime - INFO - Traceback (most recent call
last):
  File \"/lava-62618/3/tests/3_oeqa-runtime-tests/image/lib/oeqa/runtime/cases/ping.py\", line 23, in test_ping
    output += proc.communicate()[0].decode('utf-8')
              ^^^^^^^^^^^^^^^^^^
  File \"/usr/lib/python3.11/subprocess.py\", line 1194, in communicate
    stdout = self.stdout.read()
             ^^^^^^^^^^^^^^^^^^
  File \"/lava-62618/3/tests/3_oeqa-runtime-tests/image/lib/oeqa/core/decorator/oetimeout.py\", line 18, in _timeoutHandler
    raise OEQATimeoutError(\"Timed out after %s \"
oeqa.core.exception.OEQATimeoutError: Timed out after 30 seconds of execution

Signed-off-by: Mikko Rapeli <mikko.rapeli@linaro.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2 years agodevicetree.bbclass: fix typo
Luca Ceresoli [Wed, 5 Apr 2023 14:48:48 +0000 (16:48 +0200)] 
devicetree.bbclass: fix typo

Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2 years agogrep: upgrade 3.9 -> 3.10
Denys Dmytriyenko [Wed, 5 Apr 2023 15:44:09 +0000 (15:44 +0000)] 
grep: upgrade 3.9 -> 3.10

This is to announce grep-3.10, a stable release,
fixing a bug with -P and \d. TL;DR, grep-3.9 would do this:

  $ LC_ALL=en_US.UTF-8 grep -P '\d' <<< ٠١٢٣٤٥٦٧٨٩
  ٠١٢٣٤٥٦٧٨٩

It should print nothing, like it has always done.
For more detail, see https://lists.gnu.org/r/bug-grep/2023-03/msg00005.html

Thanks to Paul Eggert for catching the \D variant and to Bruno Haible
for assiduously tending gnulib and for testing grep on so many
different systems.

There have been 12 commits by 2 people in the 17 days since 3.9.

Signed-off-by: Denys Dmytriyenko <denis@denix.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2 years agoxz: upgrade 5.4.1 -> 5.4.2
Denys Dmytriyenko [Wed, 5 Apr 2023 15:44:08 +0000 (15:44 +0000)] 
xz: upgrade 5.4.1 -> 5.4.2

COPYING files had 2 updates w/o affecting licensing:
* URLs to gnu.org and fsf.org switched to https
* Clarifying licensing of liblzma Doxygen-generated docs - details below

5.4.2 (2023-03-18)
    * All fixes from 5.2.11 that were not included in 5.4.1.
    * If xz is built with support for the Capsicum sandbox but running
      in an environment that doesn't support Capsicum, xz now runs
      normally without sandboxing instead of exiting with an error.
    * liblzma:
        - Documentation was updated to improve the style, consistency,
          and completeness of the liblzma API headers.
        - The Doxygen-generated HTML documentation for the liblzma API
          header files is now included in the source release and is
          installed as part of "make install". All JavaScript is
          removed to simplify license compliance and to reduce the
          install size.
        - Fixed a minor bug in lzma_str_from_filters() that produced
          too many filters in the output string instead of reporting
          an error if the input array had more than four filters. This
          bug did not affect xz.
    * Build systems:
        - autogen.sh now invokes the doxygen tool via the new wrapper
          script doxygen/update-doxygen, unless the command line option
          --no-doxygen is used.
        - Added microlzma_encoder.c and microlzma_decoder.c to the
          VS project files for Windows and to the CMake build. These
          should have been included in 5.3.2alpha.
    * Tests:
        - Added a test to the CMake build that was forgotten in the
          previous release.
        - Added and refactored a few tests.
    * Translations:
        - Updated the Brazilian Portuguese translation.
        - Added Brazilian Portuguese man page translation.

Signed-off-by: Denys Dmytriyenko <denis@denix.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2 years agoselftest: efibootpartition.py: fix QEMU_USE_KVM usage
Martin Jansa [Wed, 5 Apr 2023 15:37:07 +0000 (17:37 +0200)] 
selftest: efibootpartition.py: fix QEMU_USE_KVM usage

* if you don't have QEMU_USE_KVM in local.conf it fails with:

  2023-03-12 18:06:29,591 - oe-selftest - DEBUG - Checking if qemux86-64 is not this MACHINE
  2023-03-12 18:06:29,594 - oe-selftest - INFO -  ... ERROR
  2023-03-12 18:06:29,594 - oe-selftest - INFO - Traceback (most recent call last):
    File "/OE/build/poky/meta/lib/oeqa/core/decorator/__init__.py", line 35, in wrapped_f
      return func(*args, **kwargs)
             ^^^^^^^^^^^^^^^^^^^^^
    File "/OE/build/poky/meta/lib/oeqa/selftest/cases/efibootpartition.py", line 18, in test_boot_efi
      if oe.types.qemu_use_kvm(self.td['QEMU_USE_KVM'], self.td["TARGET_ARCH"]):
                               ~~~~~~~^^^^^^^^^^^^^^^^
  KeyError: 'QEMU_USE_KVM'

[YOCTO #12937]

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2 years agopython3-bcrypt-crates.inc: regenerate with updated bbclass
Martin Jansa [Thu, 6 Apr 2023 12:18:54 +0000 (14:18 +0200)] 
python3-bcrypt-crates.inc: regenerate with updated bbclass

* it's needed for compatibility with updated fetcher from:
  https://patchwork.yoctoproject.org/project/bitbake/patch/20230405122125.3358972-1-enrico.scholz@sigma-chemnitz.de/

* easiest way to regenerate these is:
  echo > meta/recipes-devtools/python/python3-bcrypt-crates.inc
  bitbake -c update_crates python3-bcrypt
  git commit

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2 years agopython3-cryptography-crates.inc: regenerate with updated bbclass
Martin Jansa [Thu, 6 Apr 2023 12:18:53 +0000 (14:18 +0200)] 
python3-cryptography-crates.inc: regenerate with updated bbclass

* it's needed for compatibility with updated fetcher from:
  https://patchwork.yoctoproject.org/project/bitbake/patch/20230405122125.3358972-1-enrico.scholz@sigma-chemnitz.de/

* easiest way to regenerate these is:
  echo > meta/recipes-devtools/python/python3-cryptography-crates.inc
  bitbake -c update_crates python3-cryptography
  git commit

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2 years agocargo-update-recipe-crates.bbclass: Do not add name= to crate:// URIs
Peter Kjellerstedt [Thu, 6 Apr 2023 12:57:22 +0000 (14:57 +0200)] 
cargo-update-recipe-crates.bbclass: Do not add name= to crate:// URIs

With the recent change to the crate fetcher, which automatically sets
the name to for each crate to be versioned, there is no longer a need to
explicitly set the name= parameter for each URI. This also results in
generated files that are compatible with the crate fetcher in Kirkstone
and Langdale.

Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2 years agobuild-appliance-image: Update to master head revision
Richard Purdie [Wed, 5 Apr 2023 16:42:49 +0000 (17:42 +0100)] 
build-appliance-image: Update to master head revision

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2 years agobuild-appliance-image: Update to master head revision
Richard Purdie [Wed, 5 Apr 2023 16:28:48 +0000 (17:28 +0100)] 
build-appliance-image: Update to master head revision

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2 years agobusybox: move hwclock init earlier in startup
Chris Elledge [Fri, 31 Mar 2023 20:44:09 +0000 (16:44 -0400)] 
busybox: move hwclock init earlier in startup

hwclock.sh had default update-rc parameters which made it run after
other tasks that work with the clock such as connman. This causes a
time obtained by NTP to be clobbered by a potentially incorrect time
in the RTC.

Provide non-default INITSCRIPT_PARAMS to have hwclock.sh run during
the rc startup before runlevel initscripts start.

Signed-off-by: Chris Elledge <celledge@siteworx.io>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2 years agooeqa/selftest/bblogging: uncomment python stdout checks
Mark Asselstine [Tue, 4 Apr 2023 19:27:31 +0000 (15:27 -0400)] 
oeqa/selftest/bblogging: uncomment python stdout checks

Since bitbake commit 81a58647b2f4fc0a2589b2978fc9d81b2bfe6aec
[bitbake: build: Make python output print to stdout when running with
-v (verbose)] we no longer need to comment out the python stdout
checks.

Signed-off-by: Mark Asselstine <mark.asselstine@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2 years agoqemu: rename deprecated --enable-trace-backend configure option
Thomas De Schampheleire [Tue, 4 Apr 2023 18:34:05 +0000 (20:34 +0200)] 
qemu: rename deprecated --enable-trace-backend configure option

qemu 6.2 deprecated the configure option '--enable-trace-backend' in favor
of '--enable-trace-backends' [1]

Rename accordingly.

[1] https://wiki.qemu.org/ChangeLog/6.2#Build_Information

Signed-off-by: Thomas De Schampheleire <thomas.de_schampheleire@nokia.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2 years agoqemu: retain default trace backend if 'ust' is not enabled
Thomas De Schampheleire [Tue, 4 Apr 2023 18:34:04 +0000 (20:34 +0200)] 
qemu: retain default trace backend if 'ust' is not enabled

The qemu build system enables the 'log' trace backend by default, if no
explicit choice was made with '--enable-trace-backend=CHOICE'.

However, the qemu recipe uses the following PACKAGECONFIG line:
    PACKAGECONFIG[ust] = "--enable-trace-backend=ust,--enable-trace-backend=nop,lttng-ust,"

which means that the 'nop' trace backend will be explicitly selected if the
'ust' feature is not enabled. The 'nop' backend removes almost all trace
points at compile time, and thus basically means 'disable tracing'.

To retain the default trace backend if 'ust' is not enabled, the above
PACKAGECONFIG line should either explicitly fall back to the 'log' backend,
or not provide any value for the 'disabled' case. This commit chooses the
latter to not make any assumption about the upstream default.

Signed-off-by: Thomas De Schampheleire <thomas.de_schampheleire@nokia.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2 years agoqemu: make tracetool-generated output reproducible
Thomas De Schampheleire [Tue, 4 Apr 2023 18:34:03 +0000 (20:34 +0200)] 
qemu: make tracetool-generated output reproducible

'#line' directives written by qemu's tracetool makes the 'debug' package not
reproducible due to absolute paths. Apply a patch to use a relative path
instead.

Signed-off-by: Thomas De Schampheleire <thomas.de_schampheleire@nokia.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2 years agocve-extra-exclusions: ignore inapplicable linux-yocto CVEs
Geoffrey GIRY [Wed, 5 Apr 2023 10:34:54 +0000 (12:34 +0200)] 
cve-extra-exclusions: ignore inapplicable linux-yocto CVEs

Multiple CVEs are patched in kernel but appear as active because the NVD
database is not up to date.

In common file cve-extra-exclusion.inc, CVEs are ignored if and only if
all versions of kernel used are patched.

In cve-exclusion_6.1.inc, only ignore CVEs that are patched in v6.1,
and not patched in v5.15.
Recipes of version 6.1 should include this file.

Reviewed-by: Yoann Congal <yoann.congal@smile.fr>
Signed-off-by: Geoffrey GIRY <geoffrey.giry@smile.fr>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2 years agoxdg-utils: Fix CVE number
Richard Purdie [Wed, 5 Apr 2023 07:38:48 +0000 (08:38 +0100)] 
xdg-utils: Fix CVE number

In the previous commit I somehow mixed up and used an incorrect CVE number.
Use the correct one.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2 years agosanity.bbclass: Update minimum gcc version to 8.0
Mark Hatle [Tue, 4 Apr 2023 14:54:47 +0000 (09:54 -0500)] 
sanity.bbclass: Update minimum gcc version to 8.0

With a gcc older then 8.0, mesa-native will fail to build with the error:
  sorry, unimplemented: non-trivial designated initializers not supported

According to https://docs.mesa3d.org/install.html?highlight=gcc+version#compile
the required minimum compiler version is now GCC 8.0.

Signed-off-by: Mark Hatle <mark.hatle@amd.com>
Signed-off-by: Mark Hatle <mark.hatle@kernel.crashing.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2 years agocve-extra-exclusions.inc: Exclude some issues not present in linux-yocto
Richard Purdie [Tue, 4 Apr 2023 16:42:57 +0000 (17:42 +0100)] 
cve-extra-exclusions.inc: Exclude some issues not present in linux-yocto

Exclude some CVEs where the patches were backported to the stable series
kernels we have.

https://www.linuxkernelcves.com/cves/CVE-XXXX-XXXX is useful to help
with this.

Reviewed-by: Yoann Congal <yoann.congal@smile.fr>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2 years agoxdg-utils: Add a patch for CVE-2020-27748
Richard Purdie [Tue, 4 Apr 2023 12:58:22 +0000 (13:58 +0100)] 
xdg-utils: Add a patch for CVE-2020-27748

Take a patch submitted upstream for the issue while upstream decide what
to do. We don't use thunderbird integration so this isn't an issue for us.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2 years agovte: depend on glib-2.0-native
Petr Kubizňák [Tue, 4 Apr 2023 10:57:47 +0000 (12:57 +0200)] 
vte: depend on glib-2.0-native

When gobject-introspection feature is disabled, glib-2.0-native package
dependency is not pulled in but vte has a hard dependency on it
(do_configure fails due to missing glib-mkenums).

Signed-off-by: Petr Kubizňák <kubiznak@2n.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2 years agogstreamer1.0-plugins: package the internal libraries explicitly
Ross Burton [Mon, 3 Apr 2023 19:27:51 +0000 (20:27 +0100)] 
gstreamer1.0-plugins: package the internal libraries explicitly

An upcoming change will simplify the setuptools3-base FILES assignments,
which means this recipe needs to package a library explicitly.

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2 years agobind: don't package non-existant .la files into -staticdev
Ross Burton [Mon, 3 Apr 2023 10:53:06 +0000 (11:53 +0100)] 
bind: don't package non-existant .la files into -staticdev

If these files exist they should be packaged into PN-dev, and are with
the default FILES:${PN}-dev.

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2 years agoclasses-recipe/setuptools3-base: clean up FILES assignments
Ross Burton [Mon, 3 Apr 2023 10:53:05 +0000 (11:53 +0100)] 
classes-recipe/setuptools3-base: clean up FILES assignments

Simply inheriting setuptools3-base should put everything in $libdir in
PN, and there's no need to replicate the pkgconfig packaging rules as
those are the defaults.

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2 years agolibnotify: depend on glib-2.0-native
Petr Kubizňák [Mon, 3 Apr 2023 11:06:46 +0000 (13:06 +0200)] 
libnotify: depend on glib-2.0-native

When gobject-introspection feature is disabled, glib-2.0-native package
dependency is not pulled in but libnotify has a hard dependency on it
(do_configure fails due to missing glib-mkenums).

Signed-off-by: Petr Kubizňák <kubiznak@2n.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2 years agowebkitgtk: add missing dependencies
Petr Kubizňák [Mon, 3 Apr 2023 11:06:45 +0000 (13:06 +0200)] 
webkitgtk: add missing dependencies

When gobject-introspection feature is disabled, gettext-native and
glib-2.0-native dependencies are not pulled in, which causes failures
in do_compile due to missing xgettext and gdbus-codegen.

Signed-off-by: Petr Kubizňák <kubiznak@2n.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2 years agogconf: add missing dependencies
Petr Kubizňák [Mon, 3 Apr 2023 11:06:44 +0000 (13:06 +0200)] 
gconf: add missing dependencies

When gobject-introspection feature is disabled, glib-2.0-native
and gobject-introspection package dependencies are not pulled in
but gconf has a hard dependency on them (do_configure fails due to
missing introspection.m4 file and glib-gettextize).

Signed-off-by: Petr Kubizňák <kubiznak@2n.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2 years agopython3-pygobject: depend on gobject-introspection
Petr Kubizňák [Mon, 3 Apr 2023 11:06:43 +0000 (13:06 +0200)] 
python3-pygobject: depend on gobject-introspection

When g-i feature is disabled, the gobject-introspection package
dependency is not pulled in but pygobject has a hard dependency on it.

Signed-off-by: Petr Kubizňák <kubiznak@2n.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2 years agographene: add gobject-types PACKAGECONFIG
Petr Kubizňák [Mon, 3 Apr 2023 11:06:42 +0000 (13:06 +0200)] 
graphene: add gobject-types PACKAGECONFIG

Add an option to enable/disable build of graphene-gobject. When
enabled, add glib dependency (not pulled in implicitly if
the gobject-introspection feature is disabled).

Default is to enable gobject-types so that graphene-gobject is built
(dependency of gtk4).

Signed-off-by: Petr Kubizňák <kubiznak@2n.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2 years agoreport-error: catch Nothing PROVIDES error
Mingli Yu [Mon, 3 Apr 2023 09:35:51 +0000 (17:35 +0800)] 
report-error: catch Nothing PROVIDES error

Make the report-error catch Nothing PROVIDES error and then
we can check it directly via error report web.

Signed-off-by: Mingli Yu <mingli.yu@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2 years agorust: update 1.67.1 -> 1.68.1
Alexander Kanavin [Fri, 31 Mar 2023 05:26:33 +0000 (07:26 +0200)] 
rust: update 1.67.1 -> 1.68.1

Rebase patches; one of the vendored crossbeam versions
has been removed upstream, and so crossbeam_atomic.patch
is adjusted accordingly.

Replace getrandom-open64.patch with a backport.

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2 years agorust: install llvm item only once
Alexander Kanavin [Fri, 31 Mar 2023 05:26:32 +0000 (07:26 +0200)] 
rust: install llvm item only once

Otherwise it triggers a rebuild of llvm-dependent rust pieces every time rust_runx is called,
lengthening the builds without need.

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2 years agorust: do not run separate build/install steps
Alexander Kanavin [Fri, 31 Mar 2023 05:26:31 +0000 (07:26 +0200)] 
rust: do not run separate build/install steps

Upstream does not actually use or test it this way; if the goal
is to install items, then install target should be executed directly.

In particular, in latest rust release building stage 2 items has regressed
altogether (incorrect dependencies between rust-analyze tool and the
libs it needs) and no one noticed.

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2 years agorunqemu: respect IMAGE_LINK_NAME
Martin Jansa [Thu, 30 Mar 2023 23:27:24 +0000 (01:27 +0200)] 
runqemu: respect IMAGE_LINK_NAME

* when searching for qemuboot.conf
* don't assume that IMAGE_LINK_NAME is always
  <rootfs>-<machine> (with <rootfs>-<machine>.qemuboot.conf)

* runqemu: use IMAGE_LINK_NAME set by testimage.bbclass or query with bitbake -e

* testimage.bbclass was setting DEPLOY_DIR which I don't see used
  anywhere else, so I assume it was supposed to be DEPLOY_DIR_IMAGE as mentioned
  in corresponding runqemu code, do the same with IMAGE_LINK_NAME variable

* add virtual/kernel as bitbake -e target in run_bitbake_env to make
  sure IMAGE_LINK_NAME is defined (kernel-artifact-names.bbclass inherits
  image-artifact-names.bbclass as well)

* improve .qemuboot.conf search
  1st search for file matching the rootfs and only when not found
  try again with .rootfs suffix removed

[YOCTO #12937]

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2 years agopython3: Fix failing sysconfig.py test on x86(64 bit) using lib64 as baselib by updat...
Wentao Zhang [Mon, 27 Mar 2023 09:31:45 +0000 (17:31 +0800)] 
python3: Fix failing sysconfig.py test on x86(64 bit) using lib64 as baselib by updating test_sysconfig for posix_user purelib

Steps to trigger the failed test:
Edit local.conf to add something as follows:
    BASELIB = "lib64"
    IMAGE_INSTALL:append = " python3-tests".
bitbake core-image-sato
runqemu qemux86-64 nographic slirp
Reproducer:
    $python3 -m test test_sysconfig

sysconfig.py use platlibdir for purelib. Update
test_sysconfig.test_user_similar() for the posix_user
scheme: "purelib" doesn't use sys.platlibdir.

Signed-off-by: Wentao Zhang <wentao.zhang@windriver.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
2 years agoshadow: Fix can not print full login timeout message
Soumya [Fri, 31 Mar 2023 16:26:51 +0000 (16:26 +0000)] 
shadow: Fix can not print full login timeout message

When we do not enter password during login, it is expected to display message "Login timed out after 60 seconds". But it prints only first few bytes(like "Login t") when write is immediately followed by exit.
Fix - Calling exit from new handler provides enough time to display full message.

Upstream-Status: Accepted [https://github.com/shadow-maint/shadow/commit/670cae834827a8f794e6f7464fa57790d911b63c]

Signed-off-by: Soumya <soumya.sambu@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2 years agoavahi: add missing dependencies
Petr Kubizňák [Fri, 31 Mar 2023 11:46:29 +0000 (13:46 +0200)] 
avahi: add missing dependencies

When gobject-introspection feature is disabled, glib-2.0-native
and gobject-introspection package dependencies are not pulled in
but avahi has a hard dependency on them (do_configure fails due
to missing introspection.m4 file, do_compile fails due to missing
glib-mkenums).

Signed-off-by: Petr Kubizňák <kubiznak@2n.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2 years agooeqa/runtime: clean up deprecated backslash expansion
Ross Burton [Fri, 31 Mar 2023 13:09:11 +0000 (14:09 +0100)] 
oeqa/runtime: clean up deprecated backslash expansion

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2 years agoat-spi2-core: depend on glib-2.0-native
Petr Kubizňák [Fri, 31 Mar 2023 11:46:34 +0000 (13:46 +0200)] 
at-spi2-core: depend on glib-2.0-native

When gobject-introspection feature is disabled, glib-2.0-native package
dependency is not pulled in but at-spi2-core has a hard dependency on it
(do_configure fails due to missing glib-genmarshal).

Signed-off-by: Petr Kubizňák <kubiznak@2n.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2 years agolibgudev: depend on glib-2.0-native
Petr Kubizňák [Fri, 31 Mar 2023 11:46:33 +0000 (13:46 +0200)] 
libgudev: depend on glib-2.0-native

When gobject-introspection feature is disabled, glib-2.0-native package
dependency is not pulled in but libgudev has a hard dependency on it
(do_configure fails due to missing glib-mkenums).

Signed-off-by: Petr Kubizňák <kubiznak@2n.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2 years agojson-glib: depend on glib-2.0-native
Petr Kubizňák [Fri, 31 Mar 2023 11:46:32 +0000 (13:46 +0200)] 
json-glib: depend on glib-2.0-native

When gobject-introspection feature is disabled, glib-2.0-native package
dependency is not pulled in but json-glib has a hard dependency on it
(do_configure fails due to missing glib-mkenums).

Signed-off-by: Petr Kubizňák <kubiznak@2n.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2 years agoharfbuzz: depend on glib-2.0-native
Petr Kubizňák [Fri, 31 Mar 2023 11:46:31 +0000 (13:46 +0200)] 
harfbuzz: depend on glib-2.0-native

When gobject-introspection feature is disabled, glib-2.0-native package
dependency is not pulled in but harfbuzz has a hard dependency on it
(do_configure fails due to missing glib-mkenums).

Signed-off-by: Petr Kubizňák <kubiznak@2n.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2 years agoselftest: runqemu: use better error message when asserts fail
Martin Jansa [Thu, 30 Mar 2023 23:27:23 +0000 (01:27 +0200)] 
selftest: runqemu: use better error message when asserts fail

* It was showing whole log and that the runqemu command failed, but not
  where the log file is, nor why it thinks the runqemu failed

[YOCTO #12937]

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2 years agoselftest: runqemu: better check for ROOTFS: in the log
Martin Jansa [Thu, 30 Mar 2023 23:27:22 +0000 (01:27 +0200)] 
selftest: runqemu: better check for ROOTFS: in the log

* it was searching for line like this:
  ROOTFS: [/OE/build/poky/build/build-st-2023-03-20-esdk-runqemu-patch1/runqemu.RunqemuTests.test_boot_machine_ext4/build-st/tmp/deploy/images/qemux86-64/core-image-minimal-qemux86-64-20230320081121.rootfs.ext4]
  but with IMAGE_NAME_SUFFIX changed to something else than default ".rootfs"
  or with my pending changes the line looks like this:
  ROOTFS: [/OE/build/poky/build/build-st-2023-03-20-esdk-runqemu-patch2/runqemu.RunqemuTests.test_boot_machine_ext4/build-st/tmp/deploy/images/qemux86-64/core-image-minimal-qemux86-64.rootfs-20230320085744.ext4]
  and test was failing.

* Check for whole line starting with ROOTFS: and ending just with .ext4

[YOCTO #12937]

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2 years agoselftest: imagefeatures.py: don't mix tabs and spaces for indentation
Martin Jansa [Thu, 30 Mar 2023 23:26:50 +0000 (01:26 +0200)] 
selftest: imagefeatures.py: don't mix tabs and spaces for indentation

* introduced in:
  https://git.openembedded.org/openembedded-core/commit/?id=96d4486df6d870ef19e2055b026729e66bc118f3

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2 years agozvariant: Exclude from world for now to avoid reproducibility issues
Richard Purdie [Fri, 31 Mar 2023 16:56:32 +0000 (17:56 +0100)] 
zvariant: Exclude from world for now to avoid reproducibility issues

Ultimately we'll remove this and use for better rust reproducibility
testing too.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2 years agocargo-update-recipe-crates: force name overrides
Frederic Martinsons [Fri, 31 Mar 2023 05:45:27 +0000 (07:45 +0200)] 
cargo-update-recipe-crates: force name overrides

A project can have multiple Cargo.lock (provides
multiple binaries for example) and each one can
depends on differenct version of the same crates.
Even within the same Cargo.lock file, it is possible
to have different version of same crates.

To avoid conflicts, override the name with the version
for all crates checksum

Moreover, when searching for Cargo.lock, we should ignore
specific dir like .git (no use to walk down there) and .pc
(because it can have a Cargo.lock if this file was patched)

Signed-off-by: Frederic Martinsons <frederic.martinsons@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2 years agometa-selftest: provide a recipe for zvariant
Frederic Martinsons [Fri, 31 Mar 2023 05:45:26 +0000 (07:45 +0200)] 
meta-selftest: provide a recipe for zvariant

This recipe is for showing a "real world" example of
a crate that depends on some git repositories.

Usually, this kind of crate is built within a global
workspace (here it is the zbus project) and so
doesn't need a Cargo.lock on its own.

For the sake of the demonstration, I had to tweak things
a little to be able to compile zvariant in standalone
(no relative path in dependency, no symlink to LICENSE
provide a Cargo.lock)

The use case where the crate had some git repository
in dependency is very common for "private" crate that
are not aimed to be published on crates.io.
When the project grow bigger, it is common to have
a bin and multiple lib developped in parallel, and these
libs are surely on a git repostitory.

A test case have been also added to check for:
  - the previous patch about git subpath parameter and devtool
  - the correctness of overriding dependencies (first patch of the
series)

Signed-off-by: Frederic Martinsons <frederic.martinsons@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2 years agopatch: support of git patches when the source uri contained subpath parameter
Frederic Martinsons [Fri, 31 Mar 2023 05:45:25 +0000 (07:45 +0200)] 
patch: support of git patches when the source uri contained subpath parameter

This is for a specific case where:
  - A recipe use a subpath on a git repo (e.g. git://repo.git/projects;subpath=subproject)
  - The recipe contains a patch to apply
  - a devtool modify is used on this recipe

With these conditions, the patch cannot be applied at all.
GitApplyTree class is used for handling patch under devtool, but
when subpath is present in SRC_URI, the resulting git tree
is dirty (every files and directories which was not in subpath are suppressed)
and so "git am" refuse to apply patches.

That would not be an issue since the GitApplyTree have a fallback
to PatchTree in case of error, but during this error management,
there is a "git reset --hard HEAD" call which suppress the subpath
operation and finally prevents the patch to be applied even with PatchTree.

When devtool is not involved, only PatchTree class is used and the
above problem is irrelevant.

To support git patching during devtool, the presence of subpath and
the dirtyness of the repo are checked. If both conditions are
met, we directly call PatchTree like it was already done
in case of error during git apply.

Signed-off-by: Frederic Martinsons <frederic.martinsons@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2 years agodevtool: add support for multiple git url inside a cargo based recipe
Frederic Martinsons [Fri, 31 Mar 2023 05:45:24 +0000 (07:45 +0200)] 
devtool: add support for multiple git url inside a cargo based recipe

Without that, the possible git urls that are in SRC_URI of a recipe
are removed from SRC_URI during devtool process and so the
cargo_common_do_patch_paths in cargo_common.bbclass cannot
patch these packages to fetch them locally.

I use a generic type name because I foresee this change will
be useful for recipe that used a package manager (cargo but also
npm) see https://bugzilla.yoctoproject.org/show_bug.cgi?id=11015

Signed-off-by: Frederic Martinsons <frederic.martinsons@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2 years agocargo_common.bbclass: add support of user in url for patch
Frederic Martinsons [Fri, 31 Mar 2023 05:45:23 +0000 (07:45 +0200)] 
cargo_common.bbclass: add support of user in url for patch

To handle url like git://git@repo/project

Signed-off-by: Frederic Martinsons <frederic.martinsons@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2 years agocargo_common.bbclass: Support local github repos
Alex Kiernan [Fri, 31 Mar 2023 05:45:22 +0000 (07:45 +0200)] 
cargo_common.bbclass: Support local github repos

Since disable network was added cargo configurations which reference git
repos fail as they attempt to fetch across the network as part of
do_compile, even if EXTRA_OECARGO_PATHS to add them as part of `paths`
is used, as this is documented as only working for packages which exist
in crates.io.

Add parsing of the SRC_URIs for git repos and include `[patch]` sections
to redirect to the checked out source repos which the bitbake fetcher
has already populated.

There are still cases which don't work - if you have multiple copies of
the same repo with different revisions, there's currently no way to
represent that and anything using a repo which has a virtual manifest
will fail to build (see https://github.com/rust-lang/cargo/issues/4934).

Signed-off-by: Alex Kiernan <alex.kiernan@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2 years agocve-update-nvd2-native: new CVE database fetcher
Marta Rybczynska [Wed, 29 Mar 2023 10:02:56 +0000 (12:02 +0200)] 
cve-update-nvd2-native: new CVE database fetcher

Add new fetcher for the NVD database using the 2.0 API [1].
The implementation changes as little as possible, keeping the current
database format (but using a different database file for the transition
period), with a notable exception of not using the META table.

Minor changes that could be visible:
- the database starts in 1999 instead of 2002
- the complete fetch is longer (30 minutes typically)

[1] https://nvd.nist.gov/developers/vulnerabilities

Signed-off-by: Marta Rybczynska <marta.rybczynska@syslinbit.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
2 years agooeqa: whitespace and indentation cleanups
Enrico Jörns [Fri, 31 Mar 2023 10:26:22 +0000 (12:26 +0200)] 
oeqa: whitespace and indentation cleanups

Signed-off-by: Enrico Jorns <ejo@pengutronix.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2 years agooeqa/utils/qemurunner: fix undefined TimeoutExpired
Enrico Jörns [Fri, 31 Mar 2023 10:26:21 +0000 (12:26 +0200)] 
oeqa/utils/qemurunner: fix undefined TimeoutExpired

Signed-off-by: Enrico Jorns <ejo@pengutronix.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2 years agooeqa/utils/qemurunner: limit precision of timing debugging output
Enrico Jörns [Fri, 31 Mar 2023 10:26:20 +0000 (12:26 +0200)] 
oeqa/utils/qemurunner: limit precision of timing debugging output

* There is no need to be that precise. It just irritates in the logs.
* There is also no point in printing plain time.time() value a single
  time while only using formatted printout everywhere else, thus remove
  it.
* Use %d for printing integer times

Signed-off-by: Enrico Jorns <ejo@pengutronix.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2 years agooeqa/utils/qemurunner: replace hard-coded user 'root' in debug output
Enrico Jörns [Fri, 31 Mar 2023 10:26:19 +0000 (12:26 +0200)] 
oeqa/utils/qemurunner: replace hard-coded user 'root' in debug output

Since login user is configurable with boot_patterns['send_login_user'],
unconditionally using 'root' in the debug message can be confusing.

Also fix the debug message to say 'Logged in' instead of 'Logged'.

Signed-off-by: Enrico Jorns <ejo@pengutronix.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2 years agooeqa/utils/commands: remove unused imports
Enrico Jörns [Fri, 31 Mar 2023 10:26:18 +0000 (12:26 +0200)] 
oeqa/utils/commands: remove unused imports

Signed-off-by: Enrico Jorns <ejo@pengutronix.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2 years agooeqa/utils/commands: fix usage of undefined EPIPE
Enrico Jörns [Fri, 31 Mar 2023 10:26:17 +0000 (12:26 +0200)] 
oeqa/utils/commands: fix usage of undefined EPIPE

Signed-off-by: Enrico Jorns <ejo@pengutronix.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2 years agooeqa/targetcontrol: remove unused imports
Enrico Jörns [Fri, 31 Mar 2023 10:26:16 +0000 (12:26 +0200)] 
oeqa/targetcontrol: remove unused imports

Signed-off-by: Enrico Jorns <ejo@pengutronix.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2 years agooeqa/targetcontrol: do not set dump_host_cmds redundantly
Enrico Jörns [Fri, 31 Mar 2023 10:26:15 +0000 (12:26 +0200)] 
oeqa/targetcontrol: do not set dump_host_cmds redundantly

This is already set above, thus simply use the set value from there.

Signed-off-by: Enrico Jorns <ejo@pengutronix.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2 years agooeqa/targetcontrol: fix misspelled RuntimeError
Enrico Jörns [Fri, 31 Mar 2023 10:26:14 +0000 (12:26 +0200)] 
oeqa/targetcontrol: fix misspelled RuntimeError

Signed-off-by: Enrico Jorns <ejo@pengutronix.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2 years agooeqa/selftest/cases/runqemu: update imports
Enrico Jörns [Fri, 31 Mar 2023 10:26:13 +0000 (12:26 +0200)] 
oeqa/selftest/cases/runqemu: update imports

'tempfile' and 'oeqa.utils.command.runCmd' are unused while 'os' is
actually used.

Signed-off-by: Enrico Jorns <ejo@pengutronix.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2 years agooeqa/loader: Ensure module names don't contain uppercase characters
Richard Purdie [Thu, 30 Mar 2023 14:33:01 +0000 (15:33 +0100)] 
oeqa/loader: Ensure module names don't contain uppercase characters

Python modules aren't supposed to have uppercase characters in their names
according to python conventions. We have regexs in the code which work
on that assumption too. Rather than showing errors under some filtering
situations, make it clear and error if a problematic name is seen.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2 years agolib/oe/gpg_sign.py: Avoid race when creating .sig files in detach_sign
Tobias Hagelborn [Thu, 30 Mar 2023 15:38:09 +0000 (17:38 +0200)] 
lib/oe/gpg_sign.py: Avoid race when creating .sig files in detach_sign

Move the signature file into place only after it is successfully signed.
This to avoid race and corrupted .sig files in cases multiple onging
builds write to a shared sstate-cache dir.

Signed-off-by: Tobias Hagelborn <tobiasha@axis.com>
Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2 years agowebkitgtk: clean up Python variables
Ross Burton [Thu, 30 Mar 2023 18:50:06 +0000 (19:50 +0100)] 
webkitgtk: clean up Python variables

The cmake bbclass already sets the path to the correct Python for us,
and there appears to be no more scripts in the build which use 'python'
explicitly.

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2 years agolibgit2: clean up CMake variables
Ross Burton [Thu, 30 Mar 2023 18:50:05 +0000 (19:50 +0100)] 
libgit2: clean up CMake variables

LIB_INSTALL_DIR was removed in libgit2 1.0 when they moved to using
GNUInstallDirs.

BUILD_CLAR is now BUILD_TESTS as of libgit2 1.4.

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2 years agollvm: remove redundant CMake variables
Ross Burton [Thu, 30 Mar 2023 18:50:04 +0000 (19:50 +0100)] 
llvm: remove redundant CMake variables

This recipe uses the cmake class, so there's no need to set the Ninja
backend, or tell it where Python is, or that we're cross-compiling.

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2 years agotzdata: upgrade to 2023c
Ross Burton [Thu, 30 Mar 2023 13:17:01 +0000 (14:17 +0100)] 
tzdata: upgrade to 2023c

Drop a backport patch as it is now integrated.

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
2 years agocracklib: upgrade to v2.9.10
Sudip Mukherjee [Wed, 29 Mar 2023 11:30:00 +0000 (12:30 +0100)] 
cracklib: upgrade to v2.9.10

Remove a patch which has been applied upstream and rebase
another patch on top of v2.9.10

Signed-off-by: Sudip Mukherjee <sudipm.mukherjee@gmail.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
2 years agogobject-introspection: inherit python3targetconfig
Ovidiu Panait [Wed, 29 Mar 2023 08:38:17 +0000 (11:38 +0300)] 
gobject-introspection: inherit python3targetconfig

When building gobject-introspection for aarch64, the generated giscanner
python module has the wrong "x86_64" suffix:
./usr/lib/gobject-introspection/giscanner/_giscanner.cpython-311-x86_64-linux-gnu.so

The EXT_SUFFIX used by meson to generate the python module is taken
from the native python3 sysconfig instead of the target sysconfig.

Replace the python3native inherit with python3targetconfig to fix this.

Signed-off-by: Ovidiu Panait <ovidiu.panait@windriver.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
2 years agoRevert "runqemu: Add workaround for APIC hang on pre 4.15 kernels on qemux86"
Khem Raj [Wed, 29 Mar 2023 03:04:36 +0000 (20:04 -0700)] 
Revert "runqemu: Add workaround for APIC hang on pre 4.15 kernels on qemux86"

This reverts commit 82e67b82ea8e12aa0b7b9db1d84fec0436dec71b.

It was commited as part of https://bugzilla.yoctoproject.org/show_bug.cgi?id=12301
for kernels < 4.15, as of now oldest builder kernel we have is 4.15 on
ubuntu 18.04 so we should not require this workaround. Moreover, this
fixes an smp problem with qemux86 where no matter what -smp <x> option
is used, qemu always starts with single core.

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
2 years agooeqa/selftest/imagefeatures: set a test for mutliubi in test_image_fstypes
Romuald Jeanne [Mon, 27 Mar 2023 14:38:30 +0000 (16:38 +0200)] 
oeqa/selftest/imagefeatures: set a test for mutliubi in test_image_fstypes

Allow 'multiubi' fstype image.
Set 'MULTIUBI_BUILD' with two entries to allow configuration for two
different '.ubifs'.
Configure 'MKUBIFS_ARGS_*' and 'UBINIZE_ARGS_*' for both configurations.

Signed-off-by: Romuald Jeanne <romuald.jeanne@st.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
2 years agoselftest: eSDK rename to esdk
Martin Jansa [Mon, 13 Mar 2023 14:20:32 +0000 (15:20 +0100)] 
selftest: eSDK rename to esdk

* I was hit by oe-selftest -r eSDK.oeSDKExtSelfTest.test_install_libraries_headers
  running all tests except only this selected one:

  poky $ oe-selftest -v -r eSDK.oeSDKExtSelfTest.test_install_libraries_headers -K -B /OE/build/poky/build-eSDK
  2023-03-13 14:00:52,955 - oe-selftest - DEBUG - Selected tests with -r: ['eSDK.oeSDKExtSelfTest.test_install_libraries_headers']
  2023-03-13 14:00:55,531 - oe-selftest - INFO - Changing cwd to /OE/build/poky/build
  ..
  2023-03-13 14:00:58,128 - oe-selftest - INFO - test_archiver_allows_to_filter_on_recipe_name (archiver.Archiver.test_archiver_allows_to_filter_on_recipe_name)

  this is caused by _built_modules_dict(modules) function
  which filters out eSDK.oeSDKExtSelfTest.test_install_libraries_headers
  based on the regexp and then it runs all loaded tests, because
  modules are empty

  the initial regexp and comment from 2017:
     https://git.openembedded.org/openembedded-core/commit/?id=80db3d999ae26d298d9d5418a32b11a4f27af9d5

     # Assumption: package and module names do not contain upper case
     # characters, whereas class names do
     m = re.match(r'^([^A-Z]+)(?:\.([A-Z][^.]*)(?:\.([^.]+))?)?$', module)

  might still be valid, but it was loosened in 2018 to accept upper case in module:

     https://git.openembedded.org/openembedded-core/commit/?id=1ecf48fd286a77078451b67879a44f9c9dc7a894
     Some test cases (eSDK.oeSDK*, runtime_test/*) does not match with current regex, fix it accept all.

  Then skipping the not matching modules was added later in 2018:

     https://git.openembedded.org/openembedded-core/commit/?id=f2042bf3638ed4edfb167e7f7d4be6da60997ead

  and regexp was updated again in 2020 not to accept upper case in modules:

     https://git.openembedded.org/openembedded-core/commit/?id=ad81ea90a815389e45ff302a85151724c71f71c3
     oeqa/core/loader: refine regex to find module
     test case in format <module name>.<class name>.<test case name>
     this is clear when test cases is only 3 item deep.

     but confused when it is 4 item deep, eg,
     oelib.types.TestList.test_list_nosep

  I'm afraid that changing this regexp again to accept eSDK will break
  someone's favorite test case, renaming eSDK looks much safer option

  There is only 1 such case in poky:
  $ oe-selftest --list-modules | grep INFO.- | sed 's/^.*INFO - //g' | grep -v '^[a-z_\.]*$'
  Listing all available test modules:
  eSDK

  Most modules are just a-z (52x), then oelib.<foo> (6x) and 7 modules with underscore '_'.

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
2 years agooeqa/selftest/cases/package.py: adding unittest for package rename conflicts
Fawzi KHABER [Wed, 29 Mar 2023 08:57:57 +0000 (10:57 +0200)] 
oeqa/selftest/cases/package.py: adding unittest for package rename conflicts

This Unittest tries to rename a package, using an already used name and
fails on do_package.

Reviewed-by: Yoann CONGAL <yoann.congal@smile.fr>
Signed-off-by: Fawzi KHABER <fawzi.khaber@smile.fr>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2 years agopackage.bbclass: check packages name conflict in do_package
Fawzi KHABER [Wed, 29 Mar 2023 08:57:56 +0000 (10:57 +0200)] 
package.bbclass: check packages name conflict in do_package

It is possible to rename packages with the macro PKG:${PN} and result in
a package name conflict if the target name exists already.

Add a fatal check to prevent this issue to go unnoticed.

Fix [Yocto #12060]

Reviewed-by: Yoann CONGAL <yoann.congal@smile.fr>
Signed-off-by: Fawzi KHABER <fawzi.khaber@smile.fr>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2 years agocve-check: Fix false negative version issue
Geoffrey GIRY [Tue, 28 Mar 2023 10:23:49 +0000 (12:23 +0200)] 
cve-check: Fix false negative version issue

NVD DB store version and update in the same value, separated by '_'.
The proposed patch check if the version from NVD DB contains a "_",
ie 9.2.0_p1 is convert to 9.2.0p1 before version comparison.

[YOCTO #14127]

Reviewed-by: Yoann CONGAL <yoann.congal@smile.fr>
Signed-off-by: Geoffrey GIRY <geoffrey.giry@smile.fr>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
2 years agovim: upgrade 9.0.1403 -> 9.0.1429
Randy MacLeod [Tue, 28 Mar 2023 14:57:51 +0000 (07:57 -0700)] 
vim: upgrade 9.0.1403 -> 9.0.1429

Fixes: CVE-2023-1127, CVE-2023-1170, CVE-2023-1175,
       CVE-2023-1264, CVE-2023-1355

Signed-off-by: Randy MacLeod <Randy.MacLeod@windriver.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
2 years agorun-postinsts: Set dependency for ldconfig to avoid boot issues
Arturo Buzarra [Thu, 20 Oct 2022 13:55:31 +0000 (15:55 +0200)] 
run-postinsts: Set dependency for ldconfig to avoid boot issues

If a package with a postsints script requires ldconfig, the package class adds
a ldconfig postinst fragment to initialize it before. Systemd has its own
ldconfig.service to initialize it and sometimes if both services are running
at the same time in the first boot, the first one will work, but the second
one will fail with the following error:

    ldconfig[141]: /sbin/ldconfig: Renaming of /etc/ld.so.cache~ to /etc/ld.so.cache failed: No such file or directory

This commit adds a ordering dependency between them to make sure that only one
service is running at the same time.

Signed-off-by: Arturo Buzarra <arturo.buzarra@digi.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2 years agopython3-cryptography: add crates checksums
Frederic Martinsons [Thu, 16 Mar 2023 12:12:49 +0000 (13:12 +0100)] 
python3-cryptography: add crates checksums

Signed-off-by: Frederic Martinsons <frederic.martinsons@gmail.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
2 years agopython3-bcrypt: add crates checksums
Frederic Martinsons [Thu, 16 Mar 2023 12:12:48 +0000 (13:12 +0100)] 
python3-bcrypt: add crates checksums

Signed-off-by: Frederic Martinsons <frederic.martinsons@gmail.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
2 years agocargo-update-recipe-crates: generate checksum for each crates
Frederic Martinsons [Thu, 16 Mar 2023 12:12:47 +0000 (13:12 +0100)] 
cargo-update-recipe-crates: generate checksum for each crates

This is related to checksum verification introduction from
https://patchwork.yoctoproject.org/project/bitbake/patch/20230315131513.50635-1-frederic.martinsons@gmail.com/

I also choose to raise an exception if:
 - no crates can be found
 - no Cargo.lock file exist

Otherwise the generated inc file will silently be emptied.

Signed-off-by: Frederic Martinsons <frederic.martinsons@gmail.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
2 years agooeqa/selftest/reproducible: Split different packages from missing packages output
Jose Quaresma [Mon, 27 Mar 2023 16:00:37 +0000 (16:00 +0000)] 
oeqa/selftest/reproducible: Split different packages from missing packages output

When we provide sstate_targets recipes they are reported as missing
which is not quite correct because they are proveided to cut build/debugging time.

Signed-off-by: Jose Quaresma <jose.quaresma@foundries.io>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
2 years agooeqa/selftest: OESelftestTestContext: convert relative to full path when newbuilddir...
Jose Quaresma [Mon, 27 Mar 2023 15:59:37 +0000 (15:59 +0000)] 
oeqa/selftest: OESelftestTestContext: convert relative to full path when newbuilddir is provided

Relative paths in BBLAYERS only works when the new build dir are on the same
ascending directory node:
 .
 ├── build
 ├── build-st

It works because they share the same ascending relative directory node.

So use the full path when the argument newbuilddir is provided
to make the oe-selftest work everywere regardless of the location chosen.

Signed-off-by: Jose Quaresma <jose.quaresma@foundries.io>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
2 years agooeqs/selftest: OESelftestTestContext: replace the os.environ after subprocess.check_o...
Jose Quaresma [Mon, 27 Mar 2023 15:59:36 +0000 (15:59 +0000)] 
oeqs/selftest: OESelftestTestContext: replace the os.environ after subprocess.check_output

No function change but is needed to simplify the next patch.

Signed-off-by: Jose Quaresma <jose.quaresma@foundries.io>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
2 years agolibunwind: fix compile failures on 32-bit arm with Clang 16
Ross Burton [Mon, 27 Mar 2023 11:53:38 +0000 (12:53 +0100)] 
libunwind: fix compile failures on 32-bit arm with Clang 16

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
2 years agogo: fix CVE-2023-2453
Ross Burton [Mon, 27 Mar 2023 12:03:35 +0000 (13:03 +0100)] 
go: fix CVE-2023-2453

Backport a security fix, can be removed once we have 1.20.2 onwards.

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
2 years agobuildstats-summary: add an option to disable bold
Jose Quaresma [Fri, 24 Mar 2023 19:30:31 +0000 (19:30 +0000)] 
buildstats-summary: add an option to disable bold

Signed-off-by: Jose Quaresma <jose.quaresma@foundries.io>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
2 years agoopenssh: upgrade 9.2p1 -> 9.3p1
Siddharth Doshi [Mon, 27 Mar 2023 08:36:20 +0000 (14:06 +0530)] 
openssh: upgrade 9.2p1 -> 9.3p1

OpenSSH 9.3p1 fixes 1 HIGH level security vulnerability.

Upgrade the recipe to point to 9.3p1.

CVEs Fixed:
1) CVE-2023-28531
- ssh-add in OpenSSH before 9.3 adds smartcard keys to ssh-agent without the intended per-hop destination constraints.

Signed-off-by: Siddharth Doshi <sdoshi@mvista.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2 years agofilemap.py: enforce maximum of 4kb block size
Andrew Geissler [Fri, 24 Mar 2023 20:13:33 +0000 (15:13 -0500)] 
filemap.py: enforce maximum of 4kb block size

The logic in this script validates that the length of data sections are
evenly divisible by the block size. On most systems the block size is
4KB and all is good. Some systems though, such as ppc64le, have a block
size larger then 4KB. For example on a POWER9 based ppc64le system, the
block size is 64KB.

This results in this script failing with errors like this when building
wic images:
|440, in _do_get_mapped_ranges
|     assert extent_len % self.block_size == 0
|            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
| AssertionError

In this case the data section size was 268KB and the block size was
64KB, resulting in the above assert failure.

Resolves https://bugzilla.yoctoproject.org/show_bug.cgi?id=15075

Signed-off-by: Andrew Geissler <geissonator@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>