Max Kellermann
cb86023bd7
lib/curl/Form: new library
2018-01-11 17:27:25 +01:00
Max Kellermann
bd2cb40424
lib/curl/Easy: add curl_easy_escape() wrapper
2018-01-11 17:27:25 +01:00
Max Kellermann
e9a3ff0e70
input/failing: new class
2018-01-11 16:18:15 +01:00
Max Kellermann
5148e229e0
input/proxy: allow input==nullptr
...
Allow implementations to install the "real" input later.
2018-01-11 15:57:57 +01:00
Max Kellermann
1ad21c27c9
input/curl: add public function to construct an instance
2018-01-11 15:53:46 +01:00
Max Kellermann
f392e13077
input/curl: pass additional request headers to constructor
...
Prepare to allow callers to pass custom request headers.
2018-01-11 15:43:59 +01:00
Max Kellermann
3fe5b42b2b
input/curl: pass IcyMetaDataParser to constructor
...
Allows the caller to decide whether to enable the feature.
2018-01-11 15:32:19 +01:00
Max Kellermann
70c4b621cf
input/curl: remove impossible "icy" checks
...
The IcyMetaDataParser cannot be initialized already in OnHeaders(),
because it will be initialized late in that method; and there will not
be another OnHeaders() call, because streams with Icy metadata are not
seekable, thus there will not be another HTTP request.
2018-01-11 14:55:29 +01:00
Max Kellermann
a8df5e109b
input/curl: use StringView::StartsWith()
2018-01-11 14:52:35 +01:00
Max Kellermann
ba4f1da466
input/curl: create the request_headers list only once
2018-01-11 12:49:01 +01:00
Max Kellermann
0bfbe6771e
input/curl: un-inline constructor
2018-01-11 12:46:52 +01:00
Max Kellermann
d1df0fec19
input/curl: add "noexcept"
2018-01-11 12:36:31 +01:00
Max Kellermann
031ccce8b7
input/curl: convert struct to class
2018-01-11 12:31:29 +01:00
Max Kellermann
34eef0ed84
Merge branch 'v0.20.x'
2018-01-07 17:24:05 +01:00
Max Kellermann
354104f9a9
thread/{Thread,Id}: use defaul-initialized pthread_t as "undefined" value
...
Use the "==" operator instead of pthread_equal().
This allows us to eliminate two boolean flags which are there to avoid
race conditions, and made the thing so fragile that I got tons of
(correct) thread sanitizer warnings.
2018-01-07 17:20:26 +01:00
Max Kellermann
8649ea3d6f
thread/Thread: use BoundMethod
2018-01-07 17:20:26 +01:00
Max Kellermann
752ff12c37
thread/Thread: move code to Run()
2018-01-07 17:20:26 +01:00
Max Kellermann
4bb89b1755
MusicPipe: lock the mutex in Peek() and GetSize()
2018-01-07 17:20:22 +01:00
Max Kellermann
be068f360d
Merge remote-tracking branches 'mmuman/configure-sockaddr-sin-len' and 'mmuman/haiku-build-fix'
2018-01-06 13:19:58 +01:00
Max Kellermann
0ef553d30e
increment version number to 0.20.16
2018-01-06 13:15:47 +01:00
François Revol
5b18b66282
Haiku: fix build
...
Convert the fill_buffer to a class method, to allow accessing the private method.
Also remove the leftover Wrapper stuff.
2018-01-05 23:10:58 +01:00
François Revol
7b2283c28b
configure.ac: autodetect sin_len member in struct sockaddr_in.
...
This fixes a build issue on Haiku as it does have sin_len.
Tested on Linux as well.
For some reason AC_CHECK_MEMBER doesn't generate the proper define
in config.h.in, so I used AC_CHECK_MEMBERS.
2018-01-05 22:20:47 +01:00
Max Kellermann
c74e018359
Merge branch 'v0.20.x'
2018-01-05 18:11:04 +01:00
Max Kellermann
43a62aef07
android: release 0.20.15
2018-01-05 18:09:56 +01:00
Max Kellermann
ed4d0aa909
release v0.20.15
2018-01-05 17:55:25 +01:00
Max Kellermann
023ce4e720
python/build/libs.py: disable even more FFmpeg modules
2018-01-05 17:41:58 +01:00
Max Kellermann
368d9359dd
python/build/libs.py: update libogg to 1.3.3
2018-01-05 17:41:58 +01:00
Max Kellermann
d98c19d561
python/build/libs.py: disable more FFmpeg modules
2018-01-05 16:49:28 +01:00
Max Kellermann
cab77e35e0
queue/PlaylistControl: fix crash after seek failure
...
This completes the bug fix commit
2065e3290452377b2931f3129b230c8cc536cbc8; if we clear "queued" then we
must clear "queued_song" as well, or another variant of the assertion
fails.
2018-01-05 13:00:24 +01:00
Max Kellermann
e3e90b4b93
python/build/libs.py: disable libcurl SMB support
...
MPD doesn't use this feature anyway.
2018-01-05 12:00:29 +01:00
Max Kellermann
f8c69893e1
python/build/libs.py: disable lots of useless FFmpeg features
2018-01-05 11:11:20 +01:00
Max Kellermann
49678a0893
python/build/libs.py: suppress "visibility default" in libopus build
2018-01-05 10:33:53 +01:00
Max Kellermann
d667b5b48c
python/build/libs.py: work around libid3tag CFLAGS bug
2018-01-05 10:25:16 +01:00
Max Kellermann
4a120f8090
Merge branch 'v0.20.x'
2018-01-05 10:10:17 +01:00
Max Kellermann
9cba55b39c
python/build/project.py: add "edits" parameter to edit source files
2018-01-05 10:06:22 +01:00
Max Kellermann
c2cbb7b8ce
output/haiku: remove unimplemented Cancel() method
2018-01-05 10:05:14 +01:00
Max Kellermann
79b0f97a3f
output/Interface: clarify Play() API documentation
2018-01-05 08:35:40 +01:00
Felix Hädicke
8217d75ca1
build/python: refactoring: introduce new class MakeProject
...
This introduces a the new class MakeProject, which is used as a base
class for all Makefile based thirdparty libraries.
2018-01-05 08:17:17 +01:00
Max Kellermann
1ca70d9759
build/python/autotools: add properties "ldflags", "libs", "install_target"
2018-01-05 08:17:15 +01:00
Felix Hädicke
4303aaa9b8
build/python: use "glibtoolize", not "libtoolize" when compiling on OS X
...
On OS X, the "libtoolize" command is some Apple tool. The libtoolize
we want is named "glibtoolize" in Homebrew.
2018-01-05 07:55:59 +01:00
Max Kellermann
7b56bae289
python/build/libs.py: pass --disable-debugging to libid3tag and libmad
2018-01-05 07:30:09 +01:00
Max Kellermann
4183416b3e
python/build/libs.py: reindent arrays
2018-01-05 07:27:09 +01:00
Max Kellermann
a60dee57ce
python/libs: upgrade Boost to 1.66.0
2018-01-05 07:16:38 +01:00
Max Kellermann
5724656acb
android/build.py: enable function/data sections in static libraries
...
.. and make all library symbols hidden by default.
Saves big amounts of .text section size with --gc-sections, because
only this allows discarding unused functions from those (static)
third-party libraries.
2018-01-04 23:33:07 +01:00
Max Kellermann
329f9cd9fe
thread/Util: no ioprio_set() on Android due to seccomp/SIGSYS
2018-01-04 19:33:14 +01:00
Felix Hädicke
fbdb8b406e
Makefile.am: build Android APK package without Ant
...
In current Android SDK releases, Ant support was removed. Move the
necessary build steps from the former Ant build system to our Makefile,
and call the required build tools from the Android SDK (aapt and dx),
Java SDK (javac) and Info-ZIP (zip) directly.
[mk: copied from Felix's commit
e52b906dba971a1173f9e8f83d32b52ee9f89af3 in the XCSoar project)
2018-01-04 18:55:54 +01:00
Max Kellermann
85d0bbd957
Makefile.am: add variable ZIPALIGN
2018-01-04 18:55:45 +01:00
Max Kellermann
414f00d6ae
Makefile.am: add variable ANDROID_SDK_PLATFORM
2018-01-04 18:47:52 +01:00
Max Kellermann
e3ef3e8d71
output/Control: unlock mutex during expensive operations
2018-01-04 10:36:18 +01:00
Max Kellermann
7574dfd339
output/Control: move code from FinishDestroy() to destructor
2018-01-04 10:34:27 +01:00