From 54bc3f8b0d26cbbe018cbd4046bb10660ee9b495 Mon Sep 17 00:00:00 2001 From: q66 Date: Tue, 23 Apr 2019 18:45:00 +0200 Subject: [PATCH] mplayer: add patch to fix altivec usage on gcc 8.3 Mplayer contains ffmpeg 5.x which added some new code, breaking altivec builds by default. Ffmpeg itself is not broken because it is compiled with -std=c11, but mplayer does not follow this, so patch it in the internal copy. [ci skip] --- srcpkgs/mplayer/patches/altivec-gcc83.patch | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) create mode 100644 srcpkgs/mplayer/patches/altivec-gcc83.patch diff --git a/srcpkgs/mplayer/patches/altivec-gcc83.patch b/srcpkgs/mplayer/patches/altivec-gcc83.patch new file mode 100644 index 00000000000..06cf65cd13a --- /dev/null +++ b/srcpkgs/mplayer/patches/altivec-gcc83.patch @@ -0,0 +1,18 @@ +--- ffmpeg/libavutil/ppc/util_altivec.h ++++ ffmpeg/libavutil/ppc/util_altivec.h +@@ -54,6 +54,15 @@ + #if HAVE_ALTIVEC + #include + ++/* starting with gcc 8.3, the vector keyword no longer allows usage with ++ * typedefs (e.g. vector uint32_t), only with their respective basic types ++ * (e.g. vector unsigned int) - with __vector this still works and there ++ * is code relying on it ++ */ ++#ifndef vector ++#define vector __vector ++#endif ++ + // used to build registers permutation vectors (vcprm) + // the 's' are for words in the _s_econd vector + #define WORD_0 0x00,0x01,0x02,0x03