From 50eaeae5c202fe8a93a9c82bfb32faa745252328 Mon Sep 17 00:00:00 2001 From: Max Kellermann Date: Wed, 11 Feb 2026 13:53:31 +0100 Subject: [PATCH 1/7] subprojects: update expat to 2.7.4-1 --- subprojects/expat.wrap | 21 +++++++++++---------- 1 file changed, 11 insertions(+), 10 deletions(-) diff --git a/subprojects/expat.wrap b/subprojects/expat.wrap index d16ba7aba0..a83b6922c5 100644 --- a/subprojects/expat.wrap +++ b/subprojects/expat.wrap @@ -1,13 +1,14 @@ [wrap-file] -directory = expat-2.7.3 -source_url = https://github.com/libexpat/libexpat/releases/download/R_2_7_3/expat-2.7.3.tar.xz -source_filename = expat-2.7.3.tar.bz2 -source_hash = 71df8f40706a7bb0a80a5367079ea75d91da4f8c65c58ec59bcdfbf7decdab9f -source_fallback_url = https://github.com/mesonbuild/wrapdb/releases/download/expat_2.7.3-1/expat-2.7.3.tar.bz2 -patch_filename = expat_2.7.3-1_patch.zip -patch_url = https://wrapdb.mesonbuild.com/v2/expat_2.7.3-1/get_patch -patch_hash = e870eb4b2e3c142ce1d18ed24309aa40e07c6c911a4625fa1c6fc493ba18153a -wrapdb_version = 2.7.3-1 +directory = expat-2.7.4 +source_url = https://github.com/libexpat/libexpat/releases/download/R_2_7_4/expat-2.7.4.tar.xz +source_filename = expat-2.7.4.tar.xz +source_hash = 9e9cabb457c1e09de91db2706d8365645792638eb3be1f94dbb2149301086ac0 +source_fallback_url = https://wrapdb.mesonbuild.com/v2/expat_2.7.4-1/get_source/expat-2.7.4.tar.xz +patch_filename = expat_2.7.4-1_patch.zip +patch_url = https://wrapdb.mesonbuild.com/v2/expat_2.7.4-1/get_patch +patch_fallback_url = https://github.com/mesonbuild/wrapdb/releases/download/expat_2.7.4-1/expat_2.7.4-1_patch.zip +patch_hash = 7bcf8e279b4403bc68b7d22929fd51d4c2397dee0ccb8dbf7cfc4f7ed302aecb +wrapdb_version = 2.7.4-1 [provide] -expat = expat_dep +dependency_names = expat From 883da7fec11c237ace7de5eafdc703dfb164f7cc Mon Sep 17 00:00:00 2001 From: Max Kellermann Date: Mon, 16 Feb 2026 14:55:36 +0100 Subject: [PATCH 2/7] doc/user.rst: remove dead link to the ICY-MetaData spec Closes https://github.com/MusicPlayerDaemon/MPD/issues/2435 --- doc/user.rst | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/doc/user.rst b/doc/user.rst index 1faaf31da7..f0ddc9d900 100644 --- a/doc/user.rst +++ b/doc/user.rst @@ -1313,8 +1313,7 @@ ICY-MetaData ------------ Some MP3 streams send information about the current song with a -protocol named `"ICY-MetaData" -`_. +protocol named "ICY-MetaData". :program:`MPD` makes its ``StreamTitle`` value available as ``Title`` tag. From a77f93243e27e90e4e6609da1af583ae76daa0a4 Mon Sep 17 00:00:00 2001 From: Max Kellermann Date: Thu, 19 Feb 2026 12:39:52 +0100 Subject: [PATCH 3/7] subprojects: update liburing to 2.14-1 --- subprojects/liburing.wrap | 19 ++++++++++--------- 1 file changed, 10 insertions(+), 9 deletions(-) diff --git a/subprojects/liburing.wrap b/subprojects/liburing.wrap index 6de545a219..a483dd9556 100644 --- a/subprojects/liburing.wrap +++ b/subprojects/liburing.wrap @@ -1,13 +1,14 @@ [wrap-file] -directory = liburing-liburing-2.12 -source_url = https://github.com/axboe/liburing/archive/refs/tags/liburing-2.12.tar.gz -source_filename = liburing-2.12.tar.gz -source_hash = f1d10cb058c97c953b4c0c446b11e9177e8c8b32a5a88b309f23fdd389e26370 -patch_filename = liburing_2.12-1_patch.zip -patch_url = https://wrapdb.mesonbuild.com/v2/liburing_2.12-1/get_patch -patch_hash = b21f90196008cde9ed242571a71d8302c703272a2f8b91edd589bd8d6abea47a -source_fallback_url = https://github.com/mesonbuild/wrapdb/releases/download/liburing_2.12-1/liburing-2.12.tar.gz -wrapdb_version = 2.12-1 +directory = liburing-liburing-2.14 +source_url = https://github.com/axboe/liburing/archive/refs/tags/liburing-2.14.tar.gz +source_filename = liburing-2.14.tar.gz +source_hash = 5f80964108981c6ad979c735f0b4877d5f49914c2a062f8e88282f26bf61de0c +source_fallback_url = https://wrapdb.mesonbuild.com/v2/liburing_2.14-1/get_source/liburing-2.14.tar.gz +patch_filename = liburing_2.14-1_patch.zip +patch_url = https://wrapdb.mesonbuild.com/v2/liburing_2.14-1/get_patch +patch_fallback_url = https://github.com/mesonbuild/wrapdb/releases/download/liburing_2.14-1/liburing_2.14-1_patch.zip +patch_hash = 4d0ba8f507c25c4fb9a31507a5c06d2a6c253822828084a0101e2bea27dba62a +wrapdb_version = 2.14-1 [provide] dependency_names = liburing From 702b3494b30437d2a84e84bd2e5acbd419cd4a4a Mon Sep 17 00:00:00 2001 From: Max Kellermann Date: Fri, 20 Feb 2026 13:39:37 +0100 Subject: [PATCH 4/7] python/build/libs.py: update zlib to 1.3.2 --- python/build/libs.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/python/build/libs.py b/python/build/libs.py index d0bc70e5c0..357af056ad 100644 --- a/python/build/libs.py +++ b/python/build/libs.py @@ -19,9 +19,9 @@ ) zlib = ZlibProject( - ('http://zlib.net/zlib-1.3.1.tar.xz', - 'https://github.com/madler/zlib/releases/download/v1.3.1/zlib-1.3.1.tar.xz'), - '38ef96b8dfe510d42707d9c781877914792541133e1870841463bfa73f883e32', + ('http://zlib.net/zlib-1.3.2.tar.xz', + 'https://github.com/madler/zlib/releases/download/v1.3.2/zlib-1.3.2.tar.xz'), + 'd7a0654783a4da529d1bb793b7ad9c3318020af77667bcae35f95d0e42a792f3', 'lib/libz.a', ) From 1629660d7fbe96d0061f9e69e5b106e34577d6e3 Mon Sep 17 00:00:00 2001 From: Max Kellermann Date: Fri, 20 Feb 2026 13:44:23 +0100 Subject: [PATCH 5/7] python/build/libs.py: build zlib with cmake Get rid of the special case. --- python/build/libs.py | 9 ++++++--- python/build/zlib.py | 34 ---------------------------------- 2 files changed, 6 insertions(+), 37 deletions(-) delete mode 100644 python/build/zlib.py diff --git a/python/build/libs.py b/python/build/libs.py index 357af056ad..e3e786fc0f 100644 --- a/python/build/libs.py +++ b/python/build/libs.py @@ -2,7 +2,6 @@ from os.path import abspath from build.project import Project -from build.zlib import ZlibProject from build.cmake import CmakeProject from build.autotools import AutotoolsProject from build.ffmpeg import FfmpegProject @@ -18,11 +17,15 @@ ], ) -zlib = ZlibProject( +zlib = CmakeProject( ('http://zlib.net/zlib-1.3.2.tar.xz', 'https://github.com/madler/zlib/releases/download/v1.3.2/zlib-1.3.2.tar.xz'), 'd7a0654783a4da529d1bb793b7ad9c3318020af77667bcae35f95d0e42a792f3', - 'lib/libz.a', + 'include/zlib.h', + [ + '-DZLIB_BUILD_TESTING=OFF', + '-DZLIB_BUILD_SHARED=OFF', + ], ) libmodplug = AutotoolsProject( diff --git a/python/build/zlib.py b/python/build/zlib.py deleted file mode 100644 index 41138c8256..0000000000 --- a/python/build/zlib.py +++ /dev/null @@ -1,34 +0,0 @@ -import subprocess -from typing import Optional, Sequence, Union - -from build.makeproject import MakeProject -from .toolchain import AnyToolchain - -class ZlibProject(MakeProject): - def __init__(self, url: Union[str, Sequence[str]], md5: str, installed: str, - **kwargs): - MakeProject.__init__(self, url, md5, installed, **kwargs) - - def get_make_args(self, toolchain: AnyToolchain) -> list[str]: - return MakeProject.get_make_args(self, toolchain) + [ - 'CC=' + toolchain.cc + ' ' + toolchain.cppflags + ' ' + toolchain.cflags, - 'CPP=' + toolchain.cc + ' -E ' + toolchain.cppflags, - 'AR=' + toolchain.ar, - 'ARFLAGS=' + toolchain.arflags, - 'RANLIB=' + toolchain.ranlib, - 'LDSHARED=' + toolchain.cc + ' -shared', - 'libz.a' - ] - - def get_make_install_args(self, toolchain: AnyToolchain) -> list[str]: - return [ - 'RANLIB=' + toolchain.ranlib, - self.install_target - ] - - def _build(self, toolchain: AnyToolchain) -> None: - src = self.unpack(toolchain, out_of_tree=False) - - subprocess.check_call(['./configure', '--prefix=' + toolchain.install_prefix, '--static'], - cwd=src, env=toolchain.env) - self.build_make(toolchain, src) From bfb7d54d45ed41f4e0ce6a36762d883e839532f5 Mon Sep 17 00:00:00 2001 From: Max Kellermann Date: Tue, 24 Feb 2026 11:48:02 +0100 Subject: [PATCH 6/7] lib/curl/Easy: do not qualify the curl_easy_*() calls This breaks with CURL 8.19 where these are preprocessor macros beginning with an open parenthesis. --- NEWS | 2 ++ src/lib/curl/Easy.hxx | 4 ++-- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/NEWS b/NEWS index 31e28a4b15..39a20e3805 100644 --- a/NEWS +++ b/NEWS @@ -1,4 +1,6 @@ ver 0.24.9 (not yet released) +* input + - curl: fix build failure after CURL 8.19 API change * database - upnp: refuse to build with libupnp >= 1.14.26 due to API breakage diff --git a/src/lib/curl/Easy.hxx b/src/lib/curl/Easy.hxx index df47862765..390e920fa7 100644 --- a/src/lib/curl/Easy.hxx +++ b/src/lib/curl/Easy.hxx @@ -201,7 +201,7 @@ public: template bool GetInfo(CURLINFO info, T value_r) const noexcept { - return ::curl_easy_getinfo(handle, info, value_r) == CURLE_OK; + return curl_easy_getinfo(handle, info, value_r) == CURLE_OK; } /** @@ -222,7 +222,7 @@ public: } bool Unpause() noexcept { - return ::curl_easy_pause(handle, CURLPAUSE_CONT) == CURLE_OK; + return curl_easy_pause(handle, CURLPAUSE_CONT) == CURLE_OK; } CurlString Escape(const char *string, int length=0) const noexcept { From 7fa7f0ee3c6f526aea156a8360b15c2b8bf86b55 Mon Sep 17 00:00:00 2001 From: Max Kellermann Date: Tue, 24 Feb 2026 12:25:13 +0100 Subject: [PATCH 7/7] system/VmaName: use std::span --- src/memory/HugeAllocator.cxx | 2 +- src/system/VmaName.hxx | 11 +++++++---- 2 files changed, 8 insertions(+), 5 deletions(-) diff --git a/src/memory/HugeAllocator.cxx b/src/memory/HugeAllocator.cxx index a1c797d013..8f3e2fa3a5 100644 --- a/src/memory/HugeAllocator.cxx +++ b/src/memory/HugeAllocator.cxx @@ -34,7 +34,7 @@ HugeFree(std::span p) noexcept void HugeSetName(std::span p, const char *name) noexcept { - SetVmaName(p.data(), p.size(), name); + SetVmaName(p, name); } void diff --git a/src/system/VmaName.hxx b/src/system/VmaName.hxx index 3b8b8b363e..15e488c0a0 100644 --- a/src/system/VmaName.hxx +++ b/src/system/VmaName.hxx @@ -4,6 +4,9 @@ #pragma once +#include // for std::byte +#include + #ifdef __linux__ # include @@ -22,14 +25,14 @@ * This feature requires Linux 5.17. */ inline void -SetVmaName(const void *start, size_t len, const char *name) +SetVmaName(std::span vma, const char *name) { #ifdef __linux__ - prctl(PR_SET_VMA, PR_SET_VMA_ANON_NAME, (unsigned long)start, len, + prctl(PR_SET_VMA, PR_SET_VMA_ANON_NAME, + (unsigned long)vma.data(), vma.size(), (unsigned long)name); #else - (void)start; - (void)len; + (void)vma; (void)name; #endif }