diff options
author | Sam James <sam@gentoo.org> | 2024-01-02 04:36:56 +0000 |
---|---|---|
committer | Sam James <sam@gentoo.org> | 2024-01-02 04:39:17 +0000 |
commit | 29cd0e622b574df6adff5704ab4e220709619767 (patch) | |
tree | 55e5f5211e9c7d9eb5001f8eaa4e2f2ccba73e08 /media-libs/webrtc-audio-processing | |
parent | dev-cpp/cppgir: keyword 0_p20230926 for ~loong (diff) | |
download | gentoo-29cd0e622b574df6adff5704ab4e220709619767.tar.gz gentoo-29cd0e622b574df6adff5704ab4e220709619767.tar.bz2 gentoo-29cd0e622b574df6adff5704ab4e220709619767.zip |
media-libs/webrtc-audio-processing: fix x86 w/o SSE
Tested with CFLAGS="-O2" CFLAGS_x86="-m32 -O2 -mno-sse -march=i686 -fcf-protection=none" e webrtc-audio-processing-1.3-r3.ebuild clean compile.
Closes: https://bugs.gentoo.org/918668
Closes: https://bugs.gentoo.org/921140
Signed-off-by: Sam James <sam@gentoo.org>
Diffstat (limited to 'media-libs/webrtc-audio-processing')
3 files changed, 87 insertions, 0 deletions
diff --git a/media-libs/webrtc-audio-processing/files/webrtc-audio-processing-1.3-musl.patch b/media-libs/webrtc-audio-processing/files/webrtc-audio-processing-1.3-musl.patch new file mode 100644 index 000000000000..01e6e799a62b --- /dev/null +++ b/media-libs/webrtc-audio-processing/files/webrtc-audio-processing-1.3-musl.patch @@ -0,0 +1,34 @@ +https://bugs.gentoo.org/918668 +https://gitlab.freedesktop.org/pulseaudio/webrtc-audio-processing/-/merge_requests/37 +(see also https://gitlab.freedesktop.org/pulseaudio/webrtc-audio-processing/-/merge_requests/38) + +From de1b9c444df1ed66d72a4ab3d0e4dd2151037934 Mon Sep 17 00:00:00 2001 +From: Markus Volk <f_l_k@t-online.de> +Date: Thu, 14 Sep 2023 16:12:32 +0200 +Subject: [PATCH] file_wrapper.h: add missing include for musl + +this fixes: +| In file included from ../webrtc-audio-processing-1.3/webrtc/rtc_base/system/file_wrapper.cc:11: +| ../webrtc-audio-processing-1.3/webrtc/rtc_base/system/file_wrapper.h:86:21: error: 'int64_t' has not been declared + +if built with musl libc + +Signed-off-by: Markus Volk <f_l_k@t-online.de> +--- + webrtc/rtc_base/system/file_wrapper.h | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/webrtc/rtc_base/system/file_wrapper.h b/webrtc/rtc_base/system/file_wrapper.h +index 42c463c..c34d366 100644 +--- a/webrtc/rtc_base/system/file_wrapper.h ++++ b/webrtc/rtc_base/system/file_wrapper.h +@@ -13,6 +13,7 @@ + + #include <stddef.h> + #include <stdio.h> ++#include <cstdint> + + #include <string> + +-- +GitLab diff --git a/media-libs/webrtc-audio-processing/files/webrtc-audio-processing-1.3-x86-no-sse.patch b/media-libs/webrtc-audio-processing/files/webrtc-audio-processing-1.3-x86-no-sse.patch new file mode 100644 index 000000000000..c194dd9244e5 --- /dev/null +++ b/media-libs/webrtc-audio-processing/files/webrtc-audio-processing-1.3-x86-no-sse.patch @@ -0,0 +1,13 @@ +https://bugs.gentoo.org/921140 +https://gitlab.freedesktop.org/pulseaudio/webrtc-audio-processing/-/issues/5 +--- a/webrtc/rtc_base/system/arch.h ++++ b/webrtc/rtc_base/system/arch.h +@@ -34,7 +34,7 @@ + #else + #define WEBRTC_ARCH_32_BITS + #endif +-#elif defined(_M_IX86) || defined(__i386__) ++#elif defined(__SSE__) && (defined(_M_IX86) || defined(__i386__)) + #define WEBRTC_ARCH_X86_FAMILY + #define WEBRTC_ARCH_X86 + #define WEBRTC_ARCH_32_BITS diff --git a/media-libs/webrtc-audio-processing/webrtc-audio-processing-1.3-r3.ebuild b/media-libs/webrtc-audio-processing/webrtc-audio-processing-1.3-r3.ebuild new file mode 100644 index 000000000000..33bf26456380 --- /dev/null +++ b/media-libs/webrtc-audio-processing/webrtc-audio-processing-1.3-r3.ebuild @@ -0,0 +1,40 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +inherit meson-multilib + +DESCRIPTION="AudioProcessing library from the webrtc.org codebase" +HOMEPAGE="https://www.freedesktop.org/software/pulseaudio/webrtc-audio-processing/" +SRC_URI="https://freedesktop.org/software/pulseaudio/${PN}/${P}.tar.gz" + +LICENSE="BSD" +SLOT="1" +KEYWORDS="~amd64 ~ppc64 ~x86 ~amd64-linux" +IUSE="cpu_flags_arm_neon" + +RDEPEND="dev-cpp/abseil-cpp:=[${MULTILIB_USEDEP}]" +DEPEND="${RDEPEND}" +BDEPEND="virtual/pkgconfig" + +PATCHES=( + "${FILESDIR}/${PN}-1.3-Add-generic-byte-order-and-pointer-size-detection.patch" + "${FILESDIR}/${PN}-1.3-big-endian-support.patch" + "${FILESDIR}/${PN}-1.3-x86-no-sse.patch" + "${FILESDIR}/${PN}-1.3-musl.patch" +) + +DOCS=( AUTHORS NEWS README.md ) + +multilib_src_configure() { + if [[ ${ABI} == x86 ]] ; then + # bug #921140 + local -x CPPFLAGS="${CPPFLAGS} -DPFFFT_SIMD_DISABLE" + fi + + local emesonargs=( + -Dneon=$(usex cpu_flags_arm_neon yes no) + ) + meson_src_configure +} |