For a very long time my focus hasn't been these recipes
in particular; rather I'm trying to ensure oe-core as a whole
doesn't fall too far behind upstream releases. To better reflect
this reality, I wish to be no longer listed for any specific
recipes.
(From OE-Core rev: b420b575fef9111a264a9ecc3b34a341ee604d97)
Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
VIRTUAL-RUNTIME_keymaps is defined in busybox init manager and also in
some package groups. Defining distro features in recipes is wrong.
Also this is not directly related to init manager.
So move all these definitions to default-providers.inc
(From OE-Core rev: 00f667bb5007a372950a137bf9e8b0e62f44f7d6)
Signed-off-by: Peter Marko <peter.marko@siemens.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Currently VIRTUAL-RUNTIME_dev_manager is defined by some init managers
with "??=" and in packagegroup-core-boot with "?=".
This means that this variable is different in this package group and in
all other the recipes.
This was discovered when trying to use new feature INIT_MANAGER when
migrating to scarthgap and using systemd distro. After deleting all
VIRTUAL_RUNTIME providers defined in init-manager-systemd udev was
installed additionally via packagegroup-core-boot.
Having a distro settings overriden in single recipe is wrong and needs
to be corrected. Therefore let's define the setting in all init managers
and remove it from packagegroup-core-boot.
core-image-tiny-initramfs has a dilemma - use busybox-mdev even if
distro does not enable it in busybox recipe to keep the image tiny, or
rather not install it even if distro enables it in busybox.
This patch chooses the first option.
(From OE-Core rev: 89e2652ac83f2602d6dd60623a225b88dc67d288)
Signed-off-by: Peter Marko <peter.marko@siemens.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
python3-rdflib was the last consumer of this recipe in oe-core.
(From OE-Core rev: 72cc499429b0869385223ba21fe03849c6145b89)
Signed-off-by: Guðni Már Gilbert <gudni.m.g@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
libdisplay-info is a EDID and DisplayID library. Goals:
- Provide a set of high-level, easy-to-use, opinionated functions as
well as low-level functions to access detailed information.
- Simplicity and correctness over performance and resource usage.
- Well-tested and fuzzed.
Since commit a16598b038b2 ("backend-drm: make libdisplay-info
mandatory") from Weston, this library is now mandatory in order to
build weston 14.0.1 and newer.
(From OE-Core rev: aa3fe5a5c00085f5455a66c1033f4124e76239ec)
Signed-off-by: Hiago De Franco <hiago.franco@toradex.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Move hwdata recipe from meta-openembedded to openembedded-core.
libdisplay-info is now a requirement for Weston, since commit
a16598b038b2 ("backend-drm: make libdisplay-info mandatory"). However,
in order to build libdisplay-info, hwdata is required. Since Weston is
built inside openembedded-core, move hwdata in order to be able to
upgrade Weston, so oe-core has no dependency on meta-oe.
hwdata contains various hardware identification and configuration data.
(From OE-Core rev: 3e5d5ba74beace1669ff04a7b0334aaa2693bdb6)
Signed-off-by: Hiago De Franco <hiago.franco@toradex.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Updating linux-libc-headers to the 6.12 LTS release, we drop
6.10 and make 6.12 the default.
(From OE-Core rev: ac76d281e28cf0cb42dd76869572fa01716198ca)
Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
We've seen cases where a ptest (strace) has a 43GB sparse file in the test
directory. busybox tar doesn't work well with this. The resulting 1.4GB archive
takes hours to extract too.
Ensure tar is added to our full images and use the sparse option to collect
files for debugging. This stops crazy build hangs.
Since tar is GPLv3, we have to exclude it from that test code. We don't boot
any of those images so the debug collection code is safe there, at least for now.
(From OE-Core rev: fefeb919696b6ac76f0997acfb0f612203ef7f1b)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
We have multiple recipes in core that RPROVIDE virtual-x-terminal-emulator,
so we should pick one to be the default for deterministic builds.
Pick rxvt, as it's the lightest. Sato can depend on matchbox-terminal
explicitly and rxvt will not be added.
(From OE-Core rev: 0c362390127fa30f6932558ebcd9cbe1e21e8467)
Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
I'd be happy to remove expect from core as it has been unmaintained for years,
but sadly gcc/binutils test suites are basically written in it (via dejagnu),
and ltp makes use of it as well.
I attempted porting expect to tcl 9, but it's a tcl extension and makes
extensive use of features that have been deprecated in tcl 8 and removed
in tcl 9, and even pokes into tcl internals.
At some point hopefully the GNU toolchain upstreams are going to notice;
for now we'll carry tcl (latest) and tcl8 recipes.
tcl and tcl8 packages can be co-installed, the latter is adjusted
to contain tclsh8.
tcl-dev and tcl8-dev packages can also be co-installed, a few files
in tcl8-dev are renamed to avoid clashes with tcl-dev (tcl.pc -> tcl8.pc,
and similar for tclConfig.sh and tclooConfig.sh).
(From OE-Core rev: 8ec7bfc6644aff011545dfb0f5a415e79d7b0844)
Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
The original commit incorrectly missed off the pn- override prefix, fix it.
(From OE-Core rev: 766ebeec6fa56305606df3dcf901053dd58c1a95)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
pseudo has to wrap all glibc calls including the 32 bit ones so
this warning is a false positive.
(From OE-Core rev: 13f8b50f055be219aed50c62c5f7552c4c2f18f2)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Drop the gnutls patch since something equivalent was merged upsteam.
(From OE-Core rev: 3e1b5805906dc3b2f7c79d26224a7a732123af97)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Fabio has been keeping the U-Boot recipe up to date for a long time
in a timely manner, doing a great job there, update the maintainers
file.
(From OE-Core rev: ba8d7c7d066ae4923a7494775077f23939183d21)
Signed-off-by: Marek Vasut <marex@denx.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
The kdump script from kexec-tools does not work without makedumpfile (see https://git.yoctoproject.org/poky/tree/meta/recipes-kernel/kexec/kexec-tools/kdump#n14 ).
Thus, let's import makedumpfile from meta-openembedded/meta-oe/recipes-kernel/makedumpfile and make kexec-tools RDEPENDS on makedumpfile.
makedumpfile is the utility which reads /proc/vmcore after a kernel panic and creates a kdump file under /var/crash/.
(From OE-Core rev: 8534e6427622ec76e100b7d10ee11d180cf5980a)
Signed-off-by: Etienne Cordonnier <ecordonnier@snap.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Add initial support to build the barebox tools for the host and the
target.
Some of the tools are generic barebox utilities (like 'bareboximd' for
image meta data inspection or 'bareboxenv' for accessing the barebox
environment) some are SoC family-specific specific utilities (like
'imx-usb-loader' or 'omap3-usb-loader').
(From OE-Core rev: cb3de34a28cde3f9ebd52ba842da9f91c6f0fa66)
Signed-off-by: Marco Felsch <m.felsch@pengutronix.de>
Signed-off-by: Enrico Jorns <ejo@pengutronix.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This adds the support for the barebox bootloader to oe-core. The recipe
is inspired by meta-ptx [1] but is a major rework of the one found there.
Barebox comes with a wide range of supported architectures and follows
the concepts of Linux in various aspects like the driver model, the
shell, or the virtual file system.
This not only eases porting Linux drivers but also makes barebox a
developer-friendly and feature-rich bootloader alternative [2].
For barebox (like for the kernel or other bootloaders) it is quite
likely that people will not just build the original recipe but need to
adapt it, point to custom repositories, apply patch stacks,
COMPATIBLE_MACHINE etc. They may also choose to have different recipe
names for different variants.
Having only a single .bb file and requiring to copy or .bbappend it is
inconvenient and results in unnecessary code duplication. Therefore, the
base support for building barebox is encapsulated in barebox.bbclass
(like kernel.bbclass for the kernel).
Adds barebox to maintainers.inc but excludes it from the maintainers
check since with the current check mechanism barebox would be skipped
(and making the check fail) due to not being the PREFERRED_PROVIDER for
virtual/bootloader.
[1] https://github.com/pengutronix/meta-ptx/tree/master/recipes-bsp/barebox
[2] https://www.barebox.org/demo/?graphic=0
(From OE-Core rev: 5c69f5626278a6e9756188a5771b18075380f52d)
Signed-off-by: Marco Felsch <m.felsch@pengutronix.de>
Signed-off-by: Enrico Jorns <ejo@pengutronix.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
GDB 15.2 brings the following fixes:
* PR gdb/31727 (-exec-next fails in mingw (infrun.c:2794: internal-error: resume_1: Assertion `pc_in_thread_step_range (pc, tp)' failed))
* PR c++/31900 (libstdc++-prettyprinters/debug.cc print redirected fails since gdb-14-branchpoint-2123-g4e417d7bb1c)
* PR python/31946 (sys.exit from Python no longer exits the GDB process)
* PR record/31971 (Loading a saved record file asserts if we try to execute the inferior)
* PR gdb/32005 (frv_current_sos doesn't set solib::lm_info)
* PR exp/32015 (GDB crashes while printing large D array)
* PR gdb/32025 (Fatal error when the disassemble command is interrupted with SIGINT)
* PR gdb/32143 ([15 Regression] arch/amd64.c:71: internal-error: amd64_create_target_description: Assertion `!is_x32' failed)
* PR symtab/32158 ([gdb/symtab] enum class enumerator has incorrect parent in cooked index)
* PR symtab/32160 ([gdb/symtab] Parent map: die parent or scope parent?)
(From OE-Core rev: 76567e7a0e1d133b5878a0254a9dcc87b3a15bc1)
Signed-off-by: Deepthi Hemraj <Deepthi.Hemraj@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Currently, KERNEL_CONSOLE has a default value of "ttyS0". However, Arm
machines and those using virtio serial prefer to use "ttyAMA0" or "hvc0"
(or something else). These are usually defined by the machine config
file as SERIAL_CONSOLES, which has one or more entries. Take the first
one of those instead of ttyS0, but default back to ttyS0 if nothing is
set.
Also, use this variable in the efi wic file instead of "ttyS0".
Of note, this changes the default speed of the default kernel console
from undefined (9600) to 115200. This allows for users of the
mkefidisk.wks to work as before but any users of this variable could see
changed behavior and would now need to define this as:
KERNEL_CONSOLE ?= "ttyS0,9600"
This includes revisions suggested by Quentin Schulz and Ross Burton.
(From OE-Core rev: da42fc9ad55d1d60a04e38ff94c965f711f60cd6)
Signed-off-by: Jon Mason <jdmason@kudzu.us>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
It is needed by systemd ukify tool and uki.bbclass to generate
UEFI boot binaries. Added to fast list in ptest-packagelists.inc.
(From OE-Core rev: 4069c485046fe6d008dd0c48269f29d92146d923)
Signed-off-by: Mikko Rapeli <mikko.rapeli@linaro.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Add the new cpe:vendor:product tagging to entries in cve-extra-inclusions, using
product/vendor combinations that are already present in OE-core (usually there
is no specific vendor).
(From OE-Core rev: e1bf43561093b3b9215cde9e9f7d80b4ffcdc64e)
Signed-off-by: Marta Rybczynska <marta.rybczynska@syslinbit.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* Drop "--doc" option for rust oe-selftest since
it is not supported on bootstrap builds for
cross-targets.
* Drop the following backported patches which are merged
with rust v1.76 upgrade.
- custom-target-cfg.patch
- rustc-bootstrap.patch
- rv32-missing-syscalls.patch
- target-build-value.patch
https://blog.rust-lang.org/2024/02/08/Rust-1.76.0.html
* Drop 'rust-rustdoc' and 'rust-dbg' from 'exclude_packages' list
to check for rust reproducibility.
(From OE-Core rev: 71d17ed3c7be029fc68e9dd3f5d6c4aa72ef861a)
Signed-off-by: Yash Shinde <Yash.Shinde@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Most packages use tomllib and fall back to tomli. The last user in core
was python3-setuptools-scm, removed in 5c8a0a2.
(From OE-Core rev: 0dc792a62df6b6ceec4c897c41d13238e829af61)
Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
There are no potential users of this recipe now that importlib_metadata
has been removed, and importlib_metadata used tomllib anyway.
(From OE-Core rev: 865e731392e1581b081e21287ebdae0b0f483aca)
Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This package is a backport of the importlib.metadata standard library
package, so shouldn't really be needed since we have Python 3.12.
The last user in core was pytest, removed in 0aee9aa.
(From OE-Core rev: 686bae9aff26410eaa1ab591bca91c00c4b029ef)
Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This is a deprecated package so rarely used now.
The last user in core was python3-chardet, removed in 55b49e9.
(From OE-Core rev: bb00747abc1312efb1059dec6d585488d6edbdee)
Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
The last user in core was pytest, removed in 0aee9a.
(From OE-Core rev: 6c0f07ba43646aa7987dfc3de8871b55f875fa07)
Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
The only user of this recipe in core is python3-jsonschema, but only if
you select the non-default 'nongpl' PACKAGECONFIG.
Move to meta-python so it's there if needed.
(From OE-Core rev: 41ecbbe06f3d747cb68789817e19b600d672d9ea)
Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This recipe is a backport of pathlib intended for older releases of
Python but as we have a modern release of Python it shouldn't be needed.
There are no users in oe-core, so move to meta-python.
(From OE-Core rev: 4857b287a86ad0c2afed4bdfabe18c545bc9291b)
Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6.10 will be the reference kernel version for the fall release,
so we bump our libc-headers to match.
(From OE-Core rev: 3f852c2c958c80c652e902ab0532cefdc82e6549)
Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
The implementation uses the append operator to include
GLIBC_64BIT_TIME_FLAGS in TARGET_CC_ARCH, but it places the space in
the GLIBC_64BIT_TIME_FLAGS assignment in order to avoid a 'spurious
space' when the value is empty.
68b50d3 time64: Remove leading whitespace from GLIBC_64BIT_TIME_FLAGS
The problem with this is it requires anyone wishing to assign a value
to GLIBC_64BIT_TIME_FLAGS to add the leading space, otherwise this is
the error:
cc1: error: '-Werror=format-security-D_TIME_BITS=64': no option '-Wformat-security-D_TIME_BITS=64'
Add a new constant variable to capture the value needed for the 32-bit
special case, including the space.
(From OE-Core rev: e8177827f92e71c80c5b63453d8bbd1defbe1fbc)
Signed-off-by: Tom Hochstein <tom.hochstein@oss.nxp.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Enables usage of TCLIBC=picolibc extending OE functionality to build and use
picolibc based toolchains to build baremetal applications.
Picolibc is a set of standard C libraries, both libc and libm, designed for
smaller embedded systems with limited ROM and RAM. Picolibc includes code
from Newlib and AVR Libc, but adresses some of newlibs concerns, it retains
newlibs directory structure, math, string and locale implementations, but
removed the GPL bits used to build the library, swiches old C style code for
C18 and replaces autotools with meson.
This patch adds a picolibc recipe for the C library, a picolibc-helloworld
recipe that contains an example application and a testcase that builds it.
Picolibc can be built for ARM and RISCV architectures, its been tested both
for 32 and 64 bits, the provided example recipe produces the following output:
hello, world
Runqemu does not automatically show any output since it hides QEMU stderr which
is where the QEMU monitors output is directed to when using semihosting, but,
manually running the same QEMU command does work properly.
(From OE-Core rev: c7535ecaccb72ef21a61f9aec5c68e61fb4f6fb6)
Signed-off-by: Alejandro Enedino Hernandez Samaniego <alejandro@enedino.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Install the test suite and run it in core-image-ptest-fast.
(From OE-Core rev: 579675d773f52c877e50aafc59b5571ac5d6a0ba)
Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Fixing our infrastructure to show warnings for nativesdk packages resulted
in some issues with 32 bit toolchains and 32 bit time becoming clear.
For now, add INSANE_SKIP entries for these which effectively documents
the issue and allows us to at least start running the tests in the
infrastructure.
Over time we will need to try and fix these if upstream doesn't.
(From OE-Core rev: d05fa366ebbf8017f5f5fae0b1bc8502ada3ab79)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Major new features:
* The <stdbit.h> header type-generic macros have been changed when using
GCC 14.1 or later to use __builtin_stdc_bit_ceil etc. built-in functions
in order to support unsigned __int128 and/or unsigned _BitInt(N) operands
with arbitrary precisions when supported by the target.
* The GNU C Library now supports a feature test macro _ISOC23_SOURCE to
enable features from the ISO C23 standard. Only some features from
this standard are supported by the GNU C Library. The older name
_ISOC2X_SOURCE is still supported. Features from C23 are also enabled
by _GNU_SOURCE, or by compiling with the GCC options -std=c23,
-std=gnu23, -std=c2x or -std=gnu2x.
* The following ISO C23 function families (introduced in TS
18661-4:2015) are now supported in <math.h>. Each family includes
functions for float, double, long double, _FloatN and _FloatNx, and a
type-generic macro in <tgmath.h>.
- Exponential functions: exp2m1, exp10m1.
- Logarithmic functions: log2p1, log10p1, logp1.
* A new tunable, glibc.rtld.enable_secure, can be used to run a program
as if it were a setuid process. This is currently a testing tool to allow
more extensive verification tests for AT_SECURE programs and not meant to
be a security feature.
* On Linux, the epoll header was updated to include epoll ioctl definitions
and the related structure added in Linux kernel 6.9.
* The fortify functionality has been significantly enhanced for building
programs with clang against the GNU C Library.
* Many functions have been added to the vector library for aarch64:
acosh, asinh, atanh, cbrt, cosh, erf, erfc, hypot, pow, sinh, tanh
* On x86, memset can now use non-temporal stores to improve the performance
of large writes. This behaviour is controlled by a new tunable
x86_memset_non_temporal_threshold.
Deprecated and removed features, and other changes affecting compatibility:
* Architectures which use a 32-bit seconds-since-epoch field in struct
lastlog, struct utmp, struct utmpx (such as i386, powerpc64le, rv32,
rv64, x86-64) switched from a signed to an unsigned type for that
field. This allows these fields to store timestamps beyond the year
2038, until the year 2106. Please note that applications are still
expected to migrate off the interfaces declared in <utmp.h> and
<utmpx.h> (except for login_tty) due to locking and session management
problems.
* __rseq_size now denotes the size of the active rseq area (20 bytes
initially), not the size of struct rseq (32 bytes initially).
(From OE-Core rev: 4dd98c39204c1bfdf54b10ec72c3003118ac1dba)
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>