]> code.ossystems Code Review - openembedded-core.git/log
openembedded-core.git
3 years agoasciidoc: update git repository
Ross Burton [Fri, 4 Mar 2022 17:14:06 +0000 (17:14 +0000)]
asciidoc: update git repository

The asciidoc-py3 repository has been renamed to asciidoc-py.

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
3 years agopython3: Reduce util-linux dependency to util-linux-libuuid
Richard Purdie [Fri, 4 Mar 2022 16:33:34 +0000 (16:33 +0000)]
python3: Reduce util-linux dependency to util-linux-libuuid

Only libuuid is needed by python so reduce the dependency and hence
reduce the amount pulled into the syroot for the native case in particular.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
3 years agolayer.conf: Add libarchive-native e2fsprogs-native exclusion from sysroot
Richard Purdie [Fri, 4 Mar 2022 16:32:00 +0000 (16:32 +0000)]
layer.conf: Add libarchive-native e2fsprogs-native exclusion from sysroot

Currently, libarchive-native pulls e2fsprogs and all it's dependencies into
the sysroot. Since only headers are needed at buildtime and there is no
runtime dependency, we can avoid this and shrink the native sysroots.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
3 years agolayer.conf: Filter docs dependencies for efficiency
Richard Purdie [Fri, 4 Mar 2022 14:15:42 +0000 (14:15 +0000)]
layer.conf: Filter docs dependencies for efficiency

Where a recipe has depends on native docs tools, in most cases
we don't need recipes that depend on that recipe to also install
these things into the sysroot. We can rely on recipes wanting these
tools to have direct dependencies instead.

This massively reduced dependency creep in simple recipes (e.g. an
allarch one) and reduced the size of builds with the api-documentation
feature substancially.

gperf-native is also included since that would normally have a direct
dependency in a recipe which needs it too.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
3 years agoRevert "libical: Pass TOOLCHAIN_OPTIONS via CFLAGS"
Richard Purdie [Sat, 5 Mar 2022 08:08:37 +0000 (08:08 +0000)]
Revert "libical: Pass TOOLCHAIN_OPTIONS via CFLAGS"

This reverts commit feb8893e0f52c7ab2d5efd456901a2bb91839d44.

This is no longer needed after the compiler fix for libical.

3 years agoclasses: add setuptools3_legacy
Ross Burton [Fri, 4 Mar 2022 11:55:25 +0000 (11:55 +0000)]
classes: add setuptools3_legacy

Following a good discussion with PyPA upstream[1] the migration of the
setuptools3.bbclass to use bdist_wheel+pip turns out to be more complex
than thought.

Essentially, we're midway through a lot of changes: the future of Python
packaging is wheels and pip, but those by design are not as flexible as
traditional distutils and setup.py.

Specifically, with traditional distutils the package can implement its
own install task and write arbitrary files (such as init scripts).  With
wheels this is explicity impossible, so packages that do this cannot use
the new setuptools class and must continue to use the build/install tasks
as before.

This class is the old setuptools behaviour, bought back. However, as
distutils and the setuptools install task are both deprecated and will
soon be removed entirely, any users of this class should be moving to an
alternative build tool, be it a modern Python tool which works with
wheels, or a non-Pythonic tool such as Meson.

[1] https://github.com/pypa/packaging-problems/issues/576

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
3 years agoRevert "libsdl2: Add libunwind-native to the libsdl2-native DEPENDS"
Richard Purdie [Sat, 5 Mar 2022 00:05:35 +0000 (00:05 +0000)]
Revert "libsdl2: Add libunwind-native to the libsdl2-native DEPENDS"

This reverts commit 1b114fa2d221c9810852526f8b45a3d2c856a502.

Unfortunately this breaks on cento7 as libunwind-native doesn't appear to build there.

3 years agolibsdl2: Add libunwind-native to the libsdl2-native DEPENDS
Carlos Rafael Giani [Fri, 4 Mar 2022 07:55:07 +0000 (08:55 +0100)]
libsdl2: Add libunwind-native to the libsdl2-native DEPENDS

This fixes this CMake configuration error:

| -- Checking for one of the modules 'libunwind'
| CMake Error at [...]/build/tmp/work/x86_64-linux/libsdl2-native/2.0.20-r0/recipe-sysroot-native/usr/share/cmake-3.22/Modules/FindPkgConfig.cmake:890 (message):
|   None of the required 'libunwind' found
| Call Stack (most recent call first):
|   CMakeLists.txt:1367 (pkg_search_module)

This error happens even if libunwind is installed complete with its C
headers and development .so files (in Ubuntu, this means libunwind-dev
is installed).

Signed-off-by: Carlos Rafael Giani <crg7475@mailbox.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
3 years agobtrfs-tools: upgrade 5.16 -> 5.16.2
wangmy [Fri, 4 Mar 2022 05:18:43 +0000 (13:18 +0800)]
btrfs-tools: upgrade 5.16 -> 5.16.2

0001-btrfs-progs-kerncompat-add-local-definition-for-alig.patch
removed since it's included in 5.16.2

Changelog:
=========
mkfs: fix detection of profile type for zoned mode when creating DUP
build:
 - add missing stub for zoned mode helper when zoned mode not enabled
 - fix 64bit types on MIPS and PowerPC
 - improved zoned mode support autodetection, for systems with existing blkzone.h
   header but missing support for zone capacity
other: doc updates, test updates

Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
3 years agoinsane: Accomodate llvm-objdump
Khem Raj [Thu, 3 Mar 2022 21:53:43 +0000 (13:53 -0800)]
insane: Accomodate llvm-objdump

llvm-objdump emite MIPS_XHASH where as GNU objdump emits DT_MIPS_XHASH,
checking for shorted sequence makes this check work in both cases

mips-yoe-linux-objdump -p libx264.so.163 | grep XHASH
  DT_MIPS_XHASH        0x00000168

mips-yoe-linux-llvm-objdump -p libx264.so.163 | grep XHASH
  MIPS_XHASH        0x00000168

both are same things

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
3 years agopython3-jsonschema: upgrade 3.2.0 -> 4.4.0
Tim Orling [Thu, 3 Mar 2022 20:44:10 +0000 (12:44 -0800)]
python3-jsonschema: upgrade 3.2.0 -> 4.4.0

Upstream changed from setup.py to pyproject.toml+setup.cfg

inherit setuptools_build_meta

For changes see:
https://github.com/Julian/jsonschema/blob/main/CHANGELOG.rst#v440

Signed-off-by: Tim Orling <tim.orling@konsulko.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
3 years agopython3: Drop opt1 and opt2 pyc files from target
Richard Purdie [Thu, 3 Mar 2022 16:33:40 +0000 (16:33 +0000)]
python3: Drop opt1 and opt2 pyc files from target

These are only used with python when the -O or -OO options are passed
and I'm not aware of runtime use of that. They otherwise just waste a
ton of space.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
3 years agopython3-native: Remove all pyc files
Richard Purdie [Thu, 3 Mar 2022 16:32:31 +0000 (16:32 +0000)]
python3-native: Remove all pyc files

This removes a further 1600 files from sstate handling and lets python
create the ones it wants at runtime which is likely much better overall
for performance.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
3 years agoRevert "cmake.bbclass: Set CXXFLAGS and CFLAGS"
Jose Quaresma [Mon, 28 Feb 2022 16:37:10 +0000 (16:37 +0000)]
Revert "cmake.bbclass: Set CXXFLAGS and CFLAGS"

This reverts commit 47594d59ec4ab82fcf87d3c590caf7c46a6bfdff.

This patch was introduced 5 years ago as a temporary workaround
to fix an upstream bug.

Currently with that patch the following flags are duplicated:
 OECMAKE_C_FLAGS ?= "${HOST_CC_ARCH} ${TOOLCHAIN_OPTIONS} ${CFLAGS}"
 OECMAKE_C_LINK_FLAGS ?= "${HOST_CC_ARCH} ${TOOLCHAIN_OPTIONS} ${CPPFLAGS} ${LDFLAGS}"
 OECMAKE_CXX_LINK_FLAGS ?= "${HOST_CC_ARCH} ${TOOLCHAIN_OPTIONS} ${CXXFLAGS} ${LDFLAGS}"

The duplicated flags is used in the toolchain.cmake:
 set( CMAKE_C_FLAGS "${OECMAKE_C_FLAGS}" CACHE STRING "CFLAGS" )
 set( CMAKE_CXX_FLAGS "${OECMAKE_CXX_FLAGS}" CACHE STRING "CXXFLAGS" )
 set( CMAKE_CXX_LINK_FLAGS "${OECMAKE_CXX_LINK_FLAGS}" CACHE STRING "LDFLAGS" )

CC: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Jose Quaresma <quaresma.jose@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
3 years agolibical: Do not set CC explicitly for gir compiler
Khem Raj [Fri, 4 Mar 2022 04:46:35 +0000 (20:46 -0800)]
libical: Do not set CC explicitly for gir compiler

This ensures that right sysroot is used during build, otherwise we see
warnings in build about using wrong sysroot and it fails explicitly with
clang

x86_64-yoe-linux-ld: warning: library search path "/usr/lib/gcc/x86_6
4-pc-linux-gnu/11.2.0/../../../../lib64" is unsafe for cross-compilation

x86_64-yoe-linux-ld: cannot find /usr/lib/clang/14.0.0/lib/linux/libc
lang_rt.builtins-x86_64.a: No such file or directory

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
3 years agolibical: Pass TOOLCHAIN_OPTIONS via CFLAGS
Khem Raj [Tue, 1 Mar 2022 04:13:46 +0000 (20:13 -0800)]
libical: Pass TOOLCHAIN_OPTIONS via CFLAGS

This ensures that right sysroot is used during build, otherwise we see
warnings in build about using wrong sysroot and it fails explicitly with
clang

x86_64-yoe-linux-ld: warning: library search path "/usr/lib/gcc/x86_6
4-pc-linux-gnu/11.2.0/../../../../lib64" is unsafe for cross-compilation

x86_64-yoe-linux-ld: cannot find /usr/lib/clang/14.0.0/lib/linux/libc
lang_rt.builtins-x86_64.a: No such file or directory

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
3 years agocmake-native: Remove help docs from the native sysroot
Richard Purdie [Thu, 3 Mar 2022 15:22:00 +0000 (15:22 +0000)]
cmake-native: Remove help docs from the native sysroot

This drops the file count for cmake-native from ~3000 to ~1700
which is a decent chunk of files not to be copying to each native
sysroot for no reason.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
3 years agopython3-native: Drop opt-1 and opt-2 pyc files
Richard Purdie [Thu, 3 Mar 2022 13:52:29 +0000 (13:52 +0000)]
python3-native: Drop opt-1 and opt-2 pyc files

There are over 3,000 of these in python3-native (of 8,000+ files total) and
copying them to sysroots all the time seems pointless, particularly since
they're only used if python is run with the -O or -OO parameters.

Get rid of them and save the overhead. This is particularly pronounced in
builds using the api-documentation distro feature.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
3 years agolibsndfile: Fix missing external library support
Richard Purdie [Thu, 3 Mar 2022 11:16:59 +0000 (11:16 +0000)]
libsndfile: Fix missing external library support

The recent upgrade regressed codec support since opus is missing and
this caused several codecs to be disabled. Add a patch to work around
the issue whilst it is discussed with upstream.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
3 years agoglslang/spirv: synchronize with the rest of vulkan items
Alexander Kanavin [Thu, 3 Mar 2022 10:13:15 +0000 (11:13 +0100)]
glslang/spirv: synchronize with the rest of vulkan items

These components are now versioned in sync with vulkan releases:
https://github.com/KhronosGroup/SPIRV-Headers/issues/252
https://github.com/KhronosGroup/SPIRV-Headers/issues/266

"We'll continue tagging the repos contributing with SDK releases, as
that is when all the testing of the various projects is performed
together."

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
3 years agolibarchive: correct upstream version check
Alexander Kanavin [Thu, 3 Mar 2022 09:33:23 +0000 (10:33 +0100)]
libarchive: correct upstream version check

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
3 years agolibsndfile1: correct upstream version check
Alexander Kanavin [Thu, 3 Mar 2022 09:33:22 +0000 (10:33 +0100)]
libsndfile1: correct upstream version check

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
3 years agoconvert-variable-renames: Fix output string
Saul Wold [Thu, 3 Mar 2022 00:42:32 +0000 (16:42 -0800)]
convert-variable-renames: Fix output string

Signed-off-by: Saul Wold <saul.wold@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
3 years agobinutils: Avoid Race condition in as.info
Pgowda [Thu, 3 Mar 2022 05:57:00 +0000 (21:57 -0800)]
binutils: Avoid Race condition in as.info

The race condition in binutils/gas folder was introduced with the
following patch. The patch avoids recursive make into the doc folder.
It would speed up the build process slightly. However, the as.info
is installed twice which resulted in the race condition sometimes.
https://sourceware.org/git/?p=binutils-gdb.git;a=commit;h=bde299e063de090bf36c1fe51874d1e9f4d94c3c

On debugging the code, it was found that the issue was related to
install-data-local. On further analysis, there is already a patch in
binutils that removes install-data-local.
On applying the patch as.info is installed once as expected and there’s
no possibility of any race condition.
https://sourceware.org/git/?p=binutils-gdb.git;a=commitdiff;h=9a84a44d5df4618dd616137fa755bd71b7eacc5f

Upstream-Status: Backport [https://sourceware.org/git/?p=binutils-gdb.git;a=commit;h=9a84a44d5df4618dd616137fa755bd71b7eacc5f]

[YOCTO #14725]

Signed-off-by: pgowda <pgowda.cve@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
3 years agooeqa: selftest: overlayfs: add test for image with fstab entry
Stefan Herbrechtsmeier [Wed, 2 Mar 2022 14:33:29 +0000 (15:33 +0100)]
oeqa: selftest: overlayfs: add test for image with fstab entry

Signed-off-by: Stefan Herbrechtsmeier <stefan.herbrechtsmeier@weidmueller.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
3 years agoclasses: rootfs-postcommands: include /etc/fstab in overlayfs_qa_check
Stefan Herbrechtsmeier [Wed, 2 Mar 2022 14:33:28 +0000 (15:33 +0100)]
classes: rootfs-postcommands: include /etc/fstab in overlayfs_qa_check

The systemd init manager support mount point configuration via mount
units and /etc/fstab. 'Mounts listed in /etc/fstab will be converted
into native units dynamically at boot and when the configuration of
the system manager is reloaded. In general, configuring mount points
through /etc/fstab is the preferred approach.' [1]

Read mount points from /etc/fstab to determine dynamic mount units.

[1] https://www.freedesktop.org/software/systemd/man/systemd.mount.html

Signed-off-by: Stefan Herbrechtsmeier <stefan.herbrechtsmeier@weidmueller.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
3 years agolibacpi: Build libacpi also for 'aarch64' machines
Kamil Dziezyk [Wed, 2 Mar 2022 14:17:02 +0000 (15:17 +0100)]
libacpi: Build libacpi also for 'aarch64' machines

Signed-off-by: Kamil Dziezyk <kamil.dziezyk@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
3 years agoipk: Decode byte data to string in manifest handling
Andrew Jeffery [Wed, 2 Mar 2022 13:21:43 +0000 (23:51 +1030)]
ipk: Decode byte data to string in manifest handling

```
File: '/home/andrew/src/openbmc/openbmc/meta/lib/oe/package_manager/ipk/manifest.py', lineno: 69, function: create_full
     0065:        output = pm.dummy_install(pkgs_to_install)
     0066:
     0067:        with open(self.full_manifest, 'w+') as manifest:
     0068:            pkg_re = re.compile('^Installing ([^ ]+) [^ ].*')
 *** 0069:            for line in set(output.split('\n')):
     0070:                m = pkg_re.match(line)
     0071:                if m:
     0072:                    manifest.write(m.group(1) + '\n')
     0073:
Exception: TypeError: a bytes-like object is required, not 'str'
```

Change-Id: Ifefb13bfa22c766d20ab9f73f7abe5163b3df86f
Signed-off-by: Andrew Jeffery <andrew@aj.id.au>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
3 years agoipk: Import re in manifest module
Andrew Jeffery [Wed, 2 Mar 2022 13:21:42 +0000 (23:51 +1030)]
ipk: Import re in manifest module

```
File: '/home/andrew/src/openbmc/openbmc/meta/lib/oe/package_manager/ipk/manifest.py', lineno: 67, function: create_full
     0063:
     0064:        output = pm.dummy_install(pkgs_to_install)
     0065:
     0066:        with open(self.full_manifest, 'w+') as manifest:
 *** 0067:            pkg_re = re.compile('^Installing ([^ ]+) [^ ].*')
     0068:            for line in set(output.split('\n')):
     0069:                m = pkg_re.match(line)
     0070:                if m:
     0071:                    manifest.write(m.group(1) + '\n')
Exception: NameError: name 're' is not defined
```

Change-Id: I769a2ab5e57c7b60598ea0390b576d707356db9d
Signed-off-by: Andrew Jeffery <andrew@aj.id.au>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
3 years agocopy_buildsystem: allow more layer paths
Daniel Wagenknecht [Wed, 2 Mar 2022 19:05:55 +0000 (20:05 +0100)]
copy_buildsystem: allow more layer paths

Layers could be located anywhere. The eSDK should work with them even if
they are not located in TOPDIR or in the same parent directory as
COREBASE.

For layers located in the same parent directory as COREBASE this preserves
the intent from the previous
  copy_buildsystem: include layer tree during build structure creation
commit.

Related OE-Core rev: 5a59a6997f41e606d088e3e86812de56f72f543b

Signed-off-by: Daniel Wagenknecht <dwagenknecht@emlix.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
3 years agomultilib_global.bbclass: fix setting preferred version for canadian recipes
Chen Qi [Tue, 1 Mar 2022 08:12:18 +0000 (16:12 +0800)]
multilib_global.bbclass: fix setting preferred version for canadian recipes

Currently the TRANSLATED_TARGET_ARCH is not changed when trying
to set preferred version for canadian recipes.

e.g.
```
bitbake core-image-minimal -c populate_sdk -e > env
grep ^PREFERRED_VERSION_gcc-cross-canadian env
```
The result is:
"""
PREFERRED_VERSION_gcc-cross-canadian-x86-64="11.%"
"""

We need to explictly change DEFAULTTUNE to ensure TRANSLATED_TARGET_ARCH is
changed when trying to set the preferred version for multilib version of
the canadian recipes.

e.g.
```
bitbake core-image-minimal -c populate_sdk -e > env
grep ^PREFERRED_VERSION_gcc-cross-canadian env
```
The result is:
"""
PREFERRED_VERSION_gcc-cross-canadian-i686="11.%"
PREFERRED_VERSION_gcc-cross-canadian-x86-64="11.%"
"""

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
3 years agorust: Add snapshot checksums for powerpc64le
Andrew Jeffery [Mon, 28 Feb 2022 14:39:48 +0000 (01:09 +1030)]
rust: Add snapshot checksums for powerpc64le

Signed-off-by: Andrew Jeffery <andrew@aj.id.au>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
3 years agorust: Introduce RUST_BUILD_ARCH
Andrew Jeffery [Mon, 28 Feb 2022 14:39:47 +0000 (01:09 +1030)]
rust: Introduce RUST_BUILD_ARCH

RUST_BUILD_ARCH contains the arch_to_rust_arch()-translated value of
BUILD_ARCH. This is necessary to acquire the correct snapshot artifacts
under Linux where `uname -m` reports "ppc64le" rather than
"powerpc64le".

Change-Id: I6aec23aced8e1c6f0bfc46fe52531b0c16bcf687
Signed-off-by: Andrew Jeffery <andrew@aj.id.au>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
3 years agorust: Introduce arch_to_rust_arch()
Andrew Jeffery [Mon, 28 Feb 2022 14:39:46 +0000 (01:09 +1030)]
rust: Introduce arch_to_rust_arch()

On modern Power systems `uname -m` yields 'ppc64le' while the toolchain
knows the architecture as 'powerpc64le'. Provide a mapping from one to
the other to integrate with the existing architecture configuration
flags.

arch_to_rust_arch() only exists to map the OE *_ARCH variables before
any further processing, unlike arch_to_rust_target_arch() which is
specific to the internal triple handling of rust.

On Linux ppc64le systems the changes give the following config:

```
$ cat ./tmp/work/ppc64le-linux/rust-native/1.58.0-r0/targets/ppc64le-linux.json
{
    "llvm-target": "powerpc64le-unknown-linux-gnu",
    "data-layout": "e-m:e-i64:64-n32:64-v256:256:256-v512:512:512",
    "max-atomic-width": 64,
    "target-pointer-width": "64",
    "target-c-int-width": "64",
    "target-endian": "little",
    "arch": "powerpc64",
    "os": "linux",
    "env": "gnu",
    "vendor": "unknown",
    "target-family": "unix",
    "linker": "gcc",
    "cpu": "generic",
    "dynamic-linking": true,
    "executables": true,
    "linker-is-gnu": true,
    "linker-flavor": "gcc",
    "has-rpath": true,
    "has-elf-tls": true,
    "position-independent-executables": true,
    "panic-strategy": "unwind"
}
```

Change-Id: Ief0c01189185d7d4da31d307270bec4e1de674ca
Signed-off-by: Andrew Jeffery <andrew@aj.id.au>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
3 years agobuildhistory.bbclass: create the buildhistory directory when needed
Jose Quaresma [Wed, 2 Mar 2022 00:45:27 +0000 (00:45 +0000)]
buildhistory.bbclass: create the buildhistory directory when needed

When the BUILDHISTORY_RESET is enabled we need to move the
content from BUILDHISTORY_DIR to BUILDHISTORY_OLD_DIR but
when we start a clean build in the first run we don't have the
BUILDHISTORY_DIR so the move of files will fail.

| ERROR: Command execution failed: Traceback (most recent call last):
|  File "/xxx/poky/bitbake/lib/bb/command.py", line 110, in runAsyncCommand
|    commandmethod(self.cmds_async, self, options)
|  File "/xxx/poky/bitbake/lib/bb/command.py", line 564, in buildTargets
|    command.cooker.buildTargets(pkgs_to_build, task)
|  File "/xxx/poky/bitbake/lib/bb/cooker.py", line 1481, in buildTargets
|    bb.event.fire(bb.event.BuildStarted(buildname, ntargets), self.databuilder.mcdata[mc])
|  File "/xxx/home/builder/src/base/poky/bitbake/lib/bb/event.py", line 214, in fire
|    fire_class_handlers(event, d)
|  File "/xxx/poky/bitbake/lib/bb/event.py", line 121, in fire_class_handlers
|    execute_handler(name, handler, event, d)
|  File "/xxx/poky/bitbake/lib/bb/event.py", line 93, in execute_handler
|    ret = handler(event)
|  File "/xxx/poky/meta/classes/buildhistory.bbclass", line 919, in buildhistory_eventhandler
|    entries = [ x for x in os.listdir(rootdir) if not x.startswith('.') ]
| FileNotFoundError: [Errno 2] No such file or directory: '/xxx/buildhistory'

Signed-off-by: Jose Quaresma <quaresma.jose@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
3 years agorootfs-postcommands: amend systemd_create_users add user to group check
Tean Cunningham [Tue, 1 Mar 2022 21:25:39 +0000 (14:25 -0700)]
rootfs-postcommands: amend systemd_create_users add user to group check

Currently when adding a user to a group ('m' type), the conditional
check to only create a user/group if it does not exist always resolves
to true. This causes a build exit failure if the user and/or group
defined in the sysusers configuration file were already created prior to
the execution of systemd_create_users().

This logic has been updated to instead fail silently (consistent with
'u' and 'g' type). Additionally, if a user doesn't exist it will be
created without the default group.

Signed-off-by: Tean Cunningham <tean.cunningham@digi.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
3 years agolicense: Rework INCOMPATIBLE_LICENSE wildcard handling
Richard Purdie [Mon, 28 Feb 2022 15:40:32 +0000 (15:40 +0000)]
license: Rework INCOMPATIBLE_LICENSE wildcard handling

The current wildcard handling is badly documented and inconsistently
used and understood.

Forcing users to have to use "GPL-3.0-only GPL-3.0-or-later" whilst
explict is not very user friendly. Equally, using the current wildcards
is ambigious. This supports pre-defined expansions only and at least makes
it clear what GPL-3.0* means (it doesn't include the exception licenses).

This is hopefully an acceptable compromise between literal meaning and
having something usable.

Non-SPDX forms of license in this field have been dropped and errors are
shown for unsupported expansions and unsupported old style license terms.

Users need to carefully consider how to migrate to the new syntax but
the meaning should be well defined and clear from here forward.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
3 years agolicense/insane: Show warning for obsolete license usage
Richard Purdie [Mon, 28 Feb 2022 15:20:59 +0000 (15:20 +0000)]
license/insane: Show warning for obsolete license usage

We want to use SPDX identifiers in LICENSE variables. There is now a
conversion script to make most of the translations. Add a list of
strings which have been replaced so we can show warnings to users
if they're still used anywhere.

Add checks to the package as insane check. This is currently a warning
by default but can be turned off or made an error as per the other standard
checks.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
3 years agobase/license: Rework INCOMPATIBLE_LICENSE variable handling
Saul Wold [Thu, 24 Feb 2022 01:26:59 +0000 (17:26 -0800)]
base/license: Rework INCOMPATIBLE_LICENSE variable handling

This re-writes the INCOMPATIBLE_LICENSE checking code to replace
the WHITELIST_<lic> with
INCOMPATIBLE_LICENSE_EXCEPTIONS = '<pkg>:<lic> <pkg>:<lic> ...'

This initial change leaves most of the code structure in place,
but the code in base.bbclass needs to be re-written to make
the check more consistent around packages (PKGS) and not recipe
names (PN). This also is taking into account the changes for SPDX
licenses.

The aim is to provide a mode consistent variable where the variable
name is known and can easily be queried.

Signed-off-by: Saul Wold <saul.wold@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
3 years agopip_install_wheel: improve wheel handling
Konrad Weihmann [Wed, 2 Mar 2022 09:18:22 +0000 (10:18 +0100)]
pip_install_wheel: improve wheel handling

- replace python3 prefix when guessing the wheel name
  as there are still plenty of recipes out there that do use
  python3 prefixes
- remove all previously generated wheels matching the glob
  to avoid installing any outdated blob via cleandirs
  in setuptools3 class.
  Unfortunetaly proposed dist-dir or bdist-dir are not
  respected by setuptools, likely due because they
  are overridable by the setup script
- don't use PV in glob, as PV doesn't necessarily align with the
  version used inside of the setuptools configuration.
  this will avoid having the user set PYPA_WHEEL in a lot
  of recipes
- respect SETUPTOOLS_SETUP_PATH in PIP_INSTALL_DIST_PATH
  and use B as a fallback only (in case this class is inherited
  without setuptools3 class being there as well).
  recipes like python3-smbus run in a subfolder of the
  workspace and were failing in before this adjustment

Signed-off-by: Konrad Weihmann <kweihmann@outlook.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
3 years agopython3-flit-core: upgrade 3.6.0 to 3.7.1
Tim Orling [Tue, 1 Mar 2022 19:17:30 +0000 (11:17 -0800)]
python3-flit-core: upgrade 3.6.0 to 3.7.1

Version 3.7.1
* Fix building packages which need execution to get the version number,
  and have a relative import in __init__.py (:ghpull:`531`).

Version 3.7
* Support for :ref:`external data files <pyproject_toml_external_data>`
  such as man pages or Jupyter extension support files (:ghpull:`510`).
* Project names are now lowercase in wheel filenames and .dist-info folder
  names, in line with the specifications (:ghpull:`498`).
* Improved support for :doc:`bootstrapping <bootstrap>` a Python environment,
  e.g. for downstream packagers (:ghpull:`511`). flit_core.wheel is usable
  with python -m to create wheels before the build tool is available, and
  flit_core sdists also include a script to install itself from a wheel
  before installer is available.
* Use newer importlib APIs, fixing some deprecation warnings (:ghpull:`499`).

Signed-off-by: Tim Orling <tim.orling@konsulko.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
3 years agopython3-tomli: inherit flit_core
Tim Orling [Tue, 1 Mar 2022 16:11:42 +0000 (08:11 -0800)]
python3-tomli: inherit flit_core

Drop the setup.py workaround as it is no longer needed.

Signed-off-by: Tim Orling <tim.orling@konsulko.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
3 years agorecipetool/devtool: Further SPDX identifier cleanups
Richard Purdie [Wed, 2 Mar 2022 11:23:21 +0000 (11:23 +0000)]
recipetool/devtool: Further SPDX identifier cleanups

Some of these are hard to know what to do with since the original source
files for the checksum aren't present. The safe option is to use "-only"
as often the main license is ambiguous and the source files themselves
determine the "or-later" possibility. The "-only" option therefore is
realistically what we need to use in this code.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
3 years agocups: Add --with-dbusdir to EXTRA_OECONF for deterministic build
Robert Yang [Wed, 2 Mar 2022 07:12:58 +0000 (23:12 -0800)]
cups: Add --with-dbusdir to EXTRA_OECONF for deterministic build

The configure checks /etc/dbus-1 and set DBUSDIR is null:
        if test -d /etc/dbus-1 -a "x$DBUSDIR" = x; then
            DBUSDIR="/etc/dbus-1"
        fi

So that the build resutl would be different w/o /etc/dbus-1:

/etc/dbus-1/system.d/cups.conf (Only exists when DBUSDIR is set)

Add --with-dbusdir to EXTRA_OECONF to fix the issue

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
3 years agoquilt: Disable external sendmail for deterministic build
Robert Yang [Wed, 2 Mar 2022 07:12:56 +0000 (23:12 -0800)]
quilt: Disable external sendmail for deterministic build

Otherwise, the build results would be different w/o host's /usr/sbin/sendmail:
1) The /usr/share/quilt/compat/sendmail will be genrated if no
   /usr/sbin/sendmail on host
2) No /usr/share/quilt/compat/sendmail if host's has /usr/sbin/sendmail

Use --without-sendmail to make it always generate /usr/share/quilt/compat/sendmail.

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
3 years agoperl: Makefile.PL: Fix _PATH_LOG for deterministic
Robert Yang [Wed, 2 Mar 2022 06:34:50 +0000 (22:34 -0800)]
perl: Makefile.PL: Fix _PATH_LOG for deterministic

It checks host's path such as /dev/log and uses it, this doesn't make sense for
cross build, and it causes undeterministic, for example, the contianer os
usually doesn't have /dev/log which leads to a different build result since
other host usually has /dev/log, so make it always use the default value to fix
the issue.

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
3 years agoflit_core: export do_configure and do_compile
Tim Orling [Tue, 1 Mar 2022 16:11:24 +0000 (08:11 -0800)]
flit_core: export do_configure and do_compile

The class should export the tasks so they can be extended or overriden
elsewhere (like what setuptools3.bbclass has).

Signed-off-by: Tim Orling <tim.orling@konsulko.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
3 years agoOELAYOUT_ABI: bump, avoid tmp/ breakage by removing old cross manifests
Alexander Kanavin [Sat, 26 Feb 2022 15:02:17 +0000 (16:02 +0100)]
OELAYOUT_ABI: bump, avoid tmp/ breakage by removing old cross manifests

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
3 years agosstate: do not add TARGET_ARCH to pkgarch for cross recipes.
Alexander Kanavin [Sat, 26 Feb 2022 15:02:16 +0000 (16:02 +0100)]
sstate: do not add TARGET_ARCH to pkgarch for cross recipes.

This is redundant (target arch is already in PN), and breaks
compiling a cross-canadian toolchain, as that needs populating the
sysroot with two different native-hosted toolchains built from
cross recipes. Inserting TARGET_ARCH allows only one or the other.

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
3 years agoscripts: Various typo/grammar/punctuation fixes
Robert P. J. Day [Sun, 27 Feb 2022 10:53:05 +0000 (05:53 -0500)]
scripts: Various typo/grammar/punctuation fixes

Among other things, fix misspellings of:

  - absolute
  - deprecated
  - suitable
  - handle

and a bunch of other things.

Signed-off-by: Robert P. J. Day <rpjday@crashcourse.ca>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
3 years agocoreutils: Disable statx for native build
Robert Yang [Tue, 1 Mar 2022 09:13:47 +0000 (01:13 -0800)]
coreutils: Disable statx for native build

The statx requires glibc >= 2.28 and linux kernel >= 4.11, but coreutils's
configure only checks glibc compatibility for statx syscall but fail to check
kernel support, e.g.:

RedHat Enterprise Linux Server 7.6 (Maipo)
Host kernel: 3.10.0-1127.8.2.el7.x86_64
Docker OS: Ubuntu 20.04.1 LTS

$ bitbake coreutils-native
find the binary ls and run it as "ls -l ."
The result is something like: "?????????. ? ? ? ? ? foo"

This is because glibc is 2.31 (Ubunut 20.04 in docker) which has statx,
but host's kernel is 3.10.0 (CentOS 7) which doesn't support statx.

Disable statx for native build to fix the problem.

Original from: Davi Poyastro <davi.poyastro@nokia.com>
Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
3 years agoicecc.bbclass: enable networking in all tasks
Jose Quaresma [Wed, 16 Feb 2022 23:26:54 +0000 (23:26 +0000)]
icecc.bbclass: enable networking in all tasks

The icecc.bbclass needs network access to work properly.

Currently I build with icecc inside a container with network isolation and
my icecc daemon runs outside of the build container in my host.
The only thing I need to do for using the icecc inside my build container is
mounting the unix socket /var/run/icecc/iceccd.socket inside the container.

I think we need something like this mount functionality to have access to
some sockets connections inside the tasks that runs on the new namespace
created with unshare system call.

This patch is not a the real solution for the problem and is more like
an hack so we can use the icecc.bbclass again.

Signed-off-by: Jose Quaresma <quaresma.jose@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
3 years agolibarchive: upgrade 3.5.3 -> 3.6.0
Randy MacLeod [Tue, 1 Mar 2022 22:44:16 +0000 (14:44 -0800)]
libarchive: upgrade 3.5.3 -> 3.6.0

Signed-off-by: Randy MacLeod <Randy.MacLeod@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
3 years agosysstat: upgrade 12.4.4 -> 12.4.5
wangmy [Tue, 1 Mar 2022 13:07:54 +0000 (21:07 +0800)]
sysstat: upgrade 12.4.4 -> 12.4.5

Changelog:
=========
* sar/sadf: Make sure that datafiles with unknown activities can
  be read by sar and sadf.
* sar/sadf: Don't reallocate buffers for activities not present
  in file.
* sar: Make sure that all buffers are copied in copy_structures()
  function.

Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
3 years agosqlite3: upgrade 3.37.2 -> 3.38.0
wangmy [Tue, 1 Mar 2022 13:07:53 +0000 (21:07 +0800)]
sqlite3: upgrade 3.37.2 -> 3.38.0

Remove invalid PACKAGECONFIG : json1

Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
3 years agowget: upgrade 1.21.2 -> 1.21.3
wangmy [Tue, 1 Mar 2022 13:07:55 +0000 (21:07 +0800)]
wget: upgrade 1.21.2 -> 1.21.3

Changelog:
=========
** Fix computation of total bytes downloaded during FTP trasnfers (#61277)
** Add option to select TLS 1.3 on the command line
** Fix HSTS build issues on some 64-bit big-endian systems
** Hide password during status report in --no-verbose
** Remove a sprurious print statement that showed up even during --quiet
** Some more cleanups and bug-fixes

Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
3 years agoovmf: upgrade 202111 -> 202202
wangmy [Tue, 1 Mar 2022 13:07:52 +0000 (21:07 +0800)]
ovmf: upgrade 202111 -> 202202

0001-Fix-VLA-parameter-warning.patch
removed since it's included in 202202

Changelog:
=========
OvmfPkg Add new target for Cloud Hypervisor
Add TDVF to OvmfPkg
Add new APIs to UefiCpuPkg/UefiCpuLib
Add AMD Secure Nested Paging Support
Add SSDT PCI generator in DynamicTablesPkg
Support ACPI 6.4 PPTT changes
Add FdtHwInfoParser library
Add DynamicPlatRepo library
Make package and platform builds reproducible across source format changes
Add Uncrustify CI Plugin
Apply uncrustify changes to all package C and H files

Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
3 years agomesa: upgrade 21.3.6 -> 21.3.7
wangmy [Tue, 1 Mar 2022 11:59:09 +0000 (19:59 +0800)]
mesa: upgrade 21.3.6 -> 21.3.7

Changelog:
=========
Bug fixes
---------
lavapipe: dEQP-VK.spirv_assembly.instruction.compute.float16.arithmetic_3.step fails
ANV: Bad output from TransformFeedback . Regression from Mesa 21. Something to do with VB+XFB -> VB+XFB dependency?

Changes
-------
pan/bi: Avoid *FADD.v2f16 hazard in optimizer
pan/bi: Avoid *FADD.v2f16 hazard in scheduler
pan/bi: Lower swizzles on CSEL.i32/MUX.i32
panvk: Use more reliable assert for UBO pushing
radv: Fix preamble argument order.
ir3/spill: Fix simplify_phi_nodes with multiple loop nesting
lavapipe: fix sampler + sampler view leaks.
lavapipe: reference gallium fences correctly.
crocus: fix leak on gen4/5 stencil fallback blit path.
i915g: Initialize the rest of the "from_nir" temporary VS struct.
pick_status.json: Update to dabba7d7263be6ffb6f3676465e92c65952fa824
pick_status.json: Mark b07372312d7053f2ef5c858ceb1fbf9ade5e7c52 as denominated
gallivm/nir: Call nir_lower_bool_to_int32 after nir_opt_algebraic_late
nir: All set-on-comparison opcodes can take all float types
intel/fs: Don't optimize out 1.0*x and -1.0*x
spriv: Produce correct result for GLSLstd450Step with NaN
spirv: Produce correct result for GLSLstd450Modf with Inf
spirv: Produce correct result for GLSLstd450Tanh with NaN
nir: Properly handle various exceptional values in frexp
nir: Produce correct results for atan with NaN
nir: Add missing dependency on nir_opcodes.py
anv: Call vk_command_buffer_finish if create fails
dri: avoid NULL deref of DrawBuffer on flush
nir: fix lower_memcpy
anv/genxml/intel/fs: fix binding shader record entry
anv: don't set color state when input state was requested
ac/surface: add more elements to meta equations because HTILE can use them
lavapipe: use util_pack_color_union() for generating clear colors
aux/draw: fix llvm tcs lane vec generation
zink: always set VkPipelineMultisampleStateCreateInfo::pSampleMask
zink: always invalidate streamout counter buffer if not resuming
iris: Don't fast clear with the view format
r300: fix transformation of abs modifiers with negate
radeonsi: workaround Specviewperf13 Catia hang on GFX9
radeonsi: fix depth stencil multi sample texture blit
glx: fix pbuffer refcount init
radv/winsys: fix initializing debug/perftest options if multiple instances
intel/genxml: add PIPE_CONTROL field for L3 read only cache invalidation
anv: invalidate L3 read only cache when VF cache is invalidated
iris: invalidate L3 read only cache when VF cache is invalidated
iris: fix a leak on surface states
mesa/st: always use DXT5 when transcoding ASTC format
tegra: Use private reference count for sampler views
tegra: Use private reference count for resources
radv: Disable IB2 on compute queues.
venus: properly destroy deferred ahb image before real image creation

Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
3 years agolibva: upgrade 2.13.0 -> 2.14.0
wangmy [Tue, 1 Mar 2022 11:53:53 +0000 (19:53 +0800)]
libva: upgrade 2.13.0 -> 2.14.0

Changelog:
=========
* add: Add av1 encode interfaces
* add: VA/X11 VAAPI driver mapping for crocus DRI driver
* doc: Add description of the fd management for surface importing
* ci: fix freebsd build
* meson: Copy public headers to build directory to support subproject

Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
3 years agolibsolv: upgrade 0.7.20 -> 0.7.21
wangmy [Tue, 1 Mar 2022 11:53:52 +0000 (19:53 +0800)]
libsolv: upgrade 0.7.20 -> 0.7.21

Changelog:
=========
- selected bug fixes:
  * fix segfault on conflict resolution when using bindings
  * fix split provides not working if the update includes a forbidden
    vendor change
- new features:
  * support strict repository priorities
    new solver flag: SOLVER_FLAG_STRICT_REPO_PRIORITY
  * support zstd compressed control files in debian packages
  * add an ifdef allowing to rename Solvable dependency members
    ("requires" is a keyword in C++20)
  * support setting/reading userdata in solv files
    new functions: repowriter_set_userdata, solv_read_userdata
  * support queying of the custom vendor check function
    new function: pool_get_custom_vendorcheck
  * support solv files with an idarray block
  * allow accessing the toolversion at runtime

Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
3 years agolibjpeg-turbo: upgrade 2.1.2 -> 2.1.3
wangmy [Tue, 1 Mar 2022 11:53:51 +0000 (19:53 +0800)]
libjpeg-turbo: upgrade 2.1.2 -> 2.1.3

License-Update: year updated to 2022

Changelog:
==========
1. Fixed a regression introduced by 2.0 beta1[7] whereby cjpeg compressed PGM
input files into full-color JPEG images unless the '-grayscale' option was
used.

2. cjpeg now automatically compresses GIF and 8-bit BMP input files into
grayscale JPEG images if the input files contain only shades of gray.

3. The build system now enables the intrinsics implementation of the AArch64
(Arm 64-bit) Neon SIMD extensions by default when using GCC 12 or later.

4. Fixed a segfault that occurred while decompressing a 4:2:0 JPEG image using
the merged (non-fancy) upsampling algorithms (that is, with
'cinfo.do_fancy_upsampling' set to 'FALSE') along with 'jpeg_crop_scanline()'.
Specifically, the segfault occurred if the number of bytes remaining in the
output buffer was less than the number of bytes required to represent one
uncropped scanline of the output image.  For that reason, the issue could only
be reproduced using the libjpeg API, not using djpeg.

Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
3 years agoccache: upgrade 4.5.1 -> 4.6
wangmy [Tue, 1 Mar 2022 11:52:50 +0000 (19:52 +0800)]
ccache: upgrade 4.5.1 -> 4.6

License-Update:
 year updated to 2022
 version of library updated

Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
3 years agodbus: upgrade 1.12.20 -> 1.12.22
wangmy [Tue, 1 Mar 2022 11:52:51 +0000 (19:52 +0800)]
dbus: upgrade 1.12.20 -> 1.12.22

Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
3 years agoat: upgrade 3.2.4 -> 3.2.5
wangmy [Tue, 1 Mar 2022 11:52:49 +0000 (19:52 +0800)]
at: upgrade 3.2.4 -> 3.2.5

Changelog:
=========
Fix: atd forgets to run a job in the queue
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1004972

Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
3 years agopython3-hypothesis: upgrade 6.37.2 -> 6.39.0
wangmy [Tue, 1 Mar 2022 09:41:44 +0000 (17:41 +0800)]
python3-hypothesis: upgrade 6.37.2 -> 6.39.0

Changelog:
=========
This release improves Hypothesis' handling of positional-only arguments,
which are now allowed @st.composite strategies.

On Python 3.8 and later, the first arguments to builds() and from_model()
are now natively positional-only. In cases which were already errors, the
TypeError from incorrect usage will therefore be raises immediately when
the function is called, rather than when the strategy object is used.

Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
3 years agopython3-dbusmock: upgrade 0.25.0 -> 0.26.1
wangmy [Tue, 1 Mar 2022 09:41:43 +0000 (17:41 +0800)]
python3-dbusmock: upgrade 0.25.0 -> 0.26.1

Changelog from 0.25.0 to 0.26.1:
==========
- logind template: Add locking API
- bluez5 template: Add RemoveDevice() and RemoveAdapterWithDevices() methods,
  fix properties
- Documentation improvements, particularly wrt. raising errors
- Fix README content type to Markdown, to fix releasing to PyPi

Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
3 years agorepo: upgrade 2.21 -> 2.22
Changhyeok Bae [Mon, 28 Feb 2022 23:56:42 +0000 (23:56 +0000)]
repo: upgrade 2.21 -> 2.22

Signed-off-by: Changhyeok Bae <changhyeok.bae@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
3 years agonghttp2: upgrade 1.46.0 -> 1.47.0
wangmy [Mon, 28 Feb 2022 14:05:12 +0000 (22:05 +0800)]
nghttp2: upgrade 1.46.0 -> 1.47.0

Changelog:
=========
lib: Fix decoder table size update (GH-1667)
lib: chore: fix -Wunreachable-code-return (GH-1625)
build: Make Docker speak HTTP/3 (GH-1657)
build: Remove SPDY option for CMake (GH-1665)
build: cmake: Disable libbpf build by default
doc: Fix typos (GH-1668)
doc: Update nghttp2.pyx (GH-1666)
h2load: Handle EAGAIN/EWOULDBLOCK from sendmsg
h2load: allow setting max frame size for h2load (GH-1640)
nghttpx: Add --require-http-scheme option
nghttpx: Add support QUIC BBR2
nghttpx: Bump libbpf to v0.7.0 and turn on all strict features
nghttpx: Change qlog file extension to .sqlog
nghttpx: Fix bug that h3 stream ends prematurely
nghttpx: Fix the issue that forwarded h3 GET request always has chunked TE
nghttpx: Handle EAGAIN/EWOULDBLOCK from sendmsg
nghttpx: Send and receive ECN in QUIC packets
nghttpx: Set IP_PMTUDISC_DO explicitly
nghttpx: Support h3 trailer fields
nghttpx: fix quotes in --altsvc example (GH-1643)
nghttpx: shrpx: make nghttpx -v show ngtcp2 and nghttp3 version as well (GH-1636)
third-party: Bump llhttp to v6.0.6

Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
3 years agolibgit2: upgrade 1.4.1 -> 1.4.2
wangmy [Mon, 28 Feb 2022 14:05:11 +0000 (22:05 +0800)]
libgit2: upgrade 1.4.1 -> 1.4.2

This is a bugfix release with the following changes:
====================================================
remote: do store the update_tips callback error value
win32: find_system_dirs does not return GIT_ENOTFOUND

Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
3 years agoell: upgrade 0.48 -> 0.49
wangmy [Mon, 28 Feb 2022 14:05:10 +0000 (22:05 +0800)]
ell: upgrade 0.48 -> 0.49

Changelog:
==========
 Fix issue with multiple offers from the same DHCP server.
 Fix issue with Base64 decoding and bytes consumed validation.

Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
3 years agoinsane.bbclass: Update insane.bbclass to work on FIPS enabled hosts
Mark Hatle [Tue, 1 Mar 2022 01:37:26 +0000 (19:37 -0600)]
insane.bbclass: Update insane.bbclass to work on FIPS enabled hosts

hashlib.md5() is not permitted on a FIPS enabled host system.  This is due
to md5 not being an approved hash algorithm.

Instead use:
 hashlib.new('MD5', usedforsecurity=False)

This is allowed, as it's clear the hash is used for a non-security purpose.

Using an md5 to identify when a license has changed is permitted, as we're
not using it for file integrity.

Signed-off-by: Mark Hatle <mark.hatle@xilinx.com>
Signed-off-by: Mark Hatle <mark.hatle@kernel.crashing.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
3 years agometa, meta-selftest: Replace more non-SPDX license identifiers
Peter Kjellerstedt [Sun, 27 Feb 2022 18:21:36 +0000 (19:21 +0100)]
meta, meta-selftest: Replace more non-SPDX license identifiers

In commit ceda3238 (meta/meta-selftest/meta-skeleton: Update LICENSE
variable to use SPDX license identifiers) all LICENSE variables were
updated to only use SPDX license identifiers.

This does the same for comments and other variables where it is
appropriate to use the official SPDX license identifiers. There are
still references to, e.g., "GPLv3", but they are then typically in
descriptive text where they refer to the license in a generic sense.

Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
3 years agorecipetool: Use SPDX license identifiers
Peter Kjellerstedt [Sun, 27 Feb 2022 18:21:35 +0000 (19:21 +0100)]
recipetool: Use SPDX license identifiers

There are still a couple of cases where the license may be set as, e.g.,
"GPL" or "GPL-2.0" since there is not enough information to decide the
actual SPDX license. It is then assumed that the developer will have to
correct the information.

Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
3 years agorecipetool/create_buildsys_python: Add support for more known licenses
Peter Kjellerstedt [Sun, 27 Feb 2022 18:21:34 +0000 (19:21 +0100)]
recipetool/create_buildsys_python: Add support for more known licenses

Add all OSI approved licenses from https://pypi.org/classifiers/. Also
add support for Other/Proprietary (Proprietary) and Public Domain (PD).

Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
3 years agoselftest: recipetool: Correct the URI for socat
Peter Kjellerstedt [Sun, 27 Feb 2022 18:21:33 +0000 (19:21 +0100)]
selftest: recipetool: Correct the URI for socat

The URI to the socat tarball used in the
recipetool.RecipetoolCreateTests.test_recipetool_create_simple test has
been moved to an "Archive" directory.

Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
3 years agodefault-distrovars.inc: Remove the empty default for WHITELIST_GPL-3.0
Peter Kjellerstedt [Sun, 27 Feb 2022 18:21:32 +0000 (19:21 +0100)]
default-distrovars.inc: Remove the empty default for WHITELIST_GPL-3.0

There is no reason to set an empty default for it, while not doing it
for all other potential WHITELIST_* variables. The reason it was set
here is a leftover from before when it was actually set to a value.

Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
3 years agomutlilib: Handle WHITELIST_GPL-3.0 being unset
Richard Purdie [Mon, 28 Feb 2022 15:45:43 +0000 (15:45 +0000)]
mutlilib: Handle WHITELIST_GPL-3.0 being unset

The code doesn't work if the variable is unset, fix that.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
3 years agoinitramfs-framework: Add overlayroot module
Alejandro Hernandez Samaniego [Sat, 29 Jan 2022 19:48:39 +0000 (12:48 -0700)]
initramfs-framework: Add overlayroot module

When installed, this module mounts a read-write (RW) overlay on
top of a root filesystem, which is kept read-only (RO), free
from modifications by the user, this might prove to be useful
if we want to access or restore the original unmodified rootfs.

The existing overlay-etc.bbclass does something similar, it
mounts an overlay on top of the /etc directory, however doing
the same for root causes the original root to be inaccessible
once the system is booted, hence why this module is added to
the initramfs boot flow, allowing us to mount the RW overlay,
while keeping the original rootfs mounted at /rofs once the
system finishes booting. This script is loosely based on that
class.

This module requires rootrw=<foo> to be passed as a kernel
parameter to specify the device/partition to be used as RW by the
overlay and has a dependency on overlayfs support being present
in the running kernel.

It does not require the read-only IMAGE_FEATURE to be enabled.

The module needs to be executed after the initramfs-module-rootfs
since it relies on it to mount the filesystem at initramfs startup
but before the finish module which normally switches root.
After overlayroot is executed the usual boot flow continues from
the real init process.

If something goes wrong while running this module, the rootfs
is still mounted RO (with no overlay) and the finish module is
executed to continue booting normally.

Its worth noting that, on purpose, this isnt installed by default
on any images that use initramfs-framework to keep the boot flow
unmodified, only when a user manually requests to install it,
then it becomes functional.

Signed-off-by: Alejandro Enedino Hernandez Samaniego <alhe@linux.microsoft.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
3 years agoflit_core: inherit setuptools3-base
Tim Orling [Fri, 25 Feb 2022 23:58:34 +0000 (15:58 -0800)]
flit_core: inherit setuptools3-base

This helps bridge the old setuptools3 behavior.

FILES:${PN} has sane defaults in setuptools3-base

Signed-off-by: Tim Orling <tim.orling@konsulko.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
3 years agomusl: Update to latest master
Khem Raj [Fri, 25 Feb 2022 18:09:17 +0000 (10:09 -0800)]
musl: Update to latest master

brings in these fixes

  * f8bdc304 fix spurious failures by fgetws when buffer ends with partial character
  * 5690668a add missing strerror text for key management
  * 3b7b4155 fix out-of-bound read processing time zone data with distant-past dates
  * 75b3412f fix potentially wrong-sign zero in cproj functions at infinity
  * 52f0deb9 make fseek detect and produce an error for invalid whence arguments
  * cbacd638 add SEEK_DATA and SEEK_HOLE to unistd.h

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
3 years agolicense.py: Correct a comment
Peter Kjellerstedt [Fri, 25 Feb 2022 17:03:49 +0000 (18:03 +0100)]
license.py: Correct a comment

Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
3 years agosystemd: move systemd shared library into its own package
Stefan Herbrechtsmeier [Fri, 25 Feb 2022 15:54:59 +0000 (16:54 +0100)]
systemd: move systemd shared library into its own package

Move the systemd shared library (libsystemd-shared.so) into its own
package to prevent a runtime dependency from udev package to systemd
package and thereby to a second init manager.

Signed-off-by: Stefan Herbrechtsmeier <stefan.herbrechtsmeier@weidmueller.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
3 years agozip: modify when match.S is built
Joe Slater [Fri, 25 Feb 2022 15:48:08 +0000 (07:48 -0800)]
zip: modify when match.S is built

Use the correct $CPP to test if *.S are buildable,
but do not build match.S because it is not PIC code.

Signed-off-by: Joe Slater <joe.slater@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
3 years agopython3-git: upgrade 3.1.26 -> 3.1.27
wangmy [Wed, 23 Feb 2022 07:44:55 +0000 (15:44 +0800)]
python3-git: upgrade 3.1.26 -> 3.1.27

Changelog:
=========
-Reduced startup time due to optimized imports.
-Fix a vulenerability that could cause great slowdowns when encountering long
 remote path names when pulling/fetching.

Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
3 years agoRevert "cve-check: add lockfile to task"
Ross Burton [Wed, 23 Feb 2022 12:54:32 +0000 (12:54 +0000)]
Revert "cve-check: add lockfile to task"

Now that all of the functions in cve-check open the database read-only,
we can remove this lockfile.

This means cve-check can run in parallal again, improving runtimes
massively.

This reverts commit d55fbf4779483d2cfd71df78d0f733b599fef739.

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
3 years agokernel-devsrc: do not copy Module.symvers file during install
Oleksandr Ocheretnyi [Fri, 25 Feb 2022 15:17:15 +0000 (07:17 -0800)]
kernel-devsrc: do not copy Module.symvers file during install

When CONFIG_MODULES is not enabled in kernel config - Module.symvers
generation is not done, which causes the file not to be created.

This fails later in do_install() due to the fact that copy
command in executed for non-existing Module.symvers file.

Check for Module.symvers existence before copy command in executed.

Signed-off-by: Oleksandr Ocheretnyi <oocheret@cisco.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
3 years agopip_install_wheel: Use BPN instead of PN to construct PYPI_PACKAGE default
Richard Purdie [Sat, 26 Feb 2022 08:20:25 +0000 (08:20 +0000)]
pip_install_wheel: Use BPN instead of PN to construct PYPI_PACKAGE default

This fixes the name for native and nativesdk recipes.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
3 years agopip_install_wheel: improved wheel filename guess
Tim Orling [Fri, 25 Feb 2022 04:03:31 +0000 (20:03 -0800)]
pip_install_wheel: improved wheel filename guess

Rather than only use PYPI_PACKAGE as a guess, fall back on PN for cases
where a recipe does not inherit pypi.

Wheels can only have alphanumeric characters in the 'distribution'
name [1]. Any other characters are replaced with an underscore. Provide a
function to replace dash with underscore.

[1] https://www.python.org/dev/peps/pep-0491/#escaping-and-unicode

Signed-off-by: Tim Orling <tim.orling@konsulko.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
3 years agoinsane: use HOST_ variables, not TARGET_ to determine the cross system
Alexander Kanavin [Thu, 24 Feb 2022 15:03:02 +0000 (16:03 +0100)]
insane: use HOST_ variables, not TARGET_ to determine the cross system

Almost everywhere those are the same, except when making a cross toolchain
where HOST_ is where it's going to run, and TARGET_ is what it's going to
produce.

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
3 years agobase/staging: use HOST_PREFIX, not TARGET_PREFIX
Alexander Kanavin [Thu, 24 Feb 2022 15:03:00 +0000 (16:03 +0100)]
base/staging: use HOST_PREFIX, not TARGET_PREFIX

This matters when cross-compiling a cross-toolchain:
we need to specify the system where the toolchain
will run, not the system it will produce output for.

For everything else, HOST and TARGET are the same.

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
3 years agoselftest: drop distutils3 test from recipetool
Tim Orling [Fri, 25 Feb 2022 05:30:51 +0000 (21:30 -0800)]
selftest: drop distutils3 test from recipetool

The distutils*.bbclasses have been moved from oe-core to
meta-python, so drop test_recipetool_create_python3_distutils
test case.

[YOCTO #14610]

Signed-off-by: Tim Orling <tim.orling@konsulko.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
3 years agodisutils*.bbclasses: move to meta-python
Tim Orling [Fri, 25 Feb 2022 05:30:50 +0000 (21:30 -0800)]
disutils*.bbclasses: move to meta-python

distutils has been deprecated in Python 3.10 and will be removed in
Python 3.12 (predicted release date October 2023). For now, move these
classes from oe-core to meta-python to allow users to migrate.

[YOCTO #14610]

Signed-off-by: Tim Orling <tim.orling@konsulko.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
3 years agoasciidoc: upgrade 10.1.1 -> 10.1.3
wangmy [Wed, 23 Feb 2022 09:08:13 +0000 (17:08 +0800)]
asciidoc: upgrade 10.1.1 -> 10.1.3

Bugfix:
========
Add missing py files to dist archives
Fix setup.py including packages outside of asciidoc

Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
3 years agopython3-markupsafe: upgrade 2.0.1 -> 2.1.0
wangmy [Wed, 23 Feb 2022 07:44:57 +0000 (15:44 +0800)]
python3-markupsafe: upgrade 2.0.1 -> 2.1.0

Changelog:
==========
Drop support for Python 3.6. :pr:'262'
Remove soft_unicode, which was previously deprecated. Use soft_str instead. :pr:'261'
Raise error on missing single placeholder during string interpolation. :issue:'225'
Disable speedups module for GraalPython. :issue:'277'

Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
3 years agopython3-hypothesis: upgrade 6.36.2 -> 6.37.2
wangmy [Wed, 23 Feb 2022 07:44:56 +0000 (15:44 +0800)]
python3-hypothesis: upgrade 6.36.2 -> 6.37.2

This patch fixes a bug in stateful testing, where returning a single value
wrapped in :func:'~hypothesis.stateful.multiple' would be printed such that
the assigned variable was a tuple rather than the single element

Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
3 years agopython3-nose: drop recipe
Tim Orling [Tue, 22 Feb 2022 19:16:58 +0000 (11:16 -0800)]
python3-nose: drop recipe

The code has not been touched since 2016 and numerous files still have
Python2 syntax code in them. This causes do_compile errors when
packaging a wheel (PEP-517 packaging).

Nothing in oe-core depends on python3-nose.

[YOCTO #14638]

Signed-off-by: Tim Orling <tim.orling@konsulko.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
3 years agopython3-packaging: inherit setuptools_build_meta
Tim Orling [Tue, 22 Feb 2022 19:16:57 +0000 (11:16 -0800)]
python3-packaging: inherit setuptools_build_meta

Upstream provides a pyproject.toml which declares the
setuptools.build_meta backend for PEP-517 packaging.

[YOCTO #14638]

Signed-off-by: Tim Orling <tim.orling@konsulko.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
3 years agopython3-mako: inherit setuptools_build_meta
Tim Orling [Tue, 22 Feb 2022 19:16:56 +0000 (11:16 -0800)]
python3-mako: inherit setuptools_build_meta

Upstream provides a pyproject.toml which declares the
setuptools.build_meta backend for PEP-517 packaging.

[YOCTO #14638]

Signed-off-by: Tim Orling <tim.orling@konsulko.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
3 years agopython3-dbusmock: set PIP_INSTALL_PACKAGE
Tim Orling [Tue, 22 Feb 2022 19:16:55 +0000 (11:16 -0800)]
python3-dbusmock: set PIP_INSTALL_PACKAGE

The name of the wheel as built by bdist_wheel is "python_dbusmock", set
PIP_INSTALL_PACKAGE appropriately.

[YOCTO #14638]

Signed-off-by: Tim Orling <tim.orling@konsulko.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
3 years agopython3-numpy: Fix pyc determinism issue
Richard Purdie [Thu, 24 Feb 2022 23:27:27 +0000 (23:27 +0000)]
python3-numpy: Fix pyc determinism issue

Using frozenset causes problems for pyc file determinism. For now remove
the problematic pyc file as we do in the main python3 recipe.

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