mpd: 0.21.25 -> 0.22

This commit is contained in:
Tobias Mayer 2020-09-26 17:38:36 +02:00 committed by Doron Behar
parent 5315ce0e40
commit 7c1ce3b1e6

View File

@ -1,6 +1,6 @@
{ stdenv, fetchFromGitHub, meson, ninja, pkg-config, glib, systemd, boost, darwin
# Inputs
, curl, libmms, libnfs, samba
, curl, libmms, libnfs, liburing, samba
# Archive support
, bzip2, zziplib
# Codecs
@ -30,6 +30,7 @@
let
lib = stdenv.lib;
concatAttrVals = nameList: set: lib.concatMap (x: set.${x} or []) nameList;
featureDependencies = {
# Storage plugins
@ -37,6 +38,7 @@ let
webdav = [ curl expat ];
# Input plugins
curl = [ curl ];
io_uring = [ liburing ];
mms = [ libmms ];
nfs = [ libnfs ];
smbclient = [ samba ];
@ -85,15 +87,19 @@ let
zeroconf = [ avahi dbus ];
};
nativeFeatureDependencies = {
documentation = [ doxygen python3Packages.sphinx ];
};
run = { features ? null }:
let
# Disable platform specific features if needed
# using libmad to decode mp3 files on darwin is causing a segfault -- there
# is probably a solution, but I'm disabling it for now
platformMask = lib.optionals stdenv.isDarwin [ "mad" "pulse" "jack" "nfs" "smbclient" ]
++ lib.optionals (!stdenv.isLinux) [ "alsa" "systemd" "syslog" ];
++ lib.optionals (!stdenv.isLinux) [ "alsa" "io_uring" "systemd" "syslog" ];
knownFeatures = builtins.attrNames featureDependencies;
knownFeatures = builtins.attrNames featureDependencies ++ builtins.attrNames nativeFeatureDependencies;
platformFeatures = lib.subtractLists platformMask knownFeatures;
features_ = if (features == null )
@ -110,13 +116,13 @@ let
in stdenv.mkDerivation rec {
pname = "mpd";
version = "0.21.25";
version = "0.22";
src = fetchFromGitHub {
owner = "MusicPlayerDaemon";
repo = "MPD";
rev = "v${version}";
sha256 = "1yjp8pwr2zn0mp39ls1w0pl37zrjn5m9ycgjmcsw2wpa4709r356";
sha256 = "1lsi4fgrarabkahfhf5zbmppg7jba7m362gxyqhv54hmqprl1qff";
};
buildInputs = [
@ -128,16 +134,15 @@ let
# Run-time dependency GTest found: YES 1.10.0
gtest
]
++ (lib.concatLists (lib.attrVals features_ featureDependencies))
++ concatAttrVals features_ featureDependencies
++ lib.optionals stdenv.isDarwin [ darwin.apple_sdk.frameworks.AudioToolbox darwin.apple_sdk.frameworks.AudioUnit ];
nativeBuildInputs = [
meson
ninja
pkg-config
python3Packages.sphinx
doxygen
];
]
++ concatAttrVals features_ nativeFeatureDependencies;
# Otherwise, the meson log says:
#
@ -153,10 +158,9 @@ let
outputs = [ "out" "doc" "man" ];
mesonFlags = [
# Documentation is enabled unconditionally but it's not installed
# unconditionally thanks to the outputs being split
"-Ddocumentation=true"
"-Dtest=true"
"-Dmanpages=true"
"-Dhtml_manual=true"
]
++ map (x: "-D${x}=enabled") features_
++ map (x: "-D${x}=disabled") (lib.subtractLists features_ knownFeatures)
@ -193,7 +197,7 @@ in
"yajl" "sqlite"
"soundcloud" "qobuz" "tidal"
] ++ lib.optionals stdenv.isLinux [
"alsa" "systemd" "syslog"
"alsa" "systemd" "syslog" "io_uring"
] ++ lib.optionals (!stdenv.isDarwin) [
"mad" "jack" "nfs"
]; };