# Copyright 1999-2024 Gentoo Authors # Copyright 2020-2024 The Trinity Desktop Project # Distributed under the terms of the GNU General Public License v2 EAPI="8" TRINITY_MODULE_TYPE="dependencies" TRINITY_MODULE_NAME="akode" inherit trinity-base-2 cmake DESCRIPTION="Simple framework to decode the most common audio formats" HOMEPAGE="https://trinitydesktop.org/" LICENSE="|| ( GPL-2 GPL-3 )" SLOT="0" if [[ ${PV} != *9999* ]] ; then KEYWORDS="~amd64 ~arm64 ~x86" fi IUSE="alsa flac ffmpeg jack +libsamplerate mp3 musepack oss pulseaudio speex vorbis" DEPEND=" alsa? ( media-libs/alsa-lib ) flac? ( media-libs/flac ) ffmpeg? ( >=media-video/ffmpeg-5.0 ) jack? ( virtual/jack ) libsamplerate? ( media-libs/libsamplerate ) mp3? ( media-libs/libmad ) pulseaudio? ( media-libs/libpulse ) speex? ( media-libs/speex ) vorbis? ( media-libs/libvorbis ) " RDEPEND="${DEPEND}" pkg_pretend() { if ! use alsa || use jack || use oss || use pulseaudio then ewarn "You haven't selected any audio sinc plugins to build." ewarn "Avaliable are: alsa, jack, oss, pulseaudio." ewarn "akode won't be able to playback any sound" ewarn fi if ! use flac || use ffmpeg || use musepack || use mp3 || use speex || use vorbis then ewarn "You haven't selected any decoder plugins to build." ewarn "Avaliable are: ffmpeg, mp3, musepack, xiph (flac speex vorbis)" ewarn "akode will support only raw wav files" ewarn fi } src_configure() { local need_xiph_decoder if use flac || use speex || use vorbis; then need_xiph_decoder = yes else need_xiph_decoder = no fi local mycmakeargs=( -DWITH_SUN_SINK=OFF # solaris stuff -DWITH_LIBLTDL=OFF # doesn't provide any additional functinality -DWITH_ALSA_SINK=$(usex alsa) -DWITH_OSS_SINK=$(usex oss) -DWITH_PULSE_SINK=$(usex pulseaudio) -DWITH_JACK_SINK=$(usex jack) -DWITH_FFMPEG_DECODER=$(usex ffmpeg) -DWITH_MPC_DECODER=$(usex musepack) -DWITH_MPEG_DECODER=$(usex mp3) -DWITH_SRC_RESAMPLER=$(usex libsamplerate) -DWITH_XIPH_FLAC=$(usex flac) -DWITH_XIPH_SPEEX=$(usex speex) -DWITH_XIPH_VORBIS=$(usex vorbis) -DWITH_XIPH_DECODER="${need_xiph_decoder}" ) cmake_src_configure }