Richard Purdie [Wed, 10 May 2023 11:23:45 +0000 (12:23 +0100)]
qemu: Further updates to the ppc patch after upstream discussion
After someone tested real hardware, the patch needs tweaks to match the 3.0 ISA
behaviour. It won't change much from our perspective but may as well keep the
patch in sync.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Trevor Gamblin [Tue, 9 May 2023 15:55:26 +0000 (11:55 -0400)]
python3-calver: Add recipe
calver is "a setuptools extension for automatically defining your Python
package version as a calendar version." It is required for
python3-trove-classifiers (another new recipe), which in turn is
required for the upgrade of python3-hatchling from 1.13.0 to work.
Trevor Gamblin [Fri, 5 May 2023 18:51:21 +0000 (14:51 -0400)]
python3-trove-classifiers: Add recipe
python3-trove-classifiers is "Canonical source for classifiers on
PyPI.". It is required to update python3-hatchling from the current
version (1.13.0) in oe-core, and depends on python3-calver (another new
recipe). Also add ptests.
Signed-off-by: Trevor Gamblin <tgamblin@baylibre.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Zang Ruochen [Mon, 8 May 2023 02:12:56 +0000 (10:12 +0800)]
elfutils: upgrade 0.188 -> 0.189
Refresh the following patch.
0015-config-eu.am-do-not-use-Werror.patch
Remove the following patches as they have been fixed in the new version.
0001-PR29926-debuginfod-Fix-usage-of-deprecated-CURLINFO_.patch
0002-debuginfod-client-Use-CURLOPT_PROTOCOLS_STR-for-libc.patch
changelog:
Version 0.189 "Don't deflate!"
configure: eu-nm, eu-addr2line and eu-stack can provide demangled symbols
when linked with libstdc++. Use --disable-demangler to disable.
A new option --enable-sanitize-memory has been added for msan
sanitizer support.
libelf: elf_compress now supports ELFCOMPRESS_ZSTD when build against
libzstd
libdwfl: dwfl_module_return_value_location now returns 0 (no return type)
for DIEs that point to a DW_TAG_unspecified_type.
elfcompress: -t, --type= now support zstd if libelf has been build with
ELFCOMPRESS_ZSTD support.
backends: Add support for LoongArch and Synopsys ARCv2 processors.
Andrew Jeffery [Fri, 5 May 2023 13:19:54 +0000 (22:49 +0930)]
Revert "ipk: Decode byte data to string in manifest handling"
cf9df9e8d89f ("ipk: Decode byte data to string in manifest handling")
did a bit of least-effort fix to a string vs byte sequence issue in the
manifest handling. The approach was chosen as it localised the fix,
rather than having to analyse further call sites.
However since then f2167ae80258 ("package_manager/ipk: do not pipe
stderr to stdout") was applied, reworking the output handling from the
subcommand. dummy_bytes() now returns a string, so stop trying to decode
it.
Fixes: f2167ae80258 ("package_manager/ipk: do not pipe stderr to stdout") Cc: Curtis Meier <cmeier@us.ibm.com> Cc: Pam Eggler <eggler@us.ibm.com>
(From OE-Core rev: b61739554780d70307d2b6b37d2b3b1c7df93c77)
Signed-off-by: Andrew Jeffery <andrew@aj.id.au> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Ross Burton [Thu, 4 May 2023 13:10:09 +0000 (14:10 +0100)]
Revert "ffmpeg: move ffmpeg config into packageconfig"
There's very little reason to expose "build shared libraries", "build
position-independent code", or "enable threads" as recipe-specific
packageconfig options. Revert the commit which did this and explicitly
set the relevant options in EXTRA_OECONF.
This was causing:
ERROR: Nothing PROVIDES 'virtual/lib32-arm-distromllib32-linux-gnueabi-binutils' (but virtual:multilib:lib32:oe-core/meta/recipes-core/images/core-image-minimal.bb DEPENDS on or otherwise requires it). Close matches:
virtual/arm-distromllib32-linux-gnueabi-binutils
virtual/lib32-arm-distromllib32-linux-gnueabi-compilerlibs
virtual/lib32-arm-distromllib32-linux-gnueabi-go-runtime
ERROR: Required build target 'lib32-core-image-minimal' has no buildable providers.
Missing or unbuildable dependency chain was: ['lib32-core-image-minimal', 'virtual/lib32-arm-distromllib32-linux-gnueabi-binutils']
in cases where multilib and WIC were enabled at the same time
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Tim Orling [Wed, 3 May 2023 15:39:14 +0000 (08:39 -0700)]
libmodule-build-perl: upgrade 0.4232 -> 0.4234
* Skip t/pod_parser.t ptest since it is for testing
documentation and requires Pod::Parser for which
we do not have a recipe. Adding one does not make
much sense since Pod::Parser was dropped from
Perl > 5.31.1 in favor of Pod::Simple
https://metacpan.org/pod/Pod::Parser#DESCRIPTION
Changes:
https://metacpan.org/dist/Module-Build/changes
0.4234 - Fri 28 Apr 2023 10:46:26 CEST
- PodParser now respects =encoding directives
- Don't use libraries in t/bundled for Build.PL
- make_tarball: workaround for broken tar on Darwin
- Respect $Config{man1ext}/$Config{man3ext}
- Do not require a compiler if c_source is an empty list
Signed-off-by: Tim Orling <tim.orling@konsulko.com> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Armin Kuster [Wed, 3 May 2023 14:31:18 +0000 (10:31 -0400)]
os-release: Add CPE_NAME
Its time we add the CPE_NAME to os-release.
The vendor field is hardcoded to "openembedded" as it is the base
framework. We will use "DISTRO" to identify which variation of
openembedded is being used.
BSD-4-Clause is only applicable to the {PN}-doc package as when I
check for the source code I find below files which only uses the
license BSD-4-Clause
~/sources/libbsd$ grep -rl "All advertising materials mentioning features or use of this software" *|grep -v \.1|grep -v \.5|grep -v \.8 | sort
COPYING
man/arc4random.3bsd
~/sources/libbsd$ grep -rnB5 "BSD-4"
COPYING-9-Files:
COPYING-10- man/arc4random.3bsd
COPYING-11-Copyright:
COPYING-12- Copyright 1997 Niels Provos <provos@physnet.uni-hamburg.de>
COPYING-13- All rights reserved.
COPYING:14:License: BSD-4-clause-Niels-Provos
So other all PACKAGES should not contain the BSD-4-Clause
Randolph Sapp [Tue, 2 May 2023 16:56:12 +0000 (11:56 -0500)]
kernel-devicetree: allow specification of dtb directory
Fedora/Redhat and Arch are somewhat standardized on their dtb directory
structure. Let's add some flags to configure yocto to mimic that
behavior.
Add the following variables to the kernel class:
- KERNEL_DTBDEST (controls the destination directory for dtbs)
- KERNEL_DTBVENDORED (controls if vendor subdirectories are to
be respected)
Currently KERNEL_DTBDEST is expected to be a subdir of KERNEL_IMAGEDEST
and KERNEL_DTBVENDORED is expected to be "true"/"false". This only
applies to the package directory structure. The deploydir structure is
purposely left untouched for compatibility with existing recipes.
By default this is configured to behave the same as the current recipe
and produce a flat dtb directory at KERNEL_IMAGEDEST.
Markus Volk [Tue, 2 May 2023 15:56:57 +0000 (17:56 +0200)]
gtk4: update 4.10.0 -> 4.10.3
Overview of Changes in 4.10.3, 22-04-2023
=========================================
* Fix a popover positioning regression in 4.10.2
* Fix issues with slow loading files in the file chooser
Overview of Changes in 4.10.2, 21-04-2023
=========================================
* Fixed issues:
- Holding control to select multiple files broken in filechooser (#5669)
- Inspector crash (#5681)
- Listbase doesn't account for bottom padding in size_allocate_child (#5380)
- Leaking AT contexts (#5690)
- OpenGL / Windows: Crash when closing gtk4-widget-factory (#5685)
- GTK apps crash on startup when setting cursor-size to 0 on Wayland (#5700)
- Segmentation fault: gdk_wayland_toplevel_set_startup_id() needs to null-check
display->xdg_activation before using it (#5701)
- Possible use-after-free under gtk_scrolled_window_update_use_indicators() (#5684)
- Wrong error message in `gtk_init` (#5704)
- Segfault when scrolling after changing ListView model (#5763)
- Bluetooth panel from the Settings app: clicking in the "Downloads" link
no longer opens Nautilus (#5671)
- Broadway docs or code is broken (#5662)
- Disabled GtkPicture's are not properly themed (#5683)
- Setting CSS padding to a GtkTextView gives the context menu an offset (#5695)
- A11y: the Showing state is used only for windows (#5194)
- Gtk4 expander: CSS nodes mismatch code vs. documentation (#5723)
- Invoking gtk inspector on a folder results in a crash (#5729)
- Double tap requires very precise touch input (#5580)
- Name autocompletion dropdown in the GTK4 FileChooser's Save dialog gets
stuck, creates artifacts, jumps around (#5743)
- Links are not opened when xdg-desktop-portal OpenURI is not available (#5733)
- GtkSnapshot generates no nodes appending whitespace-only layouts (#5747)
* Translation updates
British English
Bulgarian
Chinese (China)
French
Indonesian
Korean
Russian
Serbian
Slovenian
Turkish
Overview of Changes in 4.10.1, 14-03-2023
=========================================
* GtkFileChooser
- Improve search performance
- Be safe against pathless files
- Fix memory leaks
- Only show local files in recent files
- Show most recent files first
- Make files non-selectable in selet_folder mode
insane.bbclass: simplify exceptions for 32 bit time API check
Existing implementation required to list both specific problematic apis, and files that
use them: neither is necessary as both are seen in package_qa error messages, and
can cause excessive amount of exception lines, if there are too many files, or
they are installed in arch-specific locations. Also, the value of INSANE_SKIP
should be the test that needs to be skipped, and in this case it wasn't.
Also, all problematic recipes are now correctly listed.
Signed-off-by: Alexander Kanavin <alex@linutronix.de> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Otherwise assimp will silently fall back to a vendored copy of zlib
which will fail with -D_TIME_BITS=64 due to https://github.com/madler/zlib/pull/764
This was exposed by multilib mips core-image-minimal SDKs, where the default
64 bit sysroot has zlib, but 32 bit sysroot does not.
Signed-off-by: Alexander Kanavin <alex@linutronix.de> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
bitbake.conf: set minimum required target kernel to 5.15
In particular this enables a number of useful features in glibc
(which utilize newer kernel APIs), such as actually using 64 bit
time_t versions of kernel syscalls:
In general, OLDEST_KERNEL setting is used in these two places:
- kernel.bbclass compares it with the target kernel version being built.
If a vendor BSP still offers an older kernel, OLDEST_KERNEL should be set to match.
- glibc recipe passes it as a parameter to the build so that additional features
and optimized paths that kernels older than OLDEST_KERNEL are enabled.
Note that there is a related setting, SDK_OLDEST_KERNEL, which remains as
it was (at 3.2.0) to ensure maximum compatibility with kernels on SDK host
machines; that setting is used to build nativesdk-glibc and verify the kernel
version when the SDK is being installed.
Build host kernel versions are not checked directly; compatible distros
are listed instead.
Signed-off-by: Alexander Kanavin <alex@linutronix.de> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Ming Liu [Fri, 28 Apr 2023 13:51:45 +0000 (15:51 +0200)]
weston: add xwayland to DEPENDS for PACKAGECONFIG xwayland
Otherwise xwayland.pc would not be present in sysroot, this leads to
some xwayland configs missing like have_listenfd, have_glamor.
Signed-off-by: Ming Liu <liu.ming50@gmail.com> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
The functionality appears regressed just after "thud" baseline when the
logic was refactored from shell script into python (commit 925e30cb104ece7bfa48b78144e758a46dc9ec3f)
Signed-off-by: Martin Siegumfeldt <mns@gomspace.com> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
running 37 tests
test framing_offset_size::tests::framing_offset_size_bump ... ok$<2>
test owned_value::tests::from_value ... ok$<2>
test object_path::unit::owned_from_reader ... ok$<2>
test str::tests::from_string ... ok$<2>
test signature::tests::signature_slicing ... ok$<2>
test str::tests::test_ordering ... ok$<2>
test owned_value::tests::map_conversion ... ok$<2>
test owned_value::tests::serde ... ok$<2>
test tests::enums ... ok$<2>
test tests::derive ... ok$<2>
test tests::f64_value ... ok$<2>
test tests::i16_value ... ok$<2>
test tests::fd_value ... ok$<2>
test tests::i32_value ... ok$<2>
test tests::i8_value ... ok$<2>
test tests::i64_value ... ok$<2>
test tests::ip_addr ... ok$<2>
test tests::issue_59 ... ok$<2>
test tests::issue_99 ... ok$<2>
test tests::array_value ... ok$<2>
test tests::object_path_value ... ok$<2>
test tests::dict_value ... ok$<2>
test tests::signature_value ... ok$<2>
test tests::serialized_size ... ok$<2>
test tests::struct_byte_array ... ok$<2>
test tests::struct_ref ... ok$<2>
test tests::str_value ... ok$<2>
test tests::option_value ... ok$<2>
test tests::struct_value ... ok$<2>
test tests::struct_with_hashmap ... ok$<2>
test tests::u16_value ... ok$<2>
test tests::u32_value ... ok$<2>
test tests::unit ... ok$<2>
test tests::u8_value ... ok$<2>
test tests::unit_fds ... ok$<2>
test tests::value_value ... ok$<2>
test tests::recursion_limits ... ok$<2>
test result: ok$<2>. 37 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.21s
This new class offers the possibility to build rust unit tests
(and integration tests) and find them correctly.
Due to non deterministic names of generated binaries, a custom
parsing of build result must be performed.
See https://github.com/rust-lang/cargo/issues/1924
All rust projects will generate a test binary with "cargo build --tests"
command, even if there are no test defined in source code.
The binary will just output that it ran 0 tests.
selftest/distrodata: clean up exception lists in recipe maintainers test
Specifically:
- add missing maintainer.inc entries for initramfs-module-*, systemd-machine-units and
target-sdk-provides-dummy and drop them from exception list.
- remove rust from exception list for unbuildable-by-default recipes as it is now buildable.
- add missing maintainer.inc entry for libx11-compose-data and cve-update-nvd2-native;
as they are also unbuildable by default, they needs to be in exception list as well.
Signed-off-by: Alexander Kanavin <alex@linutronix.de> Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
package_manager/ipk: fix config path generation in _create_custom_config()
"sysconfdir" contains "/" by definition and thus using os.path.join()
leads to self.target_rootfs being always ignored (and thus attempting to
generate paths in host's /etc).
Use oe.path.join() instead which was made for this purpose.
Since the latest change, the PYTHONPATH is overwritten instead of extended.
This leads to changed behavior and build errors of recipes where the PYTHONPATH
is set before setup_target_config is run.
Fixes: c9617c03bcee ("python3targetconfig.bbclass: use PYTHONPATH to point to the target config") Signed-off-by: Johannes Schrimpf <dev@loewen-email.de>
[Luca: add Fixes: tag] Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
hen Qi [Tue, 25 Apr 2023 05:05:17 +0000 (22:05 -0700)]
unfs3: fix symlink time setting issue
Add back the dropped 0001-attr-fix-utime-for-symlink.patch
to fix symlink time setting issue on NFS.
The problem could be reproduced by runing the following command
on nfs booted qemu:
ln -s dest src && touch -h src
Apart from the rpm operations mentioned in the original patch,
'docker pull' also fails with a 'stale file' error. The common
pattern here is extracting files from a bundle and setting times
for them.
Richard Purdie [Thu, 4 May 2023 16:06:05 +0000 (17:06 +0100)]
recipes: Default to https git protocol where possible
The recommendation from server maintainers is that the https protocol
is both faster and more reliable than the dedicated git protocol at this point.
Switch to it where possible.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Jamin Lin [Thu, 13 Apr 2023 10:31:09 +0000 (18:31 +0800)]
uboot-sign: support 64bits address
The default value of address-cells is "1", so the generated "its" file
only support 32bits address for uboot FIT image.
However, some platforms may want to support 64bits address of
UBOOT_LOADADDRESS and UBOOT_ENTRYPOINT.
Therefore, add variables to support both 64bits and 32bits address.
By default, the address-cell is 1 which is used for 32bits load address.
If users would like to use 64bits load address,
users are able to set as following for "0x400000000" 64bits load address.
1. FIT_ADDRESS_CELLS = "2"
2. UBOOT_LOADADDRESS= "0x04 0x00000000"
Signed-off-by: Jamin Lin <jamin_lin@aspeedtech.com> Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com>
Jamin Lin [Thu, 13 Apr 2023 10:31:08 +0000 (18:31 +0800)]
kernel-fitimage: support 64 bits address
The default value of address-cells is "1", so the generated "its" file
only supports 32bits address for kernel FIT image.
However, some platforms may want to support 64bits address
of UBOOT_LOADADDRESS and UBOOT_ENTRYPOINT.
Therefore, adds a variable to support both 64bits and 32bits address cells.
By default, the address-cell is "1" which is used for 32bits load address.
If users would like to use 64bits load address, users are able to
set as following for "0x400000000" 64bits load address.
1. FIT_ADDRESS_CELLS = "2"
2. UBOOT_LOADADDRESS= "0x04 0x00000000"
Signed-off-by: Jamin Lin <jamin_lin@aspeedtech.com> Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com>
this shows the warning on console, but it doesn't end in $LOGFILE, because it
writes only contents of cooker log into the $LOGFILE with:
with open(logfile, 'a') as logf:
logf.write('Preparing SDK for %s...\n' % ', '.join(sdk_targets))
ret = run_command_interruptible('BB_SETSCENE_ENFORCE=1 bitbake --quiet %s' % ' '.join(sdk_targets))
if not ret:
ret = run_command_interruptible('bitbake --quiet build-sysroots')
lastlog = get_last_consolelog()
if lastlog:
with open(lastlog, 'r') as f:
for line in f:
logf.write(line)
if ret:
print('ERROR: SDK preparation failed: error log written to %s' % logfile)
return ret
maybe we could remove whole support for $LOGFILE parameter and just redirect
the output like other commands on this line
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com>
Petr Kubizňák [Fri, 21 Apr 2023 15:23:25 +0000 (17:23 +0200)]
devicetree.bbclass: Allow selection of dts files to build
Add DT_FILES variable to allow the user of the class to select specific
dts files to build. This is useful for packages featuring dts files
for multiple machines.
Since many machine configs contain a list of dtb files
(e.g. KERNEL_DEVICETREE), DT_FILES works with both dts and dtb files.
Patrick Williams [Fri, 28 Apr 2023 16:07:57 +0000 (11:07 -0500)]
perl-version: remove PERL* assignments
The perl-version.bbclass executes functions which can depend on
variables potentially populated by native, such as `libdir`. The
sanity `native-last` suggests that recipes should `inherit native`
last, but when that is done the variables like PERLVERSION end up
as `None`, since `${STAGING_LIBDIR}` needs `${libdir}` which is not
yet populated (by native).
All recipes in poky and widely used meta-layers have already been
updated to use the functions directly instead of relying on these
problematic variables. Delete the variables so that future recipes
do not make the mistake of using them.
Related: openbmc/openbmc#3770 Signed-off-by: Patrick Williams <patrick@stwcx.xyz> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This last patch was added in support of swtpm however it isn't clear if anyone
is still using that workflow. The patch uses API calls such as as qemu_fork()
which were removed in 8.0.0 and replaced with gspawn calls. If anyone needs the
patch, it will be better for them to forward port it, test it and reinstate it,
preferably with a discussion with upstream about it too.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Richard Purdie [Thu, 4 May 2023 10:39:58 +0000 (11:39 +0100)]
qemu: Add fix for powerpc instruction fallback issue
See the patch for more details, fixes a regression in qemu causing
illegal instructions in libm on powerpc, triggered by a libinput
upgrade.
https://sourceware.org/git/?p=glibc.git;a=commitdiff;h=f1c56cdff09f650ad721fae026eb6a3651631f3d
was the glibc code generating the instruction and triggering the issue.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Peter Bergin [Tue, 2 May 2023 10:37:20 +0000 (12:37 +0200)]
update-alternatives.bbclass: fix old override syntax
Function 'gen_updatealternativesvardeps' still used old override
syntax when fetching variable flags. Update to use ':' instead to match
recipe meta data. This was found by review and no real issue encountered
but it is a bug that affects variable dependencies and can affect rebuilds
as task hashes might not be accurate.
Signed-off-by: Peter Bergin <peter.bergin@windriver.com> Signed-off-by: Peter Bergin <peter@berginkonsult.se> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Khem Raj [Tue, 2 May 2023 14:44:04 +0000 (07:44 -0700)]
musl: Update to latest master
Brings the following changes
* b928c723 fix return value of wmemcmp for extreme wchar_t values
* 4724793f fix wide printf numbered argument buffer overflow
* c1b42c4a wait4: fix missing rusage on x32 due to wrong success condition
* 9b12982d semtimedop: fix timespec kernel ABI mismatch for 32-bit timeouts on x32
* 6d322159 getopt: fix null pointer arithmetic ub
* 35e98311 nftw: fix use of uninitialized struct stat
* 7c410472 fix inadvertently static local var in dynlink get_lfs64
* 77327ed0 dns: check length field in tcp response message
Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>