summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorIgor V. Kovalenko <igor.v.kovalenko@gmail.com>2022-02-18 22:21:40 +0300
committerSam James <sam@gentoo.org>2022-02-21 00:43:01 +0000
commit810492c521bc4f8a59d6913880342cb7ffb4896e (patch)
treef81eefd85497f06fe9430901f5a9887ae9672945 /media-sound/apulse/apulse-0.1.13-r2.ebuild
parentmedia-libs/pulseaudio: Allow pulseaudio-daemon if required (diff)
downloadgentoo-810492c521bc4f8a59d6913880342cb7ffb4896e.tar.gz
gentoo-810492c521bc4f8a59d6913880342cb7ffb4896e.tar.bz2
gentoo-810492c521bc4f8a59d6913880342cb7ffb4896e.zip
media-sound/apulse: Conflict with media-libs/libpulse if USE=sdk
Signed-off-by: Igor V. Kovalenko <igor.v.kovalenko@gmail.com> Signed-off-by: Sam James <sam@gentoo.org>
Diffstat (limited to 'media-sound/apulse/apulse-0.1.13-r2.ebuild')
-rw-r--r--media-sound/apulse/apulse-0.1.13-r2.ebuild71
1 files changed, 71 insertions, 0 deletions
diff --git a/media-sound/apulse/apulse-0.1.13-r2.ebuild b/media-sound/apulse/apulse-0.1.13-r2.ebuild
new file mode 100644
index 000000000000..dc9642b78a9b
--- /dev/null
+++ b/media-sound/apulse/apulse-0.1.13-r2.ebuild
@@ -0,0 +1,71 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+CMAKE_ECLASS=cmake
+inherit cmake-multilib multiprocessing
+
+DESCRIPTION="PulseAudio emulation for ALSA"
+HOMEPAGE="https://github.com/i-rinat/apulse"
+SRC_URI="https://github.com/i-rinat/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT LGPL-2.1"
+SLOT="0"
+KEYWORDS="amd64 ~ppc64 x86"
+
+IUSE="debug sdk test"
+RESTRICT="!test? ( test )"
+
+DEPEND="dev-libs/glib:2[${MULTILIB_USEDEP}]
+ media-libs/alsa-lib[${MULTILIB_USEDEP}]
+ sdk? ( !media-libs/libpulse !media-sound/pulseaudio ) "
+RDEPEND="${DEPEND}
+ !media-plugins/alsa-plugins[pulseaudio]"
+
+PATCHES=(
+ "${FILESDIR}/sdk.patch"
+ "${FILESDIR}/check-key-before-remove.patch"
+ "${FILESDIR}/man.patch"
+)
+
+src_prepare() {
+ cmake_src_prepare
+
+ if ! use sdk; then
+ # Ensure all relevant libdirs are added, to support all ABIs
+ DIRS=
+ _add_dir() { DIRS="${EPREFIX}/usr/$(get_libdir)/apulse${DIRS:+:${DIRS}}"; }
+ multilib_foreach_abi _add_dir
+ sed -e "s#@@DIRS@@#${DIRS}#g" "${FILESDIR}"/apulse > "${T}"/apulse || die
+ fi
+}
+
+multilib_src_configure() {
+ local mycmakeargs=(
+ "-DINSTALL_SDK=$(usex sdk)"
+ "-DLOG_TO_STDERR=$(usex debug)"
+ "-DWITH_TRACE=$(usex debug)"
+ )
+ cmake_src_configure
+}
+
+multilib_src_test() {
+ _test() {
+ pushd tests || die
+ cmake -S "${S}/tests" -B . || die
+ emake test_ringbuffer
+ ctest -j "$(makeopts_jobs)" --test-load "$(makeopts_loadavg)" || die
+ popd || die
+ }
+ multilib_foreach_abi _test
+}
+
+multilib_src_install_all() {
+ if ! use sdk; then
+ _install_wrapper() { newbin "${BUILD_DIR}/apulse" "${CHOST}-apulse"; }
+ multilib_foreach_abi _install_wrapper
+ dobin "${T}/apulse"
+ fi
+ einstalldocs
+}