diff --git a/.checkpackageignore b/.checkpackageignore index 16a0d5b511cc..c7a02caf065d 100644 --- a/.checkpackageignore +++ b/.checkpackageignore @@ -318,8 +318,6 @@ package/dt/0002-dt-default-source-define.patch lib_patch.Upstream package/dtc/0001-Fix-include-guards-for-older-kernel-u-boot-sources.patch lib_patch.Upstream package/dvblast/0001-missing-lm.patch lib_patch.Upstream package/dvblast/0002-fix-int-types.patch lib_patch.Upstream -package/dvdrw-tools/0001-limits.h.patch lib_patch.Upstream -package/dvdrw-tools/0002-Include-sysmacros.h-to-compile-with-newer-gcc.patch lib_patch.Upstream package/earlyoom/0001-main.c-fix-build-with-kernel-4.3.patch lib_patch.Upstream package/earlyoom/S02earlyoom Shellcheck lib_sysv.Indent package/ebtables/0001-replace-ebtables-save-perl-script-with-bash.patch lib_patch.Upstream diff --git a/Config.in.legacy b/Config.in.legacy index 2971699c78cc..4539b19bbe19 100644 --- a/Config.in.legacy +++ b/Config.in.legacy @@ -146,6 +146,13 @@ endif comment "Legacy options removed in 2026.02" +config BR2_PACKAGE_DVDRW_TOOLS + bool "dvdrw-tools removed" + select BR2_LEGACY + help + dvdrw-tools was no longer maintained upstream, so it has + been dropped. + config BR2_PACKAGE_PHP_ZMQ bool "php-zmq removed" select BR2_LEGACY diff --git a/DEVELOPERS b/DEVELOPERS index 13bf5244fe3a..225d1ac917dc 100644 --- a/DEVELOPERS +++ b/DEVELOPERS @@ -3140,7 +3140,6 @@ F: package/libcli/ N: Steve Kenton F: package/dvdauthor/ -F: package/dvdrw-tools/ F: package/memtest86/ F: package/mjpegtools/ F: package/udftools/ diff --git a/Makefile b/Makefile index 004039d84781..4cf8750bfb2a 100644 --- a/Makefile +++ b/Makefile @@ -602,6 +602,16 @@ prepare-sdk: world @$(call MESSAGE,"Preparing the SDK") $(INSTALL) -m 755 $(TOPDIR)/support/misc/relocate-sdk.sh $(HOST_DIR)/relocate-sdk.sh mkdir -p $(HOST_DIR)/share/buildroot + (\ + export LC_ALL=C; \ + grep -lr '$(HOST_DIR)' '$(HOST_DIR)' | while read -r FILE; do \ + if file -b --mime-type "$$FILE" | grep -q '^text/' && \ + [ "$$FILE" != '$(HOST_DIR)/share/buildroot/sdk-location' ] && \ + [ "$$FILE" != '$(HOST_DIR)/share/buildroot/sdk-relocs' ]; then \ + echo "$$FILE"; \ + fi; \ + done \ + ) | sed -e 's|^$(HOST_DIR)|.|g' > $(HOST_DIR)/share/buildroot/sdk-relocs echo $(HOST_DIR) > $(HOST_DIR)/share/buildroot/sdk-location BR2_SDK_PREFIX ?= $(GNU_TARGET_NAME)_sdk-buildroot diff --git a/arch/Config.in.riscv b/arch/Config.in.riscv index 23d095d1a662..299190f364e3 100644 --- a/arch/Config.in.riscv +++ b/arch/Config.in.riscv @@ -45,6 +45,13 @@ config BR2_RISCV_ISA_RVV bool "Vector Instructions (V)" select BR2_ARCH_NEEDS_GCC_AT_LEAST_12 +config BR2_RISCV_ISA_EXTRA + string "Append extra RISC-V ISA extensions" + help + Extra ISA extensions to append to the ISA extensions string. + They are underscore-separated. For example, + "zba_zbb_zvl256b". + choice prompt "Target Architecture Size" default BR2_RISCV_64 diff --git a/arch/arch.mk.riscv b/arch/arch.mk.riscv index ee5c434b9711..e47666eadd62 100644 --- a/arch/arch.mk.riscv +++ b/arch/arch.mk.riscv @@ -39,4 +39,9 @@ ifeq ($(BR2_TOOLCHAIN_GCC_AT_LEAST_12),y) GCC_TARGET_ARCH := $(GCC_TARGET_ARCH)_zicsr_zifencei endif +ARCH_RISV_ISA_EXTRA = $(call qstrip, $(BR2_RISCV_ISA_EXTRA)) +ifneq ($(ARCH_RISV_ISA_EXTRA),) +GCC_TARGET_ARCH := $(GCC_TARGET_ARCH)_$(ARCH_RISV_ISA_EXTRA) +endif + endif diff --git a/board/beagleboard/beaglev_fire/boot.cmd b/board/beagleboard/beaglev_fire/boot.cmd index 1402458d8b80..80b44592c772 100644 --- a/board/beagleboard/beaglev_fire/boot.cmd +++ b/board/beagleboard/beaglev_fire/boot.cmd @@ -11,6 +11,5 @@ bootm loados ${scriptaddr}; # Try to load a ramdisk if available inside fitImage bootm ramdisk; bootm prep; -fdt set /soc/ethernet@20110000 mac-address ${beaglevfire_mac_addr0}; run design_overlays; bootm go; diff --git a/board/beagleboard/beaglev_fire/patches/linux/linux.hash b/board/beagleboard/beaglev_fire/patches/linux/linux.hash index 9ee63df23d30..2902da56b637 100644 --- a/board/beagleboard/beaglev_fire/patches/linux/linux.hash +++ b/board/beagleboard/beaglev_fire/patches/linux/linux.hash @@ -1,2 +1,2 @@ # Locally calculated -sha256 7bd234a93bc6351d6a830f9ef18e9e780d70c478d280a6513a30bc2f945fb050 linux-linux4microchip+fpga-2024.09.1.tar.gz +sha256 37191994758d521dc7223cb5010a67ef83bd061bf70194ea522abc9ef2b17391 linux-linux4microchip+fpga-2025.10.tar.gz diff --git a/board/beagleboard/beaglev_fire/patches/uboot/uboot.hash b/board/beagleboard/beaglev_fire/patches/uboot/uboot.hash index cb0ec5ec5245..a40f963a2e4c 100644 --- a/board/beagleboard/beaglev_fire/patches/uboot/uboot.hash +++ b/board/beagleboard/beaglev_fire/patches/uboot/uboot.hash @@ -1,2 +1,2 @@ # Locally calculated -sha256 a2fad7fe7f933fa4679b070e952e1e7a21dbd8b586d7a9a11bfcb99e75ae7ad6 uboot-linux4microchip+fpga-2024.09.tar.gz +sha256 591c80f7e16d6f43192deb7ab7587ae81b31ba7c7de1a668c14b9997b6c976c8 uboot-linux4microchip+fpga-2025.10.tar.gz diff --git a/board/microchip/mpfs_icicle/patches/linux/linux.hash b/board/microchip/mpfs_icicle/patches/linux/linux.hash index d0e2d5693c1d..2902da56b637 100644 --- a/board/microchip/mpfs_icicle/patches/linux/linux.hash +++ b/board/microchip/mpfs_icicle/patches/linux/linux.hash @@ -1,2 +1,2 @@ # Locally calculated -sha256 7789cc2844cb9633aa8c146e194c9ad3482bf06ace707d66d0ca6039ed16833d linux-linux4microchip+fpga-2025.07.tar.gz +sha256 37191994758d521dc7223cb5010a67ef83bd061bf70194ea522abc9ef2b17391 linux-linux4microchip+fpga-2025.10.tar.gz diff --git a/board/microchip/mpfs_icicle/patches/uboot/uboot.hash b/board/microchip/mpfs_icicle/patches/uboot/uboot.hash index 0adbe15710fd..a40f963a2e4c 100644 --- a/board/microchip/mpfs_icicle/patches/uboot/uboot.hash +++ b/board/microchip/mpfs_icicle/patches/uboot/uboot.hash @@ -1,2 +1,2 @@ # Locally calculated -sha256 8dab9abc2861d95e609cd62a44b4687d03dc13eae6487fd1ae1ded6398ddb0cd uboot-linux4microchip+fpga-2025.07.tar.gz +sha256 591c80f7e16d6f43192deb7ab7587ae81b31ba7c7de1a668c14b9997b6c976c8 uboot-linux4microchip+fpga-2025.10.tar.gz diff --git a/configs/beaglev_fire_defconfig b/configs/beaglev_fire_defconfig index bfaa8208e9a8..a5cda23242fe 100644 --- a/configs/beaglev_fire_defconfig +++ b/configs/beaglev_fire_defconfig @@ -1,6 +1,6 @@ BR2_riscv=y BR2_RISCV_ISA_RVC=y -BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_6_6=y +BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_6_12=y BR2_GLOBAL_PATCH_DIR="board/beagleboard/beaglev_fire/patches" BR2_DOWNLOAD_FORCE_CHECK_HASHES=y BR2_SYSTEM_DHCP="eth0" @@ -8,7 +8,7 @@ BR2_ROOTFS_OVERLAY="board/beagleboard/beaglev_fire/rootfs-overlay/" BR2_ROOTFS_POST_IMAGE_SCRIPT="board/beagleboard/beaglev_fire/post-image.sh" BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_TARBALL=y -BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,linux4microchip,linux,linux4microchip+fpga-2024.09.1)/linux-linux4microchip+fpga-2024.09.1.tar.gz" +BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,linux4microchip,linux,linux4microchip+fpga-2025.10)/linux-linux4microchip+fpga-2025.10.tar.gz" BR2_LINUX_KERNEL_DEFCONFIG="mpfs" BR2_LINUX_KERNEL_DTS_SUPPORT=y BR2_LINUX_KERNEL_INTREE_DTS_NAME="microchip/mpfs-beaglev-fire" @@ -19,7 +19,7 @@ BR2_TARGET_ROOTFS_EXT2_4=y BR2_TARGET_UBOOT=y BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y BR2_TARGET_UBOOT_CUSTOM_TARBALL=y -BR2_TARGET_UBOOT_CUSTOM_TARBALL_LOCATION="$(call github,linux4microchip,u-boot-mchp,linux4microchip+fpga-2024.09)/uboot-linux4microchip+fpga-2024.09.tar.gz" +BR2_TARGET_UBOOT_CUSTOM_TARBALL_LOCATION="$(call github,linux4microchip,u-boot-mchp,linux4microchip+fpga-2025.10)/uboot-linux4microchip+fpga-2025.10.tar.gz" BR2_TARGET_UBOOT_BOARD_DEFCONFIG="beaglev_fire" BR2_TARGET_UBOOT_CONFIG_FRAGMENT_FILES="board/beagleboard/beaglev_fire/uboot-fragment.config" BR2_TARGET_UBOOT_NEEDS_DTC=y diff --git a/configs/microchip_mpfs_icicle_defconfig b/configs/microchip_mpfs_icicle_defconfig index 52b865ef7775..1d8937c3d111 100644 --- a/configs/microchip_mpfs_icicle_defconfig +++ b/configs/microchip_mpfs_icicle_defconfig @@ -7,7 +7,7 @@ BR2_TARGET_GENERIC_HOSTNAME="mpfs_icicle" BR2_ROOTFS_POST_IMAGE_SCRIPT="board/microchip/mpfs_icicle/post-image.sh" BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_TARBALL=y -BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,linux4microchip,linux,linux4microchip+fpga-2025.07)/linux-linux4microchip+fpga-2025.07.tar.gz" +BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,linux4microchip,linux,linux4microchip+fpga-2025.10)/linux-linux4microchip+fpga-2025.10.tar.gz" BR2_LINUX_KERNEL_DEFCONFIG="mpfs" BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="board/microchip/mpfs_icicle/linux.fragment" BR2_LINUX_KERNEL_DTS_SUPPORT=y @@ -17,7 +17,7 @@ BR2_TARGET_ROOTFS_EXT2_4=y BR2_TARGET_UBOOT=y BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y BR2_TARGET_UBOOT_CUSTOM_TARBALL=y -BR2_TARGET_UBOOT_CUSTOM_TARBALL_LOCATION="$(call github,linux4microchip,u-boot-mchp,linux4microchip+fpga-2025.07)/uboot-linux4microchip+fpga-2025.07.tar.gz" +BR2_TARGET_UBOOT_CUSTOM_TARBALL_LOCATION="$(call github,linux4microchip,u-boot-mchp,linux4microchip+fpga-2025.10)/uboot-linux4microchip+fpga-2025.10.tar.gz" BR2_TARGET_UBOOT_BOARD_DEFCONFIG="microchip_mpfs_icicle" BR2_TARGET_UBOOT_CONFIG_FRAGMENT_FILES="board/microchip/mpfs_icicle/uboot-fragment-rootfs.config" BR2_TARGET_UBOOT_NEEDS_DTC=y diff --git a/package/Config.in b/package/Config.in index 258ad1883d3f..6284bea7f4ad 100644 --- a/package/Config.in +++ b/package/Config.in @@ -16,7 +16,6 @@ menu "Audio and video applications" source "package/bluez-alsa/Config.in" source "package/dvblast/Config.in" source "package/dvdauthor/Config.in" - source "package/dvdrw-tools/Config.in" source "package/espeak/Config.in" source "package/faad2/Config.in" source "package/ffmpeg/Config.in" diff --git a/package/asterisk/0005-Makefile-don-t-clean-menuselect.patch b/package/asterisk/0005-Makefile-don-t-clean-menuselect.patch new file mode 100644 index 000000000000..79c317485337 --- /dev/null +++ b/package/asterisk/0005-Makefile-don-t-clean-menuselect.patch @@ -0,0 +1,26 @@ +From 844c1cddf38fd91e15a93eef96c67a5834fc9a78 Mon Sep 17 00:00:00 2001 +From: Waldemar Brodkorb +Date: Sat, 10 Jan 2026 12:25:30 +0100 +Subject: [PATCH] Makefile: don't clean menuselect + +Upstream: not applicable +Signed-off-by: Waldemar Brodkorb +--- + Makefile | 1 - + 1 file changed, 1 deletion(-) + +diff --git a/Makefile b/Makefile +index b57f77477f..80035a09e7 100644 +--- a/Makefile ++++ b/Makefile +@@ -436,7 +436,6 @@ _clean: + rm -f doxygen.log + rm -rf latex + rm -f rest-api-templates/*.pyc +- @$(MAKE) -C menuselect clean + cp -f .cleancount .lastclean + + dist-clean: distclean +-- +2.47.3 + diff --git a/package/bind/bind.hash b/package/bind/bind.hash index d601e87b75e0..aaf3519ced1a 100644 --- a/package/bind/bind.hash +++ b/package/bind/bind.hash @@ -1,4 +1,4 @@ -# Verified from https://ftp.isc.org/isc/bind9/9.18.41/bind-9.18.41.tar.xz.asc +# Verified from https://ftp.isc.org/isc/bind9/9.18.44/bind-9.18.44.tar.xz.asc # with key D99CCEAF879747014F038D63182E23579462EFAA -sha256 6ddc1d981511c4da0b203b0513af131e5d15e5f1c261145736fe1f35dd1fe79d bind-9.18.41.tar.xz +sha256 81f5035a25c576af1a93f0061cf70bde6d00a0c7bd1274abf73f5b5389a6f82d bind-9.18.44.tar.xz sha256 9734825d67a3ac967b2c2f7c9a83c9e5db1c2474dbe9599157c3a4188749ebd4 COPYRIGHT diff --git a/package/bind/bind.mk b/package/bind/bind.mk index 8b336ab781c6..041541b03758 100644 --- a/package/bind/bind.mk +++ b/package/bind/bind.mk @@ -4,7 +4,7 @@ # ################################################################################ -BIND_VERSION = 9.18.41 +BIND_VERSION = 9.18.44 BIND_SOURCE= bind-$(BIND_VERSION).tar.xz BIND_SITE = https://ftp.isc.org/isc/bind9/$(BIND_VERSION) BIND_INSTALL_STAGING = YES diff --git a/package/brltty/0004-check-for-functions-inb-outb.patch b/package/brltty/0004-check-for-functions-inb-outb.patch new file mode 100644 index 000000000000..64f2a2d7a760 --- /dev/null +++ b/package/brltty/0004-check-for-functions-inb-outb.patch @@ -0,0 +1,98 @@ +From 876bdd3153c791a51422a43403143ff10acb6e82 Mon Sep 17 00:00:00 2001 +From: Bernd Kuhls +Date: Sat, 3 Jan 2026 15:35:48 +0100 +Subject: [PATCH] check for functions inb & outb + +Musl C library provides sys/io.h but inb and outb are missing on some +archs. This patch adds a configure check ported from sane-backends: +https://github.com/solanoalves/sane-backend/blob/059b97962ecb1b1ab068f524988d16c5b55bbd29/configure.ac#L314 +to fix build errors detected by buildroot autobuilders: +https://autobuild.buildroot.net/results/76d/76d18437241d1281566b76ed1cec2ba99c3532da//build-end.log + +./ports_glibc.c: In function 'readPort1': +./ports_glibc.c:54:10: error: implicit declaration of function 'inb' [-Wimplicit-function-declaration] + 54 | return inb(port); + | ^~~ +./ports_glibc.c: In function 'writePort1': +./ports_glibc.c:63:3: error: implicit declaration of function 'outb' [-Wimplicit-function-declaration] + 63 | outb(value, port); + | ^~~~ + +Upstream: https://github.com/brltty/brltty/commit/85cadac951cda709ce53d49923114595c16a8f16 + +Signed-off-by: Bernd Kuhls +--- + Programs/ports_glibc.c | 4 ++-- + config.h.in | 3 +++ + configure.ac | 19 +++++++++++++++++++ + 3 files changed, 24 insertions(+), 2 deletions(-) + +diff --git a/Programs/ports_glibc.c b/Programs/ports_glibc.c +index 4233f9ea0..4a57f626d 100644 +--- a/Programs/ports_glibc.c ++++ b/Programs/ports_glibc.c +@@ -50,7 +50,7 @@ disablePorts (unsigned short int base, unsigned short int count) { + + unsigned char + readPort1 (unsigned short int port) { +-#ifdef HAVE_SYS_IO_H ++#ifdef BRLTTY_HAVE_SYS_IO_H_WITH_INB_OUTB + return inb(port); + #else /* HAVE_SYS_IO_H */ + return 0; +@@ -59,7 +59,7 @@ readPort1 (unsigned short int port) { + + void + writePort1 (unsigned short int port, unsigned char value) { +-#ifdef HAVE_SYS_IO_H ++#ifdef BRLTTY_HAVE_SYS_IO_H_WITH_INB_OUTB + outb(value, port); + #endif /* HAVE_SYS_IO_H */ + } +diff --git a/config.h.in b/config.h.in +index 537d3af92..edea70cea 100644 +--- a/config.h.in ++++ b/config.h.in +@@ -331,6 +331,9 @@ extern "C" { + /* Define this if the header file sys/io.h exists. */ + #undef HAVE_SYS_IO_H + ++/* Define to 1 if you have the providing inb,outb. */ ++#undef BRLTTY_HAVE_SYS_IO_H_WITH_INB_OUTB ++ + /* Define this if the header file sys/modem.h exists. */ + #undef HAVE_SYS_MODEM_H + +diff --git a/configure.ac b/configure.ac +index b78d482f6..0a2a70dd0 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -961,6 +961,25 @@ AC_CHECK_FUNCS([shmget shm_open]) + AC_CHECK_FUNCS([getpeereid getpeerucred getzoneid]) + AC_CHECK_FUNCS([mempcpy wmempcpy]) + ++dnl sys/io.h might provide ioperm but not inb,outb (like for ++dnl non i386/x32/x86_64 with musl libc) ++if test "${ac_cv_header_sys_io_h}" = "yes"; then ++ AC_MSG_CHECKING([for inb,outb (provided by sys/io.h)]) ++ AC_LINK_IFELSE( ++ [AC_LANG_PROGRAM([[#include ]], ++ [[inb(0);outb(0,0);]])], ++ [AC_MSG_RESULT([yes]) ++ brltty_cv_have_sys_io_h_with_inb_outb="yes"], ++ [AC_MSG_RESULT([no]) ++ brltty_cv_have_sys_io_h_with_inb_outb="no" ++ AC_MSG_WARN([sys/io.h does not provide inb,outb (non i386/x32/x86_64 arch?)])]) ++ if test "$brltty_cv_have_sys_io_h_with_inb_outb" = "yes"; then ++ AC_DEFINE(BRLTTY_HAVE_SYS_IO_H_WITH_INB_OUTB, 1, [Define to 1 if you have the providing inb,outb.]) ++ fi ++else ++ brltty_cv_have_sys_io_h_with_inb_outb="no" ++fi ++ + case "${host_os}" + in + cygwin*|mingw*) +-- +2.47.3 + diff --git a/package/brltty/brltty.mk b/package/brltty/brltty.mk index 5e24288cbb95..495221012153 100644 --- a/package/brltty/brltty.mk +++ b/package/brltty/brltty.mk @@ -40,6 +40,7 @@ BRLTTY_CONF_OPTS = \ # Autoreconf is needed because we're patching configure.ac in # 0001-Fix-linking-error-on-mips64el and # 0002-configure.ac-link-fv-driver-with-ltinfo-only-if-avai. +# 0004-check-for-functions-inb-outb.patch # However, a plain autoreconf doesn't work, because this package # is only autoconf-based. define BRLTTY_AUTOCONF diff --git a/package/brotli/0001-disable-BROTLI_MODEL-macro-for-some-targets.patch b/package/brotli/0001-disable-BROTLI_MODEL-macro-for-some-targets.patch new file mode 100644 index 000000000000..d35b4b33360a --- /dev/null +++ b/package/brotli/0001-disable-BROTLI_MODEL-macro-for-some-targets.patch @@ -0,0 +1,46 @@ +From e230f474b87134e8c6c85b630084c612057f253e Mon Sep 17 00:00:00 2001 +From: Evgenii Kliuchnikov +Date: Mon, 3 Nov 2025 07:20:19 -0800 +Subject: [PATCH] disable BROTLI_MODEL macro for some targets + +PiperOrigin-RevId: 827486322 + +Upstream: https://github.com/google/brotli/commit/e230f474b87134e8c6c85b630084c612057f253e + +Signed-off-by: Bernd Kuhls +--- + c/common/platform.h | 9 +++++++-- + 1 file changed, 7 insertions(+), 2 deletions(-) + +diff --git a/c/common/platform.h b/c/common/platform.h +index b59f9b809..e1254d5ca 100644 +--- a/c/common/platform.h ++++ b/c/common/platform.h +@@ -213,6 +213,10 @@ To apply compiler hint, enclose the branching condition into macros, like this: + #define BROTLI_TARGET_MIPS64 + #endif + ++#if defined(__ia64__) || defined(_M_IA64) ++#define BROTLI_TARGET_IA64 ++#endif ++ + #if defined(BROTLI_TARGET_X64) || defined(BROTLI_TARGET_ARMV8_64) || \ + defined(BROTLI_TARGET_POWERPC64) || defined(BROTLI_TARGET_RISCV64) || \ + defined(BROTLI_TARGET_LOONGARCH64) || defined(BROTLI_TARGET_MIPS64) +@@ -665,13 +669,14 @@ BROTLI_UNUSED_FUNCTION void BrotliSuppressUnusedFunctions(void) { + #undef BROTLI_TEST + #endif + +-#if BROTLI_GNUC_HAS_ATTRIBUTE(model, 3, 0, 3) ++#if !defined(BROTLI_MODEL) && BROTLI_GNUC_HAS_ATTRIBUTE(model, 3, 0, 3) && \ ++ !defined(BROTLI_TARGET_IA64) && !defined(BROTLI_TARGET_LOONGARCH64) + #define BROTLI_MODEL(M) __attribute__((model(M))) + #else + #define BROTLI_MODEL(M) /* M */ + #endif + +-#if BROTLI_GNUC_HAS_ATTRIBUTE(cold, 4, 3, 0) ++#if !defined(BROTLI_COLD) && BROTLI_GNUC_HAS_ATTRIBUTE(cold, 4, 3, 0) + #define BROTLI_COLD __attribute__((cold)) + #else + #define BROTLI_COLD /* cold */ diff --git a/package/dvdrw-tools/0001-limits.h.patch b/package/dvdrw-tools/0001-limits.h.patch deleted file mode 100644 index ccda8eeb72e3..000000000000 --- a/package/dvdrw-tools/0001-limits.h.patch +++ /dev/null @@ -1,23 +0,0 @@ -transport.hxx: add limits.h include now needed because of kernel changes - -Signed-off-by: Steve Kenton - -diff -pruN dvd+rw-tools-7.1.ori/transport.hxx dvd+rw-tools-7.1/transport.hxx ---- dvd+rw-tools-7.1.ori/transport.hxx 2008-03-01 04:34:43.000000000 -0600 -+++ dvd+rw-tools-7.1/transport.hxx 2015-01-18 15:47:24.245863631 -0600 -@@ -9,6 +9,7 @@ - #if defined(__unix) || defined(__unix__) - #include - #include -+#include - #include - #include - #include -@@ -40,6 +41,7 @@ inline long getmsecs() - #include - #include - #include -+#include - #define ssize_t LONG_PTR - #define off64_t __int64 - diff --git a/package/dvdrw-tools/0002-Include-sysmacros.h-to-compile-with-newer-gcc.patch b/package/dvdrw-tools/0002-Include-sysmacros.h-to-compile-with-newer-gcc.patch deleted file mode 100644 index 29c3a73a4b9f..000000000000 --- a/package/dvdrw-tools/0002-Include-sysmacros.h-to-compile-with-newer-gcc.patch +++ /dev/null @@ -1,14 +0,0 @@ -growisofs.c: include sysmacros.h to compile with glibc-2.28 - -Signed-off-by: Giulio Benetti - -diff -urpN dvd+rw-tools-7.1.orig/growisofs.c dvd+rw-tools-7.1/growisofs.c ---- dvd+rw-tools-7.1.orig/growisofs.c 2018-09-08 01:56:11.686656819 +0200 -+++ dvd+rw-tools-7.1/growisofs.c 2018-09-08 02:11:45.868778471 +0200 -@@ -441,6 +441,7 @@ - #include - #include - #include -+#include - #include - #include "mp.h" diff --git a/package/dvdrw-tools/Config.in b/package/dvdrw-tools/Config.in deleted file mode 100644 index d4d6bd2cd3c7..000000000000 --- a/package/dvdrw-tools/Config.in +++ /dev/null @@ -1,53 +0,0 @@ -comment "dvdrw-tools needs a toolchain w/ threads, C++, wchar" - depends on BR2_USE_MMU - depends on !BR2_TOOLCHAIN_HAS_THREADS || !BR2_INSTALL_LIBSTDCPP || \ - !BR2_USE_WCHAR - -config BR2_PACKAGE_DVDRW_TOOLS - bool "dvdrw-tools" - depends on BR2_USE_MMU # fork() - depends on BR2_TOOLCHAIN_HAS_THREADS - depends on BR2_INSTALL_LIBSTDCPP - depends on BR2_USE_WCHAR - help - The dvd+rw-tools are used to master Blu-ray Disc - and DVD Disc media, both +RW/+R and -RW/-R. Note: - The +RW in the name is a historical artifact. This - package contains the widely used growisofs program. - - Buildroot does not support packages with a '+' sign - in their name, which explains why it is named - dvdrw-tools and not dvd+rw-tools. - - Because dvd+rw-tools does not directly interact with - disc media it uses a separate media backend program. - The usual backend is mkisofs from the cdrtools package. - However, cdrtools is not currently part of buildroot. - - The Linux From Scratch project uses uses xorriso for the - media backend and Ubuntu uses cdrkit for the backend. - Choose the one which seems most appropriate for your use. - NOTE: xorriso does not currently support UDF. - - http://fy.chalmers.se/~appro/linux/DVD+RW/tools - -if BR2_PACKAGE_DVDRW_TOOLS -choice - prompt "Media Backend" - help - Choose which media backend program to use. - -config BR2_PACKAGE_DVDRW_TOOLS_CDRKIT_BACKEND - bool "cdrkit" - select BR2_PACKAGE_CDRKIT - help - Symlink mkisofs to genisoimage from the cdrkit package. - -config BR2_PACKAGE_DVDRW_TOOLS_XORRISO_BACKEND - bool "xorriso" - select BR2_PACKAGE_XORRISO - help - Symlink mkisofs to xorrisofs from the xorriso package. - -endchoice -endif diff --git a/package/dvdrw-tools/dvdrw-tools.hash b/package/dvdrw-tools/dvdrw-tools.hash deleted file mode 100644 index a5ed6ad521f4..000000000000 --- a/package/dvdrw-tools/dvdrw-tools.hash +++ /dev/null @@ -1,3 +0,0 @@ -# Locally computed using sha256sum -sha256 f8d60f822e914128bcbc5f64fbe3ed131cbff9045dca7e12c5b77b26edde72ca dvd+rw-tools-7.1.tar.gz -sha256 91df39d1816bfb17a4dda2d3d2c83b1f6f2d38d53e53e41e8f97ad5ac46a0cad LICENSE diff --git a/package/dvdrw-tools/dvdrw-tools.mk b/package/dvdrw-tools/dvdrw-tools.mk deleted file mode 100644 index 5dab5466079d..000000000000 --- a/package/dvdrw-tools/dvdrw-tools.mk +++ /dev/null @@ -1,35 +0,0 @@ -################################################################################ -# -# dvdrw-tools -# -################################################################################ - -DVDRW_TOOLS_VERSION = 7.1 -DVDRW_TOOLS_SOURCE = dvd+rw-tools-$(DVDRW_TOOLS_VERSION).tar.gz -DVDRW_TOOLS_SITE = http://fy.chalmers.se/~appro/linux/DVD+RW/tools -DVDRW_TOOLS_LICENSE = GPL-2.0 -DVDRW_TOOLS_LICENSE_FILES = LICENSE -DVDRW_TOOLS_DEPENDENCIES = host-m4 - -define DVDRW_TOOLS_BUILD_CMDS - $(TARGET_MAKE_ENV) $(MAKE) $(TARGET_CONFIGURE_OPTS) -C $(@D) -endef - -ifeq ($(BR2_PACKAGE_DVDRW_TOOLS_CDRKIT_BACKEND),y) -DVDRW_TOOLS_BACKEND = genisoimage -DVDRW_TOOLS_DEPENDENCIES += cdrkit -else ifeq ($(BR2_PACKAGE_DVDRW_TOOLS_XORRISO_BACKEND),y) -DVDRW_TOOLS_BACKEND = xorrisofs -DVDRW_TOOLS_DEPENDENCIES += xorriso -endif - -define DVDRW_TOOLS_INSTALL_TARGET_CMDS - $(INSTALL) -m 0755 -D $(@D)/dvd-ram-control $(TARGET_DIR)/usr/bin/dvd-ram-control - $(INSTALL) -m 0755 -D $(@D)/dvd+rw-booktype $(TARGET_DIR)/usr/bin/dvd+rw-booktype - $(INSTALL) -m 0755 -D $(@D)/dvd+rw-format $(TARGET_DIR)/usr/bin/dvd+rw-format - $(INSTALL) -m 0755 -D $(@D)/dvd+rw-mediainfo $(TARGET_DIR)/usr/bin/dvd+rw-mediainfo - $(INSTALL) -m 0755 -D $(@D)/growisofs $(TARGET_DIR)/usr/bin/growisofs - ln -s -f $(DVDRW_TOOLS_BACKEND) $(TARGET_DIR)/usr/bin/mkisofs -endef - -$(eval $(generic-package)) diff --git a/package/glibc/glibc.mk b/package/glibc/glibc.mk index e3453b8cc2d0..44bf9c4b06f5 100644 --- a/package/glibc/glibc.mk +++ b/package/glibc/glibc.mk @@ -28,6 +28,15 @@ GLIBC_CPE_ID_VERSION = $(word 1, $(subst -,$(space),$(GLIBC_VERSION))) # Fixed by glibc-2.41-64-g1e16d0096d80a6e12d5bfa8e0aafdd13c47efd65 GLIBC_IGNORE_CVES += CVE-2025-8058 +# Fixed by glibc-2.42-49-gb0ec8fb689df862171f0f78994a3bdeb51313545 +GLIBC_IGNORE_CVES += CVE-2026-0861 + +# Fixed by glibc-2.42-50-g453e6b8dbab935257eb0802b0c97bca6b67ba30e +GLIBC_IGNORE_CVES += CVE-2026-0915 + +# Fixed by glibc-2.42-51-gcbf39c26b25801e9bc88499b4fd361ac172d4125 +GLIBC_IGNORE_CVES += CVE-2025-15281 + # This CVE is considered as not being security issues by # upstream glibc: # https://security-tracker.debian.org/tracker/CVE-2010-4756 diff --git a/package/kvm-unit-tests/Config.in b/package/kvm-unit-tests/Config.in index 0d66a08dd74f..817d3c4a8fcf 100644 --- a/package/kvm-unit-tests/Config.in +++ b/package/kvm-unit-tests/Config.in @@ -1,13 +1,13 @@ config BR2_PACKAGE_KVM_UNIT_TESTS_ARCH_SUPPORTS bool # On ARM, it needs virtualization extensions and little endian CPUs - default y if (BR2_arm || BR2_aarch64) && \ + default y if BR2_arm && \ (BR2_cortex_a7 || BR2_cortex_a12 || \ BR2_cortex_a15 || BR2_cortex_a15_a7 || \ BR2_cortex_a17 || BR2_cortex_a17_a7 || \ - BR2_cortex_a55 || BR2_cortex_a75 || \ - BR2_cortex_a75_a55 || BR2_cortex_a76 || \ - BR2_cortex_a76_a55) + BR2_cortex_a76 || BR2_cortex_a76_a55) + # For AArch64 we can assume all v8.0+ support virtualization + default y if BR2_aarch64 default y if BR2_riscv default y if BR2_i386 || BR2_x86_64 default y if BR2_powerpc64 || BR2_powerpc64le diff --git a/package/libbsd/0001-configure.ac-add-support-for-uClibc-ng.patch b/package/libbsd/0001-configure.ac-add-support-for-uClibc-ng.patch new file mode 100644 index 000000000000..8993df9349dc --- /dev/null +++ b/package/libbsd/0001-configure.ac-add-support-for-uClibc-ng.patch @@ -0,0 +1,88 @@ +From 5ce5a4aa22e90301816bd1f24c24be64592dc01c Mon Sep 17 00:00:00 2001 +From: Thomas Petazzoni +Date: Wed, 4 Feb 2026 11:54:30 +0100 +Subject: [PATCH] configure.ac: add support for uClibc-ng + +The proposed support is based on the comment at +https://gitlab.freedesktop.org/libbsd/libbsd/-/merge_requests/32#note_3252386, +with the following changes: + +- Assume explicit_bzero() is available, since it's been available + since uClibc-ng 1.0.47, which has been released years ago. + +- Assume reallocarry() is NOT available, because its availability + depends on the exact malloc() implementation configured in + uClibc-ng. See + https://gogs.waldemar-brodkorb.de/oss/uclibc-ng/commit/77c8c358b52e875c8f4568ecf6c327b95dddbd05 + for details. + +Upstream: https://gitlab.freedesktop.org/libbsd/libbsd/-/merge_requests/33 +Signed-off-by: Thomas Petazzoni +--- + configure.ac | 50 ++++++++++++++++++++++++++++++++++++++++++++++++++ + 1 file changed, 50 insertions(+) + +diff --git a/configure.ac b/configure.ac +index 2a15d72..d131861 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -214,6 +214,56 @@ AS_CASE([$host_os], + abi_vis=yes + abi_wcsl=yes + ], ++ [*-uclibc*], [ ++ api_time_macros=no ++ abi_accmode=yes ++ abi_arc4random=yes ++ abi_arc4random_stir=yes ++ abi_asprintf=no ++ abi_bsd_getopt=yes ++ abi_closefrom=yes ++ abi_consttime_memequal=yes ++ abi_err=no ++ abi_errc=yes ++ abi_expand_number=yes ++ # Available since uClibc-ng 1.0.47 ++ abi_explicit_bzero=yes ++ abi_explicit_memset=yes ++ abi_fgetln=yes ++ abi_flopen=yes ++ abi_fmtcheck=yes ++ abi_fpurge=yes ++ abi_freezero=yes ++ abi_funopen=yes ++ abi_getbsize=yes ++ abi_getpeereid=yes ++ abi_humanize_number=yes ++ abi_id_from_name=yes ++ abi_inet_net_pton=no ++ abi_md5=no ++ abi_name_from_id=yes ++ abi_nlist=yes ++ abi_pidfile=yes ++ abi_proctitle=yes ++ abi_progname=yes ++ abi_readpassphrase=yes ++ # Depending on the uClibc-ng configuration, reallocarray() may or ++ # may not be available so assume it isn't. ++ abi_reallocarray=no ++ abi_reallocf=ues ++ abi_recallocarray=yes ++ abi_stringlist=yes ++ abi_sort=yes ++ abi_strl=no ++ abi_strmode=yes ++ abi_strnstr=yes ++ abi_strtonum=yes ++ abi_strtox=yes ++ abi_timeconv=yes ++ abi_transparent_libmd=no ++ abi_vis=yes ++ abi_wcsl=yes ++ ], + [darwin*], [ + api_time_macros=no + +-- +2.52.0 + diff --git a/package/libbsd/libbsd.mk b/package/libbsd/libbsd.mk index 557b49fca6ff..af285e05b0e6 100644 --- a/package/libbsd/libbsd.mk +++ b/package/libbsd/libbsd.mk @@ -13,5 +13,6 @@ LIBBSD_LICENSE_FILES = COPYING LIBBSD_CPE_ID_VENDOR = freedesktop LIBBSD_INSTALL_STAGING = YES LIBBSD_DEPENDENCIES = libmd +LIBBSD_AUTORECONF = YES $(eval $(autotools-package)) diff --git a/package/libcurl/libcurl.mk b/package/libcurl/libcurl.mk index e1e5a7facb66..d9a712bcb6aa 100644 --- a/package/libcurl/libcurl.mk +++ b/package/libcurl/libcurl.mk @@ -58,7 +58,8 @@ endif ifeq ($(BR2_PACKAGE_LIBCURL_OPENSSL),y) LIBCURL_DEPENDENCIES += openssl LIBCURL_CONF_OPTS += --with-openssl=$(STAGING_DIR)/usr \ - --with-ca-path=/etc/ssl/certs + --with-ca-path=/etc/ssl/certs \ + --with-ca-bundle=/etc/ssl/certs/ca-certificates.crt else LIBCURL_CONF_OPTS += --without-openssl endif diff --git a/package/libite/Config.in b/package/libite/Config.in index 80d29791dba7..516d1bff98ad 100644 --- a/package/libite/Config.in +++ b/package/libite/Config.in @@ -1,5 +1,6 @@ config BR2_PACKAGE_LIBITE bool "libite" + depends on BR2_USE_MMU # fork() help Libite is a lightweight library of frog DNA. It can be used to fill the gaps in any dinosaur project. It holds useful diff --git a/package/libite/libite.hash b/package/libite/libite.hash index 3abad09b0ad1..c593f7a66dc8 100644 --- a/package/libite/libite.hash +++ b/package/libite/libite.hash @@ -1,7 +1,7 @@ # Upstream .sha256 from GitHub -sha256 0185c3e76874c5821825deaf17cd45e81ce49aaa424e09de5f3665243c59026b libite-2.6.1.tar.xz +sha256 0550ac5670836db85569786e00860d1d6999df8f74005307c290371c990e1dbd libite-2.6.2.tar.xz # Locally calculated sha256 3a2b964c1772d03ab17b73a389ecce9151e0b190a9247817a2c009b16d356422 LICENSE sha256 c2882adb51555b836f35babc59f618d9ddceadcaa2d1dc80bbd4699614d2cd14 src/chomp.c -sha256 bff7fa7b74324f13a24d56ebb8b49bc9c63ea01836a1c8b5a6afcbbabed62918 src/pidfile.c +sha256 b6cc7074a27b26ee4e1ccda8d634d485d0f6f819e564c663c28ed61f4cc2b451 src/pidfile.c diff --git a/package/libite/libite.mk b/package/libite/libite.mk index e4bd8454873c..beb8c27ba744 100644 --- a/package/libite/libite.mk +++ b/package/libite/libite.mk @@ -4,7 +4,7 @@ # ################################################################################ -LIBITE_VERSION = 2.6.1 +LIBITE_VERSION = 2.6.2 LIBITE_SOURCE = libite-$(LIBITE_VERSION).tar.xz LIBITE_SITE = https://github.com/troglobit/libite/releases/download/v$(LIBITE_VERSION) LIBITE_LICENSE = MIT, X11, ISC, BSD-2-Clause diff --git a/package/libopenssl/0004-aes-gcm-ppc.pl-Removed-.localentry-directive.patch b/package/libopenssl/0004-aes-gcm-ppc.pl-Removed-.localentry-directive.patch new file mode 100644 index 000000000000..7c507a26874e --- /dev/null +++ b/package/libopenssl/0004-aes-gcm-ppc.pl-Removed-.localentry-directive.patch @@ -0,0 +1,69 @@ +From 5aaa7e5fdc59e88a13d2911cb86d814d4e2669da Mon Sep 17 00:00:00 2001 +From: Danny Tsen +Date: Wed, 28 Jan 2026 07:23:13 -0500 +Subject: [PATCH] aes-gcm-ppc.pl: Removed .localentry directive + +Otherwise there is mixing of ELFv1 ABI and ELFv2 ABI directives +and PPC64 big endian builds fail. + +Fixes #29815 + +Signed-off-by: Danny Tsen + +Reviewed-by: Paul Dale +Reviewed-by: Shane Lontis +Reviewed-by: Tomas Mraz +MergeDate: Tue Feb 3 08:39:50 2026 +(Merged from https://github.com/openssl/openssl/pull/29827) + +Upstream: https://github.com/openssl/openssl/commit/5aaa7e5fdc59e88a13d2911cb86d814d4e2669da + +Signed-off-by: Bernd Kuhls +--- + crypto/modes/asm/aes-gcm-ppc.pl | 5 ----- + 1 file changed, 5 deletions(-) + +diff --git a/crypto/modes/asm/aes-gcm-ppc.pl b/crypto/modes/asm/aes-gcm-ppc.pl +index 68918a9305a2b..fd5dcc22a6117 100644 +--- a/crypto/modes/asm/aes-gcm-ppc.pl ++++ b/crypto/modes/asm/aes-gcm-ppc.pl +@@ -409,7 +409,6 @@ + ################################################################################ + .align 4 + aes_gcm_crypt_1x: +-.localentry aes_gcm_crypt_1x,0 + + cmpdi 5, 16 + bge __More_1x +@@ -492,7 +491,6 @@ + ################################################################################ + .align 4 + __Process_partial: +-.localentry __Process_partial,0 + + # create partial mask + vspltisb 16, -1 +@@ -564,7 +562,6 @@ + .global ppc_aes_gcm_encrypt + .align 5 + ppc_aes_gcm_encrypt: +-.localentry ppc_aes_gcm_encrypt,0 + + SAVE_REGS + LOAD_HASH_TABLE +@@ -752,7 +749,6 @@ + .global ppc_aes_gcm_decrypt + .align 5 + ppc_aes_gcm_decrypt: +-.localentry ppc_aes_gcm_decrypt, 0 + + SAVE_REGS + LOAD_HASH_TABLE +@@ -1032,7 +1028,6 @@ + .size ppc_aes_gcm_decrypt,.-ppc_aes_gcm_decrypt + + aes_gcm_out: +-.localentry aes_gcm_out,0 + + mr 3, 11 # return count + diff --git a/package/libwebsockets/libwebsockets.mk b/package/libwebsockets/libwebsockets.mk index 7806b64bbc04..2d3395c5dd11 100644 --- a/package/libwebsockets/libwebsockets.mk +++ b/package/libwebsockets/libwebsockets.mk @@ -18,15 +18,14 @@ LIBWEBSOCKETS_CONF_OPTS = \ -DLWS_WITHOUT_EXTENSIONS=OFF # If LWS_MAX_SMP=1, then there is no code related to pthreads compiled -# in the library. If unset, LWS_MAX_SMP defaults to 32 and a small -# amount of pthread mutex code is built into the library. +# in the library. If unset, LWS_MAX_SMP defaults to 1. ifeq ($(BR2_TOOLCHAIN_HAS_THREADS),) LIBWEBSOCKETS_CONF_OPTS += \ -DLWS_MAX_SMP=1 \ -DLWS_WITH_SYS_SMD=OFF else LIBWEBSOCKETS_CONF_OPTS += \ - -DLWS_MAX_SMP= \ + -DLWS_MAX_SMP=32 \ -DLWS_WITH_SYS_SMD=ON endif diff --git a/package/mesa3d/0004-blake3-add-blake3_neon.c-only-for-little-endian-arch.patch b/package/mesa3d/0004-blake3-add-blake3_neon.c-only-for-little-endian-arch.patch new file mode 100644 index 000000000000..5e4c89b7140b --- /dev/null +++ b/package/mesa3d/0004-blake3-add-blake3_neon.c-only-for-little-endian-arch.patch @@ -0,0 +1,47 @@ +From c4292cc5af3278b294c2baa5464c9985228205fe Mon Sep 17 00:00:00 2001 +From: Bernd Kuhls +Date: Tue, 3 Feb 2026 20:13:49 +0100 +Subject: [PATCH] blake3: add blake3_neon.c only for little endian archs + +Fixes build error on big endian archs: + +Build machine cpu family: x86_64 +Build machine cpu: x86_64 +Host machine cpu family: aarch64 +Host machine cpu: cortex-a53 +Target machine cpu family: aarch64 +Target machine cpu: cortex-a53 +[...] +../src/util/blake3/blake3_neon.c:6:2: error: #error "This implementation only supports little-endian ARM." + 6 | #error "This implementation only supports little-endian ARM." + +as detected by buildroot autobuilders: +https://autobuild.buildroot.net/results/efd/efd07d97df4e0c1ceb07fc26e17898afef5435b9/build-end.log + +For reference: +$ grep -i endian output/build/mesa3d-25.3.4/buildroot-build/cross-compilation.conf +endian = 'big' + +Upstream: https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39681 + +Signed-off-by: Bernd Kuhls +--- + src/util/blake3/meson.build | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/util/blake3/meson.build b/src/util/blake3/meson.build +index bd51cfb68c3..767da2c6ec3 100644 +--- a/src/util/blake3/meson.build ++++ b/src/util/blake3/meson.build +@@ -35,7 +35,7 @@ elif cpu_family == 'x86' + # There are no assembly versions for 32-bit x86. Compiling the C versions require a different compilation flag per + # file, which is not well supported by Meson. Leave SIMD support out for now. + blake3_defs += blake3_x86_no_simd_defs +-elif cpu_family == 'aarch64' ++elif cpu_family == 'aarch64' and target_machine.endian() == 'little' + files_blake3 += ['blake3_neon.c'] + endif + +-- +2.47.3 + diff --git a/package/openobex/0001-Fix-FTBFS-with-CMake-4.patch b/package/openobex/0001-Fix-FTBFS-with-CMake-4.patch new file mode 100644 index 000000000000..9ceee934744c --- /dev/null +++ b/package/openobex/0001-Fix-FTBFS-with-CMake-4.patch @@ -0,0 +1,29 @@ +From bfd33e3ebf1fe253542b9ea2b6e034c8ce30866d Mon Sep 17 00:00:00 2001 +From: Adrian Bunk +Date: Sat, 17 Jan 2026 11:14:15 +0100 +Subject: [PATCH] Fix FTBFS with CMake 4 + +Bug-Debian: https://bugs.debian.org/1113178 + +Downloaded from https://sources.debian.org/src/libopenobex/1.7.2-2.3/debian/patches/cmake-4.patch + +Upstream: https://gitlab.com/openobex/mainline/-/merge_requests/3 + +Signed-off-by: Bernd Kuhls +--- + CMakeLists.txt | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 813f900..b237f93 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -1,4 +1,4 @@ +-cmake_minimum_required ( VERSION 3.1 FATAL_ERROR ) ++cmake_minimum_required ( VERSION 3.5 FATAL_ERROR ) + + project ( openobex + LANGUAGES C +-- +2.47.3 + diff --git a/package/pkg-cmake.mk b/package/pkg-cmake.mk index ba287d244a34..f572bdebb3da 100644 --- a/package/pkg-cmake.mk +++ b/package/pkg-cmake.mk @@ -287,6 +287,8 @@ define TOOLCHAIN_CMAKE_INSTALL_FILES > $(HOST_DIR)/share/buildroot/toolchainfile.cmake $(Q)$(INSTALL) -D -m 0644 support/misc/Buildroot.cmake \ $(HOST_DIR)/share/buildroot/Platform/Buildroot.cmake + $(Q)$(INSTALL) -D -m 0644 support/misc/Buildroot-Initialize.cmake \ + $(HOST_DIR)/share/buildroot/Platform/Buildroot-Initialize.cmake endef TOOLCHAIN_POST_INSTALL_STAGING_HOOKS += TOOLCHAIN_CMAKE_INSTALL_FILES diff --git a/package/qemu/Config.in b/package/qemu/Config.in index ff7423bc4cea..e16eafe446cd 100644 --- a/package/qemu/Config.in +++ b/package/qemu/Config.in @@ -54,11 +54,27 @@ config BR2_PACKAGE_QEMU_SYSTEM depends on !BR2_STATIC_LIBS # dtc select BR2_PACKAGE_PIXMAN select BR2_PACKAGE_QEMU_FDT if !BR2_PACKAGE_QEMU_CHOOSE_TARGETS + # Make sure at least one of tcg or kvm is enabled + select BR2_PACKAGE_QEMU_SYSTEM_TCG if !BR2_PACKAGE_QEMU_SYSTEM_KVM help Say 'y' to build system emulators/virtualisers. if BR2_PACKAGE_QEMU_SYSTEM +config BR2_PACKAGE_QEMU_SYSTEM_KVM + bool "Enable KVM system virtualisation" + default y + help + Say 'y' here to enable a QEMU with KVM support. + If unsure, say 'y' + +config BR2_PACKAGE_QEMU_SYSTEM_TCG + bool "Enable TCG system emulation" + default y + help + Say 'y' here to enable QEMU binaries which can emulate foreign + architectures using the TCG JIT. + config BR2_PACKAGE_QEMU_BLOBS bool "Install binary blobs" default y @@ -130,12 +146,11 @@ config BR2_PACKAGE_QEMU_LINUX_USER config BR2_PACKAGE_QEMU_CHOOSE_TARGETS bool "Select individual emulator targets" - depends on BR2_PACKAGE_QEMU_SYSTEM || BR2_PACKAGE_QEMU_LINUX_USER + depends on BR2_PACKAGE_QEMU_SYSTEM_TCG || BR2_PACKAGE_QEMU_LINUX_USER help - By default, all targets (system and/or user, subject to the - corresponding options, above) are built. If you only need a - subset of the emulated targets, say 'y' here and enable at - least one target, below. + By default, all targets system targets are built. If you + only need a subset of the emulated targets, say 'y' here and + enable at least one target, below. if BR2_PACKAGE_QEMU_CHOOSE_TARGETS diff --git a/package/qemu/qemu.mk b/package/qemu/qemu.mk index 1672ac8f1971..97f8e220917c 100644 --- a/package/qemu/qemu.mk +++ b/package/qemu/qemu.mk @@ -48,6 +48,19 @@ QEMU_VARS = LIBTOOL=$(HOST_DIR)/bin/libtool ifeq ($(BR2_PACKAGE_QEMU_SYSTEM),y) QEMU_DEPENDENCIES += pixman QEMU_OPTS += --enable-system + +ifeq ($(BR2_PACKAGE_QEMU_SYSTEM_KVM), y) +QEMU_OPTS += --enable-kvm +else +QEMU_OPTS += --disable-kvm +endif + +ifeq ($(BR2_PACKAGE_QEMU_SYSTEM_TCG), y) +QEMU_OPTS += --enable-tcg +else +QEMU_OPTS += --disable-tcg +endif + QEMU_TARGET_LIST_$(BR2_PACKAGE_QEMU_TARGET_AARCH64) += aarch64-softmmu QEMU_TARGET_LIST_$(BR2_PACKAGE_QEMU_TARGET_ALPHA) += alpha-softmmu QEMU_TARGET_LIST_$(BR2_PACKAGE_QEMU_TARGET_ARM) += arm-softmmu @@ -333,7 +346,6 @@ define QEMU_CONFIGURE_CMDS --disable-whpx \ --disable-xen \ --enable-attr \ - --enable-kvm \ --enable-vhost-net \ --disable-download \ --disable-hexagon-idef-parser \ diff --git a/package/rpi-firmware/Config.in b/package/rpi-firmware/Config.in index 4dda33a7130a..625f0ccf67c9 100644 --- a/package/rpi-firmware/Config.in +++ b/package/rpi-firmware/Config.in @@ -100,4 +100,13 @@ config BR2_PACKAGE_RPI_FIRMWARE_INSTALL_DTB_OVERLAYS overlays, to support HATs (Hardware Attached on Top, add-on modules). +config BR2_PACKAGE_RPI_FIRMWARE_EXTRA_FILES + string "List of path(s) to additional file(s) in boot partition" + help + Space-separated path(s) to file(s) that should be stored + in the boot partition. They will be stored under their own + name in rpi-firmware. They can override any of the other + files. Use cases include autoboot configuration, + alternative cmdline.txt files, additional DTB overlays. + endif # BR2_PACKAGE_RPI_FIRMWARE diff --git a/package/rpi-firmware/rpi-firmware.mk b/package/rpi-firmware/rpi-firmware.mk index 83d080899044..f1b1b110cec9 100644 --- a/package/rpi-firmware/rpi-firmware.mk +++ b/package/rpi-firmware/rpi-firmware.mk @@ -62,12 +62,20 @@ define RPI_FIRMWARE_INSTALL_DTB_OVERLAYS endef endif +RPI_FIRMWARE_EXTRA_FILES = $(call qstrip,$(BR2_PACKAGE_RPI_FIRMWARE_EXTRA_FILES)) +define RPI_FIRMWARE_INSTALL_EXTRA_FILES + $(foreach f,$(RPI_FIRMWARE_EXTRA_FILES), \ + $(INSTALL) -D -m 0644 $(f) $(BINARIES_DIR)/rpi-firmware/$(notdir $(f)) + ) +endef + define RPI_FIRMWARE_INSTALL_IMAGES_CMDS $(RPI_FIRMWARE_INSTALL_BIN) $(RPI_FIRMWARE_INSTALL_CONFIG) $(RPI_FIRMWARE_INSTALL_CMDLINE) $(RPI_FIRMWARE_INSTALL_DTB) $(RPI_FIRMWARE_INSTALL_DTB_OVERLAYS) + $(RPI_FIRMWARE_INSTALL_EXTRA_FILES) endef $(eval $(generic-package)) diff --git a/package/screen/screen.mk b/package/screen/screen.mk index 74453faff8b5..c85abaf4117b 100644 --- a/package/screen/screen.mk +++ b/package/screen/screen.mk @@ -13,7 +13,7 @@ SCREEN_SELINUX_MODULES = screen SCREEN_DEPENDENCIES = ncurses SCREEN_AUTORECONF = YES SCREEN_CONF_ENV = CFLAGS="$(TARGET_CFLAGS)" -SCREEN_CONF_OPTS = --enable-colors256 +SCREEN_CONF_OPTS = --enable-colors256 --enable-socket-dir SCREEN_INSTALL_TARGET_OPTS = DESTDIR=$(TARGET_DIR) SCREEN=screen install_bin ifeq ($(BR2_PACKAGE_LIBXCRYPT),y) diff --git a/package/strongswan/0001-eap_mschapv2_failure_request_len.patch b/package/strongswan/0001-eap_mschapv2_failure_request_len.patch new file mode 100644 index 000000000000..8442cc781630 --- /dev/null +++ b/package/strongswan/0001-eap_mschapv2_failure_request_len.patch @@ -0,0 +1,46 @@ +From dda24815d148b91209ebf2d27e3a7acefe9b6435 Mon Sep 17 00:00:00 2001 +From: Tobias Brunner +Date: Thu, 9 Oct 2025 11:33:45 +0200 +Subject: [PATCH] eap-mschapv2: Fix length check for Failure Request packets on + the client + +For message lengths between 6 and 8, subtracting HEADER_LEN (9) causes +`message_len` to become negative, which is then used in calls to malloc() +and memcpy() that both take size_t arguments, causing an integer +underflow. + +For 6 and 7, the huge size requested from malloc() will fail (it exceeds +PTRDIFF_MAX) and the returned NULL pointer will cause a segmentation +fault in memcpy(). + +However, for 8, the allocation is 0, which succeeds. But then the -1 +passed to memcpy() causes a heap-based buffer overflow (and possibly a +segmentation fault when attempting to read/write that much data). +Fortunately, if compiled with -D_FORTIFY_SOURCE=3 (the default on e.g. +Ubuntu), the compiler will use __memcpy_chk(), which prevents that buffer +overflow and causes the daemon to get aborted immediately instead. + +Fixes: f98cdf7a4765 ("adding plugin for EAP-MS-CHAPv2") +Fixes: CVE-2025-62291 +Upstream: https://github.com/strongswan/strongswan/commit/c687ada6a6f68913651e355fd09f906893096b32 +Signed-off-by: Waldemar Brodkorb +--- + src/libcharon/plugins/eap_mschapv2/eap_mschapv2.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/libcharon/plugins/eap_mschapv2/eap_mschapv2.c b/src/libcharon/plugins/eap_mschapv2/eap_mschapv2.c +index 21cc95a6a360..35faad2e0bb5 100644 +--- a/src/libcharon/plugins/eap_mschapv2/eap_mschapv2.c ++++ b/src/libcharon/plugins/eap_mschapv2/eap_mschapv2.c +@@ -974,7 +974,7 @@ static status_t process_peer_failure(private_eap_mschapv2_t *this, + data = in->get_data(in); + eap = (eap_mschapv2_header_t*)data.ptr; + +- if (data.len < 3) /* we want at least an error code: E=e */ ++ if (data.len < HEADER_LEN + 3) /* we want at least an error code: E=e */ + { + DBG1(DBG_IKE, "received invalid EAP-MS-CHAPv2 message: too short"); + return FAILED; +-- +2.43.0 + diff --git a/package/strongswan/strongswan.mk b/package/strongswan/strongswan.mk index 971924232730..caf214cefa8f 100644 --- a/package/strongswan/strongswan.mk +++ b/package/strongswan/strongswan.mk @@ -12,6 +12,8 @@ STRONGSWAN_LICENSE_FILES = COPYING LICENSE STRONGSWAN_CPE_ID_VENDOR = strongswan STRONGSWAN_DEPENDENCIES = host-pkgconf STRONGSWAN_INSTALL_STAGING = YES +# 0001-eap_mschapv2_failure_request_len.patch +STRONGSWAN_IGNORE_CVES += CVE-2025-62291 STRONGSWAN_CONF_OPTS += \ --without-lib-prefix \ --enable-led \ diff --git a/package/systemd/systemd.mk b/package/systemd/systemd.mk index 6d04ee258148..6ab658600940 100644 --- a/package/systemd/systemd.mk +++ b/package/systemd/systemd.mk @@ -982,7 +982,7 @@ HOST_SYSTEMD_CONF_OPTS = \ -Dinitrd=false \ -Dxdg-autostart=false \ -Dkernel-install=false \ - -Dukify=disabled \ + -Dukify=enabled \ -Danalyze=false \ -Dbpf-framework=disabled \ -Dvmlinux-h=disabled \ @@ -1024,7 +1024,8 @@ HOST_SYSTEMD_DEPENDENCIES = \ host-libcap \ host-libxcrypt \ host-gperf \ - host-python-jinja2 + host-python-jinja2 \ + host-python-pefile HOST_SYSTEMD_NINJA_ENV = DESTDIR=$(HOST_DIR) diff --git a/package/wine/wine.hash b/package/wine/wine.hash index eb0d45ca0a0c..65cab0ed5fed 100644 --- a/package/wine/wine.hash +++ b/package/wine/wine.hash @@ -1,8 +1,8 @@ # From: -# https://dl.winehq.org/wine/source/10.0/sha512sums.asc -sha512 effb41c5641993e2e52eaa825cc19b7d9846e084992c5a5b066ead2339b24384d320898a9cee347a9a87106bcb3b0f54c8cd2c8d4de3a887a658052ddd5168d6 wine-10.0.tar.xz +# https://dl.winehq.org/wine/source/11.0/sha512sums.asc +sha512 a2c3db14f8cf0d19927466805c8f17c68ee7e93d1196d1162dd2279af497c21ec611a63f7a9de59953bbdfdb44c87d7bf55373c6533224a5d54e434c29428d1b wine-11.0.tar.xz # Locally calculated after checking pgp signature -sha256 c5e0b3f5f7efafb30e9cd4d9c624b85c583171d33549d933cd3402f341ac3601 wine-10.0.tar.xz +sha256 c07a6857933c1fc60dff5448d79f39c92481c1e9db5aa628db9d0358446e0701 wine-11.0.tar.xz # Locally calculated sha256 e237fa56668030e928551ddd60f05df5fe957f75eab874bbd017e085ed722e7c COPYING.LIB -sha256 51433d87540ee2f30e3cff986e00e1477880002bf993106a13775ed60d4e0af4 LICENSE +sha256 ae025f125a5d639f0f7abe5146efa1e3d7453cc10b744b2910806fa3f46626ef LICENSE diff --git a/package/wine/wine.mk b/package/wine/wine.mk index 380f72958583..4f0e229e9a6c 100644 --- a/package/wine/wine.mk +++ b/package/wine/wine.mk @@ -10,9 +10,9 @@ # development version, unless it is absolutely needed (for example: # incompatibility with another library and no maintenance stable # version is available). -WINE_VERSION = 10.0 +WINE_VERSION = 11.0 WINE_SOURCE = wine-$(WINE_VERSION).tar.xz -WINE_SITE = https://dl.winehq.org/wine/source/10.0 +WINE_SITE = https://dl.winehq.org/wine/source/11.0 WINE_LICENSE = LGPL-2.1+ WINE_LICENSE_FILES = COPYING.LIB LICENSE WINE_CPE_ID_VENDOR = winehq @@ -25,6 +25,7 @@ WINE_CONF_OPTS = \ --with-wine-tools=../host-wine-$(WINE_VERSION) \ --disable-tests \ --disable-win64 \ + --enable-tools \ --without-capi \ --without-coreaudio \ --without-gettext \ @@ -33,8 +34,7 @@ WINE_CONF_OPTS = \ --without-mingw \ --without-opencl \ --without-oss \ - --without-vulkan \ - --without-osmesa # BR2_PACKAGE_MESA3D_OSMESA_GALLIUM removed in mesa 25.1 + --without-vulkan # Wine uses a wrapper around gcc, and uses the value of --host to # construct the filename of the gcc to call. But for external diff --git a/package/xinetd/Config.in b/package/xinetd/Config.in index f509905f1c30..9637016f7ebe 100644 --- a/package/xinetd/Config.in +++ b/package/xinetd/Config.in @@ -2,6 +2,7 @@ config BR2_PACKAGE_XINETD bool "xinetd" depends on BR2_USE_MMU # fork() depends on !BR2_TOOLCHAIN_USES_UCLIBC # no ecvt/fcvt + select BR2_PACKAGE_LIBTIRPC_RPCDB if BR2_PACKAGE_LIBTIRPC help xinetd is a secure replacement for inetd. It was originally written by panos@cs.colorado.edu. diff --git a/support/misc/Buildroot-Initialize.cmake b/support/misc/Buildroot-Initialize.cmake new file mode 100644 index 000000000000..3451562f081b --- /dev/null +++ b/support/misc/Buildroot-Initialize.cmake @@ -0,0 +1 @@ +include(Platform/Linux-Initialize) diff --git a/support/misc/relocate-sdk.sh b/support/misc/relocate-sdk.sh index 981d272425a8..d25bc55279c0 100755 --- a/support/misc/relocate-sdk.sh +++ b/support/misc/relocate-sdk.sh @@ -37,15 +37,10 @@ fi echo "Relocating the buildroot SDK from ${OLDPATH} to ${NEWPATH} ..." -# Make sure file uses the right language -export LC_ALL=C # Replace the old path with the new one in all text files -grep -lr "${OLDPATH}" . | while read -r FILE ; do - if file -b --mime-type "${FILE}" | grep -q '^text/' && [ "${FILE}" != "${LOCFILE}" ] - then - sed -i "s|${OLDPATH}|${NEWPATH}|g" "${FILE}" - fi -done +while read -r FILE ; do + sed -i "s|${OLDPATH}|${NEWPATH}|g" "${FILE}" +done < share/buildroot/sdk-relocs # At the very end, we update the location file to not break the # SDK if this script gets interruted. diff --git a/support/scripts/pkg-stats b/support/scripts/pkg-stats index 7d9170e30f5b..55aa63c8612a 100755 --- a/support/scripts/pkg-stats +++ b/support/scripts/pkg-stats @@ -1313,12 +1313,22 @@ def parse_args(): default=[]) parser.add_argument('-v', '--verbose', dest='verbose', action='store_true', help='Increase verbosity') + parser.add_argument('-N', '--needs-update', dest='needs_update', action='store_true', + help='Only include packages with newer versions available') args = parser.parse_args() if not args.html and not args.json: parser.error('at least one of --html or --json (or both) is required') return args +def is_newer_version_available(pkg): + return not ( + pkg.latest_version['status'] in (RM_API_STATUS_ERROR, RM_API_STATUS_NOT_FOUND) or + pkg.latest_version['version'] is None or + pkg.latest_version['version'] == pkg.current_version + ) + + def __main__(): global cvecheck @@ -1365,15 +1375,19 @@ def __main__(): pkg.set_developers(developers) if "url" not in args.disable: print("Checking URL status") - loop = asyncio.get_event_loop() + loop = asyncio.new_event_loop() + asyncio.set_event_loop(loop) loop.run_until_complete(check_package_urls(packages, verbose=args.verbose)) if "upstream" not in args.disable: print("Getting latest versions ...") - loop = asyncio.get_event_loop() + loop = asyncio.new_event_loop() + asyncio.set_event_loop(loop) loop.run_until_complete(check_package_latest_version(packages, verbose=args.verbose)) if "cve" not in args.disable and args.nvd_path: print("Checking packages CVEs") check_package_cves(args.nvd_path, packages) + if args.needs_update: + packages = [pkg for pkg in packages if is_newer_version_available(pkg)] print("Calculate stats") stats = calculate_stats(packages) if args.html: