Merge branch 'v0.23.x'

This commit is contained in:
Max Kellermann 2022-07-12 11:59:49 +02:00
commit eb7d321cb8
5 changed files with 32 additions and 33 deletions

2
NEWS
View File

@ -15,6 +15,8 @@ ver 0.24 (not yet released)
* switch to C++20 * switch to C++20
- GCC 10 or clang 11 (or newer) recommended - GCC 10 or clang 11 (or newer) recommended
ver 0.23.9 (not yet released)
ver 0.23.8 (2022/07/09) ver 0.23.8 (2022/07/09)
* storage * storage
- curl: fix crash if web server does not understand WebDAV - curl: fix crash if web server does not understand WebDAV

View File

@ -2,10 +2,10 @@
<manifest xmlns:android="http://schemas.android.com/apk/res/android" <manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="org.musicpd" package="org.musicpd"
android:installLocation="auto" android:installLocation="auto"
android:versionCode="66" android:versionCode="68"
android:versionName="0.23.7"> android:versionName="0.23.9">
<uses-sdk android:minSdkVersion="21" android:targetSdkVersion="29"/> <uses-sdk android:minSdkVersion="21" android:targetSdkVersion="30"/>
<uses-feature android:name="android.software.leanback" <uses-feature android:name="android.software.leanback"
android:required="false" /> android:required="false" />

View File

@ -12,18 +12,30 @@ unsigned_apk = custom_target(
], ],
) )
aligned_apk = custom_target(
'mpd-aligned.apk',
output: 'mpd-aligned.apk',
input: unsigned_apk,
command: [
android_zipalign,
'-f', '4',
'@INPUT@', '@OUTPUT@',
],
)
if get_option('android_debug_keystore') != '' if get_option('android_debug_keystore') != ''
debug_apk = custom_target( debug_apk = custom_target(
'mpd-debug.apk', 'mpd-debug.apk',
output: 'mpd-debug.apk', output: 'mpd-debug.apk',
input: unsigned_apk, input: aligned_apk,
command: [ command: [
jarsigner, apksigner, 'sign',
'-keystore', get_option('android_debug_keystore'), '--in', '@INPUT@',
'-storepass', 'android', '--out', '@OUTPUT@',
'-signedjar', '@OUTPUT@', '--debuggable-apk-permitted',
'@INPUT@', '-ks', get_option('android_debug_keystore'),
'androiddebugkey', '--ks-key-alias', 'androiddebugkey',
'--ks-pass', 'pass:android',
], ],
build_by_default: true build_by_default: true
) )
@ -31,29 +43,16 @@ endif
if get_option('android_keystore') != '' and get_option('android_keyalias') != '' and get_option('android_keypass') != '' if get_option('android_keystore') != '' and get_option('android_keyalias') != '' and get_option('android_keypass') != ''
unaligned_apk = custom_target( unaligned_apk = custom_target(
'mpd-unaligned.apk',
output: 'mpd-unaligned.apk',
input: unsigned_apk,
command: [
jarsigner,
'-digestalg', 'SHA1', '-sigalg', 'MD5withRSA',
'-keystore', get_option('android_keystore'),
'-storepass', get_option('android_keypass'),
'-signedjar', '@OUTPUT@',
'@INPUT@',
get_option('android_keyalias'),
],
)
apk = custom_target(
'mpd.apk', 'mpd.apk',
output: 'mpd.apk', output: 'mpd.apk',
input: unaligned_apk, input: aligned_apk,
command: [ command: [
android_zipalign, apksigner, 'sign',
'-f', '4', '--in', '@INPUT@',
'@INPUT@', '@OUTPUT@', '--out', '@OUTPUT@',
'-ks', get_option('android_keystore'),
'--ks-key-alias', get_option('android_keyalias'),
'--ks-pass', 'pass:' + get_option('android_keypass'),
], ],
build_by_default: true
) )
endif endif

View File

@ -17,7 +17,7 @@ android_dx = join_paths(android_build_tools_dir, 'dx')
android_zipalign = join_paths(android_build_tools_dir, 'zipalign') android_zipalign = join_paths(android_build_tools_dir, 'zipalign')
javac = find_program('javac') javac = find_program('javac')
jarsigner = find_program('jarsigner') apksigner = find_program('apksigner')
rsvg_convert = find_program('rsvg-convert') rsvg_convert = find_program('rsvg-convert')
convert = find_program('convert') convert = find_program('convert')
zip = find_program('zip') zip = find_program('zip')

View File

@ -148,8 +148,6 @@ public:
} }
DecoderCommand GetCommand() noexcept override { DecoderCommand GetCommand() noexcept override {
assert(IsInitialized());
if (seek_where != SongTime{}) { if (seek_where != SongTime{}) {
if (!seekable) if (!seekable)
return DecoderCommand::STOP; return DecoderCommand::STOP;