summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--app-portage/iwdevtools/Manifest1
-rw-r--r--app-portage/iwdevtools/iwdevtools-0.12.6.ebuild65
-rw-r--r--dev-libs/mpfr/mpfr-4.2.0_p12.ebuild2
-rw-r--r--dev-python/flake8/Manifest1
-rw-r--r--dev-python/flake8/flake8-6.1.0.ebuild63
-rw-r--r--dev-python/pycodestyle/Manifest1
-rw-r--r--dev-python/pycodestyle/pycodestyle-2.11.0.ebuild29
-rw-r--r--dev-python/pyflakes/Manifest1
-rw-r--r--dev-python/pyflakes/pyflakes-3.1.0.ebuild36
-rw-r--r--eclass/toolchain-funcs.eclass3
-rw-r--r--media-sound/mpd/mpd-0.23.12.ebuild292
11 files changed, 199 insertions, 295 deletions
diff --git a/app-portage/iwdevtools/Manifest b/app-portage/iwdevtools/Manifest
index be3a52b36fc7..4550b9ff649c 100644
--- a/app-portage/iwdevtools/Manifest
+++ b/app-portage/iwdevtools/Manifest
@@ -1 +1,2 @@
DIST iwdevtools-0.12.5.tar.gz 89999 BLAKE2B de7c1c98a93df42ca0436e9c08a6ec2eeec1ae5db524a8b95c94ab70e43a10f8a649cc489f671712c273fe52b1ee8223e4afac670aedccec254d9c035565feb0 SHA512 97372288421e5db71faf8d98544e8f273c2bfa7d36dd5ceb9bdde5e288547f7863fe7548f2dcc7db568a293e05bafce77e0cb29335f6e79841b0ecf78fbefecc
+DIST iwdevtools-0.12.6.tar.gz 90536 BLAKE2B e06e17c3b3705e5bfd0a3810c81c5d802b232c5ba42d9c19c28a24a059e30d4c802b067dde054f299118f5ad3cb74df849ab6c2ca06f9e3d74bc0dff7c65f163 SHA512 fa273b64f808b6e3cfafcc40166b509cc1da693c06e1246c453ad66c1919c485979223242252885359e5e5ddb06c816f43802c1b5f06b3b7d4c1bab324a8e6c8
diff --git a/app-portage/iwdevtools/iwdevtools-0.12.6.ebuild b/app-portage/iwdevtools/iwdevtools-0.12.6.ebuild
new file mode 100644
index 000000000000..cd4858bc67e6
--- /dev/null
+++ b/app-portage/iwdevtools/iwdevtools-0.12.6.ebuild
@@ -0,0 +1,65 @@
+# Copyright 2021-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit meson optfeature
+
+DESCRIPTION="Small tools to aid with Gentoo development, primarily intended for QA"
+HOMEPAGE="https://github.com/ionenwks/iwdevtools"
+SRC_URI="https://github.com/ionenwks/iwdevtools/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86 ~x64-macos"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ app-misc/pax-utils
+ app-portage/portage-utils
+ >=app-shells/bash-5.1:0[readline]
+ dev-libs/libxml2:2
+ sys-apps/coreutils
+ sys-apps/diffutils
+ sys-apps/file
+ sys-apps/portage
+ || ( sys-apps/util-linux app-misc/getopt )"
+BDEPEND="
+ sys-apps/help2man
+ || ( sys-apps/util-linux app-misc/getopt )
+ test? ( ${RDEPEND} )"
+
+src_configure() {
+ local emesonargs=(
+ -Ddocdir=${PF}
+ -Deprefix="${EPREFIX}"
+ -Dshellcheck=false
+ $(meson_use test)
+ )
+
+ has_version sys-apps/util-linux || emesonargs+=( -Dgetopt=getopt-long )
+
+ meson_src_configure
+}
+
+pkg_postinst() {
+ optfeature "detecting potential ABI issues using abidiff" dev-util/libabigail
+
+ if [[ ! ${REPLACING_VERSIONS} ]]; then
+ elog "Optional portage integration relies on using /etc/portage/bashrc."
+ elog "The example bashrc can be used as-is if not already using one:"
+ elog
+ elog " ln -s ../../usr/share/${PN}/bashrc ${EROOT}/etc/portage/bashrc"
+ elog
+ elog "Otherwise, inspect the tools' --help output and the example to integrate"
+ elog "(if not defining the same phase functions, the example can be sourced)."
+ elog
+ elog "Note that \`eqawarn\` is used for portage output by default. QA messages"
+ elog "aren't logged / shown post-emerge unless e.g. in /etc/portage/make.conf:"
+ elog
+ elog ' PORTAGE_ELOG_CLASSES="${PORTAGE_ELOG_CLASSES} qa"'
+ elog
+ elog "See ${EROOT}/usr/share/doc/${PF}/README.rst* for information on tools."
+ fi
+}
diff --git a/dev-libs/mpfr/mpfr-4.2.0_p12.ebuild b/dev-libs/mpfr/mpfr-4.2.0_p12.ebuild
index 9f9a797cfc4b..a7b628ed0998 100644
--- a/dev-libs/mpfr/mpfr-4.2.0_p12.ebuild
+++ b/dev-libs/mpfr/mpfr-4.2.0_p12.ebuild
@@ -48,7 +48,7 @@ LICENSE="LGPL-2.1"
# preserve-libs.eclass usage to pkg_*inst! See e.g. the readline ebuild.
SLOT="0/6" # libmpfr.so version
if [[ ${PV} != *_rc* ]] ; then
- KEYWORDS="~alpha ~amd64 arm arm64 ~hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+ KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
fi
IUSE="static-libs"
diff --git a/dev-python/flake8/Manifest b/dev-python/flake8/Manifest
index 468a0ce739e2..1105e0a4a6ca 100644
--- a/dev-python/flake8/Manifest
+++ b/dev-python/flake8/Manifest
@@ -1 +1,2 @@
DIST flake8-6.0.0.gh.tar.gz 139138 BLAKE2B 87590594a95f48a9e532ca545d4ae17a098cba81a7708066d63180b27e1cd0e0b648a2362d16b3818ef1b91cbe9ecf51810d45136fb42f188fc09083e9b31921 SHA512 27de4632332ee72bb5deedfcb7ea59e31a3e7fbfd6c165adf019b06cccaba51b776f4310219d8b27cf4894ed2597330fe9c0e381187353d4dc239f102eedd26a
+DIST flake8-6.1.0.gh.tar.gz 139267 BLAKE2B 69210f4ebe5dd4b56425fca9289349820cc5dcee515f75cb855b095dc1a0a6ba380448f14fca19423940d853383576ddc665c5a7bd27f8aa96940ac410d8742b SHA512 a44d245b023acbb89e64071f6cb76f5543e538472a8815fa329a3b3671133cc6f96f246d83877a2a9ac91c32ecdf65858f8edf996efba77906af74b1632b74c8
diff --git a/dev-python/flake8/flake8-6.1.0.ebuild b/dev-python/flake8/flake8-6.1.0.ebuild
new file mode 100644
index 000000000000..2a55f96bbc9d
--- /dev/null
+++ b/dev-python/flake8/flake8-6.1.0.ebuild
@@ -0,0 +1,63 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( pypy3 python3_{10..11} )
+
+inherit distutils-r1
+
+DESCRIPTION="A wrapper around PyFlakes, pep8 & mccabe"
+HOMEPAGE="
+ https://github.com/PyCQA/flake8/
+ https://pypi.org/project/flake8/
+"
+SRC_URI="
+ https://github.com/PyCQA/flake8/archive/${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-macos"
+
+RDEPEND="
+ <dev-python/pyflakes-3.2.0[${PYTHON_USEDEP}]
+ >=dev-python/pyflakes-3.1.0[${PYTHON_USEDEP}]
+ <dev-python/pycodestyle-2.12.0[${PYTHON_USEDEP}]
+ >=dev-python/pycodestyle-2.11.0[${PYTHON_USEDEP}]
+"
+PDEPEND="
+ >=dev-python/mccabe-0.7.0[${PYTHON_USEDEP}]
+ <dev-python/mccabe-0.8.0[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ ${RDEPEND}
+ test? (
+ ${PDEPEND}
+ )
+"
+
+distutils_enable_sphinx docs/source \
+ dev-python/sphinx-prompt \
+ dev-python/sphinx-rtd-theme
+distutils_enable_tests pytest
+
+python_test() {
+ local EPYTEST_DESELECT=(
+ # fails if additional flake8 plugins are installed
+ tests/integration/test_plugins.py::test_local_plugin_can_add_option
+ )
+ if [[ ${EPYTHON} == pypy3 ]]; then
+ EPYTEST_DESELECT+=(
+ # problem with pypy3.10 in dev-python/pyflakes
+ # https://github.com/PyCQA/pyflakes/issues/779
+ tests/integration/test_main.py::test_malformed_per_file_ignores_error
+ tests/integration/test_main.py::test_tokenization_error_but_not_syntax_error
+ tests/integration/test_main.py::test_tokenization_error_is_a_syntax_error
+ )
+ fi
+
+ epytest
+}
diff --git a/dev-python/pycodestyle/Manifest b/dev-python/pycodestyle/Manifest
index 501dbebeb8bc..2de76ab496ec 100644
--- a/dev-python/pycodestyle/Manifest
+++ b/dev-python/pycodestyle/Manifest
@@ -1 +1,2 @@
DIST pycodestyle-2.10.0.tar.gz 101916 BLAKE2B 1dbf4c2ea9b1c606740fe1e9804b29100056bad25935182b43dd07d694bf3d321d63b17d2e308dc1ffaca1f4e3e46a4e8df3998424adc4e4a1a33862e608e153 SHA512 b0c3ee7ac56942db1e8cb5f3a59c2bd2a44b7467e73b46ab7b6f932603beefbbd29f2760ee49907447af1a5987dc1961f00788b01456bdd0aed7690e2d54446b
+DIST pycodestyle-2.11.0.gh.tar.gz 79772 BLAKE2B 5995cae91a9e1109b697fae840d1dccd4778096dded7357bdbca1a56b06a031fc524f638e91192564f127b2bc52e94c9e80b2437daac5a129db48f99ca701e48 SHA512 fd688544a7fb01a7e3f4f8cb411cf7bc5b6dfc357de616a2ef61944748ad670c239148766b8ea48a3c316396251ed8a8d8937446f400c28e631621a0d16d3cf5
diff --git a/dev-python/pycodestyle/pycodestyle-2.11.0.ebuild b/dev-python/pycodestyle/pycodestyle-2.11.0.ebuild
new file mode 100644
index 000000000000..efb9462cf118
--- /dev/null
+++ b/dev-python/pycodestyle/pycodestyle-2.11.0.ebuild
@@ -0,0 +1,29 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( pypy3 python3_{10..12} )
+
+inherit distutils-r1
+
+DESCRIPTION="Python style guide checker (fka pep8)"
+HOMEPAGE="
+ https://pycodestyle.pycqa.org/en/latest/
+ https://github.com/PyCQA/pycodestyle/
+ https://pypi.org/project/pycodestyle/
+"
+# 2.11.0 broke sdist
+# https://github.com/PyCQA/pycodestyle/issues/1183
+SRC_URI="
+ https://github.com/PyCQA/pycodestyle/archive/${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+distutils_enable_sphinx docs \
+ dev-python/sphinx-rtd-theme
+distutils_enable_tests pytest
diff --git a/dev-python/pyflakes/Manifest b/dev-python/pyflakes/Manifest
index ae8dfb6b9a88..49d6006afee4 100644
--- a/dev-python/pyflakes/Manifest
+++ b/dev-python/pyflakes/Manifest
@@ -1 +1,2 @@
DIST pyflakes-3.0.1.tar.gz 63554 BLAKE2B 992dc4c81204c9ae2fd44744452e76a11209552edaef930edb14b7ba4763720cd1c0c0cd148fa7edd474b33aa529d8ec28f7f35a2b02b707d58cf70243fc13a9 SHA512 10ffe2b92f3885d40578452423a93609f8546b2392997bdbc3f64ca0094516ce6b8449e5d3675bda5fdbc16190c89be23609559fc4cd4f1c97e6af032226d7b7
+DIST pyflakes-3.1.0.tar.gz 63636 BLAKE2B 89e5fae6bba9efc820e348ddac37fd8590478c64363a5f295cc620ebbc7b51d4d51e0cff30b6a54ee573612e5309d7fff9462bc31c9e89c34cf7cdbecffabd30 SHA512 6277eaa82a3d94f8052b3da865cfcc8e99846738b5869fca1be92bb5b9a4db0088859d811da565200e640ad0555d46e0ebcaf831cd422b84304514592270b02e
diff --git a/dev-python/pyflakes/pyflakes-3.1.0.ebuild b/dev-python/pyflakes/pyflakes-3.1.0.ebuild
new file mode 100644
index 000000000000..9559d2f5c79f
--- /dev/null
+++ b/dev-python/pyflakes/pyflakes-3.1.0.ebuild
@@ -0,0 +1,36 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{10..12} pypy3 )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Passive checker for Python programs"
+HOMEPAGE="
+ https://github.com/PyCQA/pyflakes/
+ https://pypi.org/project/pyflakes/
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+
+distutils_enable_tests pytest
+
+python_test() {
+ local EPYTEST_DESELECT=()
+ if [[ ${EPYTHON} == pypy3 ]]; then
+ # regressions with pypy3.10
+ # https://github.com/PyCQA/pyflakes/issues/779
+ EPYTEST_DESELECT+=(
+ pyflakes/test/test_api.py::CheckTests::test_eofSyntaxError
+ pyflakes/test/test_api.py::CheckTests::test_misencodedFileUTF8
+ pyflakes/test/test_api.py::CheckTests::test_multilineSyntaxError
+ )
+ fi
+
+ epytest
+}
diff --git a/eclass/toolchain-funcs.eclass b/eclass/toolchain-funcs.eclass
index e194342f7bb5..26b7a0772ca6 100644
--- a/eclass/toolchain-funcs.eclass
+++ b/eclass/toolchain-funcs.eclass
@@ -542,12 +542,11 @@ tc-ld-force-bfd() {
[[ -e ${path_ld} ]] && export LD=${bfd_ld}
# Set up LDFLAGS to select bfd based on the gcc / clang version.
- local fallback="true"
if tc-is-gcc || tc-is-clang ; then
export LDFLAGS="${LDFLAGS} -fuse-ld=bfd"
fi
- if [[ ${fallback} == "true" ]] ; then
+ if false ; then
# TODO: Clean this up, or is it useful for when the compiler can't
# be detected or for rubbish shims? Might be helpful for cases like
# when porting to new linker which GCC doesn't yet recognise (less
diff --git a/media-sound/mpd/mpd-0.23.12.ebuild b/media-sound/mpd/mpd-0.23.12.ebuild
deleted file mode 100644
index 85c1e4146ec1..000000000000
--- a/media-sound/mpd/mpd-0.23.12.ebuild
+++ /dev/null
@@ -1,292 +0,0 @@
-# Copyright 1999-2023 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-inherit flag-o-matic linux-info meson systemd xdg
-
-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="amd64 ~arm ~arm64 ppc ppc64 ~riscv x86"
-IUSE="+alsa ao +audiofile bzip2 cdio chromaprint +cue +curl doc +dbus
- +eventfd expat faad +ffmpeg +fifo flac fluidsynth gme +icu +id3tag +inotify
- jack lame libmpdclient libsamplerate libsoxr +mad mikmod mms
- modplug mpg123 musepack +network nfs openal openmpt opus oss pipe pipewire pulseaudio qobuz
- recorder samba selinux sid signalfd snapcast sndfile sndio soundcloud sqlite systemd
- test twolame udisks vorbis wavpack webdav wildmidi upnp
- zeroconf zip zlib"
-
-OUTPUT_PLUGINS="alsa ao fifo jack network openal oss pipe pipewire pulseaudio snapcast sndio recorder"
-DECODER_PLUGINS="audiofile faad ffmpeg flac fluidsynth mad mikmod
- modplug mpg123 musepack opus openmpt flac sid vorbis wavpack wildmidi"
-ENCODER_PLUGINS="audiofile flac lame twolame vorbis"
-
-REQUIRED_USE="
- || ( ${OUTPUT_PLUGINS} )
- || ( ${DECODER_PLUGINS} )
- network? ( || ( ${ENCODER_PLUGINS} ) )
- recorder? ( || ( ${ENCODER_PLUGINS} ) )
- qobuz? ( curl soundcloud )
- soundcloud? ( curl qobuz )
- udisks? ( dbus )
- upnp? ( curl expat )
- webdav? ( curl expat )
-"
-
-RESTRICT="!test? ( test )"
-
-# Note: This version is incompatible with dev-libs/libfmt-10
-# Bug: https://bugs.gentoo.org/906074
-RDEPEND="
- acct-user/mpd
- dev-libs/libfmt:=
- <dev-libs/libfmt-10
- dev-libs/libpcre2
- media-libs/libogg
- sys-libs/liburing:=
- 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
- )
- chromaprint? ( media-libs/chromaprint )
- curl? ( net-misc/curl )
- dbus? ( sys-apps/dbus )
- doc? ( dev-python/sphinx )
- expat? ( dev-libs/expat )
- faad? ( media-libs/faad2 )
- ffmpeg? ( media-video/ffmpeg:= )
- flac? ( media-libs/flac:= )
- fluidsynth? ( media-sound/fluidsynth )
- gme? ( >=media-libs/game-music-emu-0.6.0_pre20120802 )
- icu? (
- dev-libs/icu:=
- virtual/libiconv
- )
- 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-2.4.0 )
- nfs? ( net-fs/libnfs )
- openal? ( media-libs/openal )
- openmpt? ( media-libs/libopenmpt )
- opus? ( media-libs/opus )
- pulseaudio? ( media-sound/pulseaudio )
- pipewire? ( media-video/pipewire:= )
- qobuz? ( dev-libs/libgcrypt:0 )
- samba? ( net-fs/samba )
- selinux? ( sec-policy/selinux-mpd )
- sid? ( || (
- media-libs/libsidplay:2
- media-libs/libsidplayfp
- ) )
- snapcast? ( media-sound/snapcast )
- sndfile? ( media-libs/libsndfile )
- sndio? ( media-sound/sndio )
- soundcloud? ( >=dev-libs/yajl-2:= )
- sqlite? ( dev-db/sqlite:3 )
- systemd? ( sys-apps/systemd:= )
- 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:=
- test? ( dev-cpp/gtest )"
-
-BDEPEND="virtual/pkgconfig"
-
-pkg_setup() {
- 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 ${EROOT}/etc/init.d/mpd, please make sure that MPD's pid_file is _set_."
-}
-
-src_prepare() {
- sed -i \
- -e 's:^#filesystem_charset.*$:filesystem_charset "UTF-8":' \
- -e 's:^#user.*$:user "mpd":' \
- -e 's:^#bind_to_address.*any.*$:bind_to_address "localhost":' \
- -e 's:^#bind_to_address.*$:bind_to_address "/var/lib/mpd/socket":' \
- -e 's:^#music_directory.*$:music_directory "/var/lib/mpd/music":' \
- -e 's:^#playlist_directory.*$:playlist_directory "/var/lib/mpd/playlists":' \
- -e 's:^#db_file.*$:db_file "/var/lib/mpd/database":' \
- -e 's:^#log_file.*$:log_file "/var/lib/mpd/log":' \
- -e 's:^#pid_file.*$:pid_file "/var/lib/mpd/pid":' \
- -e 's:^#state_file.*$:state_file "/var/lib/mpd/state":' \
- doc/mpdconf.example || die
- default
-}
-
-src_configure() {
- local emesonargs=(
- $(meson_feature bzip2)
- $(meson_feature cdio cdio_paranoia)
- $(meson_feature chromaprint)
- $(meson_use cue)
- $(meson_feature curl)
- $(meson_feature dbus)
- $(meson_use eventfd)
- $(meson_feature expat)
- $(meson_feature icu)
- $(meson_feature id3tag)
- $(meson_use inotify)
- -Dipv6=enabled
- $(meson_feature cdio iso9660)
- $(meson_feature libmpdclient)
- $(meson_feature libsamplerate)
- $(meson_feature mms)
- $(meson_feature nfs)
- $(meson_use signalfd)
- $(meson_feature samba smbclient)
- $(meson_feature libsoxr soxr)
- $(meson_feature sqlite)
- $(meson_feature systemd)
- $(meson_use test)
- $(meson_feature udisks)
- -Dupnp=$(usex upnp pupnp disabled)
- $(meson_feature webdav)
- -Dzeroconf=$(usex zeroconf avahi disabled)
- $(meson_feature zlib)
- $(meson_feature zip zzip)
- )
-
- emesonargs+=(
- $(meson_feature alsa)
- $(meson_feature ao)
- $(meson_use fifo)
- $(meson_feature jack)
- $(meson_feature openal)
- $(meson_feature oss)
- $(meson_use pipe)
- $(meson_feature pipewire)
- $(meson_feature pulseaudio pulse)
- $(meson_use recorder)
- $(meson_use snapcast)
- $(meson_feature sndio)
- )
-
- if use samba || use upnp; then
- emesonargs+=( -Dneighbor=true )
- fi
-
- append-lfs-flags
- append-ldflags "-L${ESYSROOT}/usr/$(get_libdir)/sidplay/builders"
-
- if use network; then
- emesonargs+=(
- -Dshine=disabled
- -Dshout=enabled
- $(meson_feature vorbis vorbisenc)
- -Dhttpd=true
- $(meson_feature lame)
- $(meson_feature twolame)
- $(meson_use audiofile wave_encoder)
- )
- fi
-
- emesonargs+=(
- # media-libs/adplug is not packaged anymore
- -Dadplug=disabled
- $(meson_feature audiofile)
- $(meson_feature faad)
- $(meson_feature ffmpeg)
- $(meson_feature flac)
- $(meson_feature fluidsynth)
- $(meson_feature gme)
- $(meson_feature mad)
- $(meson_feature mikmod)
- $(meson_feature modplug)
- $(meson_feature musepack mpcdec)
- $(meson_feature mpg123)
- $(meson_feature openmpt)
- $(meson_feature opus)
- $(meson_feature sid sidplay)
- $(meson_feature sndfile)
- $(meson_feature vorbis)
- $(meson_feature wavpack)
- $(meson_feature wildmidi)
- $(meson_feature qobuz)
- $(meson_feature soundcloud)
-
- --libdir="/usr/$(get_libdir)"
- $(meson_feature doc documentation)
- -Dsolaris_output=disabled
-
- -Ddatabase=true
- -Ddsd=true
- -Dio_uring=enabled
- -Dtcp=true
-
- -Dsystemd_system_unit_dir="$(systemd_get_systemunitdir)"
- -Dsystemd_user_unit_dir="$(systemd_get_userunitdir)"
-
- $(meson_feature icu iconv)
- )
-
- meson_src_configure
-}
-
-src_install() {
- meson_src_install
-
- insinto /etc
- newins doc/mpdconf.example mpd.conf
-
- insinto /etc/logrotate.d
- newins "${FILESDIR}"/${PN}-0.21.1.logrotate ${PN}
-
- newinitd "${FILESDIR}"/${PN}-0.21.4.init ${PN}
-
- sed -i -e 's:^#filesystem_charset.*$:filesystem_charset "UTF-8":' "${ED}"/etc/mpd.conf || die "sed failed"
-
- keepdir /var/lib/mpd
- keepdir /var/lib/mpd/music
- keepdir /var/lib/mpd/playlists
-
- rm -r "${ED}"/usr/share/doc/mpd || die
-
- fowners mpd:audio -R /var/lib/mpd
-}