diff options
author | ade <ade@FreeBSD.org> | 2000-09-19 16:18:15 +0000 |
---|---|---|
committer | ade <ade@FreeBSD.org> | 2000-09-19 16:18:15 +0000 |
commit | 77bf5a2a8d3c1bedcdaf8d67d71cdf666d55e4fd (patch) | |
tree | 21ac6608e14f00d3b369e506df66c87d29c05854 /graphics | |
parent | bd996764a11b5824db87add28c9aa41db6da099b (diff) | |
download | FreeBSD-ports-77bf5a2a8d3c1bedcdaf8d67d71cdf666d55e4fd.zip FreeBSD-ports-77bf5a2a8d3c1bedcdaf8d67d71cdf666d55e4fd.tar.gz |
Add avifile, an MPEG-4 (aka DivX) player
PR: 21347
Submitted by: Holger Lamm <holger@eit.uni-kl.de>
Diffstat (limited to 'graphics')
-rw-r--r-- | graphics/Makefile | 1 | ||||
-rw-r--r-- | graphics/avifile/Makefile | 38 | ||||
-rw-r--r-- | graphics/avifile/distinfo | 2 | ||||
-rw-r--r-- | graphics/avifile/files/patch-aa | 42 | ||||
-rw-r--r-- | graphics/avifile/files/patch-ab | 82 | ||||
-rw-r--r-- | graphics/avifile/files/patch-ac | 11 | ||||
-rw-r--r-- | graphics/avifile/files/patch-ad | 235 | ||||
-rw-r--r-- | graphics/avifile/pkg-comment | 1 | ||||
-rw-r--r-- | graphics/avifile/pkg-descr | 3 | ||||
-rw-r--r-- | graphics/avifile/pkg-plist | 66 | ||||
-rw-r--r-- | graphics/win32-codecs/Makefile | 38 | ||||
-rw-r--r-- | graphics/win32-codecs/distinfo | 2 | ||||
-rw-r--r-- | graphics/win32-codecs/files/patch-aa | 42 | ||||
-rw-r--r-- | graphics/win32-codecs/files/patch-ab | 82 | ||||
-rw-r--r-- | graphics/win32-codecs/files/patch-ac | 11 | ||||
-rw-r--r-- | graphics/win32-codecs/files/patch-ad | 235 | ||||
-rw-r--r-- | graphics/win32-codecs/pkg-comment | 1 | ||||
-rw-r--r-- | graphics/win32-codecs/pkg-descr | 3 | ||||
-rw-r--r-- | graphics/win32-codecs/pkg-plist | 66 |
19 files changed, 961 insertions, 0 deletions
diff --git a/graphics/Makefile b/graphics/Makefile index 5fa1237..416340c 100644 --- a/graphics/Makefile +++ b/graphics/Makefile @@ -11,6 +11,7 @@ SUBDIR += aalib SUBDIR += aero SUBDIR += aview + SUBDIR += avifile SUBDIR += backfract SUBDIR += camediaplay SUBDIR += camserv diff --git a/graphics/avifile/Makefile b/graphics/avifile/Makefile new file mode 100644 index 0000000..e217d78 --- /dev/null +++ b/graphics/avifile/Makefile @@ -0,0 +1,38 @@ +# New ports collection makefile for: avifile +# Date created: 16 September 2000 +# Whom: Holger Lamm +# +# $FreeBSD$ +# + +PORTNAME= avifile +PORTVERSION= 0.47.1 +CATEGORIES= graphics +MASTER_SITES= http://divx.euro.ru/ +DISTFILES= avifile-${PORTVERSION}${EXTRACT_SUFX} binaries.zip +EXTRACT_ONLY= avifile-${PORTVERSION}${EXTRACT_SUFX} + +MAINTAINER= holger@eit.uni-kl.de + +LIB_DEPENDS= qt2.4:${PORTSDIR}/x11-toolkits/qt22 \ + SDL-1.1.2:${PORTSDIR}/devel/sdl-devel +BUILD_DEPENDS= unzip:${PORTSDIR}/archivers/unzip + +ONLY_FOR_ARCHS= i386 +USE_GMAKE= yes +USE_XLIB= yes +HAS_CONFIGURE= yes + +SDL_CONFIG?= ${LOCALBASE}/bin/sdl11-config +MOC?= ${X11BASE}/bin/moc2 + +CONFIGURE_ENV= SDL_CONFIG="${SDL_CONFIG}" \ + MOC="${MOC}" +CONFIGURE_ARGS= --enable-mmx \ + --with-qt-includes=${X11BASE}/include/qt2 \ + --with-win32-path=${LOCALBASE}/lib/win32 + +pre-install: + unzip ${DISTDIR}/binaries.zip -d ${LOCALBASE}/lib/win32 + strip ${WRKSRC}/bin/aviplay ${WRKSRC}/bin/benchmark +.include <bsd.port.mk> diff --git a/graphics/avifile/distinfo b/graphics/avifile/distinfo new file mode 100644 index 0000000..d74c72f --- /dev/null +++ b/graphics/avifile/distinfo @@ -0,0 +1,2 @@ +MD5 (avifile-0.47.1.tar.gz) = edbad85f6c72d61f3a66d99c61620f39 +MD5 (binaries.zip) = 6df7c0a266ba6e8c022160605791644b diff --git a/graphics/avifile/files/patch-aa b/graphics/avifile/files/patch-aa new file mode 100644 index 0000000..460f424 --- /dev/null +++ b/graphics/avifile/files/patch-aa @@ -0,0 +1,42 @@ +--- configure.orig Sat Sep 16 11:33:30 2000 ++++ configure Sat Sep 16 11:43:00 2000 +@@ -2302,7 +2302,7 @@ + + + USE_QT=1 +-USE_VIDCAP=1 ++USE_VIDCAP=0 + + # Check whether --enable-qt or --disable-qt was given. + if test "${enable_qt+set}" = set; then +@@ -2631,7 +2631,7 @@ + + CXXFLAGS="$CXXFLAGS -I$qt_incdir" + LDFLAGS="-L$qt_libdir $X_LDFLAGS" +-LIBS="$LIBS -lqt -lXext -lX11 $LIBSOCKET" ++LIBS="$LIBS -lqt2 -lXext -lX11 $LIBSOCKET" + + + ac_ext=C +--- player/Makefile.in.orig Sat Sep 16 11:33:26 2000 ++++ player/Makefile.in Sat Sep 16 11:43:46 2000 +@@ -7,7 +7,7 @@ + + + MOC=@MOC@ +-LIBS=@LIBS@ -lX11 -lXext -lqt -laviplay @DGA_LDADD@ @SDL_LIBS@ ++LIBS=@LIBS@ -lX11 -lXext -lqt2 -laviplay @DGA_LDADD@ @SDL_LIBS@ + LIB_DIRS=-L../lib @QT_LDFLAGS@ -L/usr/X11R6/lib -L/usr/local/lib + CDOPT=@CD_OPT@ + LDOPT=@LD_OPT@ +--- samples/benchmark/Makefile.in.orig Sat Sep 16 11:33:29 2000 ++++ samples/benchmark/Makefile.in Sat Sep 16 11:43:27 2000 +@@ -5,7 +5,7 @@ + CFLAGS=-I../../include -I/usr/X11R6/include @QT_INCLUDES@ @SDL_CFLAGS@ + + +-LIBS=@LIBS@ -lX11 -lXext -lqt -laviplay @DGA_LDADD@ @SDL_LIBS@ ++LIBS=@LIBS@ -lX11 -lXext -lqt2 -laviplay @DGA_LDADD@ @SDL_LIBS@ + LIB_DIRS=@QT_LDFLAGS@ -L/usr/X11R6/lib -L../../lib + + MOC=@MOC@ diff --git a/graphics/avifile/files/patch-ab b/graphics/avifile/files/patch-ab new file mode 100644 index 0000000..e90a066 --- /dev/null +++ b/graphics/avifile/files/patch-ab @@ -0,0 +1,82 @@ +--- lib/avifile/AviWrite.cpp.orig Mon Sep 11 15:40:31 2000 ++++ lib/avifile/AviWrite.cpp Wed Sep 13 20:52:55 2000 +@@ -19,7 +19,11 @@ + try + { + m_status=0; ++#ifdef O_LARGEFILE + m_fd=open(name, O_WRONLY | O_CREAT | O_TRUNC | O_LARGEFILE, mask); ++#else ++ m_fd=open(name, O_WRONLY | O_CREAT | O_TRUNC, mask); ++#endif + if(m_fd==-1) + throw FATAL("Can't open file for writing"); + +@@ -203,7 +207,11 @@ + } + long long AviWriteFile::FileSize() + { ++#ifdef __Linux__ + return lseek64(m_fd, 0, SEEK_CUR); ++#else ++ return lseek(m_fd, 0, SEEK_CUR); ++#endif + } + + AviWriteStream::AviWriteStream +--- lib/videocodec/Module.h.orig Sat Sep 9 14:24:49 2000 ++++ lib/videocodec/Module.h Wed Sep 13 20:20:25 2000 +@@ -4,6 +4,10 @@ + #include <videoencoder.h> + #include <list> + #include <string> ++#ifdef __FreeBSD__ ++#include <sys/time.h> ++#endif ++ + using namespace std; + + class VideoCodecControl; +--- player/renderer.cpp.orig Mon Sep 11 08:38:07 2000 ++++ player/renderer.cpp Fri Sep 15 20:22:55 2000 +@@ -11,6 +11,7 @@ + #ifdef __FreeBSD__ + #include <machine/param.h> + #include <sys/types.h> ++#include <unistd.h> + #endif + #include <sys/ipc.h> + #include <sys/shm.h> +--- lib/aviplay/aviutil.cpp.orig Sat Sep 16 13:49:08 2000 ++++ lib/aviplay/aviutil.cpp Sat Sep 16 13:54:06 2000 +@@ -28,16 +28,18 @@ + } + CPU_Freq::CPU_Freq() + { +- FILE *f = fopen ("/proc/cpuinfo", "r"); + char line[200]; + char model[200]="unknown"; + char flags[500]=""; + char *s,*value; + ++#ifdef __FreeBSD__ ++ freq=old_freq(); ++ cerr<<freq/1000.<<" MHz processor detected"<<endl; ++#else ++ FILE *f = fopen ("/proc/cpuinfo", "r"); ++ + freq=-1; +-// freq=old_freq(); +-// cerr<<freq/1000.<<" MHz processor detected"<<endl; +-// return; + if (!f) + { + printf("Can't open /proc/cpuinfo for reading\n"); +@@ -86,6 +88,7 @@ + } + #endif + fclose(f); ++#endif + } + + CPU_Freq freq; diff --git a/graphics/avifile/files/patch-ac b/graphics/avifile/files/patch-ac new file mode 100644 index 0000000..594573b --- /dev/null +++ b/graphics/avifile/files/patch-ac @@ -0,0 +1,11 @@ +--- xmps-avi-plugin/Makefile.in.orig Sat Sep 16 14:13:04 2000 ++++ xmps-avi-plugin/Makefile.in Sat Sep 16 14:20:30 2000 +@@ -1,6 +1,6 @@ +-LIBS = -lstdc++ -L../lib -L@libdir@ -laviplay -lpthread @XMPS_LIBS@ ++LIBS = -lstdc++ -L../lib -L@libdir@ -laviplay -pthread @XMPS_LIBS@ + +-INCLUDES = -I. -I../include -I@includedir@/avifile @XMPS_CFLAGS@ ++INCLUDES = -I. -I../include -I@includedir@/avifile @XMPS_CFLAGS@ @SDL_CFLAGS@ + + all: avi_configure.o avi_codec.o + $(CC) -shared avi_configure.o avi_codec.o $(LIBS) -o libavi.so diff --git a/graphics/avifile/files/patch-ad b/graphics/avifile/files/patch-ad new file mode 100644 index 0000000..a8f54d4 --- /dev/null +++ b/graphics/avifile/files/patch-ad @@ -0,0 +1,235 @@ +--- lib/loader/ext.c.orig Sat Sep 16 17:02:10 2000 ++++ lib/loader/ext.c Sat Sep 16 17:02:14 2000 +@@ -7,7 +7,7 @@ + ********************************************************/ + #include <config.h> + +-#include <malloc.h> ++#include <stdlib.h> + #include <unistd.h> + #include <sys/mman.h> + #include <errno.h> +--- lib/loader/win32.c.orig Sat Sep 16 17:03:28 2000 ++++ lib/loader/win32.c Sat Sep 16 17:03:30 2000 +@@ -13,7 +13,7 @@ + #include "win32.h" + #include <stdio.h> + #include <pthread.h> +-#include <malloc.h> ++#include <stdlib.h> + #include <time.h> + #include <sys/types.h> + #include <sys/time.h> +--- lib/loader/driver.c.orig Sat Sep 16 17:04:30 2000 ++++ lib/loader/driver.c Sat Sep 16 17:04:32 2000 +@@ -1,6 +1,6 @@ + #include <config.h> + #include <stdio.h> +-#include <malloc.h> ++#include <stdlib.h> + #include <wine/driver.h> + #include <wine/pe_image.h> + #include <wine/winreg.h> +--- lib/loader/resource.c.orig Sat Sep 16 17:07:41 2000 ++++ lib/loader/resource.c Sat Sep 16 17:08:00 2000 +@@ -253,6 +253,56 @@ + return RES_SizeofResource( hModule, hRsrc ); + } + ++/********************************************************************** ++ * LoadStringW (USER32.376) ++ */ ++INT WINAPI LoadStringW( HINSTANCE instance, UINT resource_id, ++ LPWSTR buffer, INT buflen ) ++{ ++ HGLOBAL hmem; ++ HRSRC hrsrc; ++ WCHAR *p; ++ int string_num; ++ int i; ++ ++ if (HIWORD(resource_id)==0xFFFF) /* netscape 3 passes this */ ++ resource_id = (UINT)(-((INT)resource_id)); ++ TRACE("instance = %04x, id = %04x, buffer = %08x, " ++ "length = %d\n", instance, (int)resource_id, (int) buffer, buflen); ++ ++ /* Use bits 4 - 19 (incremented by 1) as resourceid, mask out ++ * 20 - 31. */ ++ hrsrc = FindResourceW( instance, (LPCWSTR)(((resource_id>>4)&0xffff)+1), ++ RT_STRINGW ); ++ if (!hrsrc) return 0; ++ hmem = LoadResource( instance, hrsrc ); ++ if (!hmem) return 0; ++ ++ p = LockResource(hmem); ++ string_num = resource_id & 0x000f; ++ for (i = 0; i < string_num; i++) ++ p += *p + 1; ++ ++ TRACE("strlen = %d\n", (int)*p ); ++ ++ if (buffer == NULL) return *p; ++ i = min(buflen - 1, *p); ++ if (i > 0) { ++ memcpy(buffer, p + 1, i * sizeof (WCHAR)); ++ buffer[i] = (WCHAR) 0; ++ } else { ++ if (buflen > 1) { ++ buffer[0] = (WCHAR) 0; ++ return 0; ++ } ++#if 0 ++ WARN("Dont know why caller give buflen=%d *p=%d trying to obtain string '%s'\n", buflen, *p, p + 1); ++#endif ++ } ++ ++ TRACE("String loaded !\n"); ++ return i; ++} + + + /********************************************************************** +@@ -303,57 +353,6 @@ + HeapFree( GetProcessHeap(), 0, wbuf ); + + return retval; +-} +- +-/********************************************************************** +- * LoadStringW (USER32.376) +- */ +-INT WINAPI LoadStringW( HINSTANCE instance, UINT resource_id, +- LPWSTR buffer, INT buflen ) +-{ +- HGLOBAL hmem; +- HRSRC hrsrc; +- WCHAR *p; +- int string_num; +- int i; +- +- if (HIWORD(resource_id)==0xFFFF) /* netscape 3 passes this */ +- resource_id = (UINT)(-((INT)resource_id)); +- TRACE("instance = %04x, id = %04x, buffer = %08x, " +- "length = %d\n", instance, (int)resource_id, (int) buffer, buflen); +- +- /* Use bits 4 - 19 (incremented by 1) as resourceid, mask out +- * 20 - 31. */ +- hrsrc = FindResourceW( instance, (LPCWSTR)(((resource_id>>4)&0xffff)+1), +- RT_STRINGW ); +- if (!hrsrc) return 0; +- hmem = LoadResource( instance, hrsrc ); +- if (!hmem) return 0; +- +- p = LockResource(hmem); +- string_num = resource_id & 0x000f; +- for (i = 0; i < string_num; i++) +- p += *p + 1; +- +- TRACE("strlen = %d\n", (int)*p ); +- +- if (buffer == NULL) return *p; +- i = min(buflen - 1, *p); +- if (i > 0) { +- memcpy(buffer, p + 1, i * sizeof (WCHAR)); +- buffer[i] = (WCHAR) 0; +- } else { +- if (buflen > 1) { +- buffer[0] = (WCHAR) 0; +- return 0; +- } +-#if 0 +- WARN("Dont know why caller give buflen=%d *p=%d trying to obtain string '%s'\n", buflen, *p, p + 1); +-#endif +- } +- +- TRACE("String loaded !\n"); +- return i; + } + + /* Messages...used by FormatMessage32* (KERNEL32.something) +--- lib/videocodec/VideoDecoder.cpp.orig Sat Sep 16 17:11:41 2000 ++++ lib/videocodec/VideoDecoder.cpp Sat Sep 16 17:16:25 2000 +@@ -20,7 +20,6 @@ + #include <fcntl.h> + #include <sys/mman.h> + #include <sys/types.h> +-#include <malloc.h> + #include <stdio.h> + #include <unistd.h> + #include <strstream> +--- lib/avifile/Cache.h.orig Sat Sep 16 17:22:11 2000 ++++ lib/avifile/Cache.h Sat Sep 16 17:22:14 2000 +@@ -2,7 +2,7 @@ + #include <default.h> + #define _LARGEFILE64_SOURCE + #include <unistd.h> +-#include <malloc.h> ++#include <stdlib.h> + #include <string.h> + #include <stdio.h> + #include <pthread.h> +--- lib/avifile/FastReadStream.cpp.orig Sat Sep 16 17:23:45 2000 ++++ lib/avifile/FastReadStream.cpp Sat Sep 16 17:23:47 2000 +@@ -8,7 +8,7 @@ + #include <features.h> + #endif + #include <unistd.h> +-#include <malloc.h> ++#include <stdlib.h> + + #ifdef __FreeBSD__ + #define lseek64 lseek +--- lib/avifile/AviRead.h.orig Sat Sep 16 17:25:10 2000 ++++ lib/avifile/AviRead.h Sat Sep 16 17:25:13 2000 +@@ -10,7 +10,7 @@ + #include <avifmt.h> + #include <default.h> + #include <unistd.h> +-#include <malloc.h> ++#include <stdlib.h> + #include <string.h> + #include <stdio.h> + #include <pthread.h> +--- lib/avifile/AviWrite.h.orig Sat Sep 16 17:26:35 2000 ++++ lib/avifile/AviWrite.h Sat Sep 16 17:26:37 2000 +@@ -11,7 +11,7 @@ + #include <avifmt.h> + #include <default.h> + #include <unistd.h> +-#include <malloc.h> ++#include <stdlib.h> + #include <string.h> + #include <stdio.h> + #include <pthread.h> +--- samples/benchmark/main.cpp.orig Sat Sep 16 17:28:22 2000 ++++ samples/benchmark/main.cpp Sat Sep 16 17:28:24 2000 +@@ -9,7 +9,6 @@ + #include <config.h> + + #include <stdio.h> +-#include <malloc.h> + #include <signal.h> + #include <iostream.h> + #include <unistd.h> +--- samples/benchmark/renderer.cpp.orig Sat Sep 16 17:29:28 2000 ++++ samples/benchmark/renderer.cpp Sat Sep 16 17:29:29 2000 +@@ -14,7 +14,7 @@ + #include <sys/ipc.h> + #include <sys/shm.h> + +-#include <malloc.h> ++#include <stdlib.h> + #include <pthread.h> + #include "renderer.h" + #include "RegAccess.h" +--- player/renderer.cpp.orig Sat Sep 16 22:31:56 2000 ++++ player/renderer.cpp Sat Sep 16 22:32:02 2000 +@@ -16,7 +16,7 @@ + #include <sys/ipc.h> + #include <sys/shm.h> + +-#include <malloc.h> ++#include <stdlib.h> + #include <pthread.h> + #include "renderer.h" + #include "RegAccess.h" diff --git a/graphics/avifile/pkg-comment b/graphics/avifile/pkg-comment new file mode 100644 index 0000000..ab338dd --- /dev/null +++ b/graphics/avifile/pkg-comment @@ -0,0 +1 @@ +An MPEG-4 (DivX) video player diff --git a/graphics/avifile/pkg-descr b/graphics/avifile/pkg-descr new file mode 100644 index 0000000..afc3e64 --- /dev/null +++ b/graphics/avifile/pkg-descr @@ -0,0 +1,3 @@ +An MPEG-4 (aka DivX) player built around the Windows binaries, +but does not need Wine. +There is also a xmps plugin you can build (manually). diff --git a/graphics/avifile/pkg-plist b/graphics/avifile/pkg-plist new file mode 100644 index 0000000..3ab050f --- /dev/null +++ b/graphics/avifile/pkg-plist @@ -0,0 +1,66 @@ +include/avifile/audiodecoder.h +include/avifile/audioencoder.h +include/avifile/avifile.h +include/avifile/avifmt.h +include/avifile/aviplay.h +include/avifile/aviutil.h +include/avifile/config.h +include/avifile/default.h +include/avifile/except.h +include/avifile/loader.h +include/avifile/registry.h +include/avifile/videodecoder.h +include/avifile/videoencoder.h +include/avifile/wine/basetsd.h +include/avifile/wine/config.h +include/avifile/wine/debugtools.h +include/avifile/wine/driver.h +include/avifile/wine/elfdll.h +include/avifile/wine/heap.h +include/avifile/wine/ldt.h +include/avifile/wine/mmreg.h +include/avifile/wine/module.h +include/avifile/wine/msacm.h +include/avifile/wine/msacmdrv.h +include/avifile/wine/ntdef.h +include/avifile/wine/pe_image.h +include/avifile/wine/poppack.h +include/avifile/wine/pshpack1.h +include/avifile/wine/pshpack2.h +include/avifile/wine/pshpack4.h +include/avifile/wine/pshpack8.h +include/avifile/wine/vfw.h +include/avifile/wine/winbase.h +include/avifile/wine/windef.h +include/avifile/wine/windows.h +include/avifile/wine/winerror.h +include/avifile/wine/winestring.h +include/avifile/wine/winnt.h +include/avifile/wine/winreg.h +include/avifile/wine/winuser.h +@dirrm include/avifile/wine +@dirrm include/avifile +bin/aviplay +bin/benchmark +share/avifile/open.ppm +share/avifile/pause.ppm +share/avifile/play.ppm +share/avifile/stop.ppm +share/avifile/test.png +@dirrm share/avifile +lib/win32/ativcr2.dll +lib/win32/divxa32.acm +lib/win32/divxc32.dll +lib/win32/divxc32f.dll +lib/win32/i263_32.drv +lib/win32/iccvid.dll +lib/win32/ir32_32.dll +lib/win32/ir41_32.dll +lib/win32/ir41_qc.dll +lib/win32/ir50_32.dll +lib/win32/ir50_qc.dll +lib/win32/mpg4c32.dll +@dirrm lib/win32 +lib/libaviplay.so +@exec /sbin/ldconfig -m %D/lib +@unexec /sbin/ldconfig -R diff --git a/graphics/win32-codecs/Makefile b/graphics/win32-codecs/Makefile new file mode 100644 index 0000000..e217d78 --- /dev/null +++ b/graphics/win32-codecs/Makefile @@ -0,0 +1,38 @@ +# New ports collection makefile for: avifile +# Date created: 16 September 2000 +# Whom: Holger Lamm +# +# $FreeBSD$ +# + +PORTNAME= avifile +PORTVERSION= 0.47.1 +CATEGORIES= graphics +MASTER_SITES= http://divx.euro.ru/ +DISTFILES= avifile-${PORTVERSION}${EXTRACT_SUFX} binaries.zip +EXTRACT_ONLY= avifile-${PORTVERSION}${EXTRACT_SUFX} + +MAINTAINER= holger@eit.uni-kl.de + +LIB_DEPENDS= qt2.4:${PORTSDIR}/x11-toolkits/qt22 \ + SDL-1.1.2:${PORTSDIR}/devel/sdl-devel +BUILD_DEPENDS= unzip:${PORTSDIR}/archivers/unzip + +ONLY_FOR_ARCHS= i386 +USE_GMAKE= yes +USE_XLIB= yes +HAS_CONFIGURE= yes + +SDL_CONFIG?= ${LOCALBASE}/bin/sdl11-config +MOC?= ${X11BASE}/bin/moc2 + +CONFIGURE_ENV= SDL_CONFIG="${SDL_CONFIG}" \ + MOC="${MOC}" +CONFIGURE_ARGS= --enable-mmx \ + --with-qt-includes=${X11BASE}/include/qt2 \ + --with-win32-path=${LOCALBASE}/lib/win32 + +pre-install: + unzip ${DISTDIR}/binaries.zip -d ${LOCALBASE}/lib/win32 + strip ${WRKSRC}/bin/aviplay ${WRKSRC}/bin/benchmark +.include <bsd.port.mk> diff --git a/graphics/win32-codecs/distinfo b/graphics/win32-codecs/distinfo new file mode 100644 index 0000000..d74c72f --- /dev/null +++ b/graphics/win32-codecs/distinfo @@ -0,0 +1,2 @@ +MD5 (avifile-0.47.1.tar.gz) = edbad85f6c72d61f3a66d99c61620f39 +MD5 (binaries.zip) = 6df7c0a266ba6e8c022160605791644b diff --git a/graphics/win32-codecs/files/patch-aa b/graphics/win32-codecs/files/patch-aa new file mode 100644 index 0000000..460f424 --- /dev/null +++ b/graphics/win32-codecs/files/patch-aa @@ -0,0 +1,42 @@ +--- configure.orig Sat Sep 16 11:33:30 2000 ++++ configure Sat Sep 16 11:43:00 2000 +@@ -2302,7 +2302,7 @@ + + + USE_QT=1 +-USE_VIDCAP=1 ++USE_VIDCAP=0 + + # Check whether --enable-qt or --disable-qt was given. + if test "${enable_qt+set}" = set; then +@@ -2631,7 +2631,7 @@ + + CXXFLAGS="$CXXFLAGS -I$qt_incdir" + LDFLAGS="-L$qt_libdir $X_LDFLAGS" +-LIBS="$LIBS -lqt -lXext -lX11 $LIBSOCKET" ++LIBS="$LIBS -lqt2 -lXext -lX11 $LIBSOCKET" + + + ac_ext=C +--- player/Makefile.in.orig Sat Sep 16 11:33:26 2000 ++++ player/Makefile.in Sat Sep 16 11:43:46 2000 +@@ -7,7 +7,7 @@ + + + MOC=@MOC@ +-LIBS=@LIBS@ -lX11 -lXext -lqt -laviplay @DGA_LDADD@ @SDL_LIBS@ ++LIBS=@LIBS@ -lX11 -lXext -lqt2 -laviplay @DGA_LDADD@ @SDL_LIBS@ + LIB_DIRS=-L../lib @QT_LDFLAGS@ -L/usr/X11R6/lib -L/usr/local/lib + CDOPT=@CD_OPT@ + LDOPT=@LD_OPT@ +--- samples/benchmark/Makefile.in.orig Sat Sep 16 11:33:29 2000 ++++ samples/benchmark/Makefile.in Sat Sep 16 11:43:27 2000 +@@ -5,7 +5,7 @@ + CFLAGS=-I../../include -I/usr/X11R6/include @QT_INCLUDES@ @SDL_CFLAGS@ + + +-LIBS=@LIBS@ -lX11 -lXext -lqt -laviplay @DGA_LDADD@ @SDL_LIBS@ ++LIBS=@LIBS@ -lX11 -lXext -lqt2 -laviplay @DGA_LDADD@ @SDL_LIBS@ + LIB_DIRS=@QT_LDFLAGS@ -L/usr/X11R6/lib -L../../lib + + MOC=@MOC@ diff --git a/graphics/win32-codecs/files/patch-ab b/graphics/win32-codecs/files/patch-ab new file mode 100644 index 0000000..e90a066 --- /dev/null +++ b/graphics/win32-codecs/files/patch-ab @@ -0,0 +1,82 @@ +--- lib/avifile/AviWrite.cpp.orig Mon Sep 11 15:40:31 2000 ++++ lib/avifile/AviWrite.cpp Wed Sep 13 20:52:55 2000 +@@ -19,7 +19,11 @@ + try + { + m_status=0; ++#ifdef O_LARGEFILE + m_fd=open(name, O_WRONLY | O_CREAT | O_TRUNC | O_LARGEFILE, mask); ++#else ++ m_fd=open(name, O_WRONLY | O_CREAT | O_TRUNC, mask); ++#endif + if(m_fd==-1) + throw FATAL("Can't open file for writing"); + +@@ -203,7 +207,11 @@ + } + long long AviWriteFile::FileSize() + { ++#ifdef __Linux__ + return lseek64(m_fd, 0, SEEK_CUR); ++#else ++ return lseek(m_fd, 0, SEEK_CUR); ++#endif + } + + AviWriteStream::AviWriteStream +--- lib/videocodec/Module.h.orig Sat Sep 9 14:24:49 2000 ++++ lib/videocodec/Module.h Wed Sep 13 20:20:25 2000 +@@ -4,6 +4,10 @@ + #include <videoencoder.h> + #include <list> + #include <string> ++#ifdef __FreeBSD__ ++#include <sys/time.h> ++#endif ++ + using namespace std; + + class VideoCodecControl; +--- player/renderer.cpp.orig Mon Sep 11 08:38:07 2000 ++++ player/renderer.cpp Fri Sep 15 20:22:55 2000 +@@ -11,6 +11,7 @@ + #ifdef __FreeBSD__ + #include <machine/param.h> + #include <sys/types.h> ++#include <unistd.h> + #endif + #include <sys/ipc.h> + #include <sys/shm.h> +--- lib/aviplay/aviutil.cpp.orig Sat Sep 16 13:49:08 2000 ++++ lib/aviplay/aviutil.cpp Sat Sep 16 13:54:06 2000 +@@ -28,16 +28,18 @@ + } + CPU_Freq::CPU_Freq() + { +- FILE *f = fopen ("/proc/cpuinfo", "r"); + char line[200]; + char model[200]="unknown"; + char flags[500]=""; + char *s,*value; + ++#ifdef __FreeBSD__ ++ freq=old_freq(); ++ cerr<<freq/1000.<<" MHz processor detected"<<endl; ++#else ++ FILE *f = fopen ("/proc/cpuinfo", "r"); ++ + freq=-1; +-// freq=old_freq(); +-// cerr<<freq/1000.<<" MHz processor detected"<<endl; +-// return; + if (!f) + { + printf("Can't open /proc/cpuinfo for reading\n"); +@@ -86,6 +88,7 @@ + } + #endif + fclose(f); ++#endif + } + + CPU_Freq freq; diff --git a/graphics/win32-codecs/files/patch-ac b/graphics/win32-codecs/files/patch-ac new file mode 100644 index 0000000..594573b --- /dev/null +++ b/graphics/win32-codecs/files/patch-ac @@ -0,0 +1,11 @@ +--- xmps-avi-plugin/Makefile.in.orig Sat Sep 16 14:13:04 2000 ++++ xmps-avi-plugin/Makefile.in Sat Sep 16 14:20:30 2000 +@@ -1,6 +1,6 @@ +-LIBS = -lstdc++ -L../lib -L@libdir@ -laviplay -lpthread @XMPS_LIBS@ ++LIBS = -lstdc++ -L../lib -L@libdir@ -laviplay -pthread @XMPS_LIBS@ + +-INCLUDES = -I. -I../include -I@includedir@/avifile @XMPS_CFLAGS@ ++INCLUDES = -I. -I../include -I@includedir@/avifile @XMPS_CFLAGS@ @SDL_CFLAGS@ + + all: avi_configure.o avi_codec.o + $(CC) -shared avi_configure.o avi_codec.o $(LIBS) -o libavi.so diff --git a/graphics/win32-codecs/files/patch-ad b/graphics/win32-codecs/files/patch-ad new file mode 100644 index 0000000..a8f54d4 --- /dev/null +++ b/graphics/win32-codecs/files/patch-ad @@ -0,0 +1,235 @@ +--- lib/loader/ext.c.orig Sat Sep 16 17:02:10 2000 ++++ lib/loader/ext.c Sat Sep 16 17:02:14 2000 +@@ -7,7 +7,7 @@ + ********************************************************/ + #include <config.h> + +-#include <malloc.h> ++#include <stdlib.h> + #include <unistd.h> + #include <sys/mman.h> + #include <errno.h> +--- lib/loader/win32.c.orig Sat Sep 16 17:03:28 2000 ++++ lib/loader/win32.c Sat Sep 16 17:03:30 2000 +@@ -13,7 +13,7 @@ + #include "win32.h" + #include <stdio.h> + #include <pthread.h> +-#include <malloc.h> ++#include <stdlib.h> + #include <time.h> + #include <sys/types.h> + #include <sys/time.h> +--- lib/loader/driver.c.orig Sat Sep 16 17:04:30 2000 ++++ lib/loader/driver.c Sat Sep 16 17:04:32 2000 +@@ -1,6 +1,6 @@ + #include <config.h> + #include <stdio.h> +-#include <malloc.h> ++#include <stdlib.h> + #include <wine/driver.h> + #include <wine/pe_image.h> + #include <wine/winreg.h> +--- lib/loader/resource.c.orig Sat Sep 16 17:07:41 2000 ++++ lib/loader/resource.c Sat Sep 16 17:08:00 2000 +@@ -253,6 +253,56 @@ + return RES_SizeofResource( hModule, hRsrc ); + } + ++/********************************************************************** ++ * LoadStringW (USER32.376) ++ */ ++INT WINAPI LoadStringW( HINSTANCE instance, UINT resource_id, ++ LPWSTR buffer, INT buflen ) ++{ ++ HGLOBAL hmem; ++ HRSRC hrsrc; ++ WCHAR *p; ++ int string_num; ++ int i; ++ ++ if (HIWORD(resource_id)==0xFFFF) /* netscape 3 passes this */ ++ resource_id = (UINT)(-((INT)resource_id)); ++ TRACE("instance = %04x, id = %04x, buffer = %08x, " ++ "length = %d\n", instance, (int)resource_id, (int) buffer, buflen); ++ ++ /* Use bits 4 - 19 (incremented by 1) as resourceid, mask out ++ * 20 - 31. */ ++ hrsrc = FindResourceW( instance, (LPCWSTR)(((resource_id>>4)&0xffff)+1), ++ RT_STRINGW ); ++ if (!hrsrc) return 0; ++ hmem = LoadResource( instance, hrsrc ); ++ if (!hmem) return 0; ++ ++ p = LockResource(hmem); ++ string_num = resource_id & 0x000f; ++ for (i = 0; i < string_num; i++) ++ p += *p + 1; ++ ++ TRACE("strlen = %d\n", (int)*p ); ++ ++ if (buffer == NULL) return *p; ++ i = min(buflen - 1, *p); ++ if (i > 0) { ++ memcpy(buffer, p + 1, i * sizeof (WCHAR)); ++ buffer[i] = (WCHAR) 0; ++ } else { ++ if (buflen > 1) { ++ buffer[0] = (WCHAR) 0; ++ return 0; ++ } ++#if 0 ++ WARN("Dont know why caller give buflen=%d *p=%d trying to obtain string '%s'\n", buflen, *p, p + 1); ++#endif ++ } ++ ++ TRACE("String loaded !\n"); ++ return i; ++} + + + /********************************************************************** +@@ -303,57 +353,6 @@ + HeapFree( GetProcessHeap(), 0, wbuf ); + + return retval; +-} +- +-/********************************************************************** +- * LoadStringW (USER32.376) +- */ +-INT WINAPI LoadStringW( HINSTANCE instance, UINT resource_id, +- LPWSTR buffer, INT buflen ) +-{ +- HGLOBAL hmem; +- HRSRC hrsrc; +- WCHAR *p; +- int string_num; +- int i; +- +- if (HIWORD(resource_id)==0xFFFF) /* netscape 3 passes this */ +- resource_id = (UINT)(-((INT)resource_id)); +- TRACE("instance = %04x, id = %04x, buffer = %08x, " +- "length = %d\n", instance, (int)resource_id, (int) buffer, buflen); +- +- /* Use bits 4 - 19 (incremented by 1) as resourceid, mask out +- * 20 - 31. */ +- hrsrc = FindResourceW( instance, (LPCWSTR)(((resource_id>>4)&0xffff)+1), +- RT_STRINGW ); +- if (!hrsrc) return 0; +- hmem = LoadResource( instance, hrsrc ); +- if (!hmem) return 0; +- +- p = LockResource(hmem); +- string_num = resource_id & 0x000f; +- for (i = 0; i < string_num; i++) +- p += *p + 1; +- +- TRACE("strlen = %d\n", (int)*p ); +- +- if (buffer == NULL) return *p; +- i = min(buflen - 1, *p); +- if (i > 0) { +- memcpy(buffer, p + 1, i * sizeof (WCHAR)); +- buffer[i] = (WCHAR) 0; +- } else { +- if (buflen > 1) { +- buffer[0] = (WCHAR) 0; +- return 0; +- } +-#if 0 +- WARN("Dont know why caller give buflen=%d *p=%d trying to obtain string '%s'\n", buflen, *p, p + 1); +-#endif +- } +- +- TRACE("String loaded !\n"); +- return i; + } + + /* Messages...used by FormatMessage32* (KERNEL32.something) +--- lib/videocodec/VideoDecoder.cpp.orig Sat Sep 16 17:11:41 2000 ++++ lib/videocodec/VideoDecoder.cpp Sat Sep 16 17:16:25 2000 +@@ -20,7 +20,6 @@ + #include <fcntl.h> + #include <sys/mman.h> + #include <sys/types.h> +-#include <malloc.h> + #include <stdio.h> + #include <unistd.h> + #include <strstream> +--- lib/avifile/Cache.h.orig Sat Sep 16 17:22:11 2000 ++++ lib/avifile/Cache.h Sat Sep 16 17:22:14 2000 +@@ -2,7 +2,7 @@ + #include <default.h> + #define _LARGEFILE64_SOURCE + #include <unistd.h> +-#include <malloc.h> ++#include <stdlib.h> + #include <string.h> + #include <stdio.h> + #include <pthread.h> +--- lib/avifile/FastReadStream.cpp.orig Sat Sep 16 17:23:45 2000 ++++ lib/avifile/FastReadStream.cpp Sat Sep 16 17:23:47 2000 +@@ -8,7 +8,7 @@ + #include <features.h> + #endif + #include <unistd.h> +-#include <malloc.h> ++#include <stdlib.h> + + #ifdef __FreeBSD__ + #define lseek64 lseek +--- lib/avifile/AviRead.h.orig Sat Sep 16 17:25:10 2000 ++++ lib/avifile/AviRead.h Sat Sep 16 17:25:13 2000 +@@ -10,7 +10,7 @@ + #include <avifmt.h> + #include <default.h> + #include <unistd.h> +-#include <malloc.h> ++#include <stdlib.h> + #include <string.h> + #include <stdio.h> + #include <pthread.h> +--- lib/avifile/AviWrite.h.orig Sat Sep 16 17:26:35 2000 ++++ lib/avifile/AviWrite.h Sat Sep 16 17:26:37 2000 +@@ -11,7 +11,7 @@ + #include <avifmt.h> + #include <default.h> + #include <unistd.h> +-#include <malloc.h> ++#include <stdlib.h> + #include <string.h> + #include <stdio.h> + #include <pthread.h> +--- samples/benchmark/main.cpp.orig Sat Sep 16 17:28:22 2000 ++++ samples/benchmark/main.cpp Sat Sep 16 17:28:24 2000 +@@ -9,7 +9,6 @@ + #include <config.h> + + #include <stdio.h> +-#include <malloc.h> + #include <signal.h> + #include <iostream.h> + #include <unistd.h> +--- samples/benchmark/renderer.cpp.orig Sat Sep 16 17:29:28 2000 ++++ samples/benchmark/renderer.cpp Sat Sep 16 17:29:29 2000 +@@ -14,7 +14,7 @@ + #include <sys/ipc.h> + #include <sys/shm.h> + +-#include <malloc.h> ++#include <stdlib.h> + #include <pthread.h> + #include "renderer.h" + #include "RegAccess.h" +--- player/renderer.cpp.orig Sat Sep 16 22:31:56 2000 ++++ player/renderer.cpp Sat Sep 16 22:32:02 2000 +@@ -16,7 +16,7 @@ + #include <sys/ipc.h> + #include <sys/shm.h> + +-#include <malloc.h> ++#include <stdlib.h> + #include <pthread.h> + #include "renderer.h" + #include "RegAccess.h" diff --git a/graphics/win32-codecs/pkg-comment b/graphics/win32-codecs/pkg-comment new file mode 100644 index 0000000..ab338dd --- /dev/null +++ b/graphics/win32-codecs/pkg-comment @@ -0,0 +1 @@ +An MPEG-4 (DivX) video player diff --git a/graphics/win32-codecs/pkg-descr b/graphics/win32-codecs/pkg-descr new file mode 100644 index 0000000..afc3e64 --- /dev/null +++ b/graphics/win32-codecs/pkg-descr @@ -0,0 +1,3 @@ +An MPEG-4 (aka DivX) player built around the Windows binaries, +but does not need Wine. +There is also a xmps plugin you can build (manually). diff --git a/graphics/win32-codecs/pkg-plist b/graphics/win32-codecs/pkg-plist new file mode 100644 index 0000000..3ab050f --- /dev/null +++ b/graphics/win32-codecs/pkg-plist @@ -0,0 +1,66 @@ +include/avifile/audiodecoder.h +include/avifile/audioencoder.h +include/avifile/avifile.h +include/avifile/avifmt.h +include/avifile/aviplay.h +include/avifile/aviutil.h +include/avifile/config.h +include/avifile/default.h +include/avifile/except.h +include/avifile/loader.h +include/avifile/registry.h +include/avifile/videodecoder.h +include/avifile/videoencoder.h +include/avifile/wine/basetsd.h +include/avifile/wine/config.h +include/avifile/wine/debugtools.h +include/avifile/wine/driver.h +include/avifile/wine/elfdll.h +include/avifile/wine/heap.h +include/avifile/wine/ldt.h +include/avifile/wine/mmreg.h +include/avifile/wine/module.h +include/avifile/wine/msacm.h +include/avifile/wine/msacmdrv.h +include/avifile/wine/ntdef.h +include/avifile/wine/pe_image.h +include/avifile/wine/poppack.h +include/avifile/wine/pshpack1.h +include/avifile/wine/pshpack2.h +include/avifile/wine/pshpack4.h +include/avifile/wine/pshpack8.h +include/avifile/wine/vfw.h +include/avifile/wine/winbase.h +include/avifile/wine/windef.h +include/avifile/wine/windows.h +include/avifile/wine/winerror.h +include/avifile/wine/winestring.h +include/avifile/wine/winnt.h +include/avifile/wine/winreg.h +include/avifile/wine/winuser.h +@dirrm include/avifile/wine +@dirrm include/avifile +bin/aviplay +bin/benchmark +share/avifile/open.ppm +share/avifile/pause.ppm +share/avifile/play.ppm +share/avifile/stop.ppm +share/avifile/test.png +@dirrm share/avifile +lib/win32/ativcr2.dll +lib/win32/divxa32.acm +lib/win32/divxc32.dll +lib/win32/divxc32f.dll +lib/win32/i263_32.drv +lib/win32/iccvid.dll +lib/win32/ir32_32.dll +lib/win32/ir41_32.dll +lib/win32/ir41_qc.dll +lib/win32/ir50_32.dll +lib/win32/ir50_qc.dll +lib/win32/mpg4c32.dll +@dirrm lib/win32 +lib/libaviplay.so +@exec /sbin/ldconfig -m %D/lib +@unexec /sbin/ldconfig -R |