Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 25 Nov 2025 11:32:03 +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: 6a07ea84f745 - main - multimedia/x265: fix build on powerpc*
Message-ID:  <692593b3.bfec.52c633f2@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=6a07ea84f74574b5214e50636ce5e3eaf696c854

commit 6a07ea84f74574b5214e50636ce5e3eaf696c854
Author:     Piotr Kubaj <pkubaj@FreeBSD.org>
AuthorDate: 2025-11-25 11:27:43 +0000
Commit:     Piotr Kubaj <pkubaj@FreeBSD.org>
CommitDate: 2025-11-25 11:31:54 +0000

    multimedia/x265: fix build on powerpc*
    
    A couple of fixes:
    1. Altivec code also uses VSX, so it should be enabled by default only
    on powerpc64le. Additionaly ENABLE_ALTIVEC needs to be specified along
    with CPU_POWER8.
    2. Altivec code is 64-bit only, so the option should be removed on
    powerpc altogether. On powerpc64 it should stay non-default.
    3. Altivec code works only with 8 bits and causes build issues
    elsewhere.
---
 multimedia/x265/Makefile | 24 ++++++++++++++----------
 1 file changed, 14 insertions(+), 10 deletions(-)

diff --git a/multimedia/x265/Makefile b/multimedia/x265/Makefile
index be9a85a53b7f..6ddc09a62e5a 100644
--- a/multimedia/x265/Makefile
+++ b/multimedia/x265/Makefile
@@ -26,10 +26,10 @@ BB_TAG=		Release_${DISTVERSION}
 
 OPTIONS_DEFINE=			VMAF
 OPTIONS_DEFINE_amd64=		SVTHEVC
-OPTIONS_DEFINE_powerpc=		ALTIVEC
-OPTIONS_DEFINE_powerpc64=	${OPTIONS_DEFINE_powerpc}
-OPTIONS_DEFINE_powerpc64le=	${OPTIONS_DEFINE_powerpc}
-OPTIONS_DEFAULT=		HI10P HI12P HI8P OPTIMIZED_FLAGS ALTIVEC
+OPTIONS_DEFINE_powerpc64=	ALTIVEC
+OPTIONS_DEFINE_powerpc64le=	${OPTIONS_DEFINE_powerpc64}
+OPTIONS_DEFAULT=		HI10P HI12P HI8P OPTIMIZED_FLAGS
+OPTIONS_DEFAULT_powerpc64le=	ALTIVEC
 
 OPTIONS_MULTI=			PIXELWIDTH
 OPTIONS_MULTI_PIXELWIDTH=	HI10P HI12P HI8P
@@ -52,7 +52,6 @@ SVTHEVC_CMAKE_BOOL=	ENABLE_SVT_HEVC
 VMAF_CMAKE_ON=		-DVMAF_INCLUDE_DIR:PATH="${LOCALBASE}/include/libvmaf"
 VMAF_LIB_DEPENDS=	libvmaf.so:multimedia/vmaf
 VMAF_CMAKE_BOOL=	ENABLE_LIBVMAF
-ALTIVEC_CMAKE_BOOL=	ENABLE_ALTIVEC
 
 .include <bsd.port.options.mk>
 
@@ -88,15 +87,18 @@ CFLAGS:=	${CFLAGS:N-O*} -O3
 CMAKE_ARGS+=	-DENABLE_NEON:BOOL=true
 .endif
 
-.if ${ARCH:Mpowerpc*}
-CMAKE_OTHER_ARGS+=	${CMAKE_ARGS:M*ALTIVEC*} -DCPU_POWER8=false
-CMAKE_ARGS+=		-DCPU_POWER8=false
+.if ${PORT_OPTIONS:MALTIVEC}
+CMAKE_ARGS+=		-DENABLE_ALTIVEC=true \
+			-DCPU_POWER8=true
+.else
+CMAKE_ARGS+=		-DENABLE_ALTIVEC=false \
+			-DCPU_POWER8=false
 .endif
 
 .for b in ${OTHER_DEPTHS:C/HI([0-9]+)P/\1/}
 EXTRA_LINK_FLAGS+=	-L${WRKSRC:H}/$bbit
 
-.if (${ARCH} == i386 && $b != 8) || ${ARCH:Mpowerpc*}
+.if (${ARCH} == i386 || ${ARCH:Mpowerpc64*}) && $b != 8
 ASSEMBLY=	false
 .else
 ASSEMBLY=	true
@@ -108,7 +110,9 @@ pre-build::
 	${CMAKE_BIN} -S ${WRKSRC} -B ${WRKSRC:H}/$bbit \
 		${CMAKE_OTHER_ARGS} ${b:C/1./-DHIGH_BIT_DEPTH:BOOL=true/} \
 		-DMAIN$b:BOOL=true -DENABLE_ASSEMBLY:BOOL=${ASSEMBLY} \
-		-DEXPORT_C_API:BOOL=false -DENABLE_CLI=false
+		-DENABLE_ALTIVEC:BOOL=${ASSEMBLY} \
+		-DCPU_POWER8:BOOL=${ASSEMBLY} -DEXPORT_C_API:BOOL=false \
+		-DENABLE_CLI=false
 	${SETENV} ${MAKE_ENV} ${MAKE_CMD} -C ${WRKSRC:H}/$bbit ${MAKE_ARGS}
 	${LN} -f ${WRKSRC:H}/$bbit/libx265.a ${WRKSRC:H}/$bbit/libx265_$bbit.a
 	@${ECHO_MSG} "---> Built the $b-bit library ---"


home | help

Want to link to this message? Use this
URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?692593b3.bfec.52c633f2>