- Add ffmpeg-altivec-build.patch

OBS-URL: https://build.opensuse.org/package/show/multimedia:libs/ffmpeg-4?expand=0&rev=123
This commit is contained in:
Jan Engelhardt 2020-06-18 03:38:01 +00:00 committed by Git OBS Bridge
parent d9e05c2851
commit 74e3fe2705
3 changed files with 31 additions and 2 deletions

View File

@ -16,6 +16,7 @@ Wed Jun 17 16:32:04 UTC 2020 - Jan Engelhardt <jengelh@inai.de>
ffmpeg4_swscale_fix_altivec_vsx_recent_gcc.patch,
929e5159bc13da374b83f5627879c607acce180b.patch
(merged)
- Add ffmpeg-altivec-build.patch
-------------------------------------------------------------------
Fri Jun 5 16:21:42 UTC 2020 - Bjørn Lie <bjorn.lie@gmail.com>

View File

@ -111,6 +111,7 @@ Patch1: ffmpeg-arm6l.diff
Patch2: ffmpeg-new-coder-errors.diff
Patch3: ffmpeg-codec-choice.diff
Patch4: ffmpeg-4.2-dlopen-fdk_aac.patch
Patch5: ffmpeg-altivec-build.patch
BuildRequires: ladspa-devel
BuildRequires: libgsm-devel
BuildRequires: libmp3lame-devel
@ -198,7 +199,7 @@ BuildRequires: pkgconfig(xcb-shm)
BuildRequires: pkgconfig(xcb-xfixes)
BuildRequires: pkgconfig(xext)
BuildRequires: pkgconfig(xfixes)
%if 0%{?suse_version} >= 1550 || 0%{?sleX_version} >= 150200
%if 0%{?suse_version} >= 1550 || 0%{?sle_version} >= 150200
%ifarch x86_64
BuildRequires: pkgconfig(libmfx)
%endif
@ -675,7 +676,7 @@ LDFLAGS="%_lto_cflags" \
%if %{with lv2}
--enable-lv2 \
%endif
%if 0%{?suse_version} >= 1550 || 0%{?sleX_version} >= 150200
%if 0%{?suse_version} >= 1550 || 0%{?sle_version} >= 150200
%ifarch x86_64
--enable-libmfx \
%endif

View File

@ -0,0 +1,27 @@
From: Jan Engelhardt <jengelh@inai.de>
Date: 2020-06-18 00:40:03.633300733 +0200
The standard ppc64 build tries to compile yuv2rgb_altivec, but this fails
because -mvsx is not in use.
libswscale/ppc/yuv2rgb_altivec.c: In function 'altivec_yuv2_abgr':
libswscale/ppc/yuv2rgb_altivec.c:338:18: error: implicit declaration of function 'vec_xl'; did you mean 'vec_rl'? [-Werror=implicit-funct
ion-declaration]
338 | y0 = vec_xl(0, y1i); \
libswscale/ppc/yuv2rgb_altivec.c:338:18: error: incompatible types when assigning to type '__vector unsigned char' {aka '__vector(16) unsigned char'} from type 'int'
338 | y0 = vec_xl(0, y1i); \
---
libswscale/ppc/Makefile | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
Index: ffmpeg-4.3/libswscale/ppc/Makefile
===================================================================
--- ffmpeg-4.3.orig/libswscale/ppc/Makefile
+++ ffmpeg-4.3/libswscale/ppc/Makefile
@@ -1,4 +1,4 @@
-OBJS += ppc/swscale_altivec.o \
+VSX-OBJS += ppc/swscale_altivec.o \
ppc/yuv2rgb_altivec.o \
ppc/yuv2yuv_altivec.o \
ppc/swscale_vsx.o