summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSam James <sam@gentoo.org>2024-06-23 01:14:37 +0100
committerSam James <sam@gentoo.org>2024-06-23 01:27:08 +0100
commit6f9a591dde37c105bb8d2bc8ecbaaf21295a2fcc (patch)
treec984fd619308352fc986f80a0faffa9f2e743727
parentmedia-libs/roc-toolkit: drop 0.2.5, 0.2.6 (diff)
downloadgentoo-6f9a591dde37c105bb8d2bc8ecbaaf21295a2fcc.tar.gz
gentoo-6f9a591dde37c105bb8d2bc8ecbaaf21295a2fcc.tar.bz2
gentoo-6f9a591dde37c105bb8d2bc8ecbaaf21295a2fcc.zip
media-libs/roc-toolkit: add 0.4.0
Signed-off-by: Sam James <sam@gentoo.org>
-rw-r--r--media-libs/roc-toolkit/Manifest1
-rw-r--r--media-libs/roc-toolkit/roc-toolkit-0.4.0.ebuild84
2 files changed, 85 insertions, 0 deletions
diff --git a/media-libs/roc-toolkit/Manifest b/media-libs/roc-toolkit/Manifest
index 32b18e75ae38..37d1c4152a5e 100644
--- a/media-libs/roc-toolkit/Manifest
+++ b/media-libs/roc-toolkit/Manifest
@@ -1 +1,2 @@
DIST roc-toolkit-0.3.0.tar.gz 1679439 BLAKE2B 31775d330bdfb3c42278d1ecbbbb5e14f695ca82f22929e435b6c9bf10c2e25c3367d11cf2913a81e6469876c255193be11eb78b775fad3b17f57c5be9c4bb39 SHA512 447532862dc1714054ebd03ce7fd101525c213a87bc7198a55c8e6068c28db318d59389bafd83681a4e6b34a61e68ac305c66b84e417a3f791b02340a821e6ec
+DIST roc-toolkit-0.4.0.tar.gz 1895030 BLAKE2B 2ffcf6b1ca50fcae09c7aaa27939e23428feb21f330d578d731e494c62aa088c7e00de3b1a1b488d1bb13ffcc979fede1fc2726e2293a383a87174a4480e8aec SHA512 51763287ee825b6617273ededd9e77560f4223b8ba4a577855c3225908e848895a4f925163862cf6d19a8215245ec26f33d07d6cb80c51768d37eaa06ac02063
diff --git a/media-libs/roc-toolkit/roc-toolkit-0.4.0.ebuild b/media-libs/roc-toolkit/roc-toolkit-0.4.0.ebuild
new file mode 100644
index 000000000000..491eb7526b31
--- /dev/null
+++ b/media-libs/roc-toolkit/roc-toolkit-0.4.0.ebuild
@@ -0,0 +1,84 @@
+# Copyright 2023-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..12} )
+inherit python-any-r1 scons-utils toolchain-funcs
+
+DESCRIPTION="Real-time audio streaming over the network"
+HOMEPAGE="https://roc-streaming.org/toolkit/docs/ https://github.com/roc-streaming/roc-toolkit/"
+SRC_URI="https://github.com/roc-streaming/roc-toolkit/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MPL-2.0"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="~amd64"
+IUSE="alsa llvm-libunwind pulseaudio sox sndfile ssl tools test unwind"
+RESTRICT="!test? ( test )"
+
+DEPEND="
+ >=dev-libs/libuv-1.35.0:=
+ >=media-libs/openfec-1.4.2.9
+ >=media-libs/speexdsp-1.2.0
+ alsa? ( >=media-libs/alsa-lib-1.1.9 )
+ pulseaudio? ( >=media-libs/libpulse-12.2 )
+ sox? ( >=media-sound/sox-14.4.2 )
+ sndfile? ( >=media-libs/libsndfile-1.0.28 )
+ ssl? ( >=dev-libs/openssl-3.0.8:= )
+ unwind? (
+ llvm-libunwind? ( sys-libs/llvm-libunwind:= )
+ !llvm-libunwind? ( >=sys-libs/libunwind-1.2.1:= )
+ )
+"
+RDEPEND="${DEPEND}"
+BDEPEND="
+ dev-util/ragel
+ virtual/pkgconfig
+ test? ( dev-util/cpputest )
+ tools? ( dev-util/gengetopt )
+"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-0.2.5-dont-force-O3.patch
+)
+
+src_prepare() {
+ default
+
+ # These tests need network
+ rm -r \
+ src/tests/roc_netio \
+ src/tests/public_api/test_receiver.cpp \
+ || die
+}
+
+src_compile() {
+ tc-export AR CXX CC LD RANLIB OBJCOPY PKG_CONFIG
+
+ # Can revisit these on request, but:
+ #
+ # * openfec is unconditionally enabled as upstream docs recommend it,
+ # see https://roc-streaming.org/toolkit/docs/building/user_cookbook.html.
+ #
+ # * speexdsp is unconditionally enabled as it's tiny.
+ scons_opts=(
+ $(usev !alsa '--disable-alsa')
+ $(usev !sox '--disable-sox')
+ $(usev !pulseaudio '--disable-pulseaudio')
+ $(usev !tools '--disable-tools')
+ $(usev test '--enable-tests')
+ $(usev !sndfile '--disable-sndfile')
+ $(usev !ssl '--disable-openssl')
+ $(usev !unwind '--disable-libunwind')
+ )
+
+ STRIP=true escons "${scons_opts[@]}"
+}
+
+src_test() {
+ STRIP=true escons "${scons_opts[@]}" test
+}
+
+src_install() {
+ STRIP=true escons DESTDIR="${D}" "${scons_opts[@]}" install
+}