* 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>
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>
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>
Remove pacthes accepted upstream, and refresh the remaining ones. Remove
patches required by ubuntu 18.04, as those are unmaintainable.
Remove CVE status for CVEs not applicable to the new version.
RP: Remove the hppa-firmware{,64}.img files as they cause strip failures
and SDK relocation errors. We don't support PARISC anyway, if anyone needs
them they can write the changes needed.
(From OE-Core rev: ca2ae68aad88d77cde0670467c4966dbb98d05c0)
Signed-off-by: Martin Hundebøll <martin@geanix.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* Drop backported musl fixes.
* Set `change-id` rather than `changelog-seen`
to fix build warning.
* Add fixes for 4b7e0a0b56aa24 ("Handle vendored sources
when remapping paths") which otherwise cause build failures:
| thread 'main' panicked at src/core/builder.rs:1795:26:
| std::fs::read_dir(registry_src) failed with No such file or directory (os=
error 2)
https://blog.rust-lang.org/2023/12/28/Rust-1.75.0.html
(From OE-Core rev: 9aec2c6c777388bb3129aa4c4f27a40f912522b4)
Signed-off-by: Yash Shinde <Yash.Shinde@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
There is a single version of llvm in core these days, furthermore the
version is no longer asked for by recipes such as mesa, which would use
llvm-config tool according to version of llvm found.
(From OE-Core rev: 15d09b02b2632ab1cabc3b1bd9f521e6d3d3b83f)
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Cc: Ross Burton <ross.burton@arm.com>
Acked-by: Martin Jansa <martin.jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
We can drop the mips workaround patch since there were fixes in 8.2.0.
The build system changed and we should drop cross.patch and replace it with
explicit settings for cross-prefix, and host-cc. To make that work we need
to indicate we don't use a cross pkg-config.
PIE isn't availale for mingw so tweak PACKAGECONFIG accordingly.
(From OE-Core rev: 8917fa10b8afb1413b34a6134beea129e416f8c6)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Replace musl fixes with backports from upstream.
Add sysconfdir to config.toml to fix:
| thread 'main' panicked at install.rs:92:9:
| User doesn't have write access on `install.sysconfdir` path in `config.toml`.
https://blog.rust-lang.org/2023/11/16/Rust-1.74.0.html
(From OE-Core rev: 84f46dd2503bb0ef238fef0097c66fda88f6cbda)
Signed-off-by: Alex Kiernan <alex.kiernan@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Drop getrandom-open64.patch (merged upstream).
Revert c4f414f449
("Map source absolute paths to OUT_DIR as relative. (#684)") which
causes hashed versions of the build path to be used as part of the
filename of generated objects and hence reproducibility issues.
https://blog.rust-lang.org/2023/08/24/Rust-1.72.0.html
(From OE-Core rev: 30637cdeb31fae02544fdc643a455d0ebb126ee6)
Signed-off-by: Alex Kiernan <alex.kiernan@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
kernel version 6.5 is the reference kernel for the fall
release.
This brings libc-headers up to date with that tested
reference
(From OE-Core rev: 7e1e77d3a17eddf59ea4f96b0c9cc5f432ac8da1)
Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This is first release in 17.x major release
(From OE-Core rev: 388c6dd0ac470a8e83233adf50ad8e7d9029728f)
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This upgrade isn't straighforward as upstream made changes. A pyenv
is now needed containing meson. This doesn't work for us for reasons
as yet unclear however it does mean we need python3native inherited
for that to stand a chance of working as otherwise host system
dependencies may be missing. For now, allow meson to work from our
sysroot via a patch. Our meson is always deterministic anyway so
we don't need their help for that.
The submodules approach used previously has changed, switch the options
for new ones to disable downloads and docs.
Some of the images binaries shipped for s390 show QA warnings for
relocations in code sections. Drop those binaries to avoid the QA
warnings since we don't need them anyway.
Drop a backported patch and refresh another.
(From OE-Core rev: a7176c3b2a7e2041b9be5dabb6b0f1e62f235f76)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
kernel version 6.4 is the reference kernel for the fall
release.
This brings libc-headers up to date with that tested
reference
For musl, we drop one patch that has been merged upstream.
(From OE-Core rev: 8dce94b89396a99bb20a0a0ba9db0244d95db7e0)
Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Drop backported/merged patches:
Revert-linux-user-add-more-compat-ioctl-definitions.patch
configure-Fix-check-tcg-not-executing-any-tests.patch
contrib-vhost-user-blk-Replace-lseek64-with-lseek.patch
Revert-linux-user-fix-compat-with-glibc-2.36-sys-mou.patch
Drop socket chardev patch with conflicts:
chardev-connect-socket-to-a-spawned-command.patch
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.
(From OE-Core rev: fe8125565af07b73f9b29db2188ecb6e884bcc70)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
There is little point in having "crosssdk" suffex added to the virtual provider within
binutils since the TARGET_PREFIX or SDK_PREFIX already encapsulates this. Remove it
allowing some of the special case overriding to be removed.
(From OE-Core rev: 6856fc5c848cc2564bebe03a007ef109f46d0adb)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Rebase patches; one of the vendored crossbeam versions
has been removed upstream, and so crossbeam_atomic.patch
is adjusted accordingly.
Replace getrandom-open64.patch with a backport.
(From OE-Core rev: f5accb4fae49342cbec21718ae7a427615bfcedd)
Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Add patch to fix typo for build on musl
GDB 13.1 includes the following changes and enhancements:
* Support for the following new targets has been added in both
GDB and GDBserver:
** GNU/Linux/LoongArch (gdbserver) loongarch*-*-linux*
** GNU/Linux/CSKY (gdbserver) csky*-*linux*
* The Windows native target now supports target async.
* FreeBSD:
** Arm and AArch64: Support for Thread Local Storage (TLS) variables
** Hardware watchpoint support on AArch64 FreeBSD
* Floating-point support has now been added on LoongArch GNU/Linux.
* New commands:
** set print nibbles [on|off]
show print nibbles
This controls whether the 'print/t' command will display binary values
in groups of four bits, known as "nibbles". The default is 'off'.
** Various styling-related commands. See the gdb/NEWS file for more
details (see link at the bottom).
** Various maintenance commands. These are normally aimed at GDB
experts or developers. See the gdb/NEWS file for more details
(see link at the bottom).
* Python API improvements:
** New Python API for instruction disassembly.
The new attribute 'locations' of gdb.Breakpoint returns a list of
gdb.BreakpointLocation objects specifying the locations where the
breakpoint is inserted into the debuggee.
** New Python type gdb.BreakpointLocation.
** New function gdb.format_address(ADDRESS, PROGSPACE, ARCHITECTURE)
that formats ADDRESS as 'address <symbol+offset>'
** New function gdb.current_language that returns the name of the
current language. Unlike gdb.parameter('language'), this will
never return 'auto'.
** New function gdb.print_options that returns a dictionary of the
prevailing print options, in the form accepted by gdb.Value.format_string.
** New method gdb.Frame.language that returns the name of the
frame's language.
** gdb.Value.format_string now uses the format provided by 'print',
if it is called during a 'print' or other similar operation.
** gdb.Value.format_string now accepts the 'summary' keyword. This
can be used to request a shorter representation of a value, the
way that 'set print frame-arguments scalars' does.
** The gdb.register_window_type method now restricts the set of
acceptable window names. The first character of a window's name
must start with a character in the set [a-zA-Z], every subsequent
character of a window's name must be in the set [-_.a-zA-Z0-9].
* GDB/MI changes:
** MI version 1 is deprecated, and will be removed in GDB 14.
** The async record stating the stopped reason 'breakpoint-hit' now
contains an optional field locno.
* Miscellaneous improvements:
** gdb now supports zstd compressed debug sections (ELFCOMPRESS_ZSTD) for ELF.
** New convenience variable $_inferior_thread_count contains the number
of live threads in the current inferior.
** New convenience variables $_hit_bpnum and $_hit_locno, set to
the breakpoint number and the breakpoint location number of
the breakpoint last hit.
** The "info breakpoints" now displays enabled breakpoint locations
of disabled breakpoints as in the "y-" state.
** The format of 'disassemble /r' and 'record instruction-history /r'
has changed to match the layout of GNU objdump when disassembling.
A new format "/b" has been introduce to provide the old behavior
of "/r".
** The TUI no longer styles the source and assembly code highlighted
by the current position indicator by default. You can however
re-enable styling using the new "set style tui-current-position"
command.
** It is now possible to use the "document" command to document
user-defined commands.
** Support for memory tag data for AArch64 MTE.
* Support Removal notices:
** DBX mode has been removed.
** Support for building against Python version 2 has been removed.
It is now only possible to build GDB against Python 3.
** Support for the following commands has been removed:
set debug aix-solib on|off
show debug aix-solib
set debug solib-frv on|off
show debug solib-frv
Use the "set/show debug solib" commands instead.
For a complete list and more details on each item, please see the gdb/NEWS
file, available at [1]:
[1] https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;a=blob_plain;f=gdb/NEWS;hb=gdb-13.1-release
(From OE-Core rev: 87a8c2af735e06338463414a2cbcd3224b9ea112)
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
No longer package go-runtime-staticdev into sdk packagegroup,
as go-runtime 1.20 doesn't build the static bits anymore
(possibly can be enabled via build config, if proven necessary).
(From OE-Core rev: e8ab9d303a6fca3806097f1fd360efe8f8ae0c1d)
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>
Disable ZStd to avoid needing libzstd in llvm (mirrors zlib disable).
Generate complete list of rust-snapshot artefacts from src/stage0.json.
Drop clippy-driver reproducibility change as the code is gone from
upstream.
Release notes:
https://releases.rs/docs/1.67.0/
License-Update: Unicode-TOU text added (already in our license string)
(From OE-Core rev: 4900e0c5cb8a092a1d77d4f26249afa59b241da6)
Signed-off-by: Alex Kiernan <alex.kiernan@gmail.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
6.1 is a LTS and one of the reference kernels for our next
relase. Making it a logical update point for our libc-headers.
We can drop one of our patche as the gcc-goto.sh is no longer
used, and hence we won't have race conditions like we previously
had.
(From OE-Core rev: cb6d0cac29d3f8eb6d13722ab816c93210762e60)
Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
qemu no longer carries libslirp in-tree,
so enabling slirp requires providing external libslirp.
Another noteworthy change is:
x86: TCG support for AVX, AVX2, F16C, FMA3 and VAES instructions
... which means both meta-intel and qemu x86 targets can
now fully utilize Haswell-and-later instruction set with benefits
for performance in emulation and on silicon.
Changelog:
https://wiki.qemu.org/ChangeLog/7.2
(From OE-Core rev: d82e521995832580e990c0c173651aafd43d299c)
Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
There is no longer need to be specific: none of the recipes
using this variable in core need to know the particular version
of llvm exactly when using the default one set via PREFERRED_VERSION
from LLVMVERSION.
This as well enables automated version updates of llvm
for minor releases.
(From OE-Core rev: f0ab1736438f6f23603e3694dc2f0b724b103722)
Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
'Release' type follows standard practice elsewhere in core, particularly rust-llvm as well.
(From OE-Core rev: 20adf74207b8c3eac7871e27da2df1aa26fca3b6)
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>