Bug 64257 - multimedia/ffmpeg postprocess needed for multimedia/vlc
Summary: multimedia/ffmpeg postprocess needed for multimedia/vlc
Status: Closed FIXED
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: Any Any
: Normal Affects Only Me
Assignee: Mario Sergio Fujikawa Ferreira
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2004-03-14 12:10 UTC by dirk.meyer
Modified: 2004-03-21 01:34 UTC (History)
0 users

See Also:


Attachments
file.diff (1.11 KB, patch)
2004-03-14 12:10 UTC, dirk.meyer
no flags Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description dirk.meyer 2004-03-14 12:10:23 UTC
multimedia/vlc needs postprocess (--enable-pp)

Fix: - enable postprocess by default, new option WITHOUT_POSTPROCESS
Comment 1 Dirk Meyer freebsd_committer freebsd_triage 2004-03-14 13:10:18 UTC
Responsible Changed
From-To: freebsd-ports-bugs->lioux

over to maintainer
Comment 2 Mario Sergio Fujikawa Ferreira freebsd_committer freebsd_triage 2004-03-19 23:51:39 UTC
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
Comment 3 dirk.meyer 2004-03-20 05:53:31 UTC
> 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>
Comment 4 dirk.meyer 2004-03-20 07:33:20 UTC
> +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
Comment 5 Mario Sergio Fujikawa Ferreira freebsd_committer freebsd_triage 2004-03-21 01:34:00 UTC
State Changed
From-To: open->closed

Committed, thanks!