summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorGyörgy Balló2017-02-17 17:05:08 +0000
committerGyörgy Balló2017-02-17 17:05:08 +0000
commit80d3e6b27be73979d5e8418233877d0e69725e27 (patch)
treea61829f80e19bdcb1ce51aedcc52da29fa21ce26
downloadaur-80d3e6b27be73979d5e8418233877d0e69725e27.tar.gz
upgpkg: vlc-qt5 2.2.4-1
Add vlc-qt5
-rw-r--r--.SRCINFO107
-rw-r--r--Fix-build-using-old-GCC-intrinsics.patch292
-rw-r--r--PKGBUILD113
-rw-r--r--lua53_compat.patch30
-rw-r--r--update-vlc-plugin-cache.hook17
5 files changed, 559 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO
new file mode 100644
index 000000000000..909e86b072d3
--- /dev/null
+++ b/.SRCINFO
@@ -0,0 +1,107 @@
+pkgbase = vlc-qt5
+ pkgdesc = A multi-platform MPEG, VCD/DVD, and DivX player
+ pkgver = 2.2.4
+ pkgrel = 1
+ url = http://www.videolan.org/vlc/
+ arch = i686
+ arch = x86_64
+ license = LGPL2.1
+ license = GPL2
+ makedepends = live-media
+ makedepends = libnotify
+ makedepends = libbluray
+ makedepends = flac
+ makedepends = kdelibs
+ makedepends = libdc1394
+ makedepends = libavc1394
+ makedepends = lirc
+ makedepends = libcaca
+ makedepends = gtk2
+ makedepends = librsvg
+ makedepends = portaudio
+ makedepends = libgme
+ makedepends = xosd
+ makedepends = projectm
+ makedepends = twolame
+ makedepends = aalib
+ makedepends = libmtp
+ makedepends = libdvdcss
+ makedepends = smbclient
+ makedepends = libgoom2
+ makedepends = vcdimager
+ makedepends = opus
+ makedepends = libssh2
+ makedepends = mesa
+ makedepends = qt5-base
+ depends = a52dec
+ depends = libdvbpsi
+ depends = libxpm
+ depends = libdca
+ depends = libproxy
+ depends = sdl_image
+ depends = libdvdnav
+ depends = libtiger
+ depends = lua
+ depends = libmatroska
+ depends = zvbi
+ depends = taglib
+ depends = libmpcdec
+ depends = ffmpeg2.8
+ depends = faad2
+ depends = libupnp
+ depends = libshout
+ depends = libmad
+ depends = libmpeg2
+ depends = xcb-util-keysyms
+ depends = libtar
+ depends = libxinerama
+ optdepends = avahi: for service discovery using bonjour protocol
+ optdepends = libnotify: for notification plugin
+ optdepends = gtk2: for notify plugin
+ optdepends = ncurses: for ncurses interface support
+ optdepends = libdvdcss: for decoding encrypted DVDs
+ optdepends = lirc: for lirc plugin
+ optdepends = libavc1394: for devices using the 1394ta AV/C
+ optdepends = libdc1394: for IEEE 1394 plugin
+ optdepends = kdelibs: KDE Solid hardware integration
+ optdepends = libva-vdpau-driver: vdpau back-end for nvidia
+ optdepends = libva-intel-driver: back-end for intel cards
+ optdepends = libbluray: for Blu-Ray support
+ optdepends = flac: for Free Lossless Audio Codec plugin
+ optdepends = portaudio: for portaudio support
+ optdepends = twolame: for TwoLAME mpeg2 encoder plugin
+ optdepends = projectm: for ProjectM visualisation plugin
+ optdepends = libcaca: for colored ASCII art video output
+ optdepends = libgme: for libgme plugin
+ optdepends = librsvg: for SVG plugin
+ optdepends = libgoom2: for libgoom plugin
+ optdepends = vcdimager: navigate VCD with libvcdinfo
+ optdepends = aalib: for ASCII art plugin
+ optdepends = libmtp: for MTP devices support
+ optdepends = smbclient: for SMB access plugin
+ optdepends = libcdio: for audio CD playback support
+ optdepends = ttf-freefont: for subtitle font
+ optdepends = ttf-dejavu: for subtitle font
+ optdepends = opus: for opus support
+ optdepends = libssh2: for sftp support
+ optdepends = lua-socket: for http interface
+ optdepends = qt5-base: for the GUI
+ provides = vlc
+ conflicts = vlc
+ options = !emptydirs
+ backup = usr/share/vlc/lua/http/.hosts
+ backup = usr/share/vlc/lua/http/dialogs/.hosts
+ source = http://download.videolan.org/vlc/2.2.4/vlc-2.2.4.tar.xz
+ source = http://download.videolan.org/vlc/2.2.4/vlc-2.2.4.tar.xz.asc
+ source = update-vlc-plugin-cache.hook
+ source = lua53_compat.patch
+ source = Fix-build-using-old-GCC-intrinsics.patch
+ validpgpkeys = 65F7C6B4206BD057A7EB73787180713BE58D1ADC
+ md5sums = 55666c9898f658c7fcca12725bf7dd1b
+ md5sums = SKIP
+ md5sums = 6449d0d26bd34bca009eed58a4c20c83
+ md5sums = 96d3b346d9149ffb1b430066dfb6249a
+ md5sums = 61c8cfdf29668aa1f4a607f6bec6dfa8
+
+pkgname = vlc-qt5
+
diff --git a/Fix-build-using-old-GCC-intrinsics.patch b/Fix-build-using-old-GCC-intrinsics.patch
new file mode 100644
index 000000000000..7bfc0e6e10a1
--- /dev/null
+++ b/Fix-build-using-old-GCC-intrinsics.patch
@@ -0,0 +1,292 @@
+From 8b0a359be21c8b66c7f7f5d34b85df3cf6689035 Mon Sep 17 00:00:00 2001
+From: Francois Cartegnie <fcvlcdev@free.fr>
+Date: Sun, 24 Jul 2016 12:59:20 +0200
+Subject: [PATCH] Fix build using old GCC intrinsics
+
+As the 2.2 headers are still using vlc_atomics (picture)
+we cannot have a way to avoid collisions with early
+or late <atomic> inclusion when using GCC >= 4.7
+
+Conditionals in vlc_atomic won't work.
+
+Happens in ProjectM and Qt5.
+
+Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>
+---
+ modules/gui/qt4/actions_manager.cpp | 2 ++
+ modules/gui/qt4/adapters/seekpoints.cpp | 4 +--
+ modules/gui/qt4/adapters/seekpoints.hpp | 4 +--
+ modules/gui/qt4/components/controller.cpp | 2 ++
+ .../gui/qt4/components/playlist/playlist_model.hpp | 4 +--
+ modules/gui/qt4/components/playlist/views.cpp | 6 ++++
+ modules/gui/qt4/dialogs/messages.cpp | 2 ++
+ modules/gui/qt4/dialogs/vlm.cpp | 4 ---
+ modules/gui/qt4/dialogs/vlm.hpp | 4 ++-
+ modules/gui/qt4/input_manager.cpp | 2 ++
+ modules/gui/qt4/input_manager.hpp | 3 +-
+ modules/gui/qt4/menus.cpp | 2 ++
+ modules/gui/qt4/qt4.hpp | 32 ++++++++++++++++++----
+ modules/gui/qt4/util/pictureflow.cpp | 2 ++
+ modules/visualization/projectm.cpp | 4 +++
+ 15 files changed, 56 insertions(+), 21 deletions(-)
+
+diff --git a/modules/gui/qt4/actions_manager.cpp b/modules/gui/qt4/actions_manager.cpp
+index eff40d9..b7ca967 100644
+--- a/modules/gui/qt4/actions_manager.cpp
++++ b/modules/gui/qt4/actions_manager.cpp
+@@ -25,6 +25,8 @@
+ # include "config.h"
+ #endif
+
++#include "qt4.hpp"
++
+ #include <vlc_vout.h>
+ #include <vlc_keys.h>
+
+diff --git a/modules/gui/qt4/adapters/seekpoints.cpp b/modules/gui/qt4/adapters/seekpoints.cpp
+index fbf2957..a3564bb 100644
+--- a/modules/gui/qt4/adapters/seekpoints.cpp
++++ b/modules/gui/qt4/adapters/seekpoints.cpp
+@@ -19,14 +19,12 @@
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA.
+ *****************************************************************************/
+
++#include "seekpoints.hpp"
+
+ #include "recents.hpp"
+ #include "dialogs_provider.hpp"
+ #include "menus.hpp"
+
+-#include "seekpoints.hpp"
+-
+-#include "qt4.hpp"
+ #include "input_manager.hpp"
+
+ SeekPoints::SeekPoints( QObject *parent, intf_thread_t *p_intf_ ) :
+diff --git a/modules/gui/qt4/adapters/seekpoints.hpp b/modules/gui/qt4/adapters/seekpoints.hpp
+index 0083989..bbb9214 100644
+--- a/modules/gui/qt4/adapters/seekpoints.hpp
++++ b/modules/gui/qt4/adapters/seekpoints.hpp
+@@ -22,9 +22,7 @@
+ #ifndef SEEKPOINTS_HPP
+ #define SEEKPOINTS_HPP
+
+-#ifdef HAVE_CONFIG_H
+-#include "config.h"
+-#endif
++#include "qt4.hpp"
+
+ #include <vlc_common.h>
+ #include <vlc_interface.h>
+diff --git a/modules/gui/qt4/components/controller.cpp b/modules/gui/qt4/components/controller.cpp
+index d93e0db..c43d929 100644
+--- a/modules/gui/qt4/components/controller.cpp
++++ b/modules/gui/qt4/components/controller.cpp
+@@ -26,6 +26,8 @@
+ # include "config.h"
+ #endif
+
++#include "qt4.hpp"
++
+ #include <vlc_vout.h> /* vout_thread_t for FSC */
+
+ /* Widgets */
+diff --git a/modules/gui/qt4/components/playlist/playlist_model.hpp b/modules/gui/qt4/components/playlist/playlist_model.hpp
+index f9d1d0c..1f71ac9 100644
+--- a/modules/gui/qt4/components/playlist/playlist_model.hpp
++++ b/modules/gui/qt4/components/playlist/playlist_model.hpp
+@@ -25,9 +25,7 @@
+ #ifndef _PLAYLIST_MODEL_H_
+ #define _PLAYLIST_MODEL_H_
+
+-#ifdef HAVE_CONFIG_H
+-# include "config.h"
+-#endif
++#include "qt4.hpp"
+
+ #include <vlc_input.h>
+ #include <vlc_playlist.h>
+diff --git a/modules/gui/qt4/components/playlist/views.cpp b/modules/gui/qt4/components/playlist/views.cpp
+index 59f6535..0066205 100644
+--- a/modules/gui/qt4/components/playlist/views.cpp
++++ b/modules/gui/qt4/components/playlist/views.cpp
+@@ -21,6 +21,12 @@
+ * 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA.
+ *****************************************************************************/
+
++#ifdef HAVE_CONFIG_H
++#include "config.h"
++#endif
++
++#include "qt4.hpp"
++
+ #include "components/playlist/views.hpp"
+ #include "components/playlist/vlc_model.hpp" /* VLCModel */
+ #include "components/playlist/sorting.h" /* Columns List */
+diff --git a/modules/gui/qt4/dialogs/messages.cpp b/modules/gui/qt4/dialogs/messages.cpp
+index 30793a2..9c79c99 100644
+--- a/modules/gui/qt4/dialogs/messages.cpp
++++ b/modules/gui/qt4/dialogs/messages.cpp
+@@ -24,6 +24,8 @@
+ # include "config.h"
+ #endif
+
++#include "qt4.hpp"
++
+ #include "dialogs/messages.hpp"
+
+ #include <QPlainTextEdit>
+diff --git a/modules/gui/qt4/dialogs/vlm.cpp b/modules/gui/qt4/dialogs/vlm.cpp
+index 0da88cc..595f015 100644
+--- a/modules/gui/qt4/dialogs/vlm.cpp
++++ b/modules/gui/qt4/dialogs/vlm.cpp
+@@ -23,10 +23,6 @@
+ * Foundation, Inc., 51 Franklin street, Fifth Floor, Boston MA 02110-1301, USA.
+ *****************************************************************************/
+
+-#ifdef HAVE_CONFIG_H
+-# include "config.h"
+-#endif
+-
+ #include "dialogs/vlm.hpp"
+
+ #ifdef ENABLE_VLM
+diff --git a/modules/gui/qt4/dialogs/vlm.hpp b/modules/gui/qt4/dialogs/vlm.hpp
+index a3c6e5d..dcf7110 100644
+--- a/modules/gui/qt4/dialogs/vlm.hpp
++++ b/modules/gui/qt4/dialogs/vlm.hpp
+@@ -25,8 +25,10 @@
+ #ifndef QVLC_VLM_DIALOG_H_
+ #define QVLC_VLM_DIALOG_H_ 1
+
++#include "qt4.hpp"
++
+ #ifdef HAVE_CONFIG_H
+-# include "config.h"
++#include "config.h"
+ #endif
+
+ #ifdef ENABLE_VLM
+diff --git a/modules/gui/qt4/input_manager.cpp b/modules/gui/qt4/input_manager.cpp
+index fd45f4a..c50cb6c 100644
+--- a/modules/gui/qt4/input_manager.cpp
++++ b/modules/gui/qt4/input_manager.cpp
+@@ -30,6 +30,8 @@
+ # include "config.h"
+ #endif
+
++#include "qt4.hpp"
++
+ #include "input_manager.hpp"
+ #include "recents.hpp"
+
+diff --git a/modules/gui/qt4/input_manager.hpp b/modules/gui/qt4/input_manager.hpp
+index 7d3b76a..4fbecbb 100644
+--- a/modules/gui/qt4/input_manager.hpp
++++ b/modules/gui/qt4/input_manager.hpp
+@@ -29,9 +29,10 @@
+ # include "config.h"
+ #endif
+
++#include "qt4.hpp"
++
+ #include <vlc_input.h>
+
+-#include "qt4.hpp"
+ #include "util/singleton.hpp"
+ #include "adapters/variables.hpp"
+
+diff --git a/modules/gui/qt4/menus.cpp b/modules/gui/qt4/menus.cpp
+index 116e98c..46240b0 100644
+--- a/modules/gui/qt4/menus.cpp
++++ b/modules/gui/qt4/menus.cpp
+@@ -34,6 +34,8 @@
+ # include "config.h"
+ #endif
+
++#include "qt4.hpp"
++
+ #include <vlc_common.h>
+ #include <vlc_intf_strings.h>
+ #include <vlc_vout.h> /* vout_thread_t */
+diff --git a/modules/gui/qt4/qt4.hpp b/modules/gui/qt4/qt4.hpp
+index 44d7db6..5aec957 100644
+--- a/modules/gui/qt4/qt4.hpp
++++ b/modules/gui/qt4/qt4.hpp
+@@ -29,12 +29,7 @@
+ # include "config.h"
+ #endif
+
+-#include <vlc_common.h> /* VLC_COMMON_MEMBERS for vlc_interface.h */
+-#include <vlc_interface.h> /* intf_thread_t */
+-#include <vlc_playlist.h> /* playlist_t */
+-
+-#define QT_NO_CAST_TO_ASCII
+-#include <QString>
++#include <QtGlobal>
+
+ #if ( QT_VERSION < 0x040600 )
+ # error Update your Qt version to at least 4.6.0
+@@ -43,6 +38,31 @@
+ #define HAS_QT47 ( QT_VERSION >= 0x040700 )
+ #define HAS_QT5 ( QT_VERSION >= 0x050000 )
+
++#if HAS_QT5
++ #include <QtCore/qcompilerdetection.h>
++ #if defined(Q_COMPILER_ATOMICS) && \
++ ( __GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 7 ) )
++ #define VLC_ATOMIC_H
++ #include <atomic>
++ using namespace std;
++ # define atomic_store(object,desired) \
++ do { \
++ *(object) = (desired); \
++ __sync_synchronize(); \
++ } while (0)
++
++ # define atomic_load(object) \
++ (__sync_synchronize(), *(object))
++ #endif
++#endif
++
++#include <vlc_common.h> /* VLC_COMMON_MEMBERS for vlc_interface.h */
++#include <vlc_interface.h> /* intf_thread_t */
++#include <vlc_playlist.h> /* playlist_t */
++
++#define QT_NO_CAST_TO_ASCII
++#include <QString>
++
+ enum {
+ DialogEventTypeOffset = 0,
+ IMEventTypeOffset = 100,
+diff --git a/modules/gui/qt4/util/pictureflow.cpp b/modules/gui/qt4/util/pictureflow.cpp
+index 9318953..a7e6a01 100644
+--- a/modules/gui/qt4/util/pictureflow.cpp
++++ b/modules/gui/qt4/util/pictureflow.cpp
+@@ -29,6 +29,8 @@
+ THE SOFTWARE.
+ */
+
++#include "qt4.hpp"
++
+ #include "pictureflow.hpp"
+
+ #include <QApplication>
+diff --git a/modules/visualization/projectm.cpp b/modules/visualization/projectm.cpp
+index e80fbf4..96d532d 100644
+--- a/modules/visualization/projectm.cpp
++++ b/modules/visualization/projectm.cpp
+@@ -30,6 +30,10 @@
+ #endif
+
+ #include <assert.h>
++#if defined(__GNUC__) && \
++ ( __GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 7 ) )
++ #define VLC_ATOMIC_H /* Ensure C atomics wont collide with old intrinsics */
++#endif
+
+ #include <vlc_common.h>
+ #include <vlc_plugin.h>
+--
+2.8.1
+
diff --git a/PKGBUILD b/PKGBUILD
new file mode 100644
index 000000000000..f53a9aa25023
--- /dev/null
+++ b/PKGBUILD
@@ -0,0 +1,113 @@
+# Contributor: Giovanni Scafora <giovanni@archlinux.org>
+# Contributor: Sarah Hay <sarahhay@mb.sympatico.ca>
+# Contributor: Martin Sandsmark <martin.sandsmark@kde.org>
+
+pkgname=vlc-qt5
+_pkgname=vlc
+pkgver=2.2.4
+pkgrel=1
+pkgdesc="A multi-platform MPEG, VCD/DVD, and DivX player"
+arch=('i686' 'x86_64')
+url="http://www.videolan.org/vlc/"
+license=('LGPL2.1' 'GPL2')
+depends=('a52dec' 'libdvbpsi' 'libxpm' 'libdca' 'libproxy'
+ 'sdl_image' 'libdvdnav' 'libtiger' 'lua' 'libmatroska'
+ 'zvbi' 'taglib' 'libmpcdec' 'ffmpeg2.8' 'faad2' 'libupnp'
+ 'libshout' 'libmad' 'libmpeg2' 'xcb-util-keysyms' 'libtar'
+ 'libxinerama')
+makedepends=('live-media' 'libnotify' 'libbluray' 'flac' 'kdelibs'
+ 'libdc1394' 'libavc1394' 'lirc' 'libcaca' 'gtk2'
+ 'librsvg' 'portaudio' 'libgme' 'xosd' 'projectm'
+ 'twolame' 'aalib' 'libmtp' 'libdvdcss' 'smbclient'
+ 'libgoom2' 'vcdimager' 'opus' 'libssh2' 'mesa' 'qt5-base')
+optdepends=('avahi: for service discovery using bonjour protocol'
+ 'libnotify: for notification plugin'
+ 'gtk2: for notify plugin'
+ 'ncurses: for ncurses interface support'
+ 'libdvdcss: for decoding encrypted DVDs'
+ 'lirc: for lirc plugin'
+ 'libavc1394: for devices using the 1394ta AV/C'
+ 'libdc1394: for IEEE 1394 plugin'
+ 'kdelibs: KDE Solid hardware integration'
+ 'libva-vdpau-driver: vdpau back-end for nvidia'
+ 'libva-intel-driver: back-end for intel cards'
+ 'libbluray: for Blu-Ray support'
+ 'flac: for Free Lossless Audio Codec plugin'
+ 'portaudio: for portaudio support'
+ 'twolame: for TwoLAME mpeg2 encoder plugin'
+ 'projectm: for ProjectM visualisation plugin'
+ 'libcaca: for colored ASCII art video output'
+ 'libgme: for libgme plugin'
+ 'librsvg: for SVG plugin'
+ 'libgoom2: for libgoom plugin'
+ 'vcdimager: navigate VCD with libvcdinfo'
+ 'aalib: for ASCII art plugin'
+ 'libmtp: for MTP devices support'
+ 'smbclient: for SMB access plugin'
+ 'libcdio: for audio CD playback support'
+ 'ttf-freefont: for subtitle font '
+ 'ttf-dejavu: for subtitle font'
+ 'opus: for opus support'
+ 'libssh2: for sftp support'
+ 'lua-socket: for http interface'
+ 'qt5-base: for the GUI')
+conflicts=($_pkgname)
+provides=($_pkgname)
+backup=('usr/share/vlc/lua/http/.hosts'
+ 'usr/share/vlc/lua/http/dialogs/.hosts')
+options=('!emptydirs')
+source=("http://download.videolan.org/${_pkgname}/${pkgver}/${_pkgname}-${pkgver}.tar.xz"{,.asc}
+ update-vlc-plugin-cache.hook "lua53_compat.patch" "Fix-build-using-old-GCC-intrinsics.patch")
+validpgpkeys=(65F7C6B4206BD057A7EB73787180713BE58D1ADC) # VideoLAN Release Signing Key
+md5sums=('55666c9898f658c7fcca12725bf7dd1b'
+ 'SKIP'
+ '6449d0d26bd34bca009eed58a4c20c83'
+ '96d3b346d9149ffb1b430066dfb6249a'
+ '61c8cfdf29668aa1f4a607f6bec6dfa8')
+
+prepare() {
+ cd "${_pkgname}-${pkgver}"
+
+ sed -i -e 's:truetype/freefont:TTF:g' modules/text_renderer/freetype.c
+ sed -i -e 's:truetype/ttf-dejavu:TTF:g' modules/visualization/projectm.cpp
+
+ patch -p1 < "${srcdir}/lua53_compat.patch"
+ patch -p1 < "${srcdir}/Fix-build-using-old-GCC-intrinsics.patch"
+}
+
+build() {
+ cd "${_pkgname}-${pkgver}"
+
+ PKG_CONFIG_PATH="/usr/lib/ffmpeg2.8/pkgconfig" \
+ CFLAGS+=" -I/usr/include/samba-4.0" CPPFLAGS+=" -I/usr/include/samba-4.0" CXXFLAGS+=" -std=c++11" \
+ ./configure --prefix=/usr \
+ --sysconfdir=/etc \
+ --disable-rpath \
+ --enable-faad \
+ --enable-nls \
+ --enable-lirc \
+ --enable-ncurses \
+ --enable-realrtsp \
+ --enable-aa \
+ --enable-vcdx \
+ --enable-upnp \
+ --enable-opus \
+ --enable-sftp \
+ LUAC=/usr/bin/luac LUA_LIBS="`pkg-config --libs lua`" \
+ RCC=/usr/bin/rcc-qt5
+
+ make
+}
+
+package() {
+ cd "${_pkgname}-${pkgver}"
+
+ make DESTDIR="${pkgdir}" install
+
+ for res in 16 32 48 128; do
+ install -D -m644 "${srcdir}/vlc-${pkgver}/share/icons/${res}x${res}/vlc.png" \
+ "${pkgdir}/usr/share/icons/hicolor/${res}x${res}/apps/vlc.png"
+ done
+
+ install -Dm644 "$srcdir"/update-vlc-plugin-cache.hook "$pkgdir"/usr/share/libalpm/hooks/update-vlc-plugin-cache.hook
+}
diff --git a/lua53_compat.patch b/lua53_compat.patch
new file mode 100644
index 000000000000..aeff7b2fd778
--- /dev/null
+++ b/lua53_compat.patch
@@ -0,0 +1,30 @@
+commit 41caaa08cde60c4fec4bf2e5f9610e2a1b9e6a23
+Author: Vinson Lee <vlee@freedesktop.org>
+Date: Thu Feb 5 14:48:53 2015 -0800
+
+ lua: Define LUA_COMPAT_APIINTCASTS for Lua >= 5.3.0 compatibility.
+
+ In Lua 5.3.0, luaL_checkint was deprecated.
+
+ This patch fixes this build error with Lua 5.3.0.
+
+ lua/demux.c: In function ‘vlclua_demux_peek’:
+ lua/demux.c:55:5: error: implicit declaration of function ‘luaL_checkint’ [-Werror=implicit-function-declaration]
+ int n = luaL_checkint( L, 1 );
+ ^
+
+ Signed-off-by: Vinson Lee <vlee@freedesktop.org>
+ Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org>
+
+diff --git a/modules/lua/vlc.h b/modules/lua/vlc.h
+index efd94f1..85c7fc1 100644
+--- a/modules/lua/vlc.h
++++ b/modules/lua/vlc.h
+@@ -38,6 +38,7 @@
+ #include <vlc_stream.h>
+ #include <vlc_demux.h>
+
++#define LUA_COMPAT_APIINTCASTS
+ #define LUA_COMPAT_MODULE
+ #include <lua.h> /* Low level lua C API */
+ #include <lauxlib.h> /* Higher level C API */
diff --git a/update-vlc-plugin-cache.hook b/update-vlc-plugin-cache.hook
new file mode 100644
index 000000000000..f767242671ab
--- /dev/null
+++ b/update-vlc-plugin-cache.hook
@@ -0,0 +1,17 @@
+[Trigger]
+Type = File
+Operation = Install
+Operation = Upgrade
+Operation = Remove
+Target = usr/lib/vlc/plugins/*
+
+[Trigger]
+Type = Package
+Operation = Install
+Operation = Remove
+Target = qt4
+
+[Action]
+Description = Updating the vlc plugin cache...
+When = PostTransaction
+Exec = /usr/lib/vlc/vlc-cache-gen -f /usr/lib/vlc/plugins