From 8a5fc970b48a432f5df3be1f1e7667095e712b3d Mon Sep 17 00:00:00 2001 From: Thomas Petazzoni Date: Thu, 20 Aug 2026 22:27:34 +0200 Subject: [PATCH 01/25] package/igh-ethercat: backport upstream fix to build with Linux >= 6.19.0 Fixes: https://autobuild.buildroot.org/results/9b270904b2f7cf9eaa661c98370c582a61ff2342/ Signed-off-by: Thomas Petazzoni (cherry picked from commit e4cf512c394f218cc71eb6b496ce4cb004c917bb) Signed-off-by: Julien Olivain --- .../0002-Linux-6.19.0-support.patch | 36 +++++++++++++++++++ 1 file changed, 36 insertions(+) create mode 100644 package/igh-ethercat/0002-Linux-6.19.0-support.patch diff --git a/package/igh-ethercat/0002-Linux-6.19.0-support.patch b/package/igh-ethercat/0002-Linux-6.19.0-support.patch new file mode 100644 index 0000000000..6a6af5508c --- /dev/null +++ b/package/igh-ethercat/0002-Linux-6.19.0-support.patch @@ -0,0 +1,36 @@ +From 2c947e90d93d9c5a0129b62744de9720b48d2a17 Mon Sep 17 00:00:00 2001 +From: Nicola Fontana +Date: Sun, 8 Mar 2026 15:39:41 +0100 +Subject: [PATCH] Linux 6.19.0 support + +Commit 89aec171d9d1ab168e43fcf9754b82e4c0aef9b9 (part of linux kernel +6.19.0-rc1) introduced an arbitrarily sized sockaddr struct to be used +instead of the classical one. + +Closes #200 + +Upstream: https://gitlab.com/etherlab.org/ethercat/-/commit/c42c9cf8bc31c56cc20ae630605495e3f19f3f9a +Signed-off-by: Thomas Petazzoni +--- + devices/generic.c | 4 ++++ + 1 file changed, 4 insertions(+) + +diff --git a/devices/generic.c b/devices/generic.c +index f6cef9b5..a08af54b 100644 +--- a/devices/generic.c ++++ b/devices/generic.c +@@ -234,7 +234,11 @@ int ec_gen_device_create_socket( + sa.sll_family = AF_PACKET; + sa.sll_protocol = htons(ETH_P_ETHERCAT); + sa.sll_ifindex = desc->ifindex; ++#if LINUX_VERSION_CODE >= KERNEL_VERSION(6, 19, 0) ++ ret = kernel_bind(dev->socket, (struct sockaddr_unsized *) &sa, sizeof(sa)); ++#else + ret = kernel_bind(dev->socket, (struct sockaddr *) &sa, sizeof(sa)); ++#endif + if (ret) { + printk(KERN_ERR PFX "Failed to bind() socket to interface" + " (ret = %i).\n", ret); +-- +2.55.0 + From 0a91e760f467a90b0f0acf00ec76aac011b241f1 Mon Sep 17 00:00:00 2001 From: Thomas Petazzoni Date: Thu, 20 Aug 2026 22:27:35 +0200 Subject: [PATCH 02/25] package/igh-ethercat: bump to 1.6.12 The two patches are upstream, so they can be dropped. From NEWS.md: Version 1.6.12 - Backported CCAT fixes from Beckhoff Version 1.6.11 - Protect datagram receiving mechanism against re-ordering - Prevent creating datagrams that are too large for one frame - Reacted to stmmac API changed during Linux 6.12 - Adapted debug ring to kernel 5.6+ time API changes - Use str.read() to read into char* (deprecated in C++20) - Unload `ec_bhf` before loading CCAT - Added cpplint checks in pre-commit and CI tests. - Improved and formatted markdown documents and added pre-commit checks Version 1.6.10 - Added RasPi 5 macb (Cadence GEM / RP1) driver for kernel 6.18. - Added igb and igc for kernel 6.8 - Security fixes against malicious subdevices - Protected `rec_size` calculation in FoE. - Check for malicious EoE frame details. - Avoid writing invalid MAC onto r8169 NIC on removal - Fixed insufficient re-allocation of SoE request buffer. Version 1.6.9 - Protect datagram injection mechanism against re-ordering. - Fixed for genet and igb drivers for openSUSE Leap 16.0 kernel 6.12. - tty: Implemented new timer interface since kernel 6.15. - Do not require .config to exist in kernel sources. - Fix: Attach slaves before calculating DCs. - Discard EoE traffic in CoE statemachine, if EoE is disabled. - Support for Linux 6.19 - Added `--with-kmod-dir` and `--with-ip-cmd` configuration switches to specify the paths of the tools used in the `ethercatctl` script. - Changed the default path of the `ip` command to `/sbin/ip`. Signed-off-by: Thomas Petazzoni Signed-off-by: Julien Olivain --- ...new-timer-interface-since-kernel-6.1.patch | 63 ------------------- .../0002-Linux-6.19.0-support.patch | 36 ----------- package/igh-ethercat/igh-ethercat.hash | 2 +- package/igh-ethercat/igh-ethercat.mk | 2 +- 4 files changed, 2 insertions(+), 101 deletions(-) delete mode 100644 package/igh-ethercat/0001-tty-Implemented-new-timer-interface-since-kernel-6.1.patch delete mode 100644 package/igh-ethercat/0002-Linux-6.19.0-support.patch diff --git a/package/igh-ethercat/0001-tty-Implemented-new-timer-interface-since-kernel-6.1.patch b/package/igh-ethercat/0001-tty-Implemented-new-timer-interface-since-kernel-6.1.patch deleted file mode 100644 index 5e568eaba9..0000000000 --- a/package/igh-ethercat/0001-tty-Implemented-new-timer-interface-since-kernel-6.1.patch +++ /dev/null @@ -1,63 +0,0 @@ -From e32e99f8b8ec02a340ad3b93cc8abd36781ff568 Mon Sep 17 00:00:00 2001 -From: Bernd Kuhls -Date: Sun, 15 Mar 2026 20:06:42 +0100 -Subject: [PATCH] tty: Implemented new timer interface since kernel 6.15 - -Upstream: https://gitlab.com/etherlab.org/ethercat/-/merge_requests/187 - -Signed-off-by: Bernd Kuhls ---- - examples/tty/tty.c | 4 ++++ - tty/module.c | 8 ++++++++ - 2 files changed, 12 insertions(+) - -diff --git a/examples/tty/tty.c b/examples/tty/tty.c -index 4d47a49..e5b4d52 100644 ---- a/examples/tty/tty.c -+++ b/examples/tty/tty.c -@@ -233,7 +233,11 @@ static void __exit cleanup_mini_module(void) - { - printk(KERN_INFO PFX "Stopping...\n"); - -+#if LINUX_VERSION_CODE >= KERNEL_VERSION(6, 15, 0) -+ timer_delete_sync(&timer); -+#else - del_timer_sync(&timer); -+#endif - - free_serial_devices(); - -diff --git a/tty/module.c b/tty/module.c -index 2b7b22b..12ad1e7 100644 ---- a/tty/module.c -+++ b/tty/module.c -@@ -292,7 +292,11 @@ static int ec_tty_init(ec_tty_t *t, int minor, - - static void ec_tty_clear(ec_tty_t *tty) - { -+#if LINUX_VERSION_CODE >= KERNEL_VERSION(6, 15, 0) -+ timer_delete_sync(&tty->timer); -+#else - del_timer_sync(&tty->timer); -+#endif - tty_unregister_device(tty_driver, tty->minor); - } - -@@ -367,10 +371,14 @@ static void ec_tty_wakeup(struct timer_list *t) - static void ec_tty_wakeup(unsigned long data) - #endif - { -+#if LINUX_VERSION_CODE >= KERNEL_VERSION(6, 15, 0) -+ ec_tty_t *tty = timer_container_of(tty, t, timer); -+#else - #if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 15, 0) - ec_tty_t *tty = from_timer(tty, t, timer); - #else - ec_tty_t *tty = (ec_tty_t *) data; -+#endif - #endif - size_t to_recv; - --- -2.47.3 - diff --git a/package/igh-ethercat/0002-Linux-6.19.0-support.patch b/package/igh-ethercat/0002-Linux-6.19.0-support.patch deleted file mode 100644 index 6a6af5508c..0000000000 --- a/package/igh-ethercat/0002-Linux-6.19.0-support.patch +++ /dev/null @@ -1,36 +0,0 @@ -From 2c947e90d93d9c5a0129b62744de9720b48d2a17 Mon Sep 17 00:00:00 2001 -From: Nicola Fontana -Date: Sun, 8 Mar 2026 15:39:41 +0100 -Subject: [PATCH] Linux 6.19.0 support - -Commit 89aec171d9d1ab168e43fcf9754b82e4c0aef9b9 (part of linux kernel -6.19.0-rc1) introduced an arbitrarily sized sockaddr struct to be used -instead of the classical one. - -Closes #200 - -Upstream: https://gitlab.com/etherlab.org/ethercat/-/commit/c42c9cf8bc31c56cc20ae630605495e3f19f3f9a -Signed-off-by: Thomas Petazzoni ---- - devices/generic.c | 4 ++++ - 1 file changed, 4 insertions(+) - -diff --git a/devices/generic.c b/devices/generic.c -index f6cef9b5..a08af54b 100644 ---- a/devices/generic.c -+++ b/devices/generic.c -@@ -234,7 +234,11 @@ int ec_gen_device_create_socket( - sa.sll_family = AF_PACKET; - sa.sll_protocol = htons(ETH_P_ETHERCAT); - sa.sll_ifindex = desc->ifindex; -+#if LINUX_VERSION_CODE >= KERNEL_VERSION(6, 19, 0) -+ ret = kernel_bind(dev->socket, (struct sockaddr_unsized *) &sa, sizeof(sa)); -+#else - ret = kernel_bind(dev->socket, (struct sockaddr *) &sa, sizeof(sa)); -+#endif - if (ret) { - printk(KERN_ERR PFX "Failed to bind() socket to interface" - " (ret = %i).\n", ret); --- -2.55.0 - diff --git a/package/igh-ethercat/igh-ethercat.hash b/package/igh-ethercat/igh-ethercat.hash index 9f1172464b..23c28ccc24 100644 --- a/package/igh-ethercat/igh-ethercat.hash +++ b/package/igh-ethercat/igh-ethercat.hash @@ -1,4 +1,4 @@ # Locally computed -sha256 e9b97d4a8c3a1224fe9119ada448f4024bacea2ca940a811073170e42d828b76 igh-ethercat-1.6.8.tar.gz +sha256 1fd0c5746980de42b4c1d476d4bd20f5525a9b3fe6e6ff50032bc565c82dc85c igh-ethercat-1.6.12.tar.gz sha256 231f7edcc7352d7734a96eef0b8030f77982678c516876fcb81e25b32d68564c COPYING sha256 dc626520dcd53a22f727af3ee42c770e56c97a64fe3adb063799d8ab032fe551 COPYING.LESSER diff --git a/package/igh-ethercat/igh-ethercat.mk b/package/igh-ethercat/igh-ethercat.mk index 03f004d2b4..8876b59f30 100644 --- a/package/igh-ethercat/igh-ethercat.mk +++ b/package/igh-ethercat/igh-ethercat.mk @@ -4,7 +4,7 @@ # ################################################################################ -IGH_ETHERCAT_VERSION = 1.6.8 +IGH_ETHERCAT_VERSION = 1.6.12 IGH_ETHERCAT_SITE = $(call gitlab,etherlab.org,ethercat,$(IGH_ETHERCAT_VERSION)) IGH_ETHERCAT_LICENSE = GPL-2.0 (IgH EtherCAT master), LGPL-2.1 (libraries) IGH_ETHERCAT_LICENSE_FILES = COPYING COPYING.LESSER From bdd74f011f88fd1a3d7dc4c2a93a54ed7ce7286b Mon Sep 17 00:00:00 2001 From: Giulio Benetti Date: Wed, 19 Aug 2026 22:19:44 +0200 Subject: [PATCH 03/25] package/bind: bump version to 9.20.27 https://downloads.isc.org/isc/bind9/9.20.27/doc/arm/html/notes.html#notes-for-bind-9-20-27 https://downloads.isc.org/isc/bind9/9.20.27/doc/arm/html/changelog.html Signed-off-by: Giulio Benetti Signed-off-by: Julien Olivain --- package/bind/bind.hash | 4 ++-- package/bind/bind.mk | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/package/bind/bind.hash b/package/bind/bind.hash index 36ff7b2d0a..2131f51978 100644 --- a/package/bind/bind.hash +++ b/package/bind/bind.hash @@ -1,4 +1,4 @@ -# Verified from https://ftp.isc.org/isc/bind9/9.20.26/bind-9.20.26.tar.xz.asc +# Verified from https://ftp.isc.org/isc/bind9/9.20.27/bind-9.20.27.tar.xz.asc # with key 706B6C28620E76F91D11F7DF510A642A06C52CEC -sha256 55248def0f870c4c46b3de72978ea972615131516663188a4564dca1d20bf350 bind-9.20.26.tar.xz +sha256 145ab7a50b33a06d9d488b5e668c887e754f42acf8954e2b5dc7e238b080e4a0 bind-9.20.27.tar.xz sha256 9734825d67a3ac967b2c2f7c9a83c9e5db1c2474dbe9599157c3a4188749ebd4 COPYRIGHT diff --git a/package/bind/bind.mk b/package/bind/bind.mk index 172bbf79b5..2b42e87d62 100644 --- a/package/bind/bind.mk +++ b/package/bind/bind.mk @@ -4,7 +4,7 @@ # ################################################################################ -BIND_VERSION = 9.20.26 +BIND_VERSION = 9.20.27 BIND_SOURCE= bind-$(BIND_VERSION).tar.xz BIND_SITE = https://ftp.isc.org/isc/bind9/$(BIND_VERSION) BIND_INSTALL_STAGING = YES From 43cbd2b46ad88c6a88b732caaf621acd20344139 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Luis=20Salvador=20Rufo?= Date: Sat, 22 Aug 2026 02:36:38 +0200 Subject: [PATCH 04/25] package/zfs: bump version to 2.4.4 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit For release note, see: https://github.com/openzfs/zfs/releases/tag/zfs-2.4.4 Signed-off-by: José Luis Salvador Rufo Signed-off-by: Julien Olivain --- package/zfs/zfs.hash | 4 ++-- package/zfs/zfs.mk | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/package/zfs/zfs.hash b/package/zfs/zfs.hash index aa8af8b8c3..e5c50ad141 100644 --- a/package/zfs/zfs.hash +++ b/package/zfs/zfs.hash @@ -1,5 +1,5 @@ -# From https://github.com/openzfs/zfs/releases/download/zfs-2.4.3/zfs-2.4.3.sha256.asc -sha256 1f08f2d154f5189b5f1382848a32667b3d34066145b474c49cd3d41a5fba59a7 zfs-2.4.3.tar.gz +# From https://github.com/openzfs/zfs/releases/download/zfs-2.4.4/zfs-2.4.4.sha256.asc +sha256 2a3c70d55a37cc71618a95a60e81ad66530201eb118d37741dc92efcf848c8b1 zfs-2.4.4.tar.gz # Hash for license files: sha256 1ffb70c33c4f79f04e947facc5c7851f289609256aacb47fc115f700427d9520 LICENSE diff --git a/package/zfs/zfs.mk b/package/zfs/zfs.mk index 2cde68307d..071557bf3e 100644 --- a/package/zfs/zfs.mk +++ b/package/zfs/zfs.mk @@ -4,7 +4,7 @@ # ################################################################################ -ZFS_VERSION = 2.4.3 +ZFS_VERSION = 2.4.4 ZFS_SITE = https://github.com/openzfs/zfs/releases/download/zfs-$(ZFS_VERSION) ZFS_SELINUX_MODULES = zfs ZFS_LICENSE = CDDL From a0c0208e1bc7ee83eb5a058b6c20b5e2ec6e3c1e Mon Sep 17 00:00:00 2001 From: Petr Vorel Date: Thu, 20 Aug 2026 02:02:51 +0200 Subject: [PATCH 05/25] package/nfs-utils: bump version to 2.9.2 Remove patches upstreamed in this release. Release announce: https://lore.kernel.org/linux-nfs/dc0f6f41-84be-4a70-92db-89890bded3ab@redhat.com/ Backport 3 patches from upstream fixing this release regressions: * 67ed1bdb ("exportfs: link failure with --disable-nfsdctl") * cec8eeb6 ("getport: fix missing stddef.h inclusion") * cf80edae ("statd: fix memory leak in sm_mon_1_svc() when existing host re-monitors") And 4th patch which fixes error on old toolchains, e.g. br-arm-full-static or bootlin-aarch64-glibc-old. Signed-off-by: Petr Vorel [Julien: fix check-package errors] Signed-off-by: Julien Olivain --- ..._file-fix-missing-string.h-inclusion.patch | 28 ------- ...-leak-in-sm_mon_1_svc-when-existing-.patch | 40 ++++++++++ ....h-file-to-deal-with-old-Linux-api-a.patch | 77 ------------------- ...tport-fix-missing-stddef.h-inclusion.patch | 33 ++++++++ ...fs-link-failure-with-disable-nfsdctl.patch | 39 ++++++++++ ...kend_sqlite.c-fix-getrandom-fallback.patch | 30 -------- ...ort-Fix-switch-case-on-old-compilers.patch | 44 +++++++++++ package/nfs-utils/nfs-utils.hash | 4 +- package/nfs-utils/nfs-utils.mk | 5 +- 9 files changed, 162 insertions(+), 138 deletions(-) delete mode 100644 package/nfs-utils/0001-fh_key_file-fix-missing-string.h-inclusion.patch create mode 100644 package/nfs-utils/0001-statd-fix-memory-leak-in-sm_mon_1_svc-when-existing-.patch delete mode 100644 package/nfs-utils/0002-Introduce-compat.h-file-to-deal-with-old-Linux-api-a.patch create mode 100644 package/nfs-utils/0002-getport-fix-missing-stddef.h-inclusion.patch create mode 100644 package/nfs-utils/0003-exportfs-link-failure-with-disable-nfsdctl.patch delete mode 100644 package/nfs-utils/0003-support-backend_sqlite.c-fix-getrandom-fallback.patch create mode 100644 package/nfs-utils/0004-getport-Fix-switch-case-on-old-compilers.patch diff --git a/package/nfs-utils/0001-fh_key_file-fix-missing-string.h-inclusion.patch b/package/nfs-utils/0001-fh_key_file-fix-missing-string.h-inclusion.patch deleted file mode 100644 index 838d519d5a..0000000000 --- a/package/nfs-utils/0001-fh_key_file-fix-missing-string.h-inclusion.patch +++ /dev/null @@ -1,28 +0,0 @@ -From 2d99ff0aa8a3b4d20558bce742edaaed9d24b3cb Mon Sep 17 00:00:00 2001 -From: Giulio Benetti -Date: Tue, 7 Apr 2026 17:23:13 +0200 -Subject: [PATCH] fh_key_file: fix missing string.h inclusion - -Add #include to fix build failure. - -Upstream: https://lore.kernel.org/linux-nfs/20260408173535.3992116-1-giulio.benetti@benettiengineering.com/T/#t -Signed-off-by: Giulio Benetti ---- - support/nfs/fh_key_file.c | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/support/nfs/fh_key_file.c b/support/nfs/fh_key_file.c -index 5f5eafc1..81ea1500 100644 ---- a/support/nfs/fh_key_file.c -+++ b/support/nfs/fh_key_file.c -@@ -26,6 +26,7 @@ - #include - #include - #include -+#include - #include - - #include "nfslib.h" --- -2.47.3 - diff --git a/package/nfs-utils/0001-statd-fix-memory-leak-in-sm_mon_1_svc-when-existing-.patch b/package/nfs-utils/0001-statd-fix-memory-leak-in-sm_mon_1_svc-when-existing-.patch new file mode 100644 index 0000000000..d3a5bf991f --- /dev/null +++ b/package/nfs-utils/0001-statd-fix-memory-leak-in-sm_mon_1_svc-when-existing-.patch @@ -0,0 +1,40 @@ +From cf80edaeb9b120b7a533e0d3aea2f05cfcab85ae Mon Sep 17 00:00:00 2001 +From: xuchenchen +Date: Sat, 15 Aug 2026 13:58:16 -0400 +Subject: [PATCH] statd: fix memory leak in sm_mon_1_svc() when existing host + re-monitors + +When an already-monitored host sends a new SM_MON request with a +different priv cookie, the code sets existing=1 and reuses the +existing notify_list entry. However, clnt->dns_name is overwritten +with the newly allocated dnsname without freeing the old value, +causing a memory leak. + +Since statd is a long-running daemon, repeated SM_MON requests with +changing cookies will accumulate leaked strings. + +Fix by freeing the old dns_name before overwriting it. + +Signed-off-by: xuchenchen +Signed-off-by: Steve Dickson +Upstream: https://git.linux-nfs.org/?p=steved/nfs-utils.git;a=commit;h=cf80edaeb9b120b7a533e0d3aea2f05cfcab85ae +--- + utils/statd/monitor.c | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/utils/statd/monitor.c b/utils/statd/monitor.c +index c76589ca..76ef16f1 100644 +--- a/utils/statd/monitor.c ++++ b/utils/statd/monitor.c +@@ -187,6 +187,8 @@ sm_mon_1_svc(struct mon *argp, struct svc_req *rqstp) + NL_MY_VERS(clnt) = id->my_vers; + NL_MY_PROC(clnt) = id->my_proc; + memcpy(NL_PRIV(clnt), argp->priv, SM_PRIV_SIZE); ++ if (existing) ++ free(clnt->dns_name); + clnt->dns_name = dnsname; + + /* +-- +2.53.0 + diff --git a/package/nfs-utils/0002-Introduce-compat.h-file-to-deal-with-old-Linux-api-a.patch b/package/nfs-utils/0002-Introduce-compat.h-file-to-deal-with-old-Linux-api-a.patch deleted file mode 100644 index c5c57c6503..0000000000 --- a/package/nfs-utils/0002-Introduce-compat.h-file-to-deal-with-old-Linux-api-a.patch +++ /dev/null @@ -1,77 +0,0 @@ -From 218e1b572123f527bd92c17ebb7ac00c2a7e6c01 Mon Sep 17 00:00:00 2001 -From: Giulio Benetti -Date: Tue, 7 Apr 2026 17:47:40 +0200 -Subject: [PATCH] Introduce compat.h file to deal with old Linux api and fix - build failure due to missing NETLINK_EXT_ACK - -In compat.h check if NETLINK_EXT_ACK exists, otherwise define it to fix -build failure and where at the moment is included -let's include "compat.h" - -Upstream: https://lore.kernel.org/linux-nfs/20260408173535.3992116-2-giulio.benetti@benettiengineering.com/T/#u -Signed-off-by: Giulio Benetti ---- - support/export/cache.c | 2 +- - support/export/cache_flush.c | 2 ++ - support/include/compat.h | 10 ++++++++++ - utils/nfsdctl/nfsdctl.c | 1 + - 4 files changed, 14 insertions(+), 1 deletion(-) - create mode 100644 support/include/compat.h - -diff --git a/support/export/cache.c b/support/export/cache.c -index 2f128d7d..65008f51 100644 ---- a/support/export/cache.c -+++ b/support/export/cache.c -@@ -40,7 +40,7 @@ - #include - #include - #include --#include -+#include "compat.h" - - #ifdef USE_SYSTEM_NFSD_NETLINK_H - #include -diff --git a/support/export/cache_flush.c b/support/export/cache_flush.c -index ed7b964f..2a24dec7 100644 ---- a/support/export/cache_flush.c -+++ b/support/export/cache_flush.c -@@ -38,6 +38,8 @@ extern int no_netlink; - #include "sunrpc_netlink.h" - #endif - -+#include "compat.h" -+ - static int nl_send_flush(struct nl_sock *sock, int family, int cmd) - { - struct nl_msg *msg; -diff --git a/support/include/compat.h b/support/include/compat.h -new file mode 100644 -index 00000000..83229b65 ---- /dev/null -+++ b/support/include/compat.h -@@ -0,0 +1,10 @@ -+#ifndef COMPAT_H -+#define COMPAT_H -+ -+#include -+ -+#ifndef NETLINK_EXT_ACK -+#define NETLINK_EXT_ACK 11 -+#endif -+ -+#endif /* COMPAT_H */ -diff --git a/utils/nfsdctl/nfsdctl.c b/utils/nfsdctl/nfsdctl.c -index 016dd2eb..c7126748 100644 ---- a/utils/nfsdctl/nfsdctl.c -+++ b/utils/nfsdctl/nfsdctl.c -@@ -26,6 +26,7 @@ - #include - #include - #include -+#include "compat.h" - - #include - #include --- -2.47.3 - diff --git a/package/nfs-utils/0002-getport-fix-missing-stddef.h-inclusion.patch b/package/nfs-utils/0002-getport-fix-missing-stddef.h-inclusion.patch new file mode 100644 index 0000000000..a85390cdec --- /dev/null +++ b/package/nfs-utils/0002-getport-fix-missing-stddef.h-inclusion.patch @@ -0,0 +1,33 @@ +From cec8eeb69dc65eb91e0cb23ebff23530d9397425 Mon Sep 17 00:00:00 2001 +From: Jaipaul Cheernam +Date: Sat, 15 Aug 2026 14:00:36 -0400 +Subject: [PATCH] getport: fix missing stddef.h inclusion + +getport.c uses offsetof() but does not include . On glibc +this works because offsetof is pulled in transitively, but on musl it +is not available without the explicit include, causing: + + getport.c:459:41: error: implicit declaration of function 'offsetof' + +Signed-off-by: Jaipaul Cheernam +Signed-off-by: Steve Dickson +Upstream: https://git.linux-nfs.org/?p=steved/nfs-utils.git;a=commit;h=cec8eeb69dc65eb91e0cb23ebff23530d9397425 +--- + support/nfs/getport.c | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/support/nfs/getport.c b/support/nfs/getport.c +index 608e185b..6bd2f713 100644 +--- a/support/nfs/getport.c ++++ b/support/nfs/getport.c +@@ -27,6 +27,7 @@ + #endif + + #include ++#include + #include + #include + #include +-- +2.53.0 + diff --git a/package/nfs-utils/0003-exportfs-link-failure-with-disable-nfsdctl.patch b/package/nfs-utils/0003-exportfs-link-failure-with-disable-nfsdctl.patch new file mode 100644 index 0000000000..f1668c5b97 --- /dev/null +++ b/package/nfs-utils/0003-exportfs-link-failure-with-disable-nfsdctl.patch @@ -0,0 +1,39 @@ +From 67ed1bdb1af1c70a5fd3b377a997401b7676b827 Mon Sep 17 00:00:00 2001 +From: jaipaul Cheernam +Date: Sat, 15 Aug 2026 14:20:03 -0400 +Subject: [PATCH] exportfs: link failure with --disable-nfsdctl + +Building nfs-utils 2.9.2 with --disable-nfsdctl fails to link +exportfs. This is a regression from 2.9.1. + +Signed-off-by: Steve Dickson +Upstream: https://git.linux-nfs.org/?p=steved/nfs-utils.git;a=commit;h=67ed1bdb1af1c70a5fd3b377a997401b7676b827 +--- + configure.ac | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/configure.ac b/configure.ac +index 4ea19715..2ce1e129 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -256,8 +256,6 @@ PKG_CHECK_MODULES(LIBNL3, libnl-3.0 >= 3.1) + PKG_CHECK_MODULES(LIBNLGENL3, libnl-genl-3.0 >= 3.1) + + AC_CHECK_HEADERS(linux/nfsd_netlink.h) +-AC_DEFINE([HAVE_NFSD_NETLINK], 1, +- [Define to 1 if nfsd generic netlink support is available]) + + # ensure the system netlink headers have the latest features + AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include ]], +@@ -279,6 +277,8 @@ AC_ARG_ENABLE(nfsdctl, + enable_nfsdctl="yes") + AM_CONDITIONAL(CONFIG_NFSDCTL, [test "$enable_nfsdctl" = "yes" ]) + if test "$enable_nfsdctl" = yes; then ++ AC_DEFINE([HAVE_NFSD_NETLINK], 1, ++ [Define to 1 if nfsd generic netlink support is available]) + PKG_CHECK_MODULES(LIBREADLINE, readline) + fi + +-- +2.53.0 + diff --git a/package/nfs-utils/0003-support-backend_sqlite.c-fix-getrandom-fallback.patch b/package/nfs-utils/0003-support-backend_sqlite.c-fix-getrandom-fallback.patch deleted file mode 100644 index 86d615ca34..0000000000 --- a/package/nfs-utils/0003-support-backend_sqlite.c-fix-getrandom-fallback.patch +++ /dev/null @@ -1,30 +0,0 @@ -From dbd44e7d6d4140e5e9d01f0a6daf6f3e45e5acbc Mon Sep 17 00:00:00 2001 -From: Giulio Benetti -Date: Wed, 8 Apr 2026 14:28:28 +0200 -Subject: [PATCH] support/backend_sqlite.c: fix getrandom() fallback - -In old Linux/Glibc versions __NR_getrandom is defined in -so let's add it to fix build failure. - -Upstream: https://lore.kernel.org/linux-nfs/20260408173535.3992116-3-giulio.benetti@benettiengineering.com/T/#u -Signed-off-by: Giulio Benetti ---- - support/reexport/backend_sqlite.c | 2 ++ - 1 file changed, 2 insertions(+) - -diff --git a/support/reexport/backend_sqlite.c b/support/reexport/backend_sqlite.c -index 0eb5ea37..a1e981e4 100644 ---- a/support/reexport/backend_sqlite.c -+++ b/support/reexport/backend_sqlite.c -@@ -9,6 +9,8 @@ - #include - #include - -+#include -+ - #ifdef HAVE_GETRANDOM - # include - # if !defined(SYS_getrandom) && defined(__NR_getrandom) --- -2.47.3 - diff --git a/package/nfs-utils/0004-getport-Fix-switch-case-on-old-compilers.patch b/package/nfs-utils/0004-getport-Fix-switch-case-on-old-compilers.patch new file mode 100644 index 0000000000..692bc8bd3b --- /dev/null +++ b/package/nfs-utils/0004-getport-Fix-switch-case-on-old-compilers.patch @@ -0,0 +1,44 @@ +From 7b886f3502977040461a8b31f5948a128f7069e2 Mon Sep 17 00:00:00 2001 +From: Petr Vorel +Date: Thu, 20 Aug 2026 01:03:10 +0200 +Subject: [FTBFS,PATCH,nfs-utils 1/1] getport: Fix switch case on old compilers +Cc: Steve Dickson , + Giulio Benetti , + Julien Olivain + +Buildroot distro compiles with fairly old compilers, which defaults to +old C11 standard (some of still used compilers don't even have newer +standard than C11). Workaround code which requires C23 with using { }. + +This fixes error: + + getport.c:460:3: error: a label can only be part of a statement and a declaration is not a statement + size_t path_len = len - offsetof(struct sockaddr_un, sun_path); + ^~~~~~ + +Fixes: 1a6dcd74 ("Removed warnings in nfs_sockaddr2universal()") +Signed-off-by: Petr Vorel +Upstream: https://lore.kernel.org/linux-nfs/20260819232049.438643-1-petr.vorel@gmail.com/ +--- + support/nfs/getport.c | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +diff --git a/support/nfs/getport.c b/support/nfs/getport.c +index 6bd2f713..18ea0777 100644 +--- a/support/nfs/getport.c ++++ b/support/nfs/getport.c +@@ -456,9 +456,10 @@ char *nfs_sockaddr2universal(const struct sockaddr *sap) + int len = sizeof(struct sockaddr); + + switch (sap->sa_family) { +- case AF_LOCAL: ++ case AF_LOCAL: { + size_t path_len = len - offsetof(struct sockaddr_un, sun_path); + return strndup(sun->sun_path, path_len); ++ } + case AF_INET: + if (inet_ntop(AF_INET, (const void *)&sin->sin_addr.s_addr, + buf, (socklen_t)sizeof(buf)) == NULL) +-- +2.53.0 + diff --git a/package/nfs-utils/nfs-utils.hash b/package/nfs-utils/nfs-utils.hash index 19315e60a3..93f8e463a1 100644 --- a/package/nfs-utils/nfs-utils.hash +++ b/package/nfs-utils/nfs-utils.hash @@ -1,4 +1,4 @@ -# From https://www.kernel.org/pub/linux/utils/nfs-utils/2.9.1/sha256sums.asc -sha256 302846343bf509f8f884c23bdbd0fe853b7f7cbb6572060a9082279d13b21a2c nfs-utils-2.9.1.tar.xz +# From https://www.kernel.org/pub/linux/utils/nfs-utils/2.9.2/sha256sums.asc +sha256 e1dd8a9c95af15492065942cc3b52b1339ffd586baa2280ed86c9d3dc4097e8c nfs-utils-2.9.2.tar.xz # Locally computed sha256 576540abf5e95029ad4ad90e32071385a5e95b2c30708c706116f3eb87b9a3de COPYING diff --git a/package/nfs-utils/nfs-utils.mk b/package/nfs-utils/nfs-utils.mk index df9fdbc052..6e0fb1a04c 100644 --- a/package/nfs-utils/nfs-utils.mk +++ b/package/nfs-utils/nfs-utils.mk @@ -4,7 +4,7 @@ # ################################################################################ -NFS_UTILS_VERSION = 2.9.1 +NFS_UTILS_VERSION = 2.9.2 NFS_UTILS_SOURCE = nfs-utils-$(NFS_UTILS_VERSION).tar.xz NFS_UTILS_SITE = https://www.kernel.org/pub/linux/utils/nfs-utils/$(NFS_UTILS_VERSION) NFS_UTILS_LICENSE = GPL-2.0+ @@ -12,6 +12,9 @@ NFS_UTILS_LICENSE_FILES = COPYING NFS_UTILS_DEPENDENCIES = host-nfs-utils host-pkgconf libevent libnl libtirpc sqlite util-linux NFS_UTILS_CPE_ID_VENDOR = linux-nfs +# 0003-exportfs-link-failure-with-disable-nfsdctl.patch +NFS_UTILS_AUTORECONF = YES + NFS_UTILS_CONF_ENV = knfsd_cv_bsd_signals=no NFS_UTILS_CONF_OPTS = \ From 3d6c68d625cf80cc9a9cf4ce1058248fcfc413a7 Mon Sep 17 00:00:00 2001 From: Luca Ceresoli Date: Mon, 24 Aug 2026 14:55:21 +0200 Subject: [PATCH 06/25] package/heaptrack: new package Add heaptrack, a memory allocation tracer toolkit. This implementation builds all the command line components, not the heaptrack_gui graphical visualization program. Signed-off-by: Luca Ceresoli Signed-off-by: Julien Olivain --- DEVELOPERS | 2 + package/Config.in | 1 + package/heaptrack/Config.in | 39 +++++++++++++++++ package/heaptrack/heaptrack.hash | 10 +++++ package/heaptrack/heaptrack.mk | 26 ++++++++++++ .../testing/tests/package/test_heaptrack.py | 42 +++++++++++++++++++ 6 files changed, 120 insertions(+) create mode 100644 package/heaptrack/Config.in create mode 100644 package/heaptrack/heaptrack.hash create mode 100644 package/heaptrack/heaptrack.mk create mode 100644 support/testing/tests/package/test_heaptrack.py diff --git a/DEVELOPERS b/DEVELOPERS index 98c9ee55d3..3a288afb1a 100644 --- a/DEVELOPERS +++ b/DEVELOPERS @@ -2192,6 +2192,7 @@ F: configs/zynq_zc706_defconfig F: configs/zynqmp_zcu106_defconfig F: package/agentpp/ F: package/exim/ +F: package/heaptrack/ F: package/libpjsip/ F: package/linux-tools/linux-tool-usbtools.mk.in F: package/qpid-proton/ @@ -2200,6 +2201,7 @@ F: package/snmppp/ F: package/stm32flash/ F: package/unzip/ F: support/legal-info/ +F: support/testing/tests/package/test_heaptrack.py N: Lucas De Marchi F: package/fswebcam/ diff --git a/package/Config.in b/package/Config.in index 6058800682..307f7ce86a 100644 --- a/package/Config.in +++ b/package/Config.in @@ -106,6 +106,7 @@ menu "Debugging, profiling and benchmark" source "package/fwts/Config.in" source "package/gdb/Config.in" source "package/google-breakpad/Config.in" + source "package/heaptrack/Config.in" source "package/hyperfine/Config.in" source "package/iozone/Config.in" source "package/k3conf/Config.in" diff --git a/package/heaptrack/Config.in b/package/heaptrack/Config.in new file mode 100644 index 0000000000..a7ef6f0970 --- /dev/null +++ b/package/heaptrack/Config.in @@ -0,0 +1,39 @@ +config BR2_PACKAGE_HEAPTRACK + bool "heaptrack" + depends on BR2_INSTALL_LIBSTDCPP + depends on BR2_TOOLCHAIN_HAS_THREADS # boost, libunwind, elfutils + depends on BR2_USE_WCHAR # boost, elfutils + depends on BR2_TOOLCHAIN_SUPPORTS_ALWAYS_LOCKFREE_ATOMIC_INTS # boost-filesystem + depends on BR2_PACKAGE_LIBUNWIND_ARCH_SUPPORTS # libunwind + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_8 # C++17 filesystem + depends on !BR2_STATIC_LIBS # libunwind, elfutils + depends on !BR2_TOOLCHAIN_USES_UCLIBC # no dlmopen() support + select BR2_PACKAGE_BOOST + select BR2_PACKAGE_BOOST_IOSTREAMS + select BR2_PACKAGE_BOOST_PROGRAM_OPTIONS + # For heaptrack_print + select BR2_PACKAGE_BOOST_FILESYSTEM + select BR2_PACKAGE_ELFUTILS + select BR2_PACKAGE_LIBUNWIND + select BR2_PACKAGE_ZLIB + help + Heaptrack traces all memory allocations and annotates these + events with stack traces. Dedicated analysis tools then allow + you to interpret the heap memory profile to find hotspots, + memory leaks, allocation hotspots and temporary allocations. + + Zstandard offers better (de)compression performance compared + with gzip/zlib, making heaptrack faster and datafiles smaller, + so enabling BR2_PACKAGE_ZSTD is recommended. + + https://apps.kde.org/heaptrack/ + +comment "heaptrack needs a glibc or musl toolchain w/ C++, threads, wchar, gcc >= 8, dynamic library" + depends on BR2_TOOLCHAIN_SUPPORTS_ALWAYS_LOCKFREE_ATOMIC_INTS + depends on BR2_PACKAGE_LIBUNWIND_ARCH_SUPPORTS + depends on !BR2_INSTALL_LIBSTDCPP \ + || !BR2_TOOLCHAIN_HAS_THREADS \ + || !BR2_USE_WCHAR \ + || !BR2_TOOLCHAIN_GCC_AT_LEAST_8 \ + || BR2_STATIC_LIBS \ + || BR2_TOOLCHAIN_USES_UCLIBC diff --git a/package/heaptrack/heaptrack.hash b/package/heaptrack/heaptrack.hash new file mode 100644 index 0000000000..6ad9619f23 --- /dev/null +++ b/package/heaptrack/heaptrack.hash @@ -0,0 +1,10 @@ +# Locally calculated +sha256 e69de2209ab0e16c8e26c1b60feeb852b3a88e46a4f16588c08254e1bd81a183 heaptrack-3e6cce3d210a6672fe6f92de0bed567c49b7a9c5-git4.tar.gz + +sha256 fa6f36630bb1e0c571d34b2bbdf188d08495c9dbf58f28cac112f303fc1f58fb LICENSES/LGPL-2.1-only.txt +sha256 aaf135472f81c5b4a0dca9367e5bb5e9750032b5bebe5442b36e4c0a47430df3 LICENSES/GPL-2.0-or-later.txt +sha256 6aee5c3d7c55f3d8ff45b1245b8427efaf0a59e9c52d7139c79bff7056e9a611 LICENSES/LGPL-2.1-or-later.txt +sha256 84c6ef3ea9e3254a54d0acf5d3e0c61ae011b8fef7dd6940591cf060e6380a8f LICENSES/BSL-1.0.txt +sha256 b85dcd3e453d05982552c52b5fc9e0bdd6d23c6f8e844b984a88af32570b0cc0 LICENSES/MIT.txt +sha256 074e6e32c86a4c0ef8b3ed25b721ca23aca83df277cd88106ef7177c354615ff LICENSES/Apache-2.0.txt +sha256 42639b2e5507163d35069be166e37a784f48a5f17e3577c16eb48fab215247cd LICENSES/BSD-3-Clause.txt diff --git a/package/heaptrack/heaptrack.mk b/package/heaptrack/heaptrack.mk new file mode 100644 index 0000000000..6ae49ba1a8 --- /dev/null +++ b/package/heaptrack/heaptrack.mk @@ -0,0 +1,26 @@ +################################################################################ +# +# heaptrack +# +################################################################################ + +HEAPTRACK_SITE_METHOD = git +HEAPTRACK_SITE = https://invent.kde.org/sdk/heaptrack.git +HEAPTRACK_VERSION = 3e6cce3d210a6672fe6f92de0bed567c49b7a9c5 +HEAPTRACK_LICENSE = LGPL-2.1-or-later, GPL-2.0-or-later (heaptrack_interpret) +HEAPTRACK_LICENSE_FILES = \ + LICENSES/LGPL-2.1-only.txt \ + LICENSES/GPL-2.0-or-later.txt \ + LICENSES/LGPL-2.1-or-later.txt \ + LICENSES/BSL-1.0.txt \ + LICENSES/MIT.txt \ + LICENSES/Apache-2.0.txt \ + LICENSES/BSD-3-Clause.txt +HEAPTRACK_DEPENDENCIES = host-pkgconf boost elfutils libunwind zlib +HEAPTRACK_CONF_OPTS = -DHEAPTRACK_BUILD_GUI=OFF -DHEAPTRACK_BUILD_PRINT=ON + +ifeq ($(BR2_PACKAGE_ZSTD),y) +HEAPTRACK_DEPENDENCIES += zstd +endif + +$(eval $(cmake-package)) diff --git a/support/testing/tests/package/test_heaptrack.py b/support/testing/tests/package/test_heaptrack.py new file mode 100644 index 0000000000..be353f8918 --- /dev/null +++ b/support/testing/tests/package/test_heaptrack.py @@ -0,0 +1,42 @@ +import os + +import infra.basetest + + +class TestHeaptrack(infra.basetest.BRTest): + # infra.basetest.BASIC_TOOLCHAIN_CONFIG cannot be used as it does + # not include BR2_TOOLCHAIN_SUPPORTS_ALWAYS_LOCKFREE_ATOMIC_INTS + # needed by heaptrack. + config = \ + """ + BR2_aarch64=y + BR2_TOOLCHAIN_EXTERNAL=y + BR2_TARGET_GENERIC_GETTY_PORT="ttyAMA0" + BR2_LINUX_KERNEL=y + BR2_LINUX_KERNEL_CUSTOM_VERSION=y + BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.18.42" + BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y + BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="board/qemu/aarch64-virt/linux.config" + BR2_LINUX_KERNEL_NEEDS_HOST_OPENSSL=y + BR2_PACKAGE_HEAPTRACK=y + # BR2_TARGET_ROOTFS_TAR is not set + BR2_TARGET_ROOTFS_CPIO=y + """ + + def test_run(self): + cpio_file = os.path.join(self.builddir, "images", "rootfs.cpio") + kern = os.path.join(self.builddir, "images", "Image") + self.emulator.boot(arch="aarch64", + kernel=kern, + kernel_cmdline=["console=ttyAMA0"], + options=["-M", "virt", + "-cpu", "cortex-a57", + "-m", "256M", + "-initrd", cpio_file]) + + self.emulator.login() + + self.assertRunOk("/usr/bin/heaptrack --version") + self.assertRunOk("/usr/bin/heaptrack /bin/busybox") + self.assertRunOk("/usr/bin/heaptrack -o /tmp/ls.heaptrack ls -al /") + self.assertRunOk("/usr/bin/heaptrack_print --file /tmp/ls.heaptrack.gz") From a8dd506faabc65d3cd678141f4303a8d88968894 Mon Sep 17 00:00:00 2001 From: Alexander Shirokov Date: Mon, 24 Aug 2026 10:46:24 +0200 Subject: [PATCH 07/25] package/zellij: bump to version 0.45.0 Changelog: https://github.com/zellij-org/zellij/blob/v0.45.0/CHANGELOG.md Signed-off-by: Alexander Shirokov Signed-off-by: Julien Olivain --- package/zellij/zellij.hash | 2 +- package/zellij/zellij.mk | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/package/zellij/zellij.hash b/package/zellij/zellij.hash index ac6a219270..73ef5729db 100644 --- a/package/zellij/zellij.hash +++ b/package/zellij/zellij.hash @@ -1,3 +1,3 @@ # Locally generated -sha256 2a565f28d89c9e8caf2bad7a0f07f03747e3d3ee2d988297a41d1ffcfb034237 zellij-0.44.3-cargo6.tar.gz +sha256 ca775a98e78fc8b721dc3c67ca511733c3eaa106423652e621ae66b6d10ecbf8 zellij-0.45.0-cargo6.tar.gz sha256 9aa6c363b18a48eeecbffe13ff390c76ede2c90eb37ba17dfbbaffc42892d87d LICENSE.md diff --git a/package/zellij/zellij.mk b/package/zellij/zellij.mk index 4b4e7d6a3f..39cfe2e460 100644 --- a/package/zellij/zellij.mk +++ b/package/zellij/zellij.mk @@ -4,7 +4,7 @@ # ################################################################################ -ZELLIJ_VERSION = 0.44.3 +ZELLIJ_VERSION = 0.45.0 ZELLIJ_SITE = $(call github,zellij-org,zellij,v$(ZELLIJ_VERSION)) ZELLIJ_LICENSE = MIT ZELLIJ_LICENSE_FILES = LICENSE.md From 009d34015b44075e15c632a514511bdd27074aea Mon Sep 17 00:00:00 2001 From: Adrian Perez de Castro Date: Mon, 17 Aug 2026 18:10:02 +0200 Subject: [PATCH 08/25] package/libpsl: bump to version 0.23.3 The most relevant change is included in 0.23.0, which fixed handling of trailing dots (so e.g. "co.uk" and "co.uk." are treated as the same suffix). Otherwise, it's mostly cleanups and support for non-Linux platforms: https://github.com/rockdaboot/libpsl/releases/tag/0.22.0 https://github.com/rockdaboot/libpsl/releases/tag/0.23.0 https://github.com/rockdaboot/libpsl/releases/tag/0.23.2 https://github.com/rockdaboot/libpsl/releases/tag/0.23.3 The COPYING license file was changed to a symlink to LICENSE. The changed hash for the license file does not imply a license change: it is unchanged, but the copyright year was removed in favor of a note telling to check the Git history. See: https://github.com/rockdaboot/libpsl/commit/da5479661839e25783ee482e0180efc3d28f2428 Signed-off-by: Adrian Perez de Castro [Julien: - rename COPYING license file to LICENSE - add extra info in commit log ] Signed-off-by: Julien Olivain --- package/libpsl/libpsl.hash | 4 ++-- package/libpsl/libpsl.mk | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/package/libpsl/libpsl.hash b/package/libpsl/libpsl.hash index caf760c496..5446aa891e 100644 --- a/package/libpsl/libpsl.hash +++ b/package/libpsl/libpsl.hash @@ -1,6 +1,6 @@ # Locally generated -sha256 1dcc9ceae8b128f3c0b3f654decd0e1e891afc6ff81098f227ef260449dae208 libpsl-0.21.5.tar.gz +sha256 93941f85a1e7bd593fa94f299233cb5dfc91cd144fd9a78a6ceb75001c5b03be libpsl-0.23.3.tar.gz # Hashes for license files: -sha256 322392e6001b2b3b0fca705dc9f11f26e12441188ecde50eb1d22909980b2925 COPYING +sha256 e7c9f0d8498d28a360a7e8293ea70fd7bd952955b636938322c13d60a03b5a45 LICENSE sha256 1d7f52747a9169751cdf2641a8299c0098e9ecdf9429296ffd55bdb14c9ed5b3 src/LICENSE.chromium diff --git a/package/libpsl/libpsl.mk b/package/libpsl/libpsl.mk index d1a12f864c..95b7d38e6b 100644 --- a/package/libpsl/libpsl.mk +++ b/package/libpsl/libpsl.mk @@ -4,10 +4,10 @@ # ################################################################################ -LIBPSL_VERSION = 0.21.5 +LIBPSL_VERSION = 0.23.3 LIBPSL_SITE = https://github.com/rockdaboot/libpsl/releases/download/$(LIBPSL_VERSION) LIBPSL_LICENSE = MIT, BSD-3-Clause -LIBPSL_LICENSE_FILES = COPYING src/LICENSE.chromium +LIBPSL_LICENSE_FILES = LICENSE src/LICENSE.chromium LIBPSL_CONF_OPTS = -Dbuiltin=true LIBPSL_DEPENDENCIES = host-pkgconf LIBPSL_INSTALL_STAGING = YES From 4221e786e0be6efefc4fffbf1ec4ee2c4374e608 Mon Sep 17 00:00:00 2001 From: Giulio Benetti Date: Mon, 17 Aug 2026 23:42:50 +0200 Subject: [PATCH 09/25] package/libnspr: bump to version 4.39 Changelog: https://hg-edge.mozilla.org/projects/nspr/log/54e7c1b0803d151e142e30dc0d05f12e1ec67a13 Signed-off-by: Giulio Benetti Signed-off-by: Julien Olivain --- package/libnspr/libnspr.hash | 4 ++-- package/libnspr/libnspr.mk | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/package/libnspr/libnspr.hash b/package/libnspr/libnspr.hash index 9148cf393e..9a0da47e23 100644 --- a/package/libnspr/libnspr.hash +++ b/package/libnspr/libnspr.hash @@ -1,4 +1,4 @@ -# From https://ftp.mozilla.org/pub/nspr/releases/v4.38.2/src/SHA256SUMS -sha256 e4092faeab77bdc9b32db1113e4215948ee768e26c4666db3b5a60b35f2c9105 nspr-4.38.2.tar.gz +# From https://ftp.mozilla.org/pub/nspr/releases/v4.39/src/SHA256SUMS +sha256 bbd02ee87a55676063a63e5bc819e0227de2666b47307b2a0134414cdf42368e nspr-4.39.tar.gz # Locally calculated sha256 fab3dd6bdab226f1c08630b1dd917e11fcb4ec5e1e020e2c16f83a0a13863e85 nspr/LICENSE diff --git a/package/libnspr/libnspr.mk b/package/libnspr/libnspr.mk index 3c7351c2d7..49fcf30640 100644 --- a/package/libnspr/libnspr.mk +++ b/package/libnspr/libnspr.mk @@ -4,7 +4,7 @@ # ################################################################################ -LIBNSPR_VERSION = 4.38.2 +LIBNSPR_VERSION = 4.39 LIBNSPR_SOURCE = nspr-$(LIBNSPR_VERSION).tar.gz LIBNSPR_SITE = https://ftp.mozilla.org/pub/mozilla.org/nspr/releases/v$(LIBNSPR_VERSION)/src LIBNSPR_SUBDIR = nspr From 323f7e8492c87e1b761dbbc7d98fe0c535bd71da Mon Sep 17 00:00:00 2001 From: Giulio Benetti Date: Mon, 17 Aug 2026 23:42:51 +0200 Subject: [PATCH 10/25] package/libnss: bump version to 3.127 Rework local patch For release note, see: https://hg-edge.mozilla.org/projects/nss/file/8c4f491f6746da84126df5c422811e914f12367d/doc/src/releases/nss_3_127.md NOTE: libnss version 3.127 requires libnspr version 4.39. Signed-off-by: Giulio Benetti [Julien: fix libnspr version typo in commit log] Signed-off-by: Julien Olivain --- ...7768-Fix-build-failure-due-to-missing-gcm-stu.patch | 10 ++++++---- package/libnss/libnss.hash | 4 ++-- package/libnss/libnss.mk | 2 +- 3 files changed, 9 insertions(+), 7 deletions(-) diff --git a/package/libnss/0002-Bug-2027768-Fix-build-failure-due-to-missing-gcm-stu.patch b/package/libnss/0002-Bug-2027768-Fix-build-failure-due-to-missing-gcm-stu.patch index 1ddfc61576..f2c48c8fee 100644 --- a/package/libnss/0002-Bug-2027768-Fix-build-failure-due-to-missing-gcm-stu.patch +++ b/package/libnss/0002-Bug-2027768-Fix-build-failure-due-to-missing-gcm-stu.patch @@ -1,4 +1,4 @@ -From 974469740e6fa9b7ad15f6d9b3945370dc11fa1e Mon Sep 17 00:00:00 2001 +From 897ebeb9c38d4dc4844f5f414db5aaa17c261eee Mon Sep 17 00:00:00 2001 From: Giulio Benetti Date: Mon, 30 Mar 2026 17:06:14 +0200 Subject: [PATCH] Bug 2027768 - Fix build failure due to missing gcm stubs if @@ -16,6 +16,7 @@ DHAVE_PLATFORM_GHASH definition depending on LITTLE_ENDIAN VARIABLE. Upstream: https://bugzilla.mozilla.org/show_bug.cgi?id=2027768 Signed-off-by: Giulio Benetti +[Giulio: rebased to version 3.127] --- nss/coreconf/Linux.mk | 8 ++++++++ nss/lib/freebl/Makefile | 28 ++++++++++++++++++++++------ @@ -41,7 +42,7 @@ index dcb432415f..cf1f62378d 100644 ZLIB_LIBS = -lz diff --git a/lib/freebl/Makefile b/lib/freebl/Makefile -index 4ee9d61f50..39ef28ec8c 100644 +index 0ab50b093a..21c3cf62d8 100644 --- a/nss/lib/freebl/Makefile +++ b/nss/lib/freebl/Makefile @@ -112,7 +112,10 @@ endif @@ -68,7 +69,7 @@ index 4ee9d61f50..39ef28ec8c 100644 EXTRA_SRCS += aes-armv8.c ghash-aarch64.c sha1-armv8.c sha256-armv8.c else ifeq (1,$(CC_IS_GCC)) # GCC versions older than 4.9 don't support ARM AES. The check -@@ -146,18 +152,26 @@ ifeq ($(CPU_ARCH),aarch64) +@@ -146,11 +152,17 @@ ifeq ($(CPU_ARCH),aarch64) # and then rejects any major versions prior to 5. Note that # there has been no GCC 4.10, as it was renamed to GCC 5. ifneq (,$(filter 4.9,$(word 1,$(GCC_VERSION)).$(word 2,$(GCC_VERSION)))) @@ -88,6 +89,7 @@ index 4ee9d61f50..39ef28ec8c 100644 EXTRA_SRCS += aes-armv8.c ghash-aarch64.c sha1-armv8.c sha256-armv8.c endif endif +@@ -183,7 +195,9 @@ ifeq ($(CPU_ARCH),aarch64) endif ifeq ($(CPU_ARCH),arm) ifndef NSS_DISABLE_ARM32_NEON @@ -98,7 +100,7 @@ index 4ee9d61f50..39ef28ec8c 100644 EXTRA_SRCS += ghash-arm32-neon.c endif ifdef CC_IS_CLANG -@@ -290,7 +304,9 @@ ifeq ($(CPU_ARCH),arm) +@@ -316,7 +330,9 @@ ifeq ($(CPU_ARCH),arm) MPI_SRCS += mpi_arm.c endif ifeq ($(CPU_ARCH),ppc) diff --git a/package/libnss/libnss.hash b/package/libnss/libnss.hash index 544681c9a4..b87c3376b4 100644 --- a/package/libnss/libnss.hash +++ b/package/libnss/libnss.hash @@ -1,4 +1,4 @@ -# From https://ftp.mozilla.org/pub/security/nss/releases/NSS_3_125_RTM/src/SHA256SUMS -sha256 1ad541f10da7c58dec01f540ecc44d28cbbc033f741a57473de5a0893d91606d nss-3.125.tar.gz +# From https://ftp.mozilla.org/pub/security/nss/releases/NSS_3_127_RTM/src/SHA256SUMS +sha256 5a899cad21ae2c9d3c5132de79726eda8df3b7fdf18eeb239fc544d43b87338b nss-3.127.tar.gz # Locally calculated sha256 a20c1a32d1f8102432360b42e932869f7c11c7cdbacf9cac554c422132af47f4 nss/COPYING diff --git a/package/libnss/libnss.mk b/package/libnss/libnss.mk index c01d313da5..734376f61b 100644 --- a/package/libnss/libnss.mk +++ b/package/libnss/libnss.mk @@ -4,7 +4,7 @@ # ################################################################################ -LIBNSS_VERSION = 3.125 +LIBNSS_VERSION = 3.127 LIBNSS_SOURCE = nss-$(LIBNSS_VERSION).tar.gz LIBNSS_SITE = https://ftp.mozilla.org/pub/mozilla.org/security/nss/releases/NSS_$(subst .,_,$(LIBNSS_VERSION))_RTM/src LIBNSS_DISTDIR = dist From 7e6e19e97bda5fd399df9bb6d393a523b32ea2e3 Mon Sep 17 00:00:00 2001 From: Giulio Benetti Date: Thu, 27 Aug 2026 13:06:03 +0200 Subject: [PATCH 11/25] package/harfbuzz: bump version to 14.4.0 https://github.com/harfbuzz/harfbuzz/blob/14.4.0/NEWS Signed-off-by: Giulio Benetti Signed-off-by: Julien Olivain --- package/harfbuzz/harfbuzz.hash | 4 ++-- package/harfbuzz/harfbuzz.mk | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/package/harfbuzz/harfbuzz.hash b/package/harfbuzz/harfbuzz.hash index 3d7540f788..f8ee98e172 100644 --- a/package/harfbuzz/harfbuzz.hash +++ b/package/harfbuzz/harfbuzz.hash @@ -1,4 +1,4 @@ -# From https://github.com/harfbuzz/harfbuzz/releases/tag/14.3.1 -sha256 9dae9538aae2ffdf70cec31f2c27bf68e2aaeeae3112688467697d5faf6194f7 harfbuzz-14.3.1.tar.xz +# From https://github.com/harfbuzz/harfbuzz/releases/tag/14.4.0 +sha256 2357ed966c6ced7bfa720b0640c0231065af01158fbea215093ffa15aed44371 harfbuzz-14.4.0.tar.xz # Locally computed sha256 ba8f810f2455c2f08e2d56bb49b72f37fcf68f1f4fade38977cfd7372050ad64 COPYING diff --git a/package/harfbuzz/harfbuzz.mk b/package/harfbuzz/harfbuzz.mk index 909629d7d0..184253949e 100644 --- a/package/harfbuzz/harfbuzz.mk +++ b/package/harfbuzz/harfbuzz.mk @@ -4,7 +4,7 @@ # ################################################################################ -HARFBUZZ_VERSION = 14.3.1 +HARFBUZZ_VERSION = 14.4.0 HARFBUZZ_SITE = https://github.com/harfbuzz/harfbuzz/releases/download/$(HARFBUZZ_VERSION) HARFBUZZ_SOURCE = harfbuzz-$(HARFBUZZ_VERSION).tar.xz HARFBUZZ_LICENSE = MIT, ISC (ucdn library) From f48ae8880554fbd433b27dd3c585ad9585eddbfb Mon Sep 17 00:00:00 2001 From: Alexander Shirokov Date: Fri, 28 Aug 2026 08:04:52 +0200 Subject: [PATCH 12/25] package/broot: bump to version 1.59.0 Changelog: https://github.com/Canop/broot/blob/v1.59.0/CHANGELOG.md Signed-off-by: Alexander Shirokov Signed-off-by: Julien Olivain --- package/broot/broot.hash | 2 +- package/broot/broot.mk | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/package/broot/broot.hash b/package/broot/broot.hash index 176c663d62..a6d767c769 100644 --- a/package/broot/broot.hash +++ b/package/broot/broot.hash @@ -1,3 +1,3 @@ # Locally generated -sha256 cad8fb5e23b422aef80ea14797de7c709c97a5d2bb8019cddaea87811b17a652 broot-1.58.0-cargo6.tar.gz +sha256 5a0ac9419b66b7a7763c4ec0e53394b38e87b2cc11958aa6d352e6b4c74020a0 broot-1.59.0-cargo6.tar.gz sha256 89461664ce2aee7d80ea8fba7118fe7abd490d76ba435cf1d81d3128e060711f LICENSE diff --git a/package/broot/broot.mk b/package/broot/broot.mk index 91b35abd6b..2f1648fb6f 100644 --- a/package/broot/broot.mk +++ b/package/broot/broot.mk @@ -4,7 +4,7 @@ # ################################################################################ -BROOT_VERSION = 1.58.0 +BROOT_VERSION = 1.59.0 BROOT_SITE = $(call github,Canop,broot,v$(BROOT_VERSION)) BROOT_LICENSE = MIT BROOT_LICENSE_FILES = LICENSE From 2c36fe80fe2fc3352b0ade2fa9c19fd190bea9b9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Alexis=20Lothor=C3=A9=20via=20buildroot?= Date: Fri, 21 Aug 2026 19:11:42 +0200 Subject: [PATCH 13/25] package/qt5: relax openssl constraint to allow compatible implementations MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Qt5 can be built with or without openssl support. Following some build failures, commit a94d39d693d8 ("package/qt5: fix build failure due to libressl use") enforced libopenssl as the only valid implementation for Qt5 openssl support. While this solution is fine to filter between the two openssl variants officially supported by Buildroot, it prevents users bringing their own OpenSSL implementations (through the virtual package mechanism) from building Qt5 with openssl support, even if the custom implementation matches the expected OpenSSL API. Allow compatible external implementations to be provided for Qt5 openssl support. Relax the constraint by partially reverting a94d39d693d8 and checking that the selected openssl implementation isn't libressl. It then becomes up to users to ensure that the implementation they are providing is fully compatible with libopenssl's. Some qt5 sub-packages enforce BR2_PACKAGE_OPENSSL_FORCE_LIBOPENSSL, they don't need any update as it does not really strictly select libopenssl, it rather prevents libressl, so it still allows custom providers. Signed-off-by: Alexis Lothoré Signed-off-by: Thomas Petazzoni --- package/qt5/qt5base/qt5base.mk | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/package/qt5/qt5base/qt5base.mk b/package/qt5/qt5base/qt5base.mk index 159d411de8..3e54465ed7 100644 --- a/package/qt5/qt5base/qt5base.mk +++ b/package/qt5/qt5base/qt5base.mk @@ -230,8 +230,16 @@ else QT5BASE_CONFIGURE_OPTS += -no-eglfs endif -QT5BASE_CONFIGURE_OPTS += $(if $(BR2_PACKAGE_LIBOPENSSL),-openssl,-no-openssl) -QT5BASE_DEPENDENCIES += $(if $(BR2_PACKAGE_LIBOPENSSL),openssl) +# Qt5 officially only supports OpenSSL. Users can also provide their own +# OpenSSL variant through the virtual package mechanism, but it is then up +# to them to ensure that the provided API is exactly compatible with the +# libopenssl one +ifeq ($(BR2_PACKAGE_OPENSSL):$(BR2_PACKAGE_LIBRESSL),y:) +QT5BASE_CONFIGURE_OPTS += -openssl +QT5BASE_DEPENDENCIES += openssl +else +QT5BASE_CONFIGURE_OPTS += -no-openssl +endif QT5BASE_CONFIGURE_OPTS += $(if $(BR2_PACKAGE_QT5BASE_FONTCONFIG),-fontconfig,-no-fontconfig) QT5BASE_DEPENDENCIES += $(if $(BR2_PACKAGE_QT5BASE_FONTCONFIG),fontconfig) From 6851345aa8838e976cbbb1ce558bcfa0b158eaf5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Alexis=20Lothor=C3=A9=20via=20buildroot?= Date: Sun, 23 Aug 2026 23:49:38 +0200 Subject: [PATCH 14/25] package/erlang: fix link failure on odbcserver MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit host-erlang build can fail with the following error: make[5]: Nothing to be done for 'opt'. MAKE opt CC ../priv/bin/x86_64-pc-linux-gnu/odbcserver /usr/bin/ld: ../priv/obj/x86_64-pc-linux-gnu/odbcserver.o: in function `encode_column_dyn': odbcserver.c:(.text+0x6b4): undefined reference to `ei_x_encode_tuple_header' /usr/bin/ld: odbcserver.c:(.text+0x6c2): undefined reference to `ei_x_encode_tuple_header' /usr/bin/ld: odbcserver.c:(.text+0x6d4): undefined reference to `ei_x_encode_ulong' /usr/bin/ld: odbcserver.c:(.text+0x6e7): undefined reference to `ei_x_encode_ulong' /usr/bin/ld: odbcserver.c:(.text+0x6fa): undefined reference to `ei_x_encode_ulong' /usr/bin/ld: odbcserver.c:(.text+0x708): undefined reference to `ei_x_encode_tuple_header' /usr/bin/ld: odbcserver.c:(.text+0x71b): undefined reference to `ei_x_encode_ulong' /usr/bin/ld: odbcserver.c:(.text+0x72e): undefined reference to `ei_x_encode_ulong' [...] This can be reproduced with the following minimal defconfig (and libei.so present on host, see details below): BR2_x86_64=y BR2_TOOLCHAIN_EXTERNAL=y BR2_PACKAGE_ERLANG=y Those missing symbols are part of the erl_interface, exposed by libei.a. host-erlang builds correctly libei.a _before_ odbcserver.c (it can be found in lib/erl_interface/obj/x86_64-pc-linux-gnu/libei.a), but the failure is actually due to the build command generated and used for odbcserver.c, especially the link arguments: /usr/bin/gcc \ [...] -o ../priv/bin/x86_64-pc-linux-gnu/odbcserver \ ../priv/obj/x86_64-pc-linux-gnu/odbcserver.o \ -L/usr/lib64 \ -lodbc \ -L/home/alexis/src/buildroot/erlang-master/build/host-erlang-custom/lib/erl_interface/obj/x86_64-pc-linux-gnu \ -lpthread -lei /usr/lib64 is searched before the path where libei.a has been built, so if whether a valid libei.a or libei.so is found there, it shadows the expected libei.a. In the build from which the logs above come, the notable point is that the host system indeed have a valid libei.so, but is completely unrelated to erl_interface; it rather exposes the Emulated Input protocol aimed at Wayland stack; and so it obviously contains none of the expected ei_* symbols. Upstream has already identified and fixed the issue, the fix is already released in versions >= 27.x.y. Erlang 26 (the version currently packaged in buildroot), isn't supported anymore (only the three latest releases are supported, see https://github.com/erlang/otp/blob/master/SECURITY.md), so there won't be any new minor update that will release this fix. Pick and backport the fixing patch so that the current version packaged in buildroot can still build. The issue affects 2025.02.x, 2026.05.x and master. Signed-off-by: Alexis Lothoré Signed-off-by: Thomas Petazzoni --- ...der-to-avoid-picking-up-system-libei.patch | 32 +++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100644 package/erlang/0001-Change-libs-order-to-avoid-picking-up-system-libei.patch diff --git a/package/erlang/0001-Change-libs-order-to-avoid-picking-up-system-libei.patch b/package/erlang/0001-Change-libs-order-to-avoid-picking-up-system-libei.patch new file mode 100644 index 0000000000..c21311cbb3 --- /dev/null +++ b/package/erlang/0001-Change-libs-order-to-avoid-picking-up-system-libei.patch @@ -0,0 +1,32 @@ +From de58cbe979942308eb8823a526cd68b06d5dc662 Mon Sep 17 00:00:00 2001 +From: Sacha +Date: Wed, 13 Mar 2024 13:28:41 +0100 +Subject: [PATCH] Change libs order to avoid picking up system libei + +Upstream: https://github.com/erlang/otp/commit/de58cbe +Signed-off-by: Alexis Lothoré +--- + lib/odbc/c_src/Makefile.in | 6 +++--- + 1 file changed, 3 insertions(+), 3 deletions(-) + +diff --git a/lib/odbc/c_src/Makefile.in b/lib/odbc/c_src/Makefile.in +index d1b26743a6a4..03ed314f6a26 100644 +--- a/lib/odbc/c_src/Makefile.in ++++ b/lib/odbc/c_src/Makefile.in +@@ -80,10 +80,10 @@ ODBC_INCLUDE = @ODBC_INCLUDE@ + # ---------------------------------------------------- + CC = @CC@ + CFLAGS = $(TYPEFLAGS) @CFLAGS@ @THR_DEFS@ @DEFS@ +-EI_LDFLAGS = -L$(EI_ROOT)/obj$(TYPEMARKER)/$(TARGET) ++EI_LDFLAGS = -L$(EI_ROOT)/obj$(TYPEMARKER)/$(TARGET) $(EI_LIB) + LD = @LD@ +-LDFLAGS = $(ODBC_LIB) $(EI_LDFLAGS) +-LIBS = @LIBS@ @THR_LIBS@ $(EI_LIB) ++LDFLAGS = $(EI_LDFLAGS) $(ODBC_LIB) ++LIBS = @LIBS@ @THR_LIBS@ + INCLUDES = -I. $(ODBC_INCLUDE) $(EI_INCLUDE) + TARGET_FLAGS = @TARGET_FLAGS@ + +-- +2.55.0 + From 9c18b1668b068e48364fb41c1d62a7903b04d03c Mon Sep 17 00:00:00 2001 From: Mattia Narducci Date: Sun, 16 Aug 2026 21:56:06 +0200 Subject: [PATCH 15/25] package/gensio: bump version to 3.0.4 Changelog: https://sourceforge.net/p/ser2net/news Static builds are no longer supported starting with version 2.6.0 [1] even when compiling all modules (gensios) in the library. Updated licenses hashes due to upstream commit: https://github.com/cminyard/gensio/commit/859e4465cf5788cb99da1002a4c38cd8841c1bb7 Removed patch 0001 which is now upstream. [1] https://github.com/cminyard/gensio/commit/7b3786f5fb733cd593e631a7b75d4b47f5a4b95f Signed-off-by: Mattia Narducci Signed-off-by: Thomas Petazzoni --- .checkpackageignore | 1 - ...PKEY_ED25519-build-error-on-libressl.patch | 105 ------------------ package/gensio/Config.in | 6 + package/gensio/gensio.hash | 10 +- package/gensio/gensio.mk | 3 +- package/ser2net/Config.in | 6 + 6 files changed, 19 insertions(+), 112 deletions(-) delete mode 100644 package/gensio/0001-Fix-missing-EVP_PKEY_ED25519-build-error-on-libressl.patch diff --git a/.checkpackageignore b/.checkpackageignore index c3ec943075..2b61ff3bab 100644 --- a/.checkpackageignore +++ b/.checkpackageignore @@ -380,7 +380,6 @@ package/gdb/17.1/0007-fix-musl-build-on-riscv.patch lib_patch.Upstream package/gdb/17.1/0008-gdbserver-Makefile.in-fix-NLS-build.patch lib_patch.Upstream package/gdb/17.1/0009-gdb-Fix-native-build-on-xtensa.patch lib_patch.Upstream package/genpart/0001-fix-return-code.patch lib_patch.Upstream -package/gensio/0001-Fix-missing-EVP_PKEY_ED25519-build-error-on-libressl.patch lib_patch.Upstream package/gerbera/S99gerbera lib_sysv.Indent package/git-crypt/0001-fix-build-with-libressl-3.5.0.patch lib_patch.Upstream package/glorytun/0001-Add-support-for-Apple-silicon.patch lib_patch.Upstream diff --git a/package/gensio/0001-Fix-missing-EVP_PKEY_ED25519-build-error-on-libressl.patch b/package/gensio/0001-Fix-missing-EVP_PKEY_ED25519-build-error-on-libressl.patch deleted file mode 100644 index e9087aa3e5..0000000000 --- a/package/gensio/0001-Fix-missing-EVP_PKEY_ED25519-build-error-on-libressl.patch +++ /dev/null @@ -1,105 +0,0 @@ -From 1e7071684329f23ee3447310d203d193c283979e Mon Sep 17 00:00:00 2001 -From: James Hilliard -Date: Wed, 5 Oct 2022 15:30:32 -0600 -Subject: [PATCH] Fix missing EVP_PKEY_ED25519 build error on libressl -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -Fixes: -gensio_filter_certauth.c: In function ‘v3_certauth_add_challenge_rsp’: -gensio_filter_certauth.c:838:44: error: ‘EVP_PKEY_ED25519’ undeclared (first use in this function); did you mean ‘EVP_PKEY_DSA1’? - 838 | if (EVP_PKEY_base_id(sfilter->pkey) == EVP_PKEY_ED25519) { - | ^~~~~~~~~~~~~~~~ - | EVP_PKEY_DSA1 -gensio_filter_certauth.c:838:44: note: each undeclared identifier is reported only once for each function it appears in -gensio_filter_certauth.c: In function ‘certauth_add_challenge_rsp’: -gensio_filter_certauth.c:901:44: error: ‘EVP_PKEY_ED25519’ undeclared (first use in this function); did you mean ‘EVP_PKEY_DSA1’? - 901 | if (EVP_PKEY_base_id(sfilter->pkey) == EVP_PKEY_ED25519) - | ^~~~~~~~~~~~~~~~ - | EVP_PKEY_DSA1 -gensio_filter_certauth.c: In function ‘certauth_check_challenge’: -gensio_filter_certauth.c:1048:35: error: ‘EVP_PKEY_ED25519’ undeclared (first use in this function); did you mean ‘EVP_PKEY_DSA1’? - 1048 | if (EVP_PKEY_base_id(pkey) == EVP_PKEY_ED25519) - | ^~~~~~~~~~~~~~~~ - | EVP_PKEY_DSA1 - -Signed-off-by: Corey Minyard -[Retrieved from: -https://github.com/cminyard/gensio/commit/1e7071684329f23ee3447310d203d193c283979e] -Signed-off-by: Fabrice Fontaine ---- - lib/gensio_filter_certauth.c | 6 ++++++ - tools/gtlssh-keygen.c | 11 ++++++++++- - 2 files changed, 16 insertions(+), 1 deletion(-) - -diff --git a/lib/gensio_filter_certauth.c b/lib/gensio_filter_certauth.c -index 642379b6..c4552e79 100644 ---- a/lib/gensio_filter_certauth.c -+++ b/lib/gensio_filter_certauth.c -@@ -835,11 +835,13 @@ v3_certauth_add_challenge_rsp(struct certauth_filter *sfilter) - unsigned int lenpos, len; - int rv = 0; - -+#ifdef EVP_PKEY_ED25519 - if (EVP_PKEY_base_id(sfilter->pkey) == EVP_PKEY_ED25519) { - gca_log_err(sfilter, - "Remote end or SSL too old to support ed25519 key"); - return GE_KEYINVALID; - } -+#endif - - certauth_write_byte(sfilter, CERTAUTH_CHALLENGE_RSP); - lenpos = sfilter->write_buf_len; -@@ -898,8 +900,10 @@ certauth_add_challenge_rsp(struct certauth_filter *sfilter) - if (sfilter->version < 4 || sfilter->my_version < 4) - return v3_certauth_add_challenge_rsp(sfilter); - -+#ifdef EVP_PKEY_ED25519 - if (EVP_PKEY_base_id(sfilter->pkey) == EVP_PKEY_ED25519) - digest = NULL; -+#endif - - certauth_write_byte(sfilter, CERTAUTH_CHALLENGE_RSP); - lenpos = sfilter->write_buf_len; -@@ -1045,8 +1049,10 @@ certauth_check_challenge(struct certauth_filter *sfilter) - goto out_nomem; - } - -+#ifdef EVP_PKEY_ED25519 - if (EVP_PKEY_base_id(pkey) == EVP_PKEY_ED25519) - digest = NULL; -+#endif - - if (!EVP_DigestVerifyInit(sign_ctx, NULL, digest, NULL, pkey)) { - gca_logs_err(sfilter, "Digest verify init failed"); -diff --git a/tools/gtlssh-keygen.c b/tools/gtlssh-keygen.c -index c8c28937..0779dd78 100644 ---- a/tools/gtlssh-keygen.c -+++ b/tools/gtlssh-keygen.c -@@ -108,7 +108,12 @@ help(const char *progname) - P(" The default is your username for normal certificates and\n"); - P(" the fully qualified domain name for server certificates.\n"); - P(" --algorithm - Set the algorithm to use for the key,\n"); -- P(" either ed25519, rsa or ec. The default is ed25519.\n"); -+ P(" either ed25519, rsa or ec. "); -+#ifdef EVP_PKEY_ED25519 -+ P("The default is ed25519.\n"); -+#else -+ P("The default is ec.\n"); -+#endif - P(" --force, -f - Don't ask questions, just do the operation. This\n"); - P(" may overwrite data without asking.\n"); - P(" --version - Print the version number and exit.\n"); -@@ -831,7 +836,11 @@ genpkey_ed25519(const char *key) - return rc != 0; - } - -+#ifdef EVP_PKEY_ED25519 - static int (*genpkey)(const char *key) = genpkey_ed25519; -+#else -+static int (*genpkey)(const char *key) = genpkey_ec; -+#endif - - /* - * Create a single key. If name is NULL, it's a server key, otherwise diff --git a/package/gensio/Config.in b/package/gensio/Config.in index fd0e476970..6bb18820bf 100644 --- a/package/gensio/Config.in +++ b/package/gensio/Config.in @@ -1,9 +1,15 @@ config BR2_PACKAGE_GENSIO bool "gensio" depends on BR2_USE_MMU # fork() + depends on !BR2_STATIC_LIBS # dlfcn.h depends on BR2_TOOLCHAIN_HAS_ATOMIC help A library to abstract stream I/O like serial port, TCP, telnet, UDP, SSL, IPMI SOL, etc. https://github.com/cminyard/gensio + +comment "gensio needs a toolchain w/ dynamic library" + depends on BR2_USE_MMU + depends on BR2_TOOLCHAIN_HAS_ATOMIC + depends on BR2_STATIC_LIBS diff --git a/package/gensio/gensio.hash b/package/gensio/gensio.hash index 84af3fdab1..7cbc4fb9ac 100644 --- a/package/gensio/gensio.hash +++ b/package/gensio/gensio.hash @@ -1,7 +1,7 @@ # From https://sourceforge.net/projects/ser2net/files/ser2net/ -md5 c8d65e1809ed5cd1138fa309e3ab0e94 gensio-2.5.5.tar.gz -sha1 076fc8324dedb658972a88c738131a409968e2ba gensio-2.5.5.tar.gz +md5 43a826835c044dada38a7fba6ae2afbe gensio-3.0.4.tar.gz +sha1 76cb782125140db9d9f3c0bfd810c7b94d084a50 gensio-3.0.4.tar.gz +sha256 e28c24fc5d9f3cb90005bc008fec8bb8eedce503753024ab650bed0ac250cbe3 gensio-3.0.4.tar.gz # Locally computed: -sha256 63c5fff536efd080fb7bc7fa084331c19fc64abd42b7f2bec86bd77b4fd10840 gensio-2.5.5.tar.gz -sha256 501f3108e6c03e5a0a5585ebaaa369171aead5319cd0a7a4dc1f66211c1f09f1 COPYING -sha256 dcac7d447dd81ab96d28dce00a07a6486e623f7ded94e2a2a8e83312405cdf89 COPYING.LIB +sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 COPYING +sha256 dc626520dcd53a22f727af3ee42c770e56c97a64fe3adb063799d8ab032fe551 COPYING.LIB diff --git a/package/gensio/gensio.mk b/package/gensio/gensio.mk index 2ba1b950d7..8fc21fab01 100644 --- a/package/gensio/gensio.mk +++ b/package/gensio/gensio.mk @@ -4,7 +4,7 @@ # ################################################################################ -GENSIO_VERSION = 2.5.5 +GENSIO_VERSION = 3.0.4 GENSIO_SITE = http://downloads.sourceforge.net/project/ser2net/ser2net GENSIO_LICENSE = LGPL-2.1+ (library), GPL-2.0+ (tools) GENSIO_LICENSE_FILES = COPYING.LIB COPYING @@ -12,6 +12,7 @@ GENSIO_INSTALL_STAGING = YES GENSIO_CONF_OPTS = \ --without-swig \ --without-python +GENSIO_AUTORECONF = YES ifeq ($(BR2_INSTALL_LIBSTDCPP),y) GENSIO_CONF_OPTS += --with-cplusplus diff --git a/package/ser2net/Config.in b/package/ser2net/Config.in index 1859d42c8f..87ace59deb 100644 --- a/package/ser2net/Config.in +++ b/package/ser2net/Config.in @@ -1,6 +1,7 @@ config BR2_PACKAGE_SER2NET bool "ser2net" depends on BR2_USE_MMU # fork() + depends on !BR2_STATIC_LIBS # gensio depends on BR2_TOOLCHAIN_HAS_ATOMIC # gensio select BR2_PACKAGE_GENSIO select BR2_PACKAGE_LIBYAML @@ -9,3 +10,8 @@ config BR2_PACKAGE_SER2NET connection to a serial port. http://ser2net.sourceforge.net + +comment "ser2net needs a toolchain w/ dynamic library" + depends on BR2_USE_MMU + depends on BR2_TOOLCHAIN_HAS_ATOMIC + depends on BR2_STATIC_LIBS From e9c340a3947b7ae2c415bdbee6f76b568a257424 Mon Sep 17 00:00:00 2001 From: Mattia Narducci Date: Sun, 16 Aug 2026 21:56:07 +0200 Subject: [PATCH 16/25] package/gensio: add udev optional dependency Udev is an optional dependency used to directly control cm108 sound device gpios. It is enabled by default since version 2.6.3: https://github.com/cminyard/gensio/commit/c1b5c0a214b85026f1d8c97bd79aae038fef733b Signed-off-by: Mattia Narducci Signed-off-by: Thomas Petazzoni --- package/gensio/gensio.mk | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/package/gensio/gensio.mk b/package/gensio/gensio.mk index 8fc21fab01..0c3ca5e03b 100644 --- a/package/gensio/gensio.mk +++ b/package/gensio/gensio.mk @@ -34,6 +34,13 @@ else GENSIO_CONF_OPTS += --without-mdns endif +ifeq ($(BR2_PACKAGE_HAS_UDEV),y) +GENSIO_DEPENDENCIES += udev +GENSIO_CONF_OPTS += --with-udev +else +GENSIO_CONF_OPTS += --without-udev +endif + ifeq ($(BR2_PACKAGE_LIBGLIB2),y) GENSIO_DEPENDENCIES += host-pkgconf libglib2 GENSIO_CONF_OPTS += --with-glib From 1982fdeaa4aa3d5656717bacffc4b1e78bfd6b26 Mon Sep 17 00:00:00 2001 From: Mattia Narducci Date: Sun, 16 Aug 2026 21:56:08 +0200 Subject: [PATCH 17/25] package/gensio: add portaudio optional dependency Portaudio is an optional dependency which is enabled by default since version 2.7.3 when alsa-lib is not available: https://github.com/cminyard/gensio/commit/71eef5e3cef2232eed85c5cb604bdf5fe3ebf580 Signed-off-by: Mattia Narducci Signed-off-by: Thomas Petazzoni --- package/gensio/gensio.mk | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/package/gensio/gensio.mk b/package/gensio/gensio.mk index 0c3ca5e03b..40cb0df514 100644 --- a/package/gensio/gensio.mk +++ b/package/gensio/gensio.mk @@ -62,6 +62,13 @@ else GENSIO_CONF_OPTS += --without-openssl endif +ifeq ($(BR2_PACKAGE_PORTAUDIO),y) +GENSIO_DEPENDENCIES += portaudio +GENSIO_CONF_OPTS += --with-portaudio +else +GENSIO_CONF_OPTS += --without-portaudio +endif + ifeq ($(BR2_TOOLCHAIN_HAS_LIBATOMIC),y) GENSIO_CONF_ENV += LIBS=-latomic endif From ed881dfca758240ee304e5a042ffc3f7c47f31d2 Mon Sep 17 00:00:00 2001 From: Mattia Narducci Date: Sun, 16 Aug 2026 21:56:09 +0200 Subject: [PATCH 18/25] package/ser2net: bump version to 4.6.8 Changelog: https://sourceforge.net/p/ser2net/news Updated licenses hashes due to upstream commit: https://github.com/cminyard/ser2net/commit/2bc83f09548dec25b0bec48e11a3ee1942fb3c3e Drop patch 0001 that was a backport of a upstream security fix. Add a upstream patch to fix build against uClibc. Signed-off-by: Mattia Narducci Signed-off-by: Thomas Petazzoni --- ...-crypt-when-crypt_r-is-not-available.patch | 140 ++++++++++++++++++ ...0001-Fix-authorization-path-handling.patch | 89 ----------- package/ser2net/Config.in | 1 + package/ser2net/ser2net.hash | 8 +- package/ser2net/ser2net.mk | 8 +- 5 files changed, 152 insertions(+), 94 deletions(-) create mode 100644 package/ser2net/0001-Fallback-to-crypt-when-crypt_r-is-not-available.patch delete mode 100644 package/ser2net/0001-Fix-authorization-path-handling.patch diff --git a/package/ser2net/0001-Fallback-to-crypt-when-crypt_r-is-not-available.patch b/package/ser2net/0001-Fallback-to-crypt-when-crypt_r-is-not-available.patch new file mode 100644 index 0000000000..a90095fd89 --- /dev/null +++ b/package/ser2net/0001-Fallback-to-crypt-when-crypt_r-is-not-available.patch @@ -0,0 +1,140 @@ +From 6af8ca88193b66b0309d9ca355d6c551e0fc1fbe Mon Sep 17 00:00:00 2001 +From: Mattia Narducci +Date: Fri, 14 Aug 2026 21:55:11 +0200 +Subject: [PATCH] Fallback to crypt() when crypt_r() is not available + +Use crypt(3) for hashed passwords on systems where libcrypt does not +provide the reentrant crypt_r(3), eg. uClibc. Calls to crypt() are +guarded by a global lock. + +Signed-off-by: Mattia Narducci +Signed-off-by: Corey Minyard + +Upstream: https://github.com/cminyard/ser2net/commit/6af8ca88193b66b0309d9ca355d6c551e0fc1fbe + +Signed-off-by: Mattia Narducci +--- + auth.c | 12 ++++++++++++ + configure.ac | 11 ++++++----- + ser2net.c | 14 ++++++++++++++ + ser2net.h | 4 ++++ + 4 files changed, 36 insertions(+), 5 deletions(-) + +diff --git a/auth.c b/auth.c +index 7e53069..1af057b 100644 +--- a/auth.c ++++ b/auth.c +@@ -33,6 +33,10 @@ + #include + #include "ser2net.h" + ++#ifndef HAVE_CRYPT_R ++#include ++#endif ++ + #if defined(USE_PAM) + #include + #include +@@ -288,7 +292,9 @@ handle_password(struct gensio *net, const char *authdir, const char *password) + char readpw[256], *s; + int err; + bool hashed = true; ++#ifdef HAVE_CRYPT_R + struct crypt_data cdata; ++#endif + char *newhash; + + len = sizeof(username); +@@ -341,7 +347,13 @@ handle_password(struct gensio *net, const char *authdir, const char *password) + return GE_NOTSUP; + } + ++#ifdef HAVE_CRYPT_R + newhash = crypt_r(password, readpw, &cdata); ++#else ++ gensio_os_funcs_lock(so, crypt_lock); ++ newhash = crypt(password, readpw); ++ gensio_os_funcs_unlock(so, crypt_lock); ++#endif + if (!newhash) + return GE_NOTSUP; + +diff --git a/configure.ac b/configure.ac +index 1ac44f2..1814286 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -39,11 +39,12 @@ if test "x$use_pam" != "xno"; then + AC_DEFINE([USE_PAM], [], [Enable PAM support]) + fi + +-have_crypt_r=no +-AC_CHECK_LIB(crypt, crypt_r, [have_crypt_r=yes], []) +-if test $have_crypt_r != "yes"; then +- AC_MSG_ERROR([No libcrypt with crypt_r()]) +-fi ++AC_CHECK_LIB(crypt, crypt_r, ++ [AC_DEFINE([HAVE_CRYPT_R], [1], [Define if you have crypt_r() in libcrypt])], ++ [AC_CHECK_LIB(crypt, crypt, [], ++ [AC_MSG_ERROR([No libcrypt with crypt_r() or crypt()])] ++ )] ++) + LIBS="$LIBS -lcrypt" + + AC_ARG_WITH(sysfs-led-support, +diff --git a/ser2net.c b/ser2net.c +index 04cbb00..17e0c23 100644 +--- a/ser2net.c ++++ b/ser2net.c +@@ -604,6 +604,9 @@ do_detach(void) + + static struct gensio_lock *config_lock; + static struct gensio_lock *maint_lock; ++#ifndef HAVE_CRYPT_R ++struct gensio_lock *crypt_lock; ++#endif + + static int in_config_read = 0; + +@@ -1011,6 +1014,14 @@ main(int argc, char *argv[]) + return 1; + } + ++#ifndef HAVE_CRYPT_R ++ crypt_lock = gensio_os_funcs_alloc_lock(so); ++ if (!crypt_lock) { ++ fprintf(stderr, "Could not alloc ser2net crypt lock\n"); ++ return 1; ++ } ++#endif ++ + err = init_dataxfer(); + if (err) { + fprintf(stderr, +@@ -1098,6 +1109,9 @@ main(int argc, char *argv[]) + if (config_lines) + free(config_lines); + ++#ifndef HAVE_CRYPT_R ++ gensio_os_funcs_free_lock(so, crypt_lock); ++#endif + gensio_os_funcs_free_lock(so, maint_lock); + gensio_os_funcs_free_lock(so, config_lock); + gensio_os_funcs_free(so); +diff --git a/ser2net.h b/ser2net.h +index 8bc9227..d9e361b 100644 +--- a/ser2net.h ++++ b/ser2net.h +@@ -66,6 +66,10 @@ int sub_time(gensio_time *left, gensio_time *right); + integer was invalid. Spaces are not handled. */ + int scan_int(const char *str); + ++#ifndef HAVE_CRYPT_R ++/* Used to avoid races in crypt() when crypt_r() is not available */ ++extern struct gensio_lock *crypt_lock; ++#endif + /* + * Handle authorization events from accepters. + */ +-- +2.55.0 + diff --git a/package/ser2net/0001-Fix-authorization-path-handling.patch b/package/ser2net/0001-Fix-authorization-path-handling.patch deleted file mode 100644 index a90130844f..0000000000 --- a/package/ser2net/0001-Fix-authorization-path-handling.patch +++ /dev/null @@ -1,89 +0,0 @@ -From fa6c2a8840cbc8d7622e46ce12ba15ecc0fb51b7 Mon Sep 17 00:00:00 2001 -From: Corey Minyard -Date: Thu, 23 Jul 2026 10:51:25 -0500 -Subject: [PATCH] Fix authorization path handling - -The username is received from the remote end and thus untrusted. Make -sure it doesn't have any characters that can cause it to escape the -directory it is supposed to be in when constructing a path. - -Reported-by: TristanInSec -Signed-off-by: Corey Minyard - -Upstream: https://github.com/cminyard/ser2net/commit/fa6c2a8840cbc8d7622e46ce12ba15ecc0fb51b7 - -Signed-off-by: Mattia Narducci ---- - auth.c | 42 ++++++++++++++++++++++++++++++++++++++---- - 1 file changed, 38 insertions(+), 4 deletions(-) - -diff --git a/auth.c b/auth.c -index 95c80b4..53c3186 100644 ---- a/auth.c -+++ b/auth.c -@@ -185,6 +185,40 @@ handle_auth_begin(struct gensio *net, const char *authdir, const char *pamauth, - return GE_NOTSUP; - } - -+/* -+ * Construct a secure authorization path. -+ * -+ * filename must be at least MAX_PATH. -+ * -+ * "username" is untrusted, the rest of the data is trusted. -+ */ -+static bool -+construct_auth_path(char *filename, const char *authdir, const char *username, -+ const char *format, ...) -+{ -+ size_t baselen; -+ va_list ap; -+ -+ /* -+ * '/', '.', and '\' are all parts of things that can modify the base -+ * path. Don't allow them in usernames. -+ */ -+ if (strchr(username, '.') || strchr(username, '/') -+ || strchr(username, '\\')) -+ return false; -+ -+ /* Get a good base path ending in / */ -+ baselen = snprintf(filename, PATH_MAX, "%s/%s/", -+ authdir, username); -+ -+ /* Now append the rest of the path. */ -+ va_start(ap, format); -+ vsnprintf(filename + baselen, PATH_MAX - baselen, format, ap); -+ va_end(ap); -+ -+ return true; -+} -+ - static int - handle_precert(struct gensio *net, const char *authdir) - { -@@ -228,8 +262,8 @@ handle_precert(struct gensio *net, const char *authdir) - } - } - -- snprintf(filename, sizeof(filename), "%s/%s/allowed_certs/", -- authdir, s); -+ if (!construct_auth_path(filename, authdir, s, "allowed_certs/")) -+ return GE_AUTHREJECT; - err = gensio_control(net, 0, false, GENSIO_CONTROL_CERT_AUTH, - filename, &len); - if (err && err != GE_CERTNOTFOUND) { -@@ -258,8 +292,8 @@ handle_password(struct gensio *net, const char *authdir, const char *password) - return GE_AUTHREJECT; - } - -- snprintf(filename, sizeof(filename), "%s/%s/password", -- authdir, username); -+ if (!construct_auth_path(filename, authdir, username, "password")) -+ return GE_AUTHREJECT; - pwfile = fopen(filename, "r"); - if (!pwfile) { - syslog(LOG_ERR, "Can't open password file %s: %s", filename, --- -2.55.0 - diff --git a/package/ser2net/Config.in b/package/ser2net/Config.in index 87ace59deb..e3e8f051c8 100644 --- a/package/ser2net/Config.in +++ b/package/ser2net/Config.in @@ -4,6 +4,7 @@ config BR2_PACKAGE_SER2NET depends on !BR2_STATIC_LIBS # gensio depends on BR2_TOOLCHAIN_HAS_ATOMIC # gensio select BR2_PACKAGE_GENSIO + select BR2_PACKAGE_LIBXCRYPT if BR2_TOOLCHAIN_USES_GLIBC select BR2_PACKAGE_LIBYAML help Ser2net provides a way for a user to connect from a network diff --git a/package/ser2net/ser2net.hash b/package/ser2net/ser2net.hash index 50a2efdee8..19ced28655 100644 --- a/package/ser2net/ser2net.hash +++ b/package/ser2net/ser2net.hash @@ -1,6 +1,6 @@ # From https://sourceforge.net/projects/ser2net/files/ser2net/ -md5 73b4ccc7e9d89034f1a1a20a780b9da9 ser2net-4.3.8.tar.gz -sha1 d1597d88d154489cb08bac69bb1772712d30cbcd ser2net-4.3.8.tar.gz +md5 91594fb9c1d8e03a99a1739539919eba ser2net-4.6.8.tar.gz +sha1 ee8c12ce23ee3ebc54a845c2416bee0b6f4ea18c ser2net-4.6.8.tar.gz # Locally computed: -sha256 e5620975523059a38709bb53c0567600adbbcb8011066a2d2fe1b4db9efe0ba3 ser2net-4.3.8.tar.gz -sha256 501f3108e6c03e5a0a5585ebaaa369171aead5319cd0a7a4dc1f66211c1f09f1 COPYING +sha256 e651adcc4cc0d0ceaa36e5997dab9ea7f8aea732b4c87ba6018d2dcc88fbe8e3 ser2net-4.6.8.tar.gz +sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 COPYING diff --git a/package/ser2net/ser2net.mk b/package/ser2net/ser2net.mk index 679aaec29a..bd8f9dc399 100644 --- a/package/ser2net/ser2net.mk +++ b/package/ser2net/ser2net.mk @@ -4,11 +4,17 @@ # ################################################################################ -SER2NET_VERSION = 4.3.8 +SER2NET_VERSION = 4.6.8 SER2NET_SITE = https://downloads.sourceforge.net/project/ser2net/ser2net SER2NET_LICENSE = GPL-2.0+ SER2NET_LICENSE_FILES = COPYING SER2NET_DEPENDENCIES = gensio libyaml +# We are patching configure.ac +SER2NET_AUTORECONF = YES + +ifeq ($(BR2_PACKAGE_LIBXCRYPT),y) +SER2NET_DEPENDENCIES += libxcrypt +endif ifeq ($(BR2_TOOLCHAIN_HAS_THREADS),y) SER2NET_CONF_OPTS += --with-pthreads From 798741f4dc8da3baed0c7947d459d9d4223d90d4 Mon Sep 17 00:00:00 2001 From: Christian Stewart Date: Sun, 30 Aug 2026 20:10:29 -0400 Subject: [PATCH 19/25] package/go: new major version 1.27 Bump to go1.27.0. The go-bootstrap-stage5 package (go1.25.x) still satisfies the bootstrap requirement, so no bootstrap stage changes are needed. Remove the workaround for https://github.com/golang/go/issues/77436, which the go.mk comment scheduled for removal at this bump: restore the plain CGO_CFLAGS and CGO_CXXFLAGS settings in HOST_GO_TARGET_ENV. https://go.dev/doc/go1.27#bootstrap Signed-off-by: Christian Stewart Signed-off-by: Julien Olivain --- package/go/go.hash | 14 +++++++------- package/go/go.mk | 12 +++--------- 2 files changed, 10 insertions(+), 16 deletions(-) diff --git a/package/go/go.hash b/package/go/go.hash index 1c43cabf7b..bc6d026a6c 100644 --- a/package/go/go.hash +++ b/package/go/go.hash @@ -1,9 +1,9 @@ # sha256 checksum from https://go.dev/dl/ -sha256 a0721c54c688901448d77ad9b3ec7ea7c474730755ff891382e92ecb93ff2cb1 go1.26.6.src.tar.gz -sha256 f09a71029fc5cd2940fbe36b0eb1fb2d8f3407cd6adb6b7b4de3eaf04007f8c4 go1.26.6.linux-386.tar.gz -sha256 708effb774be8237570d0add163225abbdfaf4fca28b2611df167beba4feef89 go1.26.6.linux-amd64.tar.gz -sha256 d0507e9e9d7fe012aae570108cbd76c15de879e17130ab8cb90d4d7445cb1f2e go1.26.6.linux-arm64.tar.gz -sha256 e1379a2fe77bd30fa29833074388247e7c65416e09279f746f20de2d5cf4dfea go1.26.6.linux-armv6l.tar.gz -sha256 232b65543a42eda95df6a63f76235c1795bb535eba5c74e509faec71bc648388 go1.26.6.linux-ppc64le.tar.gz -sha256 958757933d38172dd544085d253c8738cf09793d24c8bc0422e5e1e1fffa4fde go1.26.6.linux-s390x.tar.gz +sha256 7002403d7cc44529ef6d26f69a44818263395ead7c16c05a5808ae047ebeb0e5 go1.27.0.src.tar.gz +sha256 eac4abaca4113170a1cf261b8bf1d38480e61e99deecbc6a14767deb8b19e8ad go1.27.0.linux-386.tar.gz +sha256 675c26c449cbb18fc24b74650de1eabbae6e16f64326fd85a283fb3b58280685 go1.27.0.linux-amd64.tar.gz +sha256 51798d2c42d0e1c6ed7fd9f48728b4193abac9e8aad6dbac2fe96a81f5909bda go1.27.0.linux-arm64.tar.gz +sha256 e337ecd9c321377c0d8832690c2cb10463447c0bd0e65e2e3413dfff63a3435b go1.27.0.linux-armv6l.tar.gz +sha256 068085e257a6014c036c723ca62943edbf48fd168b8d00a6d39527d10b656255 go1.27.0.linux-ppc64le.tar.gz +sha256 cb5c89fa48cba4123c68aee62b217ca030f281546df0898a0c32889c340b928c go1.27.0.linux-s390x.tar.gz sha256 911f8f5782931320f5b8d1160a76365b83aea6447ee6c04fa6d5591467db9dad LICENSE diff --git a/package/go/go.mk b/package/go/go.mk index df1023c19b..a49dc206cc 100644 --- a/package/go/go.mk +++ b/package/go/go.mk @@ -4,10 +4,7 @@ # ################################################################################ -# When bumping this to 1.27 (or beyond), remove the workaround for -# upstream issue https://github.com/golang/go/issues/77436, below -# (i.e. revert the commit adding these lines). -GO_VERSION = 1.26.6 +GO_VERSION = 1.27.0 HOST_GO_GOPATH = $(HOST_DIR)/share/go-path HOST_GO_HOST_CACHE = $(HOST_DIR)/share/host-go-cache @@ -78,14 +75,11 @@ HOST_GO_TARGET_ENV = \ $(if $(GO_GOARM),GOARM=$(GO_GOARM)) \ CC="$(TARGET_CC)" \ CXX="$(TARGET_CXX)" \ + CGO_CFLAGS="$(TARGET_CFLAGS)" \ + CGO_CXXFLAGS="$(TARGET_CXXFLAGS)" \ CGO_LDFLAGS="$(TARGET_LDFLAGS)" \ GOTOOLDIR="$(HOST_GO_TOOLDIR)" -# Workaround for https://github.com/golang/go/issues/77436 -HOST_GO_TARGET_ENV += \ - CGO_CFLAGS="$(subst -g3,-g2,$(TARGET_CFLAGS))" \ - CGO_CXXFLAGS="$(subst -g3,-g2,$(TARGET_CXXFLAGS))" - # Allow packages to use cgo support if it is available for the target. They # will need the toolchain for cgo support; for convenence, include that # dependency here. From 1a87a2669d9dac045f1c088bf6acaf4e46e53b38 Mon Sep 17 00:00:00 2001 From: Neal Frager Date: Tue, 1 Sep 2026 09:44:38 +0100 Subject: [PATCH 20/25] board/xilinx: add Linux 6.18.40 hash Add the hash for the Xilinx Linux 6.18.40 release tag. Signed-off-by: Neal Frager Signed-off-by: Peter Korsgaard --- .../linux_6.18.40/patches/linux-headers/linux-headers.hash | 1 + board/xilinx/linux_6.18.40/patches/linux/linux.hash | 7 +++++++ 2 files changed, 8 insertions(+) create mode 120000 board/xilinx/linux_6.18.40/patches/linux-headers/linux-headers.hash create mode 100644 board/xilinx/linux_6.18.40/patches/linux/linux.hash diff --git a/board/xilinx/linux_6.18.40/patches/linux-headers/linux-headers.hash b/board/xilinx/linux_6.18.40/patches/linux-headers/linux-headers.hash new file mode 120000 index 0000000000..5808d92afe --- /dev/null +++ b/board/xilinx/linux_6.18.40/patches/linux-headers/linux-headers.hash @@ -0,0 +1 @@ +../linux/linux.hash \ No newline at end of file diff --git a/board/xilinx/linux_6.18.40/patches/linux/linux.hash b/board/xilinx/linux_6.18.40/patches/linux/linux.hash new file mode 100644 index 0000000000..f0b8984573 --- /dev/null +++ b/board/xilinx/linux_6.18.40/patches/linux/linux.hash @@ -0,0 +1,7 @@ +# Locally calculated +sha256 bdb5c40d7b43f8a1ea6ee34e2392a389935120b11cf54c36ad3ccff937b1a179 xlnx_rebase_v6.18_LTS_2026.1_update_merge_v6.18.40.tar.gz + +# Locally calculated +sha256 fb5a425bd3b3cd6071a3a9aff9909a859e7c1158d54d32e07658398cd67eb6a0 COPYING +sha256 8780e78a1a737e127f25a65f6d95269bffd36158dc261114de7859b490bfc5aa LICENSES/preferred/GPL-2.0 +sha256 8e378ab93586eb55135d3bc119cce787f7324f48394777d00c34fa3d0be3303f LICENSES/exceptions/Linux-syscall-note From cfd58dedd126de6d3e7f0588e2f5f2d7e163d336 Mon Sep 17 00:00:00 2001 From: Neal Frager Date: Tue, 1 Sep 2026 09:44:39 +0100 Subject: [PATCH 21/25] configs/zynq_*: bump to Linux 6.18.40 Bump the zynq defconfigs to Linux 6.18.40. Run-tested on a ZC702 Evaluation Board. Signed-off-by: Neal Frager Signed-off-by: Peter Korsgaard --- configs/zynq_microzed_defconfig | 4 ++-- configs/zynq_zc702_defconfig | 4 ++-- configs/zynq_zc706_defconfig | 4 ++-- configs/zynq_zed_defconfig | 4 ++-- 4 files changed, 8 insertions(+), 8 deletions(-) diff --git a/configs/zynq_microzed_defconfig b/configs/zynq_microzed_defconfig index 6c49eeeb14..fae1abc60f 100644 --- a/configs/zynq_microzed_defconfig +++ b/configs/zynq_microzed_defconfig @@ -5,13 +5,13 @@ BR2_ARM_ENABLE_VFP=y BR2_TOOLCHAIN_EXTERNAL=y BR2_TOOLCHAIN_EXTERNAL_BOOTLIN=y BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMV7_EABIHF_GLIBC_STABLE=y -BR2_GLOBAL_PATCH_DIR="board/xilinx/xilinx_v2026.1/patches" +BR2_GLOBAL_PATCH_DIR="board/xilinx/xilinx_v2026.1/patches board/xilinx/linux_6.18.40/patches" BR2_DOWNLOAD_FORCE_CHECK_HASHES=y BR2_ROOTFS_POST_BUILD_SCRIPT="board/zynq/post-build.sh" BR2_ROOTFS_POST_IMAGE_SCRIPT="board/zynq/post-image.sh" BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_TARBALL=y -BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,Xilinx,linux-xlnx,xlnx_rebase_v6.18_LTS_2026.1)/xlnx_rebase_v6.18_LTS_2026.1.tar.gz" +BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,Xilinx,linux-xlnx,xlnx_rebase_v6.18_LTS_2026.1_update_merge_v6.18.40)/xlnx_rebase_v6.18_LTS_2026.1_update_merge_v6.18.40.tar.gz" BR2_LINUX_KERNEL_DEFCONFIG="xilinx_zynq" BR2_LINUX_KERNEL_UIMAGE=y BR2_LINUX_KERNEL_UIMAGE_LOADADDR="0x8000" diff --git a/configs/zynq_zc702_defconfig b/configs/zynq_zc702_defconfig index ac08e14a84..e3fe95dabf 100644 --- a/configs/zynq_zc702_defconfig +++ b/configs/zynq_zc702_defconfig @@ -5,13 +5,13 @@ BR2_ARM_ENABLE_VFP=y BR2_TOOLCHAIN_EXTERNAL=y BR2_TOOLCHAIN_EXTERNAL_BOOTLIN=y BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMV7_EABIHF_GLIBC_STABLE=y -BR2_GLOBAL_PATCH_DIR="board/xilinx/xilinx_v2026.1/patches" +BR2_GLOBAL_PATCH_DIR="board/xilinx/xilinx_v2026.1/patches board/xilinx/linux_6.18.40/patches" BR2_DOWNLOAD_FORCE_CHECK_HASHES=y BR2_ROOTFS_POST_BUILD_SCRIPT="board/zynq/post-build.sh" BR2_ROOTFS_POST_IMAGE_SCRIPT="board/zynq/post-image.sh" BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_TARBALL=y -BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,Xilinx,linux-xlnx,xlnx_rebase_v6.18_LTS_2026.1)/xlnx_rebase_v6.18_LTS_2026.1.tar.gz" +BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,Xilinx,linux-xlnx,xlnx_rebase_v6.18_LTS_2026.1_update_merge_v6.18.40)/xlnx_rebase_v6.18_LTS_2026.1_update_merge_v6.18.40.tar.gz" BR2_LINUX_KERNEL_DEFCONFIG="xilinx_zynq" BR2_LINUX_KERNEL_UIMAGE=y BR2_LINUX_KERNEL_UIMAGE_LOADADDR="0x8000" diff --git a/configs/zynq_zc706_defconfig b/configs/zynq_zc706_defconfig index 7dc43e542c..2bb670d8d9 100644 --- a/configs/zynq_zc706_defconfig +++ b/configs/zynq_zc706_defconfig @@ -5,13 +5,13 @@ BR2_ARM_ENABLE_VFP=y BR2_TOOLCHAIN_EXTERNAL=y BR2_TOOLCHAIN_EXTERNAL_BOOTLIN=y BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMV7_EABIHF_GLIBC_STABLE=y -BR2_GLOBAL_PATCH_DIR="board/xilinx/xilinx_v2026.1/patches" +BR2_GLOBAL_PATCH_DIR="board/xilinx/xilinx_v2026.1/patches board/xilinx/linux_6.18.40/patches" BR2_DOWNLOAD_FORCE_CHECK_HASHES=y BR2_ROOTFS_POST_BUILD_SCRIPT="board/zynq/post-build.sh" BR2_ROOTFS_POST_IMAGE_SCRIPT="board/zynq/post-image.sh" BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_TARBALL=y -BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,Xilinx,linux-xlnx,xlnx_rebase_v6.18_LTS_2026.1)/xlnx_rebase_v6.18_LTS_2026.1.tar.gz" +BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,Xilinx,linux-xlnx,xlnx_rebase_v6.18_LTS_2026.1_update_merge_v6.18.40)/xlnx_rebase_v6.18_LTS_2026.1_update_merge_v6.18.40.tar.gz" BR2_LINUX_KERNEL_DEFCONFIG="xilinx_zynq" BR2_LINUX_KERNEL_UIMAGE=y BR2_LINUX_KERNEL_UIMAGE_LOADADDR="0x8000" diff --git a/configs/zynq_zed_defconfig b/configs/zynq_zed_defconfig index c96267c125..2c4db8bdad 100644 --- a/configs/zynq_zed_defconfig +++ b/configs/zynq_zed_defconfig @@ -5,13 +5,13 @@ BR2_ARM_ENABLE_VFP=y BR2_TOOLCHAIN_EXTERNAL=y BR2_TOOLCHAIN_EXTERNAL_BOOTLIN=y BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_ARMV7_EABIHF_GLIBC_STABLE=y -BR2_GLOBAL_PATCH_DIR="board/xilinx/xilinx_v2026.1/patches" +BR2_GLOBAL_PATCH_DIR="board/xilinx/xilinx_v2026.1/patches board/xilinx/linux_6.18.40/patches" BR2_DOWNLOAD_FORCE_CHECK_HASHES=y BR2_ROOTFS_POST_BUILD_SCRIPT="board/zynq/post-build.sh" BR2_ROOTFS_POST_IMAGE_SCRIPT="board/zynq/post-image.sh" BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_TARBALL=y -BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,Xilinx,linux-xlnx,xlnx_rebase_v6.18_LTS_2026.1)/xlnx_rebase_v6.18_LTS_2026.1.tar.gz" +BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,Xilinx,linux-xlnx,xlnx_rebase_v6.18_LTS_2026.1_update_merge_v6.18.40)/xlnx_rebase_v6.18_LTS_2026.1_update_merge_v6.18.40.tar.gz" BR2_LINUX_KERNEL_DEFCONFIG="xilinx_zynq" BR2_LINUX_KERNEL_UIMAGE=y BR2_LINUX_KERNEL_UIMAGE_LOADADDR="0x8000" From b1009287df7fda4e90ce3e95bbae1f08288a78dc Mon Sep 17 00:00:00 2001 From: Neal Frager Date: Tue, 1 Sep 2026 09:44:40 +0100 Subject: [PATCH 22/25] configs/zynqmp_*: bump to Linux 6.18.40 Bump the zynqmp defconfigs to Linux 6.18.40. Run tested on a zynqmp zcu102 evaluation board. Run tested on a kria kv260 evaluation board. Signed-off-by: Neal Frager Signed-off-by: Peter Korsgaard --- configs/zynqmp_kria_kd240_defconfig | 4 ++-- configs/zynqmp_kria_kr260_defconfig | 4 ++-- configs/zynqmp_kria_kv260_defconfig | 4 ++-- configs/zynqmp_zcu102_defconfig | 4 ++-- configs/zynqmp_zcu104_defconfig | 4 ++-- configs/zynqmp_zcu106_defconfig | 4 ++-- 6 files changed, 12 insertions(+), 12 deletions(-) diff --git a/configs/zynqmp_kria_kd240_defconfig b/configs/zynqmp_kria_kd240_defconfig index 600abb4b04..52359fcd07 100644 --- a/configs/zynqmp_kria_kd240_defconfig +++ b/configs/zynqmp_kria_kd240_defconfig @@ -4,14 +4,14 @@ BR2_TOOLCHAIN_EXTERNAL_BOOTLIN=y BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_AARCH64_GLIBC_STABLE=y BR2_TOOLCHAIN_BARE_METAL_BUILDROOT=y BR2_TOOLCHAIN_BARE_METAL_BUILDROOT_ARCH="microblazeel-buildroot-elf" -BR2_GLOBAL_PATCH_DIR="board/xilinx/xilinx_v2026.1/patches" +BR2_GLOBAL_PATCH_DIR="board/xilinx/xilinx_v2026.1/patches board/xilinx/linux_6.18.40/patches" BR2_DOWNLOAD_FORCE_CHECK_HASHES=y BR2_ROOTFS_POST_BUILD_SCRIPT="board/zynqmp/post-build.sh" BR2_ROOTFS_POST_IMAGE_SCRIPT="board/zynqmp/post-image.sh" BR2_ROOTFS_POST_SCRIPT_ARGS="ttyPS1,115200 sda2" BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_TARBALL=y -BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,Xilinx,linux-xlnx,xlnx_rebase_v6.18_LTS_2026.1)/xlnx_rebase_v6.18_LTS_2026.1.tar.gz" +BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,Xilinx,linux-xlnx,xlnx_rebase_v6.18_LTS_2026.1_update_merge_v6.18.40)/xlnx_rebase_v6.18_LTS_2026.1_update_merge_v6.18.40.tar.gz" BR2_LINUX_KERNEL_DEFCONFIG="xilinx" BR2_LINUX_KERNEL_DTS_SUPPORT=y BR2_LINUX_KERNEL_INTREE_DTS_NAME="xilinx/zynqmp-smk-k24-revA-sck-kd-g-revA" diff --git a/configs/zynqmp_kria_kr260_defconfig b/configs/zynqmp_kria_kr260_defconfig index 1895dc7261..bf5fdfe544 100644 --- a/configs/zynqmp_kria_kr260_defconfig +++ b/configs/zynqmp_kria_kr260_defconfig @@ -4,14 +4,14 @@ BR2_TOOLCHAIN_EXTERNAL_BOOTLIN=y BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_AARCH64_GLIBC_STABLE=y BR2_TOOLCHAIN_BARE_METAL_BUILDROOT=y BR2_TOOLCHAIN_BARE_METAL_BUILDROOT_ARCH="microblazeel-buildroot-elf" -BR2_GLOBAL_PATCH_DIR="board/xilinx/xilinx_v2026.1/patches" +BR2_GLOBAL_PATCH_DIR="board/xilinx/xilinx_v2026.1/patches board/xilinx/linux_6.18.40/patches" BR2_DOWNLOAD_FORCE_CHECK_HASHES=y BR2_ROOTFS_POST_BUILD_SCRIPT="board/zynqmp/post-build.sh" BR2_ROOTFS_POST_IMAGE_SCRIPT="board/zynqmp/post-image.sh" BR2_ROOTFS_POST_SCRIPT_ARGS="ttyPS1,115200 sda2" BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_TARBALL=y -BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,Xilinx,linux-xlnx,xlnx_rebase_v6.18_LTS_2026.1)/xlnx_rebase_v6.18_LTS_2026.1.tar.gz" +BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,Xilinx,linux-xlnx,xlnx_rebase_v6.18_LTS_2026.1_update_merge_v6.18.40)/xlnx_rebase_v6.18_LTS_2026.1_update_merge_v6.18.40.tar.gz" BR2_LINUX_KERNEL_DEFCONFIG="xilinx" BR2_LINUX_KERNEL_DTS_SUPPORT=y BR2_LINUX_KERNEL_INTREE_DTS_NAME="xilinx/zynqmp-smk-k26-revA-sck-kr-g-revB" diff --git a/configs/zynqmp_kria_kv260_defconfig b/configs/zynqmp_kria_kv260_defconfig index 7a87463365..a0a1d3557b 100644 --- a/configs/zynqmp_kria_kv260_defconfig +++ b/configs/zynqmp_kria_kv260_defconfig @@ -4,14 +4,14 @@ BR2_TOOLCHAIN_EXTERNAL_BOOTLIN=y BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_AARCH64_GLIBC_STABLE=y BR2_TOOLCHAIN_BARE_METAL_BUILDROOT=y BR2_TOOLCHAIN_BARE_METAL_BUILDROOT_ARCH="microblazeel-buildroot-elf" -BR2_GLOBAL_PATCH_DIR="board/xilinx/xilinx_v2026.1/patches" +BR2_GLOBAL_PATCH_DIR="board/xilinx/xilinx_v2026.1/patches board/xilinx/linux_6.18.40/patches" BR2_DOWNLOAD_FORCE_CHECK_HASHES=y BR2_ROOTFS_POST_BUILD_SCRIPT="board/zynqmp/post-build.sh" BR2_ROOTFS_POST_IMAGE_SCRIPT="board/zynqmp/post-image.sh" BR2_ROOTFS_POST_SCRIPT_ARGS="ttyPS1,115200 mmcblk1p2" BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_TARBALL=y -BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,Xilinx,linux-xlnx,xlnx_rebase_v6.18_LTS_2026.1)/xlnx_rebase_v6.18_LTS_2026.1.tar.gz" +BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,Xilinx,linux-xlnx,xlnx_rebase_v6.18_LTS_2026.1_update_merge_v6.18.40)/xlnx_rebase_v6.18_LTS_2026.1_update_merge_v6.18.40.tar.gz" BR2_LINUX_KERNEL_DEFCONFIG="xilinx" BR2_LINUX_KERNEL_DTS_SUPPORT=y BR2_LINUX_KERNEL_INTREE_DTS_NAME="xilinx/zynqmp-smk-k26-revA-sck-kv-g-revB" diff --git a/configs/zynqmp_zcu102_defconfig b/configs/zynqmp_zcu102_defconfig index 77e69cf014..623d37140d 100644 --- a/configs/zynqmp_zcu102_defconfig +++ b/configs/zynqmp_zcu102_defconfig @@ -4,14 +4,14 @@ BR2_TOOLCHAIN_EXTERNAL_BOOTLIN=y BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_AARCH64_GLIBC_STABLE=y BR2_TOOLCHAIN_BARE_METAL_BUILDROOT=y BR2_TOOLCHAIN_BARE_METAL_BUILDROOT_ARCH="microblazeel-buildroot-elf" -BR2_GLOBAL_PATCH_DIR="board/xilinx/xilinx_v2026.1/patches" +BR2_GLOBAL_PATCH_DIR="board/xilinx/xilinx_v2026.1/patches board/xilinx/linux_6.18.40/patches" BR2_DOWNLOAD_FORCE_CHECK_HASHES=y BR2_ROOTFS_POST_BUILD_SCRIPT="board/zynqmp/post-build.sh" BR2_ROOTFS_POST_IMAGE_SCRIPT="board/zynqmp/post-image.sh" BR2_ROOTFS_POST_SCRIPT_ARGS="ttyPS0,115200 mmcblk0p2" BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_TARBALL=y -BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,Xilinx,linux-xlnx,xlnx_rebase_v6.18_LTS_2026.1)/xlnx_rebase_v6.18_LTS_2026.1.tar.gz" +BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,Xilinx,linux-xlnx,xlnx_rebase_v6.18_LTS_2026.1_update_merge_v6.18.40)/xlnx_rebase_v6.18_LTS_2026.1_update_merge_v6.18.40.tar.gz" BR2_LINUX_KERNEL_DEFCONFIG="xilinx" BR2_LINUX_KERNEL_DTS_SUPPORT=y BR2_LINUX_KERNEL_INTREE_DTS_NAME="xilinx/zynqmp-zcu102-rev1.0" diff --git a/configs/zynqmp_zcu104_defconfig b/configs/zynqmp_zcu104_defconfig index 985dfd01c4..68213bbabf 100644 --- a/configs/zynqmp_zcu104_defconfig +++ b/configs/zynqmp_zcu104_defconfig @@ -4,14 +4,14 @@ BR2_TOOLCHAIN_EXTERNAL_BOOTLIN=y BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_AARCH64_GLIBC_STABLE=y BR2_TOOLCHAIN_BARE_METAL_BUILDROOT=y BR2_TOOLCHAIN_BARE_METAL_BUILDROOT_ARCH="microblazeel-buildroot-elf" -BR2_GLOBAL_PATCH_DIR="board/xilinx/xilinx_v2026.1/patches" +BR2_GLOBAL_PATCH_DIR="board/xilinx/xilinx_v2026.1/patches board/xilinx/linux_6.18.40/patches" BR2_DOWNLOAD_FORCE_CHECK_HASHES=y BR2_ROOTFS_POST_BUILD_SCRIPT="board/zynqmp/post-build.sh" BR2_ROOTFS_POST_IMAGE_SCRIPT="board/zynqmp/post-image.sh" BR2_ROOTFS_POST_SCRIPT_ARGS="ttyPS0,115200 mmcblk0p2" BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_TARBALL=y -BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,Xilinx,linux-xlnx,xlnx_rebase_v6.18_LTS_2026.1)/xlnx_rebase_v6.18_LTS_2026.1.tar.gz" +BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,Xilinx,linux-xlnx,xlnx_rebase_v6.18_LTS_2026.1_update_merge_v6.18.40)/xlnx_rebase_v6.18_LTS_2026.1_update_merge_v6.18.40.tar.gz" BR2_LINUX_KERNEL_DEFCONFIG="xilinx" BR2_LINUX_KERNEL_DTS_SUPPORT=y BR2_LINUX_KERNEL_INTREE_DTS_NAME="xilinx/zynqmp-zcu104-revC" diff --git a/configs/zynqmp_zcu106_defconfig b/configs/zynqmp_zcu106_defconfig index ddacd2d98e..da3af3c6bb 100644 --- a/configs/zynqmp_zcu106_defconfig +++ b/configs/zynqmp_zcu106_defconfig @@ -4,14 +4,14 @@ BR2_TOOLCHAIN_EXTERNAL_BOOTLIN=y BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_AARCH64_GLIBC_STABLE=y BR2_TOOLCHAIN_BARE_METAL_BUILDROOT=y BR2_TOOLCHAIN_BARE_METAL_BUILDROOT_ARCH="microblazeel-buildroot-elf" -BR2_GLOBAL_PATCH_DIR="board/xilinx/xilinx_v2026.1/patches" +BR2_GLOBAL_PATCH_DIR="board/xilinx/xilinx_v2026.1/patches board/xilinx/linux_6.18.40/patches" BR2_DOWNLOAD_FORCE_CHECK_HASHES=y BR2_ROOTFS_POST_BUILD_SCRIPT="board/zynqmp/post-build.sh" BR2_ROOTFS_POST_IMAGE_SCRIPT="board/zynqmp/post-image.sh" BR2_ROOTFS_POST_SCRIPT_ARGS="ttyPS0,115200 mmcblk0p2" BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_TARBALL=y -BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,Xilinx,linux-xlnx,xlnx_rebase_v6.18_LTS_2026.1)/xlnx_rebase_v6.18_LTS_2026.1.tar.gz" +BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,Xilinx,linux-xlnx,xlnx_rebase_v6.18_LTS_2026.1_update_merge_v6.18.40)/xlnx_rebase_v6.18_LTS_2026.1_update_merge_v6.18.40.tar.gz" BR2_LINUX_KERNEL_DEFCONFIG="xilinx" BR2_LINUX_KERNEL_DTS_SUPPORT=y BR2_LINUX_KERNEL_INTREE_DTS_NAME="xilinx/zynqmp-zcu106-revA" From 0dae674d98c951699bb12d9c2686fbdc2f4d036f Mon Sep 17 00:00:00 2001 From: Neal Frager Date: Tue, 1 Sep 2026 09:44:41 +0100 Subject: [PATCH 23/25] configs/versal_*: bump to Linux 6.18.40 Bump the versal defconfigs to Linux 6.18.40. Run tested on a versal vek280 evaluation board. Signed-off-by: Neal Frager Signed-off-by: Peter Korsgaard --- configs/versal_vck190_defconfig | 4 ++-- configs/versal_vek280_defconfig | 4 ++-- configs/versal_vpk120_defconfig | 4 ++-- configs/versal_vpk180_defconfig | 4 ++-- 4 files changed, 8 insertions(+), 8 deletions(-) diff --git a/configs/versal_vck190_defconfig b/configs/versal_vck190_defconfig index 100af782cf..5499f1a229 100644 --- a/configs/versal_vck190_defconfig +++ b/configs/versal_vck190_defconfig @@ -5,14 +5,14 @@ BR2_TOOLCHAIN_EXTERNAL_BOOTLIN=y BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_AARCH64_GLIBC_STABLE=y BR2_TOOLCHAIN_BARE_METAL_BUILDROOT=y BR2_TOOLCHAIN_BARE_METAL_BUILDROOT_ARCH="microblazeel-buildroot-elf" -BR2_GLOBAL_PATCH_DIR="board/xilinx/xilinx_v2026.1/patches" +BR2_GLOBAL_PATCH_DIR="board/xilinx/xilinx_v2026.1/patches board/xilinx/linux_6.18.40/patches" BR2_DOWNLOAD_FORCE_CHECK_HASHES=y BR2_ROOTFS_POST_BUILD_SCRIPT="board/versal/post-build.sh" BR2_ROOTFS_POST_IMAGE_SCRIPT="board/versal/post-image.sh" BR2_ROOTFS_POST_SCRIPT_ARGS="ttyAMA0,115200 mmcblk0p2" BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_TARBALL=y -BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,Xilinx,linux-xlnx,xlnx_rebase_v6.18_LTS_2026.1)/xlnx_rebase_v6.18_LTS_2026.1.tar.gz" +BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,Xilinx,linux-xlnx,xlnx_rebase_v6.18_LTS_2026.1_update_merge_v6.18.40)/xlnx_rebase_v6.18_LTS_2026.1_update_merge_v6.18.40.tar.gz" BR2_LINUX_KERNEL_DEFCONFIG="xilinx" BR2_LINUX_KERNEL_DTS_SUPPORT=y BR2_LINUX_KERNEL_INTREE_DTS_NAME="xilinx/versal-vck190-rev1.1" diff --git a/configs/versal_vek280_defconfig b/configs/versal_vek280_defconfig index 42562603d6..4072e7cb22 100644 --- a/configs/versal_vek280_defconfig +++ b/configs/versal_vek280_defconfig @@ -5,14 +5,14 @@ BR2_TOOLCHAIN_EXTERNAL_BOOTLIN=y BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_AARCH64_GLIBC_STABLE=y BR2_TOOLCHAIN_BARE_METAL_BUILDROOT=y BR2_TOOLCHAIN_BARE_METAL_BUILDROOT_ARCH="microblazeel-buildroot-elf" -BR2_GLOBAL_PATCH_DIR="board/xilinx/xilinx_v2026.1/patches" +BR2_GLOBAL_PATCH_DIR="board/xilinx/xilinx_v2026.1/patches board/xilinx/linux_6.18.40/patches" BR2_DOWNLOAD_FORCE_CHECK_HASHES=y BR2_ROOTFS_POST_BUILD_SCRIPT="board/versal/post-build.sh" BR2_ROOTFS_POST_IMAGE_SCRIPT="board/versal/post-image.sh" BR2_ROOTFS_POST_SCRIPT_ARGS="ttyAMA0,115200 mmcblk0p2" BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_TARBALL=y -BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,Xilinx,linux-xlnx,xlnx_rebase_v6.18_LTS_2026.1)/xlnx_rebase_v6.18_LTS_2026.1.tar.gz" +BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,Xilinx,linux-xlnx,xlnx_rebase_v6.18_LTS_2026.1_update_merge_v6.18.40)/xlnx_rebase_v6.18_LTS_2026.1_update_merge_v6.18.40.tar.gz" BR2_LINUX_KERNEL_DEFCONFIG="xilinx" BR2_LINUX_KERNEL_DTS_SUPPORT=y BR2_LINUX_KERNEL_INTREE_DTS_NAME="xilinx/versal-vek280-revB" diff --git a/configs/versal_vpk120_defconfig b/configs/versal_vpk120_defconfig index 67dfd9e424..37f353fb21 100644 --- a/configs/versal_vpk120_defconfig +++ b/configs/versal_vpk120_defconfig @@ -5,14 +5,14 @@ BR2_TOOLCHAIN_EXTERNAL_BOOTLIN=y BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_AARCH64_GLIBC_STABLE=y BR2_TOOLCHAIN_BARE_METAL_BUILDROOT=y BR2_TOOLCHAIN_BARE_METAL_BUILDROOT_ARCH="microblazeel-buildroot-elf" -BR2_GLOBAL_PATCH_DIR="board/xilinx/xilinx_v2026.1/patches" +BR2_GLOBAL_PATCH_DIR="board/xilinx/xilinx_v2026.1/patches board/xilinx/linux_6.18.40/patches" BR2_DOWNLOAD_FORCE_CHECK_HASHES=y BR2_ROOTFS_POST_BUILD_SCRIPT="board/versal/post-build.sh" BR2_ROOTFS_POST_IMAGE_SCRIPT="board/versal/post-image.sh" BR2_ROOTFS_POST_SCRIPT_ARGS="ttyAMA0,115200 mmcblk0p2" BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_TARBALL=y -BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,Xilinx,linux-xlnx,xlnx_rebase_v6.18_LTS_2026.1)/xlnx_rebase_v6.18_LTS_2026.1.tar.gz" +BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,Xilinx,linux-xlnx,xlnx_rebase_v6.18_LTS_2026.1_update_merge_v6.18.40)/xlnx_rebase_v6.18_LTS_2026.1_update_merge_v6.18.40.tar.gz" BR2_LINUX_KERNEL_DEFCONFIG="xilinx" BR2_LINUX_KERNEL_DTS_SUPPORT=y BR2_LINUX_KERNEL_INTREE_DTS_NAME="xilinx/versal-vpk120-revB" diff --git a/configs/versal_vpk180_defconfig b/configs/versal_vpk180_defconfig index 0537fce6e0..1a67d54bbc 100644 --- a/configs/versal_vpk180_defconfig +++ b/configs/versal_vpk180_defconfig @@ -5,14 +5,14 @@ BR2_TOOLCHAIN_EXTERNAL_BOOTLIN=y BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_AARCH64_GLIBC_STABLE=y BR2_TOOLCHAIN_BARE_METAL_BUILDROOT=y BR2_TOOLCHAIN_BARE_METAL_BUILDROOT_ARCH="microblazeel-buildroot-elf" -BR2_GLOBAL_PATCH_DIR="board/xilinx/xilinx_v2026.1/patches" +BR2_GLOBAL_PATCH_DIR="board/xilinx/xilinx_v2026.1/patches board/xilinx/linux_6.18.40/patches" BR2_DOWNLOAD_FORCE_CHECK_HASHES=y BR2_ROOTFS_POST_BUILD_SCRIPT="board/versal/post-build.sh" BR2_ROOTFS_POST_IMAGE_SCRIPT="board/versal/post-image.sh" BR2_ROOTFS_POST_SCRIPT_ARGS="ttyAMA0,115200 mmcblk0p2" BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_TARBALL=y -BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,Xilinx,linux-xlnx,xlnx_rebase_v6.18_LTS_2026.1)/xlnx_rebase_v6.18_LTS_2026.1.tar.gz" +BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,Xilinx,linux-xlnx,xlnx_rebase_v6.18_LTS_2026.1_update_merge_v6.18.40)/xlnx_rebase_v6.18_LTS_2026.1_update_merge_v6.18.40.tar.gz" BR2_LINUX_KERNEL_DEFCONFIG="xilinx" BR2_LINUX_KERNEL_DTS_SUPPORT=y BR2_LINUX_KERNEL_INTREE_DTS_NAME="xilinx/versal-vpk180-revA" From 6c3c5f8728ba9782fe11867723e0ec25b89c72f6 Mon Sep 17 00:00:00 2001 From: Neal Frager Date: Tue, 1 Sep 2026 09:44:42 +0100 Subject: [PATCH 24/25] configs/versal2_*: bump to Linux 6.18.40 Bump the versal2 defconfig to Linux 6.18.40. Run tested on a versal2 vek385 evaluation board. Signed-off-by: Neal Frager Signed-off-by: Peter Korsgaard --- configs/versal2_vek385_defconfig | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/configs/versal2_vek385_defconfig b/configs/versal2_vek385_defconfig index 76eb455043..13df1a9c84 100644 --- a/configs/versal2_vek385_defconfig +++ b/configs/versal2_vek385_defconfig @@ -6,14 +6,14 @@ BR2_TOOLCHAIN_EXTERNAL_BOOTLIN_AARCH64_GLIBC_STABLE=y BR2_TOOLCHAIN_BARE_METAL_BUILDROOT=y BR2_TOOLCHAIN_BARE_METAL_BUILDROOT_ARCH="microblazeel-buildroot-elf riscv32-buildroot-elf" BR2_TOOLCHAIN_BARE_METAL_BUILDROOT_MULTILIB=y -BR2_GLOBAL_PATCH_DIR="board/xilinx/xilinx_v2026.1/patches" +BR2_GLOBAL_PATCH_DIR="board/xilinx/xilinx_v2026.1/patches board/xilinx/linux_6.18.40/patches" BR2_DOWNLOAD_FORCE_CHECK_HASHES=y BR2_ROOTFS_POST_BUILD_SCRIPT="board/versal2/post-build.sh" BR2_ROOTFS_POST_IMAGE_SCRIPT="board/versal2/post-image.sh" BR2_ROOTFS_POST_SCRIPT_ARGS="ttyAMA1,115200 sdd2" BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_TARBALL=y -BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,Xilinx,linux-xlnx,xlnx_rebase_v6.18_LTS_2026.1)/xlnx_rebase_v6.18_LTS_2026.1.tar.gz" +BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,Xilinx,linux-xlnx,xlnx_rebase_v6.18_LTS_2026.1_update_merge_v6.18.40)/xlnx_rebase_v6.18_LTS_2026.1_update_merge_v6.18.40.tar.gz" BR2_LINUX_KERNEL_DEFCONFIG="xilinx" BR2_LINUX_KERNEL_NEEDS_HOST_OPENSSL=y BR2_PACKAGE_XILINX_FPGAUTIL=y From f92220f16b3b0c24cadae6f92a662d2ac22a879d Mon Sep 17 00:00:00 2001 From: Neal Frager Date: Tue, 1 Sep 2026 09:44:43 +0100 Subject: [PATCH 25/25] board/xilinx: remove xilinx_2026.1/linux.hash Now that all Xilinx boards have been bumped to Linux 6.18.40, remove the hash for the xlnx_rebase_v6.18_LTS_2026.1 release tag. Signed-off-by: Neal Frager Signed-off-by: Peter Korsgaard --- .../patches/linux-headers/linux-headers.hash | 1 - board/xilinx/xilinx_v2026.1/patches/linux/linux.hash | 7 ------- 2 files changed, 8 deletions(-) delete mode 120000 board/xilinx/xilinx_v2026.1/patches/linux-headers/linux-headers.hash delete mode 100644 board/xilinx/xilinx_v2026.1/patches/linux/linux.hash diff --git a/board/xilinx/xilinx_v2026.1/patches/linux-headers/linux-headers.hash b/board/xilinx/xilinx_v2026.1/patches/linux-headers/linux-headers.hash deleted file mode 120000 index 5808d92afe..0000000000 --- a/board/xilinx/xilinx_v2026.1/patches/linux-headers/linux-headers.hash +++ /dev/null @@ -1 +0,0 @@ -../linux/linux.hash \ No newline at end of file diff --git a/board/xilinx/xilinx_v2026.1/patches/linux/linux.hash b/board/xilinx/xilinx_v2026.1/patches/linux/linux.hash deleted file mode 100644 index 6bfa4d2408..0000000000 --- a/board/xilinx/xilinx_v2026.1/patches/linux/linux.hash +++ /dev/null @@ -1,7 +0,0 @@ -# Locally calculated -sha256 23c9cf18f5f419dfaafe5c3d3eda4812eb71bf1f2fbf3b35470478bbaa3d96bb xlnx_rebase_v6.18_LTS_2026.1.tar.gz - -# Locally calculated -sha256 fb5a425bd3b3cd6071a3a9aff9909a859e7c1158d54d32e07658398cd67eb6a0 COPYING -sha256 8780e78a1a737e127f25a65f6d95269bffd36158dc261114de7859b490bfc5aa LICENSES/preferred/GPL-2.0 -sha256 8e378ab93586eb55135d3bc119cce787f7324f48394777d00c34fa3d0be3303f LICENSES/exceptions/Linux-syscall-note