View | Details | Raw Unified | Return to bug 238773 | Differences between
and this patch

Collapse All | Expand All

(-)b/multimedia/x265/Makefile (-11 / +54 lines)
Lines 1-58 Link Here
1
# Created by: adamw
1
# Created by: adamw
2
# $FreeBSD$
2
# $FreeBSD$
3
3
4
PORTNAME=	x265
4
PORTNAME=	x265
5
PORTVERSION=	3.2.1
5
PORTVERSION=	3.2.1
6
PORTREVISION=	1
6
CATEGORIES=	multimedia
7
CATEGORIES=	multimedia
7
MASTER_SITES=	https://bitbucket.org/multicoreware/x265/downloads/ \
8
MASTER_SITES=	https://bitbucket.org/multicoreware/x265/downloads/ \
8
		https://downloads.videolan.org/pub/videolan/x265/ \
9
		https://downloads.videolan.org/pub/videolan/x265/ \
9
		https://mirror.leaseweb.com/videolan/x265/ \
10
		https://mirror.leaseweb.com/videolan/x265/ \
10
		http://downloads.videolan.org/pub/videolan/x265/ \
11
		http://downloads.videolan.org/pub/videolan/x265/ \
11
		http://mirror.leaseweb.com/videolan/x265/
12
		http://mirror.leaseweb.com/videolan/x265/
12
DISTNAME=	${PORTNAME}_${PORTVERSION}
13
DISTNAME=	${PORTNAME}_${PORTVERSION}
13
14
14
MAINTAINER=	mi@aldan.algebra.com
15
MAINTAINER=	mi@aldan.algebra.com
15
COMMENT=	H.265/High Efficiency Video Coding (HEVC) format
16
COMMENT=	H.265/High Efficiency Video Coding (HEVC) format
16
17
17
LICENSE=	GPLv2+
18
LICENSE=	GPLv2+
18
LICENSE_FILE=	${WRKSRC:H}/COPYING
19
LICENSE_FILE=	${WRKSRC:H}/COPYING
19
20
20
BUILD_DEPENDS=	nasm:devel/nasm
21
BUILD_DEPENDS=	${BUILD_DEPENDS_${ARCH}}
22
BUILD_DEPENDS_amd64=	nasm:devel/nasm
23
BUILD_DEPENDS_i386=	nasm:devel/nasm
21
24
22
USES=		cmake compiler:c++14-lang pathfix
25
USES=		cmake compiler:c++14-lang libtool:build pathfix
23
26
24
OPTIONS_DEFINE=		DEBUG OPTIMIZED_FLAGS VMAF
27
OPTIONS_DEFINE=		DEBUG OPTIMIZED_FLAGS VMAF
25
OPTIONS_DEFINE_amd64=	HI10P HI12P SVTHEVC
28
OPTIONS_DEFINE_amd64=	SVTHEVC
26
29
27
DEBUG_PREVENTS=		OPTIMIZED_FLAGS
30
DEBUG_PREVENTS=		OPTIMIZED_FLAGS
28
DEBUG_PREVENTS_MSG=	Optimizations are incompatible with debugging code
31
DEBUG_PREVENTS_MSG=	Optimizations are incompatible with debugging code
29
DEBUG_VARS_OFF=		CFLAGS+=-DNDEBUG CPPFLAGS+=-DNDEBUG 
32
DEBUG_VARS_OFF=		CFLAGS+=-DNDEBUG
30
HI10P_CMAKE_BOOL=	HIGH_BIT_DEPTH
33
OPTIMIZED_FLAGS_VARS=	CFLAGS+=-O3
31
HI12P_CMAKE_BOOL=	MAIN12
32
HI12P_IMPLIES=		HI10P
33
OPTIMIZED_FLAGS_VARS=	CFLAGS+=-O3 CXXFLAGS+=-O3
34
SVTHEVC_LIB_DEPENDS=	libSvtHevcEnc.so:multimedia/svt-hevc
34
SVTHEVC_LIB_DEPENDS=	libSvtHevcEnc.so:multimedia/svt-hevc
35
SVTHEVC_CMAKE_BOOL=	ENABLE_SVT_HEVC
35
SVTHEVC_CMAKE_BOOL=	ENABLE_SVT_HEVC
36
SVTHEVC_CMAKE_ON=	-DSVT_HEVC_INCLUDE_DIR:PATH="${LOCALBASE}/include/svt-hevc"
36
SVTHEVC_CMAKE_ON=	-DSVT_HEVC_INCLUDE_DIR:PATH="${LOCALBASE}/include/svt-hevc"
37
VMAF_BUILD_DEPENDS=	${LOCALBASE}/lib/libvmaf.a:multimedia/vmaf
37
VMAF_BUILD_DEPENDS=	${LOCALBASE}/lib/libvmaf.a:multimedia/vmaf
38
VMAF_USES=		localbase:ldflags
38
VMAF_USES=		localbase:ldflags
39
VMAF_CMAKE_BOOL=	ENABLE_LIBVMAF
39
VMAF_CMAKE_BOOL=	ENABLE_LIBVMAF
40
40
41
DEBUG_DESC=	Enable debugging
41
DEBUG_DESC=	Enable debugging
42
HI10P_DESC=	Enable HI10P Support (64-bit only)
43
HI12P_DESC=	Enable HI12P Support (64-bit only)
44
OPTIMIZED_FLAGS_DESC=	Enable O3 optimization
42
OPTIMIZED_FLAGS_DESC=	Enable O3 optimization
45
SVTHEVC_DESC=	HEVC encoding via SVT-HEVC
43
SVTHEVC_DESC=	HEVC encoding via SVT-HEVC
46
VMAF_DESC=	Per frame and aggregate VMAF score
44
VMAF_DESC=	Per frame and aggregate VMAF score
47
45
48
USE_LDCONFIG=	yes
46
USE_LDCONFIG=	yes
49
CMAKE_ARGS=	-DENABLE_PIC=on -DENABLE_TESTS=on
47
CMAKE_ARGS=	-DENABLE_PIC=on
50
LDFLAGS_i386=	-Wl,-znotext
48
LDFLAGS_i386=	-Wl,-znotext
51
EXTRACT_AFTER_ARGS+=	--exclude compat
49
EXTRACT_AFTER_ARGS+=	--exclude compat
52
PATCH_WRKSRC=	${WRKSRC:H}
50
PATCH_WRKSRC=	${WRKSRC:H}
53
WRKSRC=		${WRKDIR}/${PORTNAME}_${PORTVERSION}/source
51
WRKSRC=		${WRKDIR}/${PORTNAME}_${PORTVERSION}/source
54
52
53
.include <bsd.port.options.mk>
54
55
.if ${ARCH} == "aarch64" || "amd64"
56
do-build:
57
	cd ${WRKSRC}/.. && $(MKDIR) 12bit 10bit && cd 12bit && \
58
	$(CMAKE_BIN) ../source ${CMAKE_ARGS} \
59
		-DHIGH_BIT_DEPTH=true -DMAIN12=true \
60
		-DEXPORT_C_API=false -DENABLE_CLI=false \
61
		-DENABLE_SHARED=false && \
62
	${MAKE_CMD} ${MAKE_ARGS} && \
63
	cd ../10bit && \
64
	$(CMAKE_BIN) ../source ${CMAKE_ARGS} \
65
		-DHIGH_BIT_DEPTH=true -DEXPORT_C_API=false \
66
		-DENABLE_CLI=false -DENABLE_SHARED=false && \
67
	${MAKE_CMD} ${MAKE_ARGS} && \
68
	cd ../source && \
69
	$(LN) -s ../12bit/libx265.a libx265_main12.a && \
70
	$(LN) -s ../10bit/libx265.a libx265_main10.a && \
71
	$(CMAKE_BIN) ${CMAKE_ARGS} \
72
		-DENABLE_SHARED=true \
73
		-DENABLE_HDR10_PLUS=true \
74
		-DEXTRA_LIB='x265_main10.a;x265_main12.a' \
75
		-DEXTRA_LINK_FLAGS='-L.' \
76
		-DLINKED_10BIT=true -DLINKED_12BIT=true -DENABLE_TESTS=on && \
77
	${MAKE_CMD} ${MAKE_ARGS} && \
78
	$(MV) libx265.a libx265_main.a && \
79
	libtool --mode=link $(CC) -static -o libx265.a libx265_main.a libx265_main10.a libx265_main12.a
80
81
.else
82
	do-build:
83
	cd ${WRKSRC} && \
84
	$(CMAKE_BIN) ${CMAKE_ARGS} -DENABLE_TESTS=on && \
85
	${MAKE_CMD} ${MAKE_ARGS}
86
87
.endif
88
89
do-install:
90
	${INSTALL_PROGRAM} ${WRKSRC}/x265 ${STAGEDIR}${PREFIX}/bin
91
	${INSTALL_DATA} ${WRKSRC}/x265.h ${STAGEDIR}${PREFIX}/include
92
	${INSTALL_DATA} ${WRKSRC}/x265_config.h ${STAGEDIR}${PREFIX}/include
93
	${INSTALL_DATA} ${WRKSRC}/libx265.a ${STAGEDIR}${PREFIX}/lib
94
	${INSTALL_LIB} ${WRKSRC}/libx265.so ${STAGEDIR}${PREFIX}/lib
95
	${RLN} ${STAGEDIR}${PREFIX}/lib/libx265.so ${STAGEDIR}${PREFIX}/lib/libx265.so.179
96
	${INSTALL_DATA} ${WRKSRC}/x265.pc ${STAGEDIR}${PREFIX}/libdata/pkgconfig/x265.pc
97
55
do-test:
98
do-test:
56
	${WRKSRC}/test/TestBench
99
	${WRKSRC}/test/TestBench
57
100
58
.include <bsd.port.mk>
101
.include <bsd.port.mk>

Return to bug 238773