From dddf7b05cded37514be383fc3119b7277d410a33 Mon Sep 17 00:00:00 2001 From: Michael Pratt Date: Tue, 29 Jul 2025 13:56:10 -0400 Subject: [PATCH 1/4] tools: automake: fix MAINTAINERCLEANFILES warnings It seems that, for whatever reason in this case, the function "vardef ($var, $cond)" does not work while "$var->def ($cond)" does work for conditionals. Also, do not define it conditionally when defined unconditionally. Even though the reordering patch would make that functionally sound, it still throws a warning which can cause a build to fail when warnings are treated as errors. Instead, just add BUILT_SOURCES to every existing case rather than only when BUILT_SOURCES is defined. Fixes: 6d2bfe50d3 ("tools/automake: control all cleaning with clean variables") Signed-off-by: Michael Pratt Link: https://github.com/openwrt/openwrt/pull/19593 Signed-off-by: Robert Marko --- .../patches/310-maintainer-clean-built_sources.patch | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/tools/automake/patches/310-maintainer-clean-built_sources.patch b/tools/automake/patches/310-maintainer-clean-built_sources.patch index 679236bda0..5166c630da 100644 --- a/tools/automake/patches/310-maintainer-clean-built_sources.patch +++ b/tools/automake/patches/310-maintainer-clean-built_sources.patch @@ -21,7 +21,7 @@ + if (! grep { $_ eq '$(BUILT_SOURCES)' } $mcleanvar->value_as_list ($rcond)) { + Automake::Variable::define ($mcleanvar->name, VAR_MAKEFILE, '+', $rcond, + '$(BUILT_SOURCES)', '', INTERNAL, VAR_ASIS) -+ if vardef ('BUILT_SOURCES', $rcond); ++ if var ('BUILT_SOURCES'); + } + } + my $bsources = var ('BUILT_SOURCES'); @@ -30,9 +30,9 @@ + { + Automake::Variable::define ($mcleanvar->name, VAR_MAKEFILE, '', $rcond, + '$(BUILT_SOURCES)', '', INTERNAL, VAR_ASIS) -+ if ! vardef ($mcleanvar, $rcond); ++ if ! ($mcleanvar->def ($rcond) || $mcleanvar->def (TRUE)); + } -+ if (! vardef ($mcleanvar, TRUE)) { ++ if (! $mcleanvar->def (TRUE)) { + Automake::Variable::define ($mcleanvar->name, VAR_MAKEFILE, '', TRUE, + '$(BUILT_SOURCES)', '', INTERNAL, VAR_ASIS); + } From b0650c50c8f040cf3f94af0f9b07e65c14f36045 Mon Sep 17 00:00:00 2001 From: Rosen Penev Date: Sun, 27 Jul 2025 11:37:27 -0700 Subject: [PATCH 2/4] tools/expat: fix compilation with ccache Even though expat is a C library, the configure script tests both C and C++ compilers so a fix is needed for the latter. Signed-off-by: Rosen Penev Link: https://github.com/openwrt/openwrt/pull/19594 Signed-off-by: Robert Marko --- tools/expat/Makefile | 1 + 1 file changed, 1 insertion(+) diff --git a/tools/expat/Makefile b/tools/expat/Makefile index 941f0c3fbf..8e46aa989e 100644 --- a/tools/expat/Makefile +++ b/tools/expat/Makefile @@ -20,6 +20,7 @@ HOST_BUILD_PARALLEL:=1 include $(INCLUDE_DIR)/host-build.mk HOSTCC := $(HOSTCC_NOCACHE) +HOSTCXX := $(HOSTCXX_NOCACHE) HOST_CONFIGURE_ARGS += \ --disable-shared \ From 4fd61171294dd5b5897152234ddeeb2380877653 Mon Sep 17 00:00:00 2001 From: Rosen Penev Date: Tue, 29 Jul 2025 12:46:00 -0700 Subject: [PATCH 3/4] tools/util-linux: fix libuuid linking The pkgconfig file that autotools uses is wrong for static libraries. meson does the right thing but for static libraries, .private entries need to move to non .private. Fixes compilation with at least mtd-utils. Signed-off-by: Rosen Penev Link: https://github.com/openwrt/openwrt/pull/19597 Signed-off-by: Robert Marko --- .../patches/110-move-libpthread-to-libs.patch | 28 +++++++++++++++++++ 1 file changed, 28 insertions(+) create mode 100644 tools/util-linux/patches/110-move-libpthread-to-libs.patch diff --git a/tools/util-linux/patches/110-move-libpthread-to-libs.patch b/tools/util-linux/patches/110-move-libpthread-to-libs.patch new file mode 100644 index 0000000000..e054778b18 --- /dev/null +++ b/tools/util-linux/patches/110-move-libpthread-to-libs.patch @@ -0,0 +1,28 @@ +From 15bc69131a1e08019096251ea848104e57d99a12 Mon Sep 17 00:00:00 2001 +From: Rosen Penev +Date: Sun, 27 Jul 2025 11:55:56 -0700 +Subject: [PATCH] move libpthread to Libs + +OpewWrt uses static host libraries and as such dependant libraries must +be moved to public Libs. meson handles this automatically but Autotools +does not. + +Signed-off-by: Rosen Penev +--- + libuuid/uuid.pc.in | 3 +-- + 1 file changed, 1 insertion(+), 2 deletions(-) + +diff --git a/libuuid/uuid.pc.in b/libuuid/uuid.pc.in +index 51929fe80d72..9fe908b61f12 100644 +--- a/libuuid/uuid.pc.in ++++ b/libuuid/uuid.pc.in +@@ -7,5 +7,4 @@ Name: uuid + Description: Universally unique id library + Version: @LIBUUID_VERSION@ + Cflags: -I${includedir}/uuid +-Libs.private: @SOCKET_LIBS@ -lpthread +-Libs: -L${libdir} -luuid ++Libs: -L${libdir} -luuid @SOCKET_LIBS@ -lpthread +-- +2.50.1 + From d6200f2502546e036d1b99ff5c7e3ac59b4616db Mon Sep 17 00:00:00 2001 From: Konstantin Demin Date: Sun, 27 Jul 2025 11:36:39 +0300 Subject: [PATCH 4/4] toolchain: glibc: Update glibc 2.41 to recent HEAD 1e16d0096d80 posix: Fix double-free after allocation failure in regcomp (bug 33185) [CVE-2025-8058] e7c419a29575 iconv: iconv -o should not create executable files (bug 33164) Signed-off-by: Konstantin Demin Link: https://github.com/openwrt/openwrt/pull/19543 Signed-off-by: Hauke Mehrtens --- toolchain/glibc/common.mk | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/toolchain/glibc/common.mk b/toolchain/glibc/common.mk index 826f2351af..02906d34b2 100644 --- a/toolchain/glibc/common.mk +++ b/toolchain/glibc/common.mk @@ -8,12 +8,12 @@ include $(TOPDIR)/rules.mk PKG_NAME:=glibc PKG_VERSION:=2.41 -PKG_RELEASE:=1 +PKG_RELEASE:=2 PKG_SOURCE_PROTO:=git PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION) -PKG_SOURCE_VERSION:=6e489c17f827317bcf8544efefa65f13b5a079dc -PKG_MIRROR_HASH:=37527af9a3cbc41201b8a8bead3e6ec973e922e11639ff1762de50c46cf4913e +PKG_SOURCE_VERSION:=e7c419a2957590fb657900fc92a89708f41abd9d +PKG_MIRROR_HASH:=8613b8765c8651888178623355bb019538a1e1e32d9cc5a83ab7f063054748e1 PKG_SOURCE_URL:=https://sourceware.org/git/glibc.git PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION)-$(PKG_SOURCE_VERSION).tar.zst PKG_CPE_ID:=cpe:/a:gnu:glibc