Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 15 Jan 2026 10:31:18 +0000
From:      Piotr Kubaj <pkubaj@FreeBSD.org>
To:        ports-committers@FreeBSD.org, dev-commits-ports-all@FreeBSD.org, dev-commits-ports-main@FreeBSD.org
Subject:   git: a5ae15bf985e - main - multimedia/mythtv: fix build on powerpc64
Message-ID:  <6968c1f6.3075f.271e843@gitrepo.freebsd.org>

index | next in thread | raw e-mail

The branch main has been updated by pkubaj:

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

commit a5ae15bf985e6f64e96a2b1d0144b6a261107b1e
Author:     Piotr Kubaj <pkubaj@FreeBSD.org>
AuthorDate: 2026-01-15 10:29:39 +0000
Commit:     Piotr Kubaj <pkubaj@FreeBSD.org>
CommitDate: 2026-01-15 10:31:15 +0000

    multimedia/mythtv: fix build on powerpc64
    
    Same patch as b1e6a235315ae69cf278f6873fa6ab98a293e6b6 for
    multimedia/ffmpeg.
---
 ...ternal_FFmpeg_libswscale_ppc_yuv2rgb__altivec.c | 43 ++++++++++++++++++++++
 1 file changed, 43 insertions(+)

diff --git a/multimedia/mythtv/files/patch-external_FFmpeg_libswscale_ppc_yuv2rgb__altivec.c b/multimedia/mythtv/files/patch-external_FFmpeg_libswscale_ppc_yuv2rgb__altivec.c
new file mode 100644
index 000000000000..e65c1e08045f
--- /dev/null
+++ b/multimedia/mythtv/files/patch-external_FFmpeg_libswscale_ppc_yuv2rgb__altivec.c
@@ -0,0 +1,43 @@
+--- external/FFmpeg/libswscale/ppc/yuv2rgb_altivec.c.orig	2025-02-24 16:35:12 UTC
++++ external/FFmpeg/libswscale/ppc/yuv2rgb_altivec.c
+@@ -316,6 +316,9 @@ static int altivec_ ## name(SwsContext *c, const unsig
+     vector signed short R1, G1, B1;                                           \
+     vector unsigned char R, G, B;                                             \
+                                                                               \
++    const vector unsigned char *y1ivP, *y2ivP, *uivP, *vivP;                  \
++    vector unsigned char align_perm;                                          \
++                                                                              \
+     vector signed short lCY       = c->CY;                                    \
+     vector signed short lOY       = c->OY;                                    \
+     vector signed short lCRV      = c->CRV;                                   \
+@@ -346,13 +349,26 @@ static int altivec_ ## name(SwsContext *c, const unsig
+         vec_dstst(oute, (0x02000002 | (((w * 3 + 32) / 32) << 16)), 1);       \
+                                                                               \
+         for (j = 0; j < w / 16; j++) {                                        \
+-            y0 = vec_xl(0, y1i);                                              \
++            y1ivP = (const vector unsigned char *) y1i;                       \
++            y2ivP = (const vector unsigned char *) y2i;                       \
++            uivP  = (const vector unsigned char *) ui;                        \
++            vivP  = (const vector unsigned char *) vi;                        \
+                                                                               \
+-            y1 = vec_xl(0, y2i);                                              \
++            align_perm = vec_lvsl(0, y1i);                                    \
++            y0 = (vector unsigned char)                                       \
++                     vec_perm(y1ivP[0], y1ivP[1], align_perm);                \
+                                                                               \
+-            u = (vector signed char) vec_xl(0, ui);                           \
++            align_perm = vec_lvsl(0, y2i);                                    \
++            y1 = (vector unsigned char)                                       \
++                     vec_perm(y2ivP[0], y2ivP[1], align_perm);                \
+                                                                               \
+-            v = (vector signed char) vec_xl(0, vi);                           \
++            align_perm = vec_lvsl(0, ui);                                     \
++            u = (vector signed char)                                          \
++                    vec_perm(uivP[0], uivP[1], align_perm);                   \
++                                                                              \
++            align_perm = vec_lvsl(0, vi);                                     \
++            v = (vector signed char)                                          \
++                    vec_perm(vivP[0], vivP[1], align_perm);                   \
+                                                                               \
+             u = (vector signed char)                                          \
+                     vec_sub(u,                                                \


home | help

Want to link to this message? Use this
URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?6968c1f6.3075f.271e843>