summaryrefslogtreecommitdiff
path: root/src/CommandLine.cxx
AgeCommit message (Collapse)Author
2021-01-01copyright year 2021Max Kellermann
2020-09-21decoder/plugin: add method protocols()Max Kellermann
Similar to commit 4e2a551f30c1e1db13933d15c44d9186a2f37959 but for decoder plugins. This is tailored for the FFmpeg decoder plugin which implements some protocols (e.g. RTSP) as demuxer plugin.
2020-09-21CommandLine: reindent lambdasMax Kellermann
2020-05-05input/uring: new input plugin using io_uringMax Kellermann
This is the final piece of the series to establish io_uring support on Linux. MPD doesn't need io_uring for its efficient bulk I/O support, but to allow file I/O to be cancelled. This is a big problem on CIFS/NFS mounts where processes sleep uninterruptable if the file server disappears, deadlocking MPD. With io_uring, a flaky NFS connection allows MPD to continue to work (even though there are still deadlocks inside MPD which need to be addressed). This plugin does not yet use cancellable `open()` using `IORING_OP_OPENAT`. This will be implemented later. Lots of other optimization opportunities for io_uring are still missing as well - for example the database update could benefit a lot, but unfortunately, io_uring doesn't have `readdir()` support just yet.
2020-05-05meson.build: move VERSION and others to Version.hMax Kellermann
2020-05-05*/plugins/meson.build: define feature macros in Features.hMax Kellermann
This makes ccache more efficient when recompiling with different plugins.
2020-04-02Merge tag 'v0.21.22'Max Kellermann
release v0.21.22
2020-04-02fs/NarrowPath: add class FromNarrowPathMax Kellermann
Move code from ParseCommandLine().
2020-03-26replace exit and _exit with std variantsRosen Penev
_exit and std::_Exit are identical, expect the latter is standard C++. Added several functions to the std namespace as a result of headers. Signed-off-by: Rosen Penev <rosenp@gmail.com>
2020-03-16replace noreturn attribute with standard C++ versionRosen Penev
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2020-02-16[clang-tidy] add ending namespace commentsRosen Penev
Found with llvm-namespace-comment Signed-off-by: Rosen Penev <rosenp@gmail.com>
2020-02-04[clang-tidy] remove const in declarationRosen Penev
Found with readability-avoid-const-params-in-decls Signed-off-by: Rosen Penev <rosenp@gmail.com>
2020-02-02Merge remote-tracking branches 'neheb/uniq', 'neheb/bool', 'neheb/loop', ↵Max Kellermann
'neheb/bool2', 'neheb/perf', 'neheb/void' and 'neheb/value'
2020-02-01[clang-tidy] remove pointless void argRosen Penev
Found with modernize-redundant-void-arg Signed-off-by: Rosen Penev <rosenp@gmail.com>
2020-02-01[clang-tidy] simplify boolean expressionsRosen Penev
Found with readability-simplify-boolean-expr Signed-off-by: Rosen Penev <rosenp@gmail.com>
2020-01-18copyright year 2020Max Kellermann
2019-08-03util/Macros: replace with std::size() (C++17)Max Kellermann
2019-07-05include cleanups (powered by iwyu)Max Kellermann
2019-06-17Copyright year 2019Max Kellermann
2019-04-18CommandLine: fix another build failure with -Ddatabase=falseMax Kellermann
Split several printf() calls to make it easier to deal with all those #ifdefs.
2018-10-31*: copyright year 2018Max Kellermann
2018-10-14build with Meson instead of autotoolsMax Kellermann
So long, autotools! This is my last MPD related project to migrate away from it. It has its strengths, but also very obvious weaknesses and weirdnesses. Today, many of its quirks are not needed anymore, and are cumbersome and slow. Now welcome our new Meson overlords!
2018-08-19Main: allocate ConfigData on the stackMax Kellermann
2018-07-17fs/Path: add operator/(Path,Path)Max Kellermann
Modeled after std::filesystem::operator/() from C++17.
2018-07-17CommandLine: use constexpr Path instead of macrosMax Kellermann
2018-07-16config/Config*: rename files, drop "Config" prefixMax Kellermann
2018-06-02basic udisks2 supportMax Kellermann
To get udisks2 support started, this commit contains the configure.ac option and a "neighbor" plugin which shows block devices. Later, this will allow mounting removable media with a new storage plugin.
2018-06-02odbus: import dbus-1 OO wrapper libraryMax Kellermann
From https://github.com/CM4all/libcommon/commit/a7cef404c1f7eedff1a629da48f77491218ee281 To be used by upcoming code.
2018-03-04Really hide hidden cmd opts from help printout.Christian Kröner
2018-01-20input/{file,archive}: remove the dummy InputPlugin instancesMax Kellermann
These have no use, exception for creating an artificial dependency from input_plugins[] to all archive plugins.
2018-01-17util/OptionParser: add struct ResultMax Kellermann
Prepare for option values.
2018-01-17CommandLine: convert pointer to referenceMax Kellermann
2018-01-17CommandLine: use C++11 initializersMax Kellermann
2018-01-17util/OptionParser: pass array of OptionDefs to constructorMax Kellermann
2018-01-16util/OptionParser: loop in ParseNext() until a new option is foundMax Kellermann
2018-01-16util/OptionParser: collect remaining argumentsMax Kellermann
Allow the caller to use a simple "for" loop without checking arguments.
2017-12-12*: check defined(_WIN32) instead of defined(WIN32)Max Kellermann
Only _WIN32 is defined by the compiler, and WIN32 is not standardized and may be missing. Closes #169
2017-01-17AUTHORS, ...: update my email addressMax Kellermann
2017-01-16CommandLine: update copyright yearMax Kellermann
2017-01-03update copyright yearMax Kellermann
2016-11-02CommandLine: migrate from class Error to C++ exceptionsMax Kellermann
2016-04-12util/StringPointer: rename typedef pointer to pointer_typeMax Kellermann
2016-02-26update copyright year to 2016Max Kellermann
2015-12-18fs/io/Reader: use C++ exceptions instead of class ErrorMax Kellermann
2015-06-26lib/icu/Converter: add iconv() implementationMax Kellermann
2015-06-26CommandLine: show more compile-time features in --versionMax Kellermann
2015-06-26CommandLine: update copyright yearMax Kellermann
2015-03-05fs/Traits: enable _UNICODE on WindowsMax Kellermann
Use wchar_t for everything on Windows. Solves a lot of filesystem charset problems.
2015-03-05fs/Traits: add macro PATH_LITERAL()Max Kellermann
2015-01-01Copyright year 2015Max Kellermann