1
0
mirror of https://git.FreeBSD.org/ports.git synced 2024-10-22 20:41:26 +00:00

o New port gstreamer version 0.4.0: Development framework for

creating media applications
o Mark as BROKEN: Needs help fixing scheduling code under FreeBSD
o This is being added even though it is broken hoping that someone
  will have the time/expertise to fix it
This commit is contained in:
Mario Sergio Fujikawa Ferreira 2002-07-15 21:42:38 +00:00
parent 9afc78e3e2
commit a135889b18
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=63043
28 changed files with 718 additions and 0 deletions

View File

@ -109,6 +109,7 @@
SUBDIR += graphviz
SUBDIR += gridpix
SUBDIR += gsculpt
SUBDIR += gstreamer
SUBDIR += gsubedit
SUBDIR += gthumb
SUBDIR += gtkdps

View File

@ -0,0 +1,67 @@
# New ports collection makefile for: gstreamer
# Date created: Tue Jul 9 20:24:02 UTC 2002
# Whom: Mario Sergio Fujikawa Ferreira <lioux@FreeBSD.org>
#
# $FreeBSD$
#
PORTNAME= gstreamer
PORTVERSION= 0.4.0
CATEGORIES= graphics
MASTER_SITES= ${MASTER_SITE_SOURCEFORGE}
MASTER_SITE_SUBDIR= ${PORTNAME}
MAINTAINER= lioux@FreeBSD.org
BUILD_DEPENDS= pkg-config:${PORTSDIR}/devel/pkgconfig
LIB_DEPENDS= glib-2.0.0:${PORTSDIR}/devel/glib20 \
popt.0:${PORTSDIR}/devel/popt \
xml2.5:${PORTSDIR}/textproc/libxml2
BROKEN= Needs help fixing scheduling code under FreeBSD
USE_BZIP2= yes
USE_LIBTOOL= yes
USE_REINPLACE= yes
GNU_CONFIGURE= yes
CONFIGURE_ARGS= --disable-tests \
--disable-failing-tests
CONFIGURE_ENV= PKG_CONFIG=${PKG_CONFIG} \
CPPFLAGS="${CPPFLAGS} -I${LOCALBASE}/include" \
LDFLAGS="${LDFLAGS} -L${LOCALBASE}/lib"
INSTALLS_SHLIB= yes
MAN1= gst-complete.1 gst-compprep.1 gst-inspect.1 gst-launch.1 \
gst-register.1 gst-xmllaunch.1
PKG_CONFIG?="${LOCALBASE}/bin/pkg-config"
post-patch:
# do not prefix binary names with anything
@${REINPLACE_CMD} -E -e \
's|(@program_transform_name@),[^,]+,|\1,s/$$$$//,|' \
${CONFIGURE_WRKSRC}/${CONFIGURE_SCRIPT}
# use proper dir
@${REINPLACE_CMD} -E -e \
's|^(pkgconfigdir).*$$|\1=${PREFIX}/libdata/pkgconfig|' \
${WRKSRC}/Makefile.in
# remove version number from include dir name
@${FIND} ${WRKSRC} -type f -name Makefile.in | \
${XARGS} -n 10 ${REINPLACE_CMD} -E \
's|^(lib[[:alpha:]]+includedir.+)-@VERSION@|\1|'
# remove version number from include dir name AND
# help dependent ports find popt.h
@${REINPLACE_CMD} -E -e \
's|-@VERSION@||; \
s|(-I\$${includedir})|\1 -I${LOCALBASE}/include|' \
${WRKSRC}/gstreamer.pc.in
# XXX - remove in release 0.4.1 since this is fixed in CVS
@${REINPLACE_CMD} -e 's|MAP_ANONYMOUS|MAP_ANON|' \
${WRKSRC}/gst/cothreads.c
post-configure:
# remove version number postfix from library names
@${REINPLACE_CMD} -E -e 's|-release ${PORTVERSION}||' \
${WRKSRC}/gst/Makefile
.include <bsd.port.mk>

View File

@ -0,0 +1 @@
MD5 (gstreamer-0.4.0.tar.bz2) = 6dffb9d8f8e0c82989966f6fc7a7c94e

View File

@ -0,0 +1,10 @@
--- configure.orig Wed Jul 10 16:32:49 2002
+++ configure Wed Jul 10 16:33:12 2002
@@ -6620,6 +6620,7 @@
# This can be used to rebuild libtool when needed
LIBTOOL_DEPS="$ac_aux_dir/ltmain.sh"
+$ac_aux_dir/ltconfig $LIBTOOL_DEPS
# Always use our own libtool.
LIBTOOL='$(SHELL) $(top_builddir)/libtool'

View File

@ -0,0 +1,22 @@
--- gst/gstthread.c.orig Wed Jul 10 15:22:00 2002
+++ gst/gstthread.c Wed Jul 10 15:22:52 2002
@@ -147,7 +147,7 @@
thread->cond = g_cond_new ();
thread->ppid = getpid ();
- thread->thread_id = -1;
+ thread->thread_id = (pthread_t) -1;
}
static void
@@ -276,8 +276,8 @@
if (pthread_attr_init (&thread->attr) != 0)
g_warning ("pthread_attr_init returned an error !");
if (gst_scheduler_get_preferred_stack (GST_ELEMENT_SCHED (element), &thread->stack, &stacksize)) {
- if (pthread_attr_setstack (&thread->attr, thread->stack, stacksize) != 0) {
- g_warning ("pthread_attr_setstack failed");
+ if (pthread_attr_setstacksize (&thread->attr, stacksize) != 0) {
+ g_warning ("pthread_attr_setstacksize failed");
return GST_STATE_FAILURE;
}
GST_DEBUG (GST_CAT_THREAD, "pthread attr set stack at %p of size %ld",

View File

@ -0,0 +1,11 @@
--- libs/ext/cothreads/tests/Makefile.in.orig Wed Jul 10 15:44:45 2002
+++ libs/ext/cothreads/tests/Makefile.in Wed Jul 10 15:45:06 2002
@@ -76,7 +76,7 @@
GLIB_CFLAGS = @GLIB_CFLAGS@
GLIB_LIBS = @GLIB_LIBS@
GTHREAD_CFLAGS = @GTHREAD_CFLAGS@
-GTHREAD_LIBS = @GTHREAD_LIBS@
+GTHREAD_LIBS = -lc @GTHREAD_LIBS@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
LIBTOOL = @LIBTOOL@
LN_S = @LN_S@

View File

@ -0,0 +1,18 @@
--- libs/ext/cothreads/tests/cothreads.c.orig Fri Jun 21 01:33:11 2002
+++ libs/ext/cothreads/tests/cothreads.c Mon Jul 15 18:11:38 2002
@@ -79,10 +79,13 @@
printf ("0: creating the gthreads\n");
for (i=0; i<NGTHREADS; i++) {
pthreadnum[i] = i+1;
- if (posix_memalign (&stack, MAIN_STACK_SIZE, MAIN_STACK_SIZE))
+ stack = malloc (MAIN_STACK_SIZE * (1.0 + 1.0/16));
+ if (!stack)
perror ("allocating pthread stack of size %d", MAIN_STACK_SIZE);
+ stack = (void*)((int)stack &~ (int)(MAIN_STACK_SIZE / 16 - 1));
+ stack += 1;
pthread_attr_init (&attr[i]);
- if (!pthread_attr_setstack (&attr[i], stack, MAIN_STACK_SIZE))
+ if (!pthread_attr_setstacksize (&attr[i], MAIN_STACK_SIZE))
perror ("setting stack size");
pthread_create (&thread[i], &attr[i], pthread, &pthreadnum[i]);
}

View File

@ -0,0 +1 @@
Development framework for creating media applications

View File

@ -0,0 +1,24 @@
[ excerpt from developer's site ]
- What is GStreamer?
GStreamer allows the construction of graphs of media-handling
components, ranging from simple mp3 playback to complex audio
(mixing) and video (non-linear editing) processing. Applications
can take advantage of advances in codec and filter technology
transparently. Developers can add new codecs and filters by writing
a simple plugin with a clean, generic interface. GStreamer is
released under the LGPL, with many of the included plugins retaining
the license of the code they were derived from, usually GPL or BSD.
- Features:
* Comprehensive Core Library
* Intelligent Plugin Architecture
* Extensive Development Tools
- Is GStreamer a media player?
No, GStreamer is a development framework for creating applications
like media players, video editors, streaming media broadcasters and
so on. That said, very good media players can easily be built on
top of GStreamer and we even include a simple yet functional
mediaplayer with GStreamer called Gst-Player
WWW: http://gstreamer.sourceforge.net/

View File

@ -0,0 +1,85 @@
@unexec %D/bin/gst-register 2>/dev/null
bin/gst-complete
bin/gst-compprep
bin/gst-feedback
bin/gst-inspect
bin/gst-launch
bin/gst-register
bin/gst-xmllaunch
include/gstreamer/gst/bytestream/bytestream.h
include/gstreamer/gst/control/control.h
include/gstreamer/gst/control/dparam.h
include/gstreamer/gst/control/dparam_smooth.h
include/gstreamer/gst/control/dparamcommon.h
include/gstreamer/gst/control/dparammanager.h
include/gstreamer/gst/control/dplinearinterp.h
include/gstreamer/gst/control/unitconvert.h
include/gstreamer/gst/getbits/getbits.h
include/gstreamer/gst/gst.h
include/gstreamer/gst/gstautoplug.h
include/gstreamer/gst/gstbin.h
include/gstreamer/gst/gstbuffer.h
include/gstreamer/gst/gstbufferpool.h
include/gstreamer/gst/gstcaps.h
include/gstreamer/gst/gstclock.h
include/gstreamer/gst/gstconfig.h
include/gstreamer/gst/gstcpu.h
include/gstreamer/gst/gstdata.h
include/gstreamer/gst/gstelement.h
include/gstreamer/gst/gstenumtypes.h
include/gstreamer/gst/gstevent.h
include/gstreamer/gst/gstextratypes.h
include/gstreamer/gst/gstformat.h
include/gstreamer/gst/gstinfo.h
include/gstreamer/gst/gstlog.h
include/gstreamer/gst/gstmarshal.h
include/gstreamer/gst/gstobject.h
include/gstreamer/gst/gstpad.h
include/gstreamer/gst/gstparse.h
include/gstreamer/gst/gstpipeline.h
include/gstreamer/gst/gstplugin.h
include/gstreamer/gst/gstpluginfeature.h
include/gstreamer/gst/gstprops.h
include/gstreamer/gst/gstqueue.h
include/gstreamer/gst/gstregistry.h
include/gstreamer/gst/gstscheduler.h
include/gstreamer/gst/gstsystemclock.h
include/gstreamer/gst/gstthread.h
include/gstreamer/gst/gsttimecache.h
include/gstreamer/gst/gsttrace.h
include/gstreamer/gst/gsttype.h
include/gstreamer/gst/gsttypefind.h
include/gstreamer/gst/gsttypes.h
include/gstreamer/gst/gstutils.h
include/gstreamer/gst/gstversion.h
include/gstreamer/gst/gstxml.h
include/gstreamer/gst/putbits/putbits.h
lib/gst/libgstautoplugcache.so
lib/gst/libgstautoplugger.so
lib/gst/libgstbasicscheduler.so
lib/gst/libgstbytestream.so
lib/gst/libgstcontrol.so
lib/gst/libgstelements.so
lib/gst/libgstfastbasicscheduler.so
lib/gst/libgstfaststandardscheduler.so
lib/gst/libgstgetbits.so
lib/gst/libgstputbits.so
lib/gst/libgstspider.so
lib/gst/libgststandardscheduler.so
lib/gst/libgststaticautoplug.so
lib/gst/libgststaticautoplugrender.so
lib/gst/libgsttypes.so
lib/libgstreamer.a
lib/libgstreamer.so
lib/libgstreamer.so.0
libdata/pkgconfig/gstreamer.pc
@dirrm lib/gst
@dirrm include/gstreamer/gst/putbits
@dirrm include/gstreamer/gst/getbits
@dirrm include/gstreamer/gst/control
@dirrm include/gstreamer/gst/bytestream
@dirrm include/gstreamer/gst
@dirrm include/gstreamer
@exec %D/bin/gst-register 2>/dev/null
@unexec rm %D/etc/gstreamer/registry.xml 2>/dev/null || true
@unexec rmdir %D/etc/gstreamer 2>/dev/null || echo "There are some configuration files left in ${PKG_PREFIX}/etc/gstreamer, do not forget to remove them if you are permanently removing gstreamer port."

View File

@ -0,0 +1,67 @@
# New ports collection makefile for: gstreamer
# Date created: Tue Jul 9 20:24:02 UTC 2002
# Whom: Mario Sergio Fujikawa Ferreira <lioux@FreeBSD.org>
#
# $FreeBSD$
#
PORTNAME= gstreamer
PORTVERSION= 0.4.0
CATEGORIES= graphics
MASTER_SITES= ${MASTER_SITE_SOURCEFORGE}
MASTER_SITE_SUBDIR= ${PORTNAME}
MAINTAINER= lioux@FreeBSD.org
BUILD_DEPENDS= pkg-config:${PORTSDIR}/devel/pkgconfig
LIB_DEPENDS= glib-2.0.0:${PORTSDIR}/devel/glib20 \
popt.0:${PORTSDIR}/devel/popt \
xml2.5:${PORTSDIR}/textproc/libxml2
BROKEN= Needs help fixing scheduling code under FreeBSD
USE_BZIP2= yes
USE_LIBTOOL= yes
USE_REINPLACE= yes
GNU_CONFIGURE= yes
CONFIGURE_ARGS= --disable-tests \
--disable-failing-tests
CONFIGURE_ENV= PKG_CONFIG=${PKG_CONFIG} \
CPPFLAGS="${CPPFLAGS} -I${LOCALBASE}/include" \
LDFLAGS="${LDFLAGS} -L${LOCALBASE}/lib"
INSTALLS_SHLIB= yes
MAN1= gst-complete.1 gst-compprep.1 gst-inspect.1 gst-launch.1 \
gst-register.1 gst-xmllaunch.1
PKG_CONFIG?="${LOCALBASE}/bin/pkg-config"
post-patch:
# do not prefix binary names with anything
@${REINPLACE_CMD} -E -e \
's|(@program_transform_name@),[^,]+,|\1,s/$$$$//,|' \
${CONFIGURE_WRKSRC}/${CONFIGURE_SCRIPT}
# use proper dir
@${REINPLACE_CMD} -E -e \
's|^(pkgconfigdir).*$$|\1=${PREFIX}/libdata/pkgconfig|' \
${WRKSRC}/Makefile.in
# remove version number from include dir name
@${FIND} ${WRKSRC} -type f -name Makefile.in | \
${XARGS} -n 10 ${REINPLACE_CMD} -E \
's|^(lib[[:alpha:]]+includedir.+)-@VERSION@|\1|'
# remove version number from include dir name AND
# help dependent ports find popt.h
@${REINPLACE_CMD} -E -e \
's|-@VERSION@||; \
s|(-I\$${includedir})|\1 -I${LOCALBASE}/include|' \
${WRKSRC}/gstreamer.pc.in
# XXX - remove in release 0.4.1 since this is fixed in CVS
@${REINPLACE_CMD} -e 's|MAP_ANONYMOUS|MAP_ANON|' \
${WRKSRC}/gst/cothreads.c
post-configure:
# remove version number postfix from library names
@${REINPLACE_CMD} -E -e 's|-release ${PORTVERSION}||' \
${WRKSRC}/gst/Makefile
.include <bsd.port.mk>

View File

@ -0,0 +1 @@
MD5 (gstreamer-0.4.0.tar.bz2) = 6dffb9d8f8e0c82989966f6fc7a7c94e

View File

@ -0,0 +1,10 @@
--- configure.orig Wed Jul 10 16:32:49 2002
+++ configure Wed Jul 10 16:33:12 2002
@@ -6620,6 +6620,7 @@
# This can be used to rebuild libtool when needed
LIBTOOL_DEPS="$ac_aux_dir/ltmain.sh"
+$ac_aux_dir/ltconfig $LIBTOOL_DEPS
# Always use our own libtool.
LIBTOOL='$(SHELL) $(top_builddir)/libtool'

View File

@ -0,0 +1,22 @@
--- gst/gstthread.c.orig Wed Jul 10 15:22:00 2002
+++ gst/gstthread.c Wed Jul 10 15:22:52 2002
@@ -147,7 +147,7 @@
thread->cond = g_cond_new ();
thread->ppid = getpid ();
- thread->thread_id = -1;
+ thread->thread_id = (pthread_t) -1;
}
static void
@@ -276,8 +276,8 @@
if (pthread_attr_init (&thread->attr) != 0)
g_warning ("pthread_attr_init returned an error !");
if (gst_scheduler_get_preferred_stack (GST_ELEMENT_SCHED (element), &thread->stack, &stacksize)) {
- if (pthread_attr_setstack (&thread->attr, thread->stack, stacksize) != 0) {
- g_warning ("pthread_attr_setstack failed");
+ if (pthread_attr_setstacksize (&thread->attr, stacksize) != 0) {
+ g_warning ("pthread_attr_setstacksize failed");
return GST_STATE_FAILURE;
}
GST_DEBUG (GST_CAT_THREAD, "pthread attr set stack at %p of size %ld",

View File

@ -0,0 +1,11 @@
--- libs/ext/cothreads/tests/Makefile.in.orig Wed Jul 10 15:44:45 2002
+++ libs/ext/cothreads/tests/Makefile.in Wed Jul 10 15:45:06 2002
@@ -76,7 +76,7 @@
GLIB_CFLAGS = @GLIB_CFLAGS@
GLIB_LIBS = @GLIB_LIBS@
GTHREAD_CFLAGS = @GTHREAD_CFLAGS@
-GTHREAD_LIBS = @GTHREAD_LIBS@
+GTHREAD_LIBS = -lc @GTHREAD_LIBS@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
LIBTOOL = @LIBTOOL@
LN_S = @LN_S@

View File

@ -0,0 +1,18 @@
--- libs/ext/cothreads/tests/cothreads.c.orig Fri Jun 21 01:33:11 2002
+++ libs/ext/cothreads/tests/cothreads.c Mon Jul 15 18:11:38 2002
@@ -79,10 +79,13 @@
printf ("0: creating the gthreads\n");
for (i=0; i<NGTHREADS; i++) {
pthreadnum[i] = i+1;
- if (posix_memalign (&stack, MAIN_STACK_SIZE, MAIN_STACK_SIZE))
+ stack = malloc (MAIN_STACK_SIZE * (1.0 + 1.0/16));
+ if (!stack)
perror ("allocating pthread stack of size %d", MAIN_STACK_SIZE);
+ stack = (void*)((int)stack &~ (int)(MAIN_STACK_SIZE / 16 - 1));
+ stack += 1;
pthread_attr_init (&attr[i]);
- if (!pthread_attr_setstack (&attr[i], stack, MAIN_STACK_SIZE))
+ if (!pthread_attr_setstacksize (&attr[i], MAIN_STACK_SIZE))
perror ("setting stack size");
pthread_create (&thread[i], &attr[i], pthread, &pthreadnum[i]);
}

View File

@ -0,0 +1 @@
Development framework for creating media applications

View File

@ -0,0 +1,24 @@
[ excerpt from developer's site ]
- What is GStreamer?
GStreamer allows the construction of graphs of media-handling
components, ranging from simple mp3 playback to complex audio
(mixing) and video (non-linear editing) processing. Applications
can take advantage of advances in codec and filter technology
transparently. Developers can add new codecs and filters by writing
a simple plugin with a clean, generic interface. GStreamer is
released under the LGPL, with many of the included plugins retaining
the license of the code they were derived from, usually GPL or BSD.
- Features:
* Comprehensive Core Library
* Intelligent Plugin Architecture
* Extensive Development Tools
- Is GStreamer a media player?
No, GStreamer is a development framework for creating applications
like media players, video editors, streaming media broadcasters and
so on. That said, very good media players can easily be built on
top of GStreamer and we even include a simple yet functional
mediaplayer with GStreamer called Gst-Player
WWW: http://gstreamer.sourceforge.net/

View File

@ -0,0 +1,85 @@
@unexec %D/bin/gst-register 2>/dev/null
bin/gst-complete
bin/gst-compprep
bin/gst-feedback
bin/gst-inspect
bin/gst-launch
bin/gst-register
bin/gst-xmllaunch
include/gstreamer/gst/bytestream/bytestream.h
include/gstreamer/gst/control/control.h
include/gstreamer/gst/control/dparam.h
include/gstreamer/gst/control/dparam_smooth.h
include/gstreamer/gst/control/dparamcommon.h
include/gstreamer/gst/control/dparammanager.h
include/gstreamer/gst/control/dplinearinterp.h
include/gstreamer/gst/control/unitconvert.h
include/gstreamer/gst/getbits/getbits.h
include/gstreamer/gst/gst.h
include/gstreamer/gst/gstautoplug.h
include/gstreamer/gst/gstbin.h
include/gstreamer/gst/gstbuffer.h
include/gstreamer/gst/gstbufferpool.h
include/gstreamer/gst/gstcaps.h
include/gstreamer/gst/gstclock.h
include/gstreamer/gst/gstconfig.h
include/gstreamer/gst/gstcpu.h
include/gstreamer/gst/gstdata.h
include/gstreamer/gst/gstelement.h
include/gstreamer/gst/gstenumtypes.h
include/gstreamer/gst/gstevent.h
include/gstreamer/gst/gstextratypes.h
include/gstreamer/gst/gstformat.h
include/gstreamer/gst/gstinfo.h
include/gstreamer/gst/gstlog.h
include/gstreamer/gst/gstmarshal.h
include/gstreamer/gst/gstobject.h
include/gstreamer/gst/gstpad.h
include/gstreamer/gst/gstparse.h
include/gstreamer/gst/gstpipeline.h
include/gstreamer/gst/gstplugin.h
include/gstreamer/gst/gstpluginfeature.h
include/gstreamer/gst/gstprops.h
include/gstreamer/gst/gstqueue.h
include/gstreamer/gst/gstregistry.h
include/gstreamer/gst/gstscheduler.h
include/gstreamer/gst/gstsystemclock.h
include/gstreamer/gst/gstthread.h
include/gstreamer/gst/gsttimecache.h
include/gstreamer/gst/gsttrace.h
include/gstreamer/gst/gsttype.h
include/gstreamer/gst/gsttypefind.h
include/gstreamer/gst/gsttypes.h
include/gstreamer/gst/gstutils.h
include/gstreamer/gst/gstversion.h
include/gstreamer/gst/gstxml.h
include/gstreamer/gst/putbits/putbits.h
lib/gst/libgstautoplugcache.so
lib/gst/libgstautoplugger.so
lib/gst/libgstbasicscheduler.so
lib/gst/libgstbytestream.so
lib/gst/libgstcontrol.so
lib/gst/libgstelements.so
lib/gst/libgstfastbasicscheduler.so
lib/gst/libgstfaststandardscheduler.so
lib/gst/libgstgetbits.so
lib/gst/libgstputbits.so
lib/gst/libgstspider.so
lib/gst/libgststandardscheduler.so
lib/gst/libgststaticautoplug.so
lib/gst/libgststaticautoplugrender.so
lib/gst/libgsttypes.so
lib/libgstreamer.a
lib/libgstreamer.so
lib/libgstreamer.so.0
libdata/pkgconfig/gstreamer.pc
@dirrm lib/gst
@dirrm include/gstreamer/gst/putbits
@dirrm include/gstreamer/gst/getbits
@dirrm include/gstreamer/gst/control
@dirrm include/gstreamer/gst/bytestream
@dirrm include/gstreamer/gst
@dirrm include/gstreamer
@exec %D/bin/gst-register 2>/dev/null
@unexec rm %D/etc/gstreamer/registry.xml 2>/dev/null || true
@unexec rmdir %D/etc/gstreamer 2>/dev/null || echo "There are some configuration files left in ${PKG_PREFIX}/etc/gstreamer, do not forget to remove them if you are permanently removing gstreamer port."

View File

@ -0,0 +1,67 @@
# New ports collection makefile for: gstreamer
# Date created: Tue Jul 9 20:24:02 UTC 2002
# Whom: Mario Sergio Fujikawa Ferreira <lioux@FreeBSD.org>
#
# $FreeBSD$
#
PORTNAME= gstreamer
PORTVERSION= 0.4.0
CATEGORIES= graphics
MASTER_SITES= ${MASTER_SITE_SOURCEFORGE}
MASTER_SITE_SUBDIR= ${PORTNAME}
MAINTAINER= lioux@FreeBSD.org
BUILD_DEPENDS= pkg-config:${PORTSDIR}/devel/pkgconfig
LIB_DEPENDS= glib-2.0.0:${PORTSDIR}/devel/glib20 \
popt.0:${PORTSDIR}/devel/popt \
xml2.5:${PORTSDIR}/textproc/libxml2
BROKEN= Needs help fixing scheduling code under FreeBSD
USE_BZIP2= yes
USE_LIBTOOL= yes
USE_REINPLACE= yes
GNU_CONFIGURE= yes
CONFIGURE_ARGS= --disable-tests \
--disable-failing-tests
CONFIGURE_ENV= PKG_CONFIG=${PKG_CONFIG} \
CPPFLAGS="${CPPFLAGS} -I${LOCALBASE}/include" \
LDFLAGS="${LDFLAGS} -L${LOCALBASE}/lib"
INSTALLS_SHLIB= yes
MAN1= gst-complete.1 gst-compprep.1 gst-inspect.1 gst-launch.1 \
gst-register.1 gst-xmllaunch.1
PKG_CONFIG?="${LOCALBASE}/bin/pkg-config"
post-patch:
# do not prefix binary names with anything
@${REINPLACE_CMD} -E -e \
's|(@program_transform_name@),[^,]+,|\1,s/$$$$//,|' \
${CONFIGURE_WRKSRC}/${CONFIGURE_SCRIPT}
# use proper dir
@${REINPLACE_CMD} -E -e \
's|^(pkgconfigdir).*$$|\1=${PREFIX}/libdata/pkgconfig|' \
${WRKSRC}/Makefile.in
# remove version number from include dir name
@${FIND} ${WRKSRC} -type f -name Makefile.in | \
${XARGS} -n 10 ${REINPLACE_CMD} -E \
's|^(lib[[:alpha:]]+includedir.+)-@VERSION@|\1|'
# remove version number from include dir name AND
# help dependent ports find popt.h
@${REINPLACE_CMD} -E -e \
's|-@VERSION@||; \
s|(-I\$${includedir})|\1 -I${LOCALBASE}/include|' \
${WRKSRC}/gstreamer.pc.in
# XXX - remove in release 0.4.1 since this is fixed in CVS
@${REINPLACE_CMD} -e 's|MAP_ANONYMOUS|MAP_ANON|' \
${WRKSRC}/gst/cothreads.c
post-configure:
# remove version number postfix from library names
@${REINPLACE_CMD} -E -e 's|-release ${PORTVERSION}||' \
${WRKSRC}/gst/Makefile
.include <bsd.port.mk>

View File

@ -0,0 +1 @@
MD5 (gstreamer-0.4.0.tar.bz2) = 6dffb9d8f8e0c82989966f6fc7a7c94e

View File

@ -0,0 +1,10 @@
--- configure.orig Wed Jul 10 16:32:49 2002
+++ configure Wed Jul 10 16:33:12 2002
@@ -6620,6 +6620,7 @@
# This can be used to rebuild libtool when needed
LIBTOOL_DEPS="$ac_aux_dir/ltmain.sh"
+$ac_aux_dir/ltconfig $LIBTOOL_DEPS
# Always use our own libtool.
LIBTOOL='$(SHELL) $(top_builddir)/libtool'

View File

@ -0,0 +1,22 @@
--- gst/gstthread.c.orig Wed Jul 10 15:22:00 2002
+++ gst/gstthread.c Wed Jul 10 15:22:52 2002
@@ -147,7 +147,7 @@
thread->cond = g_cond_new ();
thread->ppid = getpid ();
- thread->thread_id = -1;
+ thread->thread_id = (pthread_t) -1;
}
static void
@@ -276,8 +276,8 @@
if (pthread_attr_init (&thread->attr) != 0)
g_warning ("pthread_attr_init returned an error !");
if (gst_scheduler_get_preferred_stack (GST_ELEMENT_SCHED (element), &thread->stack, &stacksize)) {
- if (pthread_attr_setstack (&thread->attr, thread->stack, stacksize) != 0) {
- g_warning ("pthread_attr_setstack failed");
+ if (pthread_attr_setstacksize (&thread->attr, stacksize) != 0) {
+ g_warning ("pthread_attr_setstacksize failed");
return GST_STATE_FAILURE;
}
GST_DEBUG (GST_CAT_THREAD, "pthread attr set stack at %p of size %ld",

View File

@ -0,0 +1,11 @@
--- libs/ext/cothreads/tests/Makefile.in.orig Wed Jul 10 15:44:45 2002
+++ libs/ext/cothreads/tests/Makefile.in Wed Jul 10 15:45:06 2002
@@ -76,7 +76,7 @@
GLIB_CFLAGS = @GLIB_CFLAGS@
GLIB_LIBS = @GLIB_LIBS@
GTHREAD_CFLAGS = @GTHREAD_CFLAGS@
-GTHREAD_LIBS = @GTHREAD_LIBS@
+GTHREAD_LIBS = -lc @GTHREAD_LIBS@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
LIBTOOL = @LIBTOOL@
LN_S = @LN_S@

View File

@ -0,0 +1,18 @@
--- libs/ext/cothreads/tests/cothreads.c.orig Fri Jun 21 01:33:11 2002
+++ libs/ext/cothreads/tests/cothreads.c Mon Jul 15 18:11:38 2002
@@ -79,10 +79,13 @@
printf ("0: creating the gthreads\n");
for (i=0; i<NGTHREADS; i++) {
pthreadnum[i] = i+1;
- if (posix_memalign (&stack, MAIN_STACK_SIZE, MAIN_STACK_SIZE))
+ stack = malloc (MAIN_STACK_SIZE * (1.0 + 1.0/16));
+ if (!stack)
perror ("allocating pthread stack of size %d", MAIN_STACK_SIZE);
+ stack = (void*)((int)stack &~ (int)(MAIN_STACK_SIZE / 16 - 1));
+ stack += 1;
pthread_attr_init (&attr[i]);
- if (!pthread_attr_setstack (&attr[i], stack, MAIN_STACK_SIZE))
+ if (!pthread_attr_setstacksize (&attr[i], MAIN_STACK_SIZE))
perror ("setting stack size");
pthread_create (&thread[i], &attr[i], pthread, &pthreadnum[i]);
}

View File

@ -0,0 +1 @@
Development framework for creating media applications

View File

@ -0,0 +1,24 @@
[ excerpt from developer's site ]
- What is GStreamer?
GStreamer allows the construction of graphs of media-handling
components, ranging from simple mp3 playback to complex audio
(mixing) and video (non-linear editing) processing. Applications
can take advantage of advances in codec and filter technology
transparently. Developers can add new codecs and filters by writing
a simple plugin with a clean, generic interface. GStreamer is
released under the LGPL, with many of the included plugins retaining
the license of the code they were derived from, usually GPL or BSD.
- Features:
* Comprehensive Core Library
* Intelligent Plugin Architecture
* Extensive Development Tools
- Is GStreamer a media player?
No, GStreamer is a development framework for creating applications
like media players, video editors, streaming media broadcasters and
so on. That said, very good media players can easily be built on
top of GStreamer and we even include a simple yet functional
mediaplayer with GStreamer called Gst-Player
WWW: http://gstreamer.sourceforge.net/

View File

@ -0,0 +1,85 @@
@unexec %D/bin/gst-register 2>/dev/null
bin/gst-complete
bin/gst-compprep
bin/gst-feedback
bin/gst-inspect
bin/gst-launch
bin/gst-register
bin/gst-xmllaunch
include/gstreamer/gst/bytestream/bytestream.h
include/gstreamer/gst/control/control.h
include/gstreamer/gst/control/dparam.h
include/gstreamer/gst/control/dparam_smooth.h
include/gstreamer/gst/control/dparamcommon.h
include/gstreamer/gst/control/dparammanager.h
include/gstreamer/gst/control/dplinearinterp.h
include/gstreamer/gst/control/unitconvert.h
include/gstreamer/gst/getbits/getbits.h
include/gstreamer/gst/gst.h
include/gstreamer/gst/gstautoplug.h
include/gstreamer/gst/gstbin.h
include/gstreamer/gst/gstbuffer.h
include/gstreamer/gst/gstbufferpool.h
include/gstreamer/gst/gstcaps.h
include/gstreamer/gst/gstclock.h
include/gstreamer/gst/gstconfig.h
include/gstreamer/gst/gstcpu.h
include/gstreamer/gst/gstdata.h
include/gstreamer/gst/gstelement.h
include/gstreamer/gst/gstenumtypes.h
include/gstreamer/gst/gstevent.h
include/gstreamer/gst/gstextratypes.h
include/gstreamer/gst/gstformat.h
include/gstreamer/gst/gstinfo.h
include/gstreamer/gst/gstlog.h
include/gstreamer/gst/gstmarshal.h
include/gstreamer/gst/gstobject.h
include/gstreamer/gst/gstpad.h
include/gstreamer/gst/gstparse.h
include/gstreamer/gst/gstpipeline.h
include/gstreamer/gst/gstplugin.h
include/gstreamer/gst/gstpluginfeature.h
include/gstreamer/gst/gstprops.h
include/gstreamer/gst/gstqueue.h
include/gstreamer/gst/gstregistry.h
include/gstreamer/gst/gstscheduler.h
include/gstreamer/gst/gstsystemclock.h
include/gstreamer/gst/gstthread.h
include/gstreamer/gst/gsttimecache.h
include/gstreamer/gst/gsttrace.h
include/gstreamer/gst/gsttype.h
include/gstreamer/gst/gsttypefind.h
include/gstreamer/gst/gsttypes.h
include/gstreamer/gst/gstutils.h
include/gstreamer/gst/gstversion.h
include/gstreamer/gst/gstxml.h
include/gstreamer/gst/putbits/putbits.h
lib/gst/libgstautoplugcache.so
lib/gst/libgstautoplugger.so
lib/gst/libgstbasicscheduler.so
lib/gst/libgstbytestream.so
lib/gst/libgstcontrol.so
lib/gst/libgstelements.so
lib/gst/libgstfastbasicscheduler.so
lib/gst/libgstfaststandardscheduler.so
lib/gst/libgstgetbits.so
lib/gst/libgstputbits.so
lib/gst/libgstspider.so
lib/gst/libgststandardscheduler.so
lib/gst/libgststaticautoplug.so
lib/gst/libgststaticautoplugrender.so
lib/gst/libgsttypes.so
lib/libgstreamer.a
lib/libgstreamer.so
lib/libgstreamer.so.0
libdata/pkgconfig/gstreamer.pc
@dirrm lib/gst
@dirrm include/gstreamer/gst/putbits
@dirrm include/gstreamer/gst/getbits
@dirrm include/gstreamer/gst/control
@dirrm include/gstreamer/gst/bytestream
@dirrm include/gstreamer/gst
@dirrm include/gstreamer
@exec %D/bin/gst-register 2>/dev/null
@unexec rm %D/etc/gstreamer/registry.xml 2>/dev/null || true
@unexec rmdir %D/etc/gstreamer 2>/dev/null || echo "There are some configuration files left in ${PKG_PREFIX}/etc/gstreamer, do not forget to remove them if you are permanently removing gstreamer port."