multimedia/vlc needs postprocess (--enable-pp) Fix: - enable postprocess by default, new option WITHOUT_POSTPROCESS
Responsible Changed From-To: freebsd-ports-bugs->lioux over to maintainer
With CONFIGURE_ARGS+= --enable-pp I get cc -O -pipe -pipe -march=pentiumpro -fPIC -DPIC -I/usr/local/include -I/usr/X11R6/include -Wall -DHAVE_AV_CONFIG_H -I.. -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_GNU_SOURCE -c -o libpostproc/postprocess.o libpostproc/postprocess.c In file included from libpostproc/postprocess.c:503: libpostproc/postprocess_template.c: In function `postProcess_MMX': libpostproc/postprocess_template.c:2791: warning: unused variable `mbWidth' libpostproc/postprocess_template.c:2728: Invalid `asm' statement: libpostproc/postprocess_template.c:2728: fixed or forbidden register 0 (ax) was spilled for class GENERAL_REGS. gmake[1]: *** [libpostproc/postprocess.o] Error 1 gmake[1]: Leaving directory `/usr/home/lioux/src/myports/ports/multimedia/ffmpeg/work/ffmpeg-0.4.8/libavcodec' gmake: *** [lib] Error 2 *** Error code 2 Stop in /usr/home/lioux/src/myports/ports/multimedia/ffmpeg. under a -STABLE buildworld of FreeBSD here.here 4.9-STABLE FreeBSD 4.9-STABLE #21: Thu Mar 18 18:40:42 BRT 2004 lioux@here.here:/usr/src/sys/compile/LIOUX i386 However, it works with CONFIGURE_ARGS+= --enable-shared-pp Check the following patch. One thing, I am not comfortable about installing ffmpeg header files outside of include/ffmpeg Since the current headers under include/ffmpeg come from libavcodec, what about installing the new header as include/ffmpeg/libpostproc/postprocess.h ? Or, include/ffmpeg/postproc/postprocess.h ? --- Makefile.orig Sun Mar 14 07:11:07 2004 +++ Makefile Fri Mar 19 20:45:48 2004 @@ -7,7 +7,7 @@ PORTNAME= ffmpeg PORTVERSION= 0.4.8 -PORTREVISION= 4 +PORTREVISION= 5 CATEGORIES= multimedia audio net MASTER_SITES= ${MASTER_SITE_SOURCEFORGE} MASTER_SITE_SUBDIR= ffmpeg @@ -162,6 +162,12 @@ CONFIGURE_ARGS+= --enable-faad .endif +## post processing +.ifndef(WITHOUT_POSTPROCESS) +CONFIGURE_ARGS+= --enable-shared-pp +PLIST_FILES+= include/ffmpeg/libpostproc/postprocess.h +PLIST_DIRS+= include/ffmpeg/libpostproc +.endif pre-everything:: .ifndef(WITH_FREETYPE2) @@ -189,6 +195,12 @@ @${ECHO_MSG} 'by defining WITH_OPTIMIZED_CFLAGS' @${ECHO_MSG} .endif +.ifndef(WITHOUT_POSTPROCESS) + @${ECHO_MSG} 'You can disable post process support by defining' + @${ECHO_MSG} 'WITHOUT_POSTPROCESS' + @${ECHO_MSG} 'Beware that this might break some ports that require it' + @${ECHO_MSG} +.endif .ifndef(WITHOUT_VHOOK) @${ECHO_MSG} 'You can disable vhook support by defining WITHOUT_VHOOK' @${ECHO_MSG} @@ -285,5 +297,10 @@ .for file in ${LIB_FILES} @${INSTALL_DATA} ${WRKSRC}/${file} ${PREFIX}/lib/${file:T} .endfor +.ifndef(WITHOUT_POSTPROCESS) + @${MKDIR} ${PREFIX}/include/ffmpeg/libpostproc + @${INSTALL_DATA} ${WRKSRC}/libavcodec/libpostproc/postprocess.h \ + ${PREFIX}/include/ffmpeg/libpostproc/postprocess.h +.endif .include <bsd.port.post.mk> -- Mario S F Ferreira - DF - Brazil - "I guess this is a signature." feature, n: a documented bug | bug, n: an undocumented feature
> CONFIGURE_ARGS+= --enable-pp > libpostproc/postprocess_template.c: In function `postProcess_MMX': > libpostproc/postprocess_template.c:2728: Invalid `asm' statement: > libpostproc/postprocess_template.c:2728: fixed or forbidden register 0 (ax) was spilled for class GENERAL_REGS. I tested with WITH_MMX=yes. > CONFIGURE_ARGS+= --enable-shared-pp I would prefer the variant: > include/ffmpeg/postproc/postprocess.h cause vlc include this header with "postproc/postprocess.h" Preview of vlc at: http://people.freebsd.org/~dinoex/ports/vlc/ kind regards Dirk - Dirk Meyer, Im Grund 4, 34317 Habichtswald, Germany - [dirk.meyer@dinoex.sub.org],[dirk.meyer@guug.de],[dinoex@FreeBSD.org] Index: Makefile =================================================================== RCS file: /home/pcvs/ports/multimedia/ffmpeg/Makefile,v retrieving revision 1.36 diff -u -r1.36 Makefile --- Makefile 14 Mar 2004 04:51:05 -0000 1.36 +++ Makefile 20 Mar 2004 05:49:53 -0000 @@ -7,7 +7,7 @@ PORTNAME= ffmpeg PORTVERSION= 0.4.8 -PORTREVISION= 4 +PORTREVISION= 5 CATEGORIES= multimedia audio net MASTER_SITES= ${MASTER_SITE_SOURCEFORGE} MASTER_SITE_SUBDIR= ffmpeg @@ -163,11 +163,24 @@ CONFIGURE_ARGS+= --enable-faad .endif +## post processing +.ifndef(WITHOUT_POSTPROCESS) +CONFIGURE_ARGS+= --enable-shared-pp +PLIST_FILES+= include/ffmpeg/postproc/postprocess.h +PLIST_DIRS+= include/ffmpeg/postproc +.endif + pre-everything:: .ifndef(WITH_FREETYPE2) @${ECHO_MSG} 'Define WITH_FREETYPE2 to enable drawtext FREETYPE2 codec' @${ECHO_MSG} .endif +.ifndef(WITHOUT_POSTPROCESS) + @${ECHO_MSG} 'You can disable post process support by defining' + @${ECHO_MSG} 'WITHOUT_POSTPROCESS' + @${ECHO_MSG} 'Beware that this might break some ports that require it' + @${ECHO_MSG} +.endif .ifndef(WITHOUT_LIBA52) @${ECHO_MSG} "You can disable liba52 support by defining WITHOUT_LIBA52" @${ECHO_MSG} @@ -285,5 +298,10 @@ .for file in ${LIB_FILES} @${INSTALL_DATA} ${WRKSRC}/${file} ${PREFIX}/lib/${file:T} .endfor +.ifndef(WITHOUT_POSTPROCESS) + @${MKDIR} ${PREFIX}/include/ffmpeg/postproc + @${INSTALL_DATA} ${WRKSRC}/libavcodec/libpostproc/postprocess.h \ + ${PREFIX}/include/ffmpeg/postproc/postprocess.h +.endif .include <bsd.port.post.mk>
> +CONFIGURE_ARGS+= --enable-shared-pp > +PLIST_FILES+= include/ffmpeg/libpostproc/postprocess.h > +PLIST_DIRS+= include/ffmpeg/libpostproc > +.endif This dont't work as expected, as include/ffmpeg will be removed earlier. revised patch: kind regards Dirk - Dirk Meyer, Im Grund 4, 34317 Habichtswald, Germany - [dirk.meyer@dinoex.sub.org],[dirk.meyer@guug.de],[dinoex@FreeBSD.org] Index: Makefile =================================================================== RCS file: /home/pcvs/ports/multimedia/ffmpeg/Makefile,v retrieving revision 1.36 diff -u -r1.36 Makefile --- Makefile 14 Mar 2004 04:51:05 -0000 1.36 +++ Makefile 20 Mar 2004 07:32:33 -0000 @@ -7,7 +7,7 @@ PORTNAME= ffmpeg PORTVERSION= 0.4.8 -PORTREVISION= 4 +PORTREVISION= 5 CATEGORIES= multimedia audio net MASTER_SITES= ${MASTER_SITE_SOURCEFORGE} MASTER_SITE_SUBDIR= ffmpeg @@ -163,11 +163,25 @@ CONFIGURE_ARGS+= --enable-faad .endif +## post processing +.ifndef(WITHOUT_POSTPROCESS) +CONFIGURE_ARGS+= --enable-shared-pp +PLIST_FILES+= include/ffmpeg/postproc/postprocess.h +PLIST_DIRS+= include/ffmpeg/postproc +.endif +PLIST_DIRS+= include/ffmpeg + pre-everything:: .ifndef(WITH_FREETYPE2) @${ECHO_MSG} 'Define WITH_FREETYPE2 to enable drawtext FREETYPE2 codec' @${ECHO_MSG} .endif +.ifndef(WITHOUT_POSTPROCESS) + @${ECHO_MSG} 'You can disable post process support by defining' + @${ECHO_MSG} 'WITHOUT_POSTPROCESS' + @${ECHO_MSG} 'Beware that this might break some ports that require it' + @${ECHO_MSG} +.endif .ifndef(WITHOUT_LIBA52) @${ECHO_MSG} "You can disable liba52 support by defining WITHOUT_LIBA52" @${ECHO_MSG} @@ -285,5 +299,10 @@ .for file in ${LIB_FILES} @${INSTALL_DATA} ${WRKSRC}/${file} ${PREFIX}/lib/${file:T} .endfor +.ifndef(WITHOUT_POSTPROCESS) + @${MKDIR} ${PREFIX}/include/ffmpeg/postproc + @${INSTALL_DATA} ${WRKSRC}/libavcodec/libpostproc/postprocess.h \ + ${PREFIX}/include/ffmpeg/postproc/postprocess.h +.endif .include <bsd.port.post.mk> Index: pkg-plist =================================================================== RCS file: /home/pcvs/ports/multimedia/ffmpeg/pkg-plist,v retrieving revision 1.10 diff -u -r1.10 pkg-plist --- pkg-plist 28 Feb 2004 19:40:31 -0000 1.10 +++ pkg-plist 20 Mar 2004 07:32:33 -0000 @@ -32,4 +32,3 @@ %%PORTDOCS%%share/doc/ffmpeg/ffserver-doc.texi %%PORTDOCS%%@dirrm share/doc/ffmpeg %%VHOOK%%@dirrm lib/vhook -@dirrm include/ffmpeg
State Changed From-To: open->closed Committed, thanks!