subprojects: add libmpdclient wrap

This commit is contained in:
Max Kellermann 2023-12-20 17:06:15 +01:00
parent 303d981099
commit a4ead670ed
7 changed files with 39 additions and 8 deletions

View File

@ -32,7 +32,6 @@ from build.toolchain import AndroidNdkToolchain
# a list of third-party libraries to be used by MPD on Android # a list of third-party libraries to be used by MPD on Android
from build.libs import * from build.libs import *
thirdparty_libs = [ thirdparty_libs = [
libmpdclient,
libid3tag, libid3tag,
libmodplug, libmodplug,
wildmidi, wildmidi,

View File

@ -18,6 +18,7 @@ project(
'fmt:default_library=static', 'fmt:default_library=static',
'gtest:default_library=static', 'gtest:default_library=static',
'lame:default_library=static', 'lame:default_library=static',
'libmpdclient:default_library=static',
'liburing:default_library=static', 'liburing:default_library=static',
'ogg:default_library=static', 'ogg:default_library=static',
'openssl:default_library=static', 'openssl:default_library=static',
@ -76,6 +77,8 @@ project(
'curl:tftp=disabled', 'curl:tftp=disabled',
'lame:decoder=false', 'lame:decoder=false',
'lame:tools=disabled', 'lame:tools=disabled',
'libmpdclient:documentation=false',
'libmpdclient:test=false',
'openssl:build_cli=false', 'openssl:build_cli=false',
'openssl:asm=disabled', # work around "call to undeclared function "asm" on Android 'openssl:asm=disabled', # work around "call to undeclared function "asm" on Android
'opus:docs=disabled', 'opus:docs=disabled',

View File

@ -8,12 +8,6 @@ from build.cmake import CmakeProject
from build.autotools import AutotoolsProject from build.autotools import AutotoolsProject
from build.ffmpeg import FfmpegProject from build.ffmpeg import FfmpegProject
libmpdclient = MesonProject(
'https://www.musicpd.org/download/libmpdclient/2/libmpdclient-2.20.tar.xz',
'18793f68e939c3301e34d8fcadea1f7daa24143941263cecadb80126194e277d',
'lib/libmpdclient.a',
)
libsamplerate = CmakeProject( libsamplerate = CmakeProject(
'https://github.com/libsndfile/libsamplerate/releases/download/0.2.2/libsamplerate-0.2.2.tar.xz', 'https://github.com/libsndfile/libsamplerate/releases/download/0.2.2/libsamplerate-0.2.2.tar.xz',
'97c010fc25156c33cddc272c1935afab', '97c010fc25156c33cddc272c1935afab',

View File

@ -6,6 +6,7 @@
/fmt-*/ /fmt-*/
/googletest-*/ /googletest-*/
/lame-*/ /lame-*/
/libmpdclient/
/openssl-*/ /openssl-*/
/opus-*/ /opus-*/
/sqlite-*/ /sqlite-*/

View File

@ -0,0 +1,8 @@
[wrap-git]
url = https://github.com/MusicPlayerDaemon/libmpdclient
revision = v2.21
diff_files = libmpdclient_unicode.patch
[provide]
libmpdclient = libmpdclient_dep

View File

@ -0,0 +1,27 @@
commit 14e9b3be33a7b7e94bb6504a519e03072bae033d
Author: Max Kellermann <max@musicpd.org>
Date: Wed Dec 20 17:13:54 2023 +0100
ierror: use FormatMessageA() instead of FormatMessage()
Just in case _UNICODE is defined.
diff --git a/src/ierror.c b/src/ierror.c
index 1642dbd2..e068dc8c 100644
--- a/src/ierror.c
+++ b/src/ierror.c
@@ -103,10 +103,10 @@ mpd_error_system_message(struct mpd_error_info *error, int code)
mpd_error_system(error, code);
#ifdef _WIN32
- nbytes = FormatMessage(FORMAT_MESSAGE_FROM_SYSTEM |
- FORMAT_MESSAGE_IGNORE_INSERTS |
- FORMAT_MESSAGE_MAX_WIDTH_MASK, NULL, code, 0,
- (LPSTR)buffer, sizeof(buffer), NULL);
+ nbytes = FormatMessageA(FORMAT_MESSAGE_FROM_SYSTEM |
+ FORMAT_MESSAGE_IGNORE_INSERTS |
+ FORMAT_MESSAGE_MAX_WIDTH_MASK, NULL, code, 0,
+ (LPSTR)buffer, sizeof(buffer), NULL);
mpd_error_message(error, nbytes > 0 ? buffer : "Unknown error");
#else
mpd_error_message(error, strerror(code));

View File

@ -38,7 +38,6 @@ root_path = os.path.join(arch_path, 'root')
# a list of third-party libraries to be used by MPD on Android # a list of third-party libraries to be used by MPD on Android
from build.libs import * from build.libs import *
thirdparty_libs = [ thirdparty_libs = [
libmpdclient,
zlib, zlib,
libid3tag, libid3tag,
libmodplug, libmodplug,