summaryrefslogtreecommitdiffstats
path: root/multimedia/gstreamer-plugins80
diff options
context:
space:
mode:
authorahze <ahze@df743ca5-7f9a-e211-a948-0013205c9059>2005-05-24 02:11:46 +0800
committerahze <ahze@df743ca5-7f9a-e211-a948-0013205c9059>2005-05-24 02:11:46 +0800
commit6e1f2380e8567316e3adda262a6fd46da9b489fe (patch)
treebf409dc8781fc94be0ef63fc70d0831defebf961 /multimedia/gstreamer-plugins80
parent198bfde26f58a386b62572daa5834724ceca1a1a (diff)
downloadmarcuscom-ports-6e1f2380e8567316e3adda262a6fd46da9b489fe.tar
marcuscom-ports-6e1f2380e8567316e3adda262a6fd46da9b489fe.tar.gz
marcuscom-ports-6e1f2380e8567316e3adda262a6fd46da9b489fe.tar.bz2
marcuscom-ports-6e1f2380e8567316e3adda262a6fd46da9b489fe.tar.lz
marcuscom-ports-6e1f2380e8567316e3adda262a6fd46da9b489fe.tar.xz
marcuscom-ports-6e1f2380e8567316e3adda262a6fd46da9b489fe.tar.zst
marcuscom-ports-6e1f2380e8567316e3adda262a6fd46da9b489fe.zip
- Add gstreamer-plugins with new files/patch-cairo-0.5.0 which adds
support for cairo 0.5.0 API * cairo 0.5.0 update port. git-svn-id: svn://creme-brulee.marcuscom.com/ports/trunk@4012 df743ca5-7f9a-e211-a948-0013205c9059
Diffstat (limited to 'multimedia/gstreamer-plugins80')
-rw-r--r--multimedia/gstreamer-plugins80/Makefile163
-rw-r--r--multimedia/gstreamer-plugins80/Makefile.common479
-rw-r--r--multimedia/gstreamer-plugins80/distinfo2
-rw-r--r--multimedia/gstreamer-plugins80/files/patch-cairo-0.5.0158
-rw-r--r--multimedia/gstreamer-plugins80/files/patch-configure12
-rw-r--r--multimedia/gstreamer-plugins80/files/patch-ext::ivorbis::vorbisenc.h103
-rw-r--r--multimedia/gstreamer-plugins80/files/patch-ext_libcaca_Makefile.in23
-rw-r--r--multimedia/gstreamer-plugins80/files/patch-ext_mpeg2enc_gstmpeg2encoptions.cc26
-rw-r--r--multimedia/gstreamer-plugins80/files/patch-ext_sdl_Makefile.in23
-rw-r--r--multimedia/gstreamer-plugins80/files/patch-gst_ffmpegcolorspace_Makefile.in11
-rw-r--r--multimedia/gstreamer-plugins80/files/patch-sys_cdrom_gstcdplayer-ioctl-bsd.h72
-rw-r--r--multimedia/gstreamer-plugins80/files/patch-sys_oss_gstosselement.h10
-rw-r--r--multimedia/gstreamer-plugins80/pkg-descr17
-rw-r--r--multimedia/gstreamer-plugins80/pkg-plist183
14 files changed, 1282 insertions, 0 deletions
diff --git a/multimedia/gstreamer-plugins80/Makefile b/multimedia/gstreamer-plugins80/Makefile
new file mode 100644
index 000000000..0fe186d23
--- /dev/null
+++ b/multimedia/gstreamer-plugins80/Makefile
@@ -0,0 +1,163 @@
+# New ports collection makefile for: gstreamer plugins
+# Date created: Wed Jul 10 23:38:01 UTC 2002
+# Whom: Mario Sergio Fujikawa Ferreira <lioux@FreeBSD.org>
+#
+# $FreeBSD: ports/multimedia/gstreamer-plugins/Makefile,v 1.81 2005/03/20 16:01:42 kwm Exp $
+#
+
+PORTNAME= gstreamer
+PORTVERSION= 0.8.8
+PORTREVISION?= 3
+CATEGORIES?= multimedia audio
+MASTER_SITES= ${MASTER_SITE_GNOME} \
+ http://gstreamer.freedesktop.org/src/gst-plugins/
+MASTER_SITE_SUBDIR= sources/gst-plugins/0.8
+PKGNAMESUFFIX= -plugins${GST_PLUGIN_SUFFIX}
+DISTNAME= gst-plugins-${PORTVERSION}
+DIST_SUBDIR= gnome2
+
+MAINTAINER= lioux@FreeBSD.org
+COMMENT?= GStreamer written collection of plugins handling several media types
+
+LIB_DEPENDS+= gstreamer-0.8.5:${PORTSDIR}/multimedia/gstreamer \
+ popt.0:${PORTSDIR}/devel/popt
+
+SHLIB_VERSION= 1
+VERSION= 0.8
+
+WANT_GSTREAMER= yes
+USE_X_PREFIX= yes
+USE_BZIP2= yes
+USE_GMAKE= yes
+USE_GNOME+= gnomehack \
+ gnomeprefix \
+ gnometarget \
+ pkgconfig
+USE_REINPLACE= yes
+USE_LIBTOOL_VER=15
+GST_PLUGIN?= base
+
+CONFIGURE_ENV= PKG_CONFIG=${PKG_CONFIG} \
+ CFLAGS="${CFLAGS} -I${LOCALBASE}/include" \
+ CPPFLAGS="${CPPFLAGS} -I${X11BASE}/include -I${LOCALBASE}/include ${PTHREAD_CFLAGS}" \
+ LDFLAGS="${LDFLAGS} -L${X11BASE}/lib -L${LOCALBASE}/lib ${EXTRA_LIBS} ${PTHREAD_LIBS}"
+
+.include <bsd.port.pre.mk>
+.include "${MASTERDIR}/Makefile.common"
+
+.if !defined(WITH_CPUFLAGS)
+WITHOUT_CPU_CFLAGS= yes
+.endif
+
+.if ${GST_PLUGIN} == "base"
+
+INSTALLS_SHLIB= yes
+
+PLIST_SUB= VERSION="${VERSION}" \
+ SHLIB_VERSION="${SHLIB_VERSION}"
+
+MAN1= gst-launch-ext-0.8.1 gst-visualise-0.8.1
+
+## Additional directories which should be both built and installed
+## but configure neglected to correctly identify them
+# cdrom/vcd support
+EXTRA_BUILD_DIR+= sys/vcd
+# modplug
+EXTRA_BUILD_DIR+= gst/modplug
+.else
+.for f in ${GST_PLUGIN_DIR}
+GST_PLUGIN_MAKEFILES+= ${f}/Makefile
+.endfor
+.endif
+
+# cdrom default device
+.ifdef(WITH_CDROM_DEVICE)
+DEFAULT_CDROM_DEVICE=${WITH_CDROM_DEVICE}
+.else
+. if ${OSVERSION} < 500000
+DEFAULT_CDROM_DEVICE=/dev/acd0c
+. else
+DEFAULT_CDROM_DEVICE=/dev/acd0
+. endif
+.endif
+
+# dvd default device
+.ifdef(WITH_DVD_DEVICE)
+DEFAULT_DVD_DEVICE=${WITH_DVD_DEVICE}
+.else
+. if ${OSVERSION} < 500000
+DEFAULT_DVD_DEVICE=/dev/acd0c
+. else
+DEFAULT_DVD_DEVICE=/dev/acd0
+. endif
+.endif
+
+pre-everything::
+.if !defined(WITH_CPUFLAGS)
+ @${ECHO_MSG} ""
+ @${ECHO_MSG} "If you want to compile with CPUFLAGS"
+ @${ECHO_MSG} "hit Ctrl+C now and use make \"WITH_CPUFLAGS=yes\""
+ @${ECHO_MSG} "NOTE: This option may cause build, install, and/or"
+ @${ECHO_MSG} "runtime failures. If this option does not work for you"
+ @${ECHO_MSG} "please do not use it."
+ @${ECHO_MSG} ""
+.endif
+
+post-extract:
+# for cdrom/vcd support
+# taken from mplayer distfile
+# MD5 (MPlayer-1.0pre4.tar.bz2) = 83ebac0f05b192516a41fca2350ca01a
+ @${CP} ${FILESDIR}/bsdi_dvd.h ${WRKSRC}/sys/vcd/
+
+post-patch:
+ @${FIND} ${WRKSRC} -type f | \
+ ${XARGS} -n 10 ${REINPLACE_CMD} -e \
+ 's|malloc\.h|stdlib.h|; \
+ s|stdint\.h|inttypes.h|; \
+ s|%%VERSION%%|${VERSION}|'
+# cdrom default device
+ @${REINPLACE_CMD} -e 's|/dev/cdrom|${DEFAULT_CDROM_DEVICE}|' \
+ ${WRKSRC}/ext/cdparanoia/gstcdparanoia.c \
+ ${WRKSRC}/sys/cdrom/gstcdplayer.c \
+ ${WRKSRC}/sys/vcd/vcdsrc.c
+# dvd default device
+ @${REINPLACE_CMD} -e 's|/dev/dvd|${DEFAULT_DVD_DEVICE}|' \
+ ${WRKSRC}/ext/dvdnav/dvdnavsrc.c \
+ ${WRKSRC}/ext/dvdread/dvdreadsrc.c
+# cdrom/vcd support
+ @${REINPLACE_CMD} -e 's|<linux/cdrom.h>|"bsdi_dvd.h"|' \
+ ${WRKSRC}/sys/cdrom/gstcdplayer_ioctl.c \
+ ${WRKSRC}/sys/vcd/vcdsrc.c \
+ ${WRKSRC}/sys/vcd/vcdsrc.h
+# mplex fix -- gst configure does not use mjpegtool's config to find include.
+ @${REINPLACE_CMD} -E \
+ -e 's|PFLAGS@|PFLAGS@ -I${LOCALBASE}/include/mjpegtools -I${LOCALBASE}/include/mjpegtools/mplex|' \
+ ${WRKSRC}/ext/mplex/Makefile.in
+.if ${GST_PLUGIN}!="base"
+ @${REINPLACE_CMD} -E -e 's|ac_config_files=\"*\"|ac_config_files="$$ac_config_files Makefile ${GST_PLUGIN_MAKEFILES}" #|' \
+ ${WRKSRC}/configure
+.else
+.for f in ${GST_ALL_PLUGINS}
+ @${REINPLACE_CMD} -e 's|ext/${f}/Makefile||g' \
+ ${WRKSRC}/configure
+.endfor
+.endif
+
+post-build:
+.ifdef(EXTRA_BUILD_DIR)
+. for dir in ${EXTRA_BUILD_DIR}
+ @cd ${WRKSRC}/${dir}; ${SETENV} ${MAKE_ENV} ${GMAKE} ${MAKE_FLAGS} ${MAKEFILE} ${MAKE_ARGS} ${ALL_TARGET}
+. endfor
+.endif
+
+post-install:
+.ifdef(EXTRA_BUILD_DIR)
+. for dir in ${EXTRA_BUILD_DIR}
+ @cd ${WRKSRC}/${dir}; ${SETENV} ${MAKE_ENV} ${GMAKE} ${MAKE_FLAGS} ${MAKEFILE} ${MAKE_ARGS} ${INSTALL_TARGET}
+. endfor
+.endif
+# register plugins
+ -@${X11BASE}/bin/gst-register-${VERSION} \
+ --gst-registry=${PREFIX}/share/gnome/cache/gstreamer-${VERSION}/registry.xml 2>/dev/null
+
+.include <bsd.port.post.mk>
diff --git a/multimedia/gstreamer-plugins80/Makefile.common b/multimedia/gstreamer-plugins80/Makefile.common
new file mode 100644
index 000000000..287243726
--- /dev/null
+++ b/multimedia/gstreamer-plugins80/Makefile.common
@@ -0,0 +1,479 @@
+GST_ALL_PLUGINS= \
+ a52dec \
+ aalib \
+ aalibtest \
+ amrnb \
+ arts \
+ artstest \
+ artsc \
+ audiofile \
+ audioresample \
+ cairo \
+ cdaudio \
+ cdparanoia \
+ dirac \
+ directfb \
+ divx \
+ dts \
+ dvdnav \
+ dvdread \
+ dxr3 \
+ esd \
+ esdtest \
+ faac \
+ faad \
+ flac \
+ gconf \
+ gdk_pixbuf \
+ gnome_vfs \
+ gsm \
+ hermes \
+ ivorbis \
+ jack \
+ jpeg \
+ ladspa \
+ lame \
+ lcs \
+ libcaca \
+ libdv \
+ libfame \
+ libfametest\
+ libmng \
+ libmms \
+ libpng \
+ librfb \
+ libvisual \
+ mad \
+ mikmod \
+ libmikmodtest \
+ mpeg2dec \
+ mpeg2enc \
+ mplex \
+ musepack \
+ musicbrainz \
+ nas \
+ ogg \
+ oggtest \
+ opengl \
+ pango \
+ polyp \
+ dv1394 \
+ qcam \
+ raw1394 \
+ sdl \
+ sdltest \
+ shout \
+ shout2 \
+ shout2test \
+ sidplay \
+ smoothwave \
+ sndfile \
+ speex \
+ swfdec \
+ tarkin \
+ theora \
+ vcd \
+ vorbis \
+ xine \
+ vorbistest \
+ xvid
+
+# Disable all plugins by default\
+.for d in ${GST_ALL_PLUGINS}
+CONFIGURE_ARGS+= --disable-${d}
+.endfor
+
+CONFIGURE_ARGS+=--disable-tests \
+ --disable-examples \
+ --disable-alsa \
+ --disable-http \
+ --enable-cdrom \
+ --disable-gconf \
+ --disable-gconftool \
+ --disable-schemas-install \
+ --enable-oss \
+ --disable-osx_audio \
+ --disable-osx_video \
+ --enable-static \
+ --disable-sunaudio \
+ --disable-gst_v4l \
+ --disable-gst_v4l2 \
+ --enable-x \
+ --enable-xshm \
+ --enable-xvideo
+
+.if ${GST_PLUGIN}!="base"
+
+GST_PLUGIN_SUFFIX?= -${GST_PLUGIN}
+
+COMMENT= Gstreamer ${GST_PLUGIN} plugin
+
+# Enable the right plugin
+
+CONFIGURE_ARGS:=${CONFIGURE_ARGS:S|--disable-${p}|--enable-${p}|}
+
+# Build/Install directory. defaults to ext/${GST_PLUGIN}
+# few plugins are in sys/
+GST_PLUGIN_DIR?= ext/${GST_PLUGIN}
+
+#
+GST_LIB_DIR= lib/gstreamer-${VERSION}
+
+# Auto create PLIST
+PLIST= ${NONEXISTENT}
+PLIST_FILES?= ${GST_LIB_DIR}/libgst${GST_PLUGIN}${GST_PLIST_SUFFIX}.so
+
+# aalib
+.if ${GST_PLUGIN}=="aalib"
+LIB_DEPENDS+= aa.1:${PORTSDIR}/graphics/aalib
+PLIST_FILES= ${GST_LIB_DIR}/libgstaasink.so
+.endif
+
+# artsd
+.if ${GST_PLUGIN}=="artsd"
+LIB_DEPENDS+= artsc.0:${PORTSDIR}/audio/arts
+GST_PLIST_SUFFIX= sink
+.endif
+
+# cairo
+.if ${GST_PLUGIN}=="cairo"
+LIB_DEPENDS+= cairo.1:${PORTSDIR}/graphics/cairo
+.endif
+
+# cdparanoia
+.if ${GST_PLUGIN}=="cdparanoia"
+LIB_DEPENDS+= cdda_interface.0:${PORTSDIR}/audio/cdparanoia
+.endif
+
+# dirac
+.if ${GST_PLUGIN}=="dirac"
+LIB_DEPENDS+= dirac_encoder.0:${PORTSDIR}/multimedia/dirac
+.endif
+
+# dts
+.if ${GST_PLUGIN}=="dts"
+BUILD_DEPENDS+= ${LOCALBASE}/lib/libdts_pic.a:${PORTSDIR}/multimedia/libdts
+RUN_DEPENDS+= ${LOCALBASE}/lib/libdts_pic.a:${PORTSDIR}/multimedia/libdts
+GST_PLIST_SUFFIX= dec
+.endif
+
+# esound
+.if ${GST_PLUGIN}=="esound"
+USE_GNOME+= esound
+GST_PLUGIN_DIR= ext/esd
+PLIST_FILES= ${GST_LIB_DIR}/libgstesd.so
+.endif
+
+# faac
+.if ${GST_PLUGIN}=="faac"
+LIB_DEPENDS+= faac.0:${PORTSDIR}/audio/faac
+.endif
+
+# faad
+.if ${GST_PLUGIN}=="faad"
+LIB_DEPENDS+= faad.0:${PORTSDIR}/audio/faad
+.endif
+
+# flac
+.if ${GST_PLUGIN}=="flac"
+LIB_DEPENDS+= FLAC.7:${PORTSDIR}/audio/flac
+.endif
+
+# gconf
+.if ${GST_PLUGIN}=="gconf"
+USE_GNOME+= gconf2
+GST_PLUGIN_DIR= gst-libs/gst/gconf \
+ ext/gconf \
+ gconf
+GCONF_SCHEMAS= gstreamer-0.8.schemas
+
+PLIST_FILES= include/gstreamer-0.8/gst/gconf/gconf.h \
+ lib/gstreamer-0.8/libgstgconfelements.so \
+ lib/libgstgconf-0.8.a \
+ lib/libgstgconf-0.8.so \
+ lib/libgstgconf-0.8.so.1 \
+ libdata/pkgconfig/gstreamer-gconf-0.8.pc \
+ '@unexec rmdir %D/include/gstreamer-0.8/gst/gconf 2>/dev/null || true'
+.endif
+
+# gdkpixbuf
+.if ${GST_PLUGIN}=="gdkpixbuf"
+USE_GNOME+= gtk20
+GST_PLUGIN_DIR= ext/gdk_pixbuf
+.endif
+
+# gnomevfs
+.if ${GST_PLUGIN}=="gnomevfs"
+USE_GNOME+= gnomevfs2
+.endif
+
+# gsm
+.if ${GST_PLUGIN}=="gsm"
+LIB_DEPENDS+= gsm.1:${PORTSDIR}/audio/gsm
+.endif
+
+# jack
+.if ${GST_PLUGIN}=="jack"
+LIB_DEPENDS+= jack.0:${PORTSDIR}/audio/jack
+.endif
+
+# libcdaudio
+.if ${GST_PLUGIN}=="cdaudio"
+LIB_DEPENDS+= cdaudio.1:${PORTSDIR}/audio/libcdaudio
+.endif
+
+# libvisual
+.if ${GST_PLUGIN}=="libvisual"
+LIB_DEPENDS+= visual.0:${PORTSDIR}/graphics/libvisual
+.endif
+
+# musepack
+.if ${GST_PLUGIN}=="musepack"
+LIB_DEPENDS+= musepack.2:${PORTSDIR}/audio/libmusepack
+.endif
+
+# hermes
+.if ${GST_PLUGIN}=="hermes"
+LIB_DEPENDS+= Hermes.1:${PORTSDIR}/graphics/Hermes
+PLIST_FILES= ${GST_LIB_DIR}/libgsthermescolorspace.so
+.endif
+
+# jpeg
+.if ${GST_PLUGIN}=="jpeg"
+LIB_DEPENDS+= jpeg.9:${PORTSDIR}/graphics/jpeg
+CONFLICTS+= gstreamer-plugins-jpeg-mmx-*
+.endif
+
+# jpeg-mmx
+.if ${GST_PLUGIN}=="jpeg-mmx"
+LIB_DEPENDS+= jpeg-mmx.62:${PORTSDIR}/graphics/jpeg-mmx
+CONFLICTS+= gstreamer-plugins-jpeg-*.*
+
+GST_PLUGIN_DIR= ext/jpeg
+PLIST_FILES= ${GST_LIB_DIR}/libgstjpeg.so
+.endif
+
+# ladspa
+.if ${GST_PLUGIN}=="ladspa"
+BUILD_DEPENDS+= ${LOCALBASE}/include/ladspa.h:${PORTSDIR}/audio/ladspa
+.endif
+
+# lame
+.if ${GST_PLUGIN}=="lame"
+LIB_DEPENDS+= mp3lame.0:${PORTSDIR}/audio/lame
+.endif
+
+# a52dec
+.if ${GST_PLUGIN}=="a52dec"
+LIB_DEPENDS+= a52.0:${PORTSDIR}/audio/liba52
+.endif
+
+# audiofile
+.if ${GST_PLUGIN}=="audiofile"
+LIB_DEPENDS+= audiofile.0:${PORTSDIR}/audio/libaudiofile
+.endif
+
+# libcaca
+.if ${GST_PLUGIN}=="libcaca"
+BUILD_DEPENDS+= ${LOCALBASE}/lib/libcaca.a:${PORTSDIR}/graphics/libcaca
+PLIST_FILES= ${GST_LIB_DIR}/libgstcacasink.so
+.endif
+
+# dv
+.if ${GST_PLUGIN}=="dv"
+LIB_DEPENDS+= dv.4:${PORTSDIR}/multimedia/libdv
+GST_PLIST_SUFFIX= dec
+.endif
+
+# dvd (dvdnav dvdread)
+.if ${GST_PLUGIN}=="dvd"
+EXTRA_LIBS+= -ldvdnav
+LIB_DEPENDS+= dvdnav.3:${PORTSDIR}/multimedia/libdvdnav
+GST_PLUGIN_DIR= ext/dvdnav \
+ ext/dvdread
+PLIST_FILES= ${GST_LIB_DIR}/libgstdvdnavsrc.so \
+ ${GST_LIB_DIR}/libgstdvdreadsrc.so
+.endif
+
+# libfame
+.if ${GST_PLUGIN}=="libfame"
+LIB_DEPENDS+= fame-0.9.1:${PORTSDIR}/multimedia/libfame
+.endif
+
+# libmms
+.if ${GST_PLUGIN}=="libmms"
+LIB_DEPENDS+= mms.0:${PORTSDIR}/net/libmms
+PLIST_FILES= ${GST_LIB_DIR}/libgstmms.so
+.endif
+
+# libmng
+.if ${GST_PLUGIN}=="libmng"
+LIB_DEPENDS+= mng.1:${PORTSDIR}/graphics/libmng
+PLIST_FILES= ${GST_LIB_DIR}/libgstmng.so
+.endif
+
+# mikmod
+.if ${GST_PLUGIN}=="mikmod"
+LIB_DEPENDS+= mikmod.2:${PORTSDIR}/audio/libmikmod
+.endif
+
+# mpeg2dec
+.if ${GST_PLUGIN}=="mpeg2dec"
+LIB_DEPENDS+= mpeg2.0:${PORTSDIR}/multimedia/libmpeg2
+.endif
+
+# mplex
+.if ${GST_PLUGIN}=="mplex"
+LIB_DEPENDS+= lavjpeg-1.6.2:${PORTSDIR}/multimedia/mjpegtools
+.endif
+
+# musicbrainz
+.if ${GST_PLUGIN}=="musicbrainz"
+LIB_DEPENDS+= musicbrainz.4:${PORTSDIR}/audio/libmusicbrainz
+PLIST_FILES= lib/gstreamer-${VERSION}/libgsttrm.so
+.endif
+
+# shout
+.if ${GST_PLUGIN}=="shout"
+LIB_DEPENDS+= shout.2:${PORTSDIR}/audio/libshout
+.endif
+
+# shout2
+.if ${GST_PLUGIN}=="shout2"
+LIB_DEPENDS+= shout.4:${PORTSDIR}/audio/libshout2
+.endif
+
+# sidplay
+.if ${GST_PLUGIN}=="sidplay"
+LIB_DEPENDS+= sidplay.1:${PORTSDIR}/audio/libsidplay
+PLIST_FILES= ${GST_LIB_DIR}/libgstsid.so
+.endif
+
+# sndfile
+.if ${GST_PLUGIN}=="sndfile"
+LIB_DEPENDS+= sndfile.1:${PORTSDIR}/audio/libsndfile
+.endif
+
+# theora
+.if ${GST_PLUGIN}=="theora"
+LIB_DEPENDS+= theora.1:${PORTSDIR}/multimedia/libtheora
+.endif
+
+# mad
+.if ${GST_PLUGIN}=="mad"
+LIB_DEPENDS+= mad.2:${PORTSDIR}/audio/libmad \
+ id3tag.2:${PORTSDIR}/audio/libid3tag
+.endif
+
+# mpeg2enc
+.if ${GST_PLUGIN}=="mpeg2enc"
+USE_GSTREAMER+= mplex
+LIB_DEPENDS+= lavjpeg-1.6.2:${PORTSDIR}/multimedia/mjpegtools
+
+# XXX - make sure CONFIGURE works with mpeg2enc even with "ccache
+# c++" ... weird but necessary
+CONFIGURE_ENV+= HAVE_CXX=yes
+.endif
+
+# nas
+.if ${GST_PLUGIN}=="nas"
+LIB_DEPENDS+= audio.2:${PORTSDIR}/audio/nas
+GST_PLIST_SUFFIX= sink
+.endif
+
+# ogg
+.if ${GST_PLUGIN}=="ogg"
+LIB_DEPENDS+= ogg.5:${PORTSDIR}/audio/libogg
+.endif
+
+# pango
+.if ${GST_PLUGIN}=="pango"
+USE_GNOME+= pango
+PLIST_FILES= ${GST_LIB_DIR}/libgsttextoverlay.so \
+ ${GST_LIB_DIR}/libgsttimeoverlay.so
+.endif
+
+# libpng
+.if ${GST_PLUGIN}=="libpng"
+LIB_DEPENDS+= png.5:${PORTSDIR}/graphics/png
+GST_PLUGIN_DIR= ext/libpng \
+ ext/snapshot
+PLIST_FILES= ${GST_LIB_DIR}/libgstpng.so \
+ ${GST_LIB_DIR}/libgstsnapshot.so
+.endif
+
+# polypaudio
+.if ${GST_PLUGIN}=="polypaudio"
+LIB_DEPENDS+= polyp-0.7.0:${PORTSDIR}/audio/polypaudio
+PLIST_FILES= ${GST_LIB_DIR}/libpolypaudio.so
+GST_PLUGIN_DIR= ext/polyp
+.endif
+
+# sdl
+.if ${GST_PLUGIN}=="sdl"
+USE_SDL+= sdl
+GST_PLIST_SUFFIX= videosink
+.endif
+
+# smoothwave
+.if ${GST_PLUGIN}=="smoothwave"
+USE_GNOME+= gtk20
+.endif
+
+# speex
+.if ${GST_PLUGIN}=="speex"
+LIB_DEPENDS+= speex.3:${PORTSDIR}/audio/speex
+.endif
+
+# swfdec
+.if ${GST_PLUGIN}=="swfdec"
+LIB_DEPENDS+= swfdec-0.3.0:${PORTSDIR}/graphics/swfdec
+.endif
+
+# vorbis
+.if ${GST_PLUGIN}=="vorbis"
+USE_GSTREAMER+= ogg
+LIB_DEPENDS+= vorbis.3:${PORTSDIR}/audio/libvorbis
+.endif
+
+# ivorbis
+.if ${GST_PLUGIN}=="ivorbis"
+LIB_DEPENDS+= vorbisidec.1:${PORTSDIR}/audio/libtremor
+.endif
+
+# xine
+.if ${GST_PLUGIN}=="xine"
+LIB_DEPENDS+= xine.13:${PORTSDIR}/multimedia/libxine
+.endif
+
+# xvid
+.if ${GST_PLUGIN}=="xvid"
+LIB_DEPENDS+= xvidcore.4:${PORTSDIR}/multimedia/xvid
+.endif
+
+LIB_DEPENDS+= gstplay-${VERSION}.${SHLIB_VERSION}:${PORTSDIR}/multimedia/gstreamer-plugins
+
+PLIST_FILES+= '@exec %D/bin/gst-register --gst-registry=%D/share/gnome/cache/gstreamer-${VERSION}/registry.xml 2>/dev/null || true'
+PLIST_FILES+= '@unexec %D/bin/gst-register --gst-registry=%D/share/gnome/cache/gstreamer-${VERSION}/registry.xml 2>/dev/null || true'
+
+do-build:
+.if ${GST_PLUGIN} == "gconf"
+ @cd ${WRKSRC}/pkgconfig && ../config.status &
+.endif
+.for dir in ${GST_PREBUILD_DIR} ${GST_PLUGIN_DIR} ${GST_POSTBUILD_DIR}
+ @cd ${WRKSRC}/${dir}; ${SETENV} ${MAKE_ENV} ${GMAKE} ${MAKE_FLAGS} \
+ ${MAKEFILE} ${MAKE_ARGS} ${ALL_TARGET}
+.endfor
+
+do-install:
+.for dir in ${GST_PLUGIN_DIR}
+ @cd ${WRKSRC}/${dir}; ${SETENV} ${MAKE_ENV} ${GMAKE} ${MAKE_FLAGS} \
+ ${MAKEFILE} ${MAKE_ARGS} ${INSTALL_TARGET}
+.endfor
+.if ${GST_PLUGIN} == "gconf"
+ @cd ${WRKSRC}/pkgconfig && ${GMAKE} gstreamer-gconf-0.8.pc
+ @${INSTALL_SCRIPT} ${WRKSRC}/pkgconfig/gstreamer-gconf-0.8.pc \
+ ${PREFIX}/libdata/pkgconfig/gstreamer-gconf-0.8.pc
+.endif
+
+.endif
diff --git a/multimedia/gstreamer-plugins80/distinfo b/multimedia/gstreamer-plugins80/distinfo
new file mode 100644
index 000000000..1b58081ff
--- /dev/null
+++ b/multimedia/gstreamer-plugins80/distinfo
@@ -0,0 +1,2 @@
+MD5 (gnome2/gst-plugins-0.8.8.tar.bz2) = 4f6e7e730fa674ecd6ec713f937b8acb
+SIZE (gnome2/gst-plugins-0.8.8.tar.bz2) = 2214274
diff --git a/multimedia/gstreamer-plugins80/files/patch-cairo-0.5.0 b/multimedia/gstreamer-plugins80/files/patch-cairo-0.5.0
new file mode 100644
index 000000000..e59faa2f0
--- /dev/null
+++ b/multimedia/gstreamer-plugins80/files/patch-cairo-0.5.0
@@ -0,0 +1,158 @@
+--- ext/cairo/gsttextoverlay.c.orig Mon May 23 13:54:19 2005
++++ ext/cairo/gsttextoverlay.c Mon May 23 13:54:19 2005
+@@ -223,22 +223,20 @@
+ g_free (overlay->text_fill_image);
+ overlay->text_fill_image =
+ g_malloc (4 * overlay->width * overlay->text_height);
+- cairo_set_target_image (overlay->cr, overlay->text_fill_image,
++ cairo_image_surface_create_for_data (overlay->text_fill_image,
+ CAIRO_FORMAT_ARGB32, overlay->width, overlay->text_height,
+ overlay->width * 4);
+
+ cairo_save (overlay->cr);
+ cairo_rectangle (overlay->cr, 0, 0, overlay->width, overlay->text_height);
+- cairo_set_rgb_color (overlay->cr, 0, 0, 0);
+- cairo_set_alpha (overlay->cr, 1.0);
+- cairo_set_operator (overlay->cr, CAIRO_OPERATOR_SRC);
+- cairo_fill (overlay->cr);
++ cairo_set_source_rgba (overlay->cr, 0, 0, 0, 1.0);
++ cairo_set_operator (overlay->cr, CAIRO_OPERATOR_SOURCE);
++ cairo_paint (overlay->cr);
+ cairo_restore (overlay->cr);
+
+ cairo_save (overlay->cr);
+ cairo_text_extents (overlay->cr, string, &extents);
+- cairo_set_rgb_color (overlay->cr, 1, 1, 1);
+- cairo_set_alpha (overlay->cr, 1.0);
++ cairo_set_source_rgba (overlay->cr, 1, 1, 1, 1.0);
+ switch (overlay->halign) {
+ case GST_TEXT_OVERLAY_HALIGN_LEFT:
+ x = overlay->x0;
+@@ -261,22 +259,19 @@
+ g_free (overlay->text_outline_image);
+ overlay->text_outline_image =
+ g_malloc (4 * overlay->width * overlay->text_height);
+- cairo_set_target_image (overlay->cr, overlay->text_outline_image,
++ cairo_image_surface_create_for_data ( overlay->text_outline_image,
+ CAIRO_FORMAT_ARGB32, overlay->width, overlay->text_height,
+ overlay->width * 4);
+
+ cairo_save (overlay->cr);
+- cairo_rectangle (overlay->cr, 0, 0, overlay->width, overlay->text_height);
+- cairo_set_rgb_color (overlay->cr, 0, 0, 0);
+- cairo_set_alpha (overlay->cr, 1.0);
+- cairo_set_operator (overlay->cr, CAIRO_OPERATOR_SRC);
+- cairo_fill (overlay->cr);
++ cairo_set_source_rgba (overlay->cr, 0, 0, 0, 1.0);
++ cairo_set_operator (overlay->cr, CAIRO_OPERATOR_SOURCE);
++ cairo_paint (overlay->cr);
+ cairo_restore (overlay->cr);
+
+ cairo_save (overlay->cr);
+ cairo_move_to (overlay->cr, x, y);
+- cairo_set_rgb_color (overlay->cr, 1, 1, 1);
+- cairo_set_alpha (overlay->cr, 1.0);
++ cairo_set_source_rgba (overlay->cr, 1, 1, 1, 1.0);
+ cairo_set_line_width (overlay->cr, 1.0);
+ cairo_text_path (overlay->cr, string);
+ cairo_stroke (overlay->cr);
+@@ -538,11 +533,11 @@
+ {
+ cairo_font_extents_t font_extents;
+
+- cairo_select_font (overlay->cr, overlay->font, overlay->slant,
++ cairo_select_font_face (overlay->cr, overlay->font, overlay->slant,
+ overlay->weight);
+- cairo_scale_font (overlay->cr, overlay->scale);
++ cairo_set_font_size (overlay->cr, overlay->scale);
+
+- cairo_current_font_extents (overlay->cr, &font_extents);
++ cairo_font_extents (overlay->cr, &font_extents);
+ overlay->text_height = font_extents.height;
+ if (overlay->text_height & 1)
+ overlay->text_height++;
+@@ -586,6 +581,7 @@
+ static void
+ gst_textoverlay_init (GstTextOverlay * overlay)
+ {
++ cairo_surface_t *surface;
+ /* video sink */
+ overlay->video_sinkpad =
+ gst_pad_new_from_template (gst_static_pad_template_get
+@@ -606,7 +602,7 @@
+ (&textoverlay_src_template_factory), "src");
+ gst_element_add_pad (GST_ELEMENT (overlay), overlay->srcpad);
+
+- overlay->cr = cairo_create ();
++ overlay->cr = cairo_create (surface);
+
+ overlay->halign = GST_TEXT_OVERLAY_HALIGN_CENTER;
+ overlay->valign = GST_TEXT_OVERLAY_VALIGN_BASELINE;
+--- ext/cairo/gsttimeoverlay.c.orig Mon May 23 13:54:19 2005
++++ ext/cairo/gsttimeoverlay.c Mon May 23 14:05:58 2005
+@@ -31,6 +31,7 @@
+ #include <gsttimeoverlay.h>
+ #include <string.h>
+ #include <math.h>
++#include <inttypes.h>
+
+ #include <cairo.h>
+
+@@ -196,22 +197,25 @@
+ {
+ GstTimeoverlay *timeoverlay;
+ cairo_font_extents_t font_extents;
++ cairo_surface_t *surface;
+
+ g_return_if_fail (GST_IS_TIMEOVERLAY (videofilter));
+ timeoverlay = GST_TIMEOVERLAY (videofilter);
+
+ /* if any setup needs to be done, do it here */
+
+- timeoverlay->cr = cairo_create ();
++// timeoverlay->cr = cairo_create ();
++ timeoverlay->cr = cairo_create (surface);
+
+- cairo_set_rgb_color (timeoverlay->cr, 0, 0, 0);
++ cairo_set_source_rgba (timeoverlay->cr, 0, 0, 0, 0);
+
+- cairo_select_font (timeoverlay->cr, "monospace", 0, 0);
+- cairo_scale_font (timeoverlay->cr, 20);
++ cairo_select_font_face (timeoverlay->cr, "monospace", 0, 0);
++ cairo_set_font_size (timeoverlay->cr, 20);
+
+- cairo_current_font_extents (timeoverlay->cr, &font_extents);
++ cairo_font_extents (timeoverlay->cr, &font_extents);
+ timeoverlay->text_height = font_extents.height;
+
++ cairo_surface_destroy (surface);
+ }
+
+ static char *
+@@ -260,20 +264,19 @@
+
+ image = g_malloc (4 * width * timeoverlay->text_height);
+
+- cairo_set_target_image (timeoverlay->cr, image, CAIRO_FORMAT_ARGB32,
++ cairo_image_surface_create_for_data (image, CAIRO_FORMAT_ARGB32,
+ width, timeoverlay->text_height, width * 4);
+
+ cairo_save (timeoverlay->cr);
+- cairo_rectangle (timeoverlay->cr, 0, 0, width, timeoverlay->text_height);
+- cairo_set_alpha (timeoverlay->cr, 0);
+- cairo_set_operator (timeoverlay->cr, CAIRO_OPERATOR_SRC);
+- cairo_fill (timeoverlay->cr);
+- cairo_restore (timeoverlay->cr);
++
++ cairo_set_source_rgba (0, 0, width, timeoverlay->text_height, 0);
++ cairo_set_operator (timeoverlay->cr, CAIRO_OPERATOR_SOURCE);
++ cairo_paint (timeoverlay->cr);
+
+ cairo_save (timeoverlay->cr);
+ cairo_text_extents (timeoverlay->cr, string, &extents);
+
+- cairo_set_rgb_color (timeoverlay->cr, 1, 1, 1);
++ cairo_set_source_rgb (timeoverlay->cr, 1, 1, 1);
+ cairo_move_to (timeoverlay->cr, 0, timeoverlay->text_height - 2);
+ cairo_show_text (timeoverlay->cr, string);
+ g_free (string);
diff --git a/multimedia/gstreamer-plugins80/files/patch-configure b/multimedia/gstreamer-plugins80/files/patch-configure
new file mode 100644
index 000000000..92b1deb51
--- /dev/null
+++ b/multimedia/gstreamer-plugins80/files/patch-configure
@@ -0,0 +1,12 @@
+--- configure.orig Wed Jun 23 21:30:24 2004
++++ configure Wed Jun 23 21:30:25 2004
+@@ -46068,7 +46068,8 @@
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+ else
+ ac_check_lib_save_LIBS=$LIBS
+-LIBS="-laudio $X_LIBS $LIBS"
++#xxx fix the non x case is er niet...
++LIBS="-laudio -lm -lXt $X_LIBS $LIBS"
+ cat >conftest.$ac_ext <<_ACEOF
+ /* confdefs.h. */
+ _ACEOF
diff --git a/multimedia/gstreamer-plugins80/files/patch-ext::ivorbis::vorbisenc.h b/multimedia/gstreamer-plugins80/files/patch-ext::ivorbis::vorbisenc.h
new file mode 100644
index 000000000..90d39a1a2
--- /dev/null
+++ b/multimedia/gstreamer-plugins80/files/patch-ext::ivorbis::vorbisenc.h
@@ -0,0 +1,103 @@
+--- /dev/null Thu Feb 12 22:22:00 2004
++++ ext/ivorbis/vorbisenc.h Thu Feb 12 22:24:08 2004
+@@ -0,0 +1,100 @@
++/* GStreamer
++ * Copyright (C) <1999> Erik Walthinsen <omega@cse.ogi.edu>
++ *
++ * This library is free software; you can redistribute it and/or
++ * modify it under the terms of the GNU Library General Public
++ * License as published by the Free Software Foundation; either
++ * version 2 of the License, or (at your option) any later version.
++ *
++ * This library is distributed in the hope that it will be useful,
++ * but WITHOUT ANY WARRANTY; without even the implied warranty of
++ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
++ * Library General Public License for more details.
++ *
++ * You should have received a copy of the GNU Library General Public
++ * License along with this library; if not, write to the
++ * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
++ * Boston, MA 02111-1307, USA.
++ */
++
++
++#ifndef __VORBISENC_H__
++#define __VORBISENC_H__
++
++
++#include <gst/gst.h>
++
++#include <tremor/ivorbiscodec.h>
++
++#ifdef __cplusplus
++extern "C" {
++#endif /* __cplusplus */
++
++#define GST_TYPE_VORBISENC \
++ (vorbisenc_get_type())
++#define GST_VORBISENC(obj) \
++ (G_TYPE_CHECK_INSTANCE_CAST((obj),GST_TYPE_VORBISENC,VorbisEnc))
++#define GST_VORBISENC_CLASS(klass) \
++ (G_TYPE_CHECK_CLASS_CAST((klass),GST_TYPE_VORBISENC,VorbisEncClass))
++#define GST_IS_VORBISENC(obj) \
++ (G_TYPE_CHECK_INSTANCE_TYPE((obj),GST_TYPE_VORBISENC))
++#define GST_IS_VORBISENC_CLASS(obj) \
++ (G_TYPE_CHECK_CLASS_TYPE((klass),GST_TYPE_VORBISENC))
++
++typedef struct _VorbisEnc VorbisEnc;
++typedef struct _VorbisEncClass VorbisEncClass;
++
++struct _VorbisEnc {
++ GstElement element;
++
++ GstPad *sinkpad,
++ *srcpad;
++
++ ogg_stream_state os; /* take physical pages, weld into a logical
++ stream of packets */
++ ogg_page og; /* one Ogg bitstream page. Vorbis packets are inside */
++ ogg_packet op; /* one raw packet of data for decode */
++
++ vorbis_info vi; /* struct that stores all the static vorbis bitstream
++ settings */
++ vorbis_comment vc; /* struct that stores all the user comments */
++
++ vorbis_dsp_state vd; /* central working state for the packet->PCM decoder */
++ vorbis_block vb; /* local working space for packet->PCM decode */
++
++ gboolean eos;
++
++ gboolean managed;
++ gint bitrate;
++ gint min_bitrate;
++ gint max_bitrate;
++ gfloat quality;
++ gboolean quality_set;
++ gint serial;
++
++ gint channels;
++ gint frequency;
++
++ guint64 samples_in;
++ guint64 bytes_out;
++
++ GstCaps *metadata;
++
++ gboolean setup;
++ gboolean flush_header;
++ gchar *last_message;
++};
++
++struct _VorbisEncClass {
++ GstElementClass parent_class;
++};
++
++GType vorbisenc_get_type(void);
++
++
++#ifdef __cplusplus
++}
++#endif /* __cplusplus */
++
++
++#endif /* __VORBISENC_H__ */
diff --git a/multimedia/gstreamer-plugins80/files/patch-ext_libcaca_Makefile.in b/multimedia/gstreamer-plugins80/files/patch-ext_libcaca_Makefile.in
new file mode 100644
index 000000000..0ee53a92e
--- /dev/null
+++ b/multimedia/gstreamer-plugins80/files/patch-ext_libcaca_Makefile.in
@@ -0,0 +1,23 @@
+--- ext/libcaca/Makefile.in.orig Mon Oct 4 00:07:18 2004
++++ ext/libcaca/Makefile.in Mon Oct 4 00:07:59 2004
+@@ -76,8 +76,7 @@
+ pluginLTLIBRARIES_INSTALL = $(INSTALL)
+ LTLIBRARIES = $(plugin_LTLIBRARIES)
+ am__DEPENDENCIES_1 =
+-libgstcacasink_la_DEPENDENCIES = $(am__DEPENDENCIES_1) \
+- $(top_builddir)/gst-libs/gst/libgstinterfaces-$(GST_MAJORMINOR).la
++libgstcacasink_la_DEPENDENCIES = $(am__DEPENDENCIES_1)
+ am_libgstcacasink_la_OBJECTS = libgstcacasink_la-gstcacasink.lo
+ libgstcacasink_la_OBJECTS = $(am_libgstcacasink_la_OBJECTS)
+ DEFAULT_INCLUDES = -I. -I$(srcdir) -I$(top_builddir)
+@@ -616,9 +615,7 @@
+ plugin_LTLIBRARIES = libgstcacasink.la
+ libgstcacasink_la_SOURCES = gstcacasink.c
+ libgstcacasink_la_CFLAGS = $(GST_CFLAGS) $(LIBCACA_CFLAGS)
+-libgstcacasink_la_LIBADD = $(LIBCACA_LIBS) \
+- $(top_builddir)/gst-libs/gst/libgstinterfaces-$(GST_MAJORMINOR).la
+-
++libgstcacasink_la_LIBADD = $(LIBCACA_LIBS) -lgstinterfaces-%%VERSION%%
+ libgstcacasink_la_LDFLAGS = $(GST_PLUGIN_LDFLAGS)
+ noinst_HEADERS = gstcacasink.h
+ all: all-am
diff --git a/multimedia/gstreamer-plugins80/files/patch-ext_mpeg2enc_gstmpeg2encoptions.cc b/multimedia/gstreamer-plugins80/files/patch-ext_mpeg2enc_gstmpeg2encoptions.cc
new file mode 100644
index 000000000..aabbc2971
--- /dev/null
+++ b/multimedia/gstreamer-plugins80/files/patch-ext_mpeg2enc_gstmpeg2encoptions.cc
@@ -0,0 +1,26 @@
+--- ext/mpeg2enc/gstmpeg2encoptions.cc.orig Mon Jul 5 19:54:18 2004
++++ ext/mpeg2enc/gstmpeg2encoptions.cc Mon Jul 5 20:05:37 2004
+@@ -267,11 +267,23 @@
+ * Class init stuff.
+ */
+
++#if !defined(_SC_NPROCESSORS_ONLN) && defined(__FreeBSD__)
++#include <sys/types.h>
++#include <sys/sysctl.h>
++#endif
++
+ GstMpeg2EncOptions::GstMpeg2EncOptions ():
+ MPEG2EncOptions ()
+ {
+ /* autodetect number of CPUs */
++#if !defined(_SC_NPROCESSORS_ONLN) && defined(__FreeBSD__)
++ /* We need to use a sysctl to get the number of CPUs. */
++ size_t len = sizeof (num_cpus);
++
++ sysctlbyname ("hw.ncpu", &num_cpus, &len, NULL, 0);
++#else
+ num_cpus = sysconf (_SC_NPROCESSORS_ONLN);
++#endif
+ if (num_cpus < 0)
+ num_cpus = 1;
+ if (num_cpus > 32)
diff --git a/multimedia/gstreamer-plugins80/files/patch-ext_sdl_Makefile.in b/multimedia/gstreamer-plugins80/files/patch-ext_sdl_Makefile.in
new file mode 100644
index 000000000..c943042ad
--- /dev/null
+++ b/multimedia/gstreamer-plugins80/files/patch-ext_sdl_Makefile.in
@@ -0,0 +1,23 @@
+--- ext/sdl/Makefile.in.orig Mon Oct 4 00:56:57 2004
++++ ext/sdl/Makefile.in Mon Oct 4 00:57:47 2004
+@@ -76,8 +76,7 @@
+ pluginLTLIBRARIES_INSTALL = $(INSTALL)
+ LTLIBRARIES = $(plugin_LTLIBRARIES)
+ am__DEPENDENCIES_1 =
+-libgstsdlvideosink_la_DEPENDENCIES = $(am__DEPENDENCIES_1) \
+- $(top_builddir)/gst-libs/gst/libgstinterfaces-@GST_MAJORMINOR@.la
++libgstsdlvideosink_la_DEPENDENCIES = $(am__DEPENDENCIES_1)
+ am_libgstsdlvideosink_la_OBJECTS = \
+ libgstsdlvideosink_la-sdlvideosink.lo
+ libgstsdlvideosink_la_OBJECTS = $(am_libgstsdlvideosink_la_OBJECTS)
+@@ -617,9 +616,7 @@
+ plugin_LTLIBRARIES = libgstsdlvideosink.la
+ libgstsdlvideosink_la_SOURCES = sdlvideosink.c
+ libgstsdlvideosink_la_CFLAGS = $(GST_CFLAGS) $(SDL_CFLAGS)
+-libgstsdlvideosink_la_LIBADD = $(SDL_LIBS) \
+- $(top_builddir)/gst-libs/gst/libgstinterfaces-@GST_MAJORMINOR@.la
+-
++libgstsdlvideosink_la_LIBADD = $(SDL_LIBS) -lgstinterfaces-%%VERSION%%
+ libgstsdlvideosink_la_LDFLAGS = $(GST_PLUGIN_LDFLAGS)
+ noinst_HEADERS = sdlvideosink.h
+ all: all-am
diff --git a/multimedia/gstreamer-plugins80/files/patch-gst_ffmpegcolorspace_Makefile.in b/multimedia/gstreamer-plugins80/files/patch-gst_ffmpegcolorspace_Makefile.in
new file mode 100644
index 000000000..fb2afdfb0
--- /dev/null
+++ b/multimedia/gstreamer-plugins80/files/patch-gst_ffmpegcolorspace_Makefile.in
@@ -0,0 +1,11 @@
+--- gst/ffmpegcolorspace/Makefile.in.orig Wed Mar 9 01:40:27 2005
++++ gst/ffmpegcolorspace/Makefile.in Wed Mar 9 01:41:10 2005
+@@ -360,7 +360,7 @@
+ LAME_LIBS = @LAME_LIBS@
+ LCS_CFLAGS = @LCS_CFLAGS@
+ LCS_LIBS = @LCS_LIBS@
+-LDFLAGS = @LDFLAGS@
++LDFLAGS = @LDFLAGS@ -Wl,-Bsymbolic -lc
+ LIBCACA_CFLAGS = @LIBCACA_CFLAGS@
+ LIBCACA_CONFIG = @LIBCACA_CONFIG@
+ LIBCACA_LIBS = @LIBCACA_LIBS@
diff --git a/multimedia/gstreamer-plugins80/files/patch-sys_cdrom_gstcdplayer-ioctl-bsd.h b/multimedia/gstreamer-plugins80/files/patch-sys_cdrom_gstcdplayer-ioctl-bsd.h
new file mode 100644
index 000000000..daaefac5e
--- /dev/null
+++ b/multimedia/gstreamer-plugins80/files/patch-sys_cdrom_gstcdplayer-ioctl-bsd.h
@@ -0,0 +1,72 @@
+--- sys/cdrom/gstcdplayer_ioctl_bsd.h.orig Mon Mar 1 06:52:03 2004
++++ sys/cdrom/gstcdplayer_ioctl_bsd.h Tue Mar 9 16:05:36 2004
+@@ -142,6 +142,7 @@
+ {
+ struct ioc_toc_header toc_header;
+ struct ioc_read_toc_entry toc_entry;
++ struct cd_toc_entry toc_entry_data;
+ guint i;
+
+ cd->fd = open(device,O_RDONLY | O_NONBLOCK);
+@@ -151,7 +152,7 @@
+ }
+
+ /* get the toc header information */
+- if (ioctl(cd->fd,CDIOREADTOCHDR,&toc_header) != 0) {
++ if (ioctl(cd->fd,CDIOREADTOCHEADER,&toc_header) != 0) {
+ close(cd->fd);
+ cd->fd = -1;
+ return FALSE;
+@@ -161,6 +162,8 @@
+ for (i = 1; i <= toc_header.ending_track; i++) {
+ toc_entry.address_format = CD_MSF_FORMAT;
+ toc_entry.starting_track = i;
++ toc_entry.data = &toc_entry_data;
++ toc_entry.data_len = sizeof(toc_entry_data);
+
+ if (ioctl(cd->fd,CDIOREADTOCENTRYS,&toc_entry) != 0) {
+ close(cd->fd);
+@@ -168,9 +171,9 @@
+ return FALSE;
+ }
+
+- cd->tracks[i].minute = toc_entry.entry.addr.msf.minute;
+- cd->tracks[i].second = toc_entry.entry.addr.msf.second;
+- cd->tracks[i].frame = toc_entry.entry.addr.msf.frame;
++ cd->tracks[i].minute = toc_entry.data->addr.msf.minute;
++ cd->tracks[i].second = toc_entry.data->addr.msf.second;
++ cd->tracks[i].frame = toc_entry.data->addr.msf.frame;
+ cd->tracks[i].data_track = (toc_entry.data->control & 4) == 4;
+ }
+
+@@ -186,9 +189,9 @@
+ return FALSE;
+ }
+
+- cd->tracks[LEADOUT].minute = toc_entry.entry.addr.msf.minute;
+- cd->tracks[LEADOUT].second = toc_entry.entry.addr.msf.second;
+- cd->tracks[LEADOUT].frame = toc_entry.entry.addr.msf.frame;
++ cd->tracks[LEADOUT].minute = toc_entry.data->addr.msf.minute;
++ cd->tracks[LEADOUT].second = toc_entry.data->addr.msf.second;
++ cd->tracks[LEADOUT].frame = toc_entry.data->addr.msf.frame;
+
+ cd->num_tracks = toc_header.ending_track;
+
+@@ -224,6 +227,8 @@
+ return FALSE;
+ }
+
++ /* lets return TRUE and lets see what happes (may not be correct)*/
++ return TRUE;
+ }
+
+ gboolean cd_pause(struct cd *cd)
+@@ -321,7 +326,7 @@
+ return -1;
+ }
+
+-#ifdef __NetBSD__
++#if defined(__NetBSD__) || defined(__FreeBSD__)
+ return sub_channel.data->what.track_info.track_number;
+ #else
+ return sub_channel.data->track_number;
diff --git a/multimedia/gstreamer-plugins80/files/patch-sys_oss_gstosselement.h b/multimedia/gstreamer-plugins80/files/patch-sys_oss_gstosselement.h
new file mode 100644
index 000000000..30258ba11
--- /dev/null
+++ b/multimedia/gstreamer-plugins80/files/patch-sys_oss_gstosselement.h
@@ -0,0 +1,10 @@
+--- sys/oss/gstosselement.h.orig Tue Mar 9 16:46:05 2004
++++ sys/oss/gstosselement.h Tue Mar 9 16:46:14 2004
+@@ -23,6 +23,7 @@
+ #ifndef __GST_OSS_ELEMENT_H__
+ #define __GST_OSS_ELEMENT_H__
+
++#include <sys/types.h>
+ #include <gst/gst.h>
+
+ /* debugging category */
diff --git a/multimedia/gstreamer-plugins80/pkg-descr b/multimedia/gstreamer-plugins80/pkg-descr
new file mode 100644
index 000000000..80300084c
--- /dev/null
+++ b/multimedia/gstreamer-plugins80/pkg-descr
@@ -0,0 +1,17 @@
+[ excerpt from developer's site ]
+
+This is a collection of plugins written with the GStreamer framework.
+Some features of these plugins are:
+
+- Dynamically loaded plugins provide elements and media types,
+ demand-loaded via an XML registry, similar to ld.so.cache
+- Element interface handles all known types of sources, filters,
+ sinks
+- Capabilities system allows verification of element compatibility
+ using MIME types and media-specific properties
+- Autoplugging uses capabilities system to complete complex paths
+ automatically
+- Pipelines can be saved to XML and loaded back to working state
+- Resource friendly plugins don't waste RAM
+
+WWW: http://gstreamer.sourceforge.net/
diff --git a/multimedia/gstreamer-plugins80/pkg-plist b/multimedia/gstreamer-plugins80/pkg-plist
new file mode 100644
index 000000000..34c1cb992
--- /dev/null
+++ b/multimedia/gstreamer-plugins80/pkg-plist
@@ -0,0 +1,183 @@
+bin/gst-launch-ext-%%VERSION%%
+bin/gst-visualise-%%VERSION%%
+include/gstreamer-%%VERSION%%/gst/audio/audio.h
+include/gstreamer-%%VERSION%%/gst/audio/audioclock.h
+include/gstreamer-%%VERSION%%/gst/audio/multichannel-enumtypes.h
+include/gstreamer-%%VERSION%%/gst/audio/multichannel.h
+include/gstreamer-%%VERSION%%/gst/audio/gstaudiofilter.h
+include/gstreamer-%%VERSION%%/gst/colorbalance/colorbalance-enumtypes.h
+include/gstreamer-%%VERSION%%/gst/colorbalance/colorbalance.h
+include/gstreamer-%%VERSION%%/gst/colorbalance/colorbalancechannel.h
+include/gstreamer-%%VERSION%%/gst/floatcast/floatcast.h
+include/gstreamer-%%VERSION%%/gst/idct/idct.h
+include/gstreamer-%%VERSION%%/gst/media-info/media-info.h
+include/gstreamer-%%VERSION%%/gst/mixer/mixer-enumtypes.h
+include/gstreamer-%%VERSION%%/gst/mixer/mixer.h
+include/gstreamer-%%VERSION%%/gst/mixer/mixeroptions.h
+include/gstreamer-%%VERSION%%/gst/mixer/mixertrack.h
+include/gstreamer-%%VERSION%%/gst/navigation/navigation.h
+include/gstreamer-%%VERSION%%/gst/play/play-enumtypes.h
+include/gstreamer-%%VERSION%%/gst/play/play.h
+include/gstreamer-%%VERSION%%/gst/propertyprobe/propertyprobe.h
+include/gstreamer-%%VERSION%%/gst/resample/resample.h
+include/gstreamer-%%VERSION%%/gst/riff/riff-ids.h
+include/gstreamer-%%VERSION%%/gst/riff/riff-media.h
+include/gstreamer-%%VERSION%%/gst/riff/riff-read.h
+include/gstreamer-%%VERSION%%/gst/tag/tag.h
+include/gstreamer-%%VERSION%%/gst/tuner/tuner-enumtypes.h
+include/gstreamer-%%VERSION%%/gst/tuner/tuner.h
+include/gstreamer-%%VERSION%%/gst/tuner/tunerchannel.h
+include/gstreamer-%%VERSION%%/gst/tuner/tunernorm.h
+include/gstreamer-%%VERSION%%/gst/video/video.h
+include/gstreamer-%%VERSION%%/gst/video/videosink.h
+include/gstreamer-%%VERSION%%/gst/xoverlay/xoverlay.h
+include/gstreamer-%%VERSION%%/gst/xwindowlistener/xwindowlistener.h
+lib/gstreamer-%%VERSION%%/libgstac3parse.so
+lib/gstreamer-%%VERSION%%/libgstadder.so
+lib/gstreamer-%%VERSION%%/libgstalaw.so
+lib/gstreamer-%%VERSION%%/libgstalpha.so
+lib/gstreamer-%%VERSION%%/libgstalphacolor.so
+lib/gstreamer-%%VERSION%%/libgstapetag.so
+lib/gstreamer-%%VERSION%%/libgstasf.so
+lib/gstreamer-%%VERSION%%/libgstaudio.so
+lib/gstreamer-%%VERSION%%/libgstaudioconvert.so
+lib/gstreamer-%%VERSION%%/libgstaudiofilter.so
+lib/gstreamer-%%VERSION%%/libgstaudiorate.so
+lib/gstreamer-%%VERSION%%/libgstaudioscale.so
+lib/gstreamer-%%VERSION%%/libgstauparse.so
+lib/gstreamer-%%VERSION%%/libgstautodetect.so
+lib/gstreamer-%%VERSION%%/libgstavi.so
+lib/gstreamer-%%VERSION%%/libgstcdplayer.so
+lib/gstreamer-%%VERSION%%/libgstcdxaparse.so
+lib/gstreamer-%%VERSION%%/libgstchart.so
+lib/gstreamer-%%VERSION%%/libgstcolorspace.so
+lib/gstreamer-%%VERSION%%/libgstcutter.so
+lib/gstreamer-%%VERSION%%/libgstdebug.so
+lib/gstreamer-%%VERSION%%/libgstdecodebin.so
+lib/gstreamer-%%VERSION%%/libgstdeinterlace.so
+lib/gstreamer-%%VERSION%%/libgstdvdlpcmdec.so
+lib/gstreamer-%%VERSION%%/libgstefence.so
+lib/gstreamer-%%VERSION%%/libgsteffectv.so
+lib/gstreamer-%%VERSION%%/libgstequalizer.so
+lib/gstreamer-%%VERSION%%/libgstfestival.so
+lib/gstreamer-%%VERSION%%/libgstffmpegcolorspace.so
+lib/gstreamer-%%VERSION%%/libgstfilter.so
+lib/gstreamer-%%VERSION%%/libgstflxdec.so
+lib/gstreamer-%%VERSION%%/libgstgamma.so
+lib/gstreamer-%%VERSION%%/libgstgoom.so
+lib/gstreamer-%%VERSION%%/libgstidct.so
+lib/gstreamer-%%VERSION%%/libgstinterleave.so
+lib/gstreamer-%%VERSION%%/libgstlevel.so
+lib/gstreamer-%%VERSION%%/libgstmatroska.so
+lib/gstreamer-%%VERSION%%/libgstmedian.so
+lib/gstreamer-%%VERSION%%/libgstmixmatrix.so
+lib/gstreamer-%%VERSION%%/libgstmodplug.so
+lib/gstreamer-%%VERSION%%/libgstmonoscope.so
+lib/gstreamer-%%VERSION%%/libgstmp1videoparse.so
+lib/gstreamer-%%VERSION%%/libgstmpeg1systemencode.so
+lib/gstreamer-%%VERSION%%/libgstmpeg2subt.so
+lib/gstreamer-%%VERSION%%/libgstmpegaudio.so
+lib/gstreamer-%%VERSION%%/libgstmpegaudioparse.so
+lib/gstreamer-%%VERSION%%/libgstmpegstream.so
+lib/gstreamer-%%VERSION%%/libgstmulaw.so
+lib/gstreamer-%%VERSION%%/libgstmultifilesink.so
+lib/gstreamer-%%VERSION%%/libgstmultipart.so
+lib/gstreamer-%%VERSION%%/libgstnavigationtest.so
+lib/gstreamer-%%VERSION%%/libgstossaudio.so
+lib/gstreamer-%%VERSION%%/libgstoverlay.so
+lib/gstreamer-%%VERSION%%/libgstpassthrough.so
+lib/gstreamer-%%VERSION%%/libgstplaybin.so
+lib/gstreamer-%%VERSION%%/libgstplayondemand.so
+lib/gstreamer-%%VERSION%%/libgstpuzzle.so
+lib/gstreamer-%%VERSION%%/libgstqtdemux.so
+lib/gstreamer-%%VERSION%%/libgstresample.so
+lib/gstreamer-%%VERSION%%/libgstrfbsrc.so
+lib/gstreamer-%%VERSION%%/libgstriff.so
+lib/gstreamer-%%VERSION%%/libgstrmdemux.so
+lib/gstreamer-%%VERSION%%/libgstrtjpeg.so
+lib/gstreamer-%%VERSION%%/libgstrtp.so
+lib/gstreamer-%%VERSION%%/libgstsilence.so
+lib/gstreamer-%%VERSION%%/libgstsinesrc.so
+lib/gstreamer-%%VERSION%%/libgstsmooth.so
+lib/gstreamer-%%VERSION%%/libgstsmpte.so
+lib/gstreamer-%%VERSION%%/libgstspectrum.so
+lib/gstreamer-%%VERSION%%/libgstspeed.so
+lib/gstreamer-%%VERSION%%/libgststereo.so
+lib/gstreamer-%%VERSION%%/libgstsubparse.so
+lib/gstreamer-%%VERSION%%/libgstswitch.so
+lib/gstreamer-%%VERSION%%/libgstsynaesthesia.so
+lib/gstreamer-%%VERSION%%/libgsttagedit.so
+lib/gstreamer-%%VERSION%%/libgsttcp.so
+lib/gstreamer-%%VERSION%%/libgsttta.so
+lib/gstreamer-%%VERSION%%/libgsttypefindfunctions.so
+lib/gstreamer-%%VERSION%%/libgstudp.so
+lib/gstreamer-%%VERSION%%/libgstvbidec.so
+lib/gstreamer-%%VERSION%%/libgstvcdsrc.so
+lib/gstreamer-%%VERSION%%/libgstvideo.so
+lib/gstreamer-%%VERSION%%/libgstvideobalance.so
+lib/gstreamer-%%VERSION%%/libgstvideobox.so
+lib/gstreamer-%%VERSION%%/libgstvideocrop.so
+lib/gstreamer-%%VERSION%%/libgstvideodrop.so
+lib/gstreamer-%%VERSION%%/libgstvideofilter.so
+lib/gstreamer-%%VERSION%%/libgstvideoflip.so
+lib/gstreamer-%%VERSION%%/libgstvideomixer.so
+lib/gstreamer-%%VERSION%%/libgstvideorate.so
+lib/gstreamer-%%VERSION%%/libgstvideoscale.so
+lib/gstreamer-%%VERSION%%/libgstvideotestsrc.so
+lib/gstreamer-%%VERSION%%/libgstvolenv.so
+lib/gstreamer-%%VERSION%%/libgstvolume.so
+lib/gstreamer-%%VERSION%%/libgstwavenc.so
+lib/gstreamer-%%VERSION%%/libgstwavparse.so
+lib/gstreamer-%%VERSION%%/libgstximagesink.so
+lib/gstreamer-%%VERSION%%/libgstxvimagesink.so
+lib/gstreamer-%%VERSION%%/libgstxwindowlistener.so
+lib/gstreamer-%%VERSION%%/libgsty4menc.so
+lib/libgstinterfaces-%%VERSION%%.a
+lib/libgstinterfaces-%%VERSION%%.so
+lib/libgstinterfaces-%%VERSION%%.so.%%SHLIB_VERSION%%
+lib/libgstmedia-info-%%VERSION%%.a
+lib/libgstmedia-info-%%VERSION%%.so
+lib/libgstmedia-info-%%VERSION%%.so.%%SHLIB_VERSION%%
+lib/libgstplay-%%VERSION%%.a
+lib/libgstplay-%%VERSION%%.so
+lib/libgstplay-%%VERSION%%.so.%%SHLIB_VERSION%%
+libdata/pkgconfig/gstreamer-interfaces-%%VERSION%%.pc
+libdata/pkgconfig/gstreamer-libs-%%VERSION%%.pc
+libdata/pkgconfig/gstreamer-media-info-%%VERSION%%.pc
+libdata/pkgconfig/gstreamer-play-%%VERSION%%.pc
+libdata/pkgconfig/gstreamer-plugins-%%VERSION%%.pc
+share/locale/af/LC_MESSAGES/gst-plugins-%%VERSION%%.mo
+share/locale/az/LC_MESSAGES/gst-plugins-%%VERSION%%.mo
+share/locale/cs/LC_MESSAGES/gst-plugins-%%VERSION%%.mo
+share/locale/en_GB/LC_MESSAGES/gst-plugins-%%VERSION%%.mo
+share/locale/hu/LC_MESSAGES/gst-plugins-%%VERSION%%.mo
+share/locale/it/LC_MESSAGES/gst-plugins-%%VERSION%%.mo
+share/locale/nb/LC_MESSAGES/gst-plugins-%%VERSION%%.mo
+share/locale/nl/LC_MESSAGES/gst-plugins-%%VERSION%%.mo
+share/locale/or/LC_MESSAGES/gst-plugins-%%VERSION%%.mo
+share/locale/sq/LC_MESSAGES/gst-plugins-%%VERSION%%.mo
+share/locale/sr/LC_MESSAGES/gst-plugins-%%VERSION%%.mo
+share/locale/sv/LC_MESSAGES/gst-plugins-%%VERSION%%.mo
+share/locale/uk/LC_MESSAGES/gst-plugins-%%VERSION%%.mo
+share/locale/vi/LC_MESSAGES/gst-plugins-%%VERSION%%.mo
+@dirrm lib/gstreamer-%%VERSION%%
+@dirrm include/gstreamer-%%VERSION%%/gst/xwindowlistener
+@dirrm include/gstreamer-%%VERSION%%/gst/xoverlay
+@dirrm include/gstreamer-%%VERSION%%/gst/video
+@dirrm include/gstreamer-%%VERSION%%/gst/tuner
+@dirrm include/gstreamer-%%VERSION%%/gst/tag
+@dirrm include/gstreamer-%%VERSION%%/gst/riff
+@dirrm include/gstreamer-%%VERSION%%/gst/resample
+@dirrm include/gstreamer-%%VERSION%%/gst/propertyprobe
+@dirrm include/gstreamer-%%VERSION%%/gst/play
+@dirrm include/gstreamer-%%VERSION%%/gst/navigation
+@dirrm include/gstreamer-%%VERSION%%/gst/mixer
+@dirrm include/gstreamer-%%VERSION%%/gst/media-info
+@dirrm include/gstreamer-%%VERSION%%/gst/idct
+@dirrm include/gstreamer-%%VERSION%%/gst/floatcast
+@dirrm include/gstreamer-%%VERSION%%/gst/colorbalance
+@dirrm include/gstreamer-%%VERSION%%/gst/audio
+@unexec rmdir %D/include/gstreamer-%%VERSION%%/gst 2>/dev/null || true
+@unexec rmdir %D/include/gstreamer-%%VERSION%% 2>/dev/null || true
+@exec %D/bin/gst-register --gst-registry=%D/share/gnome/cache/gstreamer-%%VERSION%%/registry.xml 2>/dev/null || true
+@unexec %D/bin/gst-register --gst-registry=%D/share/gnome/cache/gstreamer-%%VERSION%%/registry.xml 2>/dev/null || true