rtpmidid: update to 26.01

See release notes at
https://github.com/davidmoreno/rtpmidid/releases/tag/v26.01

Signed-off-by: Daniel Golle <daniel@makrotopia.org>
This commit is contained in:
Daniel Golle
2026-02-11 12:42:44 +00:00
parent 6a9f2bcda7
commit 04d2675b15
2 changed files with 34 additions and 2 deletions

View File

@@ -1,13 +1,13 @@
include $(TOPDIR)/rules.mk
PKG_NAME:=rtpmidid
PKG_VERSION:=24.12
PKG_VERSION:=26.01
PKG_RELEASE:=1
PKG_SOURCE_PROTO:=git
PKG_SOURCE_URL:=https://github.com/davidmoreno/rtpmidid
PKG_SOURCE_VERSION:=v$(PKG_VERSION)
PKG_MIRROR_HASH:=f302061c147833d6c5fe06aa0f8220185e6a29e4840355f26be231c618bc3334
PKG_MIRROR_HASH:=f4774f0b27b14aa0529ef566cdec9f04480ae9ba498650d454ed23ef96822a03
PKG_MAINTAINER:=Daniel Golle <daniel@makrotopia.org>
PKG_LICENSE:=GPL-3.0-or-later LGPL-2.1-or-later

View File

@@ -0,0 +1,32 @@
From: Daniel Golle <daniel@makrotopia.org>
Date: Tue, 11 Feb 2026 00:00:00 +0000
Subject: [PATCH] formatterhelper: fix compilation on 32-bit platforms
On 32-bit platforms, size_t and ssize_t are typically typedefs for
unsigned int and int respectively, which already have built-in
formatters in std::format and fmt::format.
Defining duplicate formatters causes compile-time format string
checking to fail with errors like:
error: call to non-'constexpr' function
'void std::__format::__unmatched_left_brace_in_format_string()'
Fix this by only defining the custom size_t/ssize_t formatters on
64-bit platforms where they are distinct types.
Fixes: https://github.com/davidmoreno/rtpmidid/issues/138
--- a/include/rtpmidid/formatterhelper.hpp
+++ b/include/rtpmidid/formatterhelper.hpp
@@ -80,5 +80,11 @@
} \
}
+// Only define size_t and ssize_t formatters on 64-bit platforms.
+// On 32-bit platforms, size_t is unsigned int and ssize_t is int,
+// which already have built-in formatters in std::format/fmt::format.
+// Defining duplicate formatters causes compile-time format checking errors.
+#if __SIZEOF_POINTER__ == 8
BASIC_FORMATTER(size_t, "{}", (uint32_t)v);
BASIC_FORMATTER(ssize_t, "{}", (int32_t)v);
+#endif