commit:     7e71250e7f480e60e30cf4160d0eac499e6d23f8
Author:     Ionen Wolkens <ionen <AT> gentoo <DOT> org>
AuthorDate: Sat Feb 11 19:47:30 2023 +0000
Commit:     Ionen Wolkens <ionen <AT> gentoo <DOT> org>
CommitDate: Sat Feb 11 20:46:46 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=7e71250e

media-sound/xmms2: add 0.9.2

Removes the need for the valgrind patch, but while here also use the
new switch to disable valgrind unconditionally so we don't need to do
checks for usable valgrind (this should be for developers only).

Signed-off-by: Ionen Wolkens <ionen <AT> gentoo.org>

 media-sound/xmms2/Manifest           |   1 +
 media-sound/xmms2/xmms2-0.9.2.ebuild | 215 +++++++++++++++++++++++++++++++++++
 2 files changed, 216 insertions(+)

diff --git a/media-sound/xmms2/Manifest b/media-sound/xmms2/Manifest
index 39e87419b578..f5d7a22fe546 100644
--- a/media-sound/xmms2/Manifest
+++ b/media-sound/xmms2/Manifest
@@ -1 +1,2 @@
 DIST xmms2-0.9.1.tar.bz2 1940773 BLAKE2B 
4044499c2ffc55e66d5836e2e36360486b970ff05f0dc17b62e65111c06cfcc84f58c74427b1afa4455b4e0bdb7784dc8840cc84411bc57cb7b9f0cac4e46359
 SHA512 
a7d42202571d7eb5d9da4c9f5d55d2f6e072df52892080d6cc4349f66a55f5fece510c9872be9814dd5b258d0c59e2704ea8497c2d3be515c510d602c17b703a
+DIST xmms2-0.9.2.tar.xz 1740744 BLAKE2B 
fc3b219c37c909e640a0f55f3280b3a4f1e3965ab6ac2da8814d569e9ff6b95a94b32dee04028e22555465fb02cd52857a6a2aebb4794d71bfa7836db642033e
 SHA512 
07531b8d743e7454d9e2650dbdbaff1d75eb98f01ab9f8d3fa9ba031ef5ac066f69d1ce90c6a860014f1f0f5fd43c6a9a2a0330656d938c300a427e610b540a6

diff --git a/media-sound/xmms2/xmms2-0.9.2.ebuild 
b/media-sound/xmms2/xmms2-0.9.2.ebuild
new file mode 100644
index 000000000000..29ca25a5a701
--- /dev/null
+++ b/media-sound/xmms2/xmms2-0.9.2.ebuild
@@ -0,0 +1,215 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{9..11} )
+PYTHON_REQ_USE="threads(+)"
+inherit flag-o-matic optfeature perl-functions python-single-r1 waf-utils
+
+DESCRIPTION="X(cross)platform Music Multiplexing System, next generation of 
the XMMS player"
+HOMEPAGE="https://github.com/XMMS2";
+SRC_URI="https://github.com/xmms2/xmms2-devel/releases/download/${PV}/${P}.tar.xz";
+
+LICENSE="GPL-2+ LGPL-2.1+"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~ppc ~riscv ~x86"
+
+# IUSE static map to be passed to --with-{optionals,plugins}=opt1,opt2,...
+# flag:opt = `usev flag opt`, opt = `usev opt`, :opt = `echo opt`
+# (if have a use for some of these disabled features, please fill a bug)
+XMMS2_OPTIONALS=(
+       cxx:xmmsclient++,xmmsclient++-glib :launcher 
mlib-update:medialib-updater
+       :nycli perl :pixmaps python server:s4 test:tests libvisual:vistest
+       # disabled: 
et,mdns,migrate-collections,ruby,sqlite2s4,xmmsclient-cf,xmmsclient-ecore
+)
+XMMS2_PLUGINS=(
+       aac:faad airplay alsa ao :asx cdda :cue curl :diskwrite :equalizer
+       ffmpeg:apefile,asf,avcodec,flv,tta :file flac 
fluidsynth:fluidsynth,mid1,midsquash
+       gme :html ices :icymetaint :id3v2 jack :karaoke :m3u mac +mad mms 
modplug
+       mp3:mpg123 :mp4 musepack :normalize :null :nulstripper ofa opus oss :pls
+       pulseaudio:pulse :replaygain samba sid sndfile speex tremor vocoder 
+vorbis
+       :wave wavpack :xml xml:rss,xspf zeroconf:daap
+       # disabled: coreaudio,gvfs,nms,sc68,sun,waveout
+)
+
+IUSE="
+       ${XMMS2_OPTIONALS[@]%:*}
+       ${XMMS2_PLUGINS[@]%:*}
+       +server"
+REQUIRED_USE="
+       ${PYTHON_REQUIRED_USE}
+       test? ( server )"
+RESTRICT="!test? ( test )"
+
+COMMON_DEPEND="
+       dev-libs/glib:2
+       sys-libs/readline:=
+       libvisual? (
+               media-libs/libsdl[opengl,video]
+               media-libs/libvisual:0.4
+       )
+       server? (
+               aac? ( media-libs/faad2 )
+               airplay? ( dev-libs/openssl:= )
+               alsa? ( media-libs/alsa-lib )
+               ao? ( media-libs/libao )
+               cdda? (
+                       dev-libs/libcdio-paranoia:=
+                       dev-libs/libcdio:=
+                       media-libs/libdiscid
+               )
+               curl? ( net-misc/curl )
+               ffmpeg? ( media-video/ffmpeg:= )
+               flac? ( media-libs/flac:= )
+               fluidsynth? ( media-sound/fluidsynth:= )
+               gme? ( media-libs/game-music-emu )
+               ices? (
+                       media-libs/libogg
+                       media-libs/libshout
+                       media-libs/libvorbis
+               )
+               jack? ( virtual/jack )
+               mac? ( media-sound/mac )
+               mad? ( media-libs/libmad )
+               mms? (
+                       media-libs/libmms
+                       media-video/ffmpeg:=
+               )
+               modplug? ( media-libs/libmodplug )
+               mp3? ( media-sound/mpg123 )
+               musepack? ( media-sound/musepack-tools )
+               ofa? (
+                       dev-libs/expat
+                       media-libs/libofa
+                       sci-libs/fftw:3.0=
+               )
+               opus? ( media-libs/opusfile )
+               pulseaudio? ( media-libs/libpulse )
+               samba? ( net-fs/samba )
+               sid? ( media-libs/libsidplay:2 )
+               sndfile? ( media-libs/libsndfile )
+               speex? (
+                       media-libs/libogg
+                       media-libs/speex
+               )
+               tremor? ( media-libs/tremor )
+               vocoder? (
+                       media-libs/libsamplerate
+                       sci-libs/fftw:3.0=
+               )
+               vorbis? ( media-libs/libvorbis )
+               wavpack? ( media-sound/wavpack )
+               xml? ( dev-libs/libxml2 )
+               zeroconf? (
+                       net-dns/avahi[mdnsresponder-compat]
+                       net-misc/curl
+               )
+       )"
+RDEPEND="
+       ${COMMON_DEPEND}
+       perl? (
+               dev-lang/perl
+               dev-perl/glib-perl
+               virtual/perl-Carp
+               virtual/perl-IO
+               virtual/perl-Scalar-List-Utils
+       )
+       python? (
+               ${PYTHON_DEPS}
+               $(python_gen_cond_dep 'dev-python/pygobject[${PYTHON_USEDEP}]')
+       )"
+DEPEND="
+       ${COMMON_DEPEND}
+       cxx? ( dev-libs/boost )
+       test? ( dev-util/cunit )"
+BDEPEND="
+       ${PYTHON_DEPS}
+       virtual/pkgconfig
+       perl? ( dev-perl/Pod-Parser )
+       python? ( $(python_gen_cond_dep 'dev-python/cython[${PYTHON_USEDEP}]') 
)"
+
+PATCHES=(
+       "${FILESDIR}"/${PN}-0.9.1-cpp-client.patch
+       "${FILESDIR}"/${PN}-0.9.1-faad.patch
+)
+
+src_prepare() {
+       default
+
+       # meant to be configured, but give a default for out-of-the-box midi
+       sed -e 
"s|/path/to/.*sf2|${EPREFIX}/usr/share/sounds/sf2/FluidR3_GM.sf2|" \
+               -i src/plugins/fluidsynth/fluidsynth.c || die
+}
+
+src_configure() {
+       filter-lto # `xmms2 add somefile` breaks with lto + fortify=2
+
+       local wafargs=(
+               --boost-includes="${ESYSROOT}"/usr/include
+               --with-target-platform="${CHOST}"
+               --without-valgrind
+       )
+
+       xmms2_flag() {
+               local IFS=:
+               set -- ${1#+}
+
+               if [[ ${1} ]]; then
+                       usev ${1} ,${2:-${1}}
+               else
+                       echo ,${2}
+               fi
+       }
+
+       local flag optionals plugins
+
+       if use server; then
+               for flag in "${XMMS2_PLUGINS[@]}"; do
+                       plugins+=$(xmms2_flag ${flag})
+               done
+       else
+               wafargs+=( --without-xmms2d )
+       fi
+
+       for flag in "${XMMS2_OPTIONALS[@]}"; do
+               optionals+=$(xmms2_flag ${flag})
+       done
+
+       wafargs+=(
+               # pass even if empty to avoid automagic
+               --with-optionals=${optionals:1}
+               --with-plugins=${plugins:1}
+       )
+
+       if use perl; then
+               perl_set_version
+               wafargs+=( --with-perl-archdir="${ARCH_LIB}" )
+       fi
+
+       waf-utils_src_configure "${wafargs[@]}"
+}
+
+src_compile() {
+       waf-utils_src_compile --notests
+}
+
+src_test() {
+       waf-utils_src_compile --alltests
+}
+
+src_install() {
+       local DOCS=( AUTHORS README.mdown *.ChangeLog )
+       waf-utils_src_install --without-ldconfig --notests
+
+       use libvisual && dobin _build_/src/clients/vistest/xmms2-libvisual
+
+       use python && python_optimize
+
+       # to avoid editing waftools/man.py (use find given not always installed)
+       find "${ED}" -type f -name '*.gz' -exec gzip -d {} + || die
+}
+
+pkg_postinst() {
+       use fluidsynth && optfeature "the default MIDI soundfont" 
media-sound/fluid-soundfont
+}

Reply via email to