Hi,
building gstreamer-plugins with libdvdnav installed (required by vlc,
for example) fails:
`/usr/ports/devel/gstreamer-plugins/w-gstreamer-plugins-0.8.11p4/gst-plugins-0.8.11/ext/dvdnav'
[...]
cc -DHAVE_CONFIG_H -I. -I. -I../.. -I/usr/local/include
-I/usr/X11R6/include -I../../gst-libs -I../../gst-libs
-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -pthread
-I/usr/local/include/gstreamer-0.8 -I/usr/local/include/glib-2.0
-I/usr/local/lib/glib-2.0/include -I/usr/local/include/libxml2
-I/usr/local/include -DGST_DISABLE_DEPRECATED -Wall -I/usr/local/include
-I/usr/local/include/dvdnav -O2 -pipe -MT
libgstdvdnavsrc_la-dvdnavsrc.lo -MD -MP -MF .deps/l
ibgstdvdnavsrc_la-dvdnavsrc.Tpo -c dvdnavsrc.c -fPIC -DPIC -o
.libs/libgstdvdnavsrc_la-dvdnavsrc.o
In file included from /usr/local/include/dvdread/ifo_read.h:24,
from dvdnavsrc.c:36:
/usr/local/include/dvdread/ifo_types.h:35:2: #error "Must include
<inttypes.h> or <stdint.h> before any libdvdread header."
gmake[3]: *** [libgstdvdnavsrc_la-dvdnavsrc.lo] Error 1
The attached patch fixes this by explicitly disabling libdvdnav support.
It also takes care of additional dependencies (I hope I got them all)
and adds three new subpackages. It's "make update-plist"-clean with my
fairly large collection of installed packages now. Please see the
description in the patch itself ...
Fyi, this issue also affects _3_9, but only the port and not the
packages. Bulk package builders seem to be lucky because it's built
early in the devel/ category. ;-)
Moritz
- Ensure that unwanted plugins are neither built nor screwing with us in the
first place (fixes build with libdvdnav installed)
- Add three more subpackages: Ogg Theora (video, -theora), Musepack/MPC (audio,
-mpc), Streaming via libshout to Icecast servers (-shout)
No PKGNAME bumps, since existing packages did not change. No -faad subpackage,
because that plugin is in the "Bad" category of gstreamer. Those who play DVDs
with gstreamer might also consider trying to rename the -dvdread subpackage
to "-dvd" and incorporate libdvdnav -- requires patching, because it's a bit
screwy (needs #include <stdint.h> before including libdvdread headers ...
however,
gstreamer seems to be generating its own _stdint.h file, so the proper fix might
use that one, or not.)
Builds on i386 and passes lib-depends-check, HOWEVER, it still needs testing.
I do not use gstreamer at all; I just fixed this so it would work as a
dependency
for something.
diff -pruN --exclude=CVS /usr/ports/devel/gstreamer-plugins/Makefile ./Makefile
--- /usr/ports/devel/gstreamer-plugins/Makefile Wed Mar 15 14:27:20 2006
+++ ./Makefile Wed Mar 15 14:26:59 2006
@@ -49,7 +49,13 @@ CONFIGURE_ARGS+= --with-gconf-schema-fil
# Disable plugins might try to build that we shouldn't
#CONFIGURE_ARGS+= --disable-mpeg2enc
-CONFIGURE_ARGS+= --disable-tests
+CONFIGURE_ARGS+= --disable-tests \
+ --disable-arts \
+ --disable-artsc \
+ --disable-dvdnav \
+ --disable-faad \
+ --disable-libmng \
+ --disable-sndfile
CONFIGURE_ENV= CPPFLAGS="-I${LOCALBASE}/include -I${X11BASE}/include" \
LDFLAGS="-L${LOCALBASE}/lib -L${X11BASE}/lib"
@@ -334,6 +340,28 @@ CONFIGURE_ARGS+= --disable-mpeg2dec
. endif
.endif
+# musepack
+COMMENT-mpc= "GStreamer plugin for playing Musepack (MPC) audio
files"
+PKGNAME-mpc= gstreamer-mpc-${VERSION}${PATCHLEVEL}
+PSEUDO_FLAVORS+= no_mpc
+.if !${FLAVOR:L:Mno_mpc} && !${FLAVOR:L:Mminimal}
+MULTI_PACKAGES+= -mpc
+.endif
+.if defined(PACKAGING)
+. if ${SUBPACKAGE} == "-mpc"
+WANTLIB= ${PL_WANTLIB}
+LIB_DEPENDS= gstreamer-0.8.0.0::devel/gstreamer \
+ mpcdec.1::audio/libmpcdec
+. endif
+.else
+. if ${MULTI_PACKAGES:M-mpc}
+BUILD_DEPENDS+= ::audio/libmpcdec
+CONFIGURE_ARGS+= --enable-musepack
+. else
+CONFIGURE_ARGS+= --disable-musepack
+. endif
+.endif
+
# ogg
COMMENT-ogg= "GStreamer plugin for demuxing Ogg streams"
PKGNAME-ogg= gstreamer-ogg-${VERSION}${PATCHLEVEL}
@@ -379,6 +407,29 @@ CONFIGURE_ARGS+= --disable-sdl
. endif
.endif
+# shout2
+COMMENT-shout= "GStreamer plugin for streaming to Icecast servers"
+PKGNAME-shout= gstreamer-shout-${VERSION}${PATCHLEVEL}
+PSEUDO_FLAVORS+= no_shout
+.if !${FLAVOR:L:Mno_shout} && !${FLAVOR:L:Mminimal}
+MULTI_PACKAGES+= -shout
+.endif
+.if defined(PACKAGING)
+. if ${SUBPACKAGE} == "-shout"
+WANTLIB= ${PL_WANTLIB} ogg theora vorbis
+LIB_DEPENDS= gstreamer-0.8.0.0::devel/gstreamer \
+ shout.3::net/libshout \
+ speex.4::audio/speex
+. endif
+.else
+. if ${MULTI_PACKAGES:M-shout}
+BUILD_DEPENDS+= ::net/libshout
+CONFIGURE_ARGS+= --enable-shout2
+. else
+CONFIGURE_ARGS+= --disable-shout2
+. endif
+.endif
+
# speex
COMMENT-speex= "GStreamer plugin for speex"
PKGNAME-speex= gstreamer-speex-${VERSION}${PATCHLEVEL}
@@ -398,6 +449,28 @@ BUILD_DEPENDS+= :speex->=1.0.5:audio/sp
CONFIGURE_ARGS+= --enable-speex
. else
CONFIGURE_ARGS+= --disable-speex
+. endif
+.endif
+
+# theora
+COMMENT-theora= "GStreamer plugin for Theora video files"
+PKGNAME-theora= gstreamer-theora-${VERSION}${PATCHLEVEL}
+PSEUDO_FLAVORS+= no_theora
+.if !${FLAVOR:L:Mno_theora} && !${FLAVOR:L:Mminimal}
+MULTI_PACKAGES+= -theora
+.endif
+.if defined(PACKAGING)
+. if ${SUBPACKAGE} == "-theora"
+WANTLIB= ${PL_WANTLIB} ogg
+LIB_DEPENDS= gstreamer-0.8.0.0::devel/gstreamer \
+ theora.1::multimedia/libtheora
+. endif
+.else
+. if ${MULTI_PACKAGES:M-theora}
+BUILD_DEPENDS+= ::multimedia/libtheora
+CONFIGURE_ARGS+= --enable-theora
+. else
+CONFIGURE_ARGS+= --disable-theora
. endif
.endif
diff -pruN --exclude=CVS /usr/ports/devel/gstreamer-plugins/pkg/DESCR-mpc
./pkg/DESCR-mpc
--- /usr/ports/devel/gstreamer-plugins/pkg/DESCR-mpc Thu Jan 1 01:00:00 1970
+++ ./pkg/DESCR-mpc Wed Mar 15 14:26:59 2006
@@ -0,0 +1,2 @@
+A Musepack (MPC) audio plugin for the GStreamer Streaming-media
+framework.
diff -pruN --exclude=CVS /usr/ports/devel/gstreamer-plugins/pkg/DESCR-shout
./pkg/DESCR-shout
--- /usr/ports/devel/gstreamer-plugins/pkg/DESCR-shout Thu Jan 1 01:00:00 1970
+++ ./pkg/DESCR-shout Wed Mar 15 14:26:59 2006
@@ -0,0 +1,2 @@
+A plugin for the GStreamer Streaming-media framework that allows
+streaming to Icecast servers.
diff -pruN --exclude=CVS /usr/ports/devel/gstreamer-plugins/pkg/DESCR-theora
./pkg/DESCR-theora
--- /usr/ports/devel/gstreamer-plugins/pkg/DESCR-theora Thu Jan 1 01:00:00 1970
+++ ./pkg/DESCR-theora Wed Mar 15 14:29:24 2006
@@ -0,0 +1,2 @@
+An Ogg Theora video plugin for the GStreamer Streaming-media
+framework.
diff -pruN --exclude=CVS /usr/ports/devel/gstreamer-plugins/pkg/PLIST-mpc
./pkg/PLIST-mpc
--- /usr/ports/devel/gstreamer-plugins/pkg/PLIST-mpc Thu Jan 1 01:00:00 1970
+++ ./pkg/PLIST-mpc Wed Mar 15 14:26:59 2006
@@ -0,0 +1,6 @@
[EMAIL PROTECTED] $OpenBSD$
+lib/gstreamer-0.8/libgstmusepack.a
+lib/gstreamer-0.8/libgstmusepack.la
+lib/gstreamer-0.8/libgstmusepack.so
[EMAIL PROTECTED] %D/bin/gst-register > /dev/null 2>&1
[EMAIL PROTECTED] %D/bin/gst-register > /dev/null 2>&1
diff -pruN --exclude=CVS /usr/ports/devel/gstreamer-plugins/pkg/PLIST-shout
./pkg/PLIST-shout
--- /usr/ports/devel/gstreamer-plugins/pkg/PLIST-shout Thu Jan 1 01:00:00 1970
+++ ./pkg/PLIST-shout Wed Mar 15 14:26:59 2006
@@ -0,0 +1,6 @@
[EMAIL PROTECTED] $OpenBSD$
+lib/gstreamer-0.8/libgstshout2.a
+lib/gstreamer-0.8/libgstshout2.la
+lib/gstreamer-0.8/libgstshout2.so
[EMAIL PROTECTED] %D/bin/gst-register > /dev/null 2>&1
[EMAIL PROTECTED] %D/bin/gst-register > /dev/null 2>&1
diff -pruN --exclude=CVS /usr/ports/devel/gstreamer-plugins/pkg/PLIST-theora
./pkg/PLIST-theora
--- /usr/ports/devel/gstreamer-plugins/pkg/PLIST-theora Thu Jan 1 01:00:00 1970
+++ ./pkg/PLIST-theora Wed Mar 15 14:26:59 2006
@@ -0,0 +1,6 @@
[EMAIL PROTECTED] $OpenBSD$
+lib/gstreamer-0.8/libgsttheora.a
+lib/gstreamer-0.8/libgsttheora.la
+lib/gstreamer-0.8/libgsttheora.so
[EMAIL PROTECTED] %D/bin/gst-register > /dev/null 2>&1
[EMAIL PROTECTED] %D/bin/gst-register > /dev/null 2>&1