Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
M
mpd
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Registry
Registry
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Иван Мажукин
mpd
Commits
1ba35e1f
Commit
1ba35e1f
authored
Aug 17, 2018
by
Max Kellermann
Browse files
Options
Browse Files
Download
Plain Diff
Merge tag 'v0.20.21'
release v0.20.21
parents
4ba3812b
98afae25
Hide whitespace changes
Inline
Side-by-side
Showing
13 changed files
with
59 additions
and
29 deletions
+59
-29
Makefile.am
Makefile.am
+5
-3
NEWS
NEWS
+5
-1
AndroidManifest.xml
android/AndroidManifest.xml
+1
-1
build.py
android/build.py
+14
-2
Main.java
android/src/Main.java
+1
-1
configure.ac
configure.ac
+8
-1
ffmpeg.py
python/build/ffmpeg.py
+2
-0
libs.py
python/build/libs.py
+14
-2
meson.py
python/build/meson.py
+6
-0
FileInputPlugin.cxx
src/input/plugins/FileInputPlugin.cxx
+0
-3
CueParser.cxx
src/playlist/cue/CueParser.cxx
+1
-0
EPollFD.cxx
src/system/EPollFD.cxx
+0
-15
build.py
win32/build.py
+2
-0
No files found.
Makefile.am
View file @
1ba35e1f
...
@@ -347,7 +347,7 @@ libmpd.so: $(filter %.a,$(src_mpd_LDADD)) libmain.a
...
@@ -347,7 +347,7 @@ libmpd.so: $(filter %.a,$(src_mpd_LDADD)) libmain.a
$(AM_V_CXXLD)$(CXXLD)
-shared
-Wl
,--no-undefined,-shared,-Bsymbolic
-llog
-lz
-o
$@
$(AM_CXXFLAGS)
$(CXXFLAGS)
$(LDFLAGS)
src/libmain_a-Main.o
$(src_mpd_LDADD)
$(LIBS)
$(AM_V_CXXLD)$(CXXLD)
-shared
-Wl
,--no-undefined,-shared,-Bsymbolic
-llog
-lz
-o
$@
$(AM_CXXFLAGS)
$(CXXFLAGS)
$(LDFLAGS)
src/libmain_a-Main.o
$(src_mpd_LDADD)
$(LIBS)
ANDROID_SDK_BUILD_TOOLS_VERSION
=
27.0.0
ANDROID_SDK_BUILD_TOOLS_VERSION
=
27.0.0
ANDROID_SDK_PLATFORM
=
android-
17
ANDROID_SDK_PLATFORM
=
android-
21
ANDROID_BUILD_TOOLS_DIR
=
$(ANDROID_SDK)
/build-tools/
$(ANDROID_SDK_BUILD_TOOLS_VERSION)
ANDROID_BUILD_TOOLS_DIR
=
$(ANDROID_SDK)
/build-tools/
$(ANDROID_SDK_BUILD_TOOLS_VERSION)
ANDROID_SDK_PLATFORM_DIR
=
$(ANDROID_SDK)
/platforms/
$(ANDROID_SDK_PLATFORM)
ANDROID_SDK_PLATFORM_DIR
=
$(ANDROID_SDK)
/platforms/
$(ANDROID_SDK_PLATFORM)
...
@@ -394,7 +394,7 @@ android/build/include/org_musicpd_Bridge.h: android/build/classes.dex
...
@@ -394,7 +394,7 @@ android/build/include/org_musicpd_Bridge.h: android/build/classes.dex
BUILT_SOURCES
=
android/build/include/org_musicpd_Bridge.h
BUILT_SOURCES
=
android/build/include/org_musicpd_Bridge.h
android/build/lib/
armeabi-v7a
/libmpd.so
:
libmpd.so
android/build/lib/
$(ANDROID_ABI)
/libmpd.so
:
libmpd.so
mkdir
-p
$
(
@D
)
mkdir
-p
$
(
@D
)
rm
-f
$@
rm
-f
$@
$(STRIP)
-o
$@
$<
$(STRIP)
-o
$@
$<
...
@@ -404,7 +404,7 @@ android/build/res/drawable/icon.png: mpd.svg
...
@@ -404,7 +404,7 @@ android/build/res/drawable/icon.png: mpd.svg
rsvg-convert
--width
=
48
--height
=
48
$<
-o
$@
rsvg-convert
--width
=
48
--height
=
48
$<
-o
$@
.DELETE_ON_ERROR
:
android/build/unsigned.apk
.DELETE_ON_ERROR
:
android/build/unsigned.apk
android/build/unsigned.apk
:
android/build/classes.dex android/build/resources.apk android/build/lib/
armeabi-v7a
/libmpd.so
android/build/unsigned.apk
:
android/build/classes.dex android/build/resources.apk android/build/lib/
$(ANDROID_ABI)
/libmpd.so
cp
android/build/resources.apk
$@
cp
android/build/resources.apk
$@
cd
$
(
dir
$@
)
&&
zip
-q
-r
$
(
notdir
$@
)
classes.dex lib
cd
$
(
dir
$@
)
&&
zip
-q
-r
$
(
notdir
$@
)
classes.dex lib
...
@@ -808,6 +808,8 @@ libstorage_a_SOURCES = \
...
@@ -808,6 +808,8 @@ libstorage_a_SOURCES = \
libstorage_a_CPPFLAGS
=
$(AM_CPPFLAGS)
\
libstorage_a_CPPFLAGS
=
$(AM_CPPFLAGS)
\
$(DBUS_CFLAGS)
\
$(DBUS_CFLAGS)
\
$(CURL_CFLAGS)
\
$(EXPAT_CFLAGS)
\
$(NFS_CFLAGS)
\
$(NFS_CFLAGS)
\
$(SMBCLIENT_CFLAGS)
$(SMBCLIENT_CFLAGS)
...
...
NEWS
View file @
1ba35e1f
...
@@ -44,14 +44,18 @@ ver 0.21 (not yet released)
...
@@ -44,14 +44,18 @@ ver 0.21 (not yet released)
* systemd watchdog support
* systemd watchdog support
* require GCC 6
* require GCC 6
ver 0.20.21 (
not yet released
)
ver 0.20.21 (
2018/08/17
)
* database
* database
- proxy: add "password" setting
- proxy: add "password" setting
- proxy: support tags "ArtistSort", "AlbumArtistSort", "AlbumSort"
- proxy: support tags "ArtistSort", "AlbumArtistSort", "AlbumSort"
- simple: allow .mpdignore comments only at start of line
- simple: allow .mpdignore comments only at start of line
* output
* output
- httpd: remove broken DLNA support code
- httpd: remove broken DLNA support code
* playlist
- cue: support file type declaration "FLAC" (non-standard)
* URI schemes are case insensitive
* URI schemes are case insensitive
* Android, Windows
- enable the "curl" storage plugin
ver 0.20.20 (2018/05/22)
ver 0.20.20 (2018/05/22)
* protocol
* protocol
...
...
android/AndroidManifest.xml
View file @
1ba35e1f
...
@@ -5,7 +5,7 @@
...
@@ -5,7 +5,7 @@
android:versionCode=
"20"
android:versionCode=
"20"
android:versionName=
"0.20.21"
>
android:versionName=
"0.20.21"
>
<uses-sdk
android:minSdkVersion=
"
14"
android:targetSdkVersion=
"17
"
/>
<uses-sdk
android:minSdkVersion=
"
21"
android:targetSdkVersion=
"21
"
/>
<application
android:icon=
"@drawable/icon"
android:label=
"@string/app_name"
>
<application
android:icon=
"@drawable/icon"
android:label=
"@string/app_name"
>
<activity
android:name=
".Main"
<activity
android:name=
".Main"
...
...
android/build.py
View file @
1ba35e1f
...
@@ -29,6 +29,15 @@ android_abis = {
...
@@ -29,6 +29,15 @@ android_abis = {
'cflags'
:
'-march=armv7-a -mfpu=vfp -mfloat-abi=softfp'
,
'cflags'
:
'-march=armv7-a -mfpu=vfp -mfloat-abi=softfp'
,
},
},
'arm64-v8a'
:
{
'android_api_level'
:
'21'
,
'arch'
:
'aarch64-linux-android'
,
'ndk_arch'
:
'arm64'
,
'toolchain_arch'
:
'aarch64-linux-android'
,
'llvm_triple'
:
'aarch64-none-linux-android'
,
'cflags'
:
''
,
},
'x86'
:
{
'x86'
:
{
'arch'
:
'i686-linux-android'
,
'arch'
:
'i686-linux-android'
,
'ndk_arch'
:
'x86'
,
'ndk_arch'
:
'x86'
,
...
@@ -65,7 +74,8 @@ class AndroidNdkToolchain:
...
@@ -65,7 +74,8 @@ class AndroidNdkToolchain:
self
.
build_path
=
build_path
self
.
build_path
=
build_path
ndk_arch
=
abi_info
[
'ndk_arch'
]
ndk_arch
=
abi_info
[
'ndk_arch'
]
ndk_platform
=
'android-14'
android_api_level
=
'21'
ndk_platform
=
'android-'
+
android_api_level
# select the NDK compiler
# select the NDK compiler
gcc_version
=
'4.9'
gcc_version
=
'4.9'
...
@@ -106,7 +116,7 @@ class AndroidNdkToolchain:
...
@@ -106,7 +116,7 @@ class AndroidNdkToolchain:
self
.
cppflags
=
'--sysroot='
+
sysroot
+
\
self
.
cppflags
=
'--sysroot='
+
sysroot
+
\
' -isystem '
+
os
.
path
.
join
(
install_prefix
,
'include'
)
+
\
' -isystem '
+
os
.
path
.
join
(
install_prefix
,
'include'
)
+
\
' -isystem '
+
os
.
path
.
join
(
sysroot
,
'usr'
,
'include'
,
arch
)
+
\
' -isystem '
+
os
.
path
.
join
(
sysroot
,
'usr'
,
'include'
,
arch
)
+
\
' -D__ANDROID_API__=
14'
' -D__ANDROID_API__=
'
+
android_api_level
self
.
ldflags
=
'--sysroot='
+
sysroot
+
\
self
.
ldflags
=
'--sysroot='
+
sysroot
+
\
' -L'
+
os
.
path
.
join
(
install_prefix
,
'lib'
)
+
\
' -L'
+
os
.
path
.
join
(
install_prefix
,
'lib'
)
+
\
' -L'
+
os
.
path
.
join
(
target_root
,
'usr'
,
'lib'
)
+
\
' -L'
+
os
.
path
.
join
(
target_root
,
'usr'
,
'lib'
)
+
\
...
@@ -116,6 +126,7 @@ class AndroidNdkToolchain:
...
@@ -116,6 +126,7 @@ class AndroidNdkToolchain:
self
.
is_arm
=
ndk_arch
==
'arm'
self
.
is_arm
=
ndk_arch
==
'arm'
self
.
is_armv7
=
self
.
is_arm
and
'armv7'
in
self
.
cflags
self
.
is_armv7
=
self
.
is_arm
and
'armv7'
in
self
.
cflags
self
.
is_aarch64
=
ndk_arch
==
'arm64'
self
.
is_windows
=
False
self
.
is_windows
=
False
libcxx_path
=
os
.
path
.
join
(
ndk_path
,
'sources/cxx-stl/llvm-libc++'
)
libcxx_path
=
os
.
path
.
join
(
ndk_path
,
'sources/cxx-stl/llvm-libc++'
)
...
@@ -146,6 +157,7 @@ thirdparty_libs = [
...
@@ -146,6 +157,7 @@ thirdparty_libs = [
libid3tag
,
libid3tag
,
ffmpeg
,
ffmpeg
,
curl
,
curl
,
libexpat
,
libnfs
,
libnfs
,
boost
,
boost
,
]
]
...
...
android/src/Main.java
View file @
1ba35e1f
...
@@ -49,7 +49,7 @@ public class Main extends Activity implements Runnable {
...
@@ -49,7 +49,7 @@ public class Main extends Activity implements Runnable {
TextView
tv
=
new
TextView
(
this
);
TextView
tv
=
new
TextView
(
this
);
tv
.
setText
(
"Failed to load the native MPD libary.\n"
+
tv
.
setText
(
"Failed to load the native MPD libary.\n"
+
"Report this problem to us, and include the following information:\n"
+
"Report this problem to us, and include the following information:\n"
+
"
ABI="
+
Build
.
CPU_ABI
+
"\n"
+
"
SUPPORTED_ABIS="
+
String
.
join
(
", "
,
Build
.
SUPPORTED_ABIS
)
+
"\n"
+
"PRODUCT="
+
Build
.
PRODUCT
+
"\n"
+
"PRODUCT="
+
Build
.
PRODUCT
+
"\n"
+
"FINGERPRINT="
+
Build
.
FINGERPRINT
+
"\n"
+
"FINGERPRINT="
+
Build
.
FINGERPRINT
+
"\n"
+
"error="
+
Loader
.
error
);
"error="
+
Loader
.
error
);
...
...
configure.ac
View file @
1ba35e1f
...
@@ -16,7 +16,7 @@ AC_CONFIG_MACRO_DIR([m4])
...
@@ -16,7 +16,7 @@ AC_CONFIG_MACRO_DIR([m4])
AC_DEFINE(PROTOCOL_VERSION, "0.21.0", [The MPD protocol version])
AC_DEFINE(PROTOCOL_VERSION, "0.21.0", [The MPD protocol version])
GIT_COMMIT=`
GIT_DIR="$srcdir/.git"
git describe --dirty --always 2>/dev/null`
GIT_COMMIT=`
cd "$srcdir" &&
git describe --dirty --always 2>/dev/null`
if test x$GIT_COMMIT != x; then
if test x$GIT_COMMIT != x; then
AC_DEFINE_UNQUOTED(GIT_COMMIT, ["$GIT_COMMIT"], [The current git commit])
AC_DEFINE_UNQUOTED(GIT_COMMIT, ["$GIT_COMMIT"], [The current git commit])
fi
fi
...
@@ -186,6 +186,7 @@ AC_ARG_WITH([android-sdk],
...
@@ -186,6 +186,7 @@ AC_ARG_WITH([android-sdk],
[Directory for Android SDK]),
[Directory for Android SDK]),
[], [with_android_sdk=no])
[], [with_android_sdk=no])
android_abi=""
if test x$host_is_android = xyes; then
if test x$host_is_android = xyes; then
if test x$with_android_sdk = xno; then
if test x$with_android_sdk = xno; then
AC_MSG_ERROR([Android build requires option --with-android-sdk=DIR])
AC_MSG_ERROR([Android build requires option --with-android-sdk=DIR])
...
@@ -194,9 +195,15 @@ if test x$host_is_android = xyes; then
...
@@ -194,9 +195,15 @@ if test x$host_is_android = xyes; then
if ! test -x $with_android_sdk/tools/android; then
if ! test -x $with_android_sdk/tools/android; then
AC_MSG_ERROR([Android SDK not found in $with_android_sdk])
AC_MSG_ERROR([Android SDK not found in $with_android_sdk])
fi
fi
AS_CASE([$host_cpu],
[i686], [android_abi="x86"],
[aarch64], [android_abi="arm64-v8a"],
[android_abi="armeabi-v7a"])
fi
fi
AC_SUBST(ANDROID_SDK, [$with_android_sdk])
AC_SUBST(ANDROID_SDK, [$with_android_sdk])
AC_SUBST(ANDROID_ABI, [$android_abi])
dnl ---------------------------------------------------------------------------
dnl ---------------------------------------------------------------------------
dnl Language Checks
dnl Language Checks
...
...
python/build/ffmpeg.py
View file @
1ba35e1f
...
@@ -21,6 +21,8 @@ class FfmpegProject(Project):
...
@@ -21,6 +21,8 @@ class FfmpegProject(Project):
if
toolchain
.
is_arm
:
if
toolchain
.
is_arm
:
arch
=
'arm'
arch
=
'arm'
elif
toolchain
.
is_aarch64
:
arch
=
'aarch64'
else
:
else
:
arch
=
'x86'
arch
=
'x86'
...
...
python/build/libs.py
View file @
1ba35e1f
...
@@ -364,6 +364,16 @@ curl = AutotoolsProject(
...
@@ -364,6 +364,16 @@ curl = AutotoolsProject(
patches
=
'src/lib/curl/patches'
,
patches
=
'src/lib/curl/patches'
,
)
)
libexpat
=
AutotoolsProject
(
'https://github.com/libexpat/libexpat/releases/download/R_2_2_6/expat-2.2.6.tar.bz2'
,
'17b43c2716d521369f82fc2dc70f359860e90fa440bea65b3b85f0b246ea81f2'
,
'lib/libexpat.a'
,
[
'--disable-shared'
,
'--enable-static'
,
'--without-docbook'
,
],
)
libnfs
=
AutotoolsProject
(
libnfs
=
AutotoolsProject
(
'https://github.com/sahlberg/libnfs/archive/libnfs-3.0.0.tar.gz'
,
'https://github.com/sahlberg/libnfs/archive/libnfs-3.0.0.tar.gz'
,
'445d92c5fc55e4a5b115e358e60486cf8f87ee50e0103d46a02e7fb4618566a5'
,
'445d92c5fc55e4a5b115e358e60486cf8f87ee50e0103d46a02e7fb4618566a5'
,
...
@@ -374,13 +384,15 @@ libnfs = AutotoolsProject(
...
@@ -374,13 +384,15 @@ libnfs = AutotoolsProject(
# work around -Wtautological-compare
# work around -Wtautological-compare
'--disable-werror'
,
'--disable-werror'
,
'--disable-utils'
,
'--disable-examples'
,
],
],
base
=
'libnfs-libnfs-3.0.0'
,
base
=
'libnfs-libnfs-3.0.0'
,
autoreconf
=
True
,
autoreconf
=
True
,
)
)
boost
=
BoostProject
(
boost
=
BoostProject
(
'http://downloads.sourceforge.net/project/boost/boost/1.6
6.0/boost_1_66
_0.tar.bz2'
,
'http://downloads.sourceforge.net/project/boost/boost/1.6
8.0/boost_1_68
_0.tar.bz2'
,
'
5721818253e6a0989583192f96782c4a98eb6204965316df9f5ad75819225ca9
'
,
'
7f6130bc3cf65f56a618888ce9d5ea704fa10b462be126ad053e80e553d6d8b7
'
,
'include/boost/version.hpp'
,
'include/boost/version.hpp'
,
)
)
python/build/meson.py
View file @
1ba35e1f
...
@@ -20,6 +20,9 @@ class MesonProject(Project):
...
@@ -20,6 +20,9 @@ class MesonProject(Project):
cpu
=
'armv7'
cpu
=
'armv7'
else
:
else
:
cpu
=
'armv6'
cpu
=
'armv6'
elif
toolchain
.
is_aarch64
:
cpu_family
=
'aarch64'
cpu
=
'arm64-v8a'
else
:
else
:
cpu_family
=
'x86'
cpu_family
=
'x86'
if
'x86_64'
in
toolchain
.
arch
:
if
'x86_64'
in
toolchain
.
arch
:
...
@@ -51,6 +54,9 @@ c_link_args = %s
...
@@ -51,6 +54,9 @@ c_link_args = %s
cpp_args =
%
s
cpp_args =
%
s
cpp_link_args =
%
s
cpp_link_args =
%
s
# Keep Meson from executing Android-x86 test binariees
needs_exe_wrapper = true
[host_machine]
[host_machine]
system = '
%
s'
system = '
%
s'
cpu_family = '
%
s'
cpu_family = '
%
s'
...
...
src/input/plugins/FileInputPlugin.cxx
View file @
1ba35e1f
...
@@ -64,13 +64,10 @@ OpenFileInputStream(Path path, Mutex &mutex)
...
@@ -64,13 +64,10 @@ OpenFileInputStream(Path path, Mutex &mutex)
throw
FormatRuntimeError
(
"Not a regular file: %s"
,
throw
FormatRuntimeError
(
"Not a regular file: %s"
,
path
.
c_str
());
path
.
c_str
());
#if !defined(__BIONIC__) || __ANDROID_API__ >= 21
/* posix_fadvise() requires Android API 21 */
#ifdef POSIX_FADV_SEQUENTIAL
#ifdef POSIX_FADV_SEQUENTIAL
posix_fadvise
(
reader
.
GetFD
().
Get
(),
(
off_t
)
0
,
info
.
GetSize
(),
posix_fadvise
(
reader
.
GetFD
().
Get
(),
(
off_t
)
0
,
info
.
GetSize
(),
POSIX_FADV_SEQUENTIAL
);
POSIX_FADV_SEQUENTIAL
);
#endif
#endif
#endif
return
std
::
make_unique
<
FileInputStream
>
(
path
.
ToUTF8Throw
().
c_str
(),
return
std
::
make_unique
<
FileInputStream
>
(
path
.
ToUTF8Throw
().
c_str
(),
std
::
move
(
reader
),
info
.
GetSize
(),
std
::
move
(
reader
),
info
.
GetSize
(),
...
...
src/playlist/cue/CueParser.cxx
View file @
1ba35e1f
...
@@ -202,6 +202,7 @@ CueParser::Feed2(char *p) noexcept
...
@@ -202,6 +202,7 @@ CueParser::Feed2(char *p) noexcept
return
;
return
;
if
(
strcmp
(
type
,
"WAVE"
)
!=
0
&&
if
(
strcmp
(
type
,
"WAVE"
)
!=
0
&&
strcmp
(
type
,
"FLAC"
)
!=
0
&&
/* non-standard */
strcmp
(
type
,
"MP3"
)
!=
0
&&
strcmp
(
type
,
"MP3"
)
!=
0
&&
strcmp
(
type
,
"AIFF"
)
!=
0
)
{
strcmp
(
type
,
"AIFF"
)
!=
0
)
{
state
=
IGNORE_FILE
;
state
=
IGNORE_FILE
;
...
...
src/system/EPollFD.cxx
View file @
1ba35e1f
...
@@ -22,21 +22,6 @@
...
@@ -22,21 +22,6 @@
#include "EPollFD.hxx"
#include "EPollFD.hxx"
#include "Error.hxx"
#include "Error.hxx"
#if defined(__BIONIC__) && __ANDROID_API__ < 21
#include <sys/syscall.h>
#include <fcntl.h>
#define EPOLL_CLOEXEC O_CLOEXEC
static
inline
int
epoll_create1
(
int
flags
)
noexcept
{
return
syscall
(
__NR_epoll_create1
,
flags
);
}
#endif
EPollFD
::
EPollFD
()
EPollFD
::
EPollFD
()
:
fd
(
::
epoll_create1
(
EPOLL_CLOEXEC
))
:
fd
(
::
epoll_create1
(
EPOLL_CLOEXEC
))
{
{
...
...
win32/build.py
View file @
1ba35e1f
...
@@ -65,6 +65,7 @@ class CrossGccToolchain:
...
@@ -65,6 +65,7 @@ class CrossGccToolchain:
self
.
is_arm
=
arch
.
startswith
(
'arm'
)
self
.
is_arm
=
arch
.
startswith
(
'arm'
)
self
.
is_armv7
=
self
.
is_arm
and
'armv7'
in
self
.
cflags
self
.
is_armv7
=
self
.
is_arm
and
'armv7'
in
self
.
cflags
self
.
is_aarch64
=
arch
==
'aarch64'
self
.
is_windows
=
'mingw32'
in
arch
self
.
is_windows
=
'mingw32'
in
arch
self
.
env
=
dict
(
os
.
environ
)
self
.
env
=
dict
(
os
.
environ
)
...
@@ -86,6 +87,7 @@ thirdparty_libs = [
...
@@ -86,6 +87,7 @@ thirdparty_libs = [
liblame
,
liblame
,
ffmpeg
,
ffmpeg
,
curl
,
curl
,
libexpat
,
libnfs
,
libnfs
,
boost
,
boost
,
]
]
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment