summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSam James <sam@gentoo.org>2023-04-20 16:39:40 +0100
committerSam James <sam@gentoo.org>2023-04-20 16:40:10 +0100
commita9c9d50449002e28c4ee9e6873da976c022b29b0 (patch)
treeccb552005f33b9ad86a496b284348e48cb82d78b /media-libs/opus
parentsys-apps/util-linux: add 2.39_rc3 (diff)
downloadgentoo-a9c9d50449002e28c4ee9e6873da976c022b29b0.tar.gz
gentoo-a9c9d50449002e28c4ee9e6873da976c022b29b0.tar.bz2
gentoo-a9c9d50449002e28c4ee9e6873da976c022b29b0.zip
media-libs/opus: add 1.4
Signed-off-by: Sam James <sam@gentoo.org>
Diffstat (limited to 'media-libs/opus')
-rw-r--r--media-libs/opus/Manifest1
-rw-r--r--media-libs/opus/opus-1.4.ebuild58
2 files changed, 59 insertions, 0 deletions
diff --git a/media-libs/opus/Manifest b/media-libs/opus/Manifest
index 37fa03dee130..494be1909629 100644
--- a/media-libs/opus/Manifest
+++ b/media-libs/opus/Manifest
@@ -1 +1,2 @@
DIST opus-1.3.1.tar.gz 1040054 BLAKE2B e0aab38518938157a6ef27307f52d9d3f9c12a2fef4c7e5b4168c2f6fc04d79e333ebe477059b3e6a0518fcf6aa089b5eb1c8de68d83474e237c0f73e5a221cb SHA512 6cd5e4d8a0551ed5fb59488c07a5cc18a241d1fde5f9eb9f16cd4e77abcdb4134dd51ad1d737be1e6039bfa56912510b8648152f2478a1f21c7c1d9ce32933cd
+DIST opus-1.4.tar.gz 1063408 BLAKE2B 21f11df745cb868f4da1586d678901045fd9bd0c0590628015f3adc2522c88b0660df88096abe975051fec3188b76b93762c4a01907c2ab2b23c40fde79cf6ad SHA512 1ecd39e0add24de12823bf7c936bb67441228721e2cdae0edbfcf3cee0894bcc6edf2a1d0ca5cdfdad1565803bf39cc4c985ad32710c2a9582f850adeb5ca631
diff --git a/media-libs/opus/opus-1.4.ebuild b/media-libs/opus/opus-1.4.ebuild
new file mode 100644
index 000000000000..eee6a69ff2cf
--- /dev/null
+++ b/media-libs/opus/opus-1.4.ebuild
@@ -0,0 +1,58 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit flag-o-matic meson-multilib
+
+DESCRIPTION="Open codec for interactive speech and music transmission over the Internet"
+HOMEPAGE="https://opus-codec.org/"
+SRC_URI="https://github.com/xiph/opus/releases/download/v${PV}/${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86"
+INTRINSIC_FLAGS="cpu_flags_x86_sse cpu_flags_arm_neon"
+IUSE="custom-modes debug doc hardened static-libs test ${INTRINSIC_FLAGS}"
+RESTRICT="!test? ( test )"
+
+BDEPEND="
+ doc? (
+ app-doc/doxygen
+ media-gfx/graphviz
+ )
+"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-1.3.1-libdir-macro.patch
+)
+
+multilib_src_configure() {
+ local emesonargs=(
+ -Ddefault_library=$(multilib_native_usex static-libs both shared)
+
+ $(meson_use custom-modes)
+ $(meson_feature test tests)
+ $(meson_use debug assertions)
+ $(meson_use hardened hardening)
+
+ $(meson_native_use_feature doc docs)
+
+ -Ddocdir="${EPREFIX}"/usr/share/doc/${PF}
+ )
+
+ local i
+ # We want to disable intrinsics if no flags are enabled
+ # (This is a fun Bash construct to do that!)
+ # bug #752069
+ # TODO: What is -Dasm for?
+ for i in ${INTRINSIC_FLAGS} ; do
+ use ${i} && emesonargs+=( -Dintrinsics=enabled ) && break
+ done || emesonargs+=( -Dintrinsics=disabled )
+
+ if is-flagq -ffast-math || is-flagq -Ofast ; then
+ emesonargs+=( -Dfloat-approx=true )
+ fi
+
+ meson_src_configure
+}