summaryrefslogtreecommitdiff
path: root/media-sound/mpd
diff options
context:
space:
mode:
Diffstat (limited to 'media-sound/mpd')
-rw-r--r--media-sound/mpd/Manifest13
-rw-r--r--media-sound/mpd/files/mpd-0.20.10-libcdio-2.patch27
-rw-r--r--media-sound/mpd/files/mpd-0.20.4.logrotate6
-rw-r--r--media-sound/mpd/files/mpd-0.21.1.logrotate9
-rw-r--r--media-sound/mpd/metadata.xml8
-rw-r--r--media-sound/mpd/mpd-0.20.10.ebuild263
-rw-r--r--media-sound/mpd/mpd-0.20.23.ebuild270
-rw-r--r--media-sound/mpd/mpd-0.21.2.ebuild298
-rw-r--r--media-sound/mpd/mpd-0.21.3.ebuild298
9 files changed, 615 insertions, 577 deletions
diff --git a/media-sound/mpd/Manifest b/media-sound/mpd/Manifest
index 5bc2705a2b52..08a467233506 100644
--- a/media-sound/mpd/Manifest
+++ b/media-sound/mpd/Manifest
@@ -1,12 +1,11 @@
AUX mpd-0.18.conf.patch 2969 BLAKE2B 6b1e56234cd061cab0f7704889af9f20ee0653d3c20d60eecf3a62ce6c3eb0e6a8c29252ef6e3045a96af6e8cd12d7c27dfbdf8a79fa3ed025258b8c9cb7b05d SHA512 4b646bc5d8fe4c76421f4cb0dbc7894cf9118492662ea1127f90c48f84760a1167988692c2b63f49182afcd46c578de7203356bbf9dd47787f9129f7c3dbf4a5
-AUX mpd-0.20.10-libcdio-2.patch 843 BLAKE2B d0c7eeeedb6065b1e08b1a8b1e6f5237408cd1b747aba72651441f0c203a4d32a39bf4e3c2371ae16fbde2f991c2f60870b15e8340b81bbc793355131ea57f62 SHA512 c9b62e6e0e7408ff3ab1e73c08001e498150c6bda8a9796ef23c35ba4dd0313e243129f7fb1760997f4a226f1ea3de56657eeead41f07bcaafa9affde40cc851
AUX mpd-0.20.21.logrotate 112 BLAKE2B 2fd60db81c39d3b7eb1cd375450b5902d6e31734e3801819dbc9475d84750491780aab6c4db0be00039c88dce2fb25b83abc9374a0c736697d8c1cc1bd4f5b24 SHA512 32da561c59f8641e549ccec6ecf8a678cd1b9c1d7fbbef5ca6a1b1eb0f07948c2ea23366d357a16a221e0a9b96fe079df3a046f18c4410b8ddc4adce63c6d467
AUX mpd-0.20.4.init 681 BLAKE2B 36f48fe4f2432f659c455e75c3e6a773e7d49b9194fea75cd08251cc661b4885fe4ca16cc1008b679cb441ce8eb6a309c60b132570b89e4cf8f9560e130e71be SHA512 e9dbbab915e0e84dec9bd084347e608db7802386b281dc35fa1a9401bd3a40652735a02c98a8d51074c061cbe05ff038e0a16f379638c133b6ae8a6a70ca8f39
-AUX mpd-0.20.4.logrotate 79 BLAKE2B fcff807fb7557d480378ae6712f598147c9dbc3381ca89b21529277bfc636448e474b610096eae5c02963bc5aa5cf1055f0a9bbde36f2cc8d178e373a755fa84 SHA512 b4616307eb4b06e42a53120bb37276ea19cb1b3096094214062835f71093a1d196bc515b6b6f1e23dbd83a49151565807071959408c4f1078d95925660d3b324
-DIST mpd-0.20.10.tar.xz 778828 BLAKE2B c16b955ace770cf3d5da2ccad81fd3089cf2e60bf47774745d75babcff38fa344646b26dd32617fa2fe86ee0c785b9c8272ea6c90f77266b1a0cba2d48145236 SHA512 bac6a71e5b85600c590eae6b785474574cf0d7b03d9add537161b968a2997a975a597639a9fece119a01a7e27b5207523e4ae30b2f4f35791eff8c3ff26d107c
+AUX mpd-0.21.1.logrotate 120 BLAKE2B 2111ba897a77a766adf0827c4da7132d5315c7c13ba8e29d582f1030a902492945b0bad6781bbf551e83afd38b957e953215674c669aa2745c1dfa004b20d4b6 SHA512 4a610d4805c32989673d6295fdf4290dc29b11e5b5f3baa2aa957ef9334566f13fa1937e70dc6fe414277e6a026442e4c7e4b406aaf424b96b392da0200ec732
DIST mpd-0.20.21.tar.xz 800476 BLAKE2B 0c807ae8d79abd9400aa417b516c709073b23390aeed2b385c716e20f8c4f93376a235b54fe5f5cfcd451b04c76e105b41acbd180d294281432d4d1b6a427a15 SHA512 d44fb326ea6213ecf46721ca81efdfffaec4faa5a66e627185fd5ab7c4f0c5a380f4d04aed5c2909746a37b33987cb61f62dc2d747365da06629fbb78bf7c7d6
-DIST mpd-0.20.23.tar.xz 806784 BLAKE2B 859edfe37b355ce8b64a9dc22dd0c13891d9154b5d07299ec1655757b02df3900af0d7fea7e7cbdcccc8d82d61a4c9c05a145fc2b23c471fefd1cb9d95043356 SHA512 9875f5b7d7eb7d51fa135249954fbaa2b300ecd539e15aee1a090f14c7a340f328c2f910aeb641ce32af2df21d0e56725ad1a3f957339b0a9c051a02ea0b8a05
-EBUILD mpd-0.20.10.ebuild 7285 BLAKE2B 08b8d0afe72f0ad186438441aa1229e71c1c2564250c9e624eac2f7c6ec7596bd9f0ad4b353b4ca37af9acac2bda7b2a59f134265cb9a41be0bdfef64cf384b8 SHA512 82c6c20fbe05137a61ed07daa9bdcd0e7639267d8301e14257978d13e67a6ec9e0581f873c22df14a90a1dffb71dfd47fc456aee49889dc5d67a566ea6326ba4
+DIST mpd-0.21.2.tar.xz 664408 BLAKE2B da1cde9b5f87c3e52c90d9a743ec8bf7acbcf52f3bf28969414bcc0f3f29151fd47157dc153a094844c94f6eb50e5a3564baf66a2e87d840b7b34efc8d0f760b SHA512 a98ff2636a22f7f0e377f814d0312b03344624317a68fcd89a7c5f33a40629908cd19f8bfff5dde1eef96cebd93e92cef63153bf60b02791803532357a38e020
+DIST mpd-0.21.3.tar.xz 664992 BLAKE2B 42e2bef46f4eb99e43c4078373dab4301cafa3062459abfed08e9f4b448a1fcfaa40da5a53941b49b426abecf2f31278fdb0857293b24156fa77845c56cbd095 SHA512 c6ce513ea641d026594cd7ae6e9051bd0060e45f5839d89b350ba144cc9094a8e1490052df4d024cbc92d88680ee8e8bae14fc8037431394771018a75c3ee3d7
EBUILD mpd-0.20.21-r1.ebuild 7308 BLAKE2B a4579b515ea1904f2973f5b424f205cc08286aec7e516c33ba3aa035c2fca93117c8ede03818d3534a7cedba6b547fb1320039771f000a989ba218a60dcb7b87 SHA512 f7601f95f10158f112a65ac7625840f5a199bb349323c662dc6477e7a9b1498a593bff8cff289c1a37b78ebb80647136e843f8816bf77a5d7e1b8a0fc1624d66
-EBUILD mpd-0.20.23.ebuild 7311 BLAKE2B 25d0a67accc8cd81fd2a2d241f9a94b02d2a686af4fe7184f543fbd8f7a5f14793bf046a862222dea26b5e1533c0a132513a698b1199b46d33aa25b99a1f9392 SHA512 cd47cf1501ca33252c97e35c91708ca66c63e2030d1727d507b84575b5bc70e8867a4c8b3aca5ba4fdcba0847bb5bb36901d87989a002d0536016a53209f5b93
-MISC metadata.xml 2412 BLAKE2B b208c2d3481421794b7fd5328814e9dd340eb820df4972c0bd70626d9d63707dfceb8f7446239a3ca581f46004a1aa5e6438cbb6449700f472c1aa411d848649 SHA512 4cbaa880020239d2fcf6e2f057004569eb86288d3f25dce8e89eddc8d65cbbccf01dd0cfbfc376790297a1147d18aec3148515659fae5aec3bbe215bb94c2f8d
+EBUILD mpd-0.21.2.ebuild 8234 BLAKE2B a0f7578c2062368f60916d22c4b403fe192e1048bba733a9f17bed900bccc20f86dae23e1241d7ee84acc5a4cadd7ba7a40b397b536c6e85a6ffa242812c8464 SHA512 254d6ec58bca9086aed9c3bb0b858bcf4fabd74e4cd4a4a991e0a7a61a0839d31cf50cd997e4d5b7ce71817521b83c518cb6390a798552959577ff5c3a4c854f
+EBUILD mpd-0.21.3.ebuild 8234 BLAKE2B a0f7578c2062368f60916d22c4b403fe192e1048bba733a9f17bed900bccc20f86dae23e1241d7ee84acc5a4cadd7ba7a40b397b536c6e85a6ffa242812c8464 SHA512 254d6ec58bca9086aed9c3bb0b858bcf4fabd74e4cd4a4a991e0a7a61a0839d31cf50cd997e4d5b7ce71817521b83c518cb6390a798552959577ff5c3a4c854f
+MISC metadata.xml 2537 BLAKE2B ac6bd3cee50be9327da28245f1ab8e0c64aec6af07f09cd62cf1e1f2e55e2e58e3168406250a83d404b564c33ae63450497a0c5d553c737f9637919b737e899b SHA512 20a7a662078ae05362f4109e574e1b6bb1e0cc085f24695c3fc885e2b4b3616fabcb21a9f376b7c1c09874ec7b108683467ea3644c9bed18610e8b5684a2383a
diff --git a/media-sound/mpd/files/mpd-0.20.10-libcdio-2.patch b/media-sound/mpd/files/mpd-0.20.10-libcdio-2.patch
deleted file mode 100644
index 9153a87dcf9d..000000000000
--- a/media-sound/mpd/files/mpd-0.20.10-libcdio-2.patch
+++ /dev/null
@@ -1,27 +0,0 @@
-From 12fd1cad0cc5472cbe931516970c1ac7aeb7ec00 Mon Sep 17 00:00:00 2001
-From: Max Kellermann <max@musicpd.org>
-Date: Sat, 3 Feb 2018 19:32:31 +0100
-Subject: [PATCH] archive/iso9660: libcdio 2.0 compatibility
-
-Closes #173
----
- src/archive/plugins/Iso9660ArchivePlugin.cxx | 5 +++++
- 1 file changed, 5 insertions(+)
-
-diff --git a/src/archive/plugins/Iso9660ArchivePlugin.cxx b/src/archive/plugins/Iso9660ArchivePlugin.cxx
-index 536745d85..363921527 100644
---- a/src/archive/plugins/Iso9660ArchivePlugin.cxx
-+++ b/src/archive/plugins/Iso9660ArchivePlugin.cxx
-@@ -115,7 +115,12 @@ Iso9660ArchiveFile::Visit(char *path, size_t length, size_t capacity,
- visitor.VisitArchiveEntry(path + 1);
- }
- }
-+
-+#if LIBCDIO_VERSION_NUM >= 20000
-+ iso9660_filelist_free(entlist);
-+#else
- _cdio_list_free (entlist, true);
-+#endif
- }
-
- static ArchiveFile *
diff --git a/media-sound/mpd/files/mpd-0.20.4.logrotate b/media-sound/mpd/files/mpd-0.20.4.logrotate
deleted file mode 100644
index ff47d1098cf1..000000000000
--- a/media-sound/mpd/files/mpd-0.20.4.logrotate
+++ /dev/null
@@ -1,6 +0,0 @@
-/var/lib/mpd/log {
- missingok
- postrotate
- /etc/init.d/mpd reload
- endscript
-}
diff --git a/media-sound/mpd/files/mpd-0.21.1.logrotate b/media-sound/mpd/files/mpd-0.21.1.logrotate
new file mode 100644
index 000000000000..597c4fb2306d
--- /dev/null
+++ b/media-sound/mpd/files/mpd-0.21.1.logrotate
@@ -0,0 +1,9 @@
+/var/lib/mpd/log {
+ missingok
+ weekly
+ delaycompress
+ compress
+ postrotate
+ /etc/init.d/mpd --quiet reload
+ endscript
+}
diff --git a/media-sound/mpd/metadata.xml b/media-sound/mpd/metadata.xml
index d6162fb2c8ad..a0ce86018108 100644
--- a/media-sound/mpd/metadata.xml
+++ b/media-sound/mpd/metadata.xml
@@ -1,10 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="project">
- <email>sound@gentoo.org</email>
- <name>Gentoo Sound project</name>
- </maintainer>
<maintainer type="person">
<email>zlogene@gentoo.org</email>
<name>Mikle Kolyada</name>
@@ -12,6 +8,8 @@
<use>
<flag name="adplug">Enable the AdPlug decoder plugin</flag>
<flag name="cdio">Use libcdio for ISO9660 parsing support</flag>
+ <flag name="chromaprint">Enable ChromaPrint / AcoustID support</flag>
+ <flag name="cue">Enable CUE sheet support</flag>
<flag name="curl">Support for web stream listening</flag>
<flag name="eventfd">Use the eventfd function in MPD's event loop</flag>
<flag name="faad">Use external faad library for AAC decoding</flag>
@@ -27,10 +25,12 @@
<flag name="network">Enables network streaming support</flag>
<flag name="nfs">Enable support for the Network File System</flag>
<flag name="pipe">Support writing audio to a pipe</flag>
+ <flag name="qobuz">Build plugin to access qobuz</flag>
<flag name="recorder">Enables output plugin for recording radio streams</flag>
<flag name="sid">Build with SID (Commodore 64 Audio) support</flag>
<flag name="signalfd">Use the signalfd function in MPD's event loop</flag>
<flag name="soundcloud">Build plugin to access soundcloud</flag>
+ <flag name="tidal">Build plugin to access tidal</flag>
<flag name="systemd">Enable support for systemd socket activation</flag>
<flag name="twolame">Support twolame MPEG-2 encoding</flag>
<flag name="webdav">Enable using music from a WebDAV share</flag>
diff --git a/media-sound/mpd/mpd-0.20.10.ebuild b/media-sound/mpd/mpd-0.20.10.ebuild
deleted file mode 100644
index e61366e3f1d1..000000000000
--- a/media-sound/mpd/mpd-0.20.10.ebuild
+++ /dev/null
@@ -1,263 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit autotools flag-o-matic linux-info systemd user
-
-DESCRIPTION="The Music Player Daemon (mpd)"
-HOMEPAGE="https://www.musicpd.org https://github.com/MusicPlayerDaemon/MPD"
-SRC_URI="https://www.musicpd.org/download/${PN}/${PV%.*}/${P}.tar.xz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="alpha amd64 ~arm ~hppa ~ppc ~ppc64 ~sh x86 ~x86-fbsd ~x64-macos"
-IUSE="adplug +alsa ao audiofile bzip2 cdio +curl debug +eventfd expat faad
- +fifo +ffmpeg flac fluidsynth gme +icu +id3tag +inotify +ipv6 jack
- lame mms libav libmpdclient libsamplerate libsoxr +mad mikmod modplug
- mpg123 musepack +network nfs ogg openal opus oss pipe pulseaudio recorder
- samba selinux sid +signalfd sndfile soundcloud sqlite systemd tcpd twolame
- unicode upnp vorbis wavpack wildmidi zeroconf zip zlib webdav"
-
-OUTPUT_PLUGINS="alsa ao fifo jack network openal oss pipe pulseaudio recorder"
-DECODER_PLUGINS="adplug audiofile faad ffmpeg flac fluidsynth mad mikmod
- modplug mpg123 musepack ogg flac sid vorbis wavpack wildmidi"
-ENCODER_PLUGINS="audiofile flac lame twolame vorbis"
-
-REQUIRED_USE="
- || ( ${OUTPUT_PLUGINS} )
- || ( ${DECODER_PLUGINS} )
- network? ( || ( ${ENCODER_PLUGINS} ) )
- recorder? ( || ( ${ENCODER_PLUGINS} ) )
- opus? ( ogg )
- upnp? ( expat )
- webdav? ( curl expat )
-"
-
-CDEPEND="!<sys-cluster/mpich2-1.4_rc2
- adplug? ( media-libs/adplug )
- alsa? (
- media-sound/alsa-utils
- media-libs/alsa-lib
- )
- ao? ( media-libs/libao[alsa?,pulseaudio?] )
- audiofile? ( media-libs/audiofile )
- bzip2? ( app-arch/bzip2 )
- cdio? ( dev-libs/libcdio-paranoia )
- curl? ( net-misc/curl )
- expat? ( dev-libs/expat )
- faad? ( media-libs/faad2 )
- ffmpeg? (
- libav? ( media-video/libav:0= )
- !libav? ( media-video/ffmpeg:0= )
- )
- flac? ( media-libs/flac[ogg?] )
- fluidsynth? ( media-sound/fluidsynth )
- gme? ( >=media-libs/game-music-emu-0.6.0_pre20120802 )
- icu? ( dev-libs/icu:= )
- id3tag? ( media-libs/libid3tag )
- jack? ( virtual/jack )
- lame? ( network? ( media-sound/lame ) )
- libmpdclient? ( media-libs/libmpdclient )
- libsamplerate? ( media-libs/libsamplerate )
- libsoxr? ( media-libs/soxr )
- mad? ( media-libs/libmad )
- mikmod? ( media-libs/libmikmod:0 )
- mms? ( media-libs/libmms )
- modplug? ( media-libs/libmodplug )
- mpg123? ( >=media-sound/mpg123-1.12.2 )
- musepack? ( media-sound/musepack-tools )
- network? (
- >=media-libs/libshout-2
- !lame? ( !vorbis? ( media-libs/libvorbis ) )
- )
- nfs? ( net-fs/libnfs )
- ogg? ( media-libs/libogg )
- openal? ( media-libs/openal )
- opus? ( media-libs/opus )
- pulseaudio? ( media-sound/pulseaudio )
- samba? ( >=net-fs/samba-4.0.25 )
- sid? ( || ( media-libs/libsidplay:2 media-libs/libsidplayfp ) )
- sndfile? ( media-libs/libsndfile )
- soundcloud? ( >=dev-libs/yajl-2:= )
- sqlite? ( dev-db/sqlite:3 )
- systemd? ( sys-apps/systemd )
- tcpd? ( sys-apps/tcp-wrappers )
- twolame? ( media-sound/twolame )
- upnp? ( net-libs/libupnp:= )
- vorbis? ( media-libs/libvorbis )
- wavpack? ( media-sound/wavpack )
- wildmidi? ( media-sound/wildmidi )
- zeroconf? ( net-dns/avahi[dbus] )
- zip? ( dev-libs/zziplib )
- zlib? ( sys-libs/zlib )"
-DEPEND="${CDEPEND}
- dev-libs/boost
- virtual/pkgconfig"
-RDEPEND="${CDEPEND}
- selinux? ( sec-policy/selinux-mpd )
-"
-
-PATCHES=(
- "${FILESDIR}"/${PN}-0.18.conf.patch
- "${FILESDIR}"/${P}-libcdio-2.patch
-)
-
-pkg_setup() {
- use network || ewarn "Icecast and Shoutcast streaming needs networking."
- use fluidsynth && ewarn "Using fluidsynth is discouraged by upstream."
-
- enewuser mpd "" "" "/var/lib/mpd" audio
-
- if use eventfd; then
- CONFIG_CHECK+=" ~EVENTFD"
- ERROR_EVENTFD="${P} requires eventfd in-kernel support."
- fi
- if use signalfd; then
- CONFIG_CHECK+=" ~SIGNALFD"
- ERROR_SIGNALFD="${P} requires signalfd in-kernel support."
- fi
- if use inotify; then
- CONFIG_CHECK+=" ~INOTIFY_USER"
- ERROR_INOTIFY_USER="${P} requires inotify in-kernel support."
- fi
- if use eventfd || use signalfd || use inotify; then
- linux-info_pkg_setup
- fi
-
- elog "If you will be starting mpd via /etc/init.d/mpd, please make
- sure that MPD's pid_file is _set_."
-}
-
-src_prepare() {
- cp -f doc/mpdconf.example doc/mpdconf.dist || die "cp failed"
- default
- eautoreconf
-}
-
-src_configure() {
- local myeconfargs=(
- --enable-database --disable-roar --disable-documentation
- --enable-dsd --enable-largefile --disable-osx --disable-shine-encoder
- --disable-solaris-output --enable-tcp --enable-un --disable-werror
- --docdir="${EPREFIX}"/usr/share/doc/${PF}
- )
-
- if use network; then
- myeconfargs+=(
- --enable-shout
- $(use_enable vorbis vorbis-encoder)
- --enable-httpd-output
- $(use_enable lame lame-encoder)
- $(use_enable twolame twolame-encoder)
- $(use_enable audiofile wave-encoder)
- )
- else
- myeconfargs+=(
- --disable-shout
- --disable-vorbis-encoder
- --disable-httpd-output
- --disable-lame-encoder
- --disable-twolame-encoder
- --disable-wave-encoder
- )
- fi
-
- if use samba || use upnp; then
- myeconfargs+=( --enable-neighbor-plugins )
- fi
-
- append-lfs-flags
- append-ldflags "-L/usr/$(get_libdir)/sidplay/builders"
-
- myeconfargs+=(
- $(use_enable eventfd)
- $(use_enable signalfd)
- $(use_enable libmpdclient)
- $(use_enable expat)
- $(use_enable upnp)
- $(use_enable adplug)
- $(use_enable alsa)
- $(use_enable ao)
- $(use_enable audiofile)
- $(use_enable zlib)
- $(use_enable bzip2)
- $(use_enable cdio cdio-paranoia)
- $(use_enable curl)
- $(use_enable samba smbclient)
- $(use_enable nfs)
- $(use_enable debug)
- $(use_enable ffmpeg)
- $(use_enable fifo)
- $(use_enable flac)
- $(use_enable fluidsynth)
- $(use_enable gme)
- $(use_enable id3tag id3)
- $(use_enable inotify)
- $(use_enable ipv6)
- $(use_enable cdio iso9660)
- $(use_enable jack)
- $(use_enable soundcloud)
- $(use_enable tcpd libwrap)
- $(use_enable libsamplerate lsr)
- $(use_enable libsoxr soxr)
- $(use_enable mad)
- $(use_enable mikmod)
- $(use_enable mms)
- $(use_enable modplug)
- $(use_enable musepack mpc)
- $(use_enable mpg123)
- $(use_enable openal)
- $(use_enable opus)
- $(use_enable oss)
- $(use_enable pipe pipe-output)
- $(use_enable pulseaudio pulse)
- $(use_enable recorder recorder-output)
- $(use_enable sid sidplay)
- $(use_enable sndfile sndfile)
- $(use_enable sqlite)
- $(use_enable systemd systemd_daemon)
- $(use_enable vorbis)
- $(use_enable wavpack)
- $(use_enable wildmidi)
- $(use_enable zip zzip)
- $(use_enable icu)
- $(use_enable webdav)
- $(use_enable faad aac)
- $(use_with zeroconf zeroconf avahi)
- --with-systemdsystemunitdir=$(systemd_get_systemunitdir)
- --with-systemduserunitdir=$(systemd_get_userunitdir)
- )
-
- econf "${myeconfargs[@]}"
-}
-
-src_install() {
- emake DESTDIR="${D}" install
-
- insinto /etc
- newins doc/mpdconf.dist mpd.conf
-
- newinitd "${FILESDIR}"/${PN}-0.20.4.init ${PN}
-
- if use unicode; then
- sed -i -e 's:^#filesystem_charset.*$:filesystem_charset "UTF-8":' \
- "${ED}"/etc/mpd.conf || die "sed failed"
- fi
-
- insinto /etc/logrotate.d
- newins "${FILESDIR}"/${PN}-0.20.4.logrotate ${PN}
-
- use prefix || diropts -m0755 -o mpd -g audio
- dodir /var/lib/mpd
- keepdir /var/lib/mpd
- dodir /var/lib/mpd/music
- keepdir /var/lib/mpd/music
- dodir /var/lib/mpd/playlists
- keepdir /var/lib/mpd/playlists
-}
-
-pkg_postinst() {
- # also change the homedir if the user has existed before
- usermod -d "/var/lib/mpd" mpd
-}
diff --git a/media-sound/mpd/mpd-0.20.23.ebuild b/media-sound/mpd/mpd-0.20.23.ebuild
deleted file mode 100644
index 0e22d8297530..000000000000
--- a/media-sound/mpd/mpd-0.20.23.ebuild
+++ /dev/null
@@ -1,270 +0,0 @@
-# Copyright 1999-2018 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit autotools flag-o-matic linux-info systemd user
-
-DESCRIPTION="The Music Player Daemon (mpd)"
-HOMEPAGE="https://www.musicpd.org https://github.com/MusicPlayerDaemon/MPD"
-SRC_URI="https://www.musicpd.org/download/${PN}/${PV%.*}/${P}.tar.xz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ppc ~ppc64 ~sh ~x86 ~x86-fbsd ~x64-macos"
-IUSE="adplug +alsa ao audiofile bzip2 cdio +curl debug +eventfd expat faad
- +fifo +ffmpeg flac fluidsynth gme +icu +id3tag +inotify +ipv6 jack
- lame mms libav libmpdclient libsamplerate libsoxr +mad mikmod modplug
- mpg123 musepack +network nfs ogg openal opus oss pipe pulseaudio recorder
- samba selinux sid +signalfd sndfile soundcloud sqlite systemd tcpd twolame
- unicode upnp vorbis wavpack wildmidi zeroconf zip zlib webdav"
-
-OUTPUT_PLUGINS="alsa ao fifo jack network openal oss pipe pulseaudio recorder"
-DECODER_PLUGINS="adplug audiofile faad ffmpeg flac fluidsynth mad mikmod
- modplug mpg123 musepack ogg flac sid vorbis wavpack wildmidi"
-ENCODER_PLUGINS="audiofile flac lame twolame vorbis"
-
-REQUIRED_USE="
- || ( ${OUTPUT_PLUGINS} )
- || ( ${DECODER_PLUGINS} )
- network? ( || ( ${ENCODER_PLUGINS} ) )
- recorder? ( || ( ${ENCODER_PLUGINS} ) )
- opus? ( ogg )
- upnp? ( expat )
- webdav? ( curl expat )
-"
-
-COMMON_DEPEND="
- adplug? ( media-libs/adplug )
- alsa? (
- media-libs/alsa-lib
- media-sound/alsa-utils
- )
- ao? ( media-libs/libao[alsa?,pulseaudio?] )
- audiofile? ( media-libs/audiofile )
- bzip2? ( app-arch/bzip2 )
- cdio? (
- dev-libs/libcdio:=
- dev-libs/libcdio-paranoia
- )
- curl? ( net-misc/curl )
- expat? ( dev-libs/expat )
- faad? ( media-libs/faad2 )
- ffmpeg? (
- libav? ( media-video/libav:0= )
- !libav? ( media-video/ffmpeg:0= )
- )
- flac? ( media-libs/flac[ogg?] )
- fluidsynth? ( media-sound/fluidsynth )
- gme? ( >=media-libs/game-music-emu-0.6.0_pre20120802 )
- icu? ( dev-libs/icu:= )
- id3tag? ( media-libs/libid3tag )
- jack? ( virtual/jack )
- lame? ( network? ( media-sound/lame ) )
- libmpdclient? ( media-libs/libmpdclient )
- libsamplerate? ( media-libs/libsamplerate )
- libsoxr? ( media-libs/soxr )
- mad? ( media-libs/libmad )
- mikmod? ( media-libs/libmikmod:0 )
- mms? ( media-libs/libmms )
- modplug? ( media-libs/libmodplug )
- mpg123? ( >=media-sound/mpg123-1.12.2 )
- musepack? ( media-sound/musepack-tools )
- network? (
- >=media-libs/libshout-2
- !lame? ( !vorbis? ( media-libs/libvorbis ) )
- )
- nfs? ( net-fs/libnfs )
- ogg? ( media-libs/libogg )
- openal? ( media-libs/openal )
- opus? ( media-libs/opus )
- pulseaudio? ( media-sound/pulseaudio )
- samba? ( >=net-fs/samba-4.0.25 )
- sid? ( || (
- media-libs/libsidplay:2
- media-libs/libsidplayfp
- ) )
- sndfile? ( media-libs/libsndfile )
- soundcloud? ( >=dev-libs/yajl-2:= )
- sqlite? ( dev-db/sqlite:3 )
- systemd? ( sys-apps/systemd )
- tcpd? ( sys-apps/tcp-wrappers )
- twolame? ( media-sound/twolame )
- upnp? ( net-libs/libupnp:0= )
- vorbis? ( media-libs/libvorbis )
- wavpack? ( media-sound/wavpack )
- wildmidi? ( media-sound/wildmidi )
- zeroconf? ( net-dns/avahi[dbus] )
- zip? ( dev-libs/zziplib )
- zlib? ( sys-libs/zlib )"
-DEPEND="${COMMON_DEPEND}
- dev-libs/boost
- virtual/pkgconfig"
-RDEPEND="${COMMON_DEPEND}
- !<sys-cluster/mpich2-1.4_rc2
- selinux? ( sec-policy/selinux-mpd )
-"
-
-PATCHES=(
- "${FILESDIR}"/${PN}-0.18.conf.patch
-)
-
-pkg_setup() {
- use network || ewarn "Icecast and Shoutcast streaming needs networking."
- use fluidsynth && ewarn "Using fluidsynth is discouraged by upstream."
-
- enewuser mpd "" "" "/var/lib/mpd" audio
-
- if use eventfd; then
- CONFIG_CHECK+=" ~EVENTFD"
- ERROR_EVENTFD="${P} requires eventfd in-kernel support."
- fi
- if use signalfd; then
- CONFIG_CHECK+=" ~SIGNALFD"
- ERROR_SIGNALFD="${P} requires signalfd in-kernel support."
- fi
- if use inotify; then
- CONFIG_CHECK+=" ~INOTIFY_USER"
- ERROR_INOTIFY_USER="${P} requires inotify in-kernel support."
- fi
- if use eventfd || use signalfd || use inotify; then
- linux-info_pkg_setup
- fi
-
- elog "If you will be starting mpd via /etc/init.d/mpd, please make
- sure that MPD's pid_file is _set_."
-}
-
-src_prepare() {
- cp -f doc/mpdconf.example doc/mpdconf.dist || die "cp failed"
- default
- eautoreconf
-}
-
-src_configure() {
- local myeconfargs=(
- --enable-database --disable-roar --disable-documentation
- --enable-dsd --enable-largefile --disable-osx --disable-shine-encoder
- --disable-solaris-output --enable-tcp --enable-un --disable-werror
- --docdir="${EPREFIX}"/usr/share/doc/${PF}
- )
-
- if use network; then
- myeconfargs+=(
- --enable-shout
- $(use_enable vorbis vorbis-encoder)
- --enable-httpd-output
- $(use_enable lame lame-encoder)
- $(use_enable twolame twolame-encoder)
- $(use_enable audiofile wave-encoder)
- )
- else
- myeconfargs+=(
- --disable-shout
- --disable-vorbis-encoder
- --disable-httpd-output
- --disable-lame-encoder
- --disable-twolame-encoder
- --disable-wave-encoder
- )
- fi
-
- if use samba || use upnp; then
- myeconfargs+=( --enable-neighbor-plugins )
- fi
-
- append-lfs-flags
- append-ldflags "-L/usr/$(get_libdir)/sidplay/builders"
-
- myeconfargs+=(
- $(use_enable eventfd)
- $(use_enable signalfd)
- $(use_enable libmpdclient)
- $(use_enable expat)
- $(use_enable upnp)
- $(use_enable adplug)
- $(use_enable alsa)
- $(use_enable ao)
- $(use_enable audiofile)
- $(use_enable zlib)
- $(use_enable bzip2)
- $(use_enable cdio cdio-paranoia)
- $(use_enable curl)
- $(use_enable samba smbclient)
- $(use_enable nfs)
- $(use_enable debug)
- $(use_enable ffmpeg)
- $(use_enable fifo)
- $(use_enable flac)
- $(use_enable fluidsynth)
- $(use_enable gme)
- $(use_enable id3tag id3)
- $(use_enable inotify)
- $(use_enable ipv6)
- $(use_enable cdio iso9660)
- $(use_enable jack)
- $(use_enable soundcloud)
- $(use_enable tcpd libwrap)
- $(use_enable libsamplerate lsr)
- $(use_enable libsoxr soxr)
- $(use_enable mad)
- $(use_enable mikmod)
- $(use_enable mms)
- $(use_enable modplug)
- $(use_enable musepack mpc)
- $(use_enable mpg123)
- $(use_enable openal)
- $(use_enable opus)
- $(use_enable oss)
- $(use_enable pipe pipe-output)
- $(use_enable pulseaudio pulse)
- $(use_enable recorder recorder-output)
- $(use_enable sid sidplay)
- $(use_enable sndfile sndfile)
- $(use_enable sqlite)
- $(use_enable systemd systemd_daemon)
- $(use_enable vorbis)
- $(use_enable wavpack)
- $(use_enable wildmidi)
- $(use_enable zip zzip)
- $(use_enable icu)
- $(use_enable webdav)
- $(use_enable faad aac)
- $(use_with zeroconf zeroconf avahi)
- --with-boost="${EPREFIX}"/usr
- --with-systemdsystemunitdir=$(systemd_get_systemunitdir)
- --with-systemduserunitdir=$(systemd_get_userunitdir)
- )
-
- econf "${myeconfargs[@]}"
-}
-
-src_install() {
- default
-
- insinto /etc
- newins doc/mpdconf.dist mpd.conf
-
- newinitd "${FILESDIR}"/${PN}-0.20.4.init ${PN}
-
- if use unicode; then
- sed -i -e 's:^#filesystem_charset.*$:filesystem_charset "UTF-8":' \
- "${ED}"/etc/mpd.conf || die "sed failed"
- fi
-
- insinto /etc/logrotate.d
- newins "${FILESDIR}"/${PN}-0.20.21.logrotate ${PN}
-
- use prefix || diropts -m0755 -o mpd -g audio
- dodir /var/lib/mpd
- keepdir /var/lib/mpd
- dodir /var/lib/mpd/music
- keepdir /var/lib/mpd/music
- dodir /var/lib/mpd/playlists
- keepdir /var/lib/mpd/playlists
-}
-
-pkg_postinst() {
- # also change the homedir if the user has existed before
- usermod -d "/var/lib/mpd" mpd
-}
diff --git a/media-sound/mpd/mpd-0.21.2.ebuild b/media-sound/mpd/mpd-0.21.2.ebuild
new file mode 100644
index 000000000000..1b27c1b94a14
--- /dev/null
+++ b/media-sound/mpd/mpd-0.21.2.ebuild
@@ -0,0 +1,298 @@
+# Copyright 1999-2018 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit flag-o-matic linux-info meson systemd user
+
+MESON_AUTO_DEPEND="no"
+
+DESCRIPTION="The Music Player Daemon (mpd)"
+HOMEPAGE="https://www.musicpd.org https://github.com/MusicPlayerDaemon/MPD"
+SRC_URI="https://www.musicpd.org/download/${PN}/${PV%.*}/${P}.tar.xz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ppc ~ppc64 ~sh ~x86 ~x86-fbsd ~x64-macos"
+IUSE="adplug +alsa ao audiofile bzip2 cdio chromaprint +cue +curl +dbus debug
+ +eventfd expat faad +ffmpeg +fifo flac fluidsynth gme +icu +id3tag +inotify
+ +ipv6 jack lame libav libmpdclient libsamplerate libsoxr +mad mikmod mms
+ modplug mpg123 musepack +network nfs openal opus oss pipe pulseaudio qobuz
+ recorder samba selinux sid signalfd sndfile soundcloud sqlite systemd tcpd
+ test tidal twolame udisks unicode vorbis wavpack webdav wildmidi upnp
+ zeroconf zip zlib"
+
+OUTPUT_PLUGINS="alsa ao fifo jack network openal oss pipe pulseaudio recorder"
+DECODER_PLUGINS="adplug audiofile faad ffmpeg flac fluidsynth mad mikmod
+ modplug mpg123 musepack flac sid vorbis wavpack wildmidi"
+ENCODER_PLUGINS="audiofile flac lame twolame vorbis"
+
+REQUIRED_USE="
+ || ( ${OUTPUT_PLUGINS} )
+ || ( ${DECODER_PLUGINS} )
+ network? ( || ( ${ENCODER_PLUGINS} ) )
+ recorder? ( || ( ${ENCODER_PLUGINS} ) )
+ upnp? ( expat )
+ webdav? ( curl expat )
+ "
+
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ adplug? ( media-libs/adplug:= )
+ alsa? (
+ media-libs/alsa-lib
+ media-sound/alsa-utils
+ )
+
+ ao? ( media-libs/libao[alsa?,pulseaudio?] )
+ audiofile? ( media-libs/audiofile:= )
+
+ cdio? (
+ dev-libs/libcdio:=
+ dev-libs/libcdio-paranoia
+ )
+
+ chromaprint? ( media-libs/chromaprint )
+ curl? ( net-misc/curl )
+ dbus? ( sys-apps/dbus )
+ expat? ( dev-libs/expat )
+ faad? ( media-libs/faad2 )
+
+ ffmpeg? (
+ libav? ( media-video/libav:0= )
+ !libav? ( media-video/ffmpeg:0= )
+ )
+
+ flac? ( media-libs/flac )
+ fluidsynth? ( media-sound/fluidsynth )
+ gme? ( >=media-libs/game-music-emu-0.6.0_pre20120802 )
+ icu? ( dev-libs/icu:= )
+ id3tag? ( media-libs/libid3tag )
+ jack? ( virtual/jack )
+ lame? ( network? ( media-sound/lame ) )
+ libmpdclient? ( media-libs/libmpdclient )
+ libsamplerate? ( media-libs/libsamplerate )
+ libsoxr? ( media-libs/soxr )
+ mad? ( media-libs/libmad )
+ mikmod? ( media-libs/libmikmod )
+ mms? ( media-libs/libmms )
+ modplug? ( media-libs/libmodplug )
+ mpg123? ( media-sound/mpg123 )
+ musepack? ( media-sound/musepack-tools )
+ network? ( media-libs/libshout )
+ nfs? ( net-fs/libnfs )
+ openal? ( media-libs/openal )
+ opus? ( media-libs/opus )
+ pulseaudio? ( media-sound/pulseaudio )
+ qobuz? ( dev-libs/libgcrypt:0 )
+ samba? ( net-fs/samba )
+ selinux? ( sec-policy/selinux-mpd )
+ sid? ( || (
+ media-libs/libsidplay:2
+ media-libs/libsidplayfp
+ ) )
+ sndfile? ( media-libs/libsndfile )
+ soundcloud? ( >=dev-libs/yajl-2:= )
+ sqlite? ( dev-db/sqlite:3 )
+ systemd? ( sys-apps/systemd )
+ tcpd? ( sys-apps/tcp-wrappers )
+ twolame? ( media-sound/twolame )
+ udisks? ( sys-fs/udisks:2 )
+ upnp? ( net-libs/libupnp:0 )
+ vorbis? ( media-libs/libvorbis )
+ wavpack? ( media-sound/wavpack )
+ wildmidi? ( media-sound/wildmidi )
+ zeroconf? ( net-dns/avahi[dbus] )
+ zip? ( dev-libs/zziplib )
+ zlib? ( sys-libs/zlib:= )"
+
+DEPEND="${RDEPEND}
+ >=dev-libs/boost-1.58:=
+ test? ( dev-cpp/gtest )"
+
+BDEPEND=">dev-util/meson-0.47.1
+ virtual/pkgconfig"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-0.18.conf.patch
+)
+
+pkg_setup() {
+ enewuser mpd "" "" "/var/lib/mpd" audio
+
+ if use eventfd; then
+ CONFIG_CHECK+=" ~EVENTFD"
+ ERROR_EVENTFD="${P} requires eventfd in-kernel support."
+ fi
+
+ if use signalfd; then
+ CONFIG_CHECK+=" ~SIGNALFD"
+ ERROR_SIGNALFD="${P} requires signalfd in-kernel support."
+ fi
+
+ if use inotify; then
+ CONFIG_CHECK+=" ~INOTIFY_USER"
+ ERROR_INOTIFY_USER="${P} requires inotify in-kernel support."
+ fi
+
+ if use eventfd || use signalfd || use inotify; then
+ linux-info_pkg_setup
+ fi
+
+ elog "If you will be starting mpd via /etc/init.d/mpd, please make
+ sure that MPD's pid_file is _set_."
+}
+
+src_prepare() {
+ cp -f doc/mpdconf.example doc/mpdconf.dist || die "cp failed"
+ default
+}
+
+src_configure() {
+ local emesonargs=(
+ -Dbzip2=$(usex bzip2 enabled disabled)
+ -Dcdio_paranoia=$(usex cdio enabled disabled)
+ -Dchromaprint=$(usex chromaprint enabled disabled)
+ -Dcue=$(usex cue true false)
+ -Dcurl=$(usex curl enabled disabled)
+ -Ddbus=$(usex dbus enabled disabled)
+ -Ddebug=$(usex debug true false)
+ -Deventfd=$(usex eventfd true false)
+ -Dexpat=$(usex expat enabled disabled)
+ -Dicu=$(usex icu enabled disabled)
+ -Did3tag=$(usex id3tag enabled disabled)
+ -Dinotify=$(usex inotify true false)
+ -Dipv6=$(usex ipv6 enabled disabled)
+ -Diso9660=$(usex cdio enabled disabled)
+ -Dlibmpdclient=$(usex libmpdclient enabled disabled)
+ -Dlibsamplerate=$(usex libsamplerate enabled disabled)
+ -Dlibwrap=$(usex tcpd enabled disabled)
+ -Dmms=$(usex mms enabled disabled)
+ -Dnfs=$(usex nfs enabled disabled)
+ -Dsignalfd=$(usex signalfd true false)
+ -Dsmbclient=$(usex samba enabled disabled)
+ -Dsoxr=$(usex libsoxr enabled disabled)
+ -Dsqlite=$(usex sqlite enabled disabled)
+ -Dsystemd=$(usex systemd enabled disabled)
+ -Dtest=$(usex test true false)
+ -Dudisks=$(usex udisks enabled disabled)
+ -Dupnp=$(usex upnp enabled disabled)
+ -Dwebdav=$(usex webdav enabled disabled)
+ -Dzeroconf=$(usex zeroconf avahi disabled)
+ -Dzlib=$(usex zlib enabled disabled)
+ -Dzzip=$(usex zip enabled disabled)
+ )
+
+ emesonargs+=(
+ -Dalsa=$(usex alsa enabled disabled)
+ -Dao=$(usex ao enabled disabled)
+ -Dfifo=$(usex fifo true false)
+ -Djack=$(usex jack enabled disabled)
+ -Dopenal=$(usex openal enabled disabled)
+ -Doss=$(usex oss enabled disabled)
+ -Dpipe=$(usex pipe true false)
+ -Dpulse=$(usex pulseaudio enabled disabled)
+ -Drecorder=$(usex recorder true false)
+ )
+
+ if use samba || use upnp; then
+ emesonargs+=( -Dneighbor=true )
+ fi
+
+ append-lfs-flags
+ append-ldflags "-L/usr/$(get_libdir)/sidplay/builders"
+
+ if use network; then
+
+ emesonargs+=(
+ -Dshine=disabled
+ -Dshout=enabled
+ -Dvorbisenc=$(usex vorbis enabled disabled)
+ -Dhttpd=true
+ -Dlame=$(usex lame enabled disabled)
+ -Dtwolame=$(usex twolame enabled disabled)
+ -Dwave_encoder=$(usex audiofile true false)
+ )
+ fi
+
+ emesonargs+=(
+ -Dadplug=$(usex adplug enabled disabled)
+ -Daudiofile=$(usex audiofile enabled disabled)
+ -Dfaad=$(usex faad enabled disabled)
+ -Dffmpeg=$(usex ffmpeg enabled disabled)
+ -Dflac=$(usex flac enabled disabled)
+ -Dfluidsynth=$(usex fluidsynth enabled disabled)
+ -Dgme=$(usex gme enabled disabled)
+ -Dmad=$(usex mad enabled disabled)
+ -Dmikmod=$(usex mikmod enabled disabled)
+ -Dmodplug=$(usex modplug enabled disabled)
+ -Dmpcdec=$(usex musepack enabled disabled)
+ -Dmpg123=$(usex mpg123 enabled disabled)
+ -Dopus=$(usex opus enabled disabled)
+ -Dsidplay=$(usex sid enabled disabled)
+ -Dsndfile=$(usex sndfile enabled disabled)
+ -Dvorbis=$(usex vorbis enabled disabled)
+ -Dwavpack=$(usex wavpack enabled disabled)
+ -Dwildmidi=$(usex wildmidi enabled disabled)
+
+ )
+
+ emesonargs+=(
+ -Dqobuz=$(usex qobuz enabled disabled)
+ -Dsoundcloud=$(usex soundcloud enabled disabled)
+ -Dtidal=$(usex tidal enabled disabled)
+ )
+
+ emesonargs+=(
+ --libdir="/usr/$(get_libdir)"
+ -Ddocumentation=false
+ -Dsndio=disabled #not yet in the tree
+ -Dsolaris_output=disabled
+
+ -Ddatabase=true
+ -Ddsd=true
+ -Dtcp=true
+
+ -Dsystemd_system_unit_dir="$(systemd_get_systemunitdir)"
+ -Dsystemd_user_unit_dir="$(systemd_get_userunitdir)"
+ )
+
+ if use icu; then
+ emesonargs+=( -Diconv=enabled )
+ else
+ emesonargs+=( -Diconv=disabled )
+ fi
+
+ meson_src_configure
+}
+
+src_install() {
+ meson_src_install
+
+ insinto /etc
+ newins doc/mpdconf.dist mpd.conf
+
+ insinto /etc/logrotate.d
+ newins "${FILESDIR}"/${PN}-0.21.1.logrotate ${PN}
+
+ newinitd "${FILESDIR}"/${PN}-0.20.4.init ${PN}
+
+ if use unicode; then
+ sed -i -e 's:^#filesystem_charset.*$:filesystem_charset "UTF-8":' \
+ "${ED}"/etc/mpd.conf || die "sed failed"
+ fi
+
+ doman doc/mpd.1
+ doman doc/mpd.conf.5
+
+ keepdir /var/lib/mpd
+ keepdir /var/lib/mpd/music
+ keepdir /var/lib/mpd/playlists
+
+}
+
+pkg_postinst() {
+ # also change the homedir if the user has existed before
+ usermod -d "/var/lib/mpd" mpd || die "usermod failed"
+}
diff --git a/media-sound/mpd/mpd-0.21.3.ebuild b/media-sound/mpd/mpd-0.21.3.ebuild
new file mode 100644
index 000000000000..1b27c1b94a14
--- /dev/null
+++ b/media-sound/mpd/mpd-0.21.3.ebuild
@@ -0,0 +1,298 @@
+# Copyright 1999-2018 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit flag-o-matic linux-info meson systemd user
+
+MESON_AUTO_DEPEND="no"
+
+DESCRIPTION="The Music Player Daemon (mpd)"
+HOMEPAGE="https://www.musicpd.org https://github.com/MusicPlayerDaemon/MPD"
+SRC_URI="https://www.musicpd.org/download/${PN}/${PV%.*}/${P}.tar.xz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ppc ~ppc64 ~sh ~x86 ~x86-fbsd ~x64-macos"
+IUSE="adplug +alsa ao audiofile bzip2 cdio chromaprint +cue +curl +dbus debug
+ +eventfd expat faad +ffmpeg +fifo flac fluidsynth gme +icu +id3tag +inotify
+ +ipv6 jack lame libav libmpdclient libsamplerate libsoxr +mad mikmod mms
+ modplug mpg123 musepack +network nfs openal opus oss pipe pulseaudio qobuz
+ recorder samba selinux sid signalfd sndfile soundcloud sqlite systemd tcpd
+ test tidal twolame udisks unicode vorbis wavpack webdav wildmidi upnp
+ zeroconf zip zlib"
+
+OUTPUT_PLUGINS="alsa ao fifo jack network openal oss pipe pulseaudio recorder"
+DECODER_PLUGINS="adplug audiofile faad ffmpeg flac fluidsynth mad mikmod
+ modplug mpg123 musepack flac sid vorbis wavpack wildmidi"
+ENCODER_PLUGINS="audiofile flac lame twolame vorbis"
+
+REQUIRED_USE="
+ || ( ${OUTPUT_PLUGINS} )
+ || ( ${DECODER_PLUGINS} )
+ network? ( || ( ${ENCODER_PLUGINS} ) )
+ recorder? ( || ( ${ENCODER_PLUGINS} ) )
+ upnp? ( expat )
+ webdav? ( curl expat )
+ "
+
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ adplug? ( media-libs/adplug:= )
+ alsa? (
+ media-libs/alsa-lib
+ media-sound/alsa-utils
+ )
+
+ ao? ( media-libs/libao[alsa?,pulseaudio?] )
+ audiofile? ( media-libs/audiofile:= )
+
+ cdio? (
+ dev-libs/libcdio:=
+ dev-libs/libcdio-paranoia
+ )
+
+ chromaprint? ( media-libs/chromaprint )
+ curl? ( net-misc/curl )
+ dbus? ( sys-apps/dbus )
+ expat? ( dev-libs/expat )
+ faad? ( media-libs/faad2 )
+
+ ffmpeg? (
+ libav? ( media-video/libav:0= )
+ !libav? ( media-video/ffmpeg:0= )
+ )
+
+ flac? ( media-libs/flac )
+ fluidsynth? ( media-sound/fluidsynth )
+ gme? ( >=media-libs/game-music-emu-0.6.0_pre20120802 )
+ icu? ( dev-libs/icu:= )
+ id3tag? ( media-libs/libid3tag )
+ jack? ( virtual/jack )
+ lame? ( network? ( media-sound/lame ) )
+ libmpdclient? ( media-libs/libmpdclient )
+ libsamplerate? ( media-libs/libsamplerate )
+ libsoxr? ( media-libs/soxr )
+ mad? ( media-libs/libmad )
+ mikmod? ( media-libs/libmikmod )
+ mms? ( media-libs/libmms )
+ modplug? ( media-libs/libmodplug )
+ mpg123? ( media-sound/mpg123 )
+ musepack? ( media-sound/musepack-tools )
+ network? ( media-libs/libshout )
+ nfs? ( net-fs/libnfs )
+ openal? ( media-libs/openal )
+ opus? ( media-libs/opus )
+ pulseaudio? ( media-sound/pulseaudio )
+ qobuz? ( dev-libs/libgcrypt:0 )
+ samba? ( net-fs/samba )
+ selinux? ( sec-policy/selinux-mpd )
+ sid? ( || (
+ media-libs/libsidplay:2
+ media-libs/libsidplayfp
+ ) )
+ sndfile? ( media-libs/libsndfile )
+ soundcloud? ( >=dev-libs/yajl-2:= )
+ sqlite? ( dev-db/sqlite:3 )
+ systemd? ( sys-apps/systemd )
+ tcpd? ( sys-apps/tcp-wrappers )
+ twolame? ( media-sound/twolame )
+ udisks? ( sys-fs/udisks:2 )
+ upnp? ( net-libs/libupnp:0 )
+ vorbis? ( media-libs/libvorbis )
+ wavpack? ( media-sound/wavpack )
+ wildmidi? ( media-sound/wildmidi )
+ zeroconf? ( net-dns/avahi[dbus] )
+ zip? ( dev-libs/zziplib )
+ zlib? ( sys-libs/zlib:= )"
+
+DEPEND="${RDEPEND}
+ >=dev-libs/boost-1.58:=
+ test? ( dev-cpp/gtest )"
+
+BDEPEND=">dev-util/meson-0.47.1
+ virtual/pkgconfig"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-0.18.conf.patch
+)
+
+pkg_setup() {
+ enewuser mpd "" "" "/var/lib/mpd" audio
+
+ if use eventfd; then
+ CONFIG_CHECK+=" ~EVENTFD"
+ ERROR_EVENTFD="${P} requires eventfd in-kernel support."
+ fi
+
+ if use signalfd; then
+ CONFIG_CHECK+=" ~SIGNALFD"
+ ERROR_SIGNALFD="${P} requires signalfd in-kernel support."
+ fi
+
+ if use inotify; then
+ CONFIG_CHECK+=" ~INOTIFY_USER"
+ ERROR_INOTIFY_USER="${P} requires inotify in-kernel support."
+ fi
+
+ if use eventfd || use signalfd || use inotify; then
+ linux-info_pkg_setup
+ fi
+
+ elog "If you will be starting mpd via /etc/init.d/mpd, please make
+ sure that MPD's pid_file is _set_."
+}
+
+src_prepare() {
+ cp -f doc/mpdconf.example doc/mpdconf.dist || die "cp failed"
+ default
+}
+
+src_configure() {
+ local emesonargs=(
+ -Dbzip2=$(usex bzip2 enabled disabled)
+ -Dcdio_paranoia=$(usex cdio enabled disabled)
+ -Dchromaprint=$(usex chromaprint enabled disabled)
+ -Dcue=$(usex cue true false)
+ -Dcurl=$(usex curl enabled disabled)
+ -Ddbus=$(usex dbus enabled disabled)
+ -Ddebug=$(usex debug true false)
+ -Deventfd=$(usex eventfd true false)
+ -Dexpat=$(usex expat enabled disabled)
+ -Dicu=$(usex icu enabled disabled)
+ -Did3tag=$(usex id3tag enabled disabled)
+ -Dinotify=$(usex inotify true false)
+ -Dipv6=$(usex ipv6 enabled disabled)
+ -Diso9660=$(usex cdio enabled disabled)
+ -Dlibmpdclient=$(usex libmpdclient enabled disabled)
+ -Dlibsamplerate=$(usex libsamplerate enabled disabled)
+ -Dlibwrap=$(usex tcpd enabled disabled)
+ -Dmms=$(usex mms enabled disabled)
+ -Dnfs=$(usex nfs enabled disabled)
+ -Dsignalfd=$(usex signalfd true false)
+ -Dsmbclient=$(usex samba enabled disabled)
+ -Dsoxr=$(usex libsoxr enabled disabled)
+ -Dsqlite=$(usex sqlite enabled disabled)
+ -Dsystemd=$(usex systemd enabled disabled)
+ -Dtest=$(usex test true false)
+ -Dudisks=$(usex udisks enabled disabled)
+ -Dupnp=$(usex upnp enabled disabled)
+ -Dwebdav=$(usex webdav enabled disabled)
+ -Dzeroconf=$(usex zeroconf avahi disabled)
+ -Dzlib=$(usex zlib enabled disabled)
+ -Dzzip=$(usex zip enabled disabled)
+ )
+
+ emesonargs+=(
+ -Dalsa=$(usex alsa enabled disabled)
+ -Dao=$(usex ao enabled disabled)
+ -Dfifo=$(usex fifo true false)
+ -Djack=$(usex jack enabled disabled)
+ -Dopenal=$(usex openal enabled disabled)
+ -Doss=$(usex oss enabled disabled)
+ -Dpipe=$(usex pipe true false)
+ -Dpulse=$(usex pulseaudio enabled disabled)
+ -Drecorder=$(usex recorder true false)
+ )
+
+ if use samba || use upnp; then
+ emesonargs+=( -Dneighbor=true )
+ fi
+
+ append-lfs-flags
+ append-ldflags "-L/usr/$(get_libdir)/sidplay/builders"
+
+ if use network; then
+
+ emesonargs+=(
+ -Dshine=disabled
+ -Dshout=enabled
+ -Dvorbisenc=$(usex vorbis enabled disabled)
+ -Dhttpd=true
+ -Dlame=$(usex lame enabled disabled)
+ -Dtwolame=$(usex twolame enabled disabled)
+ -Dwave_encoder=$(usex audiofile true false)
+ )
+ fi
+
+ emesonargs+=(
+ -Dadplug=$(usex adplug enabled disabled)
+ -Daudiofile=$(usex audiofile enabled disabled)
+ -Dfaad=$(usex faad enabled disabled)
+ -Dffmpeg=$(usex ffmpeg enabled disabled)
+ -Dflac=$(usex flac enabled disabled)
+ -Dfluidsynth=$(usex fluidsynth enabled disabled)
+ -Dgme=$(usex gme enabled disabled)
+ -Dmad=$(usex mad enabled disabled)
+ -Dmikmod=$(usex mikmod enabled disabled)
+ -Dmodplug=$(usex modplug enabled disabled)
+ -Dmpcdec=$(usex musepack enabled disabled)
+ -Dmpg123=$(usex mpg123 enabled disabled)
+ -Dopus=$(usex opus enabled disabled)
+ -Dsidplay=$(usex sid enabled disabled)
+ -Dsndfile=$(usex sndfile enabled disabled)
+ -Dvorbis=$(usex vorbis enabled disabled)
+ -Dwavpack=$(usex wavpack enabled disabled)
+ -Dwildmidi=$(usex wildmidi enabled disabled)
+
+ )
+
+ emesonargs+=(
+ -Dqobuz=$(usex qobuz enabled disabled)
+ -Dsoundcloud=$(usex soundcloud enabled disabled)
+ -Dtidal=$(usex tidal enabled disabled)
+ )
+
+ emesonargs+=(
+ --libdir="/usr/$(get_libdir)"
+ -Ddocumentation=false
+ -Dsndio=disabled #not yet in the tree
+ -Dsolaris_output=disabled
+
+ -Ddatabase=true
+ -Ddsd=true
+ -Dtcp=true
+
+ -Dsystemd_system_unit_dir="$(systemd_get_systemunitdir)"
+ -Dsystemd_user_unit_dir="$(systemd_get_userunitdir)"
+ )
+
+ if use icu; then
+ emesonargs+=( -Diconv=enabled )
+ else
+ emesonargs+=( -Diconv=disabled )
+ fi
+
+ meson_src_configure
+}
+
+src_install() {
+ meson_src_install
+
+ insinto /etc
+ newins doc/mpdconf.dist mpd.conf
+
+ insinto /etc/logrotate.d
+ newins "${FILESDIR}"/${PN}-0.21.1.logrotate ${PN}
+
+ newinitd "${FILESDIR}"/${PN}-0.20.4.init ${PN}
+
+ if use unicode; then
+ sed -i -e 's:^#filesystem_charset.*$:filesystem_charset "UTF-8":' \
+ "${ED}"/etc/mpd.conf || die "sed failed"
+ fi
+
+ doman doc/mpd.1
+ doman doc/mpd.conf.5
+
+ keepdir /var/lib/mpd
+ keepdir /var/lib/mpd/music
+ keepdir /var/lib/mpd/playlists
+
+}
+
+pkg_postinst() {
+ # also change the homedir if the user has existed before
+ usermod -d "/var/lib/mpd" mpd || die "usermod failed"
+}