#
# Updating notes: see multimedia/x264/Makefile.

PORTREVISION=	0
PKGNAMEPREFIX=	lib

COMMENT=	H.264/MPEG-4 AVC Video Encoding (Library)
MASTERDIR=	${.CURDIR}/../x264

# Clear dependency on libx264 (itself), see x264/Makefile
LIB_DEPENDS=

USE_LDCONFIG=	yes

CFLAGS_riscv64=	-fPIC
LDFLAGS_i386=	-Wl,-znotext
LDFLAGS_armv6=	-Wl,-znotext
LDFLAGS_armv7=	-Wl,-znotext

# Don't import PLIST_FILES from multimedia/x264
PLIST_FILES=
PLIST_SUB+=	X264BUILD=${DISTVERSION:R:E}
PLIST=		${.CURDIR}/pkg-plist

MESON_ARGS=	-Dcli=false

OPTIONS_DEFINE_aarch64=	ASM LTO OPTIMIZED_CFLAGS
OPTIONS_DEFINE_amd64=	ASM LTO OPTIMIZED_CFLAGS
OPTIONS_DEFINE_powerpc64=	ASM LTO OPTIMIZED_CFLAGS
OPTIONS_DEFINE_powerpc64le=	ASM LTO OPTIMIZED_CFLAGS
OPTIONS_DEFAULT_aarch64=ASM LTO OPTIMIZED_CFLAGS
OPTIONS_DEFAULT_amd64=	ASM LTO OPTIMIZED_CFLAGS
OPTIONS_DEFAULT_powerpc64le=	ASM LTO OPTIMIZED_CFLAGS
# ASM needs VSX (x264 AltiVec kernels hard-require it); default on with CPUTYPE>=power7
.if !empty(MACHINE_CPU:Mvsx)
OPTIONS_DEFAULT_powerpc64=	ASM LTO OPTIMIZED_CFLAGS
.else
OPTIONS_DEFAULT_powerpc64=	LTO OPTIMIZED_CFLAGS
.endif
OPTIONS_EXCLUDE=	BASH FFMS GPAC LAVF LSMASH SWSCALE

ASM_BUILD_DEPENDS=	${ASM_BUILD_DEPENDS_${ARCH}}
ASM_BUILD_DEPENDS_amd64=nasm>=2.13:devel/nasm
ASM_MESON_ENABLED=	asm

LTO_MESON_TRUE=		b_lto

OPTIMIZED_CFLAGS_CFLAGS=-O3

.if !empty(MACHINE_ARCH:Mpowerpc64*)
ASM_VARS=	MESON_ARGS+=-Dvsx=enabled
ASM_VARS_OFF=	MESON_ARGS+=-Dvsx=disabled
.endif

.include "${MASTERDIR}/Makefile"
