View | Details | Raw Unified | Return to bug 242829
Collapse All | Expand All

(-)b/multimedia/ffmpeg/Makefile (-1 / +5 lines)
Lines 1-654 Link Here
1
# Created by: Martin Matuska <mm@FreeBSD.org>
1
# Created by: Martin Matuska <mm@FreeBSD.org>
2
# $FreeBSD$
2
# $FreeBSD$
3
3
4
PORTNAME=	ffmpeg
4
PORTNAME=	ffmpeg
5
PORTVERSION=	4.2.1
5
PORTVERSION=	4.2.1
6
PORTREVISION=	21
6
PORTREVISION=	21
7
PORTEPOCH=	1
7
PORTEPOCH=	1
8
CATEGORIES=	multimedia audio net
8
CATEGORIES=	multimedia audio net
9
MASTER_SITES=	https://ffmpeg.org/releases/
9
MASTER_SITES=	https://ffmpeg.org/releases/
10
10
11
MAINTAINER=	multimedia@FreeBSD.org
11
MAINTAINER=	multimedia@FreeBSD.org
12
COMMENT=	Realtime audio/video encoder/converter and streaming server
12
COMMENT=	Realtime audio/video encoder/converter and streaming server
13
13
14
LICENSE=	GPLv2+ LGPL21+
14
LICENSE=	GPLv2+ LGPL21+
15
LICENSE_COMB=	multi
15
LICENSE_COMB=	multi
16
16
17
BUILD_DEPENDS=	${BUILD_DEPENDS_${ARCH}}
17
BUILD_DEPENDS=	${BUILD_DEPENDS_${ARCH}}
18
BUILD_DEPENDS_aarch64=	as:devel/binutils
18
BUILD_DEPENDS_aarch64=	as:devel/binutils
19
BUILD_DEPENDS_amd64=	nasm:devel/nasm
19
BUILD_DEPENDS_amd64=	nasm:devel/nasm
20
BUILD_DEPENDS_armv6=	as:devel/binutils
20
BUILD_DEPENDS_armv6=	as:devel/binutils
21
BUILD_DEPENDS_armv7=	as:devel/binutils
21
BUILD_DEPENDS_armv7=	as:devel/binutils
22
BUILD_DEPENDS_i386=	nasm:devel/nasm
22
BUILD_DEPENDS_i386=	nasm:devel/nasm
23
BUILD_DEPENDS_powerpc64=as:devel/binutils
23
BUILD_DEPENDS_powerpc64=as:devel/binutils
24
BUILD_DEPENDS_powerpc=	as:devel/binutils
24
BUILD_DEPENDS_powerpc=	as:devel/binutils
25
25
26
HAS_CONFIGURE=	yes
26
HAS_CONFIGURE=	yes
27
CONFIGURE_LOG=	ffbuild/config.log
27
CONFIGURE_LOG=	ffbuild/config.log
28
USES=		compiler:c11 cpe gmake localbase:ldflags perl5 \
28
USES=		compiler:c11 cpe gmake localbase:ldflags perl5 \
29
		pkgconfig shebangfix tar:xz
29
		pkgconfig shebangfix tar:xz
30
USE_LDCONFIG=	yes
30
USE_LDCONFIG=	yes
31
USE_PERL5=	build
31
USE_PERL5=	build
32
SHEBANG_FILES=	doc/texi2pod.pl
32
SHEBANG_FILES=	doc/texi2pod.pl
33
NOPRECIOUSMAKEVARS=	yes # ARCH
33
NOPRECIOUSMAKEVARS=	yes # ARCH
34
34
35
PORTSCOUT=	limit:^4\.
35
PORTSCOUT=	limit:^4\.
36
36
37
# Option CHROMAPRINT disabled, it cannot work and people are baffled.
37
# Option CHROMAPRINT disabled, it cannot work and people are baffled.
38
OPTIONS_DEFINE=	ALSA AMR_NB AMR_WB AOM ARIBB24 ASS BEIGNET BS2B CACA CDIO CELT \
38
OPTIONS_DEFINE=	ALSA AMR_NB AMR_WB AOM ARIBB24 ASS BEIGNET BS2B CACA CDIO CELT \
39
		CODEC2 DAV1D DAVS2 DC1394 DEBUG DOCS DRM FDK_AAC FLITE \
39
		CODEC2 DAV1D DAVS2 DC1394 DEBUG DOCS DRM FDK_AAC FLITE \
40
		FONTCONFIG FREETYPE FREI0R FRIBIDI GME GSM ICONV ILBC JACK \
40
		FONTCONFIG FREETYPE FREI0R FRIBIDI GME GSM ICONV ILBC JACK \
41
		KLVANC KVAZAAR LADSPA LAME LENSFUN LIBBLURAY LIBRSVG2 LIBXML2 \
41
		KLVANC KVAZAAR LADSPA LAME LENSFUN LIBBLURAY LIBRSVG2 LIBXML2 \
42
		LV2 MFX MODPLUG MYSOFA OPENAL OPENCL OPENCV OPENGL OPENH264 \
42
		LTO LV2 MFX MODPLUG MYSOFA OPENAL OPENCL OPENCV OPENGL OPENH264 \
43
		OPENJPEG OPENMPT OPTIMIZED_CFLAGS OPUS POCKETSPHINX PULSEAUDIO \
43
		OPENJPEG OPENMPT OPTIMIZED_CFLAGS OPUS POCKETSPHINX PULSEAUDIO \
44
		RAV1E RTCPU RUBBERBAND SDL SMB SNAPPY SNDIO SOXR SPEEX SRT SSH \
44
		RAV1E RTCPU RUBBERBAND SDL SMB SNAPPY SNDIO SOXR SPEEX SRT SSH \
45
		SVTAV1 SVTHEVC SVTVP9 TENSORFLOW TESSERACT THEORA TWOLAME V4L \
45
		SVTAV1 SVTHEVC SVTVP9 TENSORFLOW TESSERACT THEORA TWOLAME V4L \
46
		VAAPI VAPOURSYNTH VDPAU VIDSTAB VMAF VO_AMRWBENC VORBIS VPX \
46
		VAAPI VAPOURSYNTH VDPAU VIDSTAB VMAF VO_AMRWBENC VORBIS VPX \
47
		WAVPACK WEBP X264 X265 XAVS2 XCB XVID XVIDEO ZIMG ZMQ ZVBI
47
		WAVPACK WEBP X264 X265 XAVS2 XCB XVID XVIDEO ZIMG ZMQ ZVBI
48
48
49
OPTIONS_DEFAULT=	AOM DAV1D FONTCONFIG FREETYPE FREI0R GMP GNUTLS ICONV \
49
OPTIONS_DEFAULT=	AOM DAV1D FONTCONFIG FREETYPE FREI0R GMP GNUTLS ICONV \
50
			OPENCV OPTIMIZED_CFLAGS OPUS RTCPU THEORA V4L VAAPI VDPAU \
50
			OPENCV OPTIMIZED_CFLAGS OPUS RTCPU THEORA V4L VAAPI VDPAU \
51
			VORBIS VPX X264 X265 XCB XVID
51
			VORBIS VPX X264 X265 XCB XVID
52
52
53
.if !exists(${.CURDIR:H:H}/multimedia/aribb24)
53
.if !exists(${.CURDIR:H:H}/multimedia/aribb24)
54
# https://git.ffmpeg.org/gitweb/ffmpeg.git/commitdiff/100bfac6d6ec
54
# https://git.ffmpeg.org/gitweb/ffmpeg.git/commitdiff/100bfac6d6ec
55
OPTIONS_EXCLUDE+=	ARIBB24
55
OPTIONS_EXCLUDE+=	ARIBB24
56
.endif
56
.endif
57
57
58
.if !exists(${.CURDIR:H:H}/multimedia/davs2)
58
.if !exists(${.CURDIR:H:H}/multimedia/davs2)
59
# https://git.ffmpeg.org/gitweb/ffmpeg.git/commitdiff/5985a1bf7233
59
# https://git.ffmpeg.org/gitweb/ffmpeg.git/commitdiff/5985a1bf7233
60
OPTIONS_EXCLUDE+=	DAVS2
60
OPTIONS_EXCLUDE+=	DAVS2
61
.endif
61
.endif
62
62
63
.if !exists(${.CURDIR:H:H}/multimedia/xavs2)
63
.if !exists(${.CURDIR:H:H}/multimedia/xavs2)
64
# https://git.ffmpeg.org/gitweb/ffmpeg.git/commitdiff/85a921f4618
64
# https://git.ffmpeg.org/gitweb/ffmpeg.git/commitdiff/85a921f4618
65
OPTIONS_EXCLUDE+=	XAVS2
65
OPTIONS_EXCLUDE+=	XAVS2
66
.endif
66
.endif
67
67
68
.if !exists(${.CURDIR:H:H}/multimedia/klvanc)
68
.if !exists(${.CURDIR:H:H}/multimedia/klvanc)
69
# https://git.ffmpeg.org/gitweb/ffmpeg.git/commitdiff/8732dfa9954
69
# https://git.ffmpeg.org/gitweb/ffmpeg.git/commitdiff/8732dfa9954
70
OPTIONS_EXCLUDE+=	KLVANC
70
OPTIONS_EXCLUDE+=	KLVANC
71
.endif
71
.endif
72
72
73
.if !exists(${.CURDIR:H:H}/net/srt)
73
.if !exists(${.CURDIR:H:H}/net/srt)
74
# https://git.ffmpeg.org/gitweb/ffmpeg.git/commitdiff/a2fc8dbae853
74
# https://git.ffmpeg.org/gitweb/ffmpeg.git/commitdiff/a2fc8dbae853
75
OPTIONS_EXCLUDE+=	SRT
75
OPTIONS_EXCLUDE+=	SRT
76
.endif
76
.endif
77
77
78
.if !exists(${.CURDIR:H:H}/science/tensorflow)
78
.if !exists(${.CURDIR:H:H}/science/tensorflow)
79
# https://git.ffmpeg.org/gitweb/ffmpeg.git/commitdiff/d8c0bbb0aa4
79
# https://git.ffmpeg.org/gitweb/ffmpeg.git/commitdiff/d8c0bbb0aa4
80
OPTIONS_EXCLUDE+=	TENSORFLOW
80
OPTIONS_EXCLUDE+=	TENSORFLOW
81
.endif
81
.endif
82
82
83
OPTIONS_RADIO=	RTMP SSL
83
OPTIONS_RADIO=	RTMP SSL
84
OPTIONS_RADIO_RTMP=	GCRYPT GMP LIBRTMP
84
OPTIONS_RADIO_RTMP=	GCRYPT GMP LIBRTMP
85
OPTIONS_RADIO_SSL=	GNUTLS MBEDTLS OPENSSL
85
OPTIONS_RADIO_SSL=	GNUTLS MBEDTLS OPENSSL
86
OPTIONS_GROUP=	LICENSE
86
OPTIONS_GROUP=	LICENSE
87
OPTIONS_GROUP_LICENSE=	GPL3 NONFREE
87
OPTIONS_GROUP_LICENSE=	GPL3 NONFREE
88
88
89
OPTIONS_DEFINE_amd64=	MMX SSE
89
OPTIONS_DEFINE_amd64=	MMX SSE
90
OPTIONS_DEFINE_armv6=	VFP NEON
90
OPTIONS_DEFINE_armv6=	VFP NEON
91
OPTIONS_DEFINE_i386=	MMX SSE
91
OPTIONS_DEFINE_i386=	MMX SSE
92
OPTIONS_DEFAULT_amd64=	MMX SSE
92
OPTIONS_DEFAULT_amd64=	MMX SSE
93
OPTIONS_DEFAULT_i386=	MMX SSE
93
OPTIONS_DEFAULT_i386=	MMX SSE
94
94
95
ASS_DESC=	Subtitles rendering via libass
95
ASS_DESC=	Subtitles rendering via libass
96
AOM_DESC=	AV1 video encoding/decoding via libaom
96
AOM_DESC=	AV1 video encoding/decoding via libaom
97
ARIBB24_DESC=	ARIB text and caption decoding via libaribb24
97
ARIBB24_DESC=	ARIB text and caption decoding via libaribb24
98
BEIGNET_DESC=	DRM/VAAPI to OpenCL mapping for i965 + Beignet
98
BEIGNET_DESC=	DRM/VAAPI to OpenCL mapping for i965 + Beignet
99
BS2B_DESC=	Bauer Stereophonic-to-Binaural filter
99
BS2B_DESC=	Bauer Stereophonic-to-Binaural filter
100
CHROMAPRINT_DESC=	Audio fingerprinting with chromaprint
100
CHROMAPRINT_DESC=	Audio fingerprinting with chromaprint
101
CODEC2_DESC=	Codec 2 audio encoding/decoding via libcodec2
101
CODEC2_DESC=	Codec 2 audio encoding/decoding via libcodec2
102
DAV1D_DESC=	AV1 video decoding via libdav1d
102
DAV1D_DESC=	AV1 video decoding via libdav1d
103
DAVS2_DESC=	AVS2 decoding via libdavs2
103
DAVS2_DESC=	AVS2 decoding via libdavs2
104
DC1394_DESC=	IIDC-1394 grabbing using libdc1394
104
DC1394_DESC=	IIDC-1394 grabbing using libdc1394
105
DRM_DESC=	KMS grabbing using libdrm
105
DRM_DESC=	KMS grabbing using libdrm
106
FDK_AAC_DESC=	AAC audio encoding via Fraunhofer FDK
106
FDK_AAC_DESC=	AAC audio encoding via Fraunhofer FDK
107
FLITE_DESC=	Voice synthesis support via libflite
107
FLITE_DESC=	Voice synthesis support via libflite
108
GME_DESC=	Game Music Emu demuxer
108
GME_DESC=	Game Music Emu demuxer
109
GPL3_DESC=	Allow (L)GPL version 3 code(cs)
109
GPL3_DESC=	Allow (L)GPL version 3 code(cs)
110
ILBC_DESC=	Internet Low Bit Rate codec
110
ILBC_DESC=	Internet Low Bit Rate codec
111
KLVANC_DESC=	Kernel Labs VANC processing
111
KLVANC_DESC=	Kernel Labs VANC processing
112
KVAZAAR_DESC=	H.265 video codec support via Kvazaar
112
KVAZAAR_DESC=	H.265 video codec support via Kvazaar
113
LICENSE_DESC=	Licensing options
113
LICENSE_DESC=	Licensing options
114
LTO_DESC=	Use Link-Time Optimization
114
LV2_DESC=	LV2 audio filtering
115
LV2_DESC=	LV2 audio filtering
115
MFX_DESC=	Intel MediaSDK (aka Quick Sync Video)
116
MFX_DESC=	Intel MediaSDK (aka Quick Sync Video)
116
MYSOFA_DESC=	SOFAlizer binaural filter
117
MYSOFA_DESC=	SOFAlizer binaural filter
117
NEON_DESC=	Media Processing Engine instructions
118
NEON_DESC=	Media Processing Engine instructions
118
NONFREE_DESC=	Allow use of nonfree code
119
NONFREE_DESC=	Allow use of nonfree code
119
OPENMPT_DESC=	Decoding tracked files via libopenmpt
120
OPENMPT_DESC=	Decoding tracked files via libopenmpt
120
OPENH264_DESC=	H.264 video codec support via OpenH264
121
OPENH264_DESC=	H.264 video codec support via OpenH264
121
POCKETSPHINX_DESC=	Automatic Speech Recognition via PocketSphinx
122
POCKETSPHINX_DESC=	Automatic Speech Recognition via PocketSphinx
122
RAV1E_DESC=	AV1 encoding via librav1e
123
RAV1E_DESC=	AV1 encoding via librav1e
123
RUBBERBAND_DESC=Time-stretching and pitch-shifting with librubberband
124
RUBBERBAND_DESC=Time-stretching and pitch-shifting with librubberband
124
RTCPU_DESC=	Detect CPU capabilities at runtime
125
RTCPU_DESC=	Detect CPU capabilities at runtime
125
RTMP_DESC=	RTMP(T)E protocol support
126
RTMP_DESC=	RTMP(T)E protocol support
126
SRT_DESC=	Haivision SRT protocol via libsrt
127
SRT_DESC=	Haivision SRT protocol via libsrt
127
SVTAV1_DESC=	AV1 encoding via SVT-AV1
128
SVTAV1_DESC=	AV1 encoding via SVT-AV1
128
SVTHEVC_DESC=	HEVC encoding via SVT-HEVC
129
SVTHEVC_DESC=	HEVC encoding via SVT-HEVC
129
SVTVP9_DESC=	VP9 encoding via SVT-VP9
130
SVTVP9_DESC=	VP9 encoding via SVT-VP9
130
LIBRTMP_DESC=	${RTMP_DESC} via librtmp
131
LIBRTMP_DESC=	${RTMP_DESC} via librtmp
131
TENSORFLOW_DESC=TensorFlow as a DNN module backend for DNN based filters like sr
132
TENSORFLOW_DESC=TensorFlow as a DNN module backend for DNN based filters like sr
132
TESSERACT_DESC=	Optical Character Recognition via Tesseract
133
TESSERACT_DESC=	Optical Character Recognition via Tesseract
133
VAPOURSYNTH_DESC=	VapourSynth demuxer
134
VAPOURSYNTH_DESC=	VapourSynth demuxer
134
VFP_DESC=	Vector Floating Point instructions
135
VFP_DESC=	Vector Floating Point instructions
135
VIDSTAB_DESC=	Video stabilization filter
136
VIDSTAB_DESC=	Video stabilization filter
136
VMAF_DESC=	VMAF filter via libvmaf
137
VMAF_DESC=	VMAF filter via libvmaf
137
XAVS2_DESC=	AVS2 encoding via libxavs2
138
XAVS2_DESC=	AVS2 encoding via libxavs2
138
XCB_DESC=	X11 grabbing using XCB
139
XCB_DESC=	X11 grabbing using XCB
139
ZIMG_DESC=	"z" library video scaling filter
140
ZIMG_DESC=	"z" library video scaling filter
140
ZMQ_DESC=	Message passing via libzmq${ZMQ_VERSION}
141
ZMQ_DESC=	Message passing via libzmq${ZMQ_VERSION}
141
ZVBI_DESC=	Teletext support via libzvbi
142
ZVBI_DESC=	Teletext support via libzvbi
142
143
143
OPTIONS_SUB=	yes
144
OPTIONS_SUB=	yes
144
145
145
# alsa
146
# alsa
146
ALSA_LIB_DEPENDS=	libasound.so:audio/alsa-lib
147
ALSA_LIB_DEPENDS=	libasound.so:audio/alsa-lib
147
ALSA_CONFIGURE_ENABLE=	alsa
148
ALSA_CONFIGURE_ENABLE=	alsa
148
149
149
# Opencore AMR NB
150
# Opencore AMR NB
150
AMR_NB_LIB_DEPENDS=	libopencore-amrnb.so:audio/opencore-amr
151
AMR_NB_LIB_DEPENDS=	libopencore-amrnb.so:audio/opencore-amr
151
AMR_NB_CONFIGURE_ENABLE=	libopencore-amrnb
152
AMR_NB_CONFIGURE_ENABLE=	libopencore-amrnb
152
AMR_NB_IMPLIES=		GPL3
153
AMR_NB_IMPLIES=		GPL3
153
154
154
# Opencore AMR WB
155
# Opencore AMR WB
155
AMR_WB_LIB_DEPENDS=	libopencore-amrwb.so:audio/opencore-amr
156
AMR_WB_LIB_DEPENDS=	libopencore-amrwb.so:audio/opencore-amr
156
AMR_WB_CONFIGURE_ENABLE=	libopencore-amrwb
157
AMR_WB_CONFIGURE_ENABLE=	libopencore-amrwb
157
AMR_WB_IMPLIES=		GPL3
158
AMR_WB_IMPLIES=		GPL3
158
159
159
# aom
160
# aom
160
AOM_LIB_DEPENDS=	libaom.so:multimedia/aom
161
AOM_LIB_DEPENDS=	libaom.so:multimedia/aom
161
AOM_CONFIGURE_ENABLE=	libaom
162
AOM_CONFIGURE_ENABLE=	libaom
162
163
163
# arib
164
# arib
164
ARIBB24_LIB_DEPENDS=	libaribb24.so:multimedia/aribb24
165
ARIBB24_LIB_DEPENDS=	libaribb24.so:multimedia/aribb24
165
ARIBB24_CONFIGURE_ENABLE=	libaribb24
166
ARIBB24_CONFIGURE_ENABLE=	libaribb24
166
167
167
# ass
168
# ass
168
ASS_LIB_DEPENDS=	libass.so:multimedia/libass
169
ASS_LIB_DEPENDS=	libass.so:multimedia/libass
169
ASS_CONFIGURE_ENABLE=	libass
170
ASS_CONFIGURE_ENABLE=	libass
170
171
171
# beignet
172
# beignet
172
BEIGNET_BUILD_DEPENDS=	${LOCALBASE}/include/CL/cl_intel.h:lang/beignet
173
BEIGNET_BUILD_DEPENDS=	${LOCALBASE}/include/CL/cl_intel.h:lang/beignet
173
BEIGNET_IMPLIES=	DRM OPENCL VAAPI
174
BEIGNET_IMPLIES=	DRM OPENCL VAAPI
174
175
175
# bs2b
176
# bs2b
176
BS2B_LIB_DEPENDS=	libbs2b.so:audio/libbs2b
177
BS2B_LIB_DEPENDS=	libbs2b.so:audio/libbs2b
177
BS2B_CONFIGURE_ENABLE=	libbs2b
178
BS2B_CONFIGURE_ENABLE=	libbs2b
178
179
179
# caca
180
# caca
180
CACA_LIB_DEPENDS=	libcaca.so:graphics/libcaca
181
CACA_LIB_DEPENDS=	libcaca.so:graphics/libcaca
181
CACA_CONFIGURE_ENABLE=	libcaca
182
CACA_CONFIGURE_ENABLE=	libcaca
182
183
183
# cdio
184
# cdio
184
CDIO_LIB_DEPENDS=	libcdio_paranoia.so:sysutils/libcdio-paranoia
185
CDIO_LIB_DEPENDS=	libcdio_paranoia.so:sysutils/libcdio-paranoia
185
CDIO_CONFIGURE_ENABLE=	libcdio
186
CDIO_CONFIGURE_ENABLE=	libcdio
186
187
187
# celt
188
# celt
188
CELT_LIB_DEPENDS=	libcelt0.so:audio/celt
189
CELT_LIB_DEPENDS=	libcelt0.so:audio/celt
189
CELT_CONFIGURE_ENABLE=	libcelt
190
CELT_CONFIGURE_ENABLE=	libcelt
190
191
191
# chromaprint
192
# chromaprint
192
CHROMAPRINT_BROKEN=		Dependency loop
193
CHROMAPRINT_BROKEN=		Dependency loop
193
CHROMAPRINT_LIB_DEPENDS=	libchromaprint.so:audio/chromaprint
194
CHROMAPRINT_LIB_DEPENDS=	libchromaprint.so:audio/chromaprint
194
CHROMAPRINT_CONFIGURE_ENABLE=	chromaprint
195
CHROMAPRINT_CONFIGURE_ENABLE=	chromaprint
195
196
196
# codec2
197
# codec2
197
CODEC2_LIB_DEPENDS=	libcodec2.so:audio/codec2
198
CODEC2_LIB_DEPENDS=	libcodec2.so:audio/codec2
198
CODEC2_CONFIGURE_ENABLE=	libcodec2
199
CODEC2_CONFIGURE_ENABLE=	libcodec2
199
200
200
# dav1d
201
# dav1d
201
DAV1D_LIB_DEPENDS=	libdav1d.so:multimedia/dav1d
202
DAV1D_LIB_DEPENDS=	libdav1d.so:multimedia/dav1d
202
DAV1D_CONFIGURE_ENABLE=	libdav1d
203
DAV1D_CONFIGURE_ENABLE=	libdav1d
203
204
204
# davs2
205
# davs2
205
DAVS2_LIB_DEPENDS=	libdavs2.so:multimedia/davs2
206
DAVS2_LIB_DEPENDS=	libdavs2.so:multimedia/davs2
206
DAVS2_CONFIGURE_ENABLE=	libdavs2
207
DAVS2_CONFIGURE_ENABLE=	libdavs2
207
208
208
# dc1394
209
# dc1394
209
DC1394_LIB_DEPENDS=	libdc1394.so:multimedia/libdc1394
210
DC1394_LIB_DEPENDS=	libdc1394.so:multimedia/libdc1394
210
DC1394_CONFIGURE_ENABLE=	libdc1394
211
DC1394_CONFIGURE_ENABLE=	libdc1394
211
212
212
# debugging
213
# debugging
213
DEBUG_CONFIGURE_ON=	--disable-stripping
214
DEBUG_CONFIGURE_ON=	--disable-stripping
214
DEBUG_CONFIGURE_OFF=	--disable-debug
215
DEBUG_CONFIGURE_OFF=	--disable-debug
215
216
216
# docs
217
# docs
217
DOCS_BUILD_DEPENDS=	texi2html:textproc/texi2html
218
DOCS_BUILD_DEPENDS=	texi2html:textproc/texi2html
218
DOCS_CONFIGURE_ENABLE=	htmlpages
219
DOCS_CONFIGURE_ENABLE=	htmlpages
219
220
220
# drm
221
# drm
221
DRM_LIB_DEPENDS=	libdrm.so:graphics/libdrm
222
DRM_LIB_DEPENDS=	libdrm.so:graphics/libdrm
222
DRM_CONFIGURE_ENABLE=	libdrm
223
DRM_CONFIGURE_ENABLE=	libdrm
223
224
224
# fdk_aac
225
# fdk_aac
225
FDK_AAC_LIB_DEPENDS=	libfdk-aac.so:audio/fdk-aac
226
FDK_AAC_LIB_DEPENDS=	libfdk-aac.so:audio/fdk-aac
226
FDK_AAC_CONFIGURE_ENABLE=	libfdk-aac
227
FDK_AAC_CONFIGURE_ENABLE=	libfdk-aac
227
FDK_AAC_IMPLIES=	NONFREE
228
FDK_AAC_IMPLIES=	NONFREE
228
229
229
# flite
230
# flite
230
FLITE_LIB_DEPENDS=	libflite.so:audio/flite
231
FLITE_LIB_DEPENDS=	libflite.so:audio/flite
231
FLITE_CONFIGURE_ENABLE=	libflite
232
FLITE_CONFIGURE_ENABLE=	libflite
232
.if exists(/usr/bin/ld.lld) && (${/usr/bin/ld:L:tA} != /usr/bin/ld.lld)
233
.if exists(/usr/bin/ld.lld) && (${/usr/bin/ld:L:tA} != /usr/bin/ld.lld)
233
FLITE_LDFLAGS=		-fuse-ld=lld
234
FLITE_LDFLAGS=		-fuse-ld=lld
234
.endif
235
.endif
235
236
236
# fontconfig
237
# fontconfig
237
FONTCONFIG_LIB_DEPENDS=	libfontconfig.so:x11-fonts/fontconfig
238
FONTCONFIG_LIB_DEPENDS=	libfontconfig.so:x11-fonts/fontconfig
238
FONTCONFIG_CONFIGURE_ENABLE=	fontconfig
239
FONTCONFIG_CONFIGURE_ENABLE=	fontconfig
239
240
240
# freetype
241
# freetype
241
FREETYPE_LIB_DEPENDS=	libfreetype.so:print/freetype2
242
FREETYPE_LIB_DEPENDS=	libfreetype.so:print/freetype2
242
FREETYPE_CONFIGURE_ENABLE=	libfreetype
243
FREETYPE_CONFIGURE_ENABLE=	libfreetype
243
244
244
# frei0r
245
# frei0r
245
FREI0R_BUILD_DEPENDS=	${LOCALBASE}/include/frei0r.h:graphics/frei0r
246
FREI0R_BUILD_DEPENDS=	${LOCALBASE}/include/frei0r.h:graphics/frei0r
246
FREI0R_CONFIGURE_ENABLE=	frei0r
247
FREI0R_CONFIGURE_ENABLE=	frei0r
247
248
248
# fribidi
249
# fribidi
249
FRIBIDI_LIB_DEPENDS=	libfribidi.so:converters/fribidi
250
FRIBIDI_LIB_DEPENDS=	libfribidi.so:converters/fribidi
250
FRIBIDI_CONFIGURE_ENABLE=	libfribidi
251
FRIBIDI_CONFIGURE_ENABLE=	libfribidi
251
252
252
# gcrypt
253
# gcrypt
253
GCRYPT_LIB_DEPENDS=	libgcrypt.so:security/libgcrypt
254
GCRYPT_LIB_DEPENDS=	libgcrypt.so:security/libgcrypt
254
GCRYPT_CONFIGURE_ENABLE=	gcrypt
255
GCRYPT_CONFIGURE_ENABLE=	gcrypt
255
256
256
# gnutls
257
# gnutls
257
GNUTLS_LIB_DEPENDS=	libgnutls.so:security/gnutls
258
GNUTLS_LIB_DEPENDS=	libgnutls.so:security/gnutls
258
GNUTLS_CONFIGURE_ENABLE=	gnutls
259
GNUTLS_CONFIGURE_ENABLE=	gnutls
259
260
260
# gme
261
# gme
261
GME_LIB_DEPENDS=	libgme.so:audio/libgme
262
GME_LIB_DEPENDS=	libgme.so:audio/libgme
262
GME_CONFIGURE_ENABLE=	libgme
263
GME_CONFIGURE_ENABLE=	libgme
263
264
264
# gmp
265
# gmp
265
GMP_LIB_DEPENDS=	libgmp.so:math/gmp
266
GMP_LIB_DEPENDS=	libgmp.so:math/gmp
266
GMP_CONFIGURE_ENABLE=	gmp
267
GMP_CONFIGURE_ENABLE=	gmp
267
GMP_IMPLIES=		GPL3
268
GMP_IMPLIES=		GPL3
268
269
269
# gsm
270
# gsm
270
GSM_LIB_DEPENDS=	libgsm.so:audio/gsm
271
GSM_LIB_DEPENDS=	libgsm.so:audio/gsm
271
GSM_CONFIGURE_ENABLE=	libgsm
272
GSM_CONFIGURE_ENABLE=	libgsm
272
273
273
# iconv
274
# iconv
274
ICONV_USES=	iconv
275
ICONV_USES=	iconv
275
ICONV_CONFIGURE_ENABLE=	iconv
276
ICONV_CONFIGURE_ENABLE=	iconv
276
277
277
# ilbc
278
# ilbc
278
ILBC_LIB_DEPENDS=	libilbc.so:net/libilbc
279
ILBC_LIB_DEPENDS=	libilbc.so:net/libilbc
279
ILBC_CONFIGURE_ENABLE=	libilbc
280
ILBC_CONFIGURE_ENABLE=	libilbc
280
281
281
# jack
282
# jack
282
JACK_LIB_DEPENDS=	libjack.so:audio/jack
283
JACK_LIB_DEPENDS=	libjack.so:audio/jack
283
JACK_CONFIGURE_ENABLE=	libjack
284
JACK_CONFIGURE_ENABLE=	libjack
284
285
285
# klvanc
286
# klvanc
286
KLVANC_LIB_DEPENDS=	libklvanc.so:multimedia/libklvanc
287
KLVANC_LIB_DEPENDS=	libklvanc.so:multimedia/libklvanc
287
KLVANC_CONFIGURE_ENABLE=	libklvanc
288
KLVANC_CONFIGURE_ENABLE=	libklvanc
288
289
289
# kvazaar
290
# kvazaar
290
KVAZAAR_LIB_DEPENDS=	libkvazaar.so:multimedia/kvazaar
291
KVAZAAR_LIB_DEPENDS=	libkvazaar.so:multimedia/kvazaar
291
KVAZAAR_CONFIGURE_ENABLE=	libkvazaar
292
KVAZAAR_CONFIGURE_ENABLE=	libkvazaar
292
293
293
# ladspa
294
# ladspa
294
LADSPA_BUILD_DEPENDS=	${LOCALBASE}/include/ladspa.h:audio/ladspa
295
LADSPA_BUILD_DEPENDS=	${LOCALBASE}/include/ladspa.h:audio/ladspa
295
LADSPA_RUN_DEPENDS=	${LOCALBASE}/lib/ladspa/amp.so:audio/ladspa
296
LADSPA_RUN_DEPENDS=	${LOCALBASE}/lib/ladspa/amp.so:audio/ladspa
296
LADSPA_CONFIGURE_ENABLE=	ladspa
297
LADSPA_CONFIGURE_ENABLE=	ladspa
297
298
298
# lame
299
# lame
299
LAME_LIB_DEPENDS=	libmp3lame.so:audio/lame
300
LAME_LIB_DEPENDS=	libmp3lame.so:audio/lame
300
LAME_CONFIGURE_ENABLE=	libmp3lame
301
LAME_CONFIGURE_ENABLE=	libmp3lame
301
302
302
# lensfun
303
# lensfun
303
LENSFUN_LIB_DEPENDS=	liblensfun.so:graphics/lensfun
304
LENSFUN_LIB_DEPENDS=	liblensfun.so:graphics/lensfun
304
LENSFUN_CONFIGURE_ENABLE=	liblensfun
305
LENSFUN_CONFIGURE_ENABLE=	liblensfun
305
306
306
# libbluray
307
# libbluray
307
LIBBLURAY_LIB_DEPENDS=	libbluray.so:multimedia/libbluray
308
LIBBLURAY_LIB_DEPENDS=	libbluray.so:multimedia/libbluray
308
LIBBLURAY_CONFIGURE_ENABLE=	libbluray
309
LIBBLURAY_CONFIGURE_ENABLE=	libbluray
309
310
310
# librsvg
311
# librsvg
311
LIBRSVG2_USES=			gnome
312
LIBRSVG2_USES=			gnome
312
LIBRSVG2_USE=			GNOME=librsvg2
313
LIBRSVG2_USE=			GNOME=librsvg2
313
LIBRSVG2_CONFIGURE_ENABLE=	librsvg
314
LIBRSVG2_CONFIGURE_ENABLE=	librsvg
314
315
315
# libxml
316
# libxml
316
LIBXML2_LIB_DEPENDS=	libxml2.so:textproc/libxml2
317
LIBXML2_LIB_DEPENDS=	libxml2.so:textproc/libxml2
317
LIBXML2_CONFIGURE_ENABLE=	libxml2
318
LIBXML2_CONFIGURE_ENABLE=	libxml2
318
319
320
# lto
321
LTO_CONFIGURE_ENABLE=	lto
322
319
# lv2
323
# lv2
320
LV2_BUILD_DEPENDS=	lv2>0:audio/lv2
324
LV2_BUILD_DEPENDS=	lv2>0:audio/lv2
321
LV2_LIB_DEPENDS=	liblilv-0.so:audio/lilv
325
LV2_LIB_DEPENDS=	liblilv-0.so:audio/lilv
322
LV2_CONFIGURE_ENABLE=	lv2
326
LV2_CONFIGURE_ENABLE=	lv2
323
327
324
# libv4l
328
# libv4l
325
V4L_BUILD_DEPENDS=	v4l_compat>0:multimedia/v4l_compat
329
V4L_BUILD_DEPENDS=	v4l_compat>0:multimedia/v4l_compat
326
V4L_LIB_DEPENDS=	libv4l2.so:multimedia/libv4l
330
V4L_LIB_DEPENDS=	libv4l2.so:multimedia/libv4l
327
V4L_CONFIGURE_ENABLE=	libv4l2
331
V4L_CONFIGURE_ENABLE=	libv4l2
328
V4L_CONFIGURE_OFF=		--disable-indev=v4l2 \
332
V4L_CONFIGURE_OFF=		--disable-indev=v4l2 \
329
				--disable-outdev=v4l2
333
				--disable-outdev=v4l2
330
334
331
# mbedtls
335
# mbedtls
332
MBEDTLS_LIB_DEPENDS=	libmbedtls.so:security/mbedtls
336
MBEDTLS_LIB_DEPENDS=	libmbedtls.so:security/mbedtls
333
MBEDTLS_CONFIGURE_ENABLE=	mbedtls
337
MBEDTLS_CONFIGURE_ENABLE=	mbedtls
334
338
335
# mfx
339
# mfx
336
MFX_LIB_DEPENDS=	libmfx.so:multimedia/intel-media-sdk
340
MFX_LIB_DEPENDS=	libmfx.so:multimedia/intel-media-sdk
337
MFX_CONFIGURE_ENABLE=	libmfx
341
MFX_CONFIGURE_ENABLE=	libmfx
338
342
339
# mmx support
343
# mmx support
340
MMX_CONFIGURE_ENABLE=	mmx
344
MMX_CONFIGURE_ENABLE=	mmx
341
345
342
# modplug
346
# modplug
343
MODPLUG_LIB_DEPENDS=	libmodplug.so:audio/libmodplug
347
MODPLUG_LIB_DEPENDS=	libmodplug.so:audio/libmodplug
344
MODPLUG_CONFIGURE_ENABLE=	libmodplug
348
MODPLUG_CONFIGURE_ENABLE=	libmodplug
345
349
346
# mysofa
350
# mysofa
347
MYSOFA_LIB_DEPENDS=	libmysofa.so:audio/libmysofa
351
MYSOFA_LIB_DEPENDS=	libmysofa.so:audio/libmysofa
348
MYSOFA_CONFIGURE_ENABLE=	libmysofa
352
MYSOFA_CONFIGURE_ENABLE=	libmysofa
349
353
350
# OpenAL
354
# OpenAL
351
OPENAL_LIB_DEPENDS=	libopenal.so:audio/openal-soft
355
OPENAL_LIB_DEPENDS=	libopenal.so:audio/openal-soft
352
OPENAL_CONFIGURE_ENABLE=	openal
356
OPENAL_CONFIGURE_ENABLE=	openal
353
357
354
# opencl
358
# opencl
355
OPENCL_BUILD_DEPENDS=	${LOCALBASE}/include/CL/opencl.h:devel/opencl
359
OPENCL_BUILD_DEPENDS=	${LOCALBASE}/include/CL/opencl.h:devel/opencl
356
OPENCL_LIB_DEPENDS=	libOpenCL.so:devel/ocl-icd
360
OPENCL_LIB_DEPENDS=	libOpenCL.so:devel/ocl-icd
357
OPENCL_CONFIGURE_ENABLE=	opencl
361
OPENCL_CONFIGURE_ENABLE=	opencl
358
362
359
# opencv
363
# opencv
360
OPENCV_LIB_DEPENDS=	libopencv_imgproc.so:graphics/opencv-core
364
OPENCV_LIB_DEPENDS=	libopencv_imgproc.so:graphics/opencv-core
361
OPENCV_CONFIGURE_ENABLE=	libopencv
365
OPENCV_CONFIGURE_ENABLE=	libopencv
362
366
363
# opengl
367
# opengl
364
OPENGL_USES=		gl
368
OPENGL_USES=		gl
365
OPENGL_USE=		GL=gl
369
OPENGL_USE=		GL=gl
366
OPENGL_CONFIGURE_ENABLE=	opengl
370
OPENGL_CONFIGURE_ENABLE=	opengl
367
371
368
# openh264
372
# openh264
369
OPENH264_LIB_DEPENDS=	libopenh264.so:multimedia/openh264
373
OPENH264_LIB_DEPENDS=	libopenh264.so:multimedia/openh264
370
OPENH264_CONFIGURE_ENABLE=	libopenh264
374
OPENH264_CONFIGURE_ENABLE=	libopenh264
371
375
372
# openjpeg
376
# openjpeg
373
OPENJPEG_LIB_DEPENDS=	libopenjp2.so:graphics/openjpeg
377
OPENJPEG_LIB_DEPENDS=	libopenjp2.so:graphics/openjpeg
374
OPENJPEG_CONFIGURE_ENABLE=	libopenjpeg
378
OPENJPEG_CONFIGURE_ENABLE=	libopenjpeg
375
379
376
# openmpt
380
# openmpt
377
OPENMPT_LIB_DEPENDS=	libopenmpt.so:audio/libopenmpt
381
OPENMPT_LIB_DEPENDS=	libopenmpt.so:audio/libopenmpt
378
OPENMPT_CONFIGURE_ENABLE=	libopenmpt
382
OPENMPT_CONFIGURE_ENABLE=	libopenmpt
379
383
380
# openssl/libtls
384
# openssl/libtls
381
OPENSSL_USES=		ssl
385
OPENSSL_USES=		ssl
382
OPENSSL_CONFIGURE_ENABLE=	${"${SSL_DEFAULT:Mlibressl*}"!="":?libtls:openssl}
386
OPENSSL_CONFIGURE_ENABLE=	${"${SSL_DEFAULT:Mlibressl*}"!="":?libtls:openssl}
383
OPENSSL_IMPLIES=	NONFREE
387
OPENSSL_IMPLIES=	NONFREE
384
388
385
# optimizations
389
# optimizations
386
OPTIMIZED_CFLAGS_CONFIGURE_ENABLE=	optimizations
390
OPTIMIZED_CFLAGS_CONFIGURE_ENABLE=	optimizations
387
391
388
# opus
392
# opus
389
OPUS_LIB_DEPENDS=	libopus.so:audio/opus
393
OPUS_LIB_DEPENDS=	libopus.so:audio/opus
390
OPUS_CONFIGURE_ENABLE=	libopus
394
OPUS_CONFIGURE_ENABLE=	libopus
391
395
392
# pocketsphinx
396
# pocketsphinx
393
POCKETSPHINX_LIB_DEPENDS=	libpocketsphinx.so:audio/pocketsphinx
397
POCKETSPHINX_LIB_DEPENDS=	libpocketsphinx.so:audio/pocketsphinx
394
POCKETSPHINX_CONFIGURE_ENABLE=	pocketsphinx
398
POCKETSPHINX_CONFIGURE_ENABLE=	pocketsphinx
395
POCKETSPHINX_BROKEN=	pocketsphinx < 5prealpha is not supported
399
POCKETSPHINX_BROKEN=	pocketsphinx < 5prealpha is not supported
396
400
397
# pulseaudio
401
# pulseaudio
398
PULSEAUDIO_LIB_DEPENDS=	libpulse.so:audio/pulseaudio
402
PULSEAUDIO_LIB_DEPENDS=	libpulse.so:audio/pulseaudio
399
PULSEAUDIO_CONFIGURE_ENABLE=	libpulse
403
PULSEAUDIO_CONFIGURE_ENABLE=	libpulse
400
404
401
# rav1e
405
# rav1e
402
RAV1E_LIB_DEPENDS=	librav1e.so:multimedia/librav1e
406
RAV1E_LIB_DEPENDS=	librav1e.so:multimedia/librav1e
403
RAV1E_CONFIGURE_ENABLE=	librav1e
407
RAV1E_CONFIGURE_ENABLE=	librav1e
404
408
405
# rubberband
409
# rubberband
406
RUBBERBAND_LIB_DEPENDS=	librubberband.so:audio/rubberband
410
RUBBERBAND_LIB_DEPENDS=	librubberband.so:audio/rubberband
407
RUBBERBAND_CONFIGURE_ENABLE=	librubberband
411
RUBBERBAND_CONFIGURE_ENABLE=	librubberband
408
412
409
# rtcpu
413
# rtcpu
410
RTCPU_CONFIGURE_ENABLE=	runtime-cpudetect
414
RTCPU_CONFIGURE_ENABLE=	runtime-cpudetect
411
415
412
# rtmp
416
# rtmp
413
LIBRTMP_LIB_DEPENDS=	librtmp.so:multimedia/librtmp
417
LIBRTMP_LIB_DEPENDS=	librtmp.so:multimedia/librtmp
414
LIBRTMP_CONFIGURE_ENABLE=	librtmp
418
LIBRTMP_CONFIGURE_ENABLE=	librtmp
415
419
416
# sdl
420
# sdl
417
SDL_USES=		sdl
421
SDL_USES=		sdl
418
SDL_USE=		SDL=sdl2
422
SDL_USE=		SDL=sdl2
419
SDL_CONFIGURE_ENABLE=	sdl2
423
SDL_CONFIGURE_ENABLE=	sdl2
420
424
421
# smbclient
425
# smbclient
422
SMB_USES=		samba:lib
426
SMB_USES=		samba:lib
423
SMB_CONFIGURE_ENABLE=	libsmbclient
427
SMB_CONFIGURE_ENABLE=	libsmbclient
424
SMB_IMPLIES=		GPL3
428
SMB_IMPLIES=		GPL3
425
429
426
# snappy
430
# snappy
427
SNAPPY_LIB_DEPENDS=	libsnappy.so:archivers/snappy
431
SNAPPY_LIB_DEPENDS=	libsnappy.so:archivers/snappy
428
SNAPPY_CONFIGURE_ENABLE=	libsnappy
432
SNAPPY_CONFIGURE_ENABLE=	libsnappy
429
433
430
# sndio
434
# sndio
431
SNDIO_LIB_DEPENDS=	libsndio.so:audio/sndio
435
SNDIO_LIB_DEPENDS=	libsndio.so:audio/sndio
432
SNDIO_CONFIGURE_ENABLE=	sndio
436
SNDIO_CONFIGURE_ENABLE=	sndio
433
437
434
# soxr
438
# soxr
435
SOXR_LIB_DEPENDS=	libsoxr.so:audio/libsoxr
439
SOXR_LIB_DEPENDS=	libsoxr.so:audio/libsoxr
436
SOXR_CONFIGURE_ENABLE=	libsoxr
440
SOXR_CONFIGURE_ENABLE=	libsoxr
437
441
438
# speex
442
# speex
439
SPEEX_LIB_DEPENDS=	libspeex.so:audio/speex
443
SPEEX_LIB_DEPENDS=	libspeex.so:audio/speex
440
SPEEX_CONFIGURE_ENABLE=	libspeex
444
SPEEX_CONFIGURE_ENABLE=	libspeex
441
445
442
# sse support
446
# sse support
443
SSE_CONFIGURE_ENABLE=	sse
447
SSE_CONFIGURE_ENABLE=	sse
444
SSE_IMPLIES=		MMX
448
SSE_IMPLIES=		MMX
445
449
446
# ssh
450
# ssh
447
SSH_LIB_DEPENDS=	libssh.so:security/libssh
451
SSH_LIB_DEPENDS=	libssh.so:security/libssh
448
SSH_CONFIGURE_ENABLE=	libssh
452
SSH_CONFIGURE_ENABLE=	libssh
449
453
450
# srt
454
# srt
451
SRT_LIB_DEPENDS=	libsrt.so:net/srt
455
SRT_LIB_DEPENDS=	libsrt.so:net/srt
452
SRT_CONFIGURE_ENABLE=	libsrt
456
SRT_CONFIGURE_ENABLE=	libsrt
453
457
454
# svt-av1
458
# svt-av1
455
SVTAV1_LIB_DEPENDS=	libSvtAv1Enc.so:multimedia/svt-av1
459
SVTAV1_LIB_DEPENDS=	libSvtAv1Enc.so:multimedia/svt-av1
456
SVTAV1_CONFIGURE_ON=	--enable-libsvtav1
460
SVTAV1_CONFIGURE_ON=	--enable-libsvtav1
457
SVTAV1_PATCH_SITES=	https://github.com/OpenVisualCloud/SVT-AV1/raw/v0.8.0/ffmpeg_plugin/:svtav1
461
SVTAV1_PATCH_SITES=	https://github.com/OpenVisualCloud/SVT-AV1/raw/v0.8.0/ffmpeg_plugin/:svtav1
458
SVTAV1_PATCHFILES=	0001-Add-ability-for-ffmpeg-to-run-svt-av1.patch:-p1:svtav1
462
SVTAV1_PATCHFILES=	0001-Add-ability-for-ffmpeg-to-run-svt-av1.patch:-p1:svtav1
459
.if exists(/usr/bin/ld.lld) && (${/usr/bin/ld:L:tA} != /usr/bin/ld.lld)
463
.if exists(/usr/bin/ld.lld) && (${/usr/bin/ld:L:tA} != /usr/bin/ld.lld)
460
# https://github.com/OpenVisualCloud/SVT-AV1/issues/691
464
# https://github.com/OpenVisualCloud/SVT-AV1/issues/691
461
SVTAV1_LDFLAGS=		-fuse-ld=lld
465
SVTAV1_LDFLAGS=		-fuse-ld=lld
462
.endif
466
.endif
463
.if make(makesum)
467
.if make(makesum)
464
.MAKEFLAGS:		WITH+=SVTAV1
468
.MAKEFLAGS:		WITH+=SVTAV1
465
.else
469
.else
466
SVTAV1_PREVENTS=	SVTHEVC SVTVP9
470
SVTAV1_PREVENTS=	SVTHEVC SVTVP9
467
SVTAV1_PREVENTS_MSG=	Only one SVT vendor patch can be applied at the same time
471
SVTAV1_PREVENTS_MSG=	Only one SVT vendor patch can be applied at the same time
468
.endif
472
.endif
469
473
470
# svt-hevc
474
# svt-hevc
471
SVTHEVC_LIB_DEPENDS=	libSvtHevcEnc.so:multimedia/svt-hevc
475
SVTHEVC_LIB_DEPENDS=	libSvtHevcEnc.so:multimedia/svt-hevc
472
SVTHEVC_CONFIGURE_ON=	--enable-libsvthevc
476
SVTHEVC_CONFIGURE_ON=	--enable-libsvthevc
473
SVTHEVC_PATCH_SITES=	https://github.com/Intel/SVT-HEVC/raw/v1.4.3/ffmpeg_plugin/:svthevc
477
SVTHEVC_PATCH_SITES=	https://github.com/Intel/SVT-HEVC/raw/v1.4.3/ffmpeg_plugin/:svthevc
474
SVTHEVC_PATCHFILES=	0001-lavc-svt_hevc-add-libsvt-hevc-encoder-wrapper.patch:-p1:svthevc \
478
SVTHEVC_PATCHFILES=	0001-lavc-svt_hevc-add-libsvt-hevc-encoder-wrapper.patch:-p1:svthevc \
475
			0002-doc-Add-libsvt_hevc-encoder-docs.patch:-p1:svthevc
479
			0002-doc-Add-libsvt_hevc-encoder-docs.patch:-p1:svthevc
476
.if exists(/usr/bin/ld.lld) && (${/usr/bin/ld:L:tA} != /usr/bin/ld.lld)
480
.if exists(/usr/bin/ld.lld) && (${/usr/bin/ld:L:tA} != /usr/bin/ld.lld)
477
SVTHEVC_LDFLAGS=	-fuse-ld=lld
481
SVTHEVC_LDFLAGS=	-fuse-ld=lld
478
.endif
482
.endif
479
.if make(makesum)
483
.if make(makesum)
480
.MAKEFLAGS:		WITH+=SVTHEVC
484
.MAKEFLAGS:		WITH+=SVTHEVC
481
.else
485
.else
482
SVTHEVC_PREVENTS=	SVTAV1 SVTVP9
486
SVTHEVC_PREVENTS=	SVTAV1 SVTVP9
483
SVTHEVC_PREVENTS_MSG=	${SVTAV1_PREVENTS_MSG}
487
SVTHEVC_PREVENTS_MSG=	${SVTAV1_PREVENTS_MSG}
484
.endif
488
.endif
485
489
486
# svt-vp9
490
# svt-vp9
487
SVTVP9_LIB_DEPENDS=	libSvtVp9Enc.so:multimedia/svt-vp9
491
SVTVP9_LIB_DEPENDS=	libSvtVp9Enc.so:multimedia/svt-vp9
488
SVTVP9_CONFIGURE_ON=	--enable-libsvtvp9
492
SVTVP9_CONFIGURE_ON=	--enable-libsvtvp9
489
SVTVP9_PATCH_SITES=	https://github.com/OpenVisualCloud/SVT-VP9/raw/v0.1.0/ffmpeg_plugin/:svtvp9
493
SVTVP9_PATCH_SITES=	https://github.com/OpenVisualCloud/SVT-VP9/raw/v0.1.0/ffmpeg_plugin/:svtvp9
490
SVTVP9_PATCHFILES=	0001-Add-ability-for-ffmpeg-to-run-svt-vp9.patch:-p1:svtvp9
494
SVTVP9_PATCHFILES=	0001-Add-ability-for-ffmpeg-to-run-svt-vp9.patch:-p1:svtvp9
491
.if exists(/usr/bin/ld.lld) && (${/usr/bin/ld:L:tA} != /usr/bin/ld.lld)
495
.if exists(/usr/bin/ld.lld) && (${/usr/bin/ld:L:tA} != /usr/bin/ld.lld)
492
SVTVP9_LDFLAGS=		-fuse-ld=lld
496
SVTVP9_LDFLAGS=		-fuse-ld=lld
493
.endif
497
.endif
494
.if make(makesum)
498
.if make(makesum)
495
.MAKEFLAGS:		WITH+=SVTVP9
499
.MAKEFLAGS:		WITH+=SVTVP9
496
.else
500
.else
497
SVTVP9_PREVENTS=	SVTAV1 SVTHEVC
501
SVTVP9_PREVENTS=	SVTAV1 SVTHEVC
498
SVTVP9_PREVENTS_MSG=	${SVTAV1_PREVENTS_MSG}
502
SVTVP9_PREVENTS_MSG=	${SVTAV1_PREVENTS_MSG}
499
.endif
503
.endif
500
504
501
# tensorflow
505
# tensorflow
502
TENSORFLOW_LIB_DEPENDS=	libtensorflow.so:science/tensorflow
506
TENSORFLOW_LIB_DEPENDS=	libtensorflow.so:science/tensorflow
503
TENSORFLOW_CONFIGURE_ENABLE=	libtensorflow
507
TENSORFLOW_CONFIGURE_ENABLE=	libtensorflow
504
508
505
# tesseract
509
# tesseract
506
TESSERACT_LIB_DEPENDS=	libtesseract.so:graphics/tesseract
510
TESSERACT_LIB_DEPENDS=	libtesseract.so:graphics/tesseract
507
TESSERACT_CONFIGURE_ENABLE=	libtesseract
511
TESSERACT_CONFIGURE_ENABLE=	libtesseract
508
512
509
# theora
513
# theora
510
THEORA_LIB_DEPENDS=	libtheora.so:multimedia/libtheora
514
THEORA_LIB_DEPENDS=	libtheora.so:multimedia/libtheora
511
THEORA_CONFIGURE_ENABLE=	libtheora
515
THEORA_CONFIGURE_ENABLE=	libtheora
512
516
513
# twolame
517
# twolame
514
TWOLAME_LIB_DEPENDS=	libtwolame.so:audio/twolame
518
TWOLAME_LIB_DEPENDS=	libtwolame.so:audio/twolame
515
TWOLAME_CONFIGURE_ENABLE=	libtwolame
519
TWOLAME_CONFIGURE_ENABLE=	libtwolame
516
520
517
# vaapi
521
# vaapi
518
VAAPI_LIB_DEPENDS=	libva.so:multimedia/libva
522
VAAPI_LIB_DEPENDS=	libva.so:multimedia/libva
519
VAAPI_CONFIGURE_ENABLE=	vaapi
523
VAAPI_CONFIGURE_ENABLE=	vaapi
520
524
521
# vapoursynth
525
# vapoursynth
522
VAPOURSYNTH_LIB_DEPENDS=	libvapoursynth-script.so:multimedia/vapoursynth
526
VAPOURSYNTH_LIB_DEPENDS=	libvapoursynth-script.so:multimedia/vapoursynth
523
VAPOURSYNTH_CONFIGURE_ENABLE=	vapoursynth
527
VAPOURSYNTH_CONFIGURE_ENABLE=	vapoursynth
524
528
525
# vdpau
529
# vdpau
526
VDPAU_USES=		xorg
530
VDPAU_USES=		xorg
527
VDPAU_USE=		XORG=x11
531
VDPAU_USE=		XORG=x11
528
VDPAU_LIB_DEPENDS=	libvdpau.so:multimedia/libvdpau
532
VDPAU_LIB_DEPENDS=	libvdpau.so:multimedia/libvdpau
529
VDPAU_CONFIGURE_ENABLE=	vdpau
533
VDPAU_CONFIGURE_ENABLE=	vdpau
530
534
531
# vmaf
535
# vmaf
532
VMAF_BUILD_DEPENDS=	${LOCALBASE}/lib/libvmaf.a:multimedia/vmaf
536
VMAF_BUILD_DEPENDS=	${LOCALBASE}/lib/libvmaf.a:multimedia/vmaf
533
VMAF_CONFIGURE_ENABLE=	libvmaf
537
VMAF_CONFIGURE_ENABLE=	libvmaf
534
538
535
# armv6/armv7
539
# armv6/armv7
536
VFP_CONFIGURE_ENABLE=	vfp
540
VFP_CONFIGURE_ENABLE=	vfp
537
NEON_CONFIGURE_ENABLE=	neon
541
NEON_CONFIGURE_ENABLE=	neon
538
.if ! ${CFLAGS:M-march*}
542
.if ! ${CFLAGS:M-march*}
539
NEON_CONFIGURE_ON=	--cpu=armv7-a
543
NEON_CONFIGURE_ON=	--cpu=armv7-a
540
.endif
544
.endif
541
545
542
# vo-amrwbenc
546
# vo-amrwbenc
543
VO_AMRWBENC_LIB_DEPENDS=	libvo-amrwbenc.so:audio/vo-amrwbenc
547
VO_AMRWBENC_LIB_DEPENDS=	libvo-amrwbenc.so:audio/vo-amrwbenc
544
VO_AMRWBENC_CONFIGURE_ENABLE=	libvo-amrwbenc
548
VO_AMRWBENC_CONFIGURE_ENABLE=	libvo-amrwbenc
545
VO_AMRWBENC_IMPLIES=	GPL3
549
VO_AMRWBENC_IMPLIES=	GPL3
546
550
547
# vid.stab
551
# vid.stab
548
VIDSTAB_LIB_DEPENDS=	libvidstab.so:multimedia/vid.stab
552
VIDSTAB_LIB_DEPENDS=	libvidstab.so:multimedia/vid.stab
549
VIDSTAB_CONFIGURE_ENABLE=	libvidstab
553
VIDSTAB_CONFIGURE_ENABLE=	libvidstab
550
554
551
# vorbis
555
# vorbis
552
VORBIS_LIB_DEPENDS=	libvorbisenc.so:audio/libvorbis
556
VORBIS_LIB_DEPENDS=	libvorbisenc.so:audio/libvorbis
553
VORBIS_CONFIGURE_ENABLE=	libvorbis
557
VORBIS_CONFIGURE_ENABLE=	libvorbis
554
558
555
# vp8
559
# vp8
556
VPX_LIB_DEPENDS=	libvpx.so:multimedia/libvpx
560
VPX_LIB_DEPENDS=	libvpx.so:multimedia/libvpx
557
VPX_CONFIGURE_ENABLE=	libvpx
561
VPX_CONFIGURE_ENABLE=	libvpx
558
562
559
# wavpack
563
# wavpack
560
WAVPACK_LIB_DEPENDS=	libwavpack.so:audio/wavpack
564
WAVPACK_LIB_DEPENDS=	libwavpack.so:audio/wavpack
561
WAVPACK_CONFIGURE_ENABLE=	libwavpack
565
WAVPACK_CONFIGURE_ENABLE=	libwavpack
562
566
563
# webp
567
# webp
564
WEBP_LIB_DEPENDS=	libwebp.so:graphics/webp
568
WEBP_LIB_DEPENDS=	libwebp.so:graphics/webp
565
WEBP_CONFIGURE_ENABLE=	libwebp
569
WEBP_CONFIGURE_ENABLE=	libwebp
566
570
567
# x264
571
# x264
568
X264_LIB_DEPENDS=	libx264.so:multimedia/libx264
572
X264_LIB_DEPENDS=	libx264.so:multimedia/libx264
569
X264_CONFIGURE_ENABLE=	libx264
573
X264_CONFIGURE_ENABLE=	libx264
570
574
571
# x265
575
# x265
572
X265_LIB_DEPENDS=	libx265.so:multimedia/x265
576
X265_LIB_DEPENDS=	libx265.so:multimedia/x265
573
X265_CONFIGURE_ENABLE=	libx265
577
X265_CONFIGURE_ENABLE=	libx265
574
578
575
# xavs2
579
# xavs2
576
XAVS2_LIB_DEPENDS=	libxavs2.so:multimedia/xavs2
580
XAVS2_LIB_DEPENDS=	libxavs2.so:multimedia/xavs2
577
XAVS2_CONFIGURE_ENABLE=	libxavs2
581
XAVS2_CONFIGURE_ENABLE=	libxavs2
578
582
579
# xcb
583
# xcb
580
XCB_USES=		xorg
584
XCB_USES=		xorg
581
XCB_USE=		XORG=xcb
585
XCB_USE=		XORG=xcb
582
XCB_CONFIGURE_ENABLE=	libxcb
586
XCB_CONFIGURE_ENABLE=	libxcb
583
587
584
# xvid
588
# xvid
585
XVID_LIB_DEPENDS=	libxvidcore.so:multimedia/xvid
589
XVID_LIB_DEPENDS=	libxvidcore.so:multimedia/xvid
586
XVID_CONFIGURE_ENABLE=	libxvid
590
XVID_CONFIGURE_ENABLE=	libxvid
587
591
588
# xv
592
# xv
589
XVIDEO_USES=		xorg
593
XVIDEO_USES=		xorg
590
XVIDEO_USE=		XORG=x11,xext,xv
594
XVIDEO_USE=		XORG=x11,xext,xv
591
XVIDEO_CONFIGURE_OFF=	--disable-outdev=xv
595
XVIDEO_CONFIGURE_OFF=	--disable-outdev=xv
592
596
593
# zimg
597
# zimg
594
ZIMG_LIB_DEPENDS=	libzimg.so:graphics/sekrit-twc-zimg
598
ZIMG_LIB_DEPENDS=	libzimg.so:graphics/sekrit-twc-zimg
595
ZIMG_CONFIGURE_ENABLE=	libzimg
599
ZIMG_CONFIGURE_ENABLE=	libzimg
596
600
597
# zmq
601
# zmq
598
ZMQ_LIB_DEPENDS=	libzmq.so:net/libzmq${ZMQ_VERSION}
602
ZMQ_LIB_DEPENDS=	libzmq.so:net/libzmq${ZMQ_VERSION}
599
ZMQ_CONFIGURE_ENABLE=	libzmq
603
ZMQ_CONFIGURE_ENABLE=	libzmq
600
ZMQ_VERSION?=		4
604
ZMQ_VERSION?=		4
601
605
602
# zvbi
606
# zvbi
603
ZVBI_LIB_DEPENDS=	libzvbi.so:devel/libzvbi
607
ZVBI_LIB_DEPENDS=	libzvbi.so:devel/libzvbi
604
ZVBI_CONFIGURE_ENABLE=	libzvbi
608
ZVBI_CONFIGURE_ENABLE=	libzvbi
605
609
606
# License knobs
610
# License knobs
607
GPL3_CONFIGURE_ENABLE=	version3
611
GPL3_CONFIGURE_ENABLE=	version3
608
GPL3_VARS=		LICENSE="GPLv3+ LGPL3+"
612
GPL3_VARS=		LICENSE="GPLv3+ LGPL3+"
609
LICENSE_FILE_GPLv3+ =	${WRKSRC}/COPYING.GPLv3
613
LICENSE_FILE_GPLv3+ =	${WRKSRC}/COPYING.GPLv3
610
LICENSE_FILE_LGPL3+ =	${WRKSRC}/COPYING.LGPLv3
614
LICENSE_FILE_LGPL3+ =	${WRKSRC}/COPYING.LGPLv3
611
615
612
NONFREE_CONFIGURE_ENABLE=nonfree
616
NONFREE_CONFIGURE_ENABLE=nonfree
613
NONFREE_VARS=		RESTRICTED="enabling OPENSSL or FDK_AAC restricts redistribution"
617
NONFREE_VARS=		RESTRICTED="enabling OPENSSL or FDK_AAC restricts redistribution"
614
618
615
INSTALL_TARGET=	install-progs install-doc install-data \
619
INSTALL_TARGET=	install-progs install-doc install-data \
616
		install-libs install-headers install-examples
620
		install-libs install-headers install-examples
617
621
618
DATADIR=	${PREFIX}/share/${PORTNAME}${PKGNAMESUFFIX}
622
DATADIR=	${PREFIX}/share/${PORTNAME}${PKGNAMESUFFIX}
619
DOCSDIR=	${PREFIX}/share/doc/${PORTNAME}${PKGNAMESUFFIX}
623
DOCSDIR=	${PREFIX}/share/doc/${PORTNAME}${PKGNAMESUFFIX}
620
MAKE_ENV+=	V=1
624
MAKE_ENV+=	V=1
621
LDFLAGS_aarch64=-Wl,-z,notext
625
LDFLAGS_aarch64=-Wl,-z,notext
622
LDFLAGS_armv6=	-Wl,-z,notext
626
LDFLAGS_armv6=	-Wl,-z,notext
623
LDFLAGS_armv7=	-Wl,-z,notext
627
LDFLAGS_armv7=	-Wl,-z,notext
624
LDFLAGS_i386=	-Wl,-z,notext
628
LDFLAGS_i386=	-Wl,-z,notext
625
629
626
CONFIGURE_ARGS+=--prefix="${PREFIX}" \
630
CONFIGURE_ARGS+=--prefix="${PREFIX}" \
627
		--mandir="${PREFIX}/man" \
631
		--mandir="${PREFIX}/man" \
628
		--datadir="${DATADIR}" \
632
		--datadir="${DATADIR}" \
629
		--pkgconfigdir="${PREFIX}/libdata/pkgconfig" \
633
		--pkgconfigdir="${PREFIX}/libdata/pkgconfig" \
630
		--enable-shared \
634
		--enable-shared \
631
		--enable-pic \
635
		--enable-pic \
632
		--enable-gpl \
636
		--enable-gpl \
633
		--enable-avresample \
637
		--enable-avresample \
634
		--cc="${CC}"
638
		--cc="${CC}"
635
639
636
DOC_FILES=	Changelog CREDITS INSTALL.md LICENSE.md MAINTAINERS \
640
DOC_FILES=	Changelog CREDITS INSTALL.md LICENSE.md MAINTAINERS \
637
		README.md RELEASE_NOTES
641
		README.md RELEASE_NOTES
638
# under doc subdirectory
642
# under doc subdirectory
639
DOC_DOCFILES=	APIchanges *.txt
643
DOC_DOCFILES=	APIchanges *.txt
640
PORTDOCS=	*
644
PORTDOCS=	*
641
645
642
post-patch:
646
post-patch:
643
# {C,LD}FLAGS safeness
647
# {C,LD}FLAGS safeness
644
	@${REINPLACE_CMD} -E \
648
	@${REINPLACE_CMD} -E \
645
		-e 's|require_pkg_config opencv|require_pkg_config opencv-core|g' \
649
		-e 's|require_pkg_config opencv|require_pkg_config opencv-core|g' \
646
		${CONFIGURE_WRKSRC}/${CONFIGURE_SCRIPT}
650
		${CONFIGURE_WRKSRC}/${CONFIGURE_SCRIPT}
647
651
648
post-install:
652
post-install:
649
	(cd ${WRKSRC} && ${COPYTREE_SHARE} \
653
	(cd ${WRKSRC} && ${COPYTREE_SHARE} \
650
		"${DOC_FILES}" ${STAGEDIR}${DOCSDIR})
654
		"${DOC_FILES}" ${STAGEDIR}${DOCSDIR})
651
	(cd ${WRKSRC}/doc && ${COPYTREE_SHARE} \
655
	(cd ${WRKSRC}/doc && ${COPYTREE_SHARE} \
652
		"${DOC_DOCFILES}" ${STAGEDIR}${DOCSDIR})
656
		"${DOC_DOCFILES}" ${STAGEDIR}${DOCSDIR})
653
657
654
.include <bsd.port.mk>
658
.include <bsd.port.mk>

Return to bug 242829