aboutsummaryrefslogtreecommitdiff
path: root/multimedia
diff options
context:
space:
mode:
authorJuergen Lock <nox@FreeBSD.org>2012-09-01 14:10:54 +0000
committerJuergen Lock <nox@FreeBSD.org>2012-09-01 14:10:54 +0000
commitbf94442d17d99f6100efec5e235c98f551fdc110 (patch)
treef9ece5798e6cb94b56de254c0fbae6fcfb2bf2cd /multimedia
parent0ddb7cc0b8106238f2923ac1419982c85d9fd9d6 (diff)
downloadports-bf94442d17d99f6100efec5e235c98f551fdc110.tar.gz
ports-bf94442d17d99f6100efec5e235c98f551fdc110.zip
Notes
Diffstat (limited to 'multimedia')
-rw-r--r--multimedia/vlc/Makefile151
-rw-r--r--multimedia/vlc/distinfo4
-rw-r--r--multimedia/vlc/files/extra-patch-modules__services_discovery__upnp_intel.cpp10
-rw-r--r--multimedia/vlc/files/patch-modules-access-dtv-access.c38
-rw-r--r--multimedia/vlc/files/patch-modules-access-dtv-linux.c31
-rw-r--r--multimedia/vlc/files/patch-modules-audio_output-vlcpulse.c15
-rw-r--r--multimedia/vlc/files/patch-modules-gui-qt4-components-open_panels.cpp11
-rw-r--r--multimedia/vlc/files/patch-modules-gui-qt4-qt4.hpp11
-rw-r--r--multimedia/vlc/files/patch-modules-gui-qt4-util-pictureflow.cpp27
-rw-r--r--multimedia/vlc/files/patch-modules-gui-qt4-util-pictureflow.hpp11
-rw-r--r--multimedia/vlc/files/patch-modules-gui-skins2-x11-x11_window.cpp10
-rw-r--r--multimedia/vlc/files/patch-modules__Makefile.am30
-rw-r--r--multimedia/vlc/files/patch-modules__Makefile.in33
-rw-r--r--multimedia/vlc/files/patch-modules__access__v4l.c75
14 files changed, 215 insertions, 242 deletions
diff --git a/multimedia/vlc/Makefile b/multimedia/vlc/Makefile
index b64cf6dca366..9416d49804e4 100644
--- a/multimedia/vlc/Makefile
+++ b/multimedia/vlc/Makefile
@@ -6,13 +6,13 @@
#
PORTNAME= vlc
-DISTVERSION= 1.1.13
-PORTREVISION= 12
+DISTVERSION= 2.0.3
PORTEPOCH= 3
CATEGORIES= multimedia audio ipv6 net www
-MASTER_SITES= http://download.videolan.org/pub/videolan/${PORTNAME}/${DISTVERSION}/ \
+MASTER_SITES= http://download.videolan.org/pub/videolan/${PORTNAME}/${DISTVERSION:S/p/-pre/}/ \
http://ftp.snt.utwente.nl/pub/software/videolan/${PORTNAME}/${DISTVERSION}/ \
ftp://ftp.crans.org/pub/videolan/${PORTNAME}/${DISTVERSION}/
+DISTNAME= ${PORTNAME}-${DISTVERSION:S/p/-pre/}
MAINTAINER= jsa@FreeBSD.org
COMMENT= Qt4 based multimedia player and streaming server
@@ -20,22 +20,23 @@ COMMENT= Qt4 based multimedia player and streaming server
LICENSE= GPLv2
LICENSE_FILE= ${WRKSRC}/COPYING
-LIB_DEPENDS= avcodec:${PORTSDIR}/multimedia/ffmpeg \
- gcrypt:${PORTSDIR}/security/libgcrypt \
+LIB_DEPENDS= gcrypt:${PORTSDIR}/security/libgcrypt \
proxy:${PORTSDIR}/net/libproxy
+BUILD_DEPENDS= ffmpeg${FFMPEG_SUFFIX}>0.11:${PORTSDIR}/multimedia/ffmpeg${FFMPEG_SUFFIX}
+RUN_DEPENDS= ffmpeg${FFMPEG_SUFFIX}>0.11:${PORTSDIR}/multimedia/ffmpeg${FFMPEG_SUFFIX}
-OPTIONS_DEFINE= A52 AALIB ASS AVAHI CACA DBUS DIRAC DOCS DTS DVB DVDREAD \
- DVDNAV FAAD FLAC FLUID FRIBIDI GGI GLX GNOMEVFS GNUTLS GOOM \
+OPTIONS_DEFINE= A52 AALIB ASS AVAHI CACA DBUS DIRAC DOCS DTS DVDREAD \
+ DVDNAV FAAD FLAC FLUID FRIBIDI GLX GNOMEVFS GNUTLS GOOM \
HTTPD JACK LIVEMEDIA LUA MAD MATROSKA MODPLUG MPEG2 MTP \
- MUSEPACK NCURSES NLS NOTIFY OPTIMIZED_CFLAGS OGG OPENGL PLUGIN \
- PNG PORTAUDIO PROJM PULSEAUDIO QT4 REALAUDIO REMOTEOSD RUNROOT \
+ MUSEPACK NCURSES NLS NOTIFY OPTIMIZED_CFLAGS OGG \
+ PNG PORTAUDIO PROJM PULSEAUDIO QT4 REALAUDIO RUNROOT \
SAMBA SCHROED SDL SHOUTCAST SKINS STREAM SPEEX SQLITE SVG \
- SVGALIB TAGLIB THEORA TREMOR TWOLAME UPNP V4L VAAPI VCD \
+ TAGLIB THEORA TREMOR TWOLAME UPNP V4L VAAPI VCD \
VORBIS X11 X264 XCB XOSD XVIDEO ZVBI SERVER_ONLY DEBUG \
UNSAFE_PLUGINS
-OPTIONS_DEFAULT=A52 AVAHI DBUS DTS DVB DVDREAD DVDNAV FAAD FLAC GLX GNUTLS \
- HTTPD LIVEMEDIA LUA MAD MATROSKA MPEG2 OGG PNG QT4 REALAUDIO \
- REMOTEOSD SDL SKINS STREAM SPEEX TAGLIB THEORA TWOLAME V4L \
+OPTIONS_DEFAULT=A52 AVAHI DBUS DTS DVDREAD DVDNAV FAAD FLAC GLX GNUTLS \
+ HTTPD LUA MAD MATROSKA MPEG2 OGG PNG QT4 REALAUDIO \
+ SDL SKINS STREAM SPEEX TAGLIB THEORA TWOLAME V4L \
VCD VORBIS X11 X264 XCB XVIDEO
A52_DESC= A52 DVD audio decoder
AALIB_DESC= Aalib Console Graphics Support
@@ -44,14 +45,12 @@ CACA_DESC= libcaca Console Graphics Support
DBUS_DESC= D-Bus control support
DIRAC_DESC= Dirac support
DTS_DESC= DTS DVD audio decoder
-DVB_DESC= Digital Video Broadcasting support
DVDREAD_DESC= DVD Playback support
DVDNAV_DESC= DVD menu navigation
FAAD_DESC= Faad audio decoder (mp4/aac) support
FLAC_DESC= Flac audio codec support
FLUID_DESC= Fluidsynth MIDI support
FRIBIDI_DESC= FriBidi bidirectional unicode support
-GGI_DESC= General Graphic Interface support
GLX_DESC= X11 OpenGL rendering
GNOMEVFS_DESC= Gnome VFS support
GOOM_DESC= the Goom visual effect library
@@ -61,20 +60,16 @@ MPEG2_DESC= Mpeg-2 audio/video decoder Support
MTP_DESC= support for the Music Transport Protocol
NCURSES_DESC= ncurses (console) interface
OGG_DESC= Ogg audio decoder support
-OPENGL_DESC= OpenGL acceleration support
-PLUGIN_DESC= VLC Mozilla Plugin
PNG_DESC= PNG graphics format support
PROJM_DESC= ProjectM visualizations
QT4_DESC= Qt4 Interface
REALAUDIO_DESC= Real Audio(R) support
-REMOTEOSD_DESC= Remote OSD support
RUNROOT_DESC= Enable running as root
SAMBA_DESC= SAMBA Access module
SCHROED_DESC= Schroedinger decoder
SKINS_DESC= winamp skins interface
STREAM_DESC= stream output
SQLITE_DESC= SQLite database support
-SVGALIB_DESC= SVGALIB video output
TAGLIB_DESC= ID3 tag and Ogg comment support
THEORA_DESC= OGG/Vorbis video codec support
TREMOR_DESC= Tremor voice audio (redundant with Vorbis)
@@ -83,17 +78,18 @@ UPNP_DESC= UPnP network device control
V4L_DESC= Video4Linux video capture compatibility
VAAPI_DESC= Support hardware decoding via VAAPI
VCD_DESC= Video CD support
-XCB_DESC=Use X C Bindings for X11 output
-XOSD_DESC=X11 On Screen Display support
-XVIDEO_DESC=X11 video rendering
-ZVBI_DESC=VBI decoding support
+XCB_DESC= Use X C Bindings for X11 output
+XOSD_DESC= X11 On Screen Display support
+XVIDEO_DESC= X11 video rendering
+ZVBI_DESC= VBI decoding support
SERVER_ONLY_DESC= Only build server parts
UNSAFE_PLUGINS_DESC= Install unsafe, unsupported plugins
-USE_BZIP2= yes
+USE_XZ= yes
USE_GMAKE= yes
USE_ICONV= yes
USE_PERL5_BUILD=yes
+USE_GL=yes
MAKE_JOBS_SAFE= yes
WANT_GNOME= yes
@@ -102,12 +98,19 @@ PLIST= ${WRKDIR}/plist
USE_LDCONFIG= yes
GNU_CONFIGURE= yes
+FFMPEG_SUFFIX= -011
+FFMPEG_INCDIR= ${LOCALBASE}/include/ffmpeg${FFMPEG_SUFFIX}
+FFMPEG_LIBDIR= ${LOCALBASE}/lib/ffmpeg${FFMPEG_SUFFIX}
CPPFLAGS+= -I${FAKEDIR}/include -I${WRKSRC}/include \
- -I${LOCALBASE}/include -I${LOCALBASE}/ffmpeg \
+ -I${FFMPEG_INCDIR} \
${PTHREAD_CFLAGS}
CONFIGURE_ENV= LIBS="-lc"
LDFLAGS+= -L${FAKEDIR}/lib \
- -L${LOCALBASE}/lib ${PTHREAD_LIBS} -lc
+ ${PTHREAD_LIBS} -lc
+CONFIGURE_ENV+= AVCODEC_CFLAGS="-I${FFMPEG_INCDIR}" AVCODEC_LIBS="-L${FFMPEG_LIBDIR} -Wl,-rpath -Wl,${FFMPEG_LIBDIR} -lavcodec${FFMPEG_SUFFIX}"
+CONFIGURE_ENV+= AVFORMAT_CFLAGS="-I${FFMPEG_INCDIR}" AVFORMAT_LIBS="-L${FFMPEG_LIBDIR} -Wl,-rpath -Wl,${FFMPEG_LIBDIR} -lavformat${FFMPEG_SUFFIX}"
+CONFIGURE_ENV+= POSTPROC_CFLAGS="-I${FFMPEG_INCDIR}" POSTPROC_LIBS="-L${FFMPEG_LIBDIR} -Wl,-rpath -Wl,${FFMPEG_LIBDIR} -lpostproc${FFMPEG_SUFFIX}"
+CONFIGURE_ENV+= SWSCALE_CFLAGS="-I${FFMPEG_INCDIR}" SWSCALE_LIBS="-L${FFMPEG_LIBDIR} -Wl,-rpath -Wl,${FFMPEG_LIBDIR} -lswscale${FFMPEG_SUFFIX}"
CONFIGURE_ARGS+= --enable-vlc \
--enable-avcodec \
@@ -120,16 +123,12 @@ CONFIGURE_ARGS+= --enable-vlc \
--disable-dc1394 \
--disable-directfb \
--disable-dv \
- --disable-hd1000a \
- --disable-hd1000v \
--disable-loader \
- --disable-osso_screensaver \
--disable-telx \
--disable-udev \
--disable-update-check
MAN1= vlc.1 \
- vlc-config.1 \
vlc-wrapper.1
.include <bsd.port.options.mk>
@@ -138,7 +137,7 @@ MAN1= vlc.1 \
# Use these for batch control of certain types of builds
# Disable DVD specific features
-.if !${PORT_OPTIONS:MDVD}
+.if empty(PORT_OPTIONS:MDVD)
WITHOUT_A52=yes
WITHOUT_DTS=yes
WITHOUT_DVDREAD=yes
@@ -184,6 +183,12 @@ EXTRA_PATCHES+= ${FILESDIR}/extra-patch-modules__misc__inhibit__xdg.c \
${FILESDIR}/extra-patch-modules__misc__inhibit__xscreensaver.c
.endif
+# base clang in 9.0 builds a corrupted lib/vlc/plugins/gui/libqt4_plugin.so
+.if (${CC:T:Mclang} == "clang") && \
+ (${OSVERSION} >= 900014) && (${OSVERSION} < 900506)
+IGNORE= base clang version too old, set NO_IGNORE to override
+.endif
+
.if ${ARCH} == "powerpc64"
CONFIGURE_ARGS+=--enable-altivec # VLC's config script doesn't know to do this
.endif
@@ -204,7 +209,8 @@ WITH_DVD_DEVICE?=/dev/acd0
# If you change this value, the dependancy will not be recorded
.if !defined(WITH_VLC_DEFAULT_FONT)
-WITH_VLC_DEFAULT_FONT= ${LOCALBASE}/lib/X11/fonts/bitstream-vera/Vera.ttf
+WITH_VLC_DEFAULT_FONT= ${LOCALBASE}/lib/X11/fonts/bitstream-vera/Vera.ttf
+WITH_VLC_DEFAULT_MONO_FONT= ${LOCALBASE}/lib/X11/fonts/bitstream-vera/VeraMono.ttf
RUN_DEPENDS+= ${LOCALBASE}/lib/X11/fonts/bitstream-vera/Vera.ttf:${PORTSDIR}/x11-fonts/bitstream-vera
.endif
@@ -272,18 +278,6 @@ CONFIGURE_ARGS+=--enable-dca
CONFIGURE_ARGS+=--disable-dca
.endif
-.if ${PORT_OPTIONS:MDVB}
-.if ${PORT_OPTIONS:MV4L}
-LIB_DEPENDS+= dvbpsi:${PORTSDIR}/multimedia/libdvbpsi
-CONFIGURE_ARGS+=--enable-dvb --enable-dvbpsi \
- --with-dvbpsi=${LOCALBASE}
-.else
-IGNORE= DVB option requires V4L option
-.endif
-.else
-CONFIGURE_ARGS+=--disable-dvb --disable-dvbpsi
-.endif
-
.if ${PORT_OPTIONS:MDVDREAD}
LIB_DEPENDS+= dvdread:${PORTSDIR}/multimedia/libdvdread
CONFIGURE_ARGS+=--enable-dvdread
@@ -326,13 +320,6 @@ CONFIGURE_ARGS+=--enable-fribidi
CONFIGURE_ARGS+=--disable-fribidi
.endif
-.if ${PORT_OPTIONS:MGGI}
-LIB_DEPENDS+= ggi:${PORTSDIR}/graphics/libggi
-CONFIGURE_ARGS+=--enable-ggi
-.else
-CONFIGURE_ARGS+=--disable-ggi
-.endif
-
.if ${PORT_OPTIONS:MGLX}
.if ${PORT_OPTIONS:MXCB}
CONFIGURE_ARGS+=--enable-glx
@@ -379,8 +366,15 @@ CONFIGURE_ARGS+=--disable-jack
.if ${PORT_OPTIONS:MLIVEMEDIA}
BUILD_DEPENDS+= ${LOCALBASE}/live/liveMedia/libliveMedia.a:${PORTSDIR}/net/liveMedia
-CONFIGURE_ARGS+=--enable-live555 \
- --with-live555-tree=${LOCALBASE}/live
+CONFIGURE_ARGS+=--enable-live555
+CPPFLAGS+= -I${LOCALBASE}/live/liveMedia/include \
+ -I${LOCALBASE}/live/BasicUsageEnvironment/include \
+ -I${LOCALBASE}/live/UsageEnvironment/include \
+ -I${LOCALBASE}/live/groupsock/include
+LDFLAGS+= -L${LOCALBASE}/live/groupsock \
+ -L${LOCALBASE}/live/liveMedia \
+ -L${LOCALBASE}/live/UsageEnvironment \
+ -L${LOCALBASE}/live/BasicUsageEnvironment
.else
CONFIGURE_ARGS+=--disable-live555
.endif
@@ -389,7 +383,7 @@ CONFIGURE_ARGS+=--disable-live555
.if ${PORT_OPTIONS:MLUA}
USE_LUA=5.1+
WANT_LUA_VER=5.1
-CONFIGURE_ENV= LUA_CFLAGS="-I${LUA_INCDIR}" LUA_LIBS="-L${LUA_LIBDIR} -llua"
+CONFIGURE_ENV+= LUA_CFLAGS="-I${LUA_INCDIR}" LUA_LIBS="-L${LUA_LIBDIR} -llua"
CONFIGURE_ARGS+=--enable-lua LUAC=luac-${WANT_LUA_VER}
.else
CONFIGURE_ARGS+=--disable-lua
@@ -470,24 +464,6 @@ WITHOUT_VORBIS= yes
CONFIGURE_ARGS+=--disable-ogg
.endif
-.if ${PORT_OPTIONS:MOPENGL}
-USE_GL=yes
-CONFIGURE_ARGS+=--enable-opengl
-.else
-CONFIGURE_ARGS+=--disable-opengl
-.endif
-
-.if ${PORT_OPTIONS:MPLUGIN}
-USE_GECKO= libxul
-USE_WEBPLUGINS= gecko*
-WEBPLUGINS_FILES=libvlcplugin.so
-.include "${PORTSDIR}/www/firefox/Makefile.webplugins"
-CONFIGURE_ARGS+=--enable-mozilla \
- --with-mozilla-pkg=${LOCALBASE}/libdata/pkgconfig/mozilla-plugin.pc
-.else
-CONFIGURE_ARGS+=--disable-mozilla
-.endif
-
.if ${PORT_OPTIONS:MPNG}
LIB_DEPENDS+= png15:${PORTSDIR}/graphics/png
CONFIGURE_ARGS+=--enable-png
@@ -513,7 +489,7 @@ CONFIGURE_ARGS+=--disable-projectm
LIB_DEPENDS+= pulse:${PORTSDIR}/audio/pulseaudio
CONFIGURE_ARGS+=--enable-pulse
.else
-CONFIGURE_ARGS+=--disable-pulse
+CONFIGURE_ARGS+=--enable-pulse=no
.endif
# WITHOUT_QT4
@@ -525,12 +501,6 @@ CONFIGURE_ARGS+=--enable-real --enable-realrtsp
CONFIGURE_ARGS+=--disable-real --disable-realrtsp
.endif
-.if ${PORT_OPTIONS:MREMOTEOSD}
-CONFIGURE_ARGS+=--enable-remoteosd
-.else
-CONFIGURE_ARGS+=--disable-remoteosd
-.endif
-
.if ${PORT_OPTIONS:MRUNROOT}
CONFIGURE_ARGS+=--enable-run-as-root
.endif
@@ -603,13 +573,6 @@ CONFIGURE_ARGS+=--enable-svg
CONFIGURE_ARGS+=--disable-svg
.endif
-.if ${PORT_OPTIONS:MSVGALIB}
-LIB_DEPENDS+= vga:${PORTSDIR}/graphics/svgalib
-CONFIGURE_ARGS+=--enable-svgalib
-.else
-CONFIGURE_ARGS+=--disable-svgalib
-.endif
-
.if ${PORT_OPTIONS:MTAGLIB}
LIB_DEPENDS+= tag:${PORTSDIR}/audio/taglib
CONFIGURE_ARGS+=--enable-taglib
@@ -647,10 +610,11 @@ CONFIGURE_ARGS+=--disable-upnp
.endif
.if ${PORT_OPTIONS:MV4L} || ${PORT_OPTIONS:MDVB}
-LIB_DEPENDS+= v4l1:${PORTSDIR}/multimedia/libv4l
-CONFIGURE_ARGS+=--enable-v4l --enable-v4l2
+LIB_DEPENDS+= v4l1:${PORTSDIR}/multimedia/libv4l \
+ dvbpsi:${PORTSDIR}/multimedia/libdvbpsi
+CONFIGURE_ARGS+=--enable-v4l2
.else
-CONFIGURE_ARGS+=--disable-v4l --disable-v4l2
+CONFIGURE_ARGS+=--disable-v4l2
.endif
.if ${PORT_OPTIONS:MVAAPI}
@@ -724,12 +688,16 @@ post-patch:
-e '\|LIBS|s|-lrt||' \
${WRKSRC}/configure
@${REINPLACE_CMD} -e 's|/usr/share/fonts/truetype/freefont/FreeSerifBold.ttf|${WITH_VLC_DEFAULT_FONT}|' \
- ${WRKSRC}/modules/misc/freetype.c
+ ${WRKSRC}/modules/text_renderer/freetype.c
@${REINPLACE_CMD} -e 's|/dev/cdrom|${WITH_CDROM_DEVICE}|g' \
-e 's|/dev/dvd|${WITH_DVD_DEVICE}|g' \
${WRKSRC}/include/vlc_config.h
${REINPLACE_CMD} -e 's|portaudio\.h|portaudio2/&|g' \
${WRKSRC}/modules/audio_output/portaudio.c
+ ${REINPLACE_CMD} -e "s|/usr/share/projectM|${LOCALBASE}/share/projectM|g" \
+ -e "s|/usr/share/fonts/truetype/ttf-dejavu/DejaVuSans.ttf|${WITH_VLC_DEFAULT_FONT}|g" \
+ -e "s|/usr/share/fonts/truetype/ttf-dejavu/DejaVuSansMono.ttf|${WITH_VLC_DEFAULT_MONO_FONT}|g" \
+ ${WRKSRC}/modules/visualization/projectm.cpp
pre-configure:
.if ${PORT_OPTIONS:MPLUGIN}
@@ -797,7 +765,7 @@ pre-install:
cd ${FAKEDIR}/share/locale && ${FIND} -s * -type f -o -type l | \
${SED} -e 's|^|share/locale/|' >> ${PLIST}
.endif
-.for locale in ach cgg ckb co ff fur kk km lg my oc ps tet tl zu
+.for locale in ach cgg ckb co ff fur kk km lg my oc ps tet tl zu kmr
${ECHO_CMD} "@dirrmtry share/locale/${locale}/LC_MESSAGES" >> ${PLIST}
${ECHO_CMD} "@dirrmtry share/locale/${locale}" >> ${PLIST}
.endfor
@@ -818,7 +786,6 @@ do-install:
cd ${FAKEDIR}/share && ${FIND} . | \
${CPIO} -vpdm -L -R ${SHAREOWN} ${PREFIX}/share
${INSTALL_MAN} ${WRKSRC}/doc/vlc.1 ${MANPREFIX}/man/man1/
- ${INSTALL_MAN} ${WRKSRC}/doc/vlc-config.1 ${MANPREFIX}/man/man1/
if [ ! -d ${PREFIX}/share/applications ]; then \
${MKDIR} ${PREFIX}/share/applications ; \
fi
diff --git a/multimedia/vlc/distinfo b/multimedia/vlc/distinfo
index 146d2a7ddd64..769c95540637 100644
--- a/multimedia/vlc/distinfo
+++ b/multimedia/vlc/distinfo
@@ -1,2 +1,2 @@
-SHA256 (vlc-1.1.13.tar.bz2) = 03edec44d463b9f5e7db56fd844c6d4ac79966638e1ac32dedcfb5847a9323c1
-SIZE (vlc-1.1.13.tar.bz2) = 26226587
+SHA256 (vlc-2.0.3.tar.xz) = fba9805f7415aebf5b88614de83802dc59d3282ff339128da41addf7e375d2d2
+SIZE (vlc-2.0.3.tar.xz) = 18268208
diff --git a/multimedia/vlc/files/extra-patch-modules__services_discovery__upnp_intel.cpp b/multimedia/vlc/files/extra-patch-modules__services_discovery__upnp_intel.cpp
deleted file mode 100644
index b1f7edc457b1..000000000000
--- a/multimedia/vlc/files/extra-patch-modules__services_discovery__upnp_intel.cpp
+++ /dev/null
@@ -1,10 +0,0 @@
---- ./modules/services_discovery/upnp_intel.cpp.orig 2010-11-08 01:05:00.000000000 -0500
-+++ ./modules/services_discovery/upnp_intel.cpp 2010-11-08 01:06:43.000000000 -0500
-@@ -36,6 +36,7 @@
-
- #include "upnp_intel.hpp"
-
-+#include <assert.h>
- #include <vlc_plugin.h>
- #include <vlc_services_discovery.h>
-
diff --git a/multimedia/vlc/files/patch-modules-access-dtv-access.c b/multimedia/vlc/files/patch-modules-access-dtv-access.c
new file mode 100644
index 000000000000..53b63fc24a48
--- /dev/null
+++ b/multimedia/vlc/files/patch-modules-access-dtv-access.c
@@ -0,0 +1,38 @@
+--- modules/access/dtv/access.c.orig
++++ modules/access/dtv/access.c
+@@ -198,7 +198,7 @@ static const char *const polarization_us
+ "low noise block-downconverters (LNB) through a DiSEqC 1.0 switch, " \
+ "the correct LNB can be selected (1 to 4). " \
+ "If there is no switch, this parameter should be 0.")
+-#ifdef __linux__
++#if defined(__linux__) || defined(__FreeBSD__)
+ static const int satno_vlc[] = { 0, 1, 2, 3, 4 };
+ static const char *const satno_user[] = { N_("Unspecified"),
+ "A/1", "B/2", "C/3", "D/4" };
+@@ -242,7 +242,7 @@ vlc_module_begin ()
+ #endif
+ )
+
+-#ifdef __linux__
++#if defined(__linux__) || defined(__FreeBSD__)
+ add_integer ("dvb-adapter", 0, ADAPTER_TEXT, ADAPTER_LONGTEXT, false)
+ change_integer_range (0, 255)
+ change_safe ()
+@@ -366,7 +366,7 @@ vlc_module_begin ()
+ change_integer_range (0, 18)
+ change_private ()
+ change_safe ()
+-#ifdef __linux__
++#if defined(__linux__) || defined(__FreeBSD__)
+ add_bool ("dvb-high-voltage", false,
+ HIGH_VOLTAGE_TEXT, HIGH_VOLTAGE_LONGTEXT, false)
+ #endif
+@@ -380,7 +380,7 @@ vlc_module_begin ()
+ LNB_SWITCH_TEXT, LNB_SWITCH_LONGTEXT, true)
+ change_integer_range (0, 0x7fffffff)
+ add_obsolete_integer ("dvb-lnb-slof") /* since 2.0.0 */
+-#ifdef __linux__
++#if defined(__linux__) || defined(__FreeBSD__)
+ add_integer ("dvb-satno", 0, SATNO_TEXT, SATNO_LONGTEXT, true)
+ change_integer_list (satno_vlc, satno_user)
+ add_integer ("dvb-tone", -1, TONE_TEXT, TONE_LONGTEXT, true)
diff --git a/multimedia/vlc/files/patch-modules-access-dtv-linux.c b/multimedia/vlc/files/patch-modules-access-dtv-linux.c
new file mode 100644
index 000000000000..87f569132883
--- /dev/null
+++ b/multimedia/vlc/files/patch-modules-access-dtv-linux.c
@@ -0,0 +1,31 @@
+--- modules/access/dtv/linux.c.orig
++++ modules/access/dtv/linux.c
+@@ -173,7 +173,14 @@ static int dvb_open_adapter (uint8_t ada
+ char dir[20];
+
+ snprintf (dir, sizeof (dir), "/dev/dvb/adapter%"PRIu8, adapter);
++#ifdef O_CLOEXEC
+ return open (dir, O_SEARCH|O_DIRECTORY|O_CLOEXEC);
++#else
++ int fd = open (dir, O_SEARCH|O_DIRECTORY);
++ if (fd != -1)
++ fcntl(fd, F_SETFD, FD_CLOEXEC);
++ return fd;
++#endif
+ }
+
+ /** Opens the DVB device node of the specified type */
+@@ -183,7 +190,13 @@ static int dvb_open_node (dvb_device_t *
+ char path[strlen (type) + 4];
+
+ snprintf (path, sizeof (path), "%s%u", type, d->device);
++#ifdef O_CLOEXEC
+ fd = openat (d->dir, path, flags|O_CLOEXEC);
++#else
++ fd = openat (d->dir, path, flags);
++ if (fd != -1)
++ fcntl(fd, F_SETFD, FD_CLOEXEC);
++#endif
+ if (fd != -1)
+ fcntl (fd, F_SETFL, fcntl (fd, F_GETFL) | O_NONBLOCK);
+ return fd;
diff --git a/multimedia/vlc/files/patch-modules-audio_output-vlcpulse.c b/multimedia/vlc/files/patch-modules-audio_output-vlcpulse.c
new file mode 100644
index 000000000000..f18da707196f
--- /dev/null
+++ b/multimedia/vlc/files/patch-modules-audio_output-vlcpulse.c
@@ -0,0 +1,15 @@
+--- modules/audio_output/vlcpulse.c.orig
++++ modules/audio_output/vlcpulse.c
+@@ -107,7 +107,12 @@ pa_context *vlc_pa_connect (vlc_object_t
+ //pa_proplist_sets (props, PA_PROP_APPLICATION_PROCESS_BINARY,
+ // PACKAGE_NAME);
+
++#ifdef __FreeBSD__
++ /* sysconf (_SC_GETPW_R_SIZE_MAX) returns -1 on FreeBSD */
++ char buf[LINE_MAX + 1];
++#else
+ char buf[sysconf (_SC_GETPW_R_SIZE_MAX)];
++#endif
+ struct passwd pwbuf, *pw;
+
+ if (getpwuid_r (getuid (), &pwbuf, buf, sizeof (buf), &pw) == 0
diff --git a/multimedia/vlc/files/patch-modules-gui-qt4-components-open_panels.cpp b/multimedia/vlc/files/patch-modules-gui-qt4-components-open_panels.cpp
new file mode 100644
index 000000000000..964b72bc3050
--- /dev/null
+++ b/multimedia/vlc/files/patch-modules-gui-qt4-components-open_panels.cpp
@@ -0,0 +1,11 @@
+--- modules/gui/qt4/components/open_panels.cpp.orig
++++ modules/gui/qt4/components/open_panels.cpp
+@@ -925,7 +925,7 @@ void CaptureOpenPanel::initialize()
+
+ dvbCard = new QSpinBox;
+ dvbCard->setAlignment( Qt::AlignRight );
+-#ifdef __linux__
++#if defined(__linux__) || defined(__FreeBSD__)
+ dvbCard->setPrefix( "/dev/dvb/adapter" );
+ #endif
+ dvbDevLayout->addWidget( dvbDeviceLabel, 0, 0 );
diff --git a/multimedia/vlc/files/patch-modules-gui-qt4-qt4.hpp b/multimedia/vlc/files/patch-modules-gui-qt4-qt4.hpp
new file mode 100644
index 000000000000..c1767cad493f
--- /dev/null
+++ b/multimedia/vlc/files/patch-modules-gui-qt4-qt4.hpp
@@ -0,0 +1,11 @@
+--- modules/gui/qt4/qt4.hpp.orig
++++ modules/gui/qt4/qt4.hpp
+@@ -34,7 +34,7 @@
+ #include <vlc_playlist.h> /* playlist_t */
+
+ #define QT_NO_CAST_TO_ASCII
+-#include <QString>
++#include <qt4/QtCore/QString>
+
+ #if ( QT_VERSION < 0x040600 )
+ # error Update your Qt version to at least 4.6.0
diff --git a/multimedia/vlc/files/patch-modules-gui-qt4-util-pictureflow.cpp b/multimedia/vlc/files/patch-modules-gui-qt4-util-pictureflow.cpp
new file mode 100644
index 000000000000..7f860b88c860
--- /dev/null
+++ b/multimedia/vlc/files/patch-modules-gui-qt4-util-pictureflow.cpp
@@ -0,0 +1,27 @@
+--- modules/gui/qt4/util/pictureflow.cpp.orig
++++ modules/gui/qt4/util/pictureflow.cpp
+@@ -28,15 +28,15 @@
+ #include "pictureflow.hpp"
+ #include "components/playlist/ml_model.hpp"
+
+-#include <QApplication>
+-#include <QImage>
+-#include <QKeyEvent>
+-#include <QPainter>
+-#include <QPixmap>
+-#include <QTimer>
+-#include <QVector>
+-#include <QWidget>
+-#include <QHash>
++#include <qt4/QtGui/QApplication>
++#include <qt4/QtGui/QImage>
++#include <qt4/QtGui/QKeyEvent>
++#include <qt4/QtGui/QPainter>
++#include <qt4/QtGui/QPixmap>
++#include <qt4/QtCore/QTimer>
++#include <qt4/QtCore/QVector>
++#include <qt4/QtGui/QWidget>
++#include <qt4/QtCore/QHash>
+ #include "../components/playlist/playlist_model.hpp" /* getArtPixmap etc */
+ #include "../components/playlist/sorting.h" /* Columns List */
+ #include "input_manager.hpp"
diff --git a/multimedia/vlc/files/patch-modules-gui-qt4-util-pictureflow.hpp b/multimedia/vlc/files/patch-modules-gui-qt4-util-pictureflow.hpp
new file mode 100644
index 000000000000..8ffbf21c1061
--- /dev/null
+++ b/multimedia/vlc/files/patch-modules-gui-qt4-util-pictureflow.hpp
@@ -0,0 +1,11 @@
+--- modules/gui/qt4/util/pictureflow.hpp.orig
++++ modules/gui/qt4/util/pictureflow.hpp
+@@ -28,7 +28,7 @@
+ #ifndef PICTUREFLOW_H
+ #define PICTUREFLOW_H
+
+-#include <qwidget.h>
++#include <qt4/QtGui/qwidget.h>
+ #include "../components/playlist/playlist_model.hpp" /* getArtPixmap etc */
+
+ class PictureFlowPrivate;
diff --git a/multimedia/vlc/files/patch-modules-gui-skins2-x11-x11_window.cpp b/multimedia/vlc/files/patch-modules-gui-skins2-x11-x11_window.cpp
new file mode 100644
index 000000000000..0750e4aa06bf
--- /dev/null
+++ b/multimedia/vlc/files/patch-modules-gui-skins2-x11-x11_window.cpp
@@ -0,0 +1,10 @@
+--- modules/gui/skins2/x11/x11_window.cpp.orig 2011-12-08 19:00:26.000000000 +0100
++++ modules/gui/skins2/x11/x11_window.cpp 2012-08-03 15:47:39.000000000 +0200
+@@ -36,6 +36,7 @@
+ #include "x11_factory.hpp"
+
+ #include <assert.h>
++#include <limits.h>
+
+ X11Window::X11Window( intf_thread_t *pIntf, GenericWindow &rWindow,
+ X11Display &rDisplay, bool dragDrop, bool playOnDrop,
diff --git a/multimedia/vlc/files/patch-modules__Makefile.am b/multimedia/vlc/files/patch-modules__Makefile.am
deleted file mode 100644
index 2da5f4d70dce..000000000000
--- a/multimedia/vlc/files/patch-modules__Makefile.am
+++ /dev/null
@@ -1,30 +0,0 @@
---- ./modules/Makefile.am.orig 2010-06-24 05:07:31.000000000 -0400
-+++ ./modules/Makefile.am 2010-06-24 05:09:12.000000000 -0400
-@@ -62,16 +62,16 @@
- .PHONY: stamp-cache
-
- stamp-cache:
-- $(AM_V_GEN)if test "$(build)" = "$(host)"; then \
-- ../bin/vlc-cache-gen$(EXEEXT) . ; \
-- else \
-- echo "Cross-compilation: cache generation skipped!" ; \
-- fi
-- $(AM_V_at)touch stamp-cache
-+# $(AM_V_GEN)if test "$(build)" = "$(host)"; then \
-+# ../bin/vlc-cache-gen$(EXEEXT) . ; \
-+# else \
-+# echo "Cross-compilation: cache generation skipped!" ; \
-+# fi
-+# $(AM_V_at)touch stamp-cache
-
- install-exec-hook:
-- if test -z "$(DESTDIR)"; then \
-- ../bin/vlc-cache-gen$(EXEEXT) "$(vlclibdir)/plugins" ; \
-- else \
-- echo "Staged installation: cache generation skipped!" ; \
-- fi
-+# if test -z "$(DESTDIR)"; then \
-+# ../bin/vlc-cache-gen$(EXEEXT) "$(vlclibdir)/plugins" ; \
-+# else \
-+# echo "Staged installation: cache generation skipped!" ; \
-+# fi
diff --git a/multimedia/vlc/files/patch-modules__Makefile.in b/multimedia/vlc/files/patch-modules__Makefile.in
deleted file mode 100644
index 5c2091b004d9..000000000000
--- a/multimedia/vlc/files/patch-modules__Makefile.in
+++ /dev/null
@@ -1,33 +0,0 @@
---- ./modules/Makefile.in.orig 2010-06-24 05:07:46.000000000 -0400
-+++ ./modules/Makefile.in 2010-06-24 05:09:54.000000000 -0400
-@@ -1008,19 +1008,19 @@
- .PHONY: stamp-cache
-
- stamp-cache:
-- $(AM_V_GEN)if test "$(build)" = "$(host)"; then \
-- ../bin/vlc-cache-gen$(EXEEXT) . ; \
-- else \
-- echo "Cross-compilation: cache generation skipped!" ; \
-- fi
-- $(AM_V_at)touch stamp-cache
-+# $(AM_V_GEN)if test "$(build)" = "$(host)"; then \
-+# ../bin/vlc-cache-gen$(EXEEXT) . ; \
-+# else \
-+# echo "Cross-compilation: cache generation skipped!" ; \
-+# fi
-+# $(AM_V_at)touch stamp-cache
-
- install-exec-hook:
-- if test -z "$(DESTDIR)"; then \
-- ../bin/vlc-cache-gen$(EXEEXT) "$(vlclibdir)/plugins" ; \
-- else \
-- echo "Staged installation: cache generation skipped!" ; \
-- fi
-+# if test -z "$(DESTDIR)"; then \
-+# ../bin/vlc-cache-gen$(EXEEXT) "$(vlclibdir)/plugins" ; \
-+# else \
-+# echo "Staged installation: cache generation skipped!" ; \
-+# fi
-
- # Tell versions [3.59,3.63) of GNU make to not export all variables.
- # Otherwise a system limit (for SysV at least) may be exceeded.
diff --git a/multimedia/vlc/files/patch-modules__access__v4l.c b/multimedia/vlc/files/patch-modules__access__v4l.c
deleted file mode 100644
index eb19e2f390ce..000000000000
--- a/multimedia/vlc/files/patch-modules__access__v4l.c
+++ /dev/null
@@ -1,75 +0,0 @@
---- modules/access/v4l.c.orig Mon Jun 12 09:41:08 2006
-+++ modules/access/v4l.c Mon Jun 12 10:19:59 2006
-@@ -555,7 +555,7 @@
- int i_noframe = -1;
- ioctl( p_sys->fd_video, MJPIOC_QBUF_CAPT, &i_noframe );
- }
--
-+#if 0
- if( p_sys->p_video_mmap && p_sys->p_video_mmap != MAP_FAILED )
- {
- if( p_sys->b_mjpeg )
-@@ -564,7 +564,7 @@
- else
- munmap( p_sys->p_video_mmap, p_sys->vid_mbuf.size );
- }
--
-+#endif
- free( p_sys );
- }
-
-@@ -1267,6 +1267,15 @@
- }
- else
- {
-+ struct video_window vid_win = { 0 };
-+ vid_win.width = p_sys->i_width;
-+ vid_win.height = p_sys->i_height;
-+
-+ if( ioctl( i_fd, VIDIOCSWIN, &vid_win ) < 0 )
-+ {
-+ msg_Err( p_demux, "cannot set win (%s)", strerror( errno ) );
-+ goto vdev_failed;
-+ }
- /* Fill in picture_t fields */
- vout_InitPicture( VLC_OBJECT(p_demux), &p_sys->pic, p_sys->i_fourcc,
- p_sys->i_width, p_sys->i_height, p_sys->i_width *
-@@ -1287,7 +1296,7 @@
- p_sys->i_video_frame_size );
- msg_Dbg( p_demux, "v4l device uses chroma: %4.4s",
- (char*)&p_sys->i_fourcc );
--
-+#if 0
- /* Allocate mmap buffer */
- if( ioctl( i_fd, VIDIOCGMBUF, &p_sys->vid_mbuf ) < 0 )
- {
-@@ -1316,6 +1325,7 @@
- msg_Err( p_demux, "chroma selection failed" );
- goto vdev_failed;
- }
-+#endif
- }
- return i_fd;
-
-@@ -1577,18 +1587,15 @@
- if( p_sys->i_video_pts + i_dur > mdate() ) return 0;
- }
-
-- if( p_sys->b_mjpeg ) p_frame = GrabMJPEG( p_demux );
-- else p_frame = GrabCapture( p_demux );
--
-- if( !p_frame ) return 0;
--
- if( !( p_block = block_New( p_demux, p_sys->i_video_frame_size ) ) )
- {
- msg_Warn( p_demux, "cannot get block" );
- return 0;
- }
-
-- memcpy( p_block->p_buffer, p_frame, p_sys->i_video_frame_size );
-+ if(read(p_sys->i_fd, p_block->p_buffer, p_sys->i_video_frame_size) <= 0)
-+ return 0;
-+
- p_sys->i_video_pts = p_block->i_pts = p_block->i_dts = mdate();
-
- return p_block;