Colin Edwards
2638396df5
android: add dependencies for Material 3 and Compose
2023-12-22 13:30:43 -06:00
Colin Edwards
3d8e285e2b
android: Fix launching on device boot
2023-12-22 12:30:45 -06:00
Colin Edwards
793a12d58d
android: Use Java 9
2023-12-22 12:30:27 -06:00
Max Kellermann
23b4688c44
util/ByteOrder: move Packed* classes to separate headers
2023-12-22 18:20:46 +01:00
Max Kellermann
c4d8888972
subprojects: add id3tag
2023-12-22 18:15:25 +01:00
Max Kellermann
6e50031c49
python/build/libs.py: remove libmad (unused)
2023-12-22 18:05:40 +01:00
Max Kellermann
833ca1e350
test/dump_rva2: fix TCHAR/char confusion on Windows
2023-12-22 18:05:40 +01:00
Max Kellermann
a888b3a707
decoder/plugins/meson.build: add missing dependency to libid3tag
2023-12-22 18:03:47 +01:00
Max Kellermann
d9bbe39f48
android/include/meson.build: remove custom "-I" flag
...
This is not necessary because the declared dependency is enough for
Meson to generate the "-I" flag automatically.
2023-12-22 17:07:50 +01:00
Max Kellermann
38226dfe81
android/include/meson.build: generate *.class in @PRIVATE_DIR@
...
We're not interested in the *.class files, we run javac only to
generate the JNI header. By using @PRIVATE_DIR@, it gets stored to a
directory we can ignore, and not into the source tree.
2023-12-22 16:46:25 +01:00
Max Kellermann
94ef1e13e0
android/include/meson.build: call javac directly, eliminate run-javac.sh
2023-12-22 16:41:35 +01:00
Max Kellermann
35c7c005ba
android/meson.build: move target org_musicpd_Bridge.h
to include/meson.build
2023-12-22 16:39:13 +01:00
Max Kellermann
1e732f9b9b
android/run-javac.sh: remove unnecessary realpath
call
2023-12-22 16:35:06 +01:00
Max Kellermann
ee5c471280
android/meson.build: pass @OUTDIR@ to run-javac.sh
2023-12-22 16:32:10 +01:00
Max Kellermann
8ef47147a0
.github/workflows/build_android.yml: do not ignore "python"
...
Python scripts are used to build Android.
2023-12-22 15:17:47 +01:00
Max Kellermann
fb4dd4e1ce
.github/workflows/build_android.yml: remove branch v0.23.x
...
This branch cannot be built this way.
2023-12-22 15:17:45 +01:00
Max Kellermann
a19f3a4f9f
python/build/meson.py: put ccache prefix in array instead of stripping it
...
Turns out Meson disables ccache auto-detection when a cross-file is
used. To use ccache, the ccache prefix must be expressed in an array
instead of a single string with spaces.
2023-12-22 15:11:53 +01:00
Max Kellermann
c3ba52a1fc
python/build/toolchain.py: auto-detect ccache
2023-12-22 15:05:41 +01:00
Max Kellermann
1b2bd0cc0a
.github/workflows/build_android.yml: use preinstalled Android SDK/NDK
2023-12-22 14:39:20 +01:00
Max Kellermann
dd3779d64b
.github/workflows/build_android.yml: use preinstalled Java
2023-12-22 14:39:20 +01:00
Max Kellermann
806d1483a8
.github/workflows/build_android.yml: install Meson 1.3.0
...
We need at least 0.63.0 for "diff_files" support in subprojects;
without this, the Opus build breaks.
2023-12-22 14:39:20 +01:00
borine
b1f28d6003
output/alsa: Fix (theoretical error in) ALSA device recovery
...
It is not possible to prepare an ALSA device when it is is state
SND_PCM_STATE_OPEN; it is necessary to set the hardware parameters
first.
This pedantic commit corrects that error. Note that in practice
this code path cannot be encountered because MPD always sets the
hardware parameters before attempting to start playback.
2023-12-22 12:02:33 +00:00
borine
50e6950fa8
output/alsa: handle recoverable errors in DrainInternal()
...
It is possible that an underrun may occur in the ALSA output
device while MPD is draining its own internal buffer. If this
happens then MPD stops playback, reporting the error EPIPE.
This commit attempts to recover the ALSA device instead of
stopping playback, so that the drain can complete and the next
song in the play queue is played.
2023-12-22 11:53:20 +00:00
Max Kellermann
1d60d3cd2b
subprojects: update libmpdclient to 2.22
...
2.22 fixes the "version.h" conflict.
Closes https://github.com/MusicPlayerDaemon/MPD/pull/1927
2023-12-22 12:08:02 +01:00
Max Kellermann
59ed18e112
Merge branch 'android_network_address' of https://github.com/DDRBoxman/MPD
2023-12-22 10:26:36 +01:00
Colin Edwards
c4c1044427
android: Add a text field to display the devices network address
2023-12-21 11:50:10 -06:00
Max Kellermann
791b3c65f3
python/build/meson: bringt back configure()
...
This reverts part of commit a3765cd363
.
The MesonProject class was not used, but the "configure" function.
2023-12-21 12:02:05 +01:00
Max Kellermann
a3765cd363
python/build: remove Meson project support
...
Obsolete, we're now using Meson subprojects.
2023-12-21 11:50:33 +01:00
Max Kellermann
3c5b864396
tag/IcyMetadataParser: use std::span
2023-12-21 08:42:23 +01:00
Colin Edwards
b09654b53a
build: Remove absolute path on pkg-config
...
This allows it to be found on macOS and should fix linking libnfs with builds of the Android app
2023-12-20 23:23:18 -06:00
Max Kellermann
58fc857a2d
tag/IcyMetadataParser: pass std::string_view to icy_parse_tag()
2023-12-20 20:18:39 +01:00
Max Kellermann
e443ee357a
tag/IcyMetadataParser: do not null-terminate strings in icy_parse_tag()
...
Just pass std::string_views into the unmodified buffer to
icy_parse_tag_item().
2023-12-20 19:58:35 +01:00
Max Kellermann
2618294eb7
tag/IcyMetadataParser: pass std::string_view to icy_parse_tag_item()
2023-12-20 19:51:22 +01:00
Max Kellermann
03352cb4ad
tag/IcyMetadataParser: use std::byte in ParseInPlace()
2023-12-20 19:49:08 +01:00
Max Kellermann
2c851498cc
meson.build: do not leak CPP macros to subprojects
2023-12-20 17:49:13 +01:00
Max Kellermann
a52292ae17
subprojects: update sqlite to 3.44.2-1
2023-12-20 17:34:05 +01:00
Max Kellermann
f6a886f092
subprojects: update curl to 8.5.0-2
2023-12-20 17:33:28 +01:00
Max Kellermann
6234ae5a8b
doc/user.rst: do not name the deprecated /var/run/ directory
2023-12-20 17:32:13 +01:00
Max Kellermann
a4ead670ed
subprojects: add libmpdclient wrap
2023-12-20 17:15:29 +01:00
Max Kellermann
303d981099
subprojects: add lame
2023-12-20 16:50:13 +01:00
Max Kellermann
7727311df7
meson.build: disable "openssl:asm"
...
Work around "call to undeclared function "asm" on Android.
2023-12-20 16:30:16 +01:00
Max Kellermann
5f54a8e94e
release v0.23.15
...
-----BEGIN PGP SIGNATURE-----
iQJBBAABCgArFiEEA5IzWngIOJSkMBxDI26KWMbbRRIFAmWDBpUNHG1heEBibGFy
Zy5kZQAKCRAjbopYxttFEm/yD/oCg59J/hUm+pyVtS9X74UAaoVH+icwZetvj5Ui
DMFCZ7N3sCeXq+at7ZBsSCFXEIynjMZwyXMusJbz3lGmjOC7eZ5QH/jNlMNu1ERg
m3cninK3MJ5+hWQoKJJGbSkLHCwer2gBBI7NMe1w9evZLXLAZd6+YHV3xTeBSm1d
uAaIJgVe6qM6UTRKn8x5XBK3KK8f2joXSaWF+gKrZELEEo4zrVHR3ANqajxpSN+j
QA3rcWghUD9pDilpDZoV5/DxkMDceuK10uM5Bxfjstq4EUpk6QvSf37CPOtYs5FE
52X68yWix7HsNjljC2TYSogmBqzhRc9JnYM4lP8d7XE0y3mrF+Xsc8psfZAjFE0v
TKxQKJRjXJnl6/2k7zTOV5hE5HNEouIuJg7QtQa2Z1mWv95k+iqVYO4xbBPKWt+7
VboWGTHZMOmOWReweDnDcJ092f1AAfIe3oItjjkMWwRC2yhNLb+6tlM4UtHS4Wga
2eZHYUAnk80vI/l4Bly5KLvR9WBv5x0nDe5sWaZ1k3heSUxtQrtm0LzFG/bXcyoD
rgz0N6wRoHKvg3Ztobe4N1RqtcLCLlO8s9ZvlgPsjQH0+QJaJ+xxRJiu976VxD+C
UOCBedcLuJLZF+rXh1EJAxrAwYm3y3QZ6KH6TJvgVK8vGQXz505dhFIbMM5ks2vl
DkTq2Q==
=n4dl
-----END PGP SIGNATURE-----
Merge tag 'v0.23.15'
release v0.23.15
2023-12-20 16:23:58 +01:00
Max Kellermann
b8bfc98618
release v0.23.15
2023-12-20 16:21:57 +01:00
Max Kellermann
6e6f72a521
win32/HResult: convert assert() to runtime check to work around -Walloc-size-larger-than
2023-12-20 16:15:58 +01:00
Max Kellermann
a654c5d643
Revert "android: Fix MPD shutdown from settings UI"
...
This reverts commit 94b5b9f370
. It was
not necessary for branch v0.23.x because there, Break() is
thread-safe; this was only changed later by commit
a3b32819b1
2023-12-20 16:15:58 +01:00
Max Kellermann
c5d6aa169f
lib/curl/patches: refresh no_CMAKE_C_IMPLICIT_LINK_LIBRARIES.patch for 7.85.0
2023-12-20 13:43:20 +01:00
Max Kellermann
c1c67286d3
python/build/libs.py: update CURL to 8.5.0
2023-12-20 13:28:54 +01:00
borine
2fb34697c7
input/plugins/Alsa: catch all exceptions
...
snd_pcm_poll_descriptors_revents() may return any error code; the
ALSA docs do not constrain the permitted values. A 'hw' device
will only ever return an error if the pfd array passed in is
invalid (-EINVAL), but other I/O plugins may return arbitary
errors. For example a network-based device may return -EPIPE etc.
The resulting exception thrown by
AlsaNonBlockPcm::DispatchSockets() must be caught to prevent the
mpd process from being aborted.
2023-12-20 13:27:25 +01:00
Colin Edwards
94b5b9f370
android: Fix MPD shutdown from settings UI
2023-12-20 13:27:16 +01:00
Max Kellermann
a9467513e1
doc/developer.rst: add missing return type to code style sample
2023-12-20 13:26:48 +01:00