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

(-)b/multimedia/ffmpeg/Makefile (-69 / +41 lines)
Lines 36-41 OPTIONS_DEFAULT= FFSERVER FONTCONFIG FREETYPE FREI0R GNUTLS ICONV \ Link Here
36
OPTIONS_SINGLE=	SSL
36
OPTIONS_SINGLE=	SSL
37
OPTIONS_SINGLE_SSL=	GNUTLS OPENSSL
37
OPTIONS_SINGLE_SSL=	GNUTLS OPENSSL
38
38
39
OPTIONS_DEFINE_amd64=	MMX SSE
40
OPTIONS_DEFINE_i386=	MMX SSE
41
OPTIONS_DEFAULT_amd64=	MMX SSE
42
OPTIONS_DEFAULT_i386=	${MACHINE_CPU:tu:MMMX} ${MACHINE_CPU:tu:MSSE}
43
39
ASS_DESC=	Subtitles rendering via libass
44
ASS_DESC=	Subtitles rendering via libass
40
CDIO_DESC=	Audio CD grabbing with libcdio
45
CDIO_DESC=	Audio CD grabbing with libcdio
41
FDK_AAC_DESC=	AAC audio encoding via Fraunhofer FDK
46
FDK_AAC_DESC=	AAC audio encoding via Fraunhofer FDK
Lines 49-54 OPTIONS_SUB= yes Link Here
49
# aacplus
54
# aacplus
50
AACPLUS_LIB_DEPENDS=	libaacplus.so:${PORTSDIR}/audio/libaacplus
55
AACPLUS_LIB_DEPENDS=	libaacplus.so:${PORTSDIR}/audio/libaacplus
51
AACPLUS_CONFIGURE_ENABLE=	libaacplus
56
AACPLUS_CONFIGURE_ENABLE=	libaacplus
57
AACPLUS_VARS=		FFMPEG_NONFREE=yes
52
58
53
# alsa
59
# alsa
54
ALSA_CONFIGURE_OFF=	--disable-indev=alsa \
60
ALSA_CONFIGURE_OFF=	--disable-indev=alsa \
Lines 58-67 ALSA_LIB_DEPENDS= libasound.so:${PORTSDIR}/audio/alsa-lib Link Here
58
# Opencore AMR NB
64
# Opencore AMR NB
59
AMR_NB_LIB_DEPENDS=	libopencore-amrnb.so:${PORTSDIR}/audio/opencore-amr
65
AMR_NB_LIB_DEPENDS=	libopencore-amrnb.so:${PORTSDIR}/audio/opencore-amr
60
AMR_NB_CONFIGURE_ENABLE=	libopencore-amrnb
66
AMR_NB_CONFIGURE_ENABLE=	libopencore-amrnb
67
AMR_NB_VARS=		FFMPEG_LICENSE_GPL3=yes
61
68
62
# Opencore AMR WB
69
# Opencore AMR WB
63
AMR_WB_LIB_DEPENDS=	libopencore-amrwb.so:${PORTSDIR}/audio/opencore-amr
70
AMR_WB_LIB_DEPENDS=	libopencore-amrwb.so:${PORTSDIR}/audio/opencore-amr
64
AMR_WB_CONFIGURE_ENABLE=	libopencore-amrwb
71
AMR_WB_CONFIGURE_ENABLE=	libopencore-amrwb
72
AMR_WB_VARS=		FFMPEG_LICENSE_GPL3=yes
65
73
66
# ass
74
# ass
67
ASS_LIB_DEPENDS=	libass.so:${PORTSDIR}/multimedia/libass
75
ASS_LIB_DEPENDS=	libass.so:${PORTSDIR}/multimedia/libass
Lines 75-90 CDIO_CONFIGURE_ENABLE= libcdio Link Here
75
CELT_LIB_DEPENDS=	libcelt0.so:${PORTSDIR}/audio/celt
83
CELT_LIB_DEPENDS=	libcelt0.so:${PORTSDIR}/audio/celt
76
CELT_CONFIGURE_ENABLE=	libcelt
84
CELT_CONFIGURE_ENABLE=	libcelt
77
85
86
# debugging
87
DEBUG_CONFIGURE_ON=	--disable-stripping
88
DEBUG_CONFIGURE_OFF=	--disable-debug
89
78
# faac
90
# faac
79
FAAC_LIB_DEPENDS=	libfaac.so:${PORTSDIR}/audio/faac
91
FAAC_LIB_DEPENDS=	libfaac.so:${PORTSDIR}/audio/faac
80
FAAC_CONFIGURE_ENABLE=	libfaac
92
FAAC_CONFIGURE_ENABLE=	libfaac
93
FAAC_VARS=		FFMPEG_NONFREE=yes
81
94
82
# fdk_aac
95
# fdk_aac
83
FDK_AAC_LIB_DEPENDS=	libfdk-aac.so:${PORTSDIR}/audio/fdk-aac
96
FDK_AAC_LIB_DEPENDS=	libfdk-aac.so:${PORTSDIR}/audio/fdk-aac
84
FDK_AAC_CONFIGURE_ENABLE=	libfdk-aac
97
FDK_AAC_CONFIGURE_ENABLE=	libfdk-aac
98
FDK_AAC_VARS=		FFMPEG_NONFREE=yes
85
99
86
# ffserver
100
# ffserver
87
FFSERVER_CONFIGURE_ENABLE=	ffserver
101
FFSERVER_CONFIGURE_ENABLE=	ffserver
102
FFSERVER_VARS=		USE_RC_SUBR+=ffserver
88
103
89
# fontconfig
104
# fontconfig
90
FONTCONFIG_LIB_DEPENDS=	libfontconfig.so:${PORTSDIR}/x11-fonts/fontconfig
105
FONTCONFIG_LIB_DEPENDS=	libfontconfig.so:${PORTSDIR}/x11-fonts/fontconfig
Lines 128-133 LIBV4L_CONFIGURE_ENABLE= libv4l2 Link Here
128
LIBV4L_CONFIGURE_OFF=		--disable-indev=v4l2 \
143
LIBV4L_CONFIGURE_OFF=		--disable-indev=v4l2 \
129
				--disable-outdev=v4l2
144
				--disable-outdev=v4l2
130
145
146
# mmx support
147
MMX_CONFIGURE_ENABLE=	mmx
148
131
# modplug
149
# modplug
132
MODPLUG_LIB_DEPENDS=	libmodplug.so:${PORTSDIR}/audio/libmodplug
150
MODPLUG_LIB_DEPENDS=	libmodplug.so:${PORTSDIR}/audio/libmodplug
133
MODPLUG_CONFIGURE_ENABLE=	libmodplug
151
MODPLUG_CONFIGURE_ENABLE=	libmodplug
Lines 152-157 OPENJPEG_CONFIGURE_ENABLE= libopenjpeg Link Here
152
# openssl
170
# openssl
153
OPENSSL_USE=		OPENSSL=yes
171
OPENSSL_USE=		OPENSSL=yes
154
OPENSSL_CONFIGURE_ENABLE=	openssl
172
OPENSSL_CONFIGURE_ENABLE=	openssl
173
OPENSSL_VARS=		FFMPEG_NONFREE=yes
174
175
# optimizations
176
OPTIMIZED_CFLAGS_CFLAGS=-O3 -ffast-math -fno-finite-math-only -fomit-frame-pointer
155
177
156
# opus
178
# opus
157
OPUS_LIB_DEPENDS=	libopus.so:${PORTSDIR}/audio/opus
179
OPUS_LIB_DEPENDS=	libopus.so:${PORTSDIR}/audio/opus
Lines 175-180 SCHROEDINGER_CONFIGURE_ENABLE= libschroedinger Link Here
175
SPEEX_LIB_DEPENDS=	libspeex.so:${PORTSDIR}/audio/speex
197
SPEEX_LIB_DEPENDS=	libspeex.so:${PORTSDIR}/audio/speex
176
SPEEX_CONFIGURE_ENABLE=	libspeex
198
SPEEX_CONFIGURE_ENABLE=	libspeex
177
199
200
# sse support
201
SSE_CONFIGURE_ENABLE=	sse
202
SSE_VARS=		FFMPEG_CFLAGS+="-msse"
203
SSE_IMPLIES=		MMX
204
178
# theora
205
# theora
179
THEORA_LIB_DEPENDS=	libtheora.so:${PORTSDIR}/multimedia/libtheora
206
THEORA_LIB_DEPENDS=	libtheora.so:${PORTSDIR}/multimedia/libtheora
180
THEORA_CONFIGURE_ENABLE=	libtheora
207
THEORA_CONFIGURE_ENABLE=	libtheora
Lines 190-208 VDPAU_CONFIGURE_ENABLE= vdpau Link Here
190
# vo-aacenc
217
# vo-aacenc
191
VO_AACENC_LIB_DEPENDS=	libvo-aacenc.so:${PORTSDIR}/audio/vo-aacenc
218
VO_AACENC_LIB_DEPENDS=	libvo-aacenc.so:${PORTSDIR}/audio/vo-aacenc
192
VO_AACENC_CONFIGURE_ENABLE=	libvo-aacenc
219
VO_AACENC_CONFIGURE_ENABLE=	libvo-aacenc
220
VO_AACENC_VARS=		FFMPEG_LICENSE_GPL3=yes
193
221
194
# vo-amrwbenc
222
# vo-amrwbenc
195
VO_AMRWBENC_LIB_DEPENDS=	libvo-amrwbenc.so:${PORTSDIR}/audio/vo-amrwbenc
223
VO_AMRWBENC_LIB_DEPENDS=	libvo-amrwbenc.so:${PORTSDIR}/audio/vo-amrwbenc
196
VO_AMRWBENC_CONFIGURE_ENABLE=	libvo-amrwbenc
224
VO_AMRWBENC_CONFIGURE_ENABLE=	libvo-amrwbenc
225
VO_AMRWBENC_VARS=	FFMPEG_LICENSE_GPL3=yes
197
226
198
# vorbis
227
# vorbis
199
VORBIS_LIB_DEPENDS=	libvorbisenc.so:${PORTSDIR}/audio/libvorbis
228
VORBIS_LIB_DEPENDS=	libvorbisenc.so:${PORTSDIR}/audio/libvorbis
200
VORBIS_CONFIGURE_ENABLE=	libvorbis
229
VORBIS_CONFIGURE_ENABLE=	libvorbis
230
VORBIS_VARS=		FFMPEG_CFLAGS+="-I${LOCALBASE}/include/vorbis"
201
231
202
# vp8
232
# vp8
203
VPX_LIB_DEPENDS=	libvpx.so:${PORTSDIR}/multimedia/libvpx
233
VPX_LIB_DEPENDS=	libvpx.so:${PORTSDIR}/multimedia/libvpx
204
VPX_CONFIGURE_ENABLE=	libvpx
234
VPX_CONFIGURE_ENABLE=	libvpx
205
235
236
# x11grab
237
X11GRAB_USE=		XORG=x11,xext,xfixes
238
X11GRAB_CONFIGURE_ENABLE=	x11grab
239
206
# x264
240
# x264
207
X264_LIB_DEPENDS=	libx264.so:${PORTSDIR}/multimedia/libx264
241
X264_LIB_DEPENDS=	libx264.so:${PORTSDIR}/multimedia/libx264
208
X264_CONFIGURE_ENABLE=	libx264
242
X264_CONFIGURE_ENABLE=	libx264
Lines 220-247 INSTALL_TARGET= install-progs install-data install-libs install-headers Link Here
220
254
221
DATADIR=	${PREFIX}/share/${PORTNAME}${PKGNAMESUFFIX}
255
DATADIR=	${PREFIX}/share/${PORTNAME}${PKGNAMESUFFIX}
222
256
223
.include <bsd.port.options.mk>
224
225
# ssl
226
.if ${PORT_OPTIONS:MOPENSSL} && empty(PORT_OPTIONS:MGNUTLS)
227
FFMPEG_NONFREE=	yes
228
.endif
229
230
.if ${PORT_OPTIONS:MAACPLUS} || ${PORT_OPTIONS:MFAAC} || ${PORT_OPTIONS:MFDK_AAC}
231
FFMPEG_NONFREE=	yes
232
.endif
233
234
.if ${PORT_OPTIONS:MAMR_NB} || ${PORT_OPTIONS:MAMR_WB} || \
235
${PORT_OPTIONS:MVO_AACENC} || ${PORT_OPTIONS:MVO_AMRWBENC}
236
FFMPEG_LICENSE_GPL3=	yes
237
.endif
238
239
# x11grab
240
.if ${PORT_OPTIONS:MX11GRAB}
241
USE_XORG=	x11 xext xfixes
242
CONFIGURE_ARGS+=	--enable-x11grab
243
.endif
244
245
.include <bsd.port.pre.mk>
257
.include <bsd.port.pre.mk>
246
258
247
.if ${OPSYS} == "FreeBSD" && ${OSVERSION} < 1000000
259
.if ${OPSYS} == "FreeBSD" && ${OSVERSION} < 1000000
Lines 289-327 DOC_DOCFILES+= *.html Link Here
289
BUILD_DEPENDS+=	texi2html:${PORTSDIR}/textproc/texi2html
301
BUILD_DEPENDS+=	texi2html:${PORTSDIR}/textproc/texi2html
290
.endif
302
.endif
291
303
292
.if ${PORT_OPTIONS:MDEBUG}
293
CONFIGURE_ARGS+=	--disable-stripping
294
.else
295
CONFIGURE_ARGS+=	--disable-debug
296
.endif
297
298
.if ${PORT_OPTIONS:MFFSERVER}
299
USE_RC_SUBR=	ffserver
300
.endif
301
302
# sse hardware vector support
303
.if defined(MACHINE_CPU) && (${MACHINE_CPU:Msse} == "sse" || ${MACHINE_CPU:Mamd64} == "amd64")
304
_BUILTIN_VECTOR=	yes
305
.else
306
CONFIGURE_ARGS+=	--disable-sse
307
.endif
308
309
# mmx support
310
.if defined(MACHINE_CPU) && ${MACHINE_CPU:Mmmx} == "" && ${MACHINE_CPU:Mamd64} == ""
311
CONFIGURE_ARGS+=	--disable-mmx
312
_NO_BUILTIN_VECTOR=	yes
313
.endif
314
315
# builtin vector, requires mmx and sse
316
.if !defined(_NO_BUILTIN_VECTOR) && defined(_BUILTIN_VECTOR)
317
FFMPEG_CFLAGS+=		-msse
318
.endif
319
320
# optimizations
321
.if ${PORT_OPTIONS:MOPTIMIZED_CFLAGS}
322
CFLAGS+=	-O3 -ffast-math -fno-finite-math-only -fomit-frame-pointer
323
.endif
324
325
# ffserver
304
# ffserver
326
.if ${PORT_OPTIONS:MFFSERVER}
305
.if ${PORT_OPTIONS:MFFSERVER}
327
FFPROGS+=	ffserver
306
FFPROGS+=	ffserver
Lines 341-351 DOC_DOCFILES+= ffplay.html Link Here
341
CONFIGURE_ARGS+=	--disable-ffplay --disable-outdev=sdl
320
CONFIGURE_ARGS+=	--disable-ffplay --disable-outdev=sdl
342
.endif
321
.endif
343
322
344
# vorbis
345
.if ${PORT_OPTIONS:MVORBIS}
346
FFMPEG_CFLAGS+=		-I${LOCALBASE}/include/vorbis
347
.endif
348
349
# License knobs
323
# License knobs
350
.if defined(FFMPEG_NONFREE)
324
.if defined(FFMPEG_NONFREE)
351
RESTRICTED=	linking to libfaac or libaacplus restricts redistribution
325
RESTRICTED=	linking to libfaac or libaacplus restricts redistribution
Lines 374-404 post-patch: Link Here
374
		${CONFIGURE_WRKSRC}/${CONFIGURE_SCRIPT}
348
		${CONFIGURE_WRKSRC}/${CONFIGURE_SCRIPT}
375
	@${REINPLACE_CMD} -e 's|/usr/bin/perl|${PERL5}|g' \
349
	@${REINPLACE_CMD} -e 's|/usr/bin/perl|${PERL5}|g' \
376
		${WRKSRC}/doc/texi2pod.pl
350
		${WRKSRC}/doc/texi2pod.pl
377
.if ${PORT_OPTIONS:MSDL}
351
352
post-patch-SDL-on:
378
	@${REINPLACE_CMD} -E \
353
	@${REINPLACE_CMD} -E \
379
		-e 's|sdl-config|${SDL_CONFIG}|g' \
354
		-e 's|sdl-config|${SDL_CONFIG}|g' \
380
		${CONFIGURE_WRKSRC}/${CONFIGURE_SCRIPT}
355
		${CONFIGURE_WRKSRC}/${CONFIGURE_SCRIPT}
381
	@${FIND} ${WRKSRC} -type f | \
356
	@${FIND} ${WRKSRC} -type f | \
382
		${XARGS} -n 10 ${REINPLACE_CMD} -E \
357
		${XARGS} -n 10 ${REINPLACE_CMD} -E \
383
		-e 's|#include <SDL|#include <SDL/SDL|'
358
		-e 's|#include <SDL|#include <SDL/SDL|'
384
.endif
385
359
386
post-configure:
360
post-configure-THEORA-off:
387
.if empty(PORT_OPTIONS:MTHEORA)
388
	@${REINPLACE_CMD} -E \
361
	@${REINPLACE_CMD} -E \
389
		-e 's|^(CONFIG_LIBTHEORA).*$$|\1=no|' \
362
		-e 's|^(CONFIG_LIBTHEORA).*$$|\1=no|' \
390
		${WRKSRC}/config.mak
363
		${WRKSRC}/config.mak
391
.endif
392
364
393
post-install:
365
post-install:
394
.for PROG in ${FFPROGS}
366
.for PROG in ${FFPROGS}
395
	@${MKDIR} ${STAGEDIR}${MAN1PREFIX}/man/man1
367
	@${MKDIR} ${STAGEDIR}${MAN1PREFIX}/man/man1
396
	${INSTALL_MAN} ${WRKSRC}/doc/${PROG}.1 ${STAGEDIR}${MAN1PREFIX}/man/man1/${PROG}.1
368
	${INSTALL_MAN} ${WRKSRC}/doc/${PROG}.1 ${STAGEDIR}${MAN1PREFIX}/man/man1/${PROG}.1
397
.endfor
369
.endfor
398
.if ${PORT_OPTIONS:MFFSERVER}
399
	${INSTALL_DATA} ${WRKSRC}/doc/ffserver.conf \
400
		${STAGEDIR}${PREFIX}/etc/ffserver.conf.sample
401
.endif
402
	@${MKDIR} ${STAGEDIR}${DOCSDIR}
370
	@${MKDIR} ${STAGEDIR}${DOCSDIR}
403
.for FILE in ${DOC_FILES}
371
.for FILE in ${DOC_FILES}
404
	${INSTALL_DATA} ${WRKSRC}/${FILE} ${STAGEDIR}${DOCSDIR}
372
	${INSTALL_DATA} ${WRKSRC}/${FILE} ${STAGEDIR}${DOCSDIR}
Lines 407-410 post-install: Link Here
407
	${INSTALL_DATA} ${WRKSRC}/doc/${FILE} ${STAGEDIR}${DOCSDIR}
375
	${INSTALL_DATA} ${WRKSRC}/doc/${FILE} ${STAGEDIR}${DOCSDIR}
408
.endfor
376
.endfor
409
377
378
post-install-FFSERVER-on:
379
	${INSTALL_DATA} ${WRKSRC}/doc/ffserver.conf \
380
		${STAGEDIR}${PREFIX}/etc/ffserver.conf.sample
381
410
.include <bsd.port.post.mk>
382
.include <bsd.port.post.mk>

Return to bug 202727