ports/120518: [PATCH] multimedia/ffmpeg: Respect user using WITHOUT_foo, portlint cleanups
Naram Qashat
cyberbotx at cyberbotx.com
Mon Feb 11 04:30:02 UTC 2008
>Number: 120518
>Category: ports
>Synopsis: [PATCH] multimedia/ffmpeg: Respect user using WITHOUT_foo, portlint cleanups
>Confidential: no
>Severity: non-critical
>Priority: low
>Responsible: freebsd-ports-bugs
>State: open
>Quarter:
>Keywords:
>Date-Required:
>Class: change-request
>Submitter-Id: current-users
>Arrival-Date: Mon Feb 11 04:30:01 UTC 2008
>Closed-Date:
>Last-Modified:
>Originator: Naram Qashat
>Release: FreeBSD 6.3-RELEASE i386
>Organization:
>Environment:
System: FreeBSD kirby.cyberbotx.com 6.3-RELEASE FreeBSD 6.3-RELEASE #0: Wed Jan 23 16:14:04 EST 2008
>Description:
- Add checks for WITHOUT_foo to anything that uses WITH_foo and also
checks for if the library actually exists. This way, if a user
decides they don't want FFmpeg built with something even if it is
installed on their machine, it won't be built with that.
- Make portlint happy by removing PLIST_FILES from Makefile and adding
those to pkg-plist with PLIST_SUB used.
- Some Makefile spacing cleanup.
Port maintainer (multimedia at FreeBSD.org) is cc'd.
Generated with FreeBSD Port Tools 0.77
>How-To-Repeat:
>Fix:
--- ffmpeg-2007.10.04_1.patch begins here ---
diff -ruN --exclude=CVS /usr/ports/multimedia/ffmpeg/Makefile /kirby/shared/ports/ffmpeg/Makefile
--- /usr/ports/multimedia/ffmpeg/Makefile 2008-01-11 01:32:20.000000000 -0500
+++ /kirby/shared/ports/ffmpeg/Makefile 2008-02-10 23:07:47.000000000 -0500
@@ -50,7 +50,7 @@
PORTDOCS= *
## sse hardware vector support
-.if (defined(MACHINE_CPU) && ${MACHINE_CPU:Msse} == "sse")
+.if defined(MACHINE_CPU) && ${MACHINE_CPU:Msse} == "sse"
WITH_BUILTIN_VECTOR= yes
.endif
@@ -60,14 +60,14 @@
## PORTDOCS
.ifndef(NOPORTDOCS)
BUILD_DEPENDS+= texi2html:${PORTSDIR}/textproc/texi2html
-MAN1+= ffmpeg.1 ffserver.1
+MAN1+= ffmpeg.1 ffserver.1
.endif
.ifdef(WITH_OPTIMIZED_CFLAGS)
-CFLAGS:= ${CFLAGS:N-O*} -O3 -ffast-math -fomit-frame-pointer
+CFLAGS:= ${CFLAGS:N-O*} -O3 -ffast-math -fomit-frame-pointer
.else
-CFLAGS:= ${CFLAGS:N-O0} -O2
-DEBUG_FLAGS+= -O2
+CFLAGS:= ${CFLAGS:N-O0} -O2
+DEBUG_FLAGS+= -O2
.endif
## a52
@@ -80,35 +80,40 @@
.else
CONFIGURE_ARGS+= --disable-liba52
.endif
+
## dts
-#.ifdef(WITH_DTS) || exists(${LOCALBASE}/lib/libdca.a)
+#.ifdef(WITH_DTS) || (exists(${LOCALBASE}/lib/libdca.a) && !defined(WITHOUT_DTS))
#LIB_DEPENDS+= dca.0:${PORTSDIR}/multimedia/libdca
#CONFIGURE_ARGS+= --enable-libdts
#.endif
+
## faac
-.ifdef(WITH_FAAC) || exists(${LOCALBASE}/lib/libfaac.so)
+.ifdef(WITH_FAAC) || (exists(${LOCALBASE}/lib/libfaac.so) && !defined(WITHOUT_FAAC))
LIB_DEPENDS+= faac.0:${PORTSDIR}/audio/faac
CONFIGURE_ARGS+= --enable-libfaac
.endif
+
## faad
-.ifndef(WITHOUT_FAAD) || exists(${LOCALBASE}/lib/libfaad.so)
+.ifdef(WITH_FAAD) || (exists(${LOCALBASE}/lib/libfaad.so) && !defined(WITHOUT_FAAD))
LIB_DEPENDS+= faad.0:${PORTSDIR}/audio/faad
CONFIGURE_ARGS+= --enable-libfaad \
--enable-libfaadbin
.endif
+
## amr
-.ifdef(WITH_AMR_NB) || exists($LOCALBASE}/lib/libamrnb.so)
+.ifdef(WITH_AMR_NB) || (exists($LOCALBASE}/lib/libamrnb.so) && !defined(WITHOUT_AMR_NB))
LIB_DEPENDS+= amrnb.3:${PORTSDIR}/audio/libamrnb
CONFIGURE_ARGS+= --enable-libamr-nb
.endif
-.ifdef(WITH_AMR_WB) || exists($LOCALBASE}/lib/libamrwb.so)
+.ifdef(WITH_AMR_WB) || (exists($LOCALBASE}/lib/libamrwb.so) && !defined(WITHOUT_AMR_WB))
LIB_DEPENDS+= amrwb.3:${PORTSDIR}/audio/libamrwb
CONFIGURE_ARGS+= --enable-libamr-wb
.endif
+
USE_RC_SUBR= ffserver
.if ${MACHINE_CPU:Mmmx}==""
@@ -116,34 +121,31 @@
WITHOUT_BUILTIN_VECTOR= yes
.endif
+
## gsm
-.ifdef(WITH_GSM) || exists(${LOCALBASE}/lib/libgsm.so)
+.ifdef(WITH_GSM) || (exists(${LOCALBASE}/lib/libgsm.so) && !defined(WITHOUT_GSM))
LIB_DEPENDS+= gsm.1:${PORTSDIR}/audio/gsm
CONFIGURE_ARGS+= --enable-libgsm
.endif
+
## mp3
-.ifdef(WITH_LAME) || exists(${LOCALBASE}/lib/libmp3lame.so) || defined(WITH_MP3)
+.ifdef(WITH_LAME) || defined(WITH_MP3) || (exists(${LOCALBASE}/lib/libmp3lame.so) && !defined(WITHOUT_LAME) && !defined(WITHOUT_MP3))
LIB_DEPENDS+= mp3lame.0:${PORTSDIR}/audio/lame
CONFIGURE_ARGS+= --enable-libmp3lame
.endif
-## ogg
-.ifndef(WITHOUT_OGG) || exists(${LOCALBASE}/lib/libogg.so)
-LIB_DEPENDS+= ogg.5:${PORTSDIR}/audio/libogg
-
-CONFIGURE_ARGS+= --enable-libogg
-.endif
## SDL
-.ifdef(WITH_SDL) || ${HAVE_SDL:Msdl}
+.ifdef(WITH_SDL) || (${HAVE_SDL:Msdl} && !defined(WITHOUT_SDL))
USE_SDL+= sdl
-PLIST_FILES+= bin/ffplay
+PLIST_SUB+= SDL=""
.if !defined(NOPORTDOCS)
-MAN1+= ffplay.1
+MAN1+= ffplay.1
.endif
.else
+PLIST_SUB+= SDL="@comment "
CONFIGURE_ARGS+= --disable-ffplay
.endif
@@ -162,6 +164,7 @@
CONFIGURE_ARGS+= --enable-libtheora
.endif
+
## vorbis
.if !defined(WITHOUT_VORBIS)
WITH_OGG= yes
@@ -170,6 +173,14 @@
CONFIGURE_ARGS+= --enable-libvorbis
FFMPEG_CFLAGS+= -I${LOCALBASE}/include/vorbis
.endif
+
+## ogg
+.ifdef(WITH_OGG) || (exists(${LOCALBASE}/lib/libogg.so) && !defined(WITHOUT_OGG))
+LIB_DEPENDS+= ogg.5:${PORTSDIR}/audio/libogg
+
+CONFIGURE_ARGS+= --enable-libogg
+.endif
+
# x264
.ifndef(WITHOUT_X264)
LIB_DEPENDS+= x264.50:${PORTSDIR}/multimedia/x264
@@ -178,26 +189,32 @@
.else
CONFIGURE_ARGS+= --disable-libx264
.endif
+
## builtin vector, requires mmx
.if !defined(WITHOUT_BUILTIN_VECTOR) && defined(WITH_BUILTIN_VECTOR)
FFMPEG_CFLAGS+= -msse
.endif
-. ifdef(WITH_FREETYPE2) || exists(${LOCALBASE}/lib/libfreetype.so)
+
+. ifdef(WITH_FREETYPE2) || (exists(${LOCALBASE}/lib/libfreetype.so) && !defined(WITHOUT_FREETYPE2))
LIB_DEPENDS+= freetype.9:${PORTSDIR}/print/freetype2
-PLIST_FILES+= lib/vhook/drawtext.so
+PLIST_SUB+= FREETYPE2=""
+.else
+PLIST_SUB+= FREETYPE2="@comment "
. endif # freetype2
-. ifdef(WITH_IMLIB2) || exists(${LOCALBASE}/lib/libImlib2.so)
+
+. ifdef(WITH_IMLIB2) || (exists(${LOCALBASE}/lib/libImlib2.so) && !defined(WITHOUT_IMLIB2))
LIB_DEPENDS+= Imlib2.4:${PORTSDIR}/graphics/imlib2
-PLIST_FILES+= lib/vhook/imlib2.so
+PLIST_SUB+= IMLIB2=""
. else
WITHOUT_IMLIB2= yes
+PLIST_SUB+= IMLIB2="@comment "
. endif # imlib2
## xvid
-.ifdef(WITH_XVID) || exists(${LOCALBASE}/lib/libxvidcore.so)
-LIB_DEPENDS+= xvidcore.4:${PORTSDIR}/multimedia/xvid
+.ifdef(WITH_XVID) || (exists(${LOCALBASE}/lib/libxvidcore.so) && !defined(WITHOUT_XVID))
+LIB_DEPENDS+= xvidcore.4:${PORTSDIR}/multimedia/xvid
CONFIGURE_ARGS+= --enable-libxvid
.endif
@@ -299,7 +316,7 @@
-e 's|^(ipv6).*$$|\1=yes|' \
${CONFIGURE_WRKSRC}/${CONFIGURE_SCRIPT}
.endif
-.ifdef(WITH_SDL)
+.if defined(WITH_SDL) && !defined(WITHOUT_SDL)
@${REINPLACE_CMD} -E \
-e 's|sdl-config|${SDL_CONFIG}|g' \
${CONFIGURE_WRKSRC}/${CONFIGURE_SCRIPT}
@@ -320,7 +337,7 @@
${WRKSRC}/common.mak
post-configure:
-#.ifdef(WITH_DTS)
+#.if defined(WITH_DTS) && !defined(WITHOUT_DTS)
# @${REINPLACE_CMD} -E \
# -e 's|-ldts|${LOCALBASE}/lib/libdts_pic.a|' \
# -e 's|(-lx264)|-L${LOCALBASE}/lib \1|' \
diff -ruN --exclude=CVS /usr/ports/multimedia/ffmpeg/pkg-plist /kirby/shared/ports/ffmpeg/pkg-plist
--- /usr/ports/multimedia/ffmpeg/pkg-plist 2007-10-10 01:32:23.000000000 -0400
+++ /kirby/shared/ports/ffmpeg/pkg-plist 2008-02-10 23:01:12.000000000 -0500
@@ -1,4 +1,5 @@
bin/ffmpeg
+%%SDL%%bin/ffplay
bin/ffserver
@unexec if cmp -s %D/etc/ffserver.conf %D/etc/ffserver.conf-dist; then rm -f %D/etc/ffserver.conf; fi
etc/ffserver.conf-dist
@@ -47,7 +48,9 @@
%%SWSCAL%%lib/libswscale.so
%%SWSCAL%%lib/libswscale.so.%%SHLIB_VER%%
%%SWSCAL%%lib/libswscale.so.0.5.0
+%%FREETYPE2%%lib/vhook/drawtext.so
lib/vhook/fish.so
+%%IMLIB2%%lib/vhook/imlib2.so
lib/vhook/null.so
lib/vhook/ppm.so
lib/vhook/watermark.so
--- ffmpeg-2007.10.04_1.patch ends here ---
>Release-Note:
>Audit-Trail:
>Unformatted:
More information about the freebsd-ports-bugs
mailing list