Compare commits

...

159 Commits

Author SHA1 Message Date
Steve Sakoman
f7def85be9 build-appliance-image: Update to scarthgap head revision
(From OE-Core rev: 803cc32e72b4fc2fc28d92090e61f5dd288a10cb)

Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-06-24 06:49:29 -07:00
Steve Sakoman
5d657e0f47 poky.conf: bump version for 5.0.2
(From meta-yocto rev: e0a218eaa794dddcc2e87e42652e191fcaf0b7bc)

Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-06-24 06:46:52 -07:00
Richard Purdie
2d92aefd4b bitbake: fetch2/wget: Fix failure path for files that are empty or don't exist
When we intercepted the file download to a temp file, we broke the
exist/size checks which need to happen before the rename. Correct
the ordering.

For some reason, python 3.12 exposes this problem in the selftests
differently to previous versions.

(Bitbake rev: 8714a02e13477a9d97858b3642e05f28247454b5)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit c56bd9a9280378bc64c6a7fe6d7b70847e0b9e6d)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-06-24 06:46:52 -07:00
Richard Purdie
bc322a184d bitbake: tests/fetch: Tweak to work on Fedora40
On Fedora40, "localhost" sometimes resolves to ::1 and sometimes to 127.0.0.1
and python only binds to one of the addresses, leading to test failures.

Use 127.0.0.1 explicitly to avoid problems of the name resolution, we're trying
to test things other than the host networking.

(Bitbake rev: 5fa596b3f2e49fbd144347b9800c76de72a29e28)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 9adc6da42618f41bf0d6b558d62b2f3c13bedd61)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-06-24 06:46:52 -07:00
Rudolf J Streif
d2d129fabc bitbake: fetch2/wget: Canonicalize DL_DIR paths for wget2 compatibility
Some distributions (namely Fedora Core 40) have started replacing
wget with wget2. There are some changes to wget2 that make it
incompatible with wget:

1. ftp/ftps is not supported anymore
2. progress 'dot' is not yet supported
3. Relative paths in -P and -O are not correctly dealt with

Item 1: Is already dealt with since Scarthgap by only adding the
option --passive-ftp when the URL specifies ftp/sftp. While that
won't help if ftp/sftp is actually required it at least does
not break http/https downloads.

Item 2: While not supported it at least does not break the operation.

Item 3: If there are relative path components in -P or -O then wget2
only deals with them correctly if there is one, and only one, relative
path component at the beginning of the path:

-P ./downloads     works
-P ../downloads    works
-P ../../downloads does not work
-P ./../downloads  does not work
-P /home/user/downloads/../downloads does not work

In cases where there are more than one relative path component at
the beginning of the path and/or one or more reltaive path
component somewhere in the middle or end of the path, wget2 aborts
with the message Internal error: Unexpected relative path: '<path>')

Such can happen if DL_DIR includes relative path components e.g.
DL_DIR = "${TOPDIR}/../../downloads".

This patch canonicalizes DL_DIR before it is passed to wget.

(Bitbake rev: 47678142e26bb76d1351886060deff5e75039bc9)

Signed-off-by: Rudolf J Streif <rudolf.streif@ibeeto.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 3e4208952b086adc510e78c1c5f9cf4550d79dc9)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-06-24 06:46:52 -07:00
Siddharth Doshi
abcd5a88a3 cups: Upgrade 2.4.7 -> 2.4.9
CVE's Fixed by upgrade:
CVE-2024-35235 cups: Cupsd Listen arbitrary chmod 0140777

Other Changes between 2.4.7 -> 2.4.9
====================================
https://github.com/OpenPrinting/cups/blob/2.4.x/CHANGES.md

(From OE-Core rev: fea7f804f916d0c6c86823fc8dce6463c425532d)

Signed-off-by: Siddharth Doshi <sdoshi@mvista.com>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-06-20 06:29:44 -07:00
Martin Jansa
4a1234df65 db: ignore implicit-int and implicit-function-declaration issues fatal with gcc-14
* many configure tests (which might not fail before) are failing with gcc-14:
  # grep implicit build/config.log
  conftest.c:47:1: error: return type defaults to 'int' [-Wimplicit-int]
  conftest.c:47:1: error: return type defaults to 'int' [-Wimplicit-int]
  conftest.c:47:1: error: return type defaults to 'int' [-Wimplicit-int]
  conftest.c:47:1: error: return type defaults to 'int' [-Wimplicit-int]
  conftest.c:47:1: error: return type defaults to 'int' [-Wimplicit-int]
  conftest.c:47:1: error: return type defaults to 'int' [-Wimplicit-int]
  conftest.c:50:17: error: implicit declaration of function 'exit' [-Wimplicit-function-declaration]
  conftest.c:50:17: warning: incompatible implicit declaration of built-in function 'exit' [-Wbuiltin-declaration-mismatch]
  conftest.c:53:9: error: implicit declaration of function 'msem_init' [-Wimplicit-function-declaration]
  conftest.c:54:9: error: implicit declaration of function 'msem_lock' [-Wimplicit-function-declaration]
  conftest.c:55:9: error: implicit declaration of function 'msem_unlock' [-Wimplicit-function-declaration]
  conftest.c:56:9: error: implicit declaration of function 'exit' [-Wimplicit-function-declaration]
  conftest.c:56:9: warning: incompatible implicit declaration of built-in function 'exit' [-Wbuiltin-declaration-mismatch]
  conftest.c:50:9: error: implicit declaration of function '_spin_lock_try' [-Wimplicit-function-declaration]
  conftest.c:51:9: error: implicit declaration of function '_spin_unlock' [-Wimplicit-function-declaration]

* I have noticed this on db-native build on host with gcc-14
  where it caused fatal do_configure error:
  http://errors.yoctoproject.org/Errors/Details/784164/

  checking for mutexes... UNIX/fcntl
  configure: error: Support for FCNTL mutexes was removed in BDB 4.8.

  the config.log confirms it's because implicit-int:

  configure:22798: checking for mutexes
  configure:22925: gcc  -o conftest -isystem/OE/build/oe-core/tmp-glibc/work/x86_64-linux/db-native/5.3.28/recipe-sysroot-native/usr/include -O2 -pipe  -isystem/OE/build/oe-core/tmp-glibc/work/x86_64-linux/db-native/5.3.28/recipe-sysroot-native/usr/include -D_GNU_SOURCE -D_REENTRANT -L/OE/build/oe-core/tmp-glibc/work/x86_64-linux/db-native/5.3.28/recipe-sysroot-native/usr/lib                         -L/OE/build/oe-core/tmp-glibc/work/x86_64-linux/db-native/5.3.28/recipe-sysroot-native/lib                         -Wl,--enable-new-dtags                         -Wl,-rpath-link,/OE/build/oe-core/tmp-glibc/work/x86_64-linux/db-native/5.3.28/recipe-sysroot-native/usr/lib                         -Wl,-rpath-link,/OE/build/oe-core/tmp-glibc/work/x86_64-linux/db-native/5.3.28/recipe-sysroot-native/lib                         -Wl,-rpath,/OE/build/oe-core/tmp-glibc/work/x86_64-linux/db-native/5.3.28/recipe-sysroot-native/usr/lib                         -Wl,-rpath,/OE/build/oe-core/tmp-glibc/work/x86_64-linux/db-native/5.3.28/recipe-sysroot-native/lib                         -Wl,-O1 conftest.c  -lpthread >&5
  conftest.c:47:1: error: return type defaults to 'int' [-Wimplicit-int]
     47 | main() {
        | ^~~~
  configure:22925: $? = 1
  configure: program exited with status 1

* comparing target db with and without this change shows following diff
  in log.do_configure:

  db $ diff 5.3.28*/temp/log.do_configure
  268c268
  < checking for mutexes... POSIX/pthreads/library
  ---
  > checking for mutexes... POSIX/pthreads/library/x86_64/gcc-assembly
  271c271
  < checking for atomic operations... no
  ---
  > checking for atomic operations... x86/gcc-assembly

(From OE-Core rev: 4d3ce333c10fadf746b6d8b55a88777c97e11ffa)

Signed-off-by: Martin Jansa <martin.jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 6108da955e7c553247ff5356cf1c990b3d334edf)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-06-20 06:29:44 -07:00
Khem Raj
32ddc0417f kexec-tools: Fix build with GCC-14 on musl
(From OE-Core rev: 30e226d48ae04e387d53fbde1b729569ae35bad5)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 704f51f72c301bd081a635dbe94e52aa97ffb827)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-06-20 06:29:44 -07:00
Martin Jansa
da1e522530 cdrtools-native: fix build with gcc-14
Fixes:
http://errors.yoctoproject.org/Errors/Details/770525/
| checking whether the C compiler (gcc  -isystem/OE/build/oe-core/tmp-glibc/work/x86_64-linux/cdrtools-native/3.01/recipe-sysroot-native/usr/include -O2 -pipe ) works... no
| configure: error: installation or configuration problem: C compiler cannot create executables.
| RULES/rules.cnf:70: incs/amd-ryzen-threadripper-3970x-32-core-processor-linux-cc/rules.cnf: No such file or directory
| make: *** [RULES/rules.cnf:59: incs/amd-ryzen-threadripper-3970x-32-core-processor-linux-cc/rules.cnf] Error 1
| make: *** Waiting for unfinished jobs....

where config.log show it's caused by gcc-14:

configure:1189: checking whether the C compiler (gcc  -isystem/OE/build/oe-core/tmp-glibc/work/x86_64-linux/cdrtools-native/3.01/recipe-sysroot-native/usr/include -O2 -pipe ) works
configure:1211: gcc  -o conftest -isystem/OE/build/oe-core/tmp-glibc/work/x86_64-linux/cdrtools-native/3.01/recipe-sysroot-native/usr/include -O2 -pipe  -D_GNU_SOURCE  conftest.c   1>&5
configure:1208:1: error: return type defaults to 'int' [-Wimplicit-int]
configure: failed program was:

main(){return(0);}

(From OE-Core rev: 2297334257e102f33a6ef8c116896e159d35e1b6)

Signed-off-by: Martin Jansa <martin.jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 094273bd7d1768e14fbdcd2f239bee14c630a625)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-06-20 06:29:44 -07:00
Khem Raj
502e5a8f51 zip: Fix build with gcc-14
zip's configure fails to link this piece of test code:

  int main() { return closedir(opendir(".")); }

with GCC-14 because it now treats implicit declaration of function
as error, unline older GCC version where it was just a warning
and this test would build fine.

Remove 0002-unix.c-Do-not-redefine-DIR-as-FILE.patch which
is now unnecessary.

(From OE-Core rev: 82d58f8bf63d6af80b5a4ad03d5121f1541ae15d)

Signed-off-by: Zoltán Böszörményi <zboszor@gmail.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 3422411eb750c7e960b81676637cfb321dbadefb)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-06-20 06:29:44 -07:00
Khem Raj
3c7d9c28ac iproute2: Fix build with GCC-14
(From OE-Core rev: 06b5a2db1d079c86652534b6fc7e504f77604af4)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 127df0ac9b55fa2a7f3269934854f805843d01cc)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-06-20 06:29:44 -07:00
Khem Raj
ad1147aa7e ltp: Fix build with GCC-14
(From OE-Core rev: 42c5a8d52f6f01ebf6fd441e5cf7fd2cd771cfd4)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 5d3bea7f817aee6eb053eccc22f5c35f8a3d3668)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-06-20 06:29:43 -07:00
Martin Jansa
4884f3edb8 lrzsz connman-gnome libfm: ignore various issues fatal with gcc-14
work arounds for:
oe-core/meta/recipes-bsp/lrzsz/lrzsz_0.12.20.bb:do_compile
oe-core/meta/recipes-connectivity/connman/connman-gnome_0.7.bb:do_compile
oe-core/meta/recipes-support/libfm/libfm_1.3.2.bb:do_compile

http://errors.yoctoproject.org/Errors/Build/183127/

More fixes on ML (especially for -native with gcc-14 on host)
cdrtools: https://lists.openembedded.org/g/openembedded-core/message/198899
syslinux: https://lists.openembedded.org/g/openembedded-core/message/198901

(From OE-Core rev: 924dc9bd3b1b21a60ebb117b0abf81d2650aedd0)

Signed-off-by: Martin Jansa <martin.jansa@gmail.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 856ffc7d0893c1dc549baf401899947f70d31896)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-06-20 06:29:43 -07:00
Khem Raj
723d7451a3 gtk4: Disable int-conversion warning as error
This helps builds on 32bit machines when using GCC-14
there is a bug filed for fixing this in code [1]

[1] https://gitlab.gnome.org/GNOME/gtk/-/issues/6033
(From OE-Core rev: 67e5be967e9d10ed295e9ca4cbfdf759f33e143f)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 3735b5566c7e0e1a36171523e7b553497f4da1a4)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-06-20 06:29:43 -07:00
Khem Raj
408d77ae35 consolekit: Disable incompatible-pointer-types warning as error
Fixes build with gcc-14

(From OE-Core rev: 9199d64629e8d27736c7f1e73cd9e95e8f04158b)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit d4fb4007cbaf545e023b0cb55b80fb5c70cf5b57)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-06-20 06:29:43 -07:00
Khem Raj
83b2701c97 kea: Remove -fvisibility-inlines-hidden from C++ flags
This fixes build with gcc-14, where default visibility is extended to
inline functions and getAll() function now falls into this category
and functions are marked hidden resulting in linking errors

Fixes
/OE/build/oe-core/tmp-glibc/work/core2-64-oe-linux/kea/2.5.8/recipe-sysroot-native/usr/bin/x86_64-oe-linux/../../libexec/x86_64-oe-linux/gcc/x86_64-oe-linux/14.0.1/ld: ./.libs/libdhcp4.a(dhcp4_srv.o): in function `isc::dhcp::Dhcpv4Srv::appendRequestedVendorOptions(isc::dhcp::Dhcpv4Exchange&)':
/usr/src/debug/kea/2.5.8/src/bin/dhcp4/dhcp4_srv.cc:2356:(.text+0xaac2): undefined reference to `isc::dhcp::CfgOption::getAll(unsigned int) const'
/OE/build/oe-core/tmp-glibc/work/core2-64-oe-linux/kea/2.5.8/recipe-sysroot-native/usr/bin/x86_64-oe-linux/../../libexec/x86_64-oe-linux/gcc/x86_64-oe-linux/14.0.1/ld: ./.libs/libdhcp4.a(dhcp4_srv.o): in function `isc::dhcp::OptionDescriptor isc::dhcp::CfgOption::get<unsigned int>(unsigned int const&, unsigned short) const':
/usr/src/debug/kea/2.5.8/src/lib/dhcpsrv/cfg_option.h:609:(.text+0xb288): undefined reference to `isc::dhcp::CfgOption::getAll(unsigned int) const'
/OE/build/oe-core/tmp-glibc/work/core2-64-oe-linux/kea/2.5.8/recipe-sysroot-native/usr/bin/x86_64-oe-linux/../../libexec/x86_64-oe-linux/gcc/x86_64-oe-linux/14.0.1/ld: ./.libs/libdhcp4.a(dhcp4_srv.o): in function `isc::dhcp::Dhcpv4Srv::appendRequestedOptions(isc::dhcp::Dhcpv4Exchange&)':
/usr/src/debug/kea/2.5.8/src/bin/dhcp4/dhcp4_srv.cc:2128:(.text+0xc556): undefined reference to `isc::dhcp::CfgOption::getAll(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) const'
/OE/build/oe-core/tmp-glibc/work/core2-64-oe-linux/kea/2.5.8/recipe-sysroot-native/usr/bin/x86_64-oe-linux/../../libexec/x86_64-oe-linux/gcc/x86_64-oe-linux/14.0.1/ld: ./.libs/libdhcp4.a(dhcp4_srv.o): in function `std::vector<isc::dhcp::OptionDescriptor, std::allocator<isc::dhcp::OptionDescriptor> > isc::dhcp::CfgOption::getList<char [6]>(char const (&) [6], unsigned short) const':
/usr/src/debug/kea/2.5.8/src/lib/dhcpsrv/cfg_option.h:641:(.text._ZNK3isc4dhcp9CfgOption7getListIA6_cEESt6vectorINS0_16OptionDescriptorESaIS5_EERKT_t[_ZNK3isc4dhcp9CfgOption7getListIA6_cEESt6vectorINS0_16OptionDescriptorESaIS5_EERKT_t]+0x86): undefined reference to `isc::dhcp::CfgOption::getAll(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) const'
/OE/build/oe-core/tmp-glibc/work/core2-64-oe-linux/kea/2.5.8/recipe-sysroot-native/usr/bin/x86_64-oe-linux/../../libexec/x86_64-oe-linux/gcc/x86_64-oe-linux/14.0.1/ld: ./.libs/libdhcp4.a(dhcp4_srv.o): in function `isc::dhcp::OptionDescriptor isc::dhcp::CfgOption::get<char [6]>(char const (&) [6], unsigned short) const':
/usr/src/debug/kea/2.5.8/src/lib/dhcpsrv/cfg_option.h:609:(.text._ZNK3isc4dhcp9CfgOption3getIA6_cEENS0_16OptionDescriptorERKT_t[_ZNK3isc4dhcp9CfgOption3getIA6_cEENS0_16OptionDescriptorERKT_t]+0x77): undefined reference to `isc::dhcp::CfgOption::getAll(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) const'
collect2: error: ld returned 1 exit status
make[5]: *** [Makefile:651: kea-dhcp4] Error 1

(From OE-Core rev: a68a3d40bf9226158d2c6433d3124be82eb02c63)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Cc: Martin Jansa <martin.jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 584940c2f3234bfaf579429e162e683934e86538)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-06-20 06:29:43 -07:00
Martin Jansa
6a6402dfdf p11-kit: ignore various issues fatal with gcc-14 (for 32bit MACHINEs)
* these are reproducible only with 32bit MACHINEs and probably related
  to time64.inc

* http://errors.yoctoproject.org/Errors/Build/183154/

(From OE-Core rev: 10d2ba3bf2328d74edfbf6624f4f4ac52b3e9655)

Signed-off-by: Martin Jansa <martin.jansa@gmail.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit fa2b8a494e641faab095487af90c5b78d9e33868)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-06-20 06:29:43 -07:00
Martin Jansa
a2ae5627ab libunwind: ignore various issues now fatal with gcc-14
http://gecko.lge.com:8000/Errors/Details/821679
(From OE-Core rev: dface38338ccaa45b2d1202e62adc87d99c3fb49)

Signed-off-by: Martin Jansa <martin.jansa@gmail.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 20b9e9980c6675906ed154df968008f8c9140a9c)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-06-20 06:29:43 -07:00
Martin Jansa
59c0bbcdb9 expect: ignore various issues now fatal with gcc-14
(From OE-Core rev: 454c48eac61f8e690b148e1c598aeb25912b1ec9)

Signed-off-by: Martin Jansa <martin.jansa@gmail.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 83e9790fe27c310a4f5a66fedb29b232d23a22e5)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-06-20 06:29:43 -07:00
Wang Mingyu
84595983b8 appstream: upgrade 1.0.2 -> 1.0.3
Changelog:
===========
 * qt: Fix relocation of Config.cmake files
 * cli: check-syscompat: Recognize available required controls as available
 * validator: Guard issue emission functions with G_GNUC_PRINTF
 * validator: Always use secure string formatting for issue emit function
 * utils: Explicitly set format style when installing catalog metadata
 * Suppress static-analyzer drawing wrong conclusions on GCC 14

(From OE-Core rev: c2315a8879070b514870ded07cc2a49c0616a8c7)

Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit be566cf0fecba34f1f792cbf060143be710970ee)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-06-20 06:29:43 -07:00
Zoltan Boszormenyi
0c585f6b66 cdrtools-native: Fix build with GCC 14
Add a patch to fix do_configure with GCC 14.
Disable building cdda2wav because it doesn't build with GCC 14.

(From OE-Core rev: 748d5f637f5aff3bc110b156cc3cb8e008f284c9)

Signed-off-by: Zoltán Böszörményi <zboszor@gmail.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 0fbe1766abb00edeb8ec9a0c8bdb4e723be4f352)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-06-20 06:29:43 -07:00
Ross Burton
3f86c9b37c gawk: fix readline detection
The code fragment used to detect readline in cross builds doesn't compile
cleanly with GCC 14.1, so readline is never enabled.

Add missing includes so the test works, and readline can be enabled.

(From OE-Core rev: b97aa1c3488b8f6aeb8e25f4ce810babc46a3ce5)

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit a6e7c3ce700b82c57f1102187fea6b387339eca3)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-06-20 06:29:43 -07:00
Richard Purdie
7d8845f154 gcc-runtime: libgomp fix for gcc 14 warnings with mandb selftest
ERROR: gcc-runtime-14.1.0-r0 do_package: QA Issue: gcc-runtime: Files/directories were installed but not shipped in any package:
  /usr/share/info
  /usr/share/info/libgomp.info-2
  /usr/share/info/libgomp.info-1

(From OE-Core rev: 276ca15f21321dd406b30acd87d64237f707d615)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 4f73ddd6c276dcd579d2113db1974d446dbf7751)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-06-20 06:29:43 -07:00
Richard Purdie
6570fd5116 oeqa/sdk/assimp: Upgrade and fix for gcc 14
To enable this test to work with gcc 14, pass the option to make
warnings non-fatal. Also upgrade to version 5.4.1 from 5.3.1.

(From OE-Core rev: c0c58c9acbcbed26f95864dc5e40b5995252ce4a)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit c3df6287ae26dc9d7f11eb7e26fdbcaefe4dfead)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-06-20 06:29:43 -07:00
Ross Burton
b2286f9882 oeqa/sdkext/devtool: replace use of librdfa
librdfa hasn't had a commit for a decade now and as such has problems
with modern compilers (specifically gcc 14.1).  Switch the recipe
creation test to something much simpler that we also control: dbus-wait.

(From OE-Core rev: 311e7b5b9ee4f0d96a376a06f01c5bfd379ca244)

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit d801de1f702d8d0def55011b5b6ad39d85f978f1)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-06-20 06:29:43 -07:00
Michael Halstead
818fe3d7df yocto-uninative: Update to 4.5 for gcc 14
(From OE-Core rev: 335d11ad2dd4207e5927f1938c449547a3a2975b)

Signed-off-by: Michael Halstead <mhalstead@linuxfoundation.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit f5638681cef7e250ac64832dbe791418d97f05ba)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-06-20 06:29:43 -07:00
Zoltan Boszormenyi
0b35aab466 cracklib: Modify patch to compile with GCC 14
GCC 14 implicitly turns a warning into a compiler error:

| ../../git/src/lib/packlib.c: In function ‘PWClose’:
| ../../git/src/lib/packlib.c:554:40: error: passing argument 1 of ‘HwmsHostToBigEndian’ from incompatible pointer type [-Wincompatible-pointer-types]
|   554 |             HwmsHostToBigEndian(tmp_pwp.hwms, sizeof(tmp_pwp.hwms), en_is32);
|       |                                 ~~~~~~~^~~~~
|       |                                        |
|       |                                        uint32_t * {aka unsigned int *}
| ../../git/src/lib/packlib.c:142:27: note: expected ‘char *’ but argument is of type ‘uint32_t *’ {aka ‘unsigned int *’}
|   142 | HwmsHostToBigEndian(char *pHwms, int nLen,int nBitType)
|       |                     ~~~~~~^~~~~

Add the cast to (char *) to silence it.

(From OE-Core rev: 50b9126cd8668d8c039e9bd61eaba458f7a22014)

Signed-off-by: Zoltán Böszörményi <zboszor@gmail.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 914128f6bd988cde278e087fb9457a0c70c7e5ec)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-06-19 08:34:58 -07:00
Alexandre Truong
554e8de6a4 Revert "oeqa/selftest/devtool: fix test_devtool_add_git_style2"
This reverts commit ab6d3e3d64
from poky repository.

The previous reverted commit was a workaround. The fix
"oeqa/selftest/devtool: fix _test_devtool_add_git_url"
tackle the issue. So, the workaround is not needed anymore.

(From OE-Core rev: fd30cc2ab99fe6a8e4beb29d9cb46a772db8b8d8)

Signed-off-by: Alexandre Truong <alexandre.truong@smile.fr>
Reviewed-by: Yoann Congal <yoann.congal@smile.fr>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 731f47ecfd8ad6558aac629806810789c623986b)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-06-19 08:34:58 -07:00
Alexandre Truong
afba27a984 oeqa/selftest/devtool: fix _test_devtool_add_git_url
This patch is a follow-up to the bug#15466.

As a reminder, the bug was about devtool’s submodule detection
checking for HEAD when a version is being passed.

As Vincent Kriek pointed out:
the --version that is being passed to devtool is only used for
setting the PV value in the recipe. To take into account the tag,
we add --srcrev to the command:
devtool add --srcrev v3.1.0 --version v3.1.0 mbedtls git://git@github.com/ARMmbed/mbedtls.git;protocol=https

Changes to _test_devtool_add_git_url have been made to take
into account the srcrev. srcrev will be passed as an optional
parameter because the test_devtool_add_git_style1
does not need the srcrev contrary to test_devtool_add_git_style2

Fixes [YOCTO #15466]

(From OE-Core rev: c297b78454da2a668e62dec95d7b6eb6e5429480)

Signed-off-by: Alexandre Truong <alexandre.truong@smile.fr>
Reported-by: Alexandre Truong <alexandre.truong@smile.fr>
Suggested-by: Vincent Kriek <vincent@coelebs.dev>
Reviewed-by: Yoann Congal <yoann.congal@smile.fr>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit a8686f3641e4407dee3d807898ffd620e2732b78)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-06-19 08:34:58 -07:00
Marc Ferland
35bd8118fc libinput: fix building with debug-gui option
When building libinput with the 'gui' PACKAGECONFIG option, it fails
with:

| Run-time dependency x11 found: YES 1.8.9
| Run-time dependency wayland-client found: YES 1.22.0
| Run-time dependency wayland-protocols found: YES 1.34
| Program wayland-scanner found: NO
|
| ../git/meson.build:578:20: ERROR: Program 'wayland-scanner' not found or not executable
|
| A full log can be found at /home/marc/mnt/yocto-latest/build/tmp/work/core2-64-poky-linux/libinput/1.25.0/build/meson-logs/meson-log.txt
| ERROR: meson failed
| WARNING: exit code 1 from a shell command.

Adding a build dependency on wayland-native fixes the issue.

(From OE-Core rev: 71e49dcac0be026d12140598850e2cd38d702317)

Signed-off-by: Marc Ferland <marc.ferland@sonatest.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 0e2d18e6267d26870ccbe45734bfccbc02744357)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-06-19 08:34:58 -07:00
Xiangyu Chen
18c80c1c36 ltp: add iputils-ping6 to RDEPENDS
According to the LTP documents[1], it using ping6 from iputils which
support "-I" option to bind the interface[2].

Ref:
[1] https://github.com/linux-test-project/ltp/commit/6f97789c
[2] https://github.com/linux-test-project/ltp/commit/64b11656

(From OE-Core rev: bd2b32437787245029ca393f3e46542f0900b3fb)

Signed-off-by: Xiangyu Chen <xiangyu.chen@windriver.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 05107ec5e4b81315d53efef23f2a570d520ee4c7)
Signed-off-by: Bin Lan <bin.lan.cn@windriver.com>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-06-19 08:34:58 -07:00
Xiangyu Chen
a1d5e69a2e iputils: splitting the ping6 as a package
The iputils merged the ping4 and ping6 command into the ping since the
commit ebad35fe[1], currently, iputils ping support being called using
"ping -6" or "ping6" symlinks.

In oe-core, there are two packages provide ipv6 ping, inetutils and iputils,
the inetutils-ping6 doesn't support "-I" option to bind the interface, that
cause some of scripts(e.g. LTP test[2]) which was based on iputils-ping6 fails.

If someone or a package needs iputils-ping6, they can enable it in local.conf
or add it into rdepends directly.

Ref:
[1] https://github.com/iputils/iputils/commit/e3de851b809c7b72ccc654a72b6af61d
[2] https://github.com/linux-test-project/ltp/blob/master/testcases/kernel/ \
    containers/netns/netns_comm.sh#L25

(From OE-Core rev: 964bdb0f8877a229ea34ab1d95dc5dabc564af51)

Signed-off-by: Xiangyu Chen <xiangyu.chen@windriver.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 0b89bc2041f670af625829d061ce79e0840ac116)
Signed-off-by: Bin Lan <bin.lan.cn@windriver.com>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-06-19 08:34:58 -07:00
Heiko
d6ae637763 kernel.bbclass: check, if directory exists before removing empty module directory
If the kernel folder does not exist, find will result in an error.
This can occur if the kernel has no modules but, for example, custom modules are created.

Add check before deleting.

(From OE-Core rev: 63856721cab409ae0598cfbff4fcf55c90bfd7e7)

Signed-off-by: Heiko Thole <heiko.thole@entwicklung.eq-3.de>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 7ef767d84d56b25498e45db83bb8f9d9caebeaf9)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-06-19 08:34:58 -07:00
Maxin B. John
c27fdaedbd iproute2: drop obsolete patch
libc-compat.h fix for musl was obsolete after 4.16.0 release of iproute2.
Drop it.

(From OE-Core rev: 2e3588ce3f0f14e6e0e6d2f4b6d8a52b68309394)

Signed-off-by: Maxin John <maxin.john@gmail.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit ad57a1e124a1de7af7ef8479ed779230e923d3af)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-06-19 08:34:58 -07:00
Poonam Jadhav
ba430c14d8 ppp: Add RSA-MD in LICENSE
ppp package has "RSA Data Security" license text in
Message-Digest Algorithm source file ppp-md5.c and ppp-md4.c
Add RSA-MD in LICENSE field for ppp package

(From OE-Core rev: 5feddad534ecf97279dfe5ec076aa3ed2eec6456)

Signed-off-by: Poonam Jadhav <poonam.jadhav@kpit.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 9c58193c898b0ea28c3931a57dca5bb829a44051)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-06-19 08:34:58 -07:00
Alexander Kanavin
949f078058 icu: add upstream submission links for fix-install-manx.patch
(From OE-Core rev: bebafda283f4ecf63994dfcc334e3bd0ac875e7e)

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 269a1a65d2526be5622b4c1f552b6f5541e0cb86)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-06-19 08:34:58 -07:00
Alexander Kanavin
5837e5e945 bash: mark build-tests.patch as Inappropriate
(From OE-Core rev: e796f05f243ac981082c63f816ce2e5e715bd347)

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 3d82d44ed6822b7a276df355311e384c02d36c43)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-06-19 08:34:58 -07:00
Alexander Kanavin
f90ddfe6ab xinput-calibrator: mark upstream as inactive in a patch
(From OE-Core rev: 58eed3438981e594daa076193e6af0f9e0cad014)

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 959591615d18f636768671e1e14e5945a6cbb010)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-06-19 08:34:58 -07:00
Alexander Kanavin
f0a906d661 busybox: submit CVE-2022-28391 patches upstream
(From OE-Core rev: f3e6d0dc315dc915d8029a0d84a12f74ca5d62f5)

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 64c026024b1c86797de338760b9f29d7e949926c)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-06-19 08:34:58 -07:00
Alexander Kanavin
98cf20c194 apr: submit 0001-Add-option-to-disable-timed-dependant-tests.patch upstream
(From OE-Core rev: 66fcd7e61607c2eaed58abfdff5a3197b5b564e6)

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 1bfe386e69d7a688815a78bd2d5766a4b0665e7f)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-06-19 08:34:58 -07:00
Alexander Kanavin
5372b83b13 expect: mark patches as Inactive-Upstream
There's every indication that this is an ex-expect:
last release in 2018, stale tickets, cvs server gone.

(From OE-Core rev: 84a8ed08e474427bf4a6b3a0026807a1bcabd417)

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 0fcfd2cb51428a3f35c0f78634bff0a16ae654e9)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-06-19 08:34:58 -07:00
Alexander Kanavin
fc979d94f6 kea: remove unnecessary reproducibility patch
Rather, adjust the sed invocation to do the correct thing directly.

(From OE-Core rev: a57f48c3bb37d5154ea2ef821525aa8706f9cb37)

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 804afb2eb9cc2b5650faa80816f377fa5b72fb38)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-06-19 08:34:58 -07:00
Alexander Kanavin
b4ab121b5f serf: mark patch as inappropriate for upstream submission
What the patch does is not suitable, as upstream would surely
want the issue with the code fixed, not removal of that code altogether.

I'd also note that serf is still semi-ummaintained, and the only consumer
of it is subversion, which is slowly but steadily fading away in favor of
git and artifact-specific solutions.

(From OE-Core rev: 07e14e259e5354c6465953189854229a0ea42e66)

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 634717817e94740ac8d4e8cc82cb68bfd15d8dbd)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-06-19 08:34:58 -07:00
Vincent Kriek
99d16e4c35 devtool: sync: Fix Execution error
When executing devtool sync on a recipe that was extract with devtool
extract earlier the following error occured:

    Traceback (most recent call last):
    [...]
    bb.process.ExecutionError: Execution of 'git fetch file:///home/vin/projects/poky/build/tmp/work/all-poky-linux/netbase/6.4/devtooltmp-figt1jmr/workdir/netbase devtool:devtool' failed with exit code 128:
    fatal: refusing to fetch into branch 'refs/heads/devtool' checked out at '/home/vin/projects/poky/build/netbase-src'

Fix this by adding --update-head-ok and --force to git fetch so it will
override the current head even if it is checked out and has changes.
Possible existing changes in the devtool branch can be retrieved by
checking out the devtool.bak branch

(From OE-Core rev: ee712c8b3c32fedd6af0521d2e34ea655f8cd5ca)

Signed-off-by: Vincent Kriek <vincent@coelebs.dev>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 4c89b061003a0f4143c6d3838e39fc2643edc8d6)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-06-19 08:34:58 -07:00
Alexander Kanavin
a39410ff48 libtraceevent: submit meson.patch upstream
[RP: Add url to submission]
(From OE-Core rev: fdb1a67fa3891f40f038c393e907b4e30161b4b5)

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit d00306620aa890a361f42516a064d64dd7c68aa7)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-06-19 08:34:58 -07:00
Julien Stephan
a4cd5dc1ee oeqa: selftest: context: run tests serially if testtools/subunit modules are not found
If testtools and/or subunit modules are not found we get the following backtrace
(example for testtools):

  NOTE: Starting bitbake server...
  Traceback (most recent call last):
    File "<..>/poky/scripts/oe-selftest", line 60, in
  <module>
      ret = main()
    File "<..>/poky/scripts/oe-selftest", line 47, in main
      results = args.func(logger, args)
    File "<..>/poky/meta/lib/oeqa/selftest/context.py",
  line 391, in run
      rc = self._internal_run(logger, args)
    File "<..>/poky/meta/lib/oeqa/selftest/context.py",
  line 377, in _internal_run
      rc = self.tc.runTests(**self.tc_kwargs['run'])
    File "<..>/poky/meta/lib/oeqa/selftest/context.py",
  line 161, in runTests
      return super(OESelftestTestContext, self).runTests(processes, skips)
    File "<..>/poky/meta/lib/oeqa/core/context.py", line
  91, in runTests
      result = self.runner.run(self.prepareSuite(self.suites, processes))
    File "<..>/poky/meta/lib/oeqa/selftest/context.py",
  line 154, in prepareSuite
      from oeqa.core.utils.concurrencytest import ConcurrentTestSuite
    File
  "<..>/poky/meta/lib/oeqa/core/utils/concurrencytest.py",
  line 22, in <module>
      import testtools
  ModuleNotFoundError: No module named 'testtools'

Fix this by adding a custom callback on -j/--num-processes parameter to
check testtools and subunit modules. Fallback to serial testing if
missing. This strategy is already used in sdk/context.py

(From OE-Core rev: ffd1db7d7813f6da22c0d9ef5fde6738058f1eb2)

Signed-off-by: Julien Stephan <jstephan@baylibre.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 35284404473b2c2d9f69594582868ed66ef3525e)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-06-19 08:34:58 -07:00
Khem Raj
c3235e3ae9 oeqa/postactions: Do not use -l option with df
-l option is specific to df provided by coreutils, if df
applet from busybox is used then it does not work and fails
like below

Fixes
   df: invalid option -- 'l'
   BusyBox v1.36.1 () multi-call binary.

   Usage: df [-PkmhT] [-t TYPE] [FILESYSTEM]...
   DEBUG: [Command returned '1' after 0.71 seconds]
   DEBUG: Command: df -hl
   Status: 1 Output:  df: invalid option -- 'l'

it seems worth a compromise to show remote mounted filesystems if any
during ptests and it works with both df implementations

(From OE-Core rev: 82a0df6cc2c5b18cb48fd8c3be26a11f4016d98d)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 75cc1ea4348a2294fdc5ab20530fcff27056ff06)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-06-19 08:34:58 -07:00
Felix Nilsson
b1a0ca3cab base-files: profile: fix error sh: 1: unknown operand
Handle errors when SHLVL isn't set.

(From OE-Core rev: 7ef2c9ab669785e5e073d6f925f1a3f447fc31d9)

Signed-off-by: Felix Nilsson <felixn@axis.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 5df53fcfe3b70a5312fced3fcc1ba6290f2ee794)
Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-06-19 08:34:58 -07:00
Ola x Nilsson
5ff13f1b01 oeqa/selftest/devtool: add test for modifying recipes using go.bbclass
go.bbclass uses a special do_unpack function that causes the git root
to be different from S.  Verify that it unpacks as expected.

[ YOCTO #15483 ]

(From OE-Core rev: 71adf7c18215faf73454be79d7b51f2a0c338c0f)

Signed-off-by: Ola x Nilsson <olani@axis.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit fab0c737b95b8d0c0bbf58336bc308776c956406)
Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-06-19 08:34:58 -07:00
Anton Almqvist
10e6cc830c devtool: modify: Catch git submodule error for go code
One of the git submodule commands failed for source extracted for
recipes using go.bbclass.  The root cause is probably the path set up
by go_do_unpack which makes S and gitroot not match.

This patch does not fix the root problem, but at least it is no worse
than before the git submodule support.

The extracted source will still have two .git folders, one in S
created by devtool and one in the go path which will contain the tru
git history.

[ YOCTO #15483 ]

(From OE-Core rev: 1dc639353658496db5c5df802c0259e87fe2ca0f)

Signed-off-by: Anton Almqvist <antonal@axis.com>
Signed-off-by: Ola x Nilsson <olani@axis.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit fe242408af40dd1f6e47d9b2b232bdc76756c80a)
Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-06-19 08:34:58 -07:00
Ross Burton
5c20153f7f procps: fix build with new glibc but old kernel headers
If you're building procps with a newer glibc (with pidfd_open()) but
older kernel headers (say 4.x, before __NR_pidfd_open) then procps will
fail to build because of a typo in configure.ac.

(From OE-Core rev: aaced482585fa32d2eadeeb3eb692b3c55666a2a)

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-06-19 08:34:58 -07:00
Wang Mingyu
8163fc2f6c mesa: upgrade 24.0.3 -> 24.0.5
Changelog:
 https://docs.mesa3d.org/relnotes/24.0.5.html

(From OE-Core rev: 98246b4de12d619f188bb38ecd0255ae1cb03ea7)

Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 5933d099c339596f62e1237d4e738dbe9f386b10)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-06-19 08:34:57 -07:00
Wang Mingyu
f22145f3bf taglib: upgrade 2.0 -> 2.0.1
Changelog:
===========
* Fix aborting when _GLIBCXX_ASSERTIONS are enabled.
* Fall back to utf8cpp header detection in the case that its CMake
  configuration is removed.
* Improve compatibility with the SWIG interface compiler.
* Build system fixes for testing without bindings, Emscripten and Illumos.
* C bindings: Fix setting UTF-8 encoded property values.
* Windows: Fix opening long paths.

(From OE-Core rev: 0f4f4bc352589c475afcc16a4e375cd6fc4726e6)

Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit d3438bd2698dff19722123d7b2b5674ba40107eb)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-06-19 08:34:57 -07:00
Wang Mingyu
34efd9bbf4 lttng-ust: upgrade 2.13.7 -> 2.13.8
Changelog:
============
* Add close_range wrapper to liblttng-ust-fd.so
* ust-tracepoint-event: Add static check of sequences length type
* lttng-ust(3): Fix wrong len_type for sequence
* Fix: libc wrapper: use initial-exec for malloc_nesting TLS

(From OE-Core rev: a249a913f5f1d093e372be2e25f3e38d909d7ce4)

Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 3dd02f741a151bcc1fe46e7fd6d585ca92c86c60)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-06-19 08:34:57 -07:00
Wang Mingyu
7fbd3442ce cronie: upgrade 1.7.1 -> 1.7.2
Changelog:
============
*Revert setting the return path to <>. It is not RFC compliant.
*Inherit MAILFROM from the crond process environment.

(From OE-Core rev: c33261bbf0193f7f73c57ec8c463ecc36799991e)

Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit e93d7ba7ea3718e396510b12726a232edaecf976)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-06-19 08:34:57 -07:00
Mark Hatle
0efe15c5ba binutils: Fix aarch64 disassembly abort
Code backported from binutils development tree.

  aarch64: Remove asserts from operand qualifier decoders [PR31595]

  Given that the disassembler should never abort when decoding
  (potentially random) data, assertion statements in the
  `get_*reg_qualifier_from_value' function family prove problematic.

  ...

(From OE-Core rev: 3b070fc3963d04ce8c13b5b78c3b7ae95e26c435)

Signed-off-by: Mark Hatle <mark.hatle@amd.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 00f3d8495a1d8fe44336b53c5a9d9a5f8a8d5664)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-06-14 05:19:22 -07:00
Robert Joslyn
6a8b1d85e7 libgloss: Do not apply non-existent patch
When newlib and libgloss were updated to 4.3.0, SRC_URI was updated to
append a fix-rs6000-cflags.patch file when building on PowerPC, but this
file was not added to the repo.

Remove appending the missing patch.

(From OE-Core rev: 71231580e9e5d0060a0ea41d29152d43846a00f1)

Signed-off-by: Robert Joslyn <robert.joslyn@redrectangle.org>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 64561d8b81233a19df5f51d26dfbcd15835bec1f)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-06-14 05:19:22 -07:00
Martin Hundeb?ll
331a3b87a7 classes: image_types: quote variable assignment needed by dash
The change in commit 39fc503036
("classes: image_types: apply EXTRA_IMAGECMD:squashfs* in oe_mksquashfs()")
assigns $@ to a local variable without quoting it. While this works with
bash, it fails with dash. Here, only the first token of $@ is assigned
to the variable, and the reamining tokens are passed as arguments to the
"local" keyword.

Fix it by adding the missing quotes.

(From OE-Core rev: a3b51197f3ce868c83ed5ca415bd6506ecc2575d)

Signed-off-by: Martin Hundebøll <martin@geanix.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 14ca134f9f72d518c9180156a8efac19f8bb3ab0)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-06-14 05:19:22 -07:00
Lei Maohui
bafda5147a run-postinsts.service: Removed --no-reload to fix reload warning when users execute systemctl in the first boot.
This warning is because after systemd has been upgraded to 255, reloading units operation is needed even when "enable/disable" units by systemctl.

(From OE-Core rev: 28a7064403f2433ef3cb4d52b03dd73437f2d665)

(From OE-Core rev: bdad9d3df6e9e4834803a60af24c072b39d5cbf8)

Signed-off-by: Lei Maohui <leimaohui@fujitsu.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Zhang Peng <peng.zhang1.cn@windriver.com>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-06-14 05:19:22 -07:00
Soumya Sambu
463ef7f618 git: upgrade 2.44.0 -> 2.44.1
Addresses the security issues - CVE-2024-32002, CVE-2024-32004,
CVE-2024-32020,CVE-2024-32021 and CVE-2024-32465

Changelog:
==========
https://raw.githubusercontent.com/git/git/master/Documentation/RelNotes/2.44.1.txt

(From OE-Core rev: 3a7ef46ebaf8d4b470ef5b6803dc3b76c22a97c2)

Signed-off-by: Soumya Sambu <soumya.sambu@windriver.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 767f9515013790c9a6b945fae9de03c9e5b89b80)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-06-14 05:19:22 -07:00
Deepthi Hemraj
fa18cd0932 gcc : upgrade to v13.3
gcc stable version upgraded from v13.2 to v13.3

Dropped CVE-2023-4039.patch, CVE-2024-0151.patch and 0026-aarch64-Fix-loose-ldpstp-check-PR111411.patch
because its been taken to gcc-13.3 with below commits 71a2aa2127283f450c623d3604dbcabe0e14a8d4, 5550214b58e95320b54e42ef0e37c6479e04b27b
and 4bb1ae3c13ce4fb72129229de66f5ffbcd45fe4c respectively.

For changes in v13.3 see: https://gcc.gnu.org/onlinedocs/gcc-13.3.0/gcc/

Below is the bug fix list for v13.3
https://gcc.gnu.org/bugzilla/buglist.cgi?bug_status=RESOLVED&list_id=429106&resolution=FIXED&target_milestone=13.3

There are a total 173 bugs are fixed in this release, below is the list of bugs fixed excluding the regression fixes.
ID      Product         Comp       Assignee▲       Summary
114408  gcc           analyzer     dmalcolm       ICE when invoking strcmp multiple times with -fsanitize=undefined -O1 -fanalyzer -flto
109251  gcc           analyzer     dmalcolm       -Wanalyzer-deref-before-check false positives seen in Linux kernel due to check in macros
114473  gcc           analyzer     dmalcolm       ICE: in deref_rvalue, at analyzer/region-model.cc:2780 with -fanalyzer -fanalyzer-call-summaries
100988  gcc           fortran      anlauf         Missed optimization: RESTRICT missing for optional arguments
112764  gcc           fortran      anlauf         Associating entity does not have target attribute if selector has pointer attribute in associate block
114001  gcc           fortran     anlauf          is_contiguous considers unlimited polymorphic dummy always as contiguous
112787  gcc           target       avieira        Codegen regression of large GCC vector extensions when enabling SVE
114160  gcc           target       cmuellner      ICE on RISCV (-mcpu=thead-c906) when building glibc in dwarf2out_frame_debug_cfa_offset
110882  gcc           analyzer     dmalcolm       ICE with -fanalyzer on zero-sized array
111289  gcc           analyzer     dmalcolm       Unwarranted -Wanalyzer-va-arg-type-mismatch warning
112790  gcc           analyzer     dmalcolm       Wanalyzer-deref-before-check false positives seen in Linux kernel due to inlining
112792  gcc           analyzer     dmalcolm       Wanalyzer-out-of-bounds false positives seen on Linux kernel with certain unions
114316  gcc           libstdc+     fdumont        assert failure with _GLIBCXX_DEBUG and empty range of singular iterators passed to std:: algorithm
108121  gcc           modula2      gaius          Failing tests on x86_64-linux-gnu
110754  gcc           middle-e     jakub          assume create spurious load for volatile variable
105456  gcc           libfortr     jvdelisle      Child I/O does not propage iostat
114747  gcc           target       kito           Wrong SEW set for mixed-size intrinsics
104831  gcc           target       patrick        RISCV libatomic LR.aq/SC.rl pair insufficient for SEQ_CST
108174  gcc           target       pinskia        ICE: tree check: expected function_type or method_type, have ggc_freed in aarch64_resolve_overloaded_memtag, at config/aarch64/aarch64-builtins.cc:3349
114314  gcc           driver       pinskia        ICE: in common_handle_option, at opts.cc:3356 with -fno-multiflags
99493   gcc            c++         ppalka         Address of template parameter object is not a valid template argument
99631   gcc            c++         ppalka         decltype of non-type template-parameter shouldn't be const
104634  gcc            c++         ppalka         Explicit template instantiation does not work when there are multiple partial template specialization using concepts
110809  gcc            c++         ppalka         ICE: in unify, at cp/pt.cc:25226 with floating-point NTTPs
110927  gcc            c++         ppalka         GCC fails to parse dependent type in concept through partial specialization
111493  gcc            c++         ppalka         multidimensional subscript operator inside requires is broken
113242  gcc            c++         ppalka         g++ rejects-valid template argument of class type containing an lvalue reference
113529  gcc            c++         ppalka         Incorrect result of requires-expression in case of function call ambiguity and `operator<=>`
108046  gcc          libstdc+      redi           The dot in the floating-point alternative form has wrong position
110708  gcc          libstdc+      redi           std::format("{:%EEC %OOd}", std::chrono::system_clock::now()) should be rejected        2023-07-28
110719  gcc          libstdc+      redi           Should chrono formatters always use std::time_put for locale's representation?
110860  gcc          libstdc+      redi           std::format("{:f}",2e304) invokes undefined behaviour
110862  gcc          libstdc+      redi           format out of bounds read on format string "{0:{0}"
110917  gcc          libstdc+      redi           std::format_to(int*, ...) fails to compile because of _S_make_span
110944  gcc          libstdc+      redi           std::variant & optional GDB representation is too verbose
110968  gcc          libstdc+      redi           format out of bounds read on format("{:05L}",-1.f)
110970  gcc          libstdc+      redi           clang / c++23 missing 'typename' prior to dependent type name
110990  gcc          libstdc+      redi           `format_to_n` returns wrong value
111511  gcc          libstdc+      redi           Incorrect ADL in std::to_array in GCC 11/12/13
111826  gcc          libstdc+      redi           __cpp_lib_format should be 202110, not 202106
111948  gcc          libstdc+      redi           subrange modifies a const size object
112607  gcc          libstdc+      redi           _Normalize does not consider char_type for the basic_string_view case
112832  gcc          libstdc+      redi           Broken non-SFINAE-friendly `set_debug_format()` for `const char *` formatter
113500  gcc          libstdc+      redi           Using std::format with float or double based std::chrono::time_point causes error: no match for 'operator<<'
13512   gcc          libstdc+      redi           Incorrect results for std::format("{:#.3g}", flt)
114103  gcc          libstdc+      redi           FAIL: 29_atomics/atomic/lock_free_aliases.cc -std=gnu++20 (test for excess errors)
114152  gcc          libstdc+      redi           Wrong exception specifiers for LFTSv3 scope guard destructors
114863  gcc          libstdc+      redi           std::format applying grouping to nan's and inf's
115063  gcc          libstdc+      redi           compilation error: std::basic_stracktrace::max_size()
105523  gcc           target       saaadhu        Wrong warning array subscript [0] is outside array bounds
93370   gcc           target       unassigned     Aarch64 accepts but ignores target("+sm4") unless ARMv8.2-A is enabled
93762   gcc          fortran       unassigned     Truncation of deferred-length string when passing as optional
100285  gcc          libstdc+      unassigned     experimental/net/socket/socket_base.cc fails on arm-eabi (r12-137)
106037  gcc           ada          unassigned     internal error with Aggregate aspect on array type
110127  gcc           c++          unassigned     -fimplicit-constexpr leads to extremely slow and memory intensive compilation
110133  gcc          libstdc+      unassigned     System error message should ideally use strerror_r over strerror
110974  gcc          libstdc+      unassigned     format out of bounds read on invalid format string "{:{}."
111102  gcc          libstdc+      unassigned     illegal pointer arithmetic invoked by std::format("L{:65536}",1)
112480  gcc          libstdc+      unassigned     optional<T>::reset emits inefficient code when T is trivially-destructible
113294  gcc          libstdc+      unassigned     constexpr error from accessing inactive union member in basic_string after move assignment
113815  gcc            ada         unassigned     error: there is no applicable operator "*" for a string type
113824  gcc          target        unassigned     AVR: ATA5795 in wrong multilib set      2024-02-08
113850  gcc          libgcc        unassigned     condition variables timed wait does a lot of spurious wakeups on Win32 threading implementation
113927  gcc          target        unassigned     Sets up a stack-frame even for trivial code
114136  gcc         middle-e       unassigned     wrong code for c23 fully anonymous arg lists on arm
97245   gcc         fortran        anlauf         ASSOCIATED intrinsic does not recognize a pointer variable the second time it is used
101135  gcc         fortran        anlauf         Load of null pointer when passing absent assumed-shape array argument for an optional dummy argument
110825  gcc         fortran        anlauf         TYPE(*) dummy argument to generate an unused hidden argument
110826  gcc         fortran        anlauf         Fortran array of derived type with a pointer to function with dimensional arguments fails
113799  gcc         fortran        anlauf         gfc_replace_expr: double free detected ?
114012  gcc         fortran        anlauf         overloaded unary operator called twice
113601  gcc         target         gjl            avr: Wrong SRAM start for ATmega3208 and ATmega3209
107201  gcc         target         unassigned     -nodevicelib not working for devices -mmcu=avr...
114024  gcc        fortran         unassigned     ICE allocate statement with source=cmp%re and z an array
53372   gcc        target          unassigned     Section attribute ignored with address space
112952  gcc        target          unassigned     avr: attribute address not working with -fdata-sections -fno-common
114752  gcc        target          unassigned     AVR: internal compiler error. Unknown mode: const_double:DF
114794  gcc        target          unassigned     Speed up udivmodqi4

(From OE-Core rev: 20b94a6f3681afc9d5f7c07d571fcc47efcc9827)

Signed-off-by: Deepthi Hemraj <Deepthi.Hemraj@windriver.com>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-06-14 05:19:22 -07:00
Siddharth
fdfdd7b319 openssl: Upgrade 3.2.1 -> 3.2.2
CVE's Fixed by upgrade:
CVE-2024-4741: Fixed potential use after free after SSL_free_buffers() is called
CVE-2024-4603: Fixed an issue where checking excessively long DSA keys or parameters may be very slow
CVE-2024-2511: Fixed unbounded memory growth with session handling in TLSv1.3

Bugs Fixed by upgrade:
#23560: Fixed bug where SSL_export_keying_material() could not be used with QUIC connections

Removed backports of CVE-2024-2511, CVE-2024-4603 and bti.patch as they
are already fixed.

Detailed Information:
https://github.com/openssl/openssl/blob/openssl-3.2/CHANGES.md#changes-between-321-and-322-4-jun-2024

(From OE-Core rev: f99c9346c225b862cc26923e823c35484beb797f)

Signed-off-by: Siddharth Doshi <sdoshi@mvista.com>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-06-14 05:19:22 -07:00
Ross Burton
ef6b1510d5 gdk-pixbuf: upgrade 2.42.11 -> 2.42.12
- Fix a build failure (Christian Heusel)
- Fix occasional build failures (Benjamin Gilbert)
- ani: Reject files with multiple INA or IART chunks (Benjamin Gilbert)
- ani: Reject files with multiple anih chunks (Benjamin Gilbert, CVE-2022-48622)
- ani: validate chunk size (Benjamin Gilbert)
- Translation updates

(From OE-Core rev: 246c1b01ca21a8102ab7a400f88621e8a95281af)

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit c5b202b0aef56ecf7982887c54b4ecbc4bbe73ae)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-06-14 05:19:22 -07:00
Wang Mingyu
1bd707ab14 gdk-pixbuf: upgrade 2.42.10 -> 2.42.11
0001-meson.build-allow-a-subset-of-tests-in-cross-compile.patch
fatal-loader.patch
refreshed for 2.42.11

Changelog:
===========
- Disable fringe loaders by default
- Introspection fixes
- Translation updates

(From OE-Core rev: 78d7d14194f25be800fb42c8e81f7709611d26cd)

Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 243a6fce44882ff16c5dfcb518cafd8ee8f7ae24)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-06-14 05:19:22 -07:00
Soumya Sambu
750ceb4b76 util-linux: Fix CVE-2024-28085
wall in util-linux through 2.40, often installed with setgid
tty permissions, allows escape sequences to be sent to other
users' terminals through argv. (Specifically, escape sequences
received from stdin are blocked, but escape sequences received
from argv are not blocked.) There may be plausible scenarios
where this leads to account takeover.

References:
https://nvd.nist.gov/vuln/detail/CVE-2024-28085

(From OE-Core rev: b40a77416f73955833faeddf6091a99ff9837199)

Signed-off-by: Soumya Sambu <soumya.sambu@windriver.com>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-06-14 05:19:22 -07:00
Richard Purdie
125ca0ff2f bitbake: tests/fetch: Tweak test to match upstream repo url change
Upstream changed their urls, update our test to match.

(Bitbake rev: 0791e66a47185d6f202af6be0d39e36a8e41850a)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit dc391b86540ec5e0a0f1d811c776a22d443b1c06)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-06-14 05:19:21 -07:00
Joshua Watt
83793ccd86 bitbake: siggen: Enable batching of unihash queries
Uses the batching API of the client to reduce the effect of latency when
making multiple queries to the server

(Bitbake rev: fdac31655fb5441139f70e50292dbb5774cfdafe)

Signed-off-by: Joshua Watt <JPEWhacker@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-06-06 06:53:49 -07:00
Joshua Watt
934c533196 bitbake: hashserv: client: Add batch stream API
Changes the stream mode to do "batch" processing. This means that the
sending and reciving of messages is done simultaneously so that messages
can be sent as fast as possible without having to wait for each reply.
This allows multiple messages to be in flight at once, reducing the
effect of the round trip latency from the server.

(Bitbake rev: f99a17023b972d0d90dccb111f983655af6ccb87)

Signed-off-by: Joshua Watt <JPEWhacker@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-06-06 06:53:49 -07:00
Joshua Watt
d1811356b7 bitbake: bb: Use namedtuple for Task data
Task dependency data is becoming unwieldy with the number of indices it
contains. Convert it to use a named tuple instead, which allows members
to be indexed by a named property or an index (which allows it to retain
backward compatibility).

(Bitbake rev: bc7c44affe8e3fa94e92c3bcb8ad85bf11963779)

Signed-off-by: Joshua Watt <JPEWhacker@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-06-06 06:53:49 -07:00
Richard Purdie
bcb569e698 bitbake: runqueue: Improve rehash get_unihash parallelism
Improve the rehash code to query unihashes in parallel since this is more
efficient on slower links.

(Bitbake rev: 682fb42420eebf18f8a98bd3992baf9034dac5ac)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-06-06 06:53:49 -07:00
Richard Purdie
cc341e44bf bitbake: runqueue: Process unihashes in parallel at init
Improve the runqueue init code to call unihash queries in parallel since
this is faster and more efficient, particularly on slower links with longer
round trip times.

The call to the function from cooker is unneeded since that function calls
prepare() and hence this functionality will already have run, so drop
that obsolete call.

(Bitbake rev: e0486054c7a4c637446c18608e9983cc8dc4d7fe)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-06-06 06:53:49 -07:00
joshua Watt
fa23d0fc6d bitbake: siggen/runqueue: Report which dependencies affect the taskhash
Report which task dependencies in BB_TASKDEPDATA are included in the
taskhash. This allows tasks to identify which tasks dependencies may
change without the task re-running. Knowing this information is
important for tasks that want to transfer information from dependencies
(such as SPDX)

(Bitbake rev: 853423661779023763a87462b623b6e9ff2798b2)

Signed-off-by: Joshua Watt <JPEWhacker@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-06-06 06:53:49 -07:00
Richard Purdie
fb60467f0e bitbake: runqueue: Allow rehash loop to exit in case of interrupts
The initial hash serve loop exits in the case where interrupts are present
but probably checks a bit too often. Tweak that and also allow the slow
rehash loop to break on interrupt, improving bitbake Ctrl+C response.

(Bitbake rev: ca2f63d84b90cbd99936c9d7815d912d9019a594)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-06-06 06:53:49 -07:00
Richard Purdie
bb93b6d1fb bitbake: runqueue: Add timing warnings around slow loops
With hashserve enabled, there are two slow paths/loops, one at initial runqueue
generation and also during the rehash process when new outhashes are found.

Add timing information at the hashserve log level for when these loops
take longer than 30s or 60s overall. This will leave evidence in the logs when
things are running particularly slowly.

(Bitbake rev: 9ee503c79936b13f1d45f9e43211f77a528cdbfa)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-06-06 06:53:49 -07:00
Rasmus Villemoes
ae6cebca5b git: set --with-gitconfig=/etc/gitconfig for -native builds
Commit 6c2ae2346db0 (kern-tools: depend on git-replacement-native)
broke our kernel builds. For saving space and time, we have a DL_DIR
shared between multiple users/buildbots, not all of which run with the
same uid (and with appropriate sticky bits set so that files
downloaded by one user become owned by a common group and are readable
by others). This works fine also for git sources because the docker
images we use all have a /etc/gitconfig with

  [safe]
    directory = *

But with the mentioned commit, the host's git is no longer used for
do_unpack (nor for do_fetch if re-building and sysroot has already
been populated by a previous build), causing spurious "fatal: detected
dubious ownership..." failures.

Currently, the path where the git-native binary searches for system
gitconfig is the sysroot from it was built, which obviously doesn't
contain a /etc/gitconfig. As for the nativesdk variant, respect the
host's /etc/gitconfig if present.

(From OE-Core rev: a3f5ac9f9fee2c8e10fec7c3f758e49513fef724)

Signed-off-by: Rasmus Villemoes <rasmus.villemoes@prevas.dk>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 572f511f7ff02fb559ac42d2d5dbd09fec478d97)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-06-05 05:57:12 -07:00
Philip Lorenz
d37ef8925a ipk: Fix clean up of extracted IPK payload
It turns out that the IPK payload tarball was actually cleaned up in the
concrete package manager implementation (most likely because at some
point Debian and IPK packages used different compression algorithms).

Globbing removes this ambiguity so move the removal of the payload into
the common extract method.

(From OE-Core rev: ec1c6bc79f5ca219e77a379bbabc2dad808d2020)

Signed-off-by: Philip Lorenz <philip.lorenz@bmw.de>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 1e2b02a54f482159e21902eeb997b21e00e9588e)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-06-05 05:57:12 -07:00
Philip Lorenz
fb4eb8a09d lib/package_manager/ipk: Do not hardcode payload compression algorithm
The chosen payload compression algorithm can be changed by overriding
`OPKGBUILDCMD`. Ensure that package extraction deals with this by
globbing for "data.tar.*" to select the actual payload tarball.

(From OE-Core rev: c2b00cd4148d4b08ba5673488a652f8daf3ac085)

Signed-off-by: Philip Lorenz <philip.lorenz@bmw.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 2ad05635a6da403b4fadcc126fe7734067c12c73)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-06-05 05:57:12 -07:00
Peter Marko
1d751a0e83 update-rc.d: add +git to PV
This hash is ahead of the tag, so adapt PV accordingly.

(From OE-Core rev: c94e46019a7d443ccc4763ba16d87e7e97abe977)

(From OE-Core rev: 54cbf43e55ec3373f8c2612b787166da35028fd3)

Signed-off-by: Peter Marko <peter.marko@siemens.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-06-05 05:57:12 -07:00
Marek Vasut
184753b1af gstreamer1.0-plugins-good: Include qttools-native during the build with qt5 PACKAGECONFIG
The qttools provide 'lrelease' tool, which is checked by recent
versions of meson build system. Unless the qttools are available
in sysroot, meson will fail to detect qt5 installation at build
time and the gstreamer build will fail. Fix this by including
the qttools-native.

(From OE-Core rev: 4e9274f2719eea91de3c98b9f88a7e2ebebcce90)

Signed-off-by: Marek Vasut <marex@denx.de>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit ae2ca4af54695003638da38f8548aa8573d18201)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-06-05 05:57:12 -07:00
Julien Stephan
a905386e10 oeqa/selftest/devtool: add test for updating local files into another layer
We don't have a test to check if we can correctly devtool update-recipe/finish
into another layer. So update the existing test_devtool_update_recipe_local_files
to also check the updates into another layer.

(From OE-Core rev: bd44c895d36e246a25c7a6e40bf9f4089dc7a297)

(From OE-Core rev: 0532a6292edbe68303b6d85017ebcdb36a60886f)

Signed-off-by: Julien Stephan <jstephan@baylibre.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Jeff Harris <jefftharris@gmail.com>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-06-05 05:57:12 -07:00
Julien Stephan
d00c23ef3e devtool: standard: update-recipe/finish: fix update localfile in another layer
When trying to use devtool update-recipe/finish on another layer, with modified
local file we have the following error:

  Traceback (most recent call last):
    File "<..>/poky/scripts/devtool", line 350, in <module>
      ret = main()
            ^^^^^^
    File "<..>/poky/scripts/devtool", line 337, in main
      ret = args.func(args, config, basepath, workspace)
            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File "<..>/poky/scripts/lib/devtool/standard.py", line 1968, in update_recipe
      updated, _, _ = _update_recipe(args.recipename, workspace, rd, args.mode, args.append, args.wildcard_version, args.no_remove, args.initial_rev, dry_run_outdir=dry_run_outdir, no_overrides=args.no_overrides, force_patch_refresh=args.force_patch_refresh)
                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File "<..>/poky/scripts/lib/devtool/standard.py", line 1930, in _update_recipe
      updated, appendf, removed = _update_recipe_patch(recipename, workspace, srctree, crd, appendlayerdir, wildcard_version, no_remove, no_report_remove, initial_rev, dry_run_outdir, force_patch_refresh)
                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File "<..>/poky/scripts/lib/devtool/standard.py", line 1747, in _update_recipe_patch
      patchdir = param.get('patchdir', ".")
                 ^^^^^^^^^
  AttributeError: 'str' object has no attribute 'get'

This was introduced when adding support for git submodules.
No selftest case exists to catch this, so a selftest will be
added in another commit.

(From OE-Core rev: de7ca9f800e15e10271502da7e51e3ae08e0c85b)

(From OE-Core rev: b4fb19df1746d04c9534feff58a9e534705d46df)

Signed-off-by: Julien Stephan <jstephan@baylibre.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Jeff Harris <jefftharris@gmail.com>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-06-05 05:57:12 -07:00
Yogita Urade
df183ca5b0 libarchive: upgrade 3.7.2 -> 3.7.4
Changlog:
========
   rar: Fix OOB in rar e8 filter
   zip: Fix out of boundary access
   7zip: Limit amount of properties
   bsdtar: Fix error handling around strtol() usages
   passphrase: Improve newline handling on Windows
   passphrase: Never allow empty passwords
   rar: Fix "File CRC Error" when extracting specific rar4 archives
   xar: Avoid infinite link loop
   zip: Update AppleDouble support for directories
   zstd: Implement core detection
   PCRE2 support
   add trailing letter b to bsdtar(1) substitute pattern
   add support for long options "--group" and "--owner" to tar(1)
   Fix possible vulnerability in tar error reporting introduced in f27c173
   ISO9660: preserve the natural order of links
   rar5: fix decoding unicode filenames on Windows
   rar5: fix infinite loop if during rar5 decompression the last block produced no data
   xz filter: fix incorrect eof at the end of an lzip member
   zip: fix end-of-data marker processing when decompressing zip archives
   multiple bsdunzip(1) fixes
   filetime truncation fix on Windows

Adjusted configurehack.patch to align with upgraded version.

(From OE-Core rev: 1c789d692e0bbea4c26cfad8c36abf051f54a444)

Signed-off-by: Yogita Urade <yogita.urade@windriver.com>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-06-05 05:57:12 -07:00
Changqing Li
4ffcc07420 ptest-runner: Bump to 2.4.4 (95f528c)
Changes in 2.4.4:
95f528c utils.c: run_ptests improve error handling on ptests iteration
c48e5fc utils.c: run-ptests improve pseudo-terminal handling

(From OE-Core rev: c0061e8e30c0bbd45c31f56d01ed5b688a641e9e)

Signed-off-by: Changqing Li <changqing.li@windriver.com>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-06-05 05:57:12 -07:00
Khem Raj
0163ea4421 llvm: Switch to using release tarballs
git checkouts are in excess of 3G, which is not
ideal for everyone to download/clone, instead switch to
fetching release tarball which is ~126M as of 18.1.5 release

(From OE-Core rev: 800e6576e4f3af10846af13c2f217f986c1afdb4)

(From OE-Core rev: 251d626a7d3cf6dfb3c0d8617f6cace666c7ea74)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Peter Marko <peter.marko@siemens.com>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-06-05 05:57:12 -07:00
Khem Raj
ce5fdf4ff6 llvm: Upgrade to 18.1.5
Brings

617a15a9eac9 [clang codegen] Fix MS ABI detection of user-provided constructors. (#90151)
20b9ed64ea07 [RISCV][ISel] Fix types in tryFoldSelectIntoOp (#90659)
ece9d35f1a70 [GlobalISel] Fix store merging incorrectly classifying an unknown index expr as 0. (#90375)
a7b8b890600a [X86] Enable EVEX512 when host CPU has AVX512 (#90479)
4da5b1417493 [GlobalISel] Don't form anyextending atomic loads.
a96b04442c9f [AArch64] Remove invalid uabdl patterns. (#89272)
aea091b70eda [clang][CoverageMapping] do not emit a gap region when either end doesn't have valid source locations (#89564)
58648f334d62 [X86][EVEX512] Check hasEVEX512 for canExtendTo512DQ (#90390)
6350acdb134d [CGP] Drop poison-generating flags after hoisting (#90382)
f341c76b9461 [Clang] Handle structs with inner structs and no fields (#89126)
abf6b13085fb [IRCE] Skip icmp ptr in InductiveRangeCheck::parseRangeCheckICmp (#89967)
ee5bb0c95667 Fix Objective-C++ Sret of non-trivial data types on Windows ARM64 (#88671)
6dbaa89433f7 [clang-format] Fix a regression in ContinuationIndenter (#88414)
51ff7f38b633 [clang-format] Fix a regression in annotating TrailingReturnArrow (#86624)
b544217fb31f [AMDGPU] Fix setting nontemporal in memory legalizer (#83815)
78b99c73ee4b [DAGCombiner] Fix miscompile bug in combineShiftOfShiftedLogic (#89616)
1aa91720cc4f [DAGCombiner] Pre-commit test case for miscompile bug in combineShiftOfShiftedLogic
35fea1032741 release/18.x: [clang-format] Correctly annotate braces in macros (#87953)
b9b73814ad8a [libcxx] [modules] Add _LIBCPP_USING_IF_EXISTS on aligned_alloc (#89827)
c0b48372d82a release/18.x: [clang-format] Revert breaking stream operators to previous default (#89016)
3b4ba7277bd7 [analyzer] Fix performance of getTaintedSymbolsImpl() (#89606)
7699b341b763 release/18.x: [clang-format] Fix a regression in annotating BK_BracedInit (#87450)
fb865928c8e0 [GlobalISel] Fix fewerElementsVectorPhi to insert after G_PHIs (#87927)
111ae4509c96 [X86] Fix miscompile in combineShiftRightArithmetic
76cbd417af50 [X86] Pre-commit tests (NFC)
e7c816b3cd3e [InstCombine] Fix unexpected overwriting in foldSelectWithSRem (#89539)
3685a599c866 ReleaseNote: Mention SpecialCaseList change (#89141)
a981a4f7653c [X86] Always use 64-bit relocations in no-PIC large code model (#89101)
4ddac856c55f [analyzer] Fix a security.cert.env.InvalidPtr crash
c6d63d4fc555 Bump version to 18.1.5 (#89291)

(From OE-Core rev: 02df2fc6241ac8fb0e78f2fdff97a04e5c561d54)

(From OE-Core rev: b01e94690c3c29cd1e666e671c98e500c13e1942)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Peter Marko <peter.marko@siemens.com>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-06-05 05:57:12 -07:00
Khem Raj
6caf81a6eb llvm: Upgrade to 18.1.4
Brings following fixes

* e6c3289804a6 [CMake][Release] Disable PGO (#88465) (#89000)
* 028e425f86cc [MIPS] Fix the opcode of max.fmt and mina.fmt (#85609)
* e3c832b37b0a Fix override keyword being print to the left side
* 1deeee3f5da4 Revert "[Mips] Fix missing sign extension in expansion of sub-word atomic max (#77072)"
* 995539ce05ba [LLD] [COFF] Don't add pseudo relocs for dangling references (#88487)
* db67e6fb9ad1 [libc++] Fix -Wgnu-include-next in stddef.h (#88214)
* 647fbc710840 [SelectionDAG] Prevent combination on inconsistent type in `combineCarryDiamond` (#84888)
* eaae766a20fd [RISCV] Support rv{32, 64}e in the compiler builtins (#88252)
* c24b41d71f2e github-upload-release.py: Fix bug preventing release creation (#84571)
* c837970dd7e9 [Codegen][X86] Fix /HOTPATCH with clang-cl and inline asm (#87639)
* d0ddcce21d91 [InstSimplify] Make sure the simplified value doesn't generate poison in threadBinOpOverSelect (#87075)
* 4056cc29dfd3 Prepend all library intrinsics with `#` when building for Arm64EC (#87542)
* 6e071cf30599 [SLP]Fix a crash if the argument of call was affected by minbitwidth analysis.
* d89da2ac8839 [libcxx] coerce formatter precision to int (#87738)
* b6ebea7972cd [SPARC] Implement L and H inline asm argument modifiers (#87259)
* bffecba7ce4c [libc++] Simplify the implementation of <stddef.h> (#86843)
* 9899a2d76c8f [lit][ci] Publish lit wheels (#88072)
* 3ceccbdb1995 [clang-format] Correctly annotate braces of empty ctors/dtors (#82097)
* 429d62872525 [Headers] Don't declare unreachable() from stddef.h in C++ (#86748)
* feba8727f805 [ConstantRange] Fix off by 1 bugs in UIToFP and SIToFP handling. (#86041)
* e4259b583c92 [Float2Int] Pre-commit test for SIToFP/UIToFP ConstantRange bug. NFC
* daca56d8e162 Bump version to 18.1.4 (#87715)

(From OE-Core rev: adc2651a8e902af24fee6ff30a72f4b7c63bef6f)

(From OE-Core rev: 56ef42d454fb13a0eff0a7210a37ec4b54a2afc3)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Peter Marko <peter.marko@siemens.com>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-06-05 05:57:12 -07:00
Archana Polampalli
d7cbee7a50 xserver-xorg: upgrade 21.1.11 -> 21.1.12
This release contains security fixes for

* CVE-2024-31080
* CVE-2024-31081
* CVE-2024-31082
* CVE-2024-31083

Changelog:
===========
101caa1b0 (tag: xorg-server-21.1.12) xserver 21.1.12
117315640 render: fix refcounting of glyphs during ProcRenderAddGlyphs
0e34d8ebc Xquartz: ProcAppleDRICreatePixmap needs to use unswapped length to send reply
cea92ca78 Xi: ProcXIPassiveGrabDevice needs to use unswapped length to send reply
8a7cd0e3e Xi: ProcXIGetSelectedEvents needs to use unswapped length to send reply
5ca3a9513 Xext: SProcSyncCreateFence needs to swap drawable id too
5d7272f05 Allow disabling byte-swapped clients
8a46a463f Initialize Mode->name in xf86CVTMode()
f653d9a0a hw/xfree86: fix NULL pointer refrence to mode name
8b75ec34d dix: Fix use after free in input device shutdown

https://lists.x.org/archives/xorg-announce/2024-April/003497.html

(From OE-Core rev: 64174dc0f593baa4f74c0080726de94802b903ef)

Signed-off-by: Archana Polampalli <archana.polampalli@windriver.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 12dfa6889a1c322d0e20fd9b7638dcb861e032f2)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-06-05 05:57:12 -07:00
Mark Hatle
59c0a35bb8 gcc: Fix for CVE-2024-0151
Fix for insufficient argument checking in Secure state Entry functions
in software using Cortex-M Security Extensions (CMSE), that has been
compiled using toolchains that implement 'Arm v8-M Security Extensions
Requirements on Development Tools' prior to version 1.4, allows an
attacker to pass values to Secure state that are out of range for types
smaller than 32-bits. Out of range values might lead to incorrect
operations in secure state.

(From OE-Core rev: 165a7007678c27b6c0a27cda25652a00768c2fee)

Signed-off-by: Mark Hatle <mark.hatle@amd.com>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-06-05 05:57:12 -07:00
Archana Polampalli
96b48c195a ghostscript: fix CVE-2024-29510
(From OE-Core rev: 202b2b0a5c447baf7d84c19b7829a81a846413d9)

Signed-off-by: Archana Polampalli <archana.polampalli@windriver.com>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-06-05 05:57:12 -07:00
Archana Polampalli
0c079e62fb ghostscript: fix CVE-2024-33871
(From OE-Core rev: c28281b7e105536cdf61eef8fe81d85ff2a42e4f)

Signed-off-by: Archana Polampalli <archana.polampalli@windriver.com>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-06-05 05:57:12 -07:00
Archana Polampalli
235050fbfa ghostscript: fix CVE-2024-33869
(From OE-Core rev: d24e9c6c1016fbe8522f647aca76d93ab9cc5a41)

Signed-off-by: Archana Polampalli <archana.polampalli@windriver.com>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-06-05 05:57:12 -07:00
Archana Polampalli
3a3c1f7dc6 ghostscript: fix CVE-2024-33870
(From OE-Core rev: b95a08ec9f70a0b21f5fc239eda1857cea54702f)

Signed-off-by: Archana Polampalli <archana.polampalli@windriver.com>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-06-05 05:57:12 -07:00
Ricardo Simoes
349e4c816a libusb1: Set CVE_PRODUCT
This commit sets the CVE_PRODUCT variable to "libusb" to match the
product name used in the NIST CPE database [1].

[1]: https://nvd.nist.gov/products/cpe/search

(From OE-Core rev: 89e991380aac2bea93732a8dff1c4c646bb2cea1)

Signed-off-by: Ricardo Simoes <ricardo.simoes@pt.bosch.com>
Signed-off-by: Mark Jonas <mark.jonas@de.bosch.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Peter Marko <peter.marko@siemens.com>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-06-05 05:57:12 -07:00
Soumya Sambu
c78f26dbfd ncurses: Fix CVE-2023-45918
ncurses 6.4-20230610 has a NULL pointer dereference in tgetstr in tinfo/lib_termcap.c.

References:
https://nvd.nist.gov/vuln/detail/CVE-2023-45918

(From OE-Core rev: 6573995adf4cfd48b036f8463b39f3864fcfd85b)

(From OE-Core rev: 5385b15345dddc958fc961246e56b962db735276)

Signed-off-by: Soumya Sambu <soumya.sambu@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Peter Marko <peter.marko@siemens.com>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-06-05 05:57:12 -07:00
Peter Marko
50b2758182 ttyrun: define CVE_PRODUCT
Single executable ttyrun is taken ouf of s390-tools repository
containing ton of other helper tools.
CVEs are not assigned to executables, but to whole components.
Historically there also already exists one CVE for s390-tools.

Most of the CVEs will not be for ttyrun, but this is the way
how to get notified even if most we get will have to be ignored.

(From oe-core rev: df28547387c2c122aef3e5326b216ec3f4d3caa7)

(From OE-Core rev: 9e07ff39c1b2794d6de7f8d14cdf47707db50f5a)

Signed-off-by: Peter Marko <peter.marko@siemens.com>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-06-05 05:57:12 -07:00
Sven Schwermer
c5df9c829a bitbake: fetch2/gcp: Add missing runfetchcmd import
This adds the missing import. This bug was introduced with 1ab1d36c.

(Bitbake rev: b5159c0373e2e7d403aed16e096ad655f38b1fa7)

Signed-off-by: Sven Schwermer <sven.schwermer@disruptive-technologies.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-05-29 07:50:00 -07:00
Richard Purdie
74ea960113 bitbake: parse: Improve/fix cache invalidation via mtime
We have been seeing obscure failures in devtool, particularly on newer
autobuilder workers where it appears the cache is assumed to be valid
when it shouldn't be.

We're using the 'seconds' granulation mtime field which is not really
a good way of telling if a file has changed. We can switch to the "ns"
version which is better however also add in inode number and size as
precautions. We already have all this data and tuples are fast so there
isn't really any cost to do so.

This hopefully fixes [YOCTO #15318].

(Bitbake rev: 2aa519fec30ecf0e55202d6421fbba2f0320e211)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit d9e5d313c79500e3c70ab9c3239b6b2180194f67)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-05-29 07:50:00 -07:00
joshua Watt
107a6cec75 bitbake: cooker: Handle ImportError for websockets
Handles ImportError when creating a hash equivalence to ping the server.
This notifies user earlier with a more precise error if websockets can't
be used, and also prevents passing a known bad upstream value to the
local server

(Bitbake rev: 93190565fd1251e8f47d9a6291739f8b8ed5ec87)

Signed-off-by: Joshua Watt <JPEWhacker@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit aa80b3cfc5d16dfba13ca7fb9b78bae179ce3b74)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-05-29 07:50:00 -07:00
Ross Burton
68f9a4b73d oeqa/selftest/debuginfod: use localpkgfeed to speed server startup
Sometimes the debuginfod selftest fails due to a timeout, because it
spends too long scanning a huge deploy directory that due to what tests
were ran previously can contain 30K packages.

The test only needs a subset of the feed, so use the new localpkgfeed
class to construct a minimal feed before running the test.

[ YOCTO #14937 ]

(From OE-Core rev: 0795169be206f1d4d140fe378e2476a44d0ce02b)

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 855376f518b28248ccd82ef5b2e89e6a8c970542)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-05-23 08:55:01 -07:00
Ross Burton
86ea22d047 selftest/classes: add localpkgfeed class
This class can be used to construct a subset of a deployed package feed
for use in tests which iterate the deploy directory, and as such a huge
feed of 30K+ packages can result in very slow tests.

(From OE-Core rev: 00e4eb179b6bd4fca2499d997c60889c3d7ff632)

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit c5486d6ad32457f09c104d5dd31314bd570912d3)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-05-23 08:55:01 -07:00
Ross Burton
0fe72b1a67 lib/oe/package-manager: allow including self in create_packages_dir
This function is typically used to construct a limited feed for image
creation, but there are other cases when you might want a limited feed
and include the current recipe's packages in it.

To ensure that existing behaviour is preserved, add a boolean to control
this behaviour and default it to False.

(From OE-Core rev: 20a6f55328733ad6f0c05b1353e8d525019aeea7)

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit aada7fda2b118152d82b1ab295d92b8251afe4ac)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-05-23 08:55:01 -07:00
Sven Schwermer
f490519999 recipetool: Handle several go-import tags in go resolver
When dynamically resolving go modules, the HTML page may contain several
go-import meta tags. We must handle all and pick the correct one based
on the module name. An example for such a behaviour is
gonum.org/v1/gonum:

<meta name="go-import" content="gonum.org/v1/exp git https://github.com/gonum/exp">
<meta name="go-import" content="gonum.org/v1/gonum git https://github.com/gonum/gonum">
<meta name="go-import" content="gonum.org/v1/hdf5 git https://github.com/gonum/hdf5">
<meta name="go-import" content="gonum.org/v1/netlib git https://github.com/gonum/netlib">
<meta name="go-import" content="gonum.org/v1/plot git https://github.com/gonum/plot">
<meta name="go-import" content="gonum.org/v1/tools git https://github.com/gonum/tools">

(From OE-Core rev: b198617a988d6eeef09b84e1009c0dc8fb55a9c5)

Signed-off-by: Sven Schwermer <sven.schwermer@disruptive-technologies.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 9c36a61e29359067165bddc7f2accdf2c4c8a761)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-05-23 08:55:01 -07:00
Sven Schwermer
1ba6abfd4a recipetool: Handle unclean response in go resolver
It appears that some go modules repond with a 404 error when trying to
resolve them dynamically. The response body may still contain the
go-import meta tag. An example for such behaviour is gonum.org/v1/gonum.

(From OE-Core rev: d61934122cdc9f2d68f99e5e3363c3f1808e7782)

Signed-off-by: Sven Schwermer <sven.schwermer@disruptive-technologies.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 8f2e14ab6562a9a68819a960c66a258ea9dbe246)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-05-23 08:55:01 -07:00
Zev Weiss
1a52a8e93e bash: Fix file-substitution error-handling bug
This is part of a patch that's been upstream for a while but hasn't yet
been released.  The bug is causing some downstream difficulties, so a
local patch to tide us over until the next release makes things a bit
easier.

(From OE-Core rev: 6a81ccc68f8389ca1c9c8eed009388045beea9e4)

Signed-off-by: Zev Weiss <zev@bewilderbeest.net>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit bf384d6618780dea2df24adac88ba4364cb65b9b)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-05-23 08:55:01 -07:00
Trevor Gamblin
2e084b7b80 patchtest: test_metadata: fix invalid escape sequences
Clear up the following warnings seen during patchtest runs:

|/workspace/yocto/poky/meta/lib/patchtest/tests/test_metadata.py:21: SyntaxWarning: invalid escape sequence '\+'
|  add_mark = pyparsing.Regex('\+ ')
|/workspace/yocto/poky/meta/lib/patchtest/tests/test_metadata.py:26: SyntaxWarning: invalid escape sequence '\:'
|  git_regex = pyparsing.Regex('^git\:\/\/.*')

(From OE-Core rev: b5406d3691341c050a62fc9a32dc5573fd0c484f)

Signed-off-by: Trevor Gamblin <tgamblin@baylibre.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 2d64317835a768898aac592b24fcbdfaf6c8357a)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-05-23 08:55:01 -07:00
Adriaan Schmidt
bef4fd23a0 libcgroup_3.1.0: fix build on non-systemd systems
backport upstream commit 592dcdcf243576bd2517d3da9bc18990de08e37e
to fix packaging when building with --enable-systemd=no

(From OE-Core rev: c0708adce620bcce5e503851fa6598bd941276eb)

Signed-off-by: Adriaan Schmidt <adriaan.schmidt@siemens.com>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-05-23 08:55:01 -07:00
Martin Hundebøll
9980bf64cc classes: image_types: apply EXTRA_IMAGECMD:squashfs* in oe_mksquashfs()
Since commit c991f9d6031 ("image_types: Set SOURCE_DATE_EPOCH for squashfs"),
I assume, the EXTRA_IMAGECMD:squashfs* variable(s) has been ignored.
This is due to the override magic, which isn't applied to functions
called by IMAGE_CMD:<type>, but only to the IMAGE_CMD:<type> itself.

Other image types (e.g. ext*) works around this by passing the
EXTRA_IMAGECMD variable as an argument to the called function.

To do the same for oe_mksquashfs(), the number of mandatory arguments is
fixed to one (with a little logic to handle the zstd filename). This
allows passing ${EXTRA_IMAGECMD} as an argument to oe_mksquashfs(),
which makes the variable functional again.

(From OE-Core rev: 39fc503036312e38ff0b9d8fb90b4c929b5ca7df)

Signed-off-by: Martin Hundebøll <martin@geanix.com>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-05-23 08:55:01 -07:00
Jose Quaresma
b79fbd4a0f Revert "goarch: disable dynamic linking globally"
This reverts commit 827c60b79e7fcafd14e68870f6b69dcc48ac9c39.

Fixed with the drop of the linkmode

(From OE-Core rev: 137bb70ddf9dce30374cbb366196da0d8cc94205)

Signed-off-by: Jose Quaresma <jose.quaresma@foundries.io>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 8f46f60a703defc3e74adad382320c129cef0b06)
Signed-off-by: Jose Quaresma <jose.quaresma@foundries.io>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-05-23 08:55:01 -07:00
Jose Quaresma
1148564ab7 go: Drop the linkmode completely
This will make possible to restore the default dynamic linking globally
which is what we had before the 1.20.X release.

(From OE-Core rev: 941c8535eaaca5790c9bc2b3d21d8ce402dbb431)

Signed-off-by: Jose Quaresma <jose.quaresma@foundries.io>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 6ad90fc2fc49c4199a59dfb1c1d81a7ba184a522)
Signed-off-by: Jose Quaresma <jose.quaresma@foundries.io>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-05-23 08:55:01 -07:00
Ralph Siemsen
b00462d6fb uboot-sign: fix loop in do_uboot_assemble_fitimage
When using multiple u-boot configurations in UBOOT_CONFIG, the helper
function uboot_assemble_fitimage_helper() was not called with all
combinations of type & binary, due to a copy-n-paste indexing error.

(From OE-Core rev: 0862abfede2680ff8d67c5e9ece2017f594cb8a1)

Signed-off-by: Ralph Siemsen <ralph.siemsen@linaro.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 2d338548a4b745a71eaf6c29231adc93c4165778)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-05-23 08:55:01 -07:00
Kai Kang
c9e5f6d0b0 webkitgtk: 2.44.0 -> 2.44.1
Update webkitgtk from 2.44.0 to the first bug fix release in the stable
2.44 series 2.44.1.

* remove backported patch

What's new in the WebKitGTK 2.44.1 release?
===========================================

  - Fix handling of lifetime of web view child dialogs in GTK4.
  - Do not schedule layer flushes when drawing area size is empty.
  - Fix videos with alpha when using the DMA-BUF sink.
  - Fix the build with USE_GBM=OFF.
  - Fix the build in 32bit platforms
  - Fix several crashes and rendering issues.

(From OE-Core rev: f891b66b981b0e023ffcf7e5cb2cd3fe99008f16)

Signed-off-by: Kai Kang <kai.kang@windriver.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit c129c47cf9fa119005ea6e3946ebdee0da1db7e0)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-05-23 08:55:01 -07:00
Wang Mingyu
f4ae486b78 llvm: upgrade 18.1.2 -> 18.1.3
0001-AsmMatcherEmitter-sort-ClassInfo-lists-by-name-as-we.patch
refreshed for 18.1.3

Changelog:
============
-DFixes tsan failures for glibc's LoongArch and certain RISC-V ports when
 fstat is used.
-transform.structured.convert_to_loops now properly deletes its target op.
-Fix a llvm.usub.with.overflow.i128 wrong code generation regression that
 was introduced with LLVM 18.1.0.
-MemorySanitizer on Linux can now run even when maximum-entropy address-space
 layout randomization is configured globally
-Fixed a Clang 18.x regression which increased binary size and stack usage with
 -ftrivial-auto-var-init.

(From OE-Core rev: c2666c09e9ef1f523cbbcc7c9b91fc36c4872823)

Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit d2159f92ddbb6b999c1d14ac62647b4a35360377)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-05-23 08:55:01 -07:00
Peter Marko
8205ff560c glibc: correct license
The license per [1] is LGPL-2.1-or-later and
[2] converted last LGPL-2.1-only references.

License-Update: corrected from LGPL-2.1-only to LGPL-2.1-or-later based on [1] and [2]

[1] https://www.gnu.org/software/libc/
[2] https://sourceware.org/git/?p=glibc.git;a=commitdiff;h=273a835fe7c685cc54266bb8b502787bad5e9bae

(From OE-Core rev: 939140fa7201ae0e7d365648c2ff5629e4c25ff9)

Signed-off-by: Peter Marko <peter.marko@siemens.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit b7ad15a59d048ca7561a03cb0fc8e2c24680ce5c)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-05-23 08:55:01 -07:00
Peter Marko
ee2d64d759 glibc: Update to latest on stable 2.39 branch
Adresses CVEs: CVE-2024-33599, CVE-2024-33600, CVE-2024-33601, CVE-2024-33602

Changes:
273a835fe7 time: Allow later version licensing.
acc56074b0 nscd: Use time_t for return type of addgetnetgrentX
836d43b989 login: structs utmp, utmpx, lastlog _TIME_BITS independence (bug 30701)
9831f98c26 login: Check default sizes of structs utmp, utmpx, lastlog
fd658f026f elf: Also compile dl-misc.os with $(rtld-early-cflags)
a9a8d3eebb CVE-2024-33601, CVE-2024-33602: nscd: netgroup: Use two buffers in addgetnetgrentX (bug 31680)
c99f886de5 CVE-2024-33600: nscd: Avoid null pointer crashes after notfound response (bug 31678)
5a508e0b50 CVE-2024-33600: nscd: Do not send missing not-found response in addgetnetgrentX (bug 31678)
1263d583d2 CVE-2024-33599: nscd: Stack-based buffer overflow in netgroup cache (bug 31677)
2f8f157eb0 x86: Define MINIMUM_X86_ISA_LEVEL in config.h [BZ #31676]
e701c7d761 i386: ulp update for SSE2 --disable-multi-arch configurations
e828914cf9 nptl: Fix tst-cancel30 on kernels without ppoll_time64 support

Since glibc introduced file sysdeps/arm/bits/wordsize.h
our multilib patch needed to be updated.

(From OE-Core rev: a8b1034d978e745951d5f690c89b9fca4e01e72e)

Signed-off-by: Peter Marko <peter.marko@siemens.com>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-05-23 08:55:01 -07:00
Peter Marko
3c1d8fd96e glibc: Update to latest on stable 2.39 branch
Adresses CVE-2024-2961

Remove backported patch included in hash update.

Changes:
31da30f23c iconv: ISO-2022-CN-EXT: fix out-of-bound writes when writing escape sequence (CVE-2024-2961)
423099a032 x86_64: Exclude SSE, AVX and FMA4 variants in libm multiarch
04df8652eb Apply the Makefile sorting fix
edb9a76e30 powerpc: Fix ld.so address determination for PCREL mode (bug 31640)
7b92f46f04 x86-64: Simplify minimum ISA check ifdef conditional with if
9883f4304c x86-64: Don't use SSE resolvers for ISA level 3 or above
9d92452c70 AArch64: Check kernel version for SVE ifuncs
395a89f61e aarch64: fix check for SVE support in assembler
b0e0a07018 aarch64/fpu: Sync libmvec routines from 2.39 and before with AOR
31c7d69af5 i386: Use generic memrchr in libc (bug 31316)
5d070d12b3 x86: Expand the comment on when REP STOSB is used on memset
6484a92698 x86: Do not prefer ERMS for memset on Zen3+
aa4249266e x86: Fix Zen3/Zen4 ERMS selection (BZ 30994)
5a461f2949 Add tst-gnu2-tls2mod1 to test-internal-extras
aded2fc004 elf: Enable TLS descriptor tests on aarch64
a8ba52bde5 arm: Update _dl_tlsdesc_dynamic to preserve caller-saved registers (BZ 31372)
15aebdbada Ignore undefined symbols for -mtls-dialect=gnu2
354cabcb26 x86-64: Allocate state buffer space for RDI, RSI and RBX
853e915fdd x86-64: Update _dl_tlsdesc_dynamic to preserve AMX registers
a364304718 x86: Update _dl_tlsdesc_dynamic to preserve caller-saved registers
7fc8242bf8 x86-64: Save APX registers in ld.so trampoline
983f34a125 LoongArch: Correct {__ieee754, _}_scalb -> {__ieee754, _}_scalbf
aad45c8ac3 powerpc: Placeholder and infrastructure/build support to add Power11 related changes.
ee7f4c54e1 powerpc: Add HWCAP3/HWCAP4 data to TCB for Power Architecture.
71fcdba577 linux: Use rseq area unconditionally in sched_getcpu (bug 31479)

(From OE-Core rev: 7f3e6019a902eb3dcee3798e9ea0f94865d51c7f)

Signed-off-by: Peter Marko <peter.marko@siemens.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 8b0124782510389bdc376fab645a0920b3fb94c8)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-05-23 08:55:01 -07:00
Peter Marko
e7d86da7aa glib-2.0: Upgrade 2.78.5 -> 2.78.6
Handle regression of CVE-2024-34397 fix.

News (d40f72e98e):

Overview of changes in GLib 2.78.6, 2024-05-08
==============================================
* Fix a regression with IBus caused by the fix for CVE-2024-34397 (#3353,
  work by Simon McVittie)
* Bugs fixed:
  - #3353 Fixing CVE-2024-34397 caused regressions for ibus (Simon McVittie)
  - !4056 Backport !4053 “gdbusconnection: Allow name owners to have the syntax
    of a well-known name” to glib-2-78

(From OE-Core rev: 51da20dc574a7f2a9759a4368d7668e3421e379f)

Signed-off-by: Peter Marko <peter.marko@siemens.com>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-05-23 08:55:01 -07:00
Peter Marko
ea63f4e0ed glib-2.0: Upgrade 2.78.4 -> 2.78.5
Handle CVE-2024-34397

Remove backported patch included in this release.

News (d18807b5ff):
Overview of changes in GLib 2.78.5, 2024-05-07
==============================================
* Fix CVE-2024-34397: GDBus signal subscriptions for well-known names are
  vulnerable to unicast spoofing (#3268, work by Simon McVittie, reported by
  Alicia Boya García)
* Bugs fixed:
  - #3168 gvfs-udisks2-volume-monitor SIGSEGV in g_content_type_guess_for_tree()
    due to filename with bad encoding (Ondrej Holy)
  - #3268 CVE-2024-34397: GDBus signal subscriptions for well-known names are
    vulnerable to unicast spoofing (Simon McVittie)
  - !3825 glib-2-78: ci: Drop FreeBSD 12 CI runner as it’s EOL
  - !3960 gcontenttype: Make filename valid utf-8 string before processing
  - !4040 Backport !4038 “gdbusconnection: Don't deliver signals if the sender
    doesn't match” to glib-2-78
  - !4043 CI: Ignore MSYS2 CI failures for this older stable-branch
* Translation updates:
  - English (United Kingdom) (Andi Chandler)
  - Georgian (Ekaterine Papava)
  - Portuguese (Brazil) (Juliano de Souza Camargo)

(From OE-Core rev: 14de0c10f6b65eac758220d95e6d31066649a214)

Signed-off-by: Peter Marko <peter.marko@siemens.com>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-05-23 08:55:01 -07:00
Peter Marko
22357a9a04 openssl: patch CVE-2024-4603
Advisory: https://github.com/advisories/GHSA-85xr-ghj6-6m46

(From OE-Core rev: bd6a6733c9a7af90ef86ef9316ff31bc996250b5)

Signed-off-by: Peter Marko <peter.marko@siemens.com>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-05-23 08:55:01 -07:00
Mingli Yu
1e83e98723 ncurses: Fix CVE-2023-50495
Backport a patch [1] to fix CVE-2023-50495.

[1] http://ncurses.scripts.mit.edu/?p=ncurses.git;a=commitdiff;h=7723dd6799ab10b32047ec73b14df9f107bafe99

(From OE-Core rev: 55cca070799a236b06f5cba6f53487fca458f25d)

Signed-off-by: Mingli Yu <mingli.yu@windriver.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit bdf7b7460a4816e3d447264730a2814209667fb0)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-05-23 08:55:01 -07:00
Steve Sakoman
4b07a5316e build-appliance-image: Update to scarthgap head revision
(From OE-Core rev: 294a7dbe44f6b7c8d3a1de8c2cc182af37c4f916)

Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-05-09 04:49:54 -07:00
Quentin Schulz
b9b47b1a39 docs: brief-yoctoprojectqs: explicit version dependency on websockets python module
We now check that the websockets module version is at least 9.1 in
bitbake itself so we can specify more precisely what "recent version"
means.

While at it, list which distributions have a recent enough websockets
python module in their package feed and give some hint at how to support
other distributions.

Cc: Quentin Schulz <foss+yocto@0leil.net>
(From yocto-docs rev: 875dfe69e93bf8fee3b8c07818a6ac059f228a13)

Signed-off-by: Quentin Schulz <quentin.schulz@cherry.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-05-09 04:45:06 -07:00
Trevor Gamblin
c4a4246f79 python3: skip test_concurrent_futures/test_shutdown
These tests are causing hangs on the Autobuilder, so disable them for
now.

(From OE-Core rev: e3b4a05f19e3ba8f84b5d892b787e67bef565e48)

Signed-off-by: Trevor Gamblin <tgamblin@baylibre.com>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-05-09 04:45:06 -07:00
Steve Sakoman
f450ddee3e build-appliance-image: Update to scarthgap head revision
(From OE-Core rev: 704d3695092148cfbf5d67c81af81665949847b5)

Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-05-06 16:57:09 -07:00
Steve Sakoman
478a0070e1 poky.conf: bump version for 5.0.1
(From meta-yocto rev: 6e21dca8264c9596c55be0048490d67f861079f7)

Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-05-06 13:32:03 -07:00
Michael Opdenacker
22927ccce3 ref-manual: update releases.svg
- Make Scarthgap a current release
- Add Styhead

(From yocto-docs rev: 41ddae07a73da38eb82b00146fd970402b4ac5a7)

Signed-off-by: Michael Opdenacker <michael.opdenacker@bootlin.com>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-05-06 13:32:02 -07:00
Lee Chee Yang
cc5aededce release-notes-5.0: update Repositories / Downloads section
(From yocto-docs rev: cdce92a0f1595b4cf7b7797f5f95a2d8d8f7d376)

Signed-off-by: Lee Chee Yang <chee.yang.lee@intel.com>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-05-06 13:32:02 -07:00
Lee Chee Yang
af21f39987 migration-notes: add release notes for 4.0.18
add release notes for 4.0.18 (rc1).

(From yocto-docs rev: 9be2db28278774676e9fd6919603fc06d27a3676)

Signed-off-by: Lee Chee Yang <chee.yang.lee@intel.com>
Reviewed-by: Michael Opdenacker <michael.opdenacker@bootlin.com>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-05-06 13:32:02 -07:00
Alexander Kanavin
a4e6110a91 documentation/poky.yaml.in: drop mesa/sdl from essential host packages
They used to be required for qemu graphics support, but neither is being
for anything anymore.

(From yocto-docs rev: 3c11dfd49902cd8962fc6c732158c3c43ce9c34e)

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Reviewed-by: Michael Opdenacker <michael.opdenacker@bootlin.com>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-05-06 13:32:02 -07:00
Michael Halstead
b1c0e46031 docs: add support for scarthgap 5.0 release
Prepared for Scarthgap release. Add references to Styhead.

(From yocto-docs rev: 1b5f2ac75c069f972cdd9c6691519d50a5f8e468)

Signed-off-by: Michael Halstead <mhalstead@linuxfoundation.org>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-05-06 13:32:02 -07:00
Christian Bräuner Sørensen
0d895fa4c1 systemd: sed ROOT_HOME only if sysusers PACKAGECONFIG is set
Fixes a bug introducted in ebafe46379 systemd: upgrade to 255.1.

Besides updating systemd, that commit also made other changes. One of them
being when to perform the replacement in order to fix ROOT_HOME.

Previously, that happened on a configure prefunc and on
${S}/sysusers.d/basic.conf.in.
Now it happens in install and on image/usr/lib/sysusers.d/basic.conf.

However, that file is not present if sysusers is not in PACKAGECONFIG,
since that file in that case is not installed hence resulting in:
sed: can't read <redactedpath>/image/usr/lib/sysusers.d/basic.conf: No such file or directory

Previously, in the case of sysusers not being in PACKAGECONFIG, that was a
"silent error" since the replacement was done but the file was not really
used since the file was not installed.

(From OE-Core rev: 6954cd4bb60762f86981621e8b37dbe5e8236640)

Signed-off-by: Christian Bräuner Sørensen <yocto@bsorensen.net>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Martin Hundebøll <martin@geanix.com>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-05-06 13:32:02 -07:00
Alexander Kanavin
94dc3e62a5 scripts/oe-setup-build: write a build environment initialization one-liner into the build directory
With this, users no longer have to know where oe-init-build-env is relative to the
build directory; that information is contained in the one liner and then
it's possible to simply use that:

. /path/to/build/init-build-env

This will particularly help with initializing builds in unpacked
build bundles, as users won't have to know where oe-init-build-env
is in the bundle directory tree - similar to esdk initialization.

(From OE-Core rev: 1cabdf287c2739accdab3a766df060f1bc802b63)

(From OE-Core rev: 4bf3f11e39312cfce59d4652804faf0eec6b5ace)

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>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-05-06 13:32:02 -07:00
Mark Hatle
64c3534366 sstate.bbclass: Add _SSTATE_EXCLUDEDEPS_SYSROOT to vardepsexclude
When using tinfoil to control the build, multiple commands (serially) could
trigger an error such as:

  When reparsing ....bb:do_package, the basehash value changed from ... to .... The metadata is not deterministic and this needs to be fixed.
  ERROR: The following commands may help:
  ERROR: $ bitbake esw-conf -cdo_package -Snone
  ERROR: Then:
  ERROR: $ bitbake esw-conf -cdo_package -Sprintdiff

However following these commands it was not able to be reproduced.  Forcing
bitbake to dump the signatures and then running bitbake-diffsigs showed
that the value of _SSTATE_EXCLUDEDEPS_SYSROOT was being set in one run, but
was blank is a different version.

Upon inspecting the code in sstate.bbclass, one usage (without the _) is
already excludes, the leading _ version is used as a cache, only if set but
is not actually required to be defined.  So ignoring the value should work
properly.

(From OE-Core rev: 4138f0a048149195d39347d97f8155199b6cf0cb)

Signed-off-by: Mark Hatle <mark.hatle@amd.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 4ec704ed6a1cfaf0a6c20f2038e7192e361ef590)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-05-06 13:32:02 -07:00
Wang Mingyu
02eacd385e mpg123: upgrade 1.32.5 -> 1.32.6
Changelog:
- build: Detect forced 64 bit offsets on a dual-mode system that used
  to default to 32 bits and drop ambiguous suffix-less symbols in that
  case.

(From OE-Core rev: e38a0f1a5e515651173b1aa21d38f2b3924de8b2)

Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 5e76967536191ac42fdd0c016e92a273dc4908e2)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-05-03 06:12:22 -07:00
Wang Mingyu
0be9782b02 lttng-tools: upgrade 2.13.11 -> 2.13.13
0001-tests-do-not-strip-a-helper-library.patch
refreshed for 2.13.13

Changelog:
===========
* Fix: consumerd: leak of tracing buffers on relayd connectivity issue
* Fix: consumerd: wrong timer mentioned in error logging
* Fix: consumerd: type confusion in lttng_consumer_send_error
* Fix: baddr-statedump: use $(LIBTOOL) --mode=execute
* Fix: relayd: live client not notified of inactive streams
* Fix: relayd: live: dispose of zombie viewer metadata stream
* tests: Fix typo in tests/regression/kernel/test_ns_contexts
* Fix: sessiond: freeze on channel creation on restart
* common: move utils_create_lock_file to its own file
* tests: tools/clear/test_ust wait for specific test app pid
* Fix: sessiond: crash when sending data_pending to an active session
* Tests: fix: list_triggers_cli: kallsyms contains prefixed symbols
* License: common: error_query: fix typo in SPDX specifier

(From OE-Core rev: 5e870221afd5e65fb70809ebe88d65a6c5a686ec)

Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 5d35200e089f0695cfb19b65dd9b56006aa3d4fc)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-05-03 06:12:22 -07:00
Wang Mingyu
6f69040e89 libx11: upgrade 1.8.7 -> 1.8.9
Changelog:
===========
-xlibi18n: restore parse_line1 for WIN32 builds
-Fix _XkbReadGetDeviceInfoReply for nButtons == dev->buttons
-_XimProtoIMFree:no need to check arg for Xfree()
-_XimEncodeString:no need to check arg for Xfree()
-Fix XCreateIC() memory leak (Part 2)
-_XimLocalDestroyIC:fix possible mem leak
-_XimLocalCreateIC: get rid of bzero
-_XimLocalCreateIC: minor cleanup
-_XimLocalCreateIC:no need to check arg for Xfree()
-_XimLocalDestroyIC: no need to check arg for Xfree()
-fix table width

(From OE-Core rev: 14ec9ffa949e5bc42fc04aa5a86ad3acf59d8e72)

Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit bd8fab6937cddf3b6818e8e333b78813f0524116)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-05-03 06:12:22 -07:00
Wang Mingyu
7721813410 libdnf: upgrade 0.73.0 -> 0.73.1
Changelog:
=========
-Fix https://issues.redhat.com/browse/RHEL-27657
-subject-py: Fix memory leak

(From OE-Core rev: 7acb8c84269b2ac1adf0a623d226867ed050d29e)

Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit f16b16e1b6c60f0a1c9bc8d5492195fc66f33a19)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-05-03 06:12:22 -07:00
Wang Mingyu
46e334391e ell: upgrade 0.63 -> 0.64
Changelog:
==========
-Fix issue with casting in C++ environment.
-Fix issue with ASCII string upper and lower helpers.

(From OE-Core rev: 29e3e0eb9b69f966a319810270fb668e4fce9389)

Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit a28405da8dad7e6222d7badaa3eda175e3df32c9)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-05-03 06:12:21 -07:00
Wang Mingyu
cb75a627c2 babeltrace2: upgrade 2.0.5 -> 2.0.6
Changelog:
===========
* bt2: disable some warnings for 'native_bt.c'
* bt2: compile 'native_bt.c' with '-Wno-undef'
* Fix: src.ctf.lttng-live: expect NEW_STREAM/METADATA for inactive streams
* Fix: 'babeltrace2 convert': don't consider the '--plugin-path' opt.
* include/babeltrace2/plugin/plugin-dev.h: "define" -> "definition
* Fix: doc: escape double quote in bt_p alias
* Fix: bt2: pass _TraceClassConst to destruction listeners
* fix: 'load_module()' deprecated in Python 3.12
* tests: retry os.rename on PermissionError failure in lttng_live_server.py
* doc: fix uptream -> upstream typos
* fix: test_message_iterator.py hangs on Python 3.12
* plugin-dev: mark symbols meant to be public with __attribute__((visibility("default")))
* Silence -Wunused-but-set-variable error with clang
* Fix: Windows DLL path lookup with Python >= 3.8
* doc/man: make default values of boolean init. params. clearer
* RFC: docs: fix: Match stated automake requirement
* fix: make flake8 6.x happy
* fix: running black on python 3.11
* bt_query_executor_create_with_method_data(): fix docs note
* Fix: ctf-writer: null dereference in bt_ctf_trace_common_add_stream_class
* Update working version to Babeltrace v2.0.6

(From OE-Core rev: 0aac0507e769d3d250b0c649bdec821eb333349c)

Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit a5f05da60ca888456900f9fb0a52ef07db754c06)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-05-03 06:12:21 -07:00
Wang Mingyu
13f0a89c07 mesa: upgrade 24.0.2 -> 24.0.3
Mesa 24.0.3 is a bug fix release which fixes bugs found since the 24.0.2 release.

New features
None

Bug fixes
v3d: Line rendering broken when smoothing is enabled
DR crashes with mesa 24 and rusticl (radeonsi)
RADV: GPU crash when setting ‘RADV_DEBUG=allbos’
[intel] mesa ftbfs with time_t64
[radv] Crash when VkGraphicsPipelineCreateInfo::flags = ~0u
Gen4 assertion `force_writemask_all’ failed.
[radv] Holographic projection texture glitch in Rage 2
[build failure] [armhf] - error: #error “_TIME_BITS=64 is allowed only with _FILE_OFFSET_BITS=64”
RustiCL: Callbacks are not called upon errors
MTL: regressions in vulkancts due to BO CCS allocations
zink: spec@ext_external_objects@vk-image-overwrite fail

0001-Revert-meson-do-not-pull-in-clc-for-clover.patch
refreshed for 24.0.3

(From OE-Core rev: 78c39ef7502f91243cf09aa20f6ad30fe4f87fee)

Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
(cherry picked from commit 43240c8b2c5507fe6147ba04ec98528602c694e1)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-05-03 06:12:21 -07:00
Wang Mingyu
bdf47412b2 libxml2: upgrade 2.12.5 -> 2.12.6
Changelog:
===========
- parser: Fix detection of duplicate attributes in XML namespace
- xmlreader: Fix xmlTextReaderConstEncoding
- html: Fix htmlCreatePushParserCtxt with encoding
- xmllint: Return error code if XPath returns empty nodeset

(From OE-Core rev: 006bd4dacc0568f04cbcd704f4908386d3540774)

Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 0bc673b0de08e02ff01ec9ad3daf0bb41662da40)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-05-03 06:12:21 -07:00
Wang Mingyu
fc2cd22e49 bind: upgrade 9.18.24 -> 9.18.25
Changelog:
============
-Create the pruning task in the dns_cache_flush(), so
 the cache pruning still works after the flush.
-Improve the TTL-based cleaning by removing the expired
 headers from the heap, so they don't block the next
 cleaning round and clean more than a single item for
 each new addition to the RBTDB.
-Revert change 6319 and decrease lock contention during
 RBTDB tree pruning by not cleaning up nodes recursively
 within a single prune_tree() call.
-Address use after free in expire_lru_headers.

(From OE-Core rev: 5b3ba5f021f3bd532238dad57772c8416da61c14)

Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 17cecd0d9d0d734d408701d861692ca5987f4ad9)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-05-03 06:12:21 -07:00
Wang Mingyu
7b3bce6d48 pango: upgrade 1.52.0 -> 1.52.1
Changelog:
 Fix hexbox drawing

(From OE-Core rev: 5bc3dfa37fe2a94e1ceba364ab5af3ca8e89efd2)

Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 5a296e6c3afb412ee9740fc28963f35dd16e52d9)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-05-03 06:12:21 -07:00
Wang Mingyu
43167d556a libxcursor: upgrade 1.2.1 -> 1.2.2
Changelog:
===========
-Remove superfluous and unguarded config.h include
-XcursorXcFileLoad: plug memory leak in error paths
-Add comment about keeping libxcb-cursor copy of code in sync
-If O_CLOEXEC is defined, add "e" to fopen modes
-configure: Use LT_INIT from libtool 2 instead of deprecated AC_PROG_LIBTOOL
-gitlab CI: stop requiring Signed-off-by in commits

(From OE-Core rev: 21be5356da5f842848241aa9c17d9d2126bfdc31)

Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit b56224f31ac4df426418ffe9fa48f4d2dea3f148)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-05-03 06:12:21 -07:00
Wang Mingyu
73b5770461 libsdl2: upgrade 2.30.0 -> 2.30.1
Changelog:
===========
-Fixed a regression causing SDL_WaitEvent() to return spurious failures
-Fixed X11 cursors on the latest release of GNOME
-Wayland windows automatically have OpenGL enabled again
-Fixed memory corruption when converting signed 16-bit audio to float
-Fixed audio artifacts when converting signed 8-bit audio to float
-Fixed the clip rectangle not being updated when the viewport changes in the SDL renderer
-Convert mouse wheel coordinates to the rendering view in the SDL renderer
-Fixed a crash handling controllers on macOS
-Fixed a crash setting a window fullscreen with Emscripten
-Fixed the keyboard automatically popping up when resuming an application on Android

(From OE-Core rev: 9d5bbe4389ee33e89ba419924fe82f4ce872fb26)

Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit a17c05585a0da0166087ae0cd3cd4331a1fb2615)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-05-03 06:12:21 -07:00
Wang Mingyu
250d1c29ee gcr: upgrade 4.2.0 -> 4.2.1
Changelog:
===========
- gcr-ssh-agent: set 'SSH_AUTH_SOCK'
- gcr-ssh-agent: port avoid deadlock fix
- Updated translations

(From OE-Core rev: 17b183e5ff70e26108893b379d0da78a7f5f8fbe)

Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 5b98e250d8c04040df1333506b72575d368e6bdc)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-05-03 06:12:21 -07:00
Michael Glembotzki
6600be67d8 rootfs-postcommands.bbclass: Only set DROPBEAR_RSAKEY_DIR once
If DROPBEAR_RSAKEY_DIR has already been set before, e.g. by overwriting
the file dropbear.default, the line will still be appended a second time.

DROPBEAR_RSAKEY_DIR="/path/to/dropbear"
DROPBEAR_EXTRA_ARGS="-B"
DROPBEAR_RSAKEY_DIR=/var/lib/dropbear

(From OE-Core rev: b56ec552ac34a41b531bc36a55f46e0216d40baf)

Signed-off-by: Michael Glembotzki <Michael.Glembotzki@iris-sensing.com>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-05-03 06:12:21 -07:00
Alexander Kanavin
5d33880b9d rpm: update 4.19.1 -> 4.19.1.1
Summary of changes from RPM 4.19.1
Fixes
Packaging: Don’t warn about missing user/group on skipped files [Regression] (#2814)
Packaging: Make user/group lookup caching thread-safe [Regression] (#2843)
Lua interface: Fix regression in Lua scriptlet runaway child detection [Regression] (#2818)
Build: CMakeLists.txt: restore readline support as an explicit option [Regression] (#2852)
Build: Fix unconditional uses of Linux-specific extensions [Regression] (#2812)
Build: Add missing include for check_symbol_exists (#2831)
Build: Don’t use _nl_msg_cat_cntr if it’s not available (#2856)

Drop patches:
files/0002-docs-CMakeLists.txt-do-not-install-non-existent-docs.patch
(upstream resolved the issue)

files/0001-CMakeLists.txt-restore-readline-support-as-an-explic.patch
files/0001-Fix-unconditional-dependency-on-non-POSIX-GLOB_ONLYD.patch
(backports)

(From OE-Core rev: d05416b6d6ec197b42f20652ed53ada1eb697d67)

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit d233e33a5ca12f95878c3ee9e34d9d9c61e49f68)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-05-03 06:12:21 -07:00
Alexander Kanavin
7dddfb7420 icu: update 74-1 -> 74-2
ICU 74.2 updates to CLDR 44.1 locale data. These are maintenance releases for ICU 74
and CLDR 44, with limited sets of bug fixes and no API or structural changes.

The CLDR bug fix relevant for ICU is for some formatting patterns that erroneously
had two adjacent space characters. These are coalesced into one. (CLDR-17233)
Important: DateFormat.getInstanceForSkeleton() and the DateTimePatternGenerator
sometimes used the wrong patterns because they failed to use/inherit certain data
(ICU-22575 — CLDR 44 had removed some redundant data that ICU relied on)
For details, please see https://icu.unicode.org/download/74.

Note that upstream has re-spun the release tarball (the initial tarball had a broken symlink
for LICENSE file), so there can be yocto premirror checksum mismatches:
https://autobuilder.yoctoproject.org/typhoon/#/builders/83/builds/6671/steps/13/logs/stdio

(From OE-Core rev: a6a5fa0af5e0bfe230681eee3f2e3b45a694ac9b)

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 344f7500e6df31d7c06331aedbac0df4983da958)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
2024-05-03 06:12:20 -07:00
Richard Purdie
3e10e2afba brief-yoctoprojectqs: Update to the correct hash equivalence server address
Also add a note about needing python websockets installed.

(From yocto-docs rev: 9dfe3d2dcba8bb2d2e277ff2204862dc8b77c8b9)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2024-05-02 17:07:17 +01:00
joshua Watt
6c9d0bddbc bitbake: cooker: Use hash client to ping upstream server
The cooker attempts to connect to the upstream hash equivalent server to
warn the user early if it is misconfigured. However, this was making the
assumption that it was a raw TCP connection and failed when attempting
to use a websocket upstream server. Fix this by creating an hash client
and using the ping API to check the server instead of using a raw
socket.

(Bitbake rev: 8f90d10f9efc9a32e13f6bd031992aece79fe7cc)

Signed-off-by: Joshua Watt <JPEWhacker@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2024-05-02 16:07:25 +01:00
Richard Purdie
3c9778fbc8 local.conf.sample: Fix hashequivalence server address
We switched to a new server for the scarthgap release but didn't update the
sample config. Fix this.

(From meta-yocto rev: f5e9f8ebd65e5a814ec45122e4176bc5407ea946)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2024-05-02 15:30:01 +01:00
Lee Chee Yang
eb723d4a10 release-notes-5.0: update recipes changes
update recipes changes in 5.0 rc4.
update new recipes, license changes, patched cve and recipes version
changes.

(From yocto-docs rev: 0fc86205668d122d4e550a5eae301cd6997f8a71)

Signed-off-by: Lee Chee Yang <chee.yang.lee@intel.com>
Reviewed-by: Michael Opdenacker <michael.opdenacker@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2024-04-24 14:23:00 +01:00
Michael Opdenacker
299ead538a manuals: standards.md5: add standard for project names
Set a new standard to introduce project names with single quotes,
so that they appear in generated text with an italic font,
to make them easier to distinguish from command names and from
ordinary English words.

Rework and move the standard for command and file names
to make the whole description "flow" better.

(From yocto-docs rev: fa6700af56213a5079eaa8d9683f3c2b2fc93740)

Signed-off-by: Michael Opdenacker <michael.opdenacker@bootlin.com>
CC: Quentin Schulz <quentin.schulz@theobroma-systems.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2024-04-24 14:23:00 +01:00
Paul Eggleton
795511f0ea release-notes: add a few more new features
Add some features I missed earlier (patchtest, Toaster, hash
equivalence enhancements, screenshot-based UI test,
USERADD_DEPENDS).

(From yocto-docs rev: 774f0ba6345592571c7c7cff495f2b15dca21f25)

Signed-off-by: Paul Eggleton <bluelightning@bluelightning.org>
Reviewed-by: Michael Opdenacker <michael.opdenacker@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2024-04-24 14:23:00 +01:00
Paul Eggleton
8eb06eb958 ref-manual: variables: add USERADD_DEPENDS
New variable in 5.0.

(From yocto-docs rev: 57a9117a8c4c020b2f643d6835af29b4e49f4f7f)

Signed-off-by: Paul Eggleton <bluelightning@bluelightning.org>
Reviewed-by: Michael Opdenacker <michael.opdenacker@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2024-04-24 14:23:00 +01:00
Richard Purdie
fb91a49387 build-appliance-image: Update to scarthgap head revision
(From OE-Core rev: b65b4e5a8e4473d8ca43835ba17bc8bd4bdca277)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2024-04-18 17:14:22 +01:00
Richard Purdie
25b05cb80d curl: Backport patch to fix buildtools issues
bitbake-selftest was failing on a github url on hosts using buildtools.
The issue was tracked down to the curl upgrade 8.6.0 -> 8.7.1. Whilst there
is a fix in upstream git to workaround the issue in this version, backport
the fix from curl upstream to ensure there are no other related issues to
the bug.

(From OE-Core rev: 28ee90b07c70cafbba9149dd4dbe26cae9e214c7)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2024-04-18 11:58:28 +01:00
Richard Purdie
5b727a8fa1 build-appliance-image: Update to scarthgap head revision
(From OE-Core rev: 09ccab7d0b4d815b812e49a5861a13a4ec0189b9)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2024-04-16 15:54:22 +01:00
Richard Purdie
845626a36b buildtools-tarball: Add python3-pip
Many of the common use cases for buildtools need pip to allow python to be
extended. Add it.

(From OE-Core rev: 0a1714533ed2b02a98b8456e1193fc079273fbbd)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2024-04-16 15:54:00 +01:00
199 changed files with 2878 additions and 4232 deletions

View File

@@ -36,6 +36,7 @@ class BBHandledException(Exception):
import os
import logging
from collections import namedtuple
class NullHandler(logging.Handler):
@@ -227,3 +228,14 @@ def deprecate_import(current, modulename, fromlist, renames = None):
setattr(sys.modules[current], newname, newobj)
TaskData = namedtuple("TaskData", [
"pn",
"taskname",
"fn",
"deps",
"provides",
"taskhash",
"unihash",
"hashfn",
"taskhash_deps",
])

View File

@@ -315,13 +315,13 @@ class BBCooker:
dbfile = (self.data.getVar("PERSISTENT_DIR") or self.data.getVar("CACHE")) + "/hashserv.db"
upstream = self.data.getVar("BB_HASHSERVE_UPSTREAM") or None
if upstream:
import socket
try:
sock = socket.create_connection(upstream.split(":"), 5)
sock.close()
except socket.error as e:
with hashserv.create_client(upstream) as client:
client.ping()
except (ConnectionError, ImportError) as e:
bb.warn("BB_HASHSERVE_UPSTREAM is not valid, unable to connect hash equivalence server at '%s': %s"
% (upstream, repr(e)))
upstream = None
self.hashservaddr = "unix://%s/hashserve.sock" % self.data.getVar("TOPDIR")
self.hashserv = hashserv.create_server(
@@ -1459,7 +1459,6 @@ class BBCooker:
if t in task or getAllTaskSignatures:
try:
rq.rqdata.prepare_task_hash(tid)
sig.append([pn, t, rq.rqdata.get_task_unihash(tid)])
except KeyError:
sig.append(self.getTaskSignatures(target, [t])[0])

View File

@@ -23,6 +23,7 @@ import urllib.parse, urllib.error
from bb.fetch2 import FetchMethod
from bb.fetch2 import FetchError
from bb.fetch2 import logger
from bb.fetch2 import runfetchcmd
class GCP(FetchMethod):
"""

View File

@@ -108,7 +108,8 @@ class Wget(FetchMethod):
fetchcmd = self.basecmd
localpath = os.path.join(d.getVar("DL_DIR"), ud.localfile) + ".tmp"
dldir = os.path.realpath(d.getVar("DL_DIR"))
localpath = os.path.join(dldir, ud.localfile) + ".tmp"
bb.utils.mkdirhier(os.path.dirname(localpath))
fetchcmd += " -O %s" % shlex.quote(localpath)
@@ -128,12 +129,21 @@ class Wget(FetchMethod):
uri = ud.url.split(";")[0]
if os.path.exists(ud.localpath):
# file exists, but we didnt complete it.. trying again..
fetchcmd += d.expand(" -c -P ${DL_DIR} '%s'" % uri)
fetchcmd += " -c -P " + dldir + " '" + uri + "'"
else:
fetchcmd += d.expand(" -P ${DL_DIR} '%s'" % uri)
fetchcmd += " -P " + dldir + " '" + uri + "'"
self._runwget(ud, d, fetchcmd, False)
# Sanity check since wget can pretend it succeed when it didn't
# Also, this used to happen if sourceforge sent us to the mirror page
if not os.path.exists(localpath):
raise FetchError("The fetch command returned success for url %s but %s doesn't exist?!" % (uri, localpath), uri)
if os.path.getsize(localpath) == 0:
os.remove(localpath)
raise FetchError("The fetch of %s resulted in a zero size file?! Deleting and failing since this isn't right." % (uri), uri)
# Try and verify any checksum now, meaning if it isn't correct, we don't remove the
# original file, which might be a race (imagine two recipes referencing the same
# source, one with an incorrect checksum)
@@ -143,15 +153,6 @@ class Wget(FetchMethod):
# Our lock prevents multiple writers but mirroring code may grab incomplete files
os.rename(localpath, localpath[:-4])
# Sanity check since wget can pretend it succeed when it didn't
# Also, this used to happen if sourceforge sent us to the mirror page
if not os.path.exists(ud.localpath):
raise FetchError("The fetch command returned success for url %s but %s doesn't exist?!" % (uri, ud.localpath), uri)
if os.path.getsize(ud.localpath) == 0:
os.remove(ud.localpath)
raise FetchError("The fetch of %s resulted in a zero size file?! Deleting and failing since this isn't right." % (uri), uri)
return True
def checkstatus(self, fetch, ud, d, try_again=True):

View File

@@ -49,20 +49,23 @@ class SkipPackage(SkipRecipe):
__mtime_cache = {}
def cached_mtime(f):
if f not in __mtime_cache:
__mtime_cache[f] = os.stat(f)[stat.ST_MTIME]
res = os.stat(f)
__mtime_cache[f] = (res.st_mtime_ns, res.st_size, res.st_ino)
return __mtime_cache[f]
def cached_mtime_noerror(f):
if f not in __mtime_cache:
try:
__mtime_cache[f] = os.stat(f)[stat.ST_MTIME]
res = os.stat(f)
__mtime_cache[f] = (res.st_mtime_ns, res.st_size, res.st_ino)
except OSError:
return 0
return __mtime_cache[f]
def check_mtime(f, mtime):
try:
current_mtime = os.stat(f)[stat.ST_MTIME]
res = os.stat(f)
current_mtime = (res.st_mtime_ns, res.st_size, res.st_ino)
__mtime_cache[f] = current_mtime
except OSError:
current_mtime = 0
@@ -70,7 +73,8 @@ def check_mtime(f, mtime):
def update_mtime(f):
try:
__mtime_cache[f] = os.stat(f)[stat.ST_MTIME]
res = os.stat(f)
__mtime_cache[f] = (res.st_mtime_ns, res.st_size, res.st_ino)
except OSError:
if f in __mtime_cache:
del __mtime_cache[f]

View File

@@ -1273,27 +1273,41 @@ class RunQueueData:
bb.parse.siggen.set_setscene_tasks(self.runq_setscene_tids)
starttime = time.time()
lasttime = starttime
# Iterate over the task list and call into the siggen code
dealtwith = set()
todeal = set(self.runtaskentries)
while todeal:
ready = set()
for tid in todeal.copy():
if not (self.runtaskentries[tid].depends - dealtwith):
dealtwith.add(tid)
todeal.remove(tid)
self.prepare_task_hash(tid)
bb.event.check_for_interrupts(self.cooker.data)
self.runtaskentries[tid].taskhash_deps = bb.parse.siggen.prep_taskhash(tid, self.runtaskentries[tid].depends, self.dataCaches)
# get_taskhash for a given tid *must* be called before get_unihash* below
self.runtaskentries[tid].hash = bb.parse.siggen.get_taskhash(tid, self.runtaskentries[tid].depends, self.dataCaches)
ready.add(tid)
unihashes = bb.parse.siggen.get_unihashes(ready)
for tid in ready:
dealtwith.add(tid)
todeal.remove(tid)
self.runtaskentries[tid].unihash = unihashes[tid]
bb.event.check_for_interrupts(self.cooker.data)
if time.time() > (lasttime + 30):
lasttime = time.time()
hashequiv_logger.verbose("Initial setup loop progress: %s of %s in %s" % (len(todeal), len(self.runtaskentries), lasttime - starttime))
endtime = time.time()
if (endtime-starttime > 60):
hashequiv_logger.verbose("Initial setup loop took: %s" % (endtime-starttime))
bb.parse.siggen.writeout_file_checksum_cache()
#self.dump_data()
return len(self.runtaskentries)
def prepare_task_hash(self, tid):
bb.parse.siggen.prep_taskhash(tid, self.runtaskentries[tid].depends, self.dataCaches)
self.runtaskentries[tid].hash = bb.parse.siggen.get_taskhash(tid, self.runtaskentries[tid].depends, self.dataCaches)
self.runtaskentries[tid].unihash = bb.parse.siggen.get_unihash(tid)
def dump_data(self):
"""
Dump some debug information on the internal data structures
@@ -2438,14 +2452,17 @@ class RunQueueExecute:
taskdepdata_cache = {}
for task in self.rqdata.runtaskentries:
(mc, fn, taskname, taskfn) = split_tid_mcfn(task)
pn = self.rqdata.dataCaches[mc].pkg_fn[taskfn]
deps = self.rqdata.runtaskentries[task].depends
provides = self.rqdata.dataCaches[mc].fn_provides[taskfn]
taskhash = self.rqdata.runtaskentries[task].hash
unihash = self.rqdata.runtaskentries[task].unihash
deps = self.filtermcdeps(task, mc, deps)
hashfn = self.rqdata.dataCaches[mc].hashfn[taskfn]
taskdepdata_cache[task] = [pn, taskname, fn, deps, provides, taskhash, unihash, hashfn]
taskdepdata_cache[task] = bb.TaskData(
pn = self.rqdata.dataCaches[mc].pkg_fn[taskfn],
taskname = taskname,
fn = fn,
deps = self.filtermcdeps(task, mc, self.rqdata.runtaskentries[task].depends),
provides = self.rqdata.dataCaches[mc].fn_provides[taskfn],
taskhash = self.rqdata.runtaskentries[task].hash,
unihash = self.rqdata.runtaskentries[task].unihash,
hashfn = self.rqdata.dataCaches[mc].hashfn[taskfn],
taskhash_deps = self.rqdata.runtaskentries[task].taskhash_deps,
)
self.taskdepdata_cache = taskdepdata_cache
@@ -2460,9 +2477,11 @@ class RunQueueExecute:
while next:
additional = []
for revdep in next:
self.taskdepdata_cache[revdep][6] = self.rqdata.runtaskentries[revdep].unihash
self.taskdepdata_cache[revdep] = self.taskdepdata_cache[revdep]._replace(
unihash=self.rqdata.runtaskentries[revdep].unihash
)
taskdepdata[revdep] = self.taskdepdata_cache[revdep]
for revdep2 in self.taskdepdata_cache[revdep][3]:
for revdep2 in self.taskdepdata_cache[revdep].deps:
if revdep2 not in taskdepdata:
additional.append(revdep2)
next = additional
@@ -2556,17 +2575,28 @@ class RunQueueExecute:
elif self.rqdata.runtaskentries[p].depends.isdisjoint(total):
next.add(p)
starttime = time.time()
lasttime = starttime
# When an item doesn't have dependencies in total, we can process it. Drop items from total when handled
while next:
current = next.copy()
next = set()
ready = {}
for tid in current:
if self.rqdata.runtaskentries[p].depends and not self.rqdata.runtaskentries[tid].depends.isdisjoint(total):
continue
# get_taskhash for a given tid *must* be called before get_unihash* below
ready[tid] = bb.parse.siggen.get_taskhash(tid, self.rqdata.runtaskentries[tid].depends, self.rqdata.dataCaches)
unihashes = bb.parse.siggen.get_unihashes(ready.keys())
for tid in ready:
orighash = self.rqdata.runtaskentries[tid].hash
newhash = bb.parse.siggen.get_taskhash(tid, self.rqdata.runtaskentries[tid].depends, self.rqdata.dataCaches)
newhash = ready[tid]
origuni = self.rqdata.runtaskentries[tid].unihash
newuni = bb.parse.siggen.get_unihash(tid)
newuni = unihashes[tid]
# FIXME, need to check it can come from sstate at all for determinism?
remapped = False
if newuni == origuni:
@@ -2587,6 +2617,15 @@ class RunQueueExecute:
next |= self.rqdata.runtaskentries[tid].revdeps
total.remove(tid)
next.intersection_update(total)
bb.event.check_for_interrupts(self.cooker.data)
if time.time() > (lasttime + 30):
lasttime = time.time()
hashequiv_logger.verbose("Rehash loop slow progress: %s in %s" % (len(total), lasttime - starttime))
endtime = time.time()
if (endtime-starttime > 60):
hashequiv_logger.verbose("Rehash loop took more than 60s: %s" % (endtime-starttime))
if changed:
for mc in self.rq.worker:
@@ -2806,13 +2845,19 @@ class RunQueueExecute:
additional = []
for revdep in next:
(mc, fn, taskname, taskfn) = split_tid_mcfn(revdep)
pn = self.rqdata.dataCaches[mc].pkg_fn[taskfn]
deps = getsetscenedeps(revdep)
provides = self.rqdata.dataCaches[mc].fn_provides[taskfn]
taskhash = self.rqdata.runtaskentries[revdep].hash
unihash = self.rqdata.runtaskentries[revdep].unihash
hashfn = self.rqdata.dataCaches[mc].hashfn[taskfn]
taskdepdata[revdep] = [pn, taskname, fn, deps, provides, taskhash, unihash, hashfn]
taskdepdata[revdep] = bb.TaskData(
pn = self.rqdata.dataCaches[mc].pkg_fn[taskfn],
taskname = taskname,
fn = fn,
deps = deps,
provides = self.rqdata.dataCaches[mc].fn_provides[taskfn],
taskhash = self.rqdata.runtaskentries[revdep].hash,
unihash = self.rqdata.runtaskentries[revdep].unihash,
hashfn = self.rqdata.dataCaches[mc].hashfn[taskfn],
taskhash_deps = self.rqdata.runtaskentries[revdep].taskhash_deps,
)
for revdep2 in deps:
if revdep2 not in taskdepdata:
additional.append(revdep2)

View File

@@ -381,7 +381,7 @@ class SignatureGeneratorBasic(SignatureGenerator):
self.taints[tid] = taint
logger.warning("%s is tainted from a forced run" % tid)
return
return set(dep for _, dep in self.runtaskdeps[tid])
def get_taskhash(self, tid, deps, dataCaches):
@@ -726,10 +726,13 @@ class SignatureGeneratorUniHashMixIn(object):
return result
if self.max_parallel <= 1 or len(queries) <= 1:
# No parallelism required. Make the query serially with the single client
# No parallelism required. Make the query using a single client
with self.client() as client:
for tid, args in queries.items():
query_result[tid] = client.get_unihash(*args)
keys = list(queries.keys())
unihashes = client.get_unihash_batch(queries[k] for k in keys)
for idx, k in enumerate(keys):
query_result[k] = unihashes[idx]
else:
with self.client_pool() as client_pool:
query_result = client_pool.get_unihashes(queries)

View File

@@ -1421,7 +1421,7 @@ class FetchLatestVersionTest(FetcherTest):
# combination version pattern
("sysprof", "git://gitlab.gnome.org/GNOME/sysprof.git;protocol=https;branch=master", "cd44ee6644c3641507fb53b8a2a69137f2971219", "", "")
: "1.2.0",
("u-boot-mkimage", "git://git.denx.de/u-boot.git;branch=master;protocol=git", "62c175fbb8a0f9a926c88294ea9f7e88eb898f6c", "", "")
("u-boot-mkimage", "git://source.denx.de/u-boot/u-boot.git;branch=master;protocol=https", "62c175fbb8a0f9a926c88294ea9f7e88eb898f6c", "", "")
: "2014.01",
# version pattern "yyyymmdd"
("mobile-broadband-provider-info", "git://gitlab.gnome.org/GNOME/mobile-broadband-provider-info.git;protocol=https;branch=master", "4ed19e11c2975105b71b956440acdb25d46a347d", "", "")
@@ -1511,7 +1511,7 @@ class FetchLatestVersionTest(FetcherTest):
def test_wget_latest_versionstring(self):
testdata = os.path.dirname(os.path.abspath(__file__)) + "/fetch-testdata"
server = HTTPService(testdata)
server = HTTPService(testdata, host="127.0.0.1")
server.start()
port = server.port
try:
@@ -1519,10 +1519,10 @@ class FetchLatestVersionTest(FetcherTest):
self.d.setVar("PN", k[0])
checkuri = ""
if k[2]:
checkuri = "http://localhost:%s/" % port + k[2]
checkuri = "http://127.0.0.1:%s/" % port + k[2]
self.d.setVar("UPSTREAM_CHECK_URI", checkuri)
self.d.setVar("UPSTREAM_CHECK_REGEX", k[3])
url = "http://localhost:%s/" % port + k[1]
url = "http://127.0.0.1:%s/" % port + k[1]
ud = bb.fetch2.FetchData(url, self.d)
pupver = ud.method.latest_versionstring(ud, self.d)
verstring = pupver[0]

View File

@@ -5,6 +5,7 @@
import logging
import socket
import asyncio
import bb.asyncrpc
import json
from . import create_async_client
@@ -13,6 +14,66 @@ from . import create_async_client
logger = logging.getLogger("hashserv.client")
class Batch(object):
def __init__(self):
self.done = False
self.cond = asyncio.Condition()
self.pending = []
self.results = []
self.sent_count = 0
async def recv(self, socket):
while True:
async with self.cond:
await self.cond.wait_for(lambda: self.pending or self.done)
if not self.pending:
if self.done:
return
continue
r = await socket.recv()
self.results.append(r)
async with self.cond:
self.pending.pop(0)
async def send(self, socket, msgs):
try:
# In the event of a restart due to a reconnect, all in-flight
# messages need to be resent first to keep to result count in sync
for m in self.pending:
await socket.send(m)
for m in msgs:
# Add the message to the pending list before attempting to send
# it so that if the send fails it will be retried
async with self.cond:
self.pending.append(m)
self.cond.notify()
self.sent_count += 1
await socket.send(m)
finally:
async with self.cond:
self.done = True
self.cond.notify()
async def process(self, socket, msgs):
await asyncio.gather(
self.recv(socket),
self.send(socket, msgs),
)
if len(self.results) != self.sent_count:
raise ValueError(
f"Expected result count {len(self.results)}. Expected {self.sent_count}"
)
return self.results
class AsyncClient(bb.asyncrpc.AsyncClient):
MODE_NORMAL = 0
MODE_GET_STREAM = 1
@@ -36,11 +97,27 @@ class AsyncClient(bb.asyncrpc.AsyncClient):
if become:
await self.become_user(become)
async def send_stream(self, mode, msg):
async def send_stream_batch(self, mode, msgs):
"""
Does a "batch" process of stream messages. This sends the query
messages as fast as possible, and simultaneously attempts to read the
messages back. This helps to mitigate the effects of latency to the
hash equivalence server be allowing multiple queries to be "in-flight"
at once
The implementation does more complicated tracking using a count of sent
messages so that `msgs` can be a generator function (i.e. its length is
unknown)
"""
b = Batch()
async def proc():
nonlocal b
await self._set_mode(mode)
await self.socket.send(msg)
return await self.socket.recv()
return await b.process(self.socket, msgs)
return await self._send_wrapper(proc)
@@ -89,10 +166,15 @@ class AsyncClient(bb.asyncrpc.AsyncClient):
self.mode = new_mode
async def get_unihash(self, method, taskhash):
r = await self.send_stream(self.MODE_GET_STREAM, "%s %s" % (method, taskhash))
if not r:
return None
return r
r = await self.get_unihash_batch([(method, taskhash)])
return r[0]
async def get_unihash_batch(self, args):
result = await self.send_stream_batch(
self.MODE_GET_STREAM,
(f"{method} {taskhash}" for method, taskhash in args),
)
return [r if r else None for r in result]
async def report_unihash(self, taskhash, method, outhash, unihash, extra={}):
m = extra.copy()
@@ -115,8 +197,12 @@ class AsyncClient(bb.asyncrpc.AsyncClient):
)
async def unihash_exists(self, unihash):
r = await self.send_stream(self.MODE_EXIST_STREAM, unihash)
return r == "true"
r = await self.unihash_exists_batch([unihash])
return r[0]
async def unihash_exists_batch(self, unihashes):
result = await self.send_stream_batch(self.MODE_EXIST_STREAM, unihashes)
return [r == "true" for r in result]
async def get_outhash(self, method, outhash, taskhash, with_unihash=True):
return await self.invoke(
@@ -237,10 +323,12 @@ class Client(bb.asyncrpc.Client):
"connect_tcp",
"connect_websocket",
"get_unihash",
"get_unihash_batch",
"report_unihash",
"report_unihash_equiv",
"get_taskhash",
"unihash_exists",
"unihash_exists_batch",
"get_outhash",
"get_stats",
"reset_stats",

View File

@@ -594,6 +594,43 @@ class HashEquivalenceCommonTests(object):
7: None,
})
def test_get_unihash_batch(self):
TEST_INPUT = (
# taskhash outhash unihash
('8aa96fcffb5831b3c2c0cb75f0431e3f8b20554a', 'afe240a439959ce86f5e322f8c208e1fedefea9e813f2140c81af866cc9edf7e','218e57509998197d570e2c98512d0105985dffc9'),
# Duplicated taskhash with multiple output hashes and unihashes.
('8aa96fcffb5831b3c2c0cb75f0431e3f8b20554a', '0904a7fe3dc712d9fd8a74a616ddca2a825a8ee97adf0bd3fc86082c7639914d', 'ae9a7d252735f0dafcdb10e2e02561ca3a47314c'),
# Equivalent hash
("044c2ec8aaf480685a00ff6ff49e6162e6ad34e1", '0904a7fe3dc712d9fd8a74a616ddca2a825a8ee97adf0bd3fc86082c7639914d', "def64766090d28f627e816454ed46894bb3aab36"),
("e3da00593d6a7fb435c7e2114976c59c5fd6d561", "1cf8713e645f491eb9c959d20b5cae1c47133a292626dda9b10709857cbe688a", "3b5d3d83f07f259e9086fcb422c855286e18a57d"),
('35788efcb8dfb0a02659d81cf2bfd695fb30faf9', '2765d4a5884be49b28601445c2760c5f21e7e5c0ee2b7e3fce98fd7e5970796f', 'f46d3fbb439bd9b921095da657a4de906510d2cd'),
('35788efcb8dfb0a02659d81cf2bfd695fb30fafa', '2765d4a5884be49b28601445c2760c5f21e7e5c0ee2b7e3fce98fd7e5970796f', 'f46d3fbb439bd9b921095da657a4de906510d2ce'),
('9d81d76242cc7cfaf7bf74b94b9cd2e29324ed74', '8470d56547eea6236d7c81a644ce74670ca0bbda998e13c629ef6bb3f0d60b69', '05d2a63c81e32f0a36542ca677e8ad852365c538'),
)
EXTRA_QUERIES = (
"6b6be7a84ab179b4240c4302518dc3f6",
)
for taskhash, outhash, unihash in TEST_INPUT:
self.client.report_unihash(taskhash, self.METHOD, outhash, unihash)
result = self.client.get_unihash_batch(
[(self.METHOD, data[0]) for data in TEST_INPUT] +
[(self.METHOD, e) for e in EXTRA_QUERIES]
)
self.assertListEqual(result, [
"218e57509998197d570e2c98512d0105985dffc9",
"218e57509998197d570e2c98512d0105985dffc9",
"218e57509998197d570e2c98512d0105985dffc9",
"3b5d3d83f07f259e9086fcb422c855286e18a57d",
"f46d3fbb439bd9b921095da657a4de906510d2cd",
"f46d3fbb439bd9b921095da657a4de906510d2cd",
"05d2a63c81e32f0a36542ca677e8ad852365c538",
None,
])
def test_client_pool_unihash_exists(self):
TEST_INPUT = (
# taskhash outhash unihash
@@ -636,6 +673,44 @@ class HashEquivalenceCommonTests(object):
result = client_pool.unihashes_exist(query)
self.assertDictEqual(result, expected)
def test_unihash_exists_batch(self):
TEST_INPUT = (
# taskhash outhash unihash
('8aa96fcffb5831b3c2c0cb75f0431e3f8b20554a', 'afe240a439959ce86f5e322f8c208e1fedefea9e813f2140c81af866cc9edf7e','218e57509998197d570e2c98512d0105985dffc9'),
# Duplicated taskhash with multiple output hashes and unihashes.
('8aa96fcffb5831b3c2c0cb75f0431e3f8b20554a', '0904a7fe3dc712d9fd8a74a616ddca2a825a8ee97adf0bd3fc86082c7639914d', 'ae9a7d252735f0dafcdb10e2e02561ca3a47314c'),
# Equivalent hash
("044c2ec8aaf480685a00ff6ff49e6162e6ad34e1", '0904a7fe3dc712d9fd8a74a616ddca2a825a8ee97adf0bd3fc86082c7639914d', "def64766090d28f627e816454ed46894bb3aab36"),
("e3da00593d6a7fb435c7e2114976c59c5fd6d561", "1cf8713e645f491eb9c959d20b5cae1c47133a292626dda9b10709857cbe688a", "3b5d3d83f07f259e9086fcb422c855286e18a57d"),
('35788efcb8dfb0a02659d81cf2bfd695fb30faf9', '2765d4a5884be49b28601445c2760c5f21e7e5c0ee2b7e3fce98fd7e5970796f', 'f46d3fbb439bd9b921095da657a4de906510d2cd'),
('35788efcb8dfb0a02659d81cf2bfd695fb30fafa', '2765d4a5884be49b28601445c2760c5f21e7e5c0ee2b7e3fce98fd7e5970796f', 'f46d3fbb439bd9b921095da657a4de906510d2ce'),
('9d81d76242cc7cfaf7bf74b94b9cd2e29324ed74', '8470d56547eea6236d7c81a644ce74670ca0bbda998e13c629ef6bb3f0d60b69', '05d2a63c81e32f0a36542ca677e8ad852365c538'),
)
EXTRA_QUERIES = (
"6b6be7a84ab179b4240c4302518dc3f6",
)
result_unihashes = set()
for taskhash, outhash, unihash in TEST_INPUT:
result = self.client.report_unihash(taskhash, self.METHOD, outhash, unihash)
result_unihashes.add(result["unihash"])
query = []
expected = []
for _, _, unihash in TEST_INPUT:
query.append(unihash)
expected.append(unihash in result_unihashes)
for unihash in EXTRA_QUERIES:
query.append(unihash)
expected.append(False)
result = self.client.unihash_exists_batch(query)
self.assertListEqual(result, expected)
def test_auth_read_perms(self):
admin_client = self.start_auth_server()

View File

@@ -251,11 +251,17 @@ an entire Linux distribution, including the toolchain, from source.
To use such mirrors, uncomment the below lines in your ``conf/local.conf``
file in the :term:`Build Directory`::
BB_HASHSERVE_UPSTREAM = "hashserv.yocto.io:8687"
BB_HASHSERVE_UPSTREAM = "wss://hashserv.yoctoproject.org/ws"
SSTATE_MIRRORS ?= "file://.* http://cdn.jsdelivr.net/yocto/sstate/all/PATH;downloadfilename=PATH"
BB_HASHSERVE = "auto"
BB_SIGNATURE_HANDLER = "OEEquivHash"
The hash equivalence server needs the websockets python module version 9.1
or later. Debian GNU/Linux 12 (Bookworm) and later, Fedora, CentOS Stream
9 and later, and Ubuntu 22.04 (LTS) and later, all have a recent enough
package. Other supported distributions need to get the module some other
place than their package feed, e.g. via ``pip``.
#. **Start the Build:** Continue with the following command to build an OS
image for the target, which is ``core-image-sato`` in this example:

View File

@@ -24,3 +24,4 @@ Release 4.0 (kirkstone)
release-notes-4.0.15
release-notes-4.0.16
release-notes-4.0.17
release-notes-4.0.18

View File

@@ -0,0 +1,191 @@
.. SPDX-License-Identifier: CC-BY-SA-2.0-UK
Release notes for Yocto-4.0.18 (Kirkstone)
------------------------------------------
Security Fixes in Yocto-4.0.18
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- curl: Fix :cve:`2024-2398`
- expat: fix :cve:`2023-52426` and :cve:`2024-28757`
- libssh2: fix :cve:`2023-48795`
- ncurses: Fix :cve:`2023-50495`
- nghttp2: Fix :cve:`2024-28182` and :cve:`2023-44487`
- openssh: Ignore :cve:`2023-51767`
- openssl: Fix :cve:`2024-2511`
- perl: Ignore :cve:`2023-47100`
- python3-cryptography: Fix :cve:`2024-26130`
- python3-urllib3: Fix :cve:`2023-45803`
- qemu: Fix :cve:`2023-6683`
- ruby: fix :cve_mitre:`2024-27281`
- rust: Ignore :cve:`2024-24576`
- tiff: Fix :cve:`2023-52356` and :cve:`2023-6277`
- xserver-xorg: Fix :cve:`2024-31080` and :cve:`2024-31081`
- xwayland: Fix :cve:`2023-6816`, :cve:`2024-0408` and :cve:`2024-0409`
Fixes in Yocto-4.0.18
~~~~~~~~~~~~~~~~~~~~~
- build-appliance-image: Update to kirkstone head revision
- common-licenses: Backport missing license
- contributor-guide: add notes for tests
- contributor-guide: be more specific about meta-* trees
- cups: fix typo in :cve:`2023-32360` backport patch
- cve-update-nvd2-native: Add an age threshold for incremental update
- cve-update-nvd2-native: Fix CVE configuration update
- cve-update-nvd2-native: Fix typo in comment
- cve-update-nvd2-native: Remove duplicated CVE_CHECK_DB_FILE definition
- cve-update-nvd2-native: Remove rejected CVE from database
- cve-update-nvd2-native: nvd_request_next: Improve comment
- dev-manual: improve descriptions of 'bitbake -S printdiff'
- dev-manual: packages: fix capitalization
- docs: conf.py: properly escape backslashes for latex_elements
- gcc: Backport sanitizer fix for 32-bit ALSR
- glibc: Fix subscript typos for get_nscd_addresses
- kernel-dev: join mkdir commands with -p
- linux-firmware: Upgrade to 20240220
- manuals: add initial sphinx-lint support
- manuals: add initial stylechecks with Vale
- manuals: document VIRTUAL-RUNTIME variables
- manuals: fix duplicate "stylecheck" target
- manuals: fix incorrect double backticks
- manuals: fix trailing spaces
- manuals: refer to new yocto-patches mailing list wherever appropriate
- manuals: remove tab characters
- manuals: replace hyphens with em dashes
- manuals: use "manual page(s)"
- migration-guides: add release notes for 4.0.17
- poky.conf: bump version for 4.0.18
- profile-manual: usage.rst: fix reference to bug report
- profile-manual: usage.rst: formatting fixes
- profile-manual: usage.rst: further style improvements
- python3-urllib3: Upgrade to v1.26.18
- ref-manual: add documentation of the variable :term:`SPDX_NAMESPACE_PREFIX`
- ref-manual: tasks: do_cleanall: recommend using '-f' instead
- ref-manual: tasks: do_cleansstate: recommend using '-f' instead for a shared sstate
- ref-manual: variables: adding multiple groups in :term:`GROUPADD_PARAM`
- ref-manual: variables: correct sdk installation default path
- stress-ng: avoid calling sync during do_compile
- systemd: Fix vlan qos mapping
- tcl: Add a way to skip ptests
- tcl: skip async and event tests in run-ptest
- tcl: skip timing-dependent tests in run-ptest
- valgrind: skip intermittently failing ptest
- wireless-regdb: Upgrade to 2024.01.23
- yocto-uninative: Update to 4.4 for glibc 2.39
Known Issues in Yocto-4.0.18
~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- N/A
Contributors to Yocto-4.0.18
~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- Alex Kiernan
- Alex Stewart
- Alexander Kanavin
- BELOUARGA Mohamed
- Claus Stovgaard
- Colin McAllister
- Geoff Parker
- Haitao Liu
- Harish Sadineni
- Johan Bezem
- Jonathan GUILLOT
- Jörg Sommer
- Khem Raj
- Lee Chee Yang
- Luca Ceresoli
- Martin Jansa
- Meenali Gupta
- Michael Halstead
- Michael Opdenacker
- Peter Marko
- Quentin Schulz
- Ross Burton
- Sana Kazi
- Simone Weiß
- Soumya Sambu
- Steve Sakoman
- Tan Wen Yan
- Vijay Anusuri
- Wang Mingyu
- Yoann Congal
- Yogita Urade
- Zahir Hussain
Repositories / Downloads for Yocto-4.0.18
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
poky
- Repository Location: :yocto_git:`/poky`
- Branch: :yocto_git:`kirkstone </poky/log/?h=kirkstone>`
- Tag: :yocto_git:`yocto-4.0.18 </poky/log/?h=yocto-4.0.18>`
- Git Revision: :yocto_git:`31751bba1c789f15f574773a659b8017d7bcf440 </poky/commit/?id=31751bba1c789f15f574773a659b8017d7bcf440>`
- Release Artefact: poky-31751bba1c789f15f574773a659b8017d7bcf440
- sha: 72d5aa65c3c37766ebc24b212740272c1d52342468548f9c070241d3522ad2ca
- Download Locations:
http://downloads.yoctoproject.org/releases/yocto/yocto-4.0.18/poky-31751bba1c789f15f574773a659b8017d7bcf440.tar.bz2
http://mirrors.kernel.org/yocto/yocto/yocto-4.0.18/poky-31751bba1c789f15f574773a659b8017d7bcf440.tar.bz2
openembedded-core
- Repository Location: :oe_git:`/openembedded-core`
- Branch: :oe_git:`kirkstone </openembedded-core/log/?h=kirkstone>`
- Tag: :oe_git:`yocto-4.0.18 </openembedded-core/log/?h=yocto-4.0.18>`
- Git Revision: :oe_git:`b7182571242dc4e23e5250a449d90348e62a6abc </openembedded-core/commit/?id=b7182571242dc4e23e5250a449d90348e62a6abc>`
- Release Artefact: oecore-b7182571242dc4e23e5250a449d90348e62a6abc
- sha: 6f257e50c10ebae673dcf61a833b3270db6d22781f02f6794a370aac839f1020
- Download Locations:
http://downloads.yoctoproject.org/releases/yocto/yocto-4.0.18/oecore-b7182571242dc4e23e5250a449d90348e62a6abc.tar.bz2
http://mirrors.kernel.org/yocto/yocto/yocto-4.0.18/oecore-b7182571242dc4e23e5250a449d90348e62a6abc.tar.bz2
meta-mingw
- Repository Location: :yocto_git:`/meta-mingw`
- Branch: :yocto_git:`kirkstone </meta-mingw/log/?h=kirkstone>`
- Tag: :yocto_git:`yocto-4.0.18 </meta-mingw/log/?h=yocto-4.0.18>`
- Git Revision: :yocto_git:`f6b38ce3c90e1600d41c2ebb41e152936a0357d7 </meta-mingw/commit/?id=f6b38ce3c90e1600d41c2ebb41e152936a0357d7>`
- Release Artefact: meta-mingw-f6b38ce3c90e1600d41c2ebb41e152936a0357d7
- sha: 7d57167c19077f4ab95623d55a24c2267a3a3fb5ed83688659b4c03586373b25
- Download Locations:
http://downloads.yoctoproject.org/releases/yocto/yocto-4.0.18/meta-mingw-f6b38ce3c90e1600d41c2ebb41e152936a0357d7.tar.bz2
http://mirrors.kernel.org/yocto/yocto/yocto-4.0.18/meta-mingw-f6b38ce3c90e1600d41c2ebb41e152936a0357d7.tar.bz2
meta-gplv2
- Repository Location: :yocto_git:`/meta-gplv2`
- Branch: :yocto_git:`kirkstone </meta-gplv2/log/?h=kirkstone>`
- Tag: :yocto_git:`yocto-4.0.18 </meta-gplv2/log/?h=yocto-4.0.18>`
- Git Revision: :yocto_git:`d2f8b5cdb285b72a4ed93450f6703ca27aa42e8a </meta-gplv2/commit/?id=d2f8b5cdb285b72a4ed93450f6703ca27aa42e8a>`
- Release Artefact: meta-gplv2-d2f8b5cdb285b72a4ed93450f6703ca27aa42e8a
- sha: c386f59f8a672747dc3d0be1d4234b6039273d0e57933eb87caa20f56b9cca6d
- Download Locations:
http://downloads.yoctoproject.org/releases/yocto/yocto-4.0.18/meta-gplv2-d2f8b5cdb285b72a4ed93450f6703ca27aa42e8a.tar.bz2
http://mirrors.kernel.org/yocto/yocto/yocto-4.0.18/meta-gplv2-d2f8b5cdb285b72a4ed93450f6703ca27aa42e8a.tar.bz2
bitbake
- Repository Location: :oe_git:`/bitbake`
- Branch: :oe_git:`2.0 </bitbake/log/?h=2.0>`
- Tag: :oe_git:`yocto-4.0.18 </bitbake/log/?h=yocto-4.0.18>`
- Git Revision: :oe_git:`40fd5f4eef7460ca67f32cfce8e229e67e1ff607 </bitbake/commit/?id=40fd5f4eef7460ca67f32cfce8e229e67e1ff607>`
- Release Artefact: bitbake-40fd5f4eef7460ca67f32cfce8e229e67e1ff607
- sha: 5d20a0e4c5d0fce44bd84778168714a261a30a4b83f67c88df3b8a7e7115e444
- Download Locations:
http://downloads.yoctoproject.org/releases/yocto/yocto-4.0.18/bitbake-40fd5f4eef7460ca67f32cfce8e229e67e1ff607.tar.bz2
http://mirrors.kernel.org/yocto/yocto/yocto-4.0.18/bitbake-40fd5f4eef7460ca67f32cfce8e229e67e1ff607.tar.bz2
yocto-docs
- Repository Location: :yocto_git:`/yocto-docs`
- Branch: :yocto_git:`kirkstone </yocto-docs/log/?h=kirkstone>`
- Tag: :yocto_git:`yocto-4.0.18 </yocto-docs/log/?h=yocto-4.0.18>`
- Git Revision: :yocto_git:`fd1423141e7458ba557db465c171b0b4e9063987 </yocto-docs/commit/?id=fd1423141e7458ba557db465c171b0b4e9063987>`

View File

@@ -25,6 +25,10 @@ New Features / Enhancements in 5.0
- :term:`TARGET_DBGSRC_DIR`: specifies the target path to debug source files
- :term:`USERADD_DEPENDS`: provides a way to declare dependencies on the users
and/or groups created by other recipes, resolving a long-standing build
ordering issue
- Architecture-specific enhancements:
- ``genericarm64``: a new :term:`MACHINE` to represent a 64-bit General Arm
@@ -84,6 +88,9 @@ New Features / Enhancements in 5.0
a Sphinx extension to include jQuery on newer Sphinx releases. Recent
versions of ``python3-sphinx-rtd-theme`` depend on it.
- `python3-websockets <https://pypi.org/project/websockets/>`__: a
library for building WebSocket servers and clients in Python.
- `python3-yamllint <https://github.com/adrienverge/yamllint>`__: a linter
for YAML files. In U-Boot, the ``binman`` tool uses this linter to verify the
configurations at compile time.
@@ -155,6 +162,12 @@ New Features / Enhancements in 5.0
- Testing:
- Move `patchtest` to the core (as ``scripts/patchtest``, test cases under
``meta/lib/patchtest/tests``) and make a number of improvements to enable
it to validate patches submitted on the mailing list again. Additionally,
make it work with the original upstream version of
`Patchwork <http://jk.ozlabs.org/projects/patchwork/>`__.
- Add an optional ``unimplemented-ptest`` QA warning to detect upstream
packages with tests, that do not use ptest.
@@ -163,6 +176,9 @@ New Features / Enhancements in 5.0
- ``oeqa``, ``oe-selftest``: add test cases for Maturin (SDK and runtime).
- Proof-of-concept of screenshot-based runtime UI test
(``meta/lib/oeqa/runtime/cases/login.py``)
- Enable ptests for ``python3-attrs``, ``python3-pyyaml``, ``xz``
- Utility script changes:
@@ -191,8 +207,6 @@ New Features / Enhancements in 5.0
extra tasks if the system load is too high, especially in distributions
where ``/proc/pressure`` is disabled.
- Add garbage collection to remove unused unihashes from the database.
- ``taskexp_ncurses``: add ncurses version of ``taskexp``, the dependency
explorer originally implemented with GTK.
@@ -208,6 +222,17 @@ New Features / Enhancements in 5.0
- ``git-make-shallow`` script: add support for Git's ``safe.bareRepository=explicit``
configuration setting.
- Hash equivalence gained a number of scalability improvements including:
- Support for a wide range of database backends through `SQLAlchemy`
- Support for hash equivalence server and client to communicate over websockets
- Support for per-user permissions in the hashserver, and on the client side
specifying credentials via the environment or ``.netrc``
- Add garbage collection to remove unused unihashes from the database.
- devtool improvements:
- Introduce a new ``ide-sdk`` plugin to generate a configuration to use
@@ -255,6 +280,12 @@ New Features / Enhancements in 5.0
incremental update can be configured with :term:`CVE_DB_INCR_UPDATE_AGE_THRES`
variable.
- Toaster Web UI improvements:
- Numerous bugfixes, and additional input validation
- Add `pytest` support and add/update test cases
- Prominent documentation updates:
- Documentation for using the new ``devtool ide-sdk`` command and features.
@@ -318,6 +349,7 @@ The following corrections have been made to the :term:`LICENSE` values set by re
- ``elfutils``: split license for libraries & backend and utilities.
- ``ghostscript``: correct :term:`LICENSE` to ``AGPL-3.0-or-later``.
- ``kbd``: update license for consolefont and keymaps.
- ``libsystemd``: set its own :term:`LICENSE` value (``LGPL-2.1-or-later``) to add more granularity.
- ``libtest-warnings-perl``: update :term:`LICENSE` ``Artistic-1.0`` to ``Artistic-1.0-Perl``.
- ``linux-firmware``: set package :term:`LICENSE` appropriately for ``carl9170``, ``rockchip`` and ``powerpr``.
@@ -350,7 +382,7 @@ Security Fixes in 5.0
- libxml2: :cve:`2023-45322` (ignored)
- linux-yocto/6.6: :cve:`2020-16119`
- openssh: :cve:`2023-48795`, :cve:`2023-51384`, :cve:`2023-51385`
- openssl: :cve:`2023-5363`, :cve:`2023-5678`, :cve:`2023-6129`, :cve_mitre:`2023-6237`, :cve:`2024-0727`
- openssl: :cve:`2023-5363`, :cve:`2023-5678`, :cve:`2023-6129`, :cve_mitre:`2023-6237`, :cve:`2024-0727`, :cve:`2024-2511`
- perl: :cve:`2023-47100`
- pixman: :cve:`2023-37769` (ignored)
- python3-cryptography{-vectors}: :cve:`2023-49083`, :cve:`2024-26130`
@@ -526,7 +558,7 @@ Recipe Upgrades in 5.0
- linux-yocto-dev 6.6+git -> 6.9+git
- linux-yocto-rt 6.1.78+git, 6.5.13+git -> 6.6.23+git
- linux-yocto-tiny 6.1.78+git, 6.5.13+git -> 6.6.23+git
- llvm 17.0.3 -> 18.1.2
- llvm 17.0.3 -> 18.1.3
- lsof 4.98.0 -> 4.99.3
- ltp 20230516 -> 20240129
- lttng-modules 2.13.10 -> 2.13.12
@@ -562,7 +594,7 @@ Recipe Upgrades in 5.0
- ptest-runner 2.4.2+git -> 2.4.3+git
- pulseaudio 16.1 -> 17.0
- puzzles 0.0+git (2d9e414ee316…) -> 0.0+git (80aac3104096…)
- python3 3.11.5 -> 3.12.2
- python3 3.11.5 -> 3.12.3
- python3-alabaster 0.7.13 -> 0.7.16
- python3-attrs 23.1.0 -> 23.2.0
- python3-babel 2.12.1 -> 2.14.0
@@ -904,3 +936,58 @@ Thanks to the following people who contributed to this release:
Repositories / Downloads for Yocto-5.0
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
poky
- Repository Location: :yocto_git:`/poky`
- Branch: :yocto_git:`scarthgap </poky/log/?h=scarthgap>`
- Tag: :yocto_git:`yocto-5.0 </poky/log/?h=yocto-5.0>`
- Git Revision: :yocto_git:`fb91a49387cfb0c8d48303bb3354325ba2a05587 </poky/commit/?id=fb91a49387cfb0c8d48303bb3354325ba2a05587>`
- Release Artefact: poky-fb91a49387cfb0c8d48303bb3354325ba2a05587
- sha: 8a0dff4b677b9414ab814ed35d1880196123732ea16ab2fafa388bcc509b32ab
- Download Locations:
http://downloads.yoctoproject.org/releases/yocto/yocto-5.0/poky-fb91a49387cfb0c8d48303bb3354325ba2a05587.tar.bz2
http://mirrors.kernel.org/yocto/yocto/yocto-5.0/poky-fb91a49387cfb0c8d48303bb3354325ba2a05587.tar.bz2
openembedded-core
- Repository Location: :oe_git:`/openembedded-core`
- Branch: :oe_git:`scarthgap </openembedded-core/log/?h=scarthgap>`
- Tag: :oe_git:`yocto-5.0 </openembedded-core/log/?h=yocto-5.0>`
- Git Revision: :oe_git:`b65b4e5a8e4473d8ca43835ba17bc8bd4bdca277 </openembedded-core/commit/?id=b65b4e5a8e4473d8ca43835ba17bc8bd4bdca277>`
- Release Artefact: oecore-b65b4e5a8e4473d8ca43835ba17bc8bd4bdca277
- sha: c7fd05d1a00c70acba2540e60dce01a1bdc4701ebff9a808784960240c69261d
- Download Locations:
http://downloads.yoctoproject.org/releases/yocto/yocto-5.0/oecore-b65b4e5a8e4473d8ca43835ba17bc8bd4bdca277.tar.bz2
http://mirrors.kernel.org/yocto/yocto/yocto-5.0/oecore-b65b4e5a8e4473d8ca43835ba17bc8bd4bdca277.tar.bz2
meta-mingw
- Repository Location: :yocto_git:`/meta-mingw`
- Branch: :yocto_git:`scarthgap </meta-mingw/log/?h=scarthgap>`
- Tag: :yocto_git:`yocto-5.0 </meta-mingw/log/?h=yocto-5.0>`
- Git Revision: :yocto_git:`acbba477893ef87388effc4679b7f40ee49fc852 </meta-mingw/commit/?id=acbba477893ef87388effc4679b7f40ee49fc852>`
- Release Artefact: meta-mingw-acbba477893ef87388effc4679b7f40ee49fc852
- sha: 3b7c2f475dad5130bace652b150367f587d44b391218b1364a8bbc430b48c54c
- Download Locations:
http://downloads.yoctoproject.org/releases/yocto/yocto-5.0/meta-mingw-acbba477893ef87388effc4679b7f40ee49fc852.tar.bz2
http://mirrors.kernel.org/yocto/yocto/yocto-5.0/meta-mingw-acbba477893ef87388effc4679b7f40ee49fc852.tar.bz2
bitbake
- Repository Location: :oe_git:`/bitbake`
- Branch: :oe_git:`2.8 </bitbake/log/?h=2.8>`
- Tag: :oe_git:`yocto-5.0 </bitbake/log/?h=yocto-5.0>`
- Git Revision: :oe_git:`c86466d51e8ff14e57a734c1eec5bb651fdc73ef </bitbake/commit/?id=c86466d51e8ff14e57a734c1eec5bb651fdc73ef>`
- Release Artefact: bitbake-c86466d51e8ff14e57a734c1eec5bb651fdc73ef
- sha: 45c91294c1fa5a0044f1bb72a9bb69456bb458747114115af85c7664bf672d48
- Download Locations:
http://downloads.yoctoproject.org/releases/yocto/yocto-5.0/bitbake-c86466d51e8ff14e57a734c1eec5bb651fdc73ef.tar.bz2
http://mirrors.kernel.org/yocto/yocto/yocto-5.0/bitbake-c86466d51e8ff14e57a734c1eec5bb651fdc73ef.tar.bz2
yocto-docs
- Repository Location: :yocto_git:`/yocto-docs`
- Branch: :yocto_git:`scarthgap </yocto-docs/log/?h=scarthgap>`
- Tag: :yocto_git:`yocto-5.0 </yocto-docs/log/?h=yocto-5.0>`
- Git Revision: :yocto_git:`0cdc0afd3332459d30cfc8f4c2e62bdcc23f5ed5 </yocto-docs/commit/?id=0cdc0afd3332459d30cfc8f4c2e62bdcc23f5ed5>`

View File

@@ -1,10 +1,10 @@
DISTRO : "4.3"
DISTRO_NAME_NO_CAP : "nanbield"
DISTRO_NAME : "Nanbield"
DISTRO_NAME_NO_CAP_MINUS_ONE : "mickledore"
DISTRO_NAME_NO_CAP_LTS : "kirkstone"
YOCTO_DOC_VERSION : "4.3"
DISTRO_REL_TAG : "yocto-4.3"
DISTRO : "5.0"
DISTRO_NAME_NO_CAP : "scarthgap"
DISTRO_NAME : "Scarthgap"
DISTRO_NAME_NO_CAP_MINUS_ONE : "nanbield"
DISTRO_NAME_NO_CAP_LTS : "scarthgap"
YOCTO_DOC_VERSION : "5.0"
DISTRO_REL_TAG : "yocto-5.0"
DOCCONF_VERSION : "dev"
BITBAKE_SERIES : ""
YOCTO_DL_URL : "https://downloads.yoctoproject.org"
@@ -12,18 +12,18 @@ YOCTO_AB_URL : "https://autobuilder.yoctoproject.org"
YOCTO_RELEASE_DL_URL : "&YOCTO_DL_URL;/releases/yocto/yocto-&DISTRO;"
UBUNTU_HOST_PACKAGES_ESSENTIAL : "gawk wget git diffstat unzip texinfo gcc \
build-essential chrpath socat cpio python3 python3-pip python3-pexpect \
xz-utils debianutils iputils-ping python3-git python3-jinja2 libegl1-mesa libsdl1.2-dev \
python3-subunit mesa-common-dev zstd liblz4-tool file locales libacl1
xz-utils debianutils iputils-ping python3-git python3-jinja2 \
python3-subunit zstd liblz4-tool file locales libacl1
\n\ $ sudo locale-gen en_US.UTF-8"
FEDORA_HOST_PACKAGES_ESSENTIAL : "gawk make wget tar bzip2 gzip python3 unzip perl patch \
diffutils diffstat git cpp gcc gcc-c++ glibc-devel texinfo chrpath \
ccache perl-Data-Dumper perl-Text-ParseWords perl-Thread-Queue perl-bignum socat \
python3-pexpect findutils which file cpio python python3-pip xz python3-GitPython \
python3-jinja2 SDL-devel rpcgen mesa-libGL-devel perl-FindBin perl-File-Compare \
python3-jinja2 rpcgen perl-FindBin perl-File-Compare \
perl-File-Copy perl-locale zstd lz4 hostname glibc-langpack-en libacl"
OPENSUSE_HOST_PACKAGES_ESSENTIAL : "python gcc gcc-c++ git chrpath make wget python-xml \
diffstat makeinfo python-curses patch socat python3 python3-curses tar python3-pip \
python3-pexpect xz which python3-Jinja2 Mesa-libEGL1 libSDL-devel rpcgen Mesa-dri-devel \
python3-pexpect xz which python3-Jinja2 rpcgen \
zstd lz4 bzip2 gzip hostname libacl1
\n\ $ sudo pip3 install GitPython"
ALMALINUX_HOST_PACKAGES_ESSENTIAL : "-y epel-release
@@ -33,8 +33,8 @@ ALMALINUX_HOST_PACKAGES_ESSENTIAL : "-y epel-release
\n\ $ sudo dnf install gawk make wget tar bzip2 gzip python3 unzip perl patch \
diffutils diffstat git cpp gcc gcc-c++ glibc-devel texinfo chrpath ccache \
socat perl-Data-Dumper perl-Text-ParseWords perl-Thread-Queue python3-pip \
python3-GitPython python3-jinja2 python3-pexpect xz which SDL-devel \
rpcgen mesa-libGL-devel zstd lz4 cpio glibc-langpack-en libacl"
python3-GitPython python3-jinja2 python3-pexpect xz which \
rpcgen zstd lz4 cpio glibc-langpack-en libacl"
PIP3_HOST_PACKAGES_DOC : "$ sudo pip3 install sphinx sphinx_rtd_theme pyyaml"
MIN_PYTHON_VERSION : "3.8.0"
MIN_TAR_VERSION : "1.28"

View File

@@ -3,8 +3,8 @@
version="1.1"
id="svg2"
width="2040.0006"
height="624.30518"
viewBox="0 0 2040.0006 624.30515"
height="669.30511"
viewBox="0 0 2040.0006 669.30509"
sodipodi:docname="releases.svg"
inkscape:version="1.1.2 (0a00cf5339, 2022-02-04)"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
@@ -409,8 +409,8 @@
id="namedview4"
showgrid="true"
inkscape:zoom="1.4472045"
inkscape:cx="736.24703"
inkscape:cy="312.32629"
inkscape:cx="987.76641"
inkscape:cy="357.93145"
inkscape:window-x="1728"
inkscape:window-y="0"
inkscape:window-maximized="1"
@@ -427,13 +427,13 @@
type="xygrid"
id="grid1257"
originx="-289.99936"
originy="325" />
originy="369.99998" />
</sodipodi:namedview>
<g
inkscape:groupmode="layer"
inkscape:label="Image"
id="g10"
transform="translate(-289.99936,325.00004)">
transform="translate(-289.99936,370.00003)">
<path
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
d="m 1080,220.00003 v -515.00007 0 0"
@@ -669,11 +669,11 @@
style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:13.3333px;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans Bold';text-align:center;text-anchor:middle;fill:#fffefe;fill-opacity:1;stroke:none"
id="tspan10317-2-9-1-4">4.2</tspan></text>
<g
id="g1379">
id="g1258">
<rect
style="fill:#333333;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2;stroke-opacity:1"
id="rect917-0-0-4-4-9-4-5-38"
width="140.00003"
width="120.00002"
height="45.000004"
x="1220"
y="-230.00005"
@@ -696,53 +696,76 @@
id="tspan10317-2-9-1-4-6">4.3</tspan></text>
</g>
<rect
style="opacity:0.75;fill:#333333;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2;stroke-opacity:1"
id="rect917-0-0-4-4-9-4-5-3-9"
width="979.99994"
style="opacity:0.75;fill:#241f31;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2;stroke-opacity:1"
id="rect917-0-0-4-4-9-4-5-3-9-2"
width="140"
height="45.000004"
x="1320"
y="-285.00003"
x="1440"
y="-340.00003"
ry="2.2558987" />
<text
xml:space="preserve"
style="font-weight:bold;font-size:13.3333px;line-height:125%;font-family:'Nimbus Roman';-inkscape-font-specification:'Nimbus Roman, Bold';letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;fill:#fffefe;fill-opacity:1;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
x="1373.233"
y="-265.32928"
id="text1185-3-55-4-0-0-0-1-1-6"><tspan
x="1487.233"
y="-320.32928"
id="text1185-3-55-4-0-0-0-1-1-6-4"><tspan
sodipodi:role="line"
x="1373.233"
y="-265.32928"
x="1487.233"
y="-320.32928"
style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:13.3333px;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans Bold';text-align:center;text-anchor:middle;fill:#fffefe;fill-opacity:1;stroke:none"
id="tspan957-2-8-6-3-9-7-4-2">Scarthgap</tspan><tspan
id="tspan957-2-8-6-3-9-7-4-2-0">Styhead</tspan><tspan
sodipodi:role="line"
x="1373.233"
y="-247.33261"
x="1487.233"
y="-302.33261"
style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:13.3333px;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans Bold';text-align:center;text-anchor:middle;fill:#fffefe;fill-opacity:1;stroke:none"
id="tspan10317-2-9-1-4-6-5">5.0</tspan></text>
<rect
style="fill:#333333;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2;stroke-opacity:1"
id="rect917-0-0-4-4-9-9"
width="960.00012"
height="45.000004"
x="859.99994"
y="-64.999992"
ry="2.2558987" />
<text
xml:space="preserve"
style="font-weight:bold;font-size:13.3333px;line-height:125%;font-family:'Nimbus Roman';-inkscape-font-specification:'Nimbus Roman, Bold';letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;fill:#fffefe;fill-opacity:1;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
x="928.49872"
y="-45.648258"
id="text1185-3-55-4-0-0-9"><tspan
sodipodi:role="line"
id="tspan10317-2-9-1-4-6-5-6">5.1</tspan></text>
<g
id="g1591">
<rect
style="fill:#333333;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2;stroke-opacity:1"
id="rect917-0-0-4-4-9-9"
width="960.00012"
height="45.000004"
x="859.99994"
y="-64.999992"
ry="2.2558987" />
<text
xml:space="preserve"
style="font-weight:bold;font-size:13.3333px;line-height:125%;font-family:'Nimbus Roman';-inkscape-font-specification:'Nimbus Roman, Bold';letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;fill:#fffefe;fill-opacity:1;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
x="928.49872"
y="-45.648258"
style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:13.3333px;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans Bold';text-align:center;text-anchor:middle;fill:#fffefe;fill-opacity:1;stroke:none"
id="tspan957-2-8-6-3-6">Kirkstone (LTS)</tspan><tspan
id="text1185-3-55-4-0-0-9"><tspan
sodipodi:role="line"
x="928.49872"
y="-45.648258"
style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:13.3333px;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans Bold';text-align:center;text-anchor:middle;fill:#fffefe;fill-opacity:1;stroke:none"
id="tspan957-2-8-6-3-6">Kirkstone (LTS)</tspan><tspan
sodipodi:role="line"
x="928.49872"
y="-27.651579"
style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:13.3333px;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans Bold';text-align:center;text-anchor:middle;fill:#fffefe;fill-opacity:1;stroke:none"
id="tspan10317-2-9-0">4.0</tspan></text>
</g>
<path
id="rect917-0-0-4-4-9-9-9"
style="fill:#333333;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2;stroke-opacity:1"
d="m 1322.3015,-285.00003 c -1.2753,0 -2.302,1.00609 -2.302,2.25586 v 40.48828 c 0,1.24977 1.0267,2.25586 2.302,2.25586 h 975.0412 c 1.2754,0 2.302,-1.00609 2.302,-2.25586 v -40.48828 c 0,-1.24977 -1.0266,-2.25586 -2.302,-2.25586 z" />
<text
xml:space="preserve"
style="font-weight:bold;font-size:13.3333px;line-height:125%;font-family:'Nimbus Roman';-inkscape-font-specification:'Nimbus Roman, Bold';letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;fill:#fffefe;fill-opacity:1;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
x="1390.4988"
y="-265.64832"
id="text1185-3-55-4-0-0-9-0"><tspan
sodipodi:role="line"
x="928.49872"
y="-27.651579"
x="1390.4988"
y="-265.64832"
style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:13.3333px;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans Bold';text-align:center;text-anchor:middle;fill:#fffefe;fill-opacity:1;stroke:none"
id="tspan10317-2-9-0">4.0</tspan></text>
id="tspan957-2-8-6-3-6-8">Scarthgap (LTS)</tspan><tspan
sodipodi:role="line"
x="1390.4988"
y="-247.65164"
style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:13.3333px;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans Bold';text-align:center;text-anchor:middle;fill:#fffefe;fill-opacity:1;stroke:none"
id="tspan10317-2-9-0-1">5.0</tspan></text>
<text
xml:space="preserve"
style="font-weight:bold;font-size:13.3333px;line-height:125%;font-family:'Nimbus Roman';-inkscape-font-specification:'Nimbus Roman, Bold';letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;fill:#fffefe;fill-opacity:1;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"

Before

Width:  |  Height:  |  Size: 106 KiB

After

Width:  |  Height:  |  Size: 108 KiB

View File

@@ -9771,6 +9771,12 @@ system and gives an overview of their function and contents.
``meta-poky/conf/templates/default/local.conf.sample`` in the
:term:`Source Directory`.
:term:`USERADD_DEPENDS`
Specifies a list of recipes that create users / groups (via
:term:`USERADD_PARAM` / :term:`GROUPADD_PARAM`) which a recipe
depends upon. This ensures that those users / groups are available
when building a recipe.
:term:`USERADD_ERROR_DYNAMIC`
If set to ``error``, forces the OpenEmbedded build system to produce
an error if the user identification (``uid``) and group

View File

@@ -26,9 +26,9 @@ ourversion = None
if len(sys.argv) == 2:
ourversion = sys.argv[1]
activereleases = ["nanbield", "kirkstone", "dunfell"]
devbranch = "scarthgap"
ltsseries = ["kirkstone", "dunfell"]
activereleases = ["scarthgap", "nanbield", "kirkstone", "dunfell"]
devbranch = "styhead"
ltsseries = ["scarthgap", "kirkstone", "dunfell"]
# used by run-docs-builds to get the default page
if ourversion == "getlatest":
@@ -36,6 +36,7 @@ if ourversion == "getlatest":
sys.exit(0)
release_series = collections.OrderedDict()
release_series["styhead"] = "5.1"
release_series["scarthgap"] = "5.0"
release_series["nanbield"] = "4.3"
release_series["mickledore"] = "4.2"
@@ -68,6 +69,7 @@ release_series["laverne"] = "0.9"
bitbake_mapping = {
"styhead" : "2.10",
"scarthgap" : "2.8",
"nanbield" : "2.6",
"mickledore" : "2.4",

View File

@@ -70,28 +70,31 @@ cannot be split without infringing syntactic rules
or reducing readability, as well as for command output
which should be kept unmodified.
### Project names
Project names should be capitalized in the same
way they are on Wikipedia, in particular:
* BitBake
* OpenEmbedded
There are exceptions in which such names can be used
in lower case:
* When referring to a package name
* When referring to the corresponding command name
* When used in a cross-reference title. Such
titles are usually in lower case.
### File, tool and command names
File, tool and command names should be double tick-quoted.
File, tool, command and package names should be double tick-quoted.
For example, ``` ``conf/local.conf`` ``` is preferred over
`"conf/local.conf"`.
### Project names
Project names should be introduced with single quotes, to have them rendered
with an italic font and make them easier to distinguish from command names
(double tick-quoted) and from regular English words.
An exception is when project names appear in hyperlinks, as nested markup
is not supported by Sphinx yet.
Project names should also be capitalized (or not) in the same way they are on
Wikipedia, or on their own project pages if they are not described on
Wikipedia. If a project name isn't capitalized, it should remain so even
at the beginning of a sentence.
For example:
* ``` `BitBake` ```
* ``` `ftrace` ```
### Variables
Every variable should be mentioned with:

View File

@@ -1,6 +1,6 @@
DISTRO = "poky"
DISTRO_NAME = "Poky (Yocto Project Reference Distro)"
DISTRO_VERSION = "5.0"
DISTRO_VERSION = "5.0.2"
DISTRO_CODENAME = "scarthgap"
SDK_VENDOR = "-pokysdk"
SDK_VERSION = "${@d.getVar('DISTRO_VERSION').replace('snapshot-${METADATA_REVISION}', 'snapshot')}"

View File

@@ -238,7 +238,7 @@ BB_DISKMON_DIRS ??= "\
# (CDN) kindly provided by JSDelivr, uncomment one of the SSTATE_MIRRORS lines, not both.
# Using the CDN rather than the yoctoproject.org address is suggested/preferred.
#
#BB_HASHSERVE_UPSTREAM = "hashserv.yocto.io:8687"
#BB_HASHSERVE_UPSTREAM = 'wss://hashserv.yoctoproject.org/ws'
#SSTATE_MIRRORS ?= "file://.* http://cdn.jsdelivr.net/yocto/sstate/all/PATH;downloadfilename=PATH"
#
###SSTATE_MIRRORS ?= "file://.* http://sstate.yoctoproject.org/all/PATH;downloadfilename=PATH"

View File

@@ -0,0 +1,27 @@
# Create a subset of the package feed that just contain the
# packages depended on by this recipe.
LOCALPKGFEED_DIR = "${WORKDIR}/localpkgfeed"
addtask localpkgfeed after do_build
do_localpkgfeed[cleandirs] = "${LOCALPKGFEED_DIR}"
do_localpkgfeed[nostamp] = "1"
def get_packaging_class(d):
package_class = d.getVar("PACKAGE_CLASSES").split()[0]
return package_class.replace("package_", "")
python () {
packaging = get_packaging_class(d)
d.setVarFlag("do_localpkgfeed", "rdeptask", "do_package_write_" + packaging)
}
python do_localpkgfeed() {
import oe.package_manager
packaging = get_packaging_class(d)
deploydir = d.getVar("DEPLOY_DIR_" + packaging.upper())
task = "package_write_" + packaging
oe.package_manager.create_packages_dir(d, d.getVar("LOCALPKGFEED_DIR"), deploydir, task, True, True)
}

View File

@@ -1115,7 +1115,7 @@ def sstate_checkhashes(sq_data, d, siginfo=False, currentcount=0, summary=True,
bb.parse.siggen.checkhashes(sq_data, missed, found, d)
return found
setscene_depvalid[vardepsexclude] = "SSTATE_EXCLUDEDEPS_SYSROOT"
setscene_depvalid[vardepsexclude] = "SSTATE_EXCLUDEDEPS_SYSROOT _SSTATE_EXCLUDEDEPS_SYSROOT"
BB_SETSCENE_DEPVALID = "setscene_depvalid"

View File

@@ -48,8 +48,6 @@ GO_RPATH:class-native = "${@'-r ${STAGING_LIBDIR_NATIVE}/go/pkg/${TARGET_GOTUPLE
GO_RPATH_LINK:class-native = "${@'-Wl,-rpath-link=${STAGING_LIBDIR_NATIVE}/go/pkg/${TARGET_GOTUPLE}_dynlink' if d.getVar('GO_DYNLINK') else ''}"
GO_EXTLDFLAGS ?= "${HOST_CC_ARCH}${TOOLCHAIN_OPTIONS} ${GO_RPATH_LINK} ${LDFLAGS}"
GO_LINKMODE ?= ""
GO_LINKMODE:class-nativesdk = "--linkmode=external"
GO_LINKMODE:class-native = "--linkmode=external"
GO_EXTRA_LDFLAGS ?= ""
GO_LINUXLOADER ?= "-I ${@get_linuxloader(d)}"
# Use system loader. If uninative is used, the uninative loader will be patched automatically

View File

@@ -38,13 +38,13 @@ BASE_GOARM:armv5 = '5'
# Go supports dynamic linking on a limited set of architectures.
# See the supportsDynlink function in go/src/cmd/compile/internal/gc/main.go
GO_DYNLINK = ""
GO_DYNLINK:arm = ""
GO_DYNLINK:aarch64 = ""
GO_DYNLINK:x86 = ""
GO_DYNLINK:x86-64 = ""
GO_DYNLINK:powerpc64 = ""
GO_DYNLINK:powerpc64le = ""
GO_DYNLINK:class-native = ""
GO_DYNLINK:arm ?= "1"
GO_DYNLINK:aarch64 ?= "1"
GO_DYNLINK:x86 ?= "1"
GO_DYNLINK:x86-64 ?= "1"
GO_DYNLINK:powerpc64 ?= "1"
GO_DYNLINK:powerpc64le ?= "1"
GO_DYNLINK:class-native ?= ""
GO_DYNLINK:class-nativesdk = ""
# define here because everybody inherits this class

View File

@@ -112,18 +112,22 @@ IMAGE_CMD:btrfs () {
}
oe_mksquashfs () {
local comp=$1
local suffix=$2
local comp=$1; shift
local extra_imagecmd="$@"
if [ "$comp" = "zstd" ]; then
suffix="zst"
fi
# Use the bitbake reproducible timestamp instead of the hardcoded squashfs one
export SOURCE_DATE_EPOCH=$(stat -c '%Y' ${IMAGE_ROOTFS})
mksquashfs ${IMAGE_ROOTFS} ${IMGDEPLOYDIR}/${IMAGE_NAME}.squashfs${comp:+-}${suffix:-$comp} ${EXTRA_IMAGECMD} -noappend ${comp:+-comp }$comp
mksquashfs ${IMAGE_ROOTFS} ${IMGDEPLOYDIR}/${IMAGE_NAME}.squashfs${comp:+-}${suffix:-$comp} -noappend ${comp:+-comp }$comp $extra_imagecmd
}
IMAGE_CMD:squashfs = "oe_mksquashfs"
IMAGE_CMD:squashfs-xz = "oe_mksquashfs xz"
IMAGE_CMD:squashfs-lzo = "oe_mksquashfs lzo"
IMAGE_CMD:squashfs-lz4 = "oe_mksquashfs lz4"
IMAGE_CMD:squashfs-zst = "oe_mksquashfs zstd zst"
IMAGE_CMD:squashfs = "oe_mksquashfs '' ${EXTRA_IMAGECMD}"
IMAGE_CMD:squashfs-xz = "oe_mksquashfs xz ${EXTRA_IMAGECMD}"
IMAGE_CMD:squashfs-lzo = "oe_mksquashfs lzo ${EXTRA_IMAGECMD}"
IMAGE_CMD:squashfs-lz4 = "oe_mksquashfs lz4 ${EXTRA_IMAGECMD}"
IMAGE_CMD:squashfs-zst = "oe_mksquashfs zstd ${EXTRA_IMAGECMD}"
IMAGE_CMD:erofs = "mkfs.erofs ${EXTRA_IMAGECMD} ${IMGDEPLOYDIR}/${IMAGE_NAME}.erofs ${IMAGE_ROOTFS}"
IMAGE_CMD:erofs-lz4 = "mkfs.erofs -zlz4 ${EXTRA_IMAGECMD} ${IMGDEPLOYDIR}/${IMAGE_NAME}.erofs-lz4 ${IMAGE_ROOTFS}"

View File

@@ -463,7 +463,7 @@ kernel_do_install() {
rm -f "${D}${nonarch_base_libdir}/modules/${KERNEL_VERSION}/build"
rm -f "${D}${nonarch_base_libdir}/modules/${KERNEL_VERSION}/source"
# Remove empty module directories to prevent QA issues
find "${D}${nonarch_base_libdir}/modules/${KERNEL_VERSION}/kernel" -type d -empty -delete
[ -d "${D}${nonarch_base_libdir}/modules/${KERNEL_VERSION}/kernel" ] && find "${D}${nonarch_base_libdir}/modules/${KERNEL_VERSION}/kernel" -type d -empty -delete
else
bbnote "no modules to install"
fi

View File

@@ -206,7 +206,9 @@ read_only_rootfs_hook () {
# Also tweak the key location for dropbear in the same way.
if [ -d ${IMAGE_ROOTFS}/etc/dropbear ]; then
if [ ! -e ${IMAGE_ROOTFS}/etc/dropbear/dropbear_rsa_host_key ]; then
echo "DROPBEAR_RSAKEY_DIR=/var/lib/dropbear" >> ${IMAGE_ROOTFS}/etc/default/dropbear
if ! grep -q "^DROPBEAR_RSAKEY_DIR=" ${IMAGE_ROOTFS}/etc/default/dropbear ; then
echo "DROPBEAR_RSAKEY_DIR=/var/lib/dropbear" >> ${IMAGE_ROOTFS}/etc/default/dropbear
fi
fi
fi
fi

View File

@@ -367,7 +367,7 @@ do_uboot_assemble_fitimage() {
done
for binary in ${UBOOT_BINARIES}; do
k=$(expr $j + 1);
k=$(expr $k + 1);
if [ $k -eq $i ]; then
break;
fi

View File

@@ -190,7 +190,7 @@ RECIPE_MAINTAINER:pn-gcc-cross-canadian-${TRANSLATED_TARGET_ARCH} = "Khem Raj <r
RECIPE_MAINTAINER:pn-gcc-crosssdk-${SDK_SYS} = "Khem Raj <raj.khem@gmail.com>"
RECIPE_MAINTAINER:pn-gcc-runtime = "Khem Raj <raj.khem@gmail.com>"
RECIPE_MAINTAINER:pn-gcc-sanitizers = "Khem Raj <raj.khem@gmail.com>"
RECIPE_MAINTAINER:pn-gcc-source-13.2.0 = "Khem Raj <raj.khem@gmail.com>"
RECIPE_MAINTAINER:pn-gcc-source-13.3.0 = "Khem Raj <raj.khem@gmail.com>"
RECIPE_MAINTAINER:pn-gconf = "Ross Burton <ross.burton@arm.com>"
RECIPE_MAINTAINER:pn-gcr = "Alexander Kanavin <alex.kanavin@gmail.com>"
RECIPE_MAINTAINER:pn-gdb = "Khem Raj <raj.khem@gmail.com>"

View File

@@ -7,9 +7,9 @@
#
UNINATIVE_MAXGLIBCVERSION = "2.39"
UNINATIVE_VERSION = "4.4"
UNINATIVE_VERSION = "4.5"
UNINATIVE_URL ?= "http://downloads.yoctoproject.org/releases/uninative/${UNINATIVE_VERSION}/"
UNINATIVE_CHECKSUM[aarch64] ?= "b61876130f494f75092f21086b4a64ea5fb064045769bf1d32e9cb6af17ea8ec"
UNINATIVE_CHECKSUM[i686] ?= "9f28627828f0082cc0344eede4d9a861a9a064bfa8f36e072e46212f0fe45fcc"
UNINATIVE_CHECKSUM[x86_64] ?= "d81c54284be2bb886931fc87281d58177a2cd381cf99d1981f8923039a72a302"
UNINATIVE_CHECKSUM[aarch64] ?= "df2e29e2e6feb187a3499abf3b1322a3b251da819c77a7b19d4fe952351365ab"
UNINATIVE_CHECKSUM[i686] ?= "8ef3eda53428b484c20157f6ec3c130b03080b3d4b3889067e0e184e05102d35"
UNINATIVE_CHECKSUM[x86_64] ?= "43ee6a25bcf5fce16ea87076d6a96e79ead6ced90690a058d07432f902773473"

View File

@@ -449,7 +449,7 @@ class PackageManager(object, metaclass=ABCMeta):
return res
return _append(uris, base_paths)
def create_packages_dir(d, subrepo_dir, deploydir, taskname, filterbydependencies):
def create_packages_dir(d, subrepo_dir, deploydir, taskname, filterbydependencies, include_self=False):
"""
Go through our do_package_write_X dependencies and hardlink the packages we depend
upon into the repo directory. This prevents us seeing other packages that may
@@ -486,14 +486,17 @@ def create_packages_dir(d, subrepo_dir, deploydir, taskname, filterbydependencie
bb.fatal("Couldn't find ourself in BB_TASKDEPDATA?")
pkgdeps = set()
start = [start]
seen = set(start)
if include_self:
seen = set()
else:
seen = set(start)
# Support direct dependencies (do_rootfs -> do_package_write_X)
# or indirect dependencies within PN (do_populate_sdk_ext -> do_rootfs -> do_package_write_X)
while start:
next = []
for dep2 in start:
for dep in taskdepdata[dep2][3]:
if taskdepdata[dep][0] != pn:
if include_self or taskdepdata[dep][0] != pn:
if "do_" + taskname in dep:
pkgdeps.add(dep)
elif dep not in seen:

View File

@@ -4,6 +4,7 @@
# SPDX-License-Identifier: GPL-2.0-only
#
import glob
import re
import shutil
import subprocess
@@ -134,11 +135,16 @@ class OpkgDpkgPM(PackageManager):
tmp_dir = tempfile.mkdtemp()
current_dir = os.getcwd()
os.chdir(tmp_dir)
data_tar = 'data.tar.zst'
try:
cmd = [ar_cmd, 'x', pkg_path]
output = subprocess.check_output(cmd, stderr=subprocess.STDOUT)
data_tar = glob.glob("data.tar.*")
if len(data_tar) != 1:
bb.fatal("Unable to extract %s package. Failed to identify "
"data tarball (found tarballs '%s').",
pkg_path, data_tar)
data_tar = data_tar[0]
cmd = [tar_cmd, 'xf', data_tar]
output = subprocess.check_output(cmd, stderr=subprocess.STDOUT)
except subprocess.CalledProcessError as e:
@@ -153,6 +159,7 @@ class OpkgDpkgPM(PackageManager):
bb.note("Extracted %s to %s" % (pkg_path, tmp_dir))
bb.utils.remove(os.path.join(tmp_dir, "debian-binary"))
bb.utils.remove(os.path.join(tmp_dir, "control.tar.gz"))
bb.utils.remove(os.path.join(tmp_dir, data_tar))
os.chdir(current_dir)
return tmp_dir
@@ -505,7 +512,4 @@ class OpkgPM(OpkgDpkgPM):
bb.fatal("Unable to get information for package '%s' while "
"trying to extract the package." % pkg)
tmp_dir = super(OpkgPM, self).extract(pkg, pkg_info)
bb.utils.remove(os.path.join(tmp_dir, "data.tar.zst"))
return tmp_dir
return super(OpkgPM, self).extract(pkg, pkg_info)

View File

@@ -25,10 +25,10 @@ class BuildAssimp(OESDKTestCase):
def test_assimp(self):
with tempfile.TemporaryDirectory(prefix="assimp", dir=self.tc.sdk_dir) as testdir:
tarball = self.fetch(testdir, self.td["DL_DIR"], "https://github.com/assimp/assimp/archive/v5.3.1.tar.gz")
tarball = self.fetch(testdir, self.td["DL_DIR"], "https://github.com/assimp/assimp/archive/v5.4.1.tar.gz")
dirs = {}
dirs["source"] = os.path.join(testdir, "assimp-5.3.1")
dirs["source"] = os.path.join(testdir, "assimp-5.4.1")
dirs["build"] = os.path.join(testdir, "build")
dirs["install"] = os.path.join(testdir, "install")
@@ -39,7 +39,7 @@ class BuildAssimp(OESDKTestCase):
self._run("sed -i '/# ifdef _FILE_OFFSET_BITS/I,+2 d' {source}/contrib/zlib/gzguts.h".format(**dirs))
os.makedirs(dirs["build"])
self._run("cd {build} && cmake -DCMAKE_VERBOSE_MAKEFILE:BOOL=ON -DASSIMP_BUILD_ZLIB=ON {source}".format(**dirs))
self._run("cd {build} && cmake -DASSIMP_WARNINGS_AS_ERRORS=OFF -DCMAKE_VERBOSE_MAKEFILE:BOOL=ON -DASSIMP_BUILD_ZLIB=ON {source}".format(**dirs))
self._run("cmake --build {build} -- -j".format(**dirs))
self._run("cmake --build {build} --target install -- DESTDIR={install}".format(**dirs))
self.check_elf(os.path.join(dirs["install"], "usr", "local", "lib", "libassimp.so.5.3.0"))
self.check_elf(os.path.join(dirs["install"], "usr", "local", "lib", "libassimp.so.5.4.1"))

View File

@@ -69,10 +69,9 @@ class DevtoolTest(OESDKExtTestCase):
self._test_devtool_build(self.myapp_cmake_dst)
def test_extend_autotools_recipe_creation(self):
req = 'https://github.com/rdfa/librdfa'
recipe = "librdfa"
self._run('devtool sdk-install libxml2')
self._run('devtool add %s %s' % (recipe, req) )
recipe = "test-dbus-wait"
self._run('devtool sdk-install dbus')
self._run('devtool add %s https://git.yoctoproject.org/git/dbus-wait' % (recipe) )
try:
self._run('devtool build %s' % recipe)
finally:

View File

@@ -62,7 +62,7 @@ class Debuginfod(OESelftestTestCase):
raise TimeoutError("Cannot connect debuginfod, still %d scan jobs running" % latest)
def start_debuginfod(self):
def start_debuginfod(self, feed_dir):
# We assume that the caller has already bitbake'd elfutils-native:do_addto_recipe_sysroot
# Save some useful paths for later
@@ -82,7 +82,7 @@ class Debuginfod(OESelftestTestCase):
# Disable rescanning, this is a one-shot test
"--rescan-time=0",
"--groom-time=0",
get_bb_var("DEPLOY_DIR"),
feed_dir,
]
format = get_bb_var("PACKAGE_CLASSES").split()[0]
@@ -114,11 +114,12 @@ class Debuginfod(OESelftestTestCase):
self.write_config("""
TMPDIR = "${TOPDIR}/tmp-debuginfod"
DISTRO_FEATURES:append = " debuginfod"
INHERIT += "localpkgfeed"
""")
bitbake("elfutils-native:do_addto_recipe_sysroot xz xz:do_package")
bitbake("elfutils-native:do_addto_recipe_sysroot xz xz:do_package xz:do_localpkgfeed")
try:
self.start_debuginfod()
self.start_debuginfod(get_bb_var("LOCALPKGFEED_DIR", "xz"))
env = os.environ.copy()
env["DEBUGINFOD_URLS"] = "http://localhost:%d/" % self.port
@@ -141,12 +142,13 @@ DISTRO_FEATURES:append = " debuginfod"
self.write_config("""
TMPDIR = "${TOPDIR}/tmp-debuginfod"
DISTRO_FEATURES:append = " debuginfod"
INHERIT += "localpkgfeed"
CORE_IMAGE_EXTRA_INSTALL += "elfutils xz"
""")
bitbake("core-image-minimal elfutils-native:do_addto_recipe_sysroot")
bitbake("core-image-minimal elfutils-native:do_addto_recipe_sysroot xz:do_localpkgfeed")
try:
self.start_debuginfod()
self.start_debuginfod(get_bb_var("LOCALPKGFEED_DIR", "xz"))
with runqemu("core-image-minimal", runqemuparams="nographic") as qemu:
cmd = "DEBUGINFOD_URLS=http://%s:%d/ debuginfod-find debuginfo /usr/bin/xz" % (qemu.server_ip, self.port)

View File

@@ -286,10 +286,13 @@ class DevtoolTestCase(OESelftestTestCase):
else:
self.skipTest('No tap devices found - you must set up tap devices with scripts/runqemu-gen-tapdevs before running this test')
def _test_devtool_add_git_url(self, git_url, version, pn, resulting_src_uri):
def _test_devtool_add_git_url(self, git_url, version, pn, resulting_src_uri, srcrev=None):
self.track_for_cleanup(self.workspacedir)
self.add_command_to_tearDown('bitbake-layers remove-layer */workspace')
result = runCmd('devtool add --version %s %s %s' % (version, pn, git_url))
command = 'devtool add --version %s %s %s' % (version, pn, git_url)
if srcrev :
command += ' --srcrev %s' %srcrev
result = runCmd(command)
self.assertExists(os.path.join(self.workspacedir, 'conf', 'layer.conf'), 'Workspace directory not created')
# Check the recipe name is correct
recipefile = get_bb_var('FILE', pn)
@@ -479,11 +482,12 @@ class DevtoolAddTests(DevtoolBase):
def test_devtool_add_git_style2(self):
version = 'v3.1.0'
srcrev = 'v3.1.0'
pn = 'mbedtls'
# this will trigger reformat_git_uri with branch parameter in url
git_url = "'git://git@github.com/ARMmbed/mbedtls.git;protocol=https'"
resulting_src_uri = "gitsm://git@github.com/ARMmbed/mbedtls.git;protocol=https;branch=master"
self._test_devtool_add_git_url(git_url, version, pn, resulting_src_uri)
resulting_src_uri = "git://git@github.com/ARMmbed/mbedtls.git;protocol=https;branch=master"
self._test_devtool_add_git_url(git_url, version, pn, resulting_src_uri, srcrev)
def test_devtool_add_library(self):
# Fetch source
@@ -749,6 +753,25 @@ class DevtoolModifyTests(DevtoolBase):
result = runCmd('devtool status')
self.assertNotIn('mdadm', result.output)
def test_devtool_modify_go(self):
import oe.path
from tempfile import TemporaryDirectory
with TemporaryDirectory(prefix='devtoolqa') as tempdir:
self.track_for_cleanup(self.workspacedir)
self.add_command_to_tearDown('bitbake -c clean go-helloworld')
self.add_command_to_tearDown('bitbake-layers remove-layer */workspace')
result = runCmd('devtool modify go-helloworld -x %s' % tempdir)
self.assertExists(
oe.path.join(tempdir, 'src', 'golang.org', 'x', 'example', 'go.mod'),
'Extracted source could not be found'
)
self.assertExists(
oe.path.join(self.workspacedir, 'conf', 'layer.conf'),
'Workspace directory not created'
)
matches = glob.glob(oe.path.join(self.workspacedir, 'appends', 'go-helloworld_*.bbappend'))
self.assertTrue(matches, 'bbappend not created %s' % result.output)
def test_devtool_buildclean(self):
def assertFile(path, *paths):
f = os.path.join(path, *paths)
@@ -1405,14 +1428,30 @@ class DevtoolUpdateTests(DevtoolBase):
runCmd('echo "Bar" > new-file', cwd=tempdir)
runCmd('git add new-file', cwd=tempdir)
runCmd('git commit -m "Add new file"', cwd=tempdir)
self.add_command_to_tearDown('cd %s; git clean -fd .; git checkout .' %
os.path.dirname(recipefile))
runCmd('devtool update-recipe %s' % testrecipe)
expected_status = [(' M', '.*/%s$' % os.path.basename(recipefile)),
(' M', '.*/makedevs/makedevs.c$'),
('??', '.*/makedevs/new-local$'),
('??', '.*/makedevs/0001-Add-new-file.patch$')]
self._check_repo_status(os.path.dirname(recipefile), expected_status)
# Now try to update recipe in another layer, so first, clean it
runCmd('cd %s; git clean -fd .; git checkout .' % os.path.dirname(recipefile))
# Create a temporary layer and add it to bblayers.conf
self._create_temp_layer(templayerdir, True, 'templayer')
# Update recipe in templayer
result = runCmd('devtool update-recipe %s -a %s' % (testrecipe, templayerdir))
self.assertNotIn('WARNING:', result.output)
# Check recipe is still clean
self._check_repo_status(os.path.dirname(recipefile), [])
splitpath = os.path.dirname(recipefile).split(os.sep)
appenddir = os.path.join(templayerdir, splitpath[-2], splitpath[-1])
bbappendfile = self._check_bbappend(testrecipe, recipefile, appenddir)
patchfile = os.path.join(appenddir, testrecipe, '0001-Add-new-file.patch')
new_local_file = os.path.join(appenddir, testrecipe, 'new_local')
local_file = os.path.join(appenddir, testrecipe, 'makedevs.c')
self.assertExists(patchfile, 'Patch file 0001-Add-new-file.patch not created')
self.assertExists(local_file, 'File makedevs.c not created')
self.assertExists(patchfile, 'File new_local not created')
def test_devtool_update_recipe_local_files_2(self):
"""Check local source files support when oe-local-files is in Git"""

View File

@@ -194,8 +194,23 @@ class OESelftestTestContextExecutor(OETestContextExecutor):
parser.add_argument('-R', '--skip-tests', required=False, action='store',
nargs='+', dest="skips", default=None,
help='Skip the tests specified. Format should be <module>[.<class>[.<test_method>]]')
def check_parallel_support(parameter):
if not parameter.isdigit():
import argparse
raise argparse.ArgumentTypeError("argument -j/--num-processes: invalid int value: '%s' " % str(parameter))
processes = int(parameter)
if processes:
try:
import testtools, subunit
except ImportError:
print("Failed to import testtools or subunit, the testcases will run serially")
processes = None
return processes
parser.add_argument('-j', '--num-processes', dest='processes', action='store',
type=int, help="number of processes to execute in parallel with")
type=check_parallel_support, help="number of processes to execute in parallel with")
parser.add_argument('-t', '--select-tag', dest="select_tags",
action='append', default=None,

View File

@@ -25,7 +25,7 @@ def create_artifacts_directory(d, tc):
def get_target_disk_usage(d, tc):
output_file = os.path.join(get_json_result_dir(d), "artifacts", "target_disk_usage.txt")
try:
(status, output) = tc.target.run('df -hl')
(status, output) = tc.target.run('df -h')
with open(output_file, 'w') as f:
f.write(output)
f.write("\n")

View File

@@ -18,12 +18,12 @@ class TestMetadata(base.Metadata):
lictag_re = pyparsing.AtLineStart("License-Update:")
lic_chksum_added = pyparsing.AtLineStart("+" + metadata_chksum)
lic_chksum_removed = pyparsing.AtLineStart("-" + metadata_chksum)
add_mark = pyparsing.Regex('\+ ')
add_mark = pyparsing.Regex('\\+ ')
max_length = 200
metadata_src_uri = 'SRC_URI'
md5sum = 'md5sum'
sha256sum = 'sha256sum'
git_regex = pyparsing.Regex('^git\:\/\/.*')
git_regex = pyparsing.Regex('^git\\:\\/\\/.*')
metadata_summary = 'SUMMARY'
cve_check_ignore_var = 'CVE_CHECK_IGNORE'
cve_status_var = 'CVE_STATUS'

View File

@@ -46,3 +46,9 @@ ALTERNATIVE_TARGET[rb] = "${bindir}/lrz"
ALTERNATIVE_TARGET[sz] = "${bindir}/lsz"
ALTERNATIVE_TARGET[sx] = "${bindir}/lsz"
ALTERNATIVE_TARGET[sb] = "${bindir}/lsz"
# http://errors.yoctoproject.org/Errors/Details/766929/
# lrzsz-0.12.20/src/tcp.c:75:56: error: passing argument 3 of 'getsockname' from incompatible pointer type [-Wincompatible-pointer-types]
# lrzsz-0.12.20/src/tcp.c:83:52: error: passing argument 3 of 'getsockname' from incompatible pointer type [-Wincompatible-pointer-types]
# lrzsz-0.12.20/src/tcp.c:103:51: error: passing argument 3 of 'accept' from incompatible pointer type [-Wincompatible-pointer-types]
CFLAGS += "-Wno-error=incompatible-pointer-types"

View File

@@ -20,7 +20,7 @@ SRC_URI = "https://ftp.isc.org/isc/bind9/${PV}/${BPN}-${PV}.tar.xz \
file://0001-avoid-start-failure-with-bind-user.patch \
"
SRC_URI[sha256sum] = "709d73023c9115ddad3bab65b6c8c79a590196d0d114f5d0ca2533dbd52ddf66"
SRC_URI[sha256sum] = "5a4a70432a33d009f0e6e9dbb328aae7a5e27507e98e28bf3c0c6b250ccb2ab3"
UPSTREAM_CHECK_URI = "https://ftp.isc.org/isc/bind9/"
# follow the ESV versions divisible by 2

View File

@@ -28,3 +28,7 @@ RDEPENDS:${PN} = "connman"
do_install:append() {
install -m 0644 ${WORKDIR}/images/* ${D}/usr/share/icons/hicolor/22x22/apps/
}
# http://errors.yoctoproject.org/Errors/Details/766926/
# connman-client.c:200:15: error: assignment to 'GtkTreeModel *' {aka 'struct _GtkTreeModel *'} from incompatible pointer type 'GtkTreeStore *' {aka 'struct _GtkTreeStore *'} [-Wincompatible-pointer-types]
CFLAGS += "-Wno-error=incompatible-pointer-types"

View File

@@ -1,39 +0,0 @@
From c25f8d1f7a6203dfeb10b39f80ffd314bb84a58d Mon Sep 17 00:00:00 2001
From: Baruch Siach <baruch@tkos.co.il>
Date: Thu, 22 Dec 2016 15:26:30 +0200
Subject: [PATCH] libc-compat.h: add musl workaround
The libc-compat.h kernel header uses glibc specific macros (__GLIBC__ and
__USE_MISC) to solve conflicts with libc provided headers. This patch makes
libc-compat.h work for musl libc as well.
Upstream-Status: Pending
Taken From:
https://git.buildroot.net/buildroot/tree/package/iproute2/0001-Add-the-musl-workaround-to-the-libc-compat.h-copy.patch
Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: Maxin B. John <maxin.john@intel.com>
---
include/uapi/linux/libc-compat.h | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/include/uapi/linux/libc-compat.h b/include/uapi/linux/libc-compat.h
index a159991..22198fa 100644
--- a/include/uapi/linux/libc-compat.h
+++ b/include/uapi/linux/libc-compat.h
@@ -50,10 +50,12 @@
#define _LIBC_COMPAT_H
/* We have included glibc headers... */
-#if defined(__GLIBC__)
+#if 1
+#define __USE_MISC
/* Coordinate with glibc net/if.h header. */
#if defined(_NET_IF_H) && defined(__USE_MISC)
+#define __UAPI_DEF_IF_NET_DEVICE_FLAGS_LOWER_UP_DORMANT_ECHO 0
/* GLIBC headers included first so don't define anything
* that would already be defined. */

View File

@@ -11,9 +11,7 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=eb723b61539feef013de476e68b5c50a \
DEPENDS = "flex-native bison-native iptables libcap"
SRC_URI = "${KERNELORG_MIRROR}/linux/utils/net/${BPN}/${BP}.tar.xz \
file://0001-libc-compat.h-add-musl-workaround.patch \
"
SRC_URI = "${KERNELORG_MIRROR}/linux/utils/net/${BPN}/${BP}.tar.xz"
SRC_URI[sha256sum] = "ff942dd9828d7d1f867f61fe72ce433078c31e5d8e4a78e20f02cb5892e8841d"
@@ -28,6 +26,8 @@ PACKAGECONFIG[selinux] = ",,libselinux"
IPROUTE2_MAKE_SUBDIRS = "lib tc ip bridge misc genl ${@bb.utils.filter('PACKAGECONFIG', 'devlink tipc rdma', d)}"
# This is needed with GCC-14 and musl
CFLAGS += "-Wno-error=incompatible-pointer-types"
# CFLAGS are computed in Makefile and reference CCOPTS
#
EXTRA_OEMAKE = "\

View File

@@ -1,62 +0,0 @@
From f9bcfed5a1d44d9211c5f6eba403a9898c8c9057 Mon Sep 17 00:00:00 2001
From: Sudip Mukherjee <sudipm.mukherjee@gmail.com>
Date: Tue, 8 Aug 2023 19:03:13 +0100
Subject: [PATCH] kea: fix reproducible build failure
New version of Kea has started using path of build-dir instead of
src-dir which results in reproducible builds failure.
Use src-dir as is used in v2.2.0
Upstream-Status: Pending
https://gitlab.isc.org/isc-projects/kea/-/issues/3007
Upstream has confirmed the patch will not be accepted but discussions
with upstream is still going on, we might have a proper solution later.
Signed-off-by: Sudip Mukherjee <sudipm.mukherjee@gmail.com>
---
src/bin/admin/kea-admin.in | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/src/bin/admin/kea-admin.in b/src/bin/admin/kea-admin.in
index 034a0ee..8ab11ab 100644
--- a/src/bin/admin/kea-admin.in
+++ b/src/bin/admin/kea-admin.in
@@ -51,14 +51,14 @@ dump_qry=""
if test -f "@datarootdir@/@PACKAGE_NAME@/scripts/admin-utils.sh"; then
. "@datarootdir@/@PACKAGE_NAME@/scripts/admin-utils.sh"
else
- . "@abs_top_builddir@/src/bin/admin/admin-utils.sh"
+ . "@abs_top_srcdir@/src/bin/admin/admin-utils.sh"
fi
# Find the installed kea-lfc if available. Fallback to sources otherwise.
if test -x "@sbindir@/kea-lfc"; then
kea_lfc="@sbindir@/kea-lfc"
else
- kea_lfc="@abs_top_builddir@/src/bin/lfc/kea-lfc"
+ kea_lfc="@abs_top_srcdir@/src/bin/lfc/kea-lfc"
fi
# Prints out usage version.
@@ -355,7 +355,7 @@ mysql_upgrade() {
# Check if there are any files in it
num_files=$(find "${upgrade_scripts_dir}" -name 'upgrade*.sh' -type f | wc -l)
if [ "$num_files" -eq 0 ]; then
- upgrade_scripts_dir=@abs_top_builddir@/src/share/database/scripts/mysql
+ upgrade_scripts_dir=@abs_top_srcdir@/src/share/database/scripts/mysql
# Check if the scripts directory exists at all.
if [ ! -d ${upgrade_scripts_dir} ]; then
@@ -405,7 +405,7 @@ pgsql_upgrade() {
# Check if there are any files in it
num_files=$(find "${upgrade_scripts_dir}" -name 'upgrade*.sh' -type f | wc -l)
if [ "$num_files" -eq 0 ]; then
- upgrade_scripts_dir=@abs_top_builddir@/src/share/database/scripts/pgsql
+ upgrade_scripts_dir=@abs_top_srcdir@/src/share/database/scripts/pgsql
# Check if the scripts directory exists at all.
if [ ! -d ${upgrade_scripts_dir} ]; then
--
2.39.2

View File

@@ -17,7 +17,6 @@ SRC_URI = "http://ftp.isc.org/isc/kea/${PV}/${BP}.tar.gz \
file://fix-multilib-conflict.patch \
file://fix_pid_keactrl.patch \
file://0001-src-lib-log-logger_unittest_support.cc-do-not-write-.patch \
file://0001-kea-fix-reproducible-build-failure.patch \
"
SRC_URI[sha256sum] = "815c61f5c271caa4a1db31dd656eb50a7f6ea973da3690f7c8581408e180131a"
@@ -39,6 +38,7 @@ DEBUG_OPTIMIZATION:append:mipsel = " -O"
BUILD_OPTIMIZATION:remove:mipsel = " -Og"
BUILD_OPTIMIZATION:append:mipsel = " -O"
CXXFLAGS:remove = "-fvisibility-inlines-hidden"
EXTRA_OECONF = "--with-boost-libs=-lboost_system \
--with-log4cplus=${STAGING_DIR_TARGET}${prefix} \
--with-openssl=${STAGING_DIR_TARGET}${prefix}"
@@ -47,7 +47,7 @@ do_configure:prepend() {
# replace abs_top_builddir to avoid introducing the build path
# don't expand the abs_top_builddir on the target as the abs_top_builddir is meanlingless on the target
find ${S} -type f -name *.sh.in | xargs sed -i "s:@abs_top_builddir@:@abs_top_builddir_placeholder@:g"
sed -i "s:@abs_top_srcdir@:@abs_top_srcdir_placeholder@:g" ${S}/src/bin/admin/kea-admin.in
sed -i "s:@abs_top_builddir@:@abs_top_builddir_placeholder@:g" ${S}/src/bin/admin/kea-admin.in
}
# patch out build host paths for reproducibility

View File

@@ -1,120 +0,0 @@
From e9d7083e241670332e0443da0f0d4ffb52829f08 Mon Sep 17 00:00:00 2001
From: Matt Caswell <matt@openssl.org>
Date: Tue, 5 Mar 2024 15:43:53 +0000
Subject: [PATCH] Fix unconstrained session cache growth in TLSv1.3
In TLSv1.3 we create a new session object for each ticket that we send.
We do this by duplicating the original session. If SSL_OP_NO_TICKET is in
use then the new session will be added to the session cache. However, if
early data is not in use (and therefore anti-replay protection is being
used), then multiple threads could be resuming from the same session
simultaneously. If this happens and a problem occurs on one of the threads,
then the original session object could be marked as not_resumable. When we
duplicate the session object this not_resumable status gets copied into the
new session object. The new session object is then added to the session
cache even though it is not_resumable.
Subsequently, another bug means that the session_id_length is set to 0 for
sessions that are marked as not_resumable - even though that session is
still in the cache. Once this happens the session can never be removed from
the cache. When that object gets to be the session cache tail object the
cache never shrinks again and grows indefinitely.
CVE-2024-2511
Reviewed-by: Neil Horman <nhorman@openssl.org>
Reviewed-by: Tomas Mraz <tomas@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/24043)
CVE: CVE-2024-2511
Upstream-Status: Backport [https://github.com/openssl/openssl/commit/e9d7083e241670332e0443da0f0d4ffb52829f08]
Signed-off-by: Peter Marko <peter.marko@siemens.com>
---
ssl/ssl_lib.c | 5 +++--
ssl/ssl_sess.c | 28 ++++++++++++++++++++++------
ssl/statem/statem_srvr.c | 5 ++---
3 files changed, 27 insertions(+), 11 deletions(-)
diff --git a/ssl/ssl_lib.c b/ssl/ssl_lib.c
index 4afb43bc86e54..c51529ddab5bb 100644
--- a/ssl/ssl_lib.c
+++ b/ssl/ssl_lib.c
@@ -4457,9 +4457,10 @@ void ssl_update_cache(SSL_CONNECTION *s, int mode)
/*
* If the session_id_length is 0, we are not supposed to cache it, and it
- * would be rather hard to do anyway :-)
+ * would be rather hard to do anyway :-). Also if the session has already
+ * been marked as not_resumable we should not cache it for later reuse.
*/
- if (s->session->session_id_length == 0)
+ if (s->session->session_id_length == 0 || s->session->not_resumable)
return;
/*
diff --git a/ssl/ssl_sess.c b/ssl/ssl_sess.c
index 3dcc4d81e5bc6..1fa6d17c46863 100644
--- a/ssl/ssl_sess.c
+++ b/ssl/ssl_sess.c
@@ -127,16 +127,11 @@ SSL_SESSION *SSL_SESSION_new(void)
return ss;
}
-SSL_SESSION *SSL_SESSION_dup(const SSL_SESSION *src)
-{
- return ssl_session_dup(src, 1);
-}
-
/*
* Create a new SSL_SESSION and duplicate the contents of |src| into it. If
* ticket == 0 then no ticket information is duplicated, otherwise it is.
*/
-SSL_SESSION *ssl_session_dup(const SSL_SESSION *src, int ticket)
+static SSL_SESSION *ssl_session_dup_intern(const SSL_SESSION *src, int ticket)
{
SSL_SESSION *dest;
@@ -265,6 +260,27 @@ SSL_SESSION *ssl_session_dup(const SSL_SESSION *src, int ticket)
return NULL;
}
+SSL_SESSION *SSL_SESSION_dup(const SSL_SESSION *src)
+{
+ return ssl_session_dup_intern(src, 1);
+}
+
+/*
+ * Used internally when duplicating a session which might be already shared.
+ * We will have resumed the original session. Subsequently we might have marked
+ * it as non-resumable (e.g. in another thread) - but this copy should be ok to
+ * resume from.
+ */
+SSL_SESSION *ssl_session_dup(const SSL_SESSION *src, int ticket)
+{
+ SSL_SESSION *sess = ssl_session_dup_intern(src, ticket);
+
+ if (sess != NULL)
+ sess->not_resumable = 0;
+
+ return sess;
+}
+
const unsigned char *SSL_SESSION_get_id(const SSL_SESSION *s, unsigned int *len)
{
if (len)
diff --git a/ssl/statem/statem_srvr.c b/ssl/statem/statem_srvr.c
index 853af8c0aa9f9..d5f0ab091dacc 100644
--- a/ssl/statem/statem_srvr.c
+++ b/ssl/statem/statem_srvr.c
@@ -2445,9 +2445,8 @@ CON_FUNC_RETURN tls_construct_server_hello(SSL_CONNECTION *s, WPACKET *pkt)
* so the following won't overwrite an ID that we're supposed
* to send back.
*/
- if (s->session->not_resumable ||
- (!(SSL_CONNECTION_GET_CTX(s)->session_cache_mode & SSL_SESS_CACHE_SERVER)
- && !s->hit))
+ if (!(SSL_CONNECTION_GET_CTX(s)->session_cache_mode & SSL_SESS_CACHE_SERVER)
+ && !s->hit)
s->session->session_id_length = 0;
if (usetls13) {

View File

@@ -1,58 +0,0 @@
From ba8a599395f8b770c76316b5f5b0f3838567014f Mon Sep 17 00:00:00 2001
From: Tom Cosgrove <tom.cosgrove@arm.com>
Date: Tue, 26 Mar 2024 13:18:00 +0000
Subject: [PATCH] aarch64: fix BTI in bsaes assembly code
In Arm systems where BTI is enabled but the Crypto extensions are not (more
likely in FVPs than in real hardware), the bit-sliced assembler code will
be used. However, this wasn't annotated with BTI instructions when BTI was
enabled, so the moment libssl jumps into this code it (correctly) aborts.
Solve this by adding the missing BTI landing pads.
Upstream-Status: Submitted [https://github.com/openssl/openssl/pull/23982]
Signed-off-by: Ross Burton <ross.burton@arm.com>
---
crypto/aes/asm/bsaes-armv8.pl | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/crypto/aes/asm/bsaes-armv8.pl b/crypto/aes/asm/bsaes-armv8.pl
index b3c97e439f..c3c5ff3e05 100644
--- a/crypto/aes/asm/bsaes-armv8.pl
+++ b/crypto/aes/asm/bsaes-armv8.pl
@@ -1018,6 +1018,7 @@ _bsaes_key_convert:
// Initialisation vector overwritten with last quadword of ciphertext
// No output registers, usual AAPCS64 register preservation
ossl_bsaes_cbc_encrypt:
+ AARCH64_VALID_CALL_TARGET
cmp x2, #128
bhs .Lcbc_do_bsaes
b AES_cbc_encrypt
@@ -1270,7 +1271,7 @@ ossl_bsaes_cbc_encrypt:
// Output text filled in
// No output registers, usual AAPCS64 register preservation
ossl_bsaes_ctr32_encrypt_blocks:
-
+ AARCH64_VALID_CALL_TARGET
cmp x2, #8 // use plain AES for
blo .Lctr_enc_short // small sizes
@@ -1476,6 +1477,7 @@ ossl_bsaes_ctr32_encrypt_blocks:
// Output ciphertext filled in
// No output registers, usual AAPCS64 register preservation
ossl_bsaes_xts_encrypt:
+ AARCH64_VALID_CALL_TARGET
// Stack layout:
// sp ->
// nrounds*128-96 bytes: key schedule
@@ -1921,6 +1923,7 @@ ossl_bsaes_xts_encrypt:
// Output plaintext filled in
// No output registers, usual AAPCS64 register preservation
ossl_bsaes_xts_decrypt:
+ AARCH64_VALID_CALL_TARGET
// Stack layout:
// sp ->
// nrounds*128-96 bytes: key schedule
--
2.34.1

View File

@@ -12,15 +12,13 @@ SRC_URI = "http://www.openssl.org/source/openssl-${PV}.tar.gz \
file://0001-buildinfo-strip-sysroot-and-debug-prefix-map-from-co.patch \
file://0001-Configure-do-not-tweak-mips-cflags.patch \
file://0001-Added-handshake-history-reporting-when-test-fails.patch \
file://bti.patch \
file://CVE-2024-2511.patch \
"
SRC_URI:append:class-nativesdk = " \
file://environment.d-openssl.sh \
"
SRC_URI[sha256sum] = "83c7329fe52c850677d75e5d0b0ca245309b97e8ecbcfdc1dfdc4ab9fac35b39"
SRC_URI[sha256sum] = "197149c18d9e9f292c43f0400acaba12e5f52cacfe050f3d199277ea738ec2e7"
inherit lib_package multilib_header multilib_script ptest perlnative manpages
MULTILIB_SCRIPTS = "${PN}-bin:${bindir}/c_rehash"

View File

@@ -5,7 +5,7 @@ SECTION = "console/network"
HOMEPAGE = "http://samba.org/ppp/"
BUGTRACKER = "http://ppp.samba.org/cgi-bin/ppp-bugs"
DEPENDS = "libpcap openssl virtual/crypt"
LICENSE = "BSD-3-Clause & BSD-3-Clause-Attribution & GPL-2.0-or-later & LGPL-2.0-or-later & PD"
LICENSE = "BSD-3-Clause & BSD-3-Clause-Attribution & GPL-2.0-or-later & LGPL-2.0-or-later & PD & RSA-MD"
LIC_FILES_CHKSUM = "file://pppd/ccp.c;beginline=1;endline=29;md5=e2c43fe6e81ff77d87dc9c290a424dea \
file://pppd/plugins/passprompt.c;beginline=1;endline=10;md5=3bcbcdbf0e369c9a3e0b8c8275b065d8 \
file://pppd/tdb.c;beginline=1;endline=27;md5=4ca3a9991b011038d085d6675ae7c4e6 \

View File

@@ -58,7 +58,7 @@ resize() {
fi
# only do this for /dev/tty[A-z] which are typically
# serial ports
if [ $FIRSTTIMESETUP -eq 1 -a $SHLVL -eq 1 ] ; then
if [ $FIRSTTIMESETUP -eq 1 -a ${SHLVL:-1} -eq 1 ] ; then
case $(tty 2>/dev/null) in
/dev/tty[A-z]*) resize >/dev/null;;
esac

View File

@@ -5,7 +5,7 @@ Subject: [PATCH 1/2] libbb: sockaddr2str: ensure only printable characters are
returned for the hostname part
CVE: CVE-2022-28391
Upstream-Status: Pending
Upstream-Status: Submitted [https://bugs.busybox.net/show_bug.cgi?id=15001]
Signed-off-by: Ariadne Conill <ariadne@dereferenced.org>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
---

View File

@@ -8,7 +8,7 @@ Otherwise, terminal sequences can be injected, which enables various terminal in
attacks from DNS results.
CVE: CVE-2022-28391
Upstream-Status: Pending
Upstream-Status: Submitted [https://bugs.busybox.net/show_bug.cgi?id=15001]
Signed-off-by: Ariadne Conill <ariadne@dereferenced.org>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
---

View File

@@ -15,7 +15,7 @@ DEPENDS = "dbus"
inherit autotools pkgconfig
SRC_URI = "https://mirrors.edge.kernel.org/pub/linux/libs/${BPN}/${BPN}-${PV}.tar.xz"
SRC_URI[sha256sum] = "7397c76996d7646b9917ebf016cd67586b10166295af2e0e18cdb5b8f6659965"
SRC_URI[sha256sum] = "760f3901078409f66cadf1bb24c8bdc60f13d53f6dd66b88631221d2494f8405"
do_configure:prepend () {
mkdir -p ${S}/build-aux

View File

@@ -1,54 +0,0 @@
From cce3ae98a2c1966719daabff5a4ec6cf94a846f6 Mon Sep 17 00:00:00 2001
From: Philip Withnall <pwithnall@gnome.org>
Date: Mon, 26 Feb 2024 16:55:44 +0000
Subject: [PATCH] tests: Remove variable-length lookbehind tests for GRegex
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
PCRE2 10.43 has now introduced support for variable-length lookbehind,
so these tests now fail if GLib is built against PCRE2 10.43 or higher.
See
https://github.com/PCRE2Project/pcre2/blob/e8db6fa7137f4c6f66cb87e0a3c9467252ec1ef7/ChangeLog#L94.
Rather than making the tests conditional on the version of PCRE2 in use,
just remove them. They are mostly testing the PCRE2 code rather than
any code in GLib, so don’t have much value.
This should fix CI runs on msys2-mingw32, which updated to PCRE2 10.43 2
days ago.
Signed-off-by: Philip Withnall <pwithnall@gnome.org>
Upstream-Status: Backport [https://gitlab.gnome.org/GNOME/glib/-/commit/cce3ae98a2c1966719daabff5a4ec6cf94a846f6]
Signed-off-by: Alexander Kanavin <alex@linutronix.de>
---
glib/tests/regex.c | 10 ----------
1 file changed, 10 deletions(-)
diff --git a/glib/tests/regex.c b/glib/tests/regex.c
index 1082526292..d7a698ec67 100644
--- a/glib/tests/regex.c
+++ b/glib/tests/regex.c
@@ -1885,16 +1885,6 @@ test_lookbehind (void)
g_match_info_free (match);
g_regex_unref (regex);
- regex = g_regex_new ("(?<!dogs?|cats?) x", G_REGEX_OPTIMIZE, G_REGEX_MATCH_DEFAULT, &error);
- g_assert (regex == NULL);
- g_assert_error (error, G_REGEX_ERROR, G_REGEX_ERROR_VARIABLE_LENGTH_LOOKBEHIND);
- g_clear_error (&error);
-
- regex = g_regex_new ("(?<=ab(c|de)) foo", G_REGEX_OPTIMIZE, G_REGEX_MATCH_DEFAULT, &error);
- g_assert (regex == NULL);
- g_assert_error (error, G_REGEX_ERROR, G_REGEX_ERROR_VARIABLE_LENGTH_LOOKBEHIND);
- g_clear_error (&error);
-
regex = g_regex_new ("(?<=abc|abde)foo", G_REGEX_OPTIMIZE, G_REGEX_MATCH_DEFAULT, &error);
g_assert (regex);
g_assert_no_error (error);
--
GitLab

View File

@@ -16,14 +16,13 @@ SRC_URI = "${GNOME_MIRROR}/glib/${SHRT_VER}/glib-${PV}.tar.xz \
file://0001-gio-tests-resources.c-comment-out-a-build-host-only-.patch \
file://0001-Switch-from-the-deprecated-distutils-module-to-the-p.patch \
file://memory-monitor.patch \
file://fix-regex.patch \
file://skip-timeout.patch \
"
SRC_URI:append:class-native = " file://relocate-modules.patch \
file://0001-meson.build-do-not-enable-pidfd-features-on-native-g.patch \
"
SRC_URI[sha256sum] = "24b8e0672dca120cc32d394bccb85844e732e04fe75d18bb0573b2dbc7548f63"
SRC_URI[sha256sum] = "244854654dd82c7ebcb2f8e246156d2a05eb9cd1ad07ed7a779659b4602c9fae"
# Find any meson cross files in FILESPATH that are relevant for the current
# build (using siteinfo) and add them to EXTRA_OEMESON.

View File

@@ -2,7 +2,7 @@ SUMMARY = "GLIBC (GNU C Library)"
DESCRIPTION = "The GNU C Library is used as the system C library in most systems with the Linux kernel."
HOMEPAGE = "http://www.gnu.org/software/libc/libc.html"
SECTION = "libs"
LICENSE = "GPL-2.0-only & LGPL-2.1-only"
LICENSE = "GPL-2.0-only & LGPL-2.1-or-later"
LIC_FILES_CHKSUM ?= "file://LICENSES;md5=f77e878d320e99e94ae9a4aea7f491d1 \
file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263 \

View File

@@ -1,6 +1,6 @@
SRCBRANCH ?= "release/2.39/master"
PV = "2.39+git"
SRCREV_glibc ?= "1b9c1a0047fb26a65a9b2a7b8cd977243f7d353c"
SRCREV_glibc ?= "273a835fe7c685cc54266bb8b502787bad5e9bae"
SRCREV_localedef ?= "fab74f31b3811df543e24b6de47efdf45b538abc"
GLIBC_GIT_URI ?= "git://sourceware.org/git/glibc.git;protocol=https"

View File

@@ -11,16 +11,15 @@ Upstream-Status: Inappropriate [ OE-Specific ]
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
sysdeps/aarch64/bits/wordsize.h | 8 ++++++--
sysdeps/arm/bits/wordsize.h | 1 +
2 files changed, 7 insertions(+), 2 deletions(-)
create mode 120000 sysdeps/arm/bits/wordsize.h
sysdeps/aarch64/bits/wordsize.h | 11 +++++++++--
sysdeps/arm/bits/wordsize.h | 22 +---------------------
2 files changed, 10 insertions(+), 23 deletions(-)
diff --git a/sysdeps/aarch64/bits/wordsize.h b/sysdeps/aarch64/bits/wordsize.h
index 118e59172d..b4b0692eb5 100644
index 118e59172d..ff86359fe8 100644
--- a/sysdeps/aarch64/bits/wordsize.h
+++ b/sysdeps/aarch64/bits/wordsize.h
@@ -17,12 +17,16 @@
@@ -17,12 +17,19 @@
License along with the GNU C Library; if not, see
<https://www.gnu.org/licenses/>. */
@@ -33,12 +32,42 @@ index 118e59172d..b4b0692eb5 100644
# define __WORDSIZE32_SIZE_ULONG 1
# define __WORDSIZE32_PTRDIFF_LONG 1
+#else
+# define __WORDSIZE 32
+# define __WORDSIZE32_SIZE_ULONG 0
+# define __WORDSIZE32_PTRDIFF_LONG 0
+#define __WORDSIZE 32
+#define __WORDSIZE_TIME64_COMPAT32 1
+#define __WORDSIZE32_SIZE_ULONG 0
+#define __WORDSIZE32_PTRDIFF_LONG 0
#endif
+#ifdef __aarch64__
#define __WORDSIZE_TIME64_COMPAT32 0
+#endif
diff --git a/sysdeps/arm/bits/wordsize.h b/sysdeps/arm/bits/wordsize.h
deleted file mode 100644
index 6ecbfe7c86..0000000000
--- a/sysdeps/arm/bits/wordsize.h
+++ /dev/null
@@ -1,21 +0,0 @@
-/* Copyright (C) 1999-2024 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, see
- <https://www.gnu.org/licenses/>. */
-
-#define __WORDSIZE 32
-#define __WORDSIZE_TIME64_COMPAT32 1
-#define __WORDSIZE32_SIZE_ULONG 0
-#define __WORDSIZE32_PTRDIFF_LONG 0
diff --git a/sysdeps/arm/bits/wordsize.h b/sysdeps/arm/bits/wordsize.h
new file mode 120000
index 0000000000..4c4a788ec2

View File

@@ -1,62 +0,0 @@
From 73c26018ed0ecd9c807bb363cc2c2ab4aca66a82 Mon Sep 17 00:00:00 2001
From: Szabolcs Nagy <szabolcs.nagy@arm.com>
Date: Wed, 13 Mar 2024 14:34:14 +0000
Subject: [PATCH] aarch64: fix check for SVE support in assembler
Due to GCC bug 110901 -mcpu can override -march setting when compiling
asm code and thus a compiler targetting a specific cpu can fail the
configure check even when binutils gas supports SVE.
The workaround is that explicit .arch directive overrides both -mcpu
and -march, and since that's what the actual SVE memcpy uses the
configure check should use that too even if the GCC issue is fixed
independently.
Upstream-Status: Backport [https://sourceware.org/git/?p=glibc.git;a=commit;h=73c26018ed0ecd9c807bb363cc2c2ab4aca66a82]
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Reviewed-by: Florian Weimer <fweimer@redhat.com>
---
sysdeps/aarch64/configure | 5 +++--
sysdeps/aarch64/configure.ac | 5 +++--
2 files changed, 6 insertions(+), 4 deletions(-)
mode change 100644 => 100755 sysdeps/aarch64/configure
diff --git a/sysdeps/aarch64/configure b/sysdeps/aarch64/configure
old mode 100644
new mode 100755
index ca57edce47..9606137e8d
--- a/sysdeps/aarch64/configure
+++ b/sysdeps/aarch64/configure
@@ -325,9 +325,10 @@ then :
printf %s "(cached) " >&6
else $as_nop
cat > conftest.s <<\EOF
- ptrue p0.b
+ .arch armv8.2-a+sve
+ ptrue p0.b
EOF
-if { ac_try='${CC-cc} -c -march=armv8.2-a+sve conftest.s 1>&5'
+if { ac_try='${CC-cc} -c conftest.s 1>&5'
{ { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5
(eval $ac_try) 2>&5
ac_status=$?
diff --git a/sysdeps/aarch64/configure.ac b/sysdeps/aarch64/configure.ac
index 27874eceb4..56d12d661d 100644
--- a/sysdeps/aarch64/configure.ac
+++ b/sysdeps/aarch64/configure.ac
@@ -90,9 +90,10 @@ LIBC_CONFIG_VAR([aarch64-variant-pcs], [$libc_cv_aarch64_variant_pcs])
# Check if asm support armv8.2-a+sve
AC_CACHE_CHECK([for SVE support in assembler], [libc_cv_aarch64_sve_asm], [dnl
cat > conftest.s <<\EOF
- ptrue p0.b
+ .arch armv8.2-a+sve
+ ptrue p0.b
EOF
-if AC_TRY_COMMAND(${CC-cc} -c -march=armv8.2-a+sve conftest.s 1>&AS_MESSAGE_LOG_FD); then
+if AC_TRY_COMMAND(${CC-cc} -c conftest.s 1>&AS_MESSAGE_LOG_FD); then
libc_cv_aarch64_sve_asm=yes
else
libc_cv_aarch64_sve_asm=no
--
2.44.0

View File

@@ -16,6 +16,10 @@ CVE_STATUS[CVE-2019-1010025] = "disputed: \
Allows for ASLR bypass so can bypass some hardening, not an exploit in itself, may allow \
easier access for another. 'ASLR bypass itself is not a vulnerability.'"
CVE_STATUS_GROUPS += "CVE_STATUS_STABLE_BACKPORTS"
CVE_STATUS_STABLE_BACKPORTS = "CVE-2024-2961 CVE-2024-33599 CVE-2024-33600 CVE-2024-33601 CVE-2024-33602"
CVE_STATUS_STABLE_BACKPORTS[status] = "cpe-stable-backport: fix available in used git hash"
DEPENDS += "gperf-native bison-native"
NATIVESDKFIXES ?= ""
@@ -48,8 +52,7 @@ SRC_URI = "${GLIBC_GIT_URI};branch=${SRCBRANCH};name=glibc \
file://0020-tzselect.ksh-Use-bin-sh-default-shell-interpreter.patch \
file://0021-fix-create-thread-failed-in-unprivileged-process-BZ-.patch \
file://0022-Avoid-hardcoded-build-time-paths-in-the-output-binar.patch \
file://0023-aarch64-configure-Pass-mcpu-along-with-march-to-dete.patch \
file://0024-qemu-stale-process.patch \
file://0023-qemu-stale-process.patch \
"
S = "${WORKDIR}/git"
B = "${WORKDIR}/build-${TARGET_SYS}"

View File

@@ -26,8 +26,8 @@ inherit core-image setuptools3 features_check
REQUIRED_DISTRO_FEATURES += "xattr"
SRCREV ?= "17723c6e34096a53fb186cc70cfc604bb30da8b9"
SRC_URI = "git://git.yoctoproject.org/poky;branch=master \
SRCREV ?= "5d657e0f472ce481ab62bc9ebf3d2b81c04cf3f3"
SRC_URI = "git://git.yoctoproject.org/poky;branch=scarthgap \
file://Yocto_Build_Appliance.vmx \
file://Yocto_Build_Appliance.vmxf \
file://README_VirtualBox_Guest_Additions.txt \

View File

@@ -0,0 +1,37 @@
From 592dcdcf243576bd2517d3da9bc18990de08e37e Mon Sep 17 00:00:00 2001
From: Kamalesh Babulal <kamalesh.babulal@oracle.com>
Date: Mon, 27 Nov 2023 20:07:33 +0530
Subject: [PATCH 1/1] include/Makefile: install systemd.h by default
Install systemd.h header file by default, as we have stub and defined
versions of the systemd functions for both non-systemd and systemd
enabled configurations. This will help packagers to ship package
without systemd support (--enable-systemd=no).
Signed-off-by: Kamalesh Babulal <kamalesh.babulal@oracle.com>
Signed-off-by: Tom Hromatka <tom.hromatka@oracle.com>
Upstream-Status: Backport [https://github.com/libcgroup/libcgroup/commit/592dcdcf243576bd2517d3da9bc18990de08e37e]
Signed-off-by: Adriaan Schmidt <adriaan.schmidt@siemens.com>
---
include/Makefile.am | 6 +-----
1 file changed, 1 insertion(+), 5 deletions(-)
diff --git a/include/Makefile.am b/include/Makefile.am
index 23cebaac..4cb05529 100644
--- a/include/Makefile.am
+++ b/include/Makefile.am
@@ -2,8 +2,4 @@
nobase_include_HEADERS = libcgroup.h libcgroup/error.h libcgroup/init.h \
libcgroup/groups.h libcgroup/tasks.h \
libcgroup/iterators.h libcgroup/config.h \
- libcgroup/log.h libcgroup/tools.h
-
-if WITH_SYSTEMD
-nobase_include_HEADERS += libcgroup/systemd.h
-endif
+ libcgroup/log.h libcgroup/tools.h libcgroup/systemd.h
--
2.39.2

View File

@@ -13,6 +13,7 @@ DEPENDS = "bison-native flex-native"
DEPENDS:append:libc-musl = " fts"
SRC_URI = "${GITHUB_BASE_URI}/download/v${PV}/${BP}.tar.gz \
file://0001-include-Makefile-install-systemd.h-by-default.patch \
"
UPSTREAM_CHECK_URI = "https://github.com/libcgroup/libcgroup/tags"

View File

@@ -20,7 +20,7 @@ SRC_URI += "http://www.w3.org/XML/Test/xmlts20130923.tar;subdir=${BP};name=testt
file://install-tests.patch \
"
SRC_URI[archive.sha256sum] = "a972796696afd38073e0f59c283c3a2f5a560b5268b4babc391b286166526b21"
SRC_URI[archive.sha256sum] = "889c593a881a3db5fdd96cc9318c87df34eb648edfc458272ad46fd607353fbb"
SRC_URI[testtar.sha256sum] = "c6b2d42ee50b8b236e711a97d68e6c4b5c8d83e69a2be4722379f08702ea7273"
# Disputed as a security issue, but fixed in d39f780

View File

@@ -11,6 +11,7 @@ TOOLCHAIN_HOST_TASK ?= "\
nativesdk-python3-git \
nativesdk-python3-jinja2 \
nativesdk-python3-testtools \
nativesdk-python3-pip \
nativesdk-python3-setuptools \
nativesdk-python3-subunit \
nativesdk-python3-pyyaml \

View File

@@ -0,0 +1,180 @@
From bcf02d3242f1c7d57224a95f7903fcf4b5e7695d Mon Sep 17 00:00:00 2001
From: Thomas E. Dickey <dickey@invisible-island.net>
Date: Fri, 16 Jun 2023 02:54:29 +0530
Subject: [PATCH] Fix CVE-2023-45918
CVE: CVE-2023-45918
Upstream-Status: Backport [https://ncurses.scripts.mit.edu/?p=ncurses.git;a=commit;h=bcf02d3242f1c7d57224a95f7903fcf4b5e7695d]
Signed-off-by: Soumya Sambu <soumya.sambu@windriver.com>
---
ncurses/tinfo/comp_error.c | 15 ++++++---
ncurses/tinfo/read_entry.c | 65 ++++++++++++++++++++++++++------------
2 files changed, 56 insertions(+), 24 deletions(-)
diff --git a/ncurses/tinfo/comp_error.c b/ncurses/tinfo/comp_error.c
index 48f48784..ee518e28 100644
--- a/ncurses/tinfo/comp_error.c
+++ b/ncurses/tinfo/comp_error.c
@@ -60,8 +60,15 @@ _nc_get_source(void)
NCURSES_EXPORT(void)
_nc_set_source(const char *const name)
{
- FreeIfNeeded(SourceName);
- SourceName = strdup(name);
+ if (name == NULL) {
+ free(SourceName);
+ SourceName = NULL;
+ } else if (SourceName == NULL) {
+ SourceName = strdup(name);
+ } else if (strcmp(name, SourceName)) {
+ free(SourceName);
+ SourceName = strdup(name);
+ }
}
NCURSES_EXPORT(void)
@@ -95,9 +102,9 @@ static NCURSES_INLINE void
where_is_problem(void)
{
fprintf(stderr, "\"%s\"", SourceName ? SourceName : "?");
- if (_nc_curr_line >= 0)
+ if (_nc_curr_line > 0)
fprintf(stderr, ", line %d", _nc_curr_line);
- if (_nc_curr_col >= 0)
+ if (_nc_curr_col > 0)
fprintf(stderr, ", col %d", _nc_curr_col);
if (TermType != 0 && TermType[0] != '\0')
fprintf(stderr, ", terminal '%s'", TermType);
diff --git a/ncurses/tinfo/read_entry.c b/ncurses/tinfo/read_entry.c
index 341337d2..b0c3ad26 100644
--- a/ncurses/tinfo/read_entry.c
+++ b/ncurses/tinfo/read_entry.c
@@ -138,12 +138,13 @@ convert_16bits(char *buf, NCURSES_INT2 *Numbers, int count)
}
#endif
-static void
-convert_strings(char *buf, char **Strings, int count, int size, char *table)
+static bool
+convert_strings(char *buf, char **Strings, int count, int size,
+ char *table, bool always)
{
int i;
char *p;
- bool corrupt = FALSE;
+ bool success = TRUE;
for (i = 0; i < count; i++) {
if (IS_NEG1(buf + 2 * i)) {
@@ -159,13 +160,10 @@ convert_strings(char *buf, char **Strings, int count, int size, char *table)
TR(TRACE_DATABASE, ("Strings[%d] = %s", i,
_nc_visbuf(Strings[i])));
} else {
- if (!corrupt) {
- corrupt = TRUE;
- TR(TRACE_DATABASE,
- ("ignore out-of-range index %d to Strings[]", nn));
- _nc_warning("corrupt data found in convert_strings");
- }
- Strings[i] = ABSENT_STRING;
+ TR(TRACE_DATABASE,
+ ("found out-of-range index %d to Strings[%d]", nn, i));
+ success = FALSE;
+ break;
}
}
@@ -175,10 +173,25 @@ convert_strings(char *buf, char **Strings, int count, int size, char *table)
if (*p == '\0')
break;
/* if there is no NUL, ignore the string */
- if (p >= table + size)
+ if (p >= table + size) {
Strings[i] = ABSENT_STRING;
+ } else if (p == Strings[i] && always) {
+ TR(TRACE_DATABASE,
+ ("found empty but required Strings[%d]", i));
+ success = FALSE;
+ break;
+ }
+ } else if (always) { /* names are always needed */
+ TR(TRACE_DATABASE,
+ ("found invalid but required Strings[%d]", i));
+ success = FALSE;
+ break;
}
}
+ if (!success) {
+ _nc_warning("corrupt data found in convert_strings");
+ }
+ return success;
}
static int
@@ -382,7 +395,10 @@ _nc_read_termtype(TERMTYPE2 *ptr, char *buffer, int limit)
if (Read(string_table, (unsigned) str_size) != str_size) {
returnDB(TGETENT_NO);
}
- convert_strings(buf, ptr->Strings, str_count, str_size, string_table);
+ if (!convert_strings(buf, ptr->Strings, str_count, str_size,
+ string_table, FALSE)) {
+ returnDB(TGETENT_NO);
+ }
}
#if NCURSES_XNAMES
@@ -483,8 +499,10 @@ _nc_read_termtype(TERMTYPE2 *ptr, char *buffer, int limit)
("Before computing extended-string capabilities "
"str_count=%d, ext_str_count=%d",
str_count, ext_str_count));
- convert_strings(buf, ptr->Strings + str_count, ext_str_count,
- ext_str_limit, ptr->ext_str_table);
+ if (!convert_strings(buf, ptr->Strings + str_count, ext_str_count,
+ ext_str_limit, ptr->ext_str_table, FALSE)) {
+ returnDB(TGETENT_NO);
+ }
for (i = ext_str_count - 1; i >= 0; i--) {
TR(TRACE_DATABASE, ("MOVE from [%d:%d] %s",
i, i + str_count,
@@ -516,10 +534,13 @@ _nc_read_termtype(TERMTYPE2 *ptr, char *buffer, int limit)
TR(TRACE_DATABASE,
("ext_NAMES starting @%d in extended_strings, first = %s",
base, _nc_visbuf(ptr->ext_str_table + base)));
- convert_strings(buf + (2 * ext_str_count),
- ptr->ext_Names,
- (int) need,
- ext_str_limit, ptr->ext_str_table + base);
+ if (!convert_strings(buf + (2 * ext_str_count),
+ ptr->ext_Names,
+ (int) need,
+ ext_str_limit, ptr->ext_str_table + base,
+ TRUE)) {
+ returnDB(TGETENT_NO);
+ }
}
TR(TRACE_DATABASE,
@@ -572,13 +593,17 @@ _nc_read_file_entry(const char *const filename, TERMTYPE2 *ptr)
int limit;
char buffer[MAX_ENTRY_SIZE + 1];
- if ((limit = (int) fread(buffer, sizeof(char), sizeof(buffer), fp))
- > 0) {
+ limit = (int) fread(buffer, sizeof(char), sizeof(buffer), fp);
+ if (limit > 0) {
+ const char *old_source = _nc_get_source();
TR(TRACE_DATABASE, ("read terminfo %s", filename));
+ if (old_source == NULL)
+ _nc_set_source(filename);
if ((code = _nc_read_termtype(ptr, buffer, limit)) == TGETENT_NO) {
_nc_free_termtype2(ptr);
}
+ _nc_set_source(old_source);
} else {
code = TGETENT_NO;
}
--
2.40.0

View File

@@ -0,0 +1,301 @@
From 7daae3f2139a678fe0ae0b42fcf8d807cbff485c Mon Sep 17 00:00:00 2001
From: Mingli Yu <mingli.yu@windriver.com>
Date: Sun, 4 Feb 2024 13:42:38 +0800
Subject: [PATCH] parse_entry.c: check return value of _nc_save_str
* check return value of _nc_save_str(), in special case for tic where
extended capabilities are processed but the terminal description was
not initialized (report by Ziqiao Kong).
* regenerate llib-* files.
CVE: CVE-2023-50495
Upstream-Status: Backport [http://ncurses.scripts.mit.edu/?p=ncurses.git;a=commitdiff;h=7723dd6799ab10b32047ec73b14df9f107bafe99]
Signed-off-by: Mingli Yu <mingli.yu@windriver.com>
---
ncurses/llib-lncurses | 15 +++++++++++++++
ncurses/llib-lncursest | 15 +++++++++++++++
ncurses/llib-lncursestw | 15 +++++++++++++++
ncurses/llib-lncursesw | 15 +++++++++++++++
ncurses/llib-ltinfo | 15 +++++++++++++++
ncurses/llib-ltinfot | 15 +++++++++++++++
ncurses/llib-ltinfotw | 15 +++++++++++++++
ncurses/llib-ltinfow | 15 +++++++++++++++
ncurses/tinfo/parse_entry.c | 23 ++++++++++++++++-------
9 files changed, 136 insertions(+), 7 deletions(-)
diff --git a/ncurses/llib-lncurses b/ncurses/llib-lncurses
index 211cf3b7..e4190aa2 100644
--- a/ncurses/llib-lncurses
+++ b/ncurses/llib-lncurses
@@ -3656,6 +3656,21 @@ char *tiparm(
...)
{ return(*(char **)0); }
+#undef tiparm_s
+char *tiparm_s(
+ int num_expected,
+ int tparm_type,
+ const char *string,
+ ...)
+ { return(*(char **)0); }
+
+#undef tiscan_s
+int tiscan_s(
+ int *num_expected,
+ int *tparm_type,
+ const char *string)
+ { return(*(int *)0); }
+
#undef _nc_tiparm
char *_nc_tiparm(
int expected,
diff --git a/ncurses/llib-lncursest b/ncurses/llib-lncursest
index 1b09d676..e07abba6 100644
--- a/ncurses/llib-lncursest
+++ b/ncurses/llib-lncursest
@@ -3741,6 +3741,21 @@ char *tiparm(
...)
{ return(*(char **)0); }
+#undef tiparm_s
+char *tiparm_s(
+ int num_expected,
+ int tparm_type,
+ const char *string,
+ ...)
+ { return(*(char **)0); }
+
+#undef tiscan_s
+int tiscan_s(
+ int *num_expected,
+ int *tparm_type,
+ const char *string)
+ { return(*(int *)0); }
+
#undef _nc_tiparm
char *_nc_tiparm(
int expected,
diff --git a/ncurses/llib-lncursestw b/ncurses/llib-lncursestw
index 4576e0fc..747c6be8 100644
--- a/ncurses/llib-lncursestw
+++ b/ncurses/llib-lncursestw
@@ -4702,6 +4702,21 @@ char *tiparm(
...)
{ return(*(char **)0); }
+#undef tiparm_s
+char *tiparm_s(
+ int num_expected,
+ int tparm_type,
+ const char *string,
+ ...)
+ { return(*(char **)0); }
+
+#undef tiscan_s
+int tiscan_s(
+ int *num_expected,
+ int *tparm_type,
+ const char *string)
+ { return(*(int *)0); }
+
#undef _nc_tiparm
char *_nc_tiparm(
int expected,
diff --git a/ncurses/llib-lncursesw b/ncurses/llib-lncursesw
index 127350d2..862305d9 100644
--- a/ncurses/llib-lncursesw
+++ b/ncurses/llib-lncursesw
@@ -4617,6 +4617,21 @@ char *tiparm(
...)
{ return(*(char **)0); }
+#undef tiparm_s
+char *tiparm_s(
+ int num_expected,
+ int tparm_type,
+ const char *string,
+ ...)
+ { return(*(char **)0); }
+
+#undef tiscan_s
+int tiscan_s(
+ int *num_expected,
+ int *tparm_type,
+ const char *string)
+ { return(*(int *)0); }
+
#undef _nc_tiparm
char *_nc_tiparm(
int expected,
diff --git a/ncurses/llib-ltinfo b/ncurses/llib-ltinfo
index a5cd7cd3..31e5e9a6 100644
--- a/ncurses/llib-ltinfo
+++ b/ncurses/llib-ltinfo
@@ -927,6 +927,21 @@ char *tiparm(
...)
{ return(*(char **)0); }
+#undef tiparm_s
+char *tiparm_s(
+ int num_expected,
+ int tparm_type,
+ const char *string,
+ ...)
+ { return(*(char **)0); }
+
+#undef tiscan_s
+int tiscan_s(
+ int *num_expected,
+ int *tparm_type,
+ const char *string)
+ { return(*(int *)0); }
+
#undef _nc_tiparm
char *_nc_tiparm(
int expected,
diff --git a/ncurses/llib-ltinfot b/ncurses/llib-ltinfot
index bd3de812..48e5c25a 100644
--- a/ncurses/llib-ltinfot
+++ b/ncurses/llib-ltinfot
@@ -1003,6 +1003,21 @@ char *tiparm(
...)
{ return(*(char **)0); }
+#undef tiparm_s
+char *tiparm_s(
+ int num_expected,
+ int tparm_type,
+ const char *string,
+ ...)
+ { return(*(char **)0); }
+
+#undef tiscan_s
+int tiscan_s(
+ int *num_expected,
+ int *tparm_type,
+ const char *string)
+ { return(*(int *)0); }
+
#undef _nc_tiparm
char *_nc_tiparm(
int expected,
diff --git a/ncurses/llib-ltinfotw b/ncurses/llib-ltinfotw
index 4d35a1e1..64dfdfa5 100644
--- a/ncurses/llib-ltinfotw
+++ b/ncurses/llib-ltinfotw
@@ -1025,6 +1025,21 @@ char *tiparm(
...)
{ return(*(char **)0); }
+#undef tiparm_s
+char *tiparm_s(
+ int num_expected,
+ int tparm_type,
+ const char *string,
+ ...)
+ { return(*(char **)0); }
+
+#undef tiscan_s
+int tiscan_s(
+ int *num_expected,
+ int *tparm_type,
+ const char *string)
+ { return(*(int *)0); }
+
#undef _nc_tiparm
char *_nc_tiparm(
int expected,
diff --git a/ncurses/llib-ltinfow b/ncurses/llib-ltinfow
index db846764..7e17a35f 100644
--- a/ncurses/llib-ltinfow
+++ b/ncurses/llib-ltinfow
@@ -949,6 +949,21 @@ char *tiparm(
...)
{ return(*(char **)0); }
+#undef tiparm_s
+char *tiparm_s(
+ int num_expected,
+ int tparm_type,
+ const char *string,
+ ...)
+ { return(*(char **)0); }
+
+#undef tiscan_s
+int tiscan_s(
+ int *num_expected,
+ int *tparm_type,
+ const char *string)
+ { return(*(int *)0); }
+
#undef _nc_tiparm
char *_nc_tiparm(
int expected,
diff --git a/ncurses/tinfo/parse_entry.c b/ncurses/tinfo/parse_entry.c
index 14bcb67e..0a0b5637 100644
--- a/ncurses/tinfo/parse_entry.c
+++ b/ncurses/tinfo/parse_entry.c
@@ -110,7 +110,7 @@ _nc_extend_names(ENTRY * entryp, const char *name, int token_type)
/* Well, we are given a cancel for a name that we don't recognize */
return _nc_extend_names(entryp, name, STRING);
default:
- return 0;
+ return NULL;
}
/* Adjust the 'offset' (insertion-point) to keep the lists of extended
@@ -142,6 +142,11 @@ _nc_extend_names(ENTRY * entryp, const char *name, int token_type)
for (last = (unsigned) (max - 1); last > tindex; last--)
if (!found) {
+ char *saved;
+
+ if ((saved = _nc_save_str(name)) == NULL)
+ return NULL;
+
switch (token_type) {
case BOOLEAN:
tp->ext_Booleans++;
@@ -169,7 +174,7 @@ _nc_extend_names(ENTRY * entryp, const char *name, int token_type)
TYPE_REALLOC(char *, actual, tp->ext_Names);
while (--actual > offset)
tp->ext_Names[actual] = tp->ext_Names[actual - 1];
- tp->ext_Names[offset] = _nc_save_str(name);
+ tp->ext_Names[offset] = saved;
}
temp.nte_name = tp->ext_Names[offset];
@@ -364,6 +369,8 @@ _nc_parse_entry(ENTRY * entryp, int literal, bool silent)
bool is_use = (strcmp(_nc_curr_token.tk_name, "use") == 0);
bool is_tc = !is_use && (strcmp(_nc_curr_token.tk_name, "tc") == 0);
if (is_use || is_tc) {
+ char *saved;
+
if (!VALID_STRING(_nc_curr_token.tk_valstring)
|| _nc_curr_token.tk_valstring[0] == '\0') {
_nc_warning("missing name for use-clause");
@@ -377,11 +384,13 @@ _nc_parse_entry(ENTRY * entryp, int literal, bool silent)
_nc_curr_token.tk_valstring);
continue;
}
- entryp->uses[entryp->nuses].name = _nc_save_str(_nc_curr_token.tk_valstring);
- entryp->uses[entryp->nuses].line = _nc_curr_line;
- entryp->nuses++;
- if (entryp->nuses > 1 && is_tc) {
- BAD_TC_USAGE
+ if ((saved = _nc_save_str(_nc_curr_token.tk_valstring)) != NULL) {
+ entryp->uses[entryp->nuses].name = saved;
+ entryp->uses[entryp->nuses].line = _nc_curr_line;
+ entryp->nuses++;
+ if (entryp->nuses > 1 && is_tc) {
+ BAD_TC_USAGE
+ }
}
} else {
/* normal token lookup */
--
2.25.1

View File

@@ -6,6 +6,8 @@ SRC_URI += "file://0001-tic-hang.patch \
file://exit_prototype.patch \
file://0001-Fix-CVE-2023-29491.patch \
file://0001-Updating-reset-code-ncurses-6.4-patch-20231104.patch \
file://CVE-2023-50495.patch \
file://CVE-2023-45918.patch \
"
# commit id corresponds to the revision in package version
SRCREV = "79b9071f2be20a24c7be031655a5638f6032f29f"

View File

@@ -6,7 +6,6 @@ FILESEXTRAPATHS:prepend := "${THISDIR}/libgloss:"
SRC_URI:append = " file://libgloss-build-without-nostdinc.patch"
SRC_URI:append:powerpc = " file://fix-rs6000-crt0.patch"
SRC_URI:append:powerpc = " file://fix-rs6000-cflags.patch"
do_configure() {
${S}/libgloss/configure ${EXTRA_OECONF}

View File

@@ -271,14 +271,16 @@ WATCHDOG_TIMEOUT ??= "60"
do_install() {
meson_do_install
# Change the root user's home directory in /lib/sysusers.d/basic.conf.
# This is done merely for backward compatibility with previous systemd recipes.
# systemd hardcodes root user's HOME to be "/root". Changing to use other values
# may have unexpected runtime behaviors.
if [ "${ROOT_HOME}" != "/root" ]; then
bbwarn "Using ${ROOT_HOME} as root user's home directory is not fully supported by systemd"
sed -i -e 's#/root#${ROOT_HOME}#g' ${D}${exec_prefix}/lib/sysusers.d/basic.conf
fi
if ${@bb.utils.contains('PACKAGECONFIG', 'sysusers', 'true', 'false', d)}; then
# Change the root user's home directory in /lib/sysusers.d/basic.conf.
# This is done merely for backward compatibility with previous systemd recipes.
# systemd hardcodes root user's HOME to be "/root". Changing to use other values
# may have unexpected runtime behaviors.
if [ "${ROOT_HOME}" != "/root" ]; then
bbwarn "Using ${ROOT_HOME} as root user's home directory is not fully supported by systemd"
sed -i -e 's#/root#${ROOT_HOME}#g' ${D}${exec_prefix}/lib/sysusers.d/basic.conf
fi
fi
install -d ${D}/${base_sbindir}
if ${@bb.utils.contains('PACKAGECONFIG', 'serial-getty-generator', 'false', 'true', d)}; then
# Provided by a separate recipe

View File

@@ -9,6 +9,8 @@ LIC_FILES_CHKSUM = "file://LICENSE;md5=f5118f167b055bfd7c3450803f1847af"
SRC_URI = "git://github.com/ibm-s390-linux/s390-tools;protocol=https;branch=master"
SRCREV = "6f15ed326491a17d83ca60cd2bda47fb5e8a0175"
CVE_PRODUCT = "s390-tools"
S = "${WORKDIR}/git"
EXTRA_OEMAKE = "\

View File

@@ -8,6 +8,7 @@ LIC_FILES_CHKSUM = "file://update-rc.d;beginline=5;endline=15;md5=d40a07c27f5354
SRC_URI = "git://git.yoctoproject.org/update-rc.d;branch=master;protocol=https"
SRCREV = "b8f950105010270a768aa12245d6abf166346015"
PV .= "+git"
UPSTREAM_CHECK_COMMITS = "1"

View File

@@ -40,6 +40,8 @@ SRC_URI = "${KERNELORG_MIRROR}/linux/utils/util-linux/v${MAJOR_VERSION}/util-lin
file://avoid_parallel_tests.patch \
file://0001-login-utils-include-libgen.h-for-basename-API.patch \
file://fcntl-lock.c \
file://CVE-2024-28085-0001.patch \
file://CVE-2024-28085-0002.patch \
"
SRC_URI[sha256sum] = "7b6605e48d1a49f43cc4b4cfc59f313d0dd5402fa40b96810bd572e167dfed0f"

View File

@@ -0,0 +1,36 @@
From 07f0f0f5bd1e5e2268257ae1ff6d76a9b6c6ea8b Mon Sep 17 00:00:00 2001
From: Karel Zak <kzak@redhat.com>
Date: Wed, 17 Jan 2024 12:37:08 +0100
Subject: [PATCH] wall: fix calloc cal [-Werror=calloc-transposed-args]
term-utils/wall.c:143:37: error: xcalloc sizes specified with sizeof in the earlier argument and not in the later argument [-Werror=calloc-transposed-args]
143 | buf->groups = xcalloc(sizeof(*buf->groups), buf->ngroups);
| ^
term-utils/wall.c:143:37: note: earlier argument should specify number of elements, later size of each element
Signed-off-by: Karel Zak <kzak@redhat.com>
CVE: CVE-2024-28085
Upstream-Status: Backport [https://github.com/util-linux/util-linux/commit/07f0f0f5bd1e5e2268257ae1ff6d76a9b6c6ea8b]
Signed-off-by: Soumya Sambu <soumya.sambu@windriver.com>
---
term-utils/wall.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/term-utils/wall.c b/term-utils/wall.c
index 377db45..85c006a 100644
--- a/term-utils/wall.c
+++ b/term-utils/wall.c
@@ -135,7 +135,7 @@ static struct group_workspace *init_group_workspace(const char *group)
buf->requested_group = get_group_gid(group);
buf->ngroups = sysconf(_SC_NGROUPS_MAX) + 1; /* room for the primary gid */
- buf->groups = xcalloc(sizeof(*buf->groups), buf->ngroups);
+ buf->groups = xcalloc(buf->ngroups, sizeof(*buf->groups));
return buf;
}
--
2.40.0

View File

@@ -0,0 +1,34 @@
From 404b0781f52f7c045ca811b2dceec526408ac253 Mon Sep 17 00:00:00 2001
From: Karel Zak <kzak@redhat.com>
Date: Thu, 21 Mar 2024 11:16:20 +0100
Subject: [PATCH] wall: fix escape sequence Injection [CVE-2024-28085]
Let's use for all cases the same output function.
Reported-by: Skyler Ferrante <sjf5462@rit.edu>
Signed-off-by: Karel Zak <kzak@redhat.com>
CVE: CVE-2024-28085
Upstream-Status: Backport [https://github.com/util-linux/util-linux/commit/404b0781f52f7c045ca811b2dceec526408ac253]
Signed-off-by: Soumya Sambu <soumya.sambu@windriver.com>
---
term-utils/wall.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/term-utils/wall.c b/term-utils/wall.c
index 85c006a..0212c03 100644
--- a/term-utils/wall.c
+++ b/term-utils/wall.c
@@ -328,7 +328,7 @@ static char *makemsg(char *fname, char **mvec, int mvecsz,
int i;
for (i = 0; i < mvecsz; i++) {
- fputs(mvec[i], fs);
+ fputs_careful(mvec[i], fs, '^', true, TERM_WIDTH);
if (i < mvecsz - 1)
fputc(' ', fs);
}
--
2.40.0

View File

@@ -36,5 +36,6 @@ SRC_URI = "\
file://0013-Define-alignof-using-_Alignof-when-using-C11-or-newe.patch \
file://0014-Remove-duplicate-pe-dll.o-entry-deom-targ_extra_ofil.patch \
file://0015-gprofng-change-use-of-bignum-to-bigint.patch \
file://0016-aarch64-Remove-asserts-from-operand-qualifier-decode.patch \
"
S = "${WORKDIR}/git"

View File

@@ -0,0 +1,382 @@
From 5b1c70bfe0d8f84dc28237d6150b7b9d57c791a8 Mon Sep 17 00:00:00 2001
From: Victor Do Nascimento <victor.donascimento@arm.com>
Date: Tue, 16 Apr 2024 11:49:15 +0100
Subject: [PATCH] aarch64: Remove asserts from operand qualifier decoders
[PR31595]
Given that the disassembler should never abort when decoding
(potentially random) data, assertion statements in the
`get_*reg_qualifier_from_value' function family prove problematic.
Consider the random 32-bit word W, encoded in a data segment and
encountered on execution of `objdump -D <obj_name>'.
If:
(W & ~opcode_mask) == valid instruction
Then before `print_insn_aarch64_word' has a chance to report the
instruction as potentially undefined, an attempt will be made to have
the qualifiers for the instruction's register operands (if any)
decoded. If the relevant bits do not map onto a valid qualifier for
the matched instruction-like word, an abort will be triggered and the
execution of objdump aborted.
As this scenario is perfectly feasible and, in light of the fact that
objdump must successfully decode all sections of a given object file,
it is not appropriate to assert in this family of functions.
Therefore, we add a new pseudo-qualifier `AARCH64_OPND_QLF_ERR' for
handling invalid qualifier-associated values and re-purpose the
assertion conditions in qualifier-retrieving functions to be the
predicate guarding the returning of the calculated qualifier type.
If the predicate fails, we return this new qualifier and allow the
caller to handle the error as appropriate.
As these functions are called either from within
`aarch64_extract_operand' or `do_special_decoding', both of which are
expected to return non-zero values, it suffices that callers return
zero upon encountering `AARCH64_OPND_QLF_ERR'.
Ar present the error presented in the hypothetical scenario has been
encountered in `get_sreg_qualifier_from_value', but the change is made
to the whole family to keep the interface consistent.
Bug: https://sourceware.org/PR31595
Upstream-Status: Backport [commit 2601b201e95ea0edab89342ee7137c74e88a8a79]
Signed-off-by: Mark Hatle <mark.hatle@amd.com>
---
.../testsuite/binutils-all/aarch64/illegal.d | 1 +
.../testsuite/binutils-all/aarch64/illegal.s | 3 +
include/opcode/aarch64.h | 3 +
opcodes/aarch64-dis.c | 98 +++++++++++++++----
4 files changed, 87 insertions(+), 18 deletions(-)
diff --git a/binutils/testsuite/binutils-all/aarch64/illegal.d b/binutils/testsuite/binutils-all/aarch64/illegal.d
index 4b90a1d9f39..b69318aec85 100644
--- a/binutils/testsuite/binutils-all/aarch64/illegal.d
+++ b/binutils/testsuite/binutils-all/aarch64/illegal.d
@@ -8,5 +8,6 @@ Disassembly of section \.text:
0+000 <.*>:
[ ]+0:[ ]+68ea18cc[ ]+.inst[ ]+0x68ea18cc ; undefined
+[ ]+4:[ ]+9dc39839[ ]+.inst[ ]+0x9dc39839 ; undefined
#pass
diff --git a/binutils/testsuite/binutils-all/aarch64/illegal.s b/binutils/testsuite/binutils-all/aarch64/illegal.s
index 216cbe6f265..43668c6db55 100644
--- a/binutils/testsuite/binutils-all/aarch64/illegal.s
+++ b/binutils/testsuite/binutils-all/aarch64/illegal.s
@@ -4,4 +4,7 @@
# ldpsw x12, x6, [x6],#-8 ; illegal because one of the dest regs is also the address reg
.inst 0x68ea18cc
+ # illegal, resembles the opcode `ldapur' with invalid qualifier bits
+ .inst 0x9dc39839
+
# FIXME: Add more illegal instructions here.
diff --git a/include/opcode/aarch64.h b/include/opcode/aarch64.h
index 2fca9528c20..e8fe93ef127 100644
--- a/include/opcode/aarch64.h
+++ b/include/opcode/aarch64.h
@@ -894,6 +894,9 @@ enum aarch64_opnd_qualifier
/* Special qualifier helping retrieve qualifier information during the
decoding time (currently not in use). */
AARCH64_OPND_QLF_RETRIEVE,
+
+ /* Special qualifier used for indicating error in qualifier retrieval. */
+ AARCH64_OPND_QLF_ERR,
};
/* Instruction class. */
diff --git a/opcodes/aarch64-dis.c b/opcodes/aarch64-dis.c
index 96f42ae862a..b70e6da9eb7 100644
--- a/opcodes/aarch64-dis.c
+++ b/opcodes/aarch64-dis.c
@@ -219,9 +219,10 @@ static inline enum aarch64_opnd_qualifier
get_greg_qualifier_from_value (aarch64_insn value)
{
enum aarch64_opnd_qualifier qualifier = AARCH64_OPND_QLF_W + value;
- assert (value <= 0x1
- && aarch64_get_qualifier_standard_value (qualifier) == value);
- return qualifier;
+ if (value <= 0x1
+ && aarch64_get_qualifier_standard_value (qualifier) == value)
+ return qualifier;
+ return AARCH64_OPND_QLF_ERR;
}
/* Given VALUE, return qualifier for a vector register. This does not support
@@ -237,9 +238,10 @@ get_vreg_qualifier_from_value (aarch64_insn value)
if (qualifier >= AARCH64_OPND_QLF_V_2H)
qualifier += 1;
- assert (value <= 0x8
- && aarch64_get_qualifier_standard_value (qualifier) == value);
- return qualifier;
+ if (value <= 0x8
+ && aarch64_get_qualifier_standard_value (qualifier) == value)
+ return qualifier;
+ return AARCH64_OPND_QLF_ERR;
}
/* Given VALUE, return qualifier for an FP or AdvSIMD scalar register. */
@@ -248,9 +250,10 @@ get_sreg_qualifier_from_value (aarch64_insn value)
{
enum aarch64_opnd_qualifier qualifier = AARCH64_OPND_QLF_S_B + value;
- assert (value <= 0x4
- && aarch64_get_qualifier_standard_value (qualifier) == value);
- return qualifier;
+ if (value <= 0x4
+ && aarch64_get_qualifier_standard_value (qualifier) == value)
+ return qualifier;
+ return AARCH64_OPND_QLF_ERR;
}
/* Given the instruction in *INST which is probably half way through the
@@ -263,13 +266,17 @@ get_expected_qualifier (const aarch64_inst *inst, int i)
{
aarch64_opnd_qualifier_seq_t qualifiers;
/* Should not be called if the qualifier is known. */
- assert (inst->operands[i].qualifier == AARCH64_OPND_QLF_NIL);
- int invalid_count;
- if (aarch64_find_best_match (inst, inst->opcode->qualifiers_list,
- i, qualifiers, &invalid_count))
- return qualifiers[i];
+ if (inst->operands[i].qualifier == AARCH64_OPND_QLF_NIL)
+ {
+ int invalid_count;
+ if (aarch64_find_best_match (inst, inst->opcode->qualifiers_list,
+ i, qualifiers, &invalid_count))
+ return qualifiers[i];
+ else
+ return AARCH64_OPND_QLF_NIL;
+ }
else
- return AARCH64_OPND_QLF_NIL;
+ return AARCH64_OPND_QLF_ERR;
}
/* Operand extractors. */
@@ -355,6 +362,8 @@ aarch64_ext_reglane (const aarch64_operand *self, aarch64_opnd_info *info,
aarch64_insn value = extract_field (FLD_imm4_11, code, 0);
/* Depend on AARCH64_OPND_Ed to determine the qualifier. */
info->qualifier = get_expected_qualifier (inst, info->idx);
+ if (info->qualifier == AARCH64_OPND_QLF_ERR)
+ return 0;
shift = get_logsz (aarch64_get_qualifier_esize (info->qualifier));
info->reglane.index = value >> shift;
}
@@ -374,6 +383,8 @@ aarch64_ext_reglane (const aarch64_operand *self, aarch64_opnd_info *info,
if (pos > 3)
return false;
info->qualifier = get_sreg_qualifier_from_value (pos);
+ if (info->qualifier == AARCH64_OPND_QLF_ERR)
+ return 0;
info->reglane.index = (unsigned) (value >> 1);
}
}
@@ -381,6 +392,8 @@ aarch64_ext_reglane (const aarch64_operand *self, aarch64_opnd_info *info,
{
/* Need information in other operand(s) to help decoding. */
info->qualifier = get_expected_qualifier (inst, info->idx);
+ if (info->qualifier == AARCH64_OPND_QLF_ERR)
+ return 0;
switch (info->qualifier)
{
case AARCH64_OPND_QLF_S_4B:
@@ -405,6 +418,8 @@ aarch64_ext_reglane (const aarch64_operand *self, aarch64_opnd_info *info,
/* Need information in other operand(s) to help decoding. */
info->qualifier = get_expected_qualifier (inst, info->idx);
+ if (info->qualifier == AARCH64_OPND_QLF_ERR)
+ return 0;
switch (info->qualifier)
{
case AARCH64_OPND_QLF_S_H:
@@ -644,9 +659,15 @@ aarch64_ext_advsimd_imm_shift (const aarch64_operand *self ATTRIBUTE_UNUSED,
1xxx 1 2D */
info->qualifier =
get_vreg_qualifier_from_value ((pos << 1) | (int) Q);
+ if (info->qualifier == AARCH64_OPND_QLF_ERR)
+ return false;
}
else
- info->qualifier = get_sreg_qualifier_from_value (pos);
+ {
+ info->qualifier = get_sreg_qualifier_from_value (pos);
+ if (info->qualifier == AARCH64_OPND_QLF_ERR)
+ return 0;
+ }
if (info->type == AARCH64_OPND_IMM_VLSR)
/* immh <shift>
@@ -773,6 +794,8 @@ aarch64_ext_advsimd_imm_modified (const aarch64_operand *self ATTRIBUTE_UNUSED,
/* cmode */
info->qualifier = get_expected_qualifier (inst, info->idx);
+ if (info->qualifier == AARCH64_OPND_QLF_ERR)
+ return 0;
switch (info->qualifier)
{
case AARCH64_OPND_QLF_NIL:
@@ -1014,6 +1037,8 @@ aarch64_ext_ft (const aarch64_operand *self ATTRIBUTE_UNUSED,
if (value > 0x4)
return false;
info->qualifier = get_sreg_qualifier_from_value (value);
+ if (info->qualifier == AARCH64_OPND_QLF_ERR)
+ return 0;
}
return true;
@@ -1086,6 +1111,8 @@ aarch64_ext_rcpc3_addr_offset (const aarch64_operand *self ATTRIBUTE_UNUSED,
aarch64_operand_error *errors ATTRIBUTE_UNUSED)
{
info->qualifier = get_expected_qualifier (inst, info->idx);
+ if (info->qualifier == AARCH64_OPND_QLF_ERR)
+ return 0;
/* Rn */
info->addr.base_regno = extract_field (self->fields[0], code, 0);
@@ -1105,6 +1132,8 @@ aarch64_ext_addr_offset (const aarch64_operand *self ATTRIBUTE_UNUSED,
aarch64_operand_error *errors ATTRIBUTE_UNUSED)
{
info->qualifier = get_expected_qualifier (inst, info->idx);
+ if (info->qualifier == AARCH64_OPND_QLF_ERR)
+ return 0;
/* Rn */
info->addr.base_regno = extract_field (self->fields[0], code, 0);
@@ -1154,6 +1183,8 @@ aarch64_ext_addr_regoff (const aarch64_operand *self ATTRIBUTE_UNUSED,
/* Need information in other operand(s) to help achieve the decoding
from 'S' field. */
info->qualifier = get_expected_qualifier (inst, info->idx);
+ if (info->qualifier == AARCH64_OPND_QLF_ERR)
+ return 0;
/* Get the size of the data element that is accessed, which may be
different from that of the source register size, e.g. in strb/ldrb. */
size = aarch64_get_qualifier_esize (info->qualifier);
@@ -1172,6 +1203,8 @@ aarch64_ext_addr_simm (const aarch64_operand *self, aarch64_opnd_info *info,
{
aarch64_insn imm;
info->qualifier = get_expected_qualifier (inst, info->idx);
+ if (info->qualifier == AARCH64_OPND_QLF_ERR)
+ return 0;
/* Rn */
info->addr.base_regno = extract_field (FLD_Rn, code, 0);
@@ -1210,6 +1243,8 @@ aarch64_ext_addr_uimm12 (const aarch64_operand *self, aarch64_opnd_info *info,
{
int shift;
info->qualifier = get_expected_qualifier (inst, info->idx);
+ if (info->qualifier == AARCH64_OPND_QLF_ERR)
+ return 0;
shift = get_logsz (aarch64_get_qualifier_esize (info->qualifier));
/* Rn */
info->addr.base_regno = extract_field (self->fields[0], code, 0);
@@ -1228,6 +1263,8 @@ aarch64_ext_addr_simm10 (const aarch64_operand *self, aarch64_opnd_info *info,
aarch64_insn imm;
info->qualifier = get_expected_qualifier (inst, info->idx);
+ if (info->qualifier == AARCH64_OPND_QLF_ERR)
+ return 0;
/* Rn */
info->addr.base_regno = extract_field (self->fields[0], code, 0);
/* simm10 */
@@ -2467,6 +2504,8 @@ decode_sizeq (aarch64_inst *inst)
if (mask == 0x7)
{
inst->operands[idx].qualifier = get_vreg_qualifier_from_value (value);
+ if (inst->operands[idx].qualifier == AARCH64_OPND_QLF_ERR)
+ return 0;
return 1;
}
@@ -2649,6 +2688,8 @@ do_special_decoding (aarch64_inst *inst)
idx = select_operand_for_sf_field_coding (inst->opcode);
value = extract_field (FLD_sf, inst->value, 0);
inst->operands[idx].qualifier = get_greg_qualifier_from_value (value);
+ if (inst->operands[idx].qualifier == AARCH64_OPND_QLF_ERR)
+ return 0;
if ((inst->opcode->flags & F_N)
&& extract_field (FLD_N, inst->value, 0) != value)
return 0;
@@ -2659,6 +2700,8 @@ do_special_decoding (aarch64_inst *inst)
idx = select_operand_for_sf_field_coding (inst->opcode);
value = extract_field (FLD_lse_sz, inst->value, 0);
inst->operands[idx].qualifier = get_greg_qualifier_from_value (value);
+ if (inst->operands[idx].qualifier == AARCH64_OPND_QLF_ERR)
+ return 0;
}
/* rcpc3 'size' field. */
if (inst->opcode->flags & F_RCPC3_SIZE)
@@ -2670,12 +2713,18 @@ do_special_decoding (aarch64_inst *inst)
{
if (aarch64_operands[inst->operands[i].type].op_class
== AARCH64_OPND_CLASS_INT_REG)
- inst->operands[i].qualifier = get_greg_qualifier_from_value (value & 1);
+ {
+ inst->operands[i].qualifier = get_greg_qualifier_from_value (value & 1);
+ if (inst->operands[i].qualifier == AARCH64_OPND_QLF_ERR)
+ return 0;
+ }
else if (aarch64_operands[inst->operands[i].type].op_class
== AARCH64_OPND_CLASS_FP_REG)
{
value += (extract_field (FLD_opc1, inst->value, 0) << 2);
inst->operands[i].qualifier = get_sreg_qualifier_from_value (value);
+ if (inst->operands[i].qualifier == AARCH64_OPND_QLF_ERR)
+ return 0;
}
}
}
@@ -2709,7 +2758,11 @@ do_special_decoding (aarch64_inst *inst)
/* For most related instruciton, the 'size' field is fully available for
operand encoding. */
if (mask == 0x3)
- inst->operands[idx].qualifier = get_sreg_qualifier_from_value (value);
+ {
+ inst->operands[idx].qualifier = get_sreg_qualifier_from_value (value);
+ if (inst->operands[idx].qualifier == AARCH64_OPND_QLF_ERR)
+ return 0;
+ }
else
{
get_operand_possible_qualifiers (idx, inst->opcode->qualifiers_list,
@@ -2744,6 +2797,9 @@ do_special_decoding (aarch64_inst *inst)
Q = (unsigned) extract_field (FLD_Q, inst->value, inst->opcode->mask);
inst->operands[0].qualifier =
get_vreg_qualifier_from_value ((num << 1) | Q);
+ if (inst->operands[0].qualifier == AARCH64_OPND_QLF_ERR)
+ return 0;
+
}
if ((inst->opcode->flags & F_OPD_SIZE) && inst->opcode->iclass == sve2_urqvs)
@@ -2753,7 +2809,11 @@ do_special_decoding (aarch64_inst *inst)
inst->opcode->mask);
inst->operands[0].qualifier
= get_vreg_qualifier_from_value (1 + (size << 1));
+ if (inst->operands[0].qualifier == AARCH64_OPND_QLF_ERR)
+ return 0;
inst->operands[2].qualifier = get_sreg_qualifier_from_value (size);
+ if (inst->operands[2].qualifier == AARCH64_OPND_QLF_ERR)
+ return 0;
}
if (inst->opcode->flags & F_GPRSIZE_IN_Q)
@@ -2772,6 +2832,8 @@ do_special_decoding (aarch64_inst *inst)
assert (idx == 0 || idx == 1);
value = extract_field (FLD_Q, inst->value, 0);
inst->operands[idx].qualifier = get_greg_qualifier_from_value (value);
+ if (inst->operands[idx].qualifier == AARCH64_OPND_QLF_ERR)
+ return 0;
}
if (inst->opcode->flags & F_LDS_SIZE)
--
2.34.1

View File

@@ -13,20 +13,28 @@ DEPENDS += "gnu-config-native"
SRC_URI = " \
${SOURCEFORGE_MIRROR}/project/cdrtools/cdrtools-${PV}.tar.bz2 \
file://0001-Don-t-set-uid-gid-during-install.patch \
file://riscv64-linux-gcc.rul \
file://riscv64-linux-gcc.rul \
file://gcc14-fix.patch \
"
SRC_URI[md5sum] = "7d45c5b7e1f78d85d1583b361aee6e8b"
SRC_URI[sha256sum] = "ed282eb6276c4154ce6a0b5dee0bdb81940d0cbbfc7d03f769c4735ef5f5860f"
EXTRA_OEMAKE = "-e MAKEFLAGS="
EXTRA_OEMAKE = "-e MAKEFLAGS= CPPOPTX='${CPPFLAGS}' COPTX='${CFLAGS}' C++OPTX='${CXXFLAGS}' LDOPTX='${LDFLAGS}' GMAKE_NOWARN='true'"
# Stop failures when 'cc' can't be found
export ac_cv_prog_CC = "${CC}"
inherit native
# Use -std=gnu89 to build with gcc-14 (https://bugs.gentoo.org/903876)
# this needs to be after native inherit (which sets CFLAGS to BUILD_CFLAGS)
CFLAGS += "-std=gnu89"
do_configure() {
# cdda2wav does not build with GCC 14
rm -f ${S}/TARGETS/55cdda2wav
install -m 0755 ${STAGING_DATADIR_NATIVE}/gnu-config/config.sub ${S}/autoconf
install -m 0755 ${STAGING_DATADIR_NATIVE}/gnu-config/config.guess ${S}/autoconf
install -m 0644 ${WORKDIR}/riscv64-linux-gcc.rul ${S}/RULES/

View File

@@ -0,0 +1,13 @@
Signed-off-by: Zoltán Böszörményi <zboszor@gmail.com>
Upstream-Status: Inappropriate [native]
--- cdrtools-3.01/autoconf/configure~ 2015-07-06 23:41:27.000000000 +0200
+++ cdrtools-3.01/autoconf/configure 2024-05-01 09:37:40.897253690 +0200
@@ -1205,7 +1205,7 @@
#line 1206 "configure"
#include "confdefs.h"
-main(){return(0);}
+int main(){return(0);}
EOF
if { (eval echo configure:1211: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
ac_cv_prog_cc_works=yes

View File

@@ -3,7 +3,7 @@ From: Alexander Kanavin <alex.kanavin@gmail.com>
Date: Thu, 23 Mar 2017 13:44:41 +0200
Subject: [PATCH] Resolve string formatting issues.
Upstream-Status: Inappropriate [upstream seems dead]
Upstream-Status: Inactive-Upstream [no activity since 2018; cvs server went read-only]
Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
---
exp_clib.c | 4 ++--

View File

@@ -1,7 +1,7 @@
Allow cross compiling.
Signed-off-by: Anders Roxell <anders.roxell@enea.com>
Upstream-Status: Pending
Upstream-Status: Inactive-Upstream [no activity since 2018; cvs server went read-only]
---
diff -uNr a/configure.in b/configure.in
--- a/configure.in 2012-12-14 15:31:32.623180450 +0100

View File

@@ -10,7 +10,7 @@ Aborted (core dumped)
Use PATH_MAX to fix the problem.
Upstream-Status: Pending [Upstream seems dead]
Upstream-Status: Inactive-Upstream [no activity since 2018; cvs server went read-only]
Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
---

View File

@@ -42,7 +42,7 @@ Example:
}
Author: Sergei Golovan <sgolovan@debian.org>
Upstream-Status: Pending
Upstream-Status: Inactive-Upstream [no activity since 2018; cvs server went read-only]
This patch is backported from fedora changes for expect:
http://pkgs.fedoraproject.org/cgit/rpms/expect.git/commit/
?h=master&id=b6737eed550be93182f2ed194e836a6cbbcf4fa3

View File

@@ -1,7 +1,7 @@
Use proper -L path when cross compiling.
Signed-off-by: Anders Roxell <anders.roxell@enea.com>
Upstream-Status: Pending
Upstream-Status: Inactive-Upstream [no activity since 2018; cvs server went read-only]
---
diff -uNr a/tclconfig/tcl.m4 b/tclconfig/tcl.m4
--- a/tclconfig/tcl.m4 2012-12-14 09:16:58.789861281 +0100

View File

@@ -81,3 +81,7 @@ FILES:${PN} += "${libdir}/libexpect${PV}.so \
"
BBCLASSEXTEND = "native nativesdk"
# http://errors.yoctoproject.org/Errors/Details/766950/
# expect5.45.4/exp_chan.c:62:5: error: initialization of 'struct Tcl_ChannelTypeVersion_ *' from incompatible pointer type 'int (*)(void *, int)' [-Wincompatible-pointer-types]
CFLAGS += "-Wno-error=incompatible-pointer-types"

View File

@@ -2,11 +2,11 @@ require gcc-common.inc
# Third digit in PV should be incremented after a minor release
PV = "13.2.0"
PV = "13.3.0"
# BINV should be incremented to a revision after a minor gcc release
BINV = "13.2.0"
BINV = "13.3.0"
FILESEXTRAPATHS =. "${FILE_DIRNAME}/gcc:${FILE_DIRNAME}/gcc/backport:"
@@ -65,11 +65,9 @@ SRC_URI = "${BASEURI} \
file://0023-Fix-install-path-of-linux64.h.patch \
file://0024-Avoid-hardcoded-build-paths-into-ppc-libgcc.patch \
file://0025-gcc-testsuite-tweaks-for-mips-OE.patch \
file://CVE-2023-4039.patch \
file://0026-aarch64-Fix-loose-ldpstp-check-PR111411.patch \
file://0027-Fix-gcc-vect-module-testcases.patch \
"
SRC_URI[sha256sum] = "e275e76442a6067341a27f04c5c6b83d8613144004c0413528863dc6b5c743da"
SRC_URI[sha256sum] = "0845e9621c9543a13f484e94584a49ffc0129970e9914624235fc1d061a0c083"
S = "${TMPDIR}/work-shared/gcc-${PV}-${PR}/${SOURCEDIR}"
B = "${WORKDIR}/gcc-${PV}/build.${HOST_SYS}.${TARGET_SYS}"

View File

@@ -92,7 +92,7 @@ do_install () {
mv ${D}${libdir}/gcc/${TARGET_SYS}/${BINV}/include/* ${D}${libdir}/${TARGET_SYS}/${BINV}/include
rmdir --ignore-fail-on-non-empty -p ${D}${libdir}/gcc/${TARGET_SYS}/${BINV}/include
fi
rm -rf ${D}${infodir}/libgomp.info ${D}${infodir}/dir
rm -rf ${D}${infodir}/libgomp.info* ${D}${infodir}/dir
rm -rf ${D}${infodir}/libitm.info ${D}${infodir}/dir
rm -rf ${D}${infodir}/libquadmath.info ${D}${infodir}/dir
if [ -d ${D}${libdir}/gcc/${TARGET_SYS}/${BINV}/finclude ]; then

View File

@@ -165,16 +165,21 @@ diff --git a/gcc/config/loongarch/gnu-user.h b/gcc/config/loongarch/gnu-user.h
index aecaa02a199..62f88f7f9a2 100644
--- a/gcc/config/loongarch/gnu-user.h
+++ b/gcc/config/loongarch/gnu-user.h
@@ -31,11 +31,11 @@ along with GCC; see the file COPYING3. If not see
@@ -31,16 +31,16 @@ along with GCC; see the file COPYING3. If not see
#undef GLIBC_DYNAMIC_LINKER
#define GLIBC_DYNAMIC_LINKER \
- "/lib" ABI_GRLEN_SPEC "/ld-linux-loongarch-" ABI_SPEC ".so.1"
+ SYSTEMLIBS_DIR "ld-linux-loongarch-" ABI_SPEC ".so.1"
#define MUSL_ABI_SPEC \
"%{mabi=lp64d:}" \
"%{mabi=lp64f:-sp}" \
"%{mabi=lp64s:-sf}"
#undef MUSL_DYNAMIC_LINKER
#define MUSL_DYNAMIC_LINKER \
- "/lib" ABI_GRLEN_SPEC "/ld-musl-loongarch-" ABI_SPEC ".so.1"
- "/lib/ld-musl-loongarch" ABI_GRLEN_SPEC MUSL_ABI_SPEC ".so.1"
+ SYSTEMLIBS_DIR "ld-musl-loongarch-" ABI_SPEC ".so.1"
#undef GNU_USER_TARGET_LINK_SPEC

View File

@@ -1,117 +0,0 @@
From adb60dc78e0da4877747f32347cee339364775be Mon Sep 17 00:00:00 2001
From: Richard Sandiford <richard.sandiford@arm.com>
Date: Fri, 15 Sep 2023 09:19:14 +0100
Subject: [PATCH] aarch64: Fix loose ldpstp check [PR111411]
aarch64_operands_ok_for_ldpstp contained the code:
/* One of the memory accesses must be a mempair operand.
If it is not the first one, they need to be swapped by the
peephole. */
if (!aarch64_mem_pair_operand (mem_1, GET_MODE (mem_1))
&& !aarch64_mem_pair_operand (mem_2, GET_MODE (mem_2)))
return false;
But the requirement isn't just that one of the accesses must be a
valid mempair operand. It's that the lower access must be, since
that's the access that will be used for the instruction operand.
gcc/
PR target/111411
* config/aarch64/aarch64.cc (aarch64_operands_ok_for_ldpstp): Require
the lower memory access to a mem-pair operand.
gcc/testsuite/
PR target/111411
* gcc.dg/rtl/aarch64/pr111411.c: New test.
Upstream-Status: Backport [https://gcc.gnu.org/git/gitweb.cgi?p=gcc.git;h=2d38f45bcca62ca0c7afef4b579f82c5c2a01610]
Signed-off-by: Martin Jansa <martin.jansa@gmail.com>
---
gcc/config/aarch64/aarch64.cc | 8 ++-
gcc/testsuite/gcc.dg/rtl/aarch64/pr111411.c | 57 +++++++++++++++++++++
2 files changed, 60 insertions(+), 5 deletions(-)
create mode 100644 gcc/testsuite/gcc.dg/rtl/aarch64/pr111411.c
diff --git a/gcc/config/aarch64/aarch64.cc b/gcc/config/aarch64/aarch64.cc
index 6118a3354ac..9b1f791ca8b 100644
--- a/gcc/config/aarch64/aarch64.cc
+++ b/gcc/config/aarch64/aarch64.cc
@@ -26154,11 +26154,9 @@ aarch64_operands_ok_for_ldpstp (rtx *operands, bool load,
gcc_assert (known_eq (GET_MODE_SIZE (GET_MODE (mem_1)),
GET_MODE_SIZE (GET_MODE (mem_2))));
- /* One of the memory accesses must be a mempair operand.
- If it is not the first one, they need to be swapped by the
- peephole. */
- if (!aarch64_mem_pair_operand (mem_1, GET_MODE (mem_1))
- && !aarch64_mem_pair_operand (mem_2, GET_MODE (mem_2)))
+ /* The lower memory access must be a mem-pair operand. */
+ rtx lower_mem = reversed ? mem_2 : mem_1;
+ if (!aarch64_mem_pair_operand (lower_mem, GET_MODE (lower_mem)))
return false;
if (REG_P (reg_1) && FP_REGNUM_P (REGNO (reg_1)))
diff --git a/gcc/testsuite/gcc.dg/rtl/aarch64/pr111411.c b/gcc/testsuite/gcc.dg/rtl/aarch64/pr111411.c
new file mode 100644
index 00000000000..ad07e9c6c89
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/rtl/aarch64/pr111411.c
@@ -0,0 +1,57 @@
+/* { dg-do compile { target aarch64*-*-* } } */
+/* { dg-require-effective-target lp64 } */
+/* { dg-options "-O -fdisable-rtl-postreload -fpeephole2 -fno-schedule-fusion" } */
+
+extern int data[];
+
+void __RTL (startwith ("ira")) foo (void *ptr)
+{
+ (function "foo"
+ (param "ptr"
+ (DECL_RTL (reg/v:DI <0> [ ptr ]))
+ (DECL_RTL_INCOMING (reg/v:DI x0 [ ptr ]))
+ ) ;; param "ptr"
+ (insn-chain
+ (block 2
+ (edge-from entry (flags "FALLTHRU"))
+ (cnote 3 [bb 2] NOTE_INSN_BASIC_BLOCK)
+ (insn 4 (set (reg:DI <0>) (reg:DI x0)))
+ (insn 5 (set (reg:DI <1>)
+ (plus:DI (reg:DI <0>) (const_int 768))))
+ (insn 6 (set (mem:SI (plus:DI (reg:DI <0>)
+ (const_int 508)) [1 &data+508 S4 A4])
+ (const_int 0)))
+ (insn 7 (set (mem:SI (plus:DI (reg:DI <1>)
+ (const_int -256)) [1 &data+512 S4 A4])
+ (const_int 0)))
+ (edge-to exit (flags "FALLTHRU"))
+ ) ;; block 2
+ ) ;; insn-chain
+ ) ;; function
+}
+
+void __RTL (startwith ("ira")) bar (void *ptr)
+{
+ (function "bar"
+ (param "ptr"
+ (DECL_RTL (reg/v:DI <0> [ ptr ]))
+ (DECL_RTL_INCOMING (reg/v:DI x0 [ ptr ]))
+ ) ;; param "ptr"
+ (insn-chain
+ (block 2
+ (edge-from entry (flags "FALLTHRU"))
+ (cnote 3 [bb 2] NOTE_INSN_BASIC_BLOCK)
+ (insn 4 (set (reg:DI <0>) (reg:DI x0)))
+ (insn 5 (set (reg:DI <1>)
+ (plus:DI (reg:DI <0>) (const_int 768))))
+ (insn 6 (set (mem:SI (plus:DI (reg:DI <1>)
+ (const_int -256)) [1 &data+512 S4 A4])
+ (const_int 0)))
+ (insn 7 (set (mem:SI (plus:DI (reg:DI <0>)
+ (const_int 508)) [1 &data+508 S4 A4])
+ (const_int 0)))
+ (edge-to exit (flags "FALLTHRU"))
+ ) ;; block 2
+ ) ;; insn-chain
+ ) ;; function
+}

File diff suppressed because it is too large Load Diff

Some files were not shown because too many files have changed in this diff Show More