git: b3e4ac879d40 - main - multimedia/svt-av1: unbreak on i386 by disabling assembly

From: Jan Beich <jbeich_at_FreeBSD.org>
Date: Sun, 06 Mar 2022 10:17:02 UTC
The branch main has been updated by jbeich:

URL: https://cgit.FreeBSD.org/ports/commit/?id=b3e4ac879d4026a18d671b345867d9f640705a7c

commit b3e4ac879d4026a18d671b345867d9f640705a7c
Author:     Jan Beich <jbeich@FreeBSD.org>
AuthorDate: 2022-03-06 09:17:23 +0000
Commit:     Jan Beich <jbeich@FreeBSD.org>
CommitDate: 2022-03-06 10:15:55 +0000

    multimedia/svt-av1: unbreak on i386 by disabling assembly
---
 multimedia/svt-av1/Makefile         |  2 --
 multimedia/svt-av1/files/patch-i386 | 29 +++++++++++++++++++++++++++++
 2 files changed, 29 insertions(+), 2 deletions(-)

diff --git a/multimedia/svt-av1/Makefile b/multimedia/svt-av1/Makefile
index 41563b205418..1aad321d27c5 100644
--- a/multimedia/svt-av1/Makefile
+++ b/multimedia/svt-av1/Makefile
@@ -16,8 +16,6 @@ LICENSE_FILE_BSD2CLAUSE=	${WRKSRC}/LICENSE-BSD2.md
 LICENSE_FILE_BSD3CLAUSE=	${WRKSRC}/LICENSE.md
 LICENSE_FILE_MIT=		${WRKSRC}/third_party/safestringlib/LICENSE
 
-BROKEN_i386=	https://gitlab.com/AOMediaCodec/SVT-AV1/-/issues/1231
-
 BUILD_DEPENDS=	nasm:devel/nasm
 
 USES=		cmake compiler:c11
diff --git a/multimedia/svt-av1/files/patch-i386 b/multimedia/svt-av1/files/patch-i386
new file mode 100644
index 000000000000..b4dac76bd4ab
--- /dev/null
+++ b/multimedia/svt-av1/files/patch-i386
@@ -0,0 +1,29 @@
+https://gitlab.com/AOMediaCodec/SVT-AV1/-/issues/1231
+
+Source/Lib/Encoder/ASM_SSE2/highbd_variance_impl_sse2.asm:41: error: impossible combination of address sizes
+Source/Lib/Common/ASM_SSSE3/aom_subpixel_8t_ssse3.asm:377: error: impossible combination of address sizes
+Source/Lib/Encoder/ASM_SSE4_1/pickrst_sse4.c:511:14: warning: implicit declaration of function '_mm_insert_epi64' is invalid in C99 [-Wimplicit-function-declaration]
+    dst[0] = _mm_insert_epi64(dst[0], *(int64_t *)src, 1);
+             ^
+Source/Lib/Encoder/ASM_SSE4_1/pickrst_sse4.c:511:12: error: assigning to '__m128i' (vector of 2 'long long' values) from incompatible type 'int'
+    dst[0] = _mm_insert_epi64(dst[0], *(int64_t *)src, 1);
+           ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+In file included from Source/Lib/Encoder/ASM_AVX2/pickrst_avx2.c:20:
+Source/Lib/Encoder/ASM_AVX2/pickrst_avx2.h:393:12: warning: implicit declaration of function '_mm256_insert_epi64' is invalid in C99 [-Wimplicit-function-declaration]
+    *dst = _mm256_insert_epi64(*dst, *(int64_t *)src, 1);
+           ^
+Source/Lib/Encoder/ASM_AVX2/pickrst_avx2.h:393:10: error: assigning to '__m256i' (vector of 4 'long long' values) from incompatible type 'int'
+    *dst = _mm256_insert_epi64(*dst, *(int64_t *)src, 1);
+         ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+--- CMakeLists.txt.orig	2021-05-08 09:05:00 UTC
++++ CMakeLists.txt
+@@ -42,7 +42,7 @@ check_c_source_compiles("
+ include(CheckCSourceCompiles)
+ 
+ check_c_source_compiles("
+-#if defined(_M_IX86) || defined(_M_X64) || defined(__i386__) || defined(__x86_64__)
++#if defined(_M_X64) || defined(__x86_64__)
+ #else
+ #error \"Non-x86\"
+ #endif