--- /dev/null
+From 54e7e0bda02099ae9d1c42abed1932ffa8d354e8 Mon Sep 17 00:00:00 2001
+From: "Arnout Vandecappelle (Essensium/Mind)" <arnout@mind.be>
+Date: Tue, 1 May 2018 22:28:52 +0200
+Subject: [PATCH] automake: add subdir-objects option
+
+Our version of automake warns if this option is enabled and source files
+in subdirectories are used.
+
+It doesn't really seems to have a noticable effect on the build, but it
+does remove a lot of annoying warnings.
+
+Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
+---
+ configure.ac | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/configure.ac b/configure.ac
+index 206690b468..dfb4c1c329 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -24,7 +24,7 @@ AC_CANONICAL_BUILD
+ AC_CANONICAL_HOST
+ AC_PRESERVE_HELP_ORDER
+
+-AM_INIT_AUTOMAKE(tar-ustar color-tests foreign)
++AM_INIT_AUTOMAKE(tar-ustar color-tests foreign subdir-objects)
+ AC_CONFIG_HEADERS([config.h])
+
+ AM_SILENT_RULES([yes])
+--
+2.14.4
+
+++ /dev/null
-From 00135e21bec84a2fe5920d02fa0982ceb9f89a35 Mon Sep 17 00:00:00 2001
-From: Vinson Lee <vlee@freedesktop.org>
-Date: Thu, 5 Feb 2015 14:48:53 -0800
-Subject: [PATCH] lua: Define LUA_COMPAT_APIINTCASTS for Lua >= 5.3.0
- compatibility.
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-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>
-[Backport upstream commit 41caaa08cde60c4fec4bf2e5f9610e2a1b9e6a23]
-Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
----
- modules/lua/vlc.h | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/modules/lua/vlc.h b/modules/lua/vlc.h
-index 71f381d334..b46b5f67a1 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 */
---
-2.14.4
-
+++ /dev/null
-From 54e7e0bda02099ae9d1c42abed1932ffa8d354e8 Mon Sep 17 00:00:00 2001
-From: "Arnout Vandecappelle (Essensium/Mind)" <arnout@mind.be>
-Date: Tue, 1 May 2018 22:28:52 +0200
-Subject: [PATCH] automake: add subdir-objects option
-
-Our version of automake warns if this option is enabled and source files
-in subdirectories are used.
-
-It doesn't really seems to have a noticable effect on the build, but it
-does remove a lot of annoying warnings.
-
-Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
----
- configure.ac | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/configure.ac b/configure.ac
-index 206690b468..dfb4c1c329 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -24,7 +24,7 @@ AC_CANONICAL_BUILD
- AC_CANONICAL_HOST
- AC_PRESERVE_HELP_ORDER
-
--AM_INIT_AUTOMAKE(tar-ustar color-tests foreign)
-+AM_INIT_AUTOMAKE(tar-ustar color-tests foreign subdir-objects)
- AC_CONFIG_HEADERS([config.h])
-
- AM_SILENT_RULES([yes])
---
-2.14.4
-
--- /dev/null
+From fb257e1e204c30436b3509ea3fa9f7c5fe131dc1 Mon Sep 17 00:00:00 2001
+From: Fabrice Fontaine <fontaine.fabrice@gmail.com>
+Date: Tue, 16 Oct 2018 14:25:20 +0200
+Subject: [PATCH] build: use pkg-config to get tremor libs
+
+Use PKG_ENABLE_MODULES_VLC to enable tremor based on availability of
+ogg and vorbisidec
+
+Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
+---
+ configure.ac | 9 +--------
+ modules/codec/Makefile.am | 2 +-
+ 2 files changed, 2 insertions(+), 9 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index 0d3222e00f..b506d735f2 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -2710,14 +2710,7 @@ PKG_ENABLE_MODULES_VLC([VORBIS], [], [ogg vorbis >= 1.1 vorbisenc >= 1.1], [Vorb
+ dnl
+ dnl Tremor plugin
+ dnl
+-AC_ARG_ENABLE(tremor,
+- [ --enable-tremor Tremor decoder support (default disabled)])
+-if test "${enable_tremor}" = "yes"
+-then
+- AC_CHECK_HEADERS(tremor/ivorbiscodec.h, [
+- VLC_ADD_PLUGIN([tremor])
+- ],[])
+-fi
++PKG_ENABLE_MODULES_VLC([TREMOR], [], [vorbisidec ogg], [Tremor decoder support], [disabled])
+
+ dnl
+ dnl Speex plugins
+diff --git a/modules/codec/Makefile.am b/modules/codec/Makefile.am
+index 075ee2a0e9..637b1d45a6 100644
+--- a/modules/codec/Makefile.am
++++ b/modules/codec/Makefile.am
+@@ -318,7 +318,7 @@ codec_LTLIBRARIES += $(LTLIBdaala)
+ libtremor_plugin_la_SOURCES = codec/vorbis.c
+ libtremor_plugin_la_CPPFLAGS = $(AM_CPPFLAGS) -DMODULE_NAME_IS_tremor
+ libtremor_plugin_la_LDFLAGS = $(AM_LDFLAGS) -rpath '$(codecdir)'
+-libtremor_plugin_la_LIBADD = -lvorbisdec -logg
++libtremor_plugin_la_LIBADD = $(TREMOR_LIBS)
+ EXTRA_LTLIBRARIES += libtremor_plugin.la
+ codec_LTLIBRARIES += $(LTLIBtremor)
+
+--
+2.17.1
+
--- /dev/null
+From bbb15b9cbf9353423619f2c40abdf95d861e66ba Mon Sep 17 00:00:00 2001
+From: Bernd Kuhls <bernd.kuhls@t-online.de>
+Date: Sat, 2 Apr 2016 16:49:54 +0200
+Subject: [PATCH] Fix build error using uClibc by adding sys/types.h
+
+Fixes
+
+ CC core.lo
+In file included from libvlc_internal.h:35:0,
+ from core.c:28:
+../include/vlc/libvlc_media.h:313:18: error: expected declaration specifiers or '...' before '*' token
+ typedef ssize_t (*libvlc_media_read_cb)(void *opaque, unsigned char *buf,
+ ^
+../include/vlc/libvlc_media.h:423:36: error: unknown type name 'libvlc_media_read_cb'
+ libvlc_media_read_cb read_cb,
+ ^
+Bug was reported to trac:
+https://trac.videolan.org/vlc/ticket/16768
+
+This patch was suggested by courmisch in the trac ticket.
+
+Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
+[Patch sent upstream:
+ https://mailman.videolan.org/pipermail/vlc-devel/2016-April/106952.html]
+---
+ include/vlc/libvlc_media.h | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/include/vlc/libvlc_media.h b/include/vlc/libvlc_media.h
+index 383f366b69..1cbf00c3e3 100644
+--- a/include/vlc/libvlc_media.h
++++ b/include/vlc/libvlc_media.h
+@@ -26,6 +26,8 @@
+ #ifndef VLC_LIBVLC_MEDIA_H
+ #define VLC_LIBVLC_MEDIA_H 1
+
++#include <sys/types.h> /* for ssize_t */
++
+ # ifdef __cplusplus
+ extern "C" {
+ # endif
+--
+2.14.4
+
+++ /dev/null
-From fb257e1e204c30436b3509ea3fa9f7c5fe131dc1 Mon Sep 17 00:00:00 2001
-From: Fabrice Fontaine <fontaine.fabrice@gmail.com>
-Date: Tue, 16 Oct 2018 14:25:20 +0200
-Subject: [PATCH] build: use pkg-config to get tremor libs
-
-Use PKG_ENABLE_MODULES_VLC to enable tremor based on availability of
-ogg and vorbisidec
-
-Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
----
- configure.ac | 9 +--------
- modules/codec/Makefile.am | 2 +-
- 2 files changed, 2 insertions(+), 9 deletions(-)
-
-diff --git a/configure.ac b/configure.ac
-index 0d3222e00f..b506d735f2 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -2710,14 +2710,7 @@ PKG_ENABLE_MODULES_VLC([VORBIS], [], [ogg vorbis >= 1.1 vorbisenc >= 1.1], [Vorb
- dnl
- dnl Tremor plugin
- dnl
--AC_ARG_ENABLE(tremor,
-- [ --enable-tremor Tremor decoder support (default disabled)])
--if test "${enable_tremor}" = "yes"
--then
-- AC_CHECK_HEADERS(tremor/ivorbiscodec.h, [
-- VLC_ADD_PLUGIN([tremor])
-- ],[])
--fi
-+PKG_ENABLE_MODULES_VLC([TREMOR], [], [vorbisidec ogg], [Tremor decoder support], [disabled])
-
- dnl
- dnl Speex plugins
-diff --git a/modules/codec/Makefile.am b/modules/codec/Makefile.am
-index 075ee2a0e9..637b1d45a6 100644
---- a/modules/codec/Makefile.am
-+++ b/modules/codec/Makefile.am
-@@ -318,7 +318,7 @@ codec_LTLIBRARIES += $(LTLIBdaala)
- libtremor_plugin_la_SOURCES = codec/vorbis.c
- libtremor_plugin_la_CPPFLAGS = $(AM_CPPFLAGS) -DMODULE_NAME_IS_tremor
- libtremor_plugin_la_LDFLAGS = $(AM_LDFLAGS) -rpath '$(codecdir)'
--libtremor_plugin_la_LIBADD = -lvorbisdec -logg
-+libtremor_plugin_la_LIBADD = $(TREMOR_LIBS)
- EXTRA_LTLIBRARIES += libtremor_plugin.la
- codec_LTLIBRARIES += $(LTLIBtremor)
-
---
-2.17.1
-
--- /dev/null
+From 0435cf37308652af1cf244b6429e919fa7ffaa95 Mon Sep 17 00:00:00 2001
+From: Bernd Kuhls <bernd.kuhls@t-online.de>
+Date: Tue, 1 May 2018 22:31:23 +0200
+Subject: [PATCH] Don't assume strerror_l() is available
+
+Fix compile error
+
+ CCLD vlc
+/home/br/br3/output/build/vlc-2.2.1/src/.libs/libvlccore.so: undefined reference to `strerror_l'
+
+Code for #else condition was taken from
+http://patches.osdyson.org/patch/series/view/vlc/2.2.0~rc2-1+dyson2/dyson.patch
+
+[Bernd: rebased for vlc-3.0.6 & 3.0.9.2]
+Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
+---
+ configure.ac | 2 +-
+ src/posix/error.c | 4 ++++
+ 2 files changed, 5 insertions(+), 1 deletion(-)
+
+diff --git a/configure.ac b/configure.ac
+index dfb4c1c329..bfe43512a2 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -590,7 +590,7 @@ dnl Check for system libs needed
+ need_libc=false
+
+ dnl Check for usual libc functions
+-AC_CHECK_FUNCS([accept4 daemon fcntl flock fstatvfs fork getenv getmntent_r getpwuid_r isatty lstat memalign mkostemp mmap newlocale open_memstream openat pipe2 pread posix_fadvise posix_madvise posix_memalign setlocale stricmp strnicmp strptime uselocale])
++AC_CHECK_FUNCS([accept4 daemon fcntl flock fstatvfs fork getenv getmntent_r getpwuid_r isatty lstat memalign mkostemp mmap newlocale open_memstream openat pipe2 pread posix_fadvise posix_madvise posix_memalign setlocale strerror_l stricmp strnicmp strptime uselocale])
+ AC_REPLACE_FUNCS([aligned_alloc atof atoll dirfd fdopendir ffsll flockfile fsync getdelim getpid lfind lldiv memrchr nrand48 poll recvmsg rewind sendmsg setenv strcasecmp strcasestr strdup strlcpy strndup strnlen strnstr strsep strtof strtok_r strtoll swab tdestroy tfind timegm timespec_get strverscmp pathconf])
+ AC_REPLACE_FUNCS([gettimeofday])
+ AC_CHECK_FUNC(fdatasync,,
+diff --git a/src/posix/error.c b/src/posix/error.c
+index db51004601..b4aa6fb3ca 100644
+--- a/src/posix/error.c
++++ b/src/posix/error.c
+@@ -31,6 +31,7 @@
+
+ static const char *vlc_strerror_l(int errnum, const char *lname)
+ {
++#ifdef HAVE_STRERROR_L
+ int saved_errno = errno;
+ locale_t loc = newlocale(LC_MESSAGES_MASK, lname, (locale_t)0);
+
+@@ -51,6 +52,9 @@ static const char *vlc_strerror_l(int errnum, const char *lname)
+ const char *buf = strerror_l(errnum, loc);
+
+ freelocale(loc);
++#else
++ const char *buf = strerror(errnum);
++#endif
+ return buf;
+ }
+
+--
+2.14.4
+
+++ /dev/null
-From bbb15b9cbf9353423619f2c40abdf95d861e66ba Mon Sep 17 00:00:00 2001
-From: Bernd Kuhls <bernd.kuhls@t-online.de>
-Date: Sat, 2 Apr 2016 16:49:54 +0200
-Subject: [PATCH] Fix build error using uClibc by adding sys/types.h
-
-Fixes
-
- CC core.lo
-In file included from libvlc_internal.h:35:0,
- from core.c:28:
-../include/vlc/libvlc_media.h:313:18: error: expected declaration specifiers or '...' before '*' token
- typedef ssize_t (*libvlc_media_read_cb)(void *opaque, unsigned char *buf,
- ^
-../include/vlc/libvlc_media.h:423:36: error: unknown type name 'libvlc_media_read_cb'
- libvlc_media_read_cb read_cb,
- ^
-Bug was reported to trac:
-https://trac.videolan.org/vlc/ticket/16768
-
-This patch was suggested by courmisch in the trac ticket.
-
-Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
-[Patch sent upstream:
- https://mailman.videolan.org/pipermail/vlc-devel/2016-April/106952.html]
----
- include/vlc/libvlc_media.h | 2 ++
- 1 file changed, 2 insertions(+)
-
-diff --git a/include/vlc/libvlc_media.h b/include/vlc/libvlc_media.h
-index 383f366b69..1cbf00c3e3 100644
---- a/include/vlc/libvlc_media.h
-+++ b/include/vlc/libvlc_media.h
-@@ -26,6 +26,8 @@
- #ifndef VLC_LIBVLC_MEDIA_H
- #define VLC_LIBVLC_MEDIA_H 1
-
-+#include <sys/types.h> /* for ssize_t */
-+
- # ifdef __cplusplus
- extern "C" {
- # endif
---
-2.14.4
-
+++ /dev/null
-From 0435cf37308652af1cf244b6429e919fa7ffaa95 Mon Sep 17 00:00:00 2001
-From: Bernd Kuhls <bernd.kuhls@t-online.de>
-Date: Tue, 1 May 2018 22:31:23 +0200
-Subject: [PATCH] Don't assume strerror_l() is available
-
-Fix compile error
-
- CCLD vlc
-/home/br/br3/output/build/vlc-2.2.1/src/.libs/libvlccore.so: undefined reference to `strerror_l'
-
-Code for #else condition was taken from
-http://patches.osdyson.org/patch/series/view/vlc/2.2.0~rc2-1+dyson2/dyson.patch
-
-[Bernd: rebased for vlc-3.0.6 & 3.0.9.2]
-Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
----
- configure.ac | 2 +-
- src/posix/error.c | 4 ++++
- 2 files changed, 5 insertions(+), 1 deletion(-)
-
-diff --git a/configure.ac b/configure.ac
-index dfb4c1c329..bfe43512a2 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -590,7 +590,7 @@ dnl Check for system libs needed
- need_libc=false
-
- dnl Check for usual libc functions
--AC_CHECK_FUNCS([accept4 daemon fcntl flock fstatvfs fork getenv getmntent_r getpwuid_r isatty lstat memalign mkostemp mmap newlocale open_memstream openat pipe2 pread posix_fadvise posix_madvise posix_memalign setlocale stricmp strnicmp strptime uselocale])
-+AC_CHECK_FUNCS([accept4 daemon fcntl flock fstatvfs fork getenv getmntent_r getpwuid_r isatty lstat memalign mkostemp mmap newlocale open_memstream openat pipe2 pread posix_fadvise posix_madvise posix_memalign setlocale strerror_l stricmp strnicmp strptime uselocale])
- AC_REPLACE_FUNCS([aligned_alloc atof atoll dirfd fdopendir ffsll flockfile fsync getdelim getpid lfind lldiv memrchr nrand48 poll recvmsg rewind sendmsg setenv strcasecmp strcasestr strdup strlcpy strndup strnlen strnstr strsep strtof strtok_r strtoll swab tdestroy tfind timegm timespec_get strverscmp pathconf])
- AC_REPLACE_FUNCS([gettimeofday])
- AC_CHECK_FUNC(fdatasync,,
-diff --git a/src/posix/error.c b/src/posix/error.c
-index db51004601..b4aa6fb3ca 100644
---- a/src/posix/error.c
-+++ b/src/posix/error.c
-@@ -31,6 +31,7 @@
-
- static const char *vlc_strerror_l(int errnum, const char *lname)
- {
-+#ifdef HAVE_STRERROR_L
- int saved_errno = errno;
- locale_t loc = newlocale(LC_MESSAGES_MASK, lname, (locale_t)0);
-
-@@ -51,6 +52,9 @@ static const char *vlc_strerror_l(int errnum, const char *lname)
- const char *buf = strerror_l(errnum, loc);
-
- freelocale(loc);
-+#else
-+ const char *buf = strerror(errnum);
-+#endif
- return buf;
- }
-
---
-2.14.4
-
--- /dev/null
+From 5d561e1e2dcde3c9fca4d925f12447009d0d4a4c Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?R=C3=A9mi=20Denis-Courmont?= <remi@remlab.net>
+Date: Wed, 18 Apr 2018 17:23:57 +0300
+Subject: [PATCH] posix: remove ancient run-time fallback to real-time clock
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+posix: remove ancient run-time fallback to real-time clock
+
+For hysterical raisins, GNU/Linux and possibly some other OSes still
+report that monotonic clock must be checked at run-time, although I
+doubt that VLC or even current glibc would run on such old kernel.
+
+Drop that to simplify and avoid the systematic one-time init check.
+
+Downloaded from upstream commit to fix build error on m68k:
+
+posix/thread.c:79:5: warning: #warning Monotonic clock not available. Expect timing issues. [-Wcpp]
+ # warning Monotonic clock not available. Expect timing issues.
+ ^~~~~~~
+posix/thread.c: In function ‘vlc_clock_setup_once’:
+posix/thread.c:88:18: error: lvalue required as left operand of assignment
+ vlc_clock_id = (val < 0) ? CLOCK_REALTIME : CLOCK_MONOTONIC;
+
+Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
+---
+ src/posix/thread.c | 96 +++++++-----------------------------------------------
+ 1 file changed, 11 insertions(+), 85 deletions(-)
+
+diff --git a/src/posix/thread.c b/src/posix/thread.c
+index dab8b71f97..8878941913 100644
+--- a/src/posix/thread.c
++++ b/src/posix/thread.c
+@@ -51,62 +51,16 @@
+ # include <sys/pset.h>
+ #endif
+
+-#if !defined (_POSIX_TIMERS)
+-# define _POSIX_TIMERS (-1)
+-#endif
+-#if !defined (_POSIX_CLOCK_SELECTION)
+-/* Clock selection was defined in 2001 and became mandatory in 2008. */
+-# define _POSIX_CLOCK_SELECTION (-1)
+-#endif
+-#if !defined (_POSIX_MONOTONIC_CLOCK)
+-# define _POSIX_MONOTONIC_CLOCK (-1)
+-#endif
+-
+-#if (_POSIX_TIMERS > 0)
+ static unsigned vlc_clock_prec;
+
+-# if (_POSIX_MONOTONIC_CLOCK > 0) && (_POSIX_CLOCK_SELECTION > 0)
+-/* Compile-time POSIX monotonic clock support */
+-# define vlc_clock_id (CLOCK_MONOTONIC)
+-
+-# elif (_POSIX_MONOTONIC_CLOCK == 0) && (_POSIX_CLOCK_SELECTION > 0)
+-/* Run-time POSIX monotonic clock support (see clock_setup() below) */
+-static clockid_t vlc_clock_id;
+-
+-# else
+-/* No POSIX monotonic clock support */
+-# define vlc_clock_id (CLOCK_REALTIME)
+-# warning Monotonic clock not available. Expect timing issues.
+-
+-# endif /* _POSIX_MONOTONIC_CLOKC */
+-
+ static void vlc_clock_setup_once (void)
+ {
+-# if (_POSIX_MONOTONIC_CLOCK == 0)
+- long val = sysconf (_SC_MONOTONIC_CLOCK);
+- assert (val != 0);
+- vlc_clock_id = (val < 0) ? CLOCK_REALTIME : CLOCK_MONOTONIC;
+-# endif
+-
+ struct timespec res;
+- if (unlikely(clock_getres (vlc_clock_id, &res) != 0 || res.tv_sec != 0))
++ if (unlikely(clock_getres(CLOCK_MONOTONIC, &res) != 0 || res.tv_sec != 0))
+ abort ();
+ vlc_clock_prec = (res.tv_nsec + 500) / 1000;
+ }
+
+-static pthread_once_t vlc_clock_once = PTHREAD_ONCE_INIT;
+-
+-# define vlc_clock_setup() \
+- pthread_once(&vlc_clock_once, vlc_clock_setup_once)
+-
+-#else /* _POSIX_TIMERS */
+-
+-# include <sys/time.h> /* gettimeofday() */
+-
+-# define vlc_clock_setup() (void)0
+-# warning Monotonic clock not available. Expect timing issues.
+-#endif /* _POSIX_TIMERS */
+-
+ static struct timespec mtime_to_ts (mtime_t date)
+ {
+ lldiv_t d = lldiv (date, CLOCK_FREQ);
+@@ -233,14 +187,11 @@ void vlc_cond_init (vlc_cond_t *p_condvar)
+ {
+ pthread_condattr_t attr;
+
+- if (unlikely(pthread_condattr_init (&attr)))
+- abort ();
+-#if (_POSIX_CLOCK_SELECTION > 0)
+- vlc_clock_setup ();
+- pthread_condattr_setclock (&attr, vlc_clock_id);
+-#endif
+- if (unlikely(pthread_cond_init (p_condvar, &attr)))
++ if (unlikely(pthread_condattr_init (&attr))
++ || unlikely(pthread_condattr_setclock(&attr, CLOCK_MONOTONIC))
++ || unlikely(pthread_cond_init (p_condvar, &attr)))
+ abort ();
++
+ pthread_condattr_destroy (&attr);
+ }
+
+@@ -625,44 +576,27 @@ void vlc_control_cancel (int cmd, ...)
+
+ mtime_t mdate (void)
+ {
+-#if (_POSIX_TIMERS > 0)
+ struct timespec ts;
+
+- vlc_clock_setup ();
+- if (unlikely(clock_gettime (vlc_clock_id, &ts) != 0))
++ if (unlikely(clock_gettime(CLOCK_MONOTONIC, &ts) != 0))
+ abort ();
+
+ return (INT64_C(1000000) * ts.tv_sec) + (ts.tv_nsec / 1000);
+-
+-#else
+- struct timeval tv;
+-
+- if (unlikely(gettimeofday (&tv, NULL) != 0))
+- abort ();
+- return (INT64_C(1000000) * tv.tv_sec) + tv.tv_usec;
+-
+-#endif
+ }
+
+ #undef mwait
+ void mwait (mtime_t deadline)
+ {
+-#if (_POSIX_CLOCK_SELECTION > 0)
+- vlc_clock_setup ();
++ static pthread_once_t vlc_clock_once = PTHREAD_ONCE_INIT;
++
+ /* If the deadline is already elapsed, or within the clock precision,
+ * do not even bother the system timer. */
++ pthread_once(&vlc_clock_once, vlc_clock_setup_once);
+ deadline -= vlc_clock_prec;
+
+ struct timespec ts = mtime_to_ts (deadline);
+
+- while (clock_nanosleep (vlc_clock_id, TIMER_ABSTIME, &ts, NULL) == EINTR);
+-
+-#else
+- deadline -= mdate ();
+- if (deadline > 0)
+- msleep (deadline);
+-
+-#endif
++ while (clock_nanosleep(CLOCK_MONOTONIC, TIMER_ABSTIME, &ts, NULL) == EINTR);
+ }
+
+ #undef msleep
+@@ -670,15 +604,7 @@ void msleep (mtime_t delay)
+ {
+ struct timespec ts = mtime_to_ts (delay);
+
+-#if (_POSIX_CLOCK_SELECTION > 0)
+- vlc_clock_setup ();
+- while (clock_nanosleep (vlc_clock_id, 0, &ts, &ts) == EINTR);
+-
+-#else
+- while (nanosleep (&ts, &ts) == -1)
+- assert (errno == EINTR);
+-
+-#endif
++ while (clock_nanosleep(CLOCK_MONOTONIC, 0, &ts, &ts) == EINTR);
+ }
+
+ unsigned vlc_GetCPUCount(void)
+--
+2.14.4
+
--- /dev/null
+From 3780bbb20bf35aa8f21ac672da3f0c5f408468e9 Mon Sep 17 00:00:00 2001
+From: Bernd Kuhls <bernd.kuhls@t-online.de>
+Date: Thu, 16 Aug 2018 12:27:40 +0200
+Subject: [PATCH] Add support for freerdp2
+
+Downloaded from
+https://gitweb.gentoo.org/repo/gentoo.git/tree/media-video/vlc/files/vlc-2.2.8-freerdp-2.patch
+
+Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
+---
+ configure.ac | 2 +-
+ modules/access/rdp.c | 51 ++++++++++++++-------------------------------------
+ 2 files changed, 15 insertions(+), 38 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index bfe43512a2..4808b8becf 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -1992,7 +1992,7 @@ PKG_ENABLE_MODULES_VLC([VNC], [vnc], [libvncclient >= 0.9.9], (VNC/rfb client su
+
+ dnl RDP/Remote Desktop access module
+ dnl
+-PKG_ENABLE_MODULES_VLC([FREERDP], [rdp], [freerdp >= 1.0.1], (RDP/Remote Desktop client support) )
++PKG_ENABLE_MODULES_VLC([FREERDP], [rdp], [freerdp2 >= 1.0.1], (RDP/Remote Desktop client support) )
+
+ dnl
+ dnl Real RTSP plugin
+diff --git a/modules/access/rdp.c b/modules/access/rdp.c
+index 2992090219..49986f5da9 100644
+--- a/modules/access/rdp.c
++++ b/modules/access/rdp.c
+@@ -45,18 +45,6 @@
+ # include <freerdp/version.h>
+ #endif
+
+-#if !defined(FREERDP_VERSION_MAJOR) || \
+- (defined(FREERDP_VERSION_MAJOR) && !(FREERDP_VERSION_MAJOR > 1 || (FREERDP_VERSION_MAJOR == 1 && FREERDP_VERSION_MINOR >= 1)))
+-# define SoftwareGdi sw_gdi
+-# define Fullscreen fullscreen
+-# define ServerHostname hostname
+-# define Username username
+-# define Password password
+-# define ServerPort port
+-# define EncryptionMethods encryption
+-# define ContextSize context_size
+-#endif
+-
+ #include <errno.h>
+ #ifdef HAVE_POLL
+ # include <poll.h>
+@@ -144,6 +132,7 @@ static void desktopResizeHandler( rdpContext *p_context )
+ vlcrdp_context_t * p_vlccontext = (vlcrdp_context_t *) p_context;
+ demux_sys_t *p_sys = p_vlccontext->p_demux->p_sys;
+ rdpGdi *p_gdi = p_context->gdi;
++ unsigned bytesPerPixel;
+
+ if ( p_sys->es )
+ {
+@@ -153,17 +142,21 @@ static void desktopResizeHandler( rdpContext *p_context )
+
+ /* Now init and fill es format */
+ vlc_fourcc_t i_chroma;
+- switch( p_gdi->bytesPerPixel )
++ switch( p_gdi->dstFormat )
+ {
+ default:
+- case 16:
++ msg_Dbg( p_vlccontext->p_demux, "unhandled dstFormat %x bpp", p_gdi->dstFormat);
++ case PIXEL_FORMAT_BGR16:
+ i_chroma = VLC_CODEC_RGB16;
++ bytesPerPixel = 16;
+ break;
+- case 24:
++ case PIXEL_FORMAT_BGR24:
+ i_chroma = VLC_CODEC_RGB24;
++ bytesPerPixel = 24;
+ break;
+- case 32:
++ case PIXEL_FORMAT_BGRA32:
+ i_chroma = VLC_CODEC_RGB32;
++ bytesPerPixel = 32;
+ break;
+ }
+ es_format_t fmt;
+@@ -176,7 +169,7 @@ static void desktopResizeHandler( rdpContext *p_context )
+ fmt.video.i_height = p_gdi->height;
+ fmt.video.i_frame_rate_base = 1000;
+ fmt.video.i_frame_rate = 1000 * p_sys->f_fps;
+- p_sys->i_framebuffersize = p_gdi->width * p_gdi->height * p_gdi->bytesPerPixel;
++ p_sys->i_framebuffersize = p_gdi->width * p_gdi->height * bytesPerPixel;
+
+ if ( p_sys->p_block )
+ p_sys->p_block = block_Realloc( p_sys->p_block, 0, p_sys->i_framebuffersize );
+@@ -237,28 +230,19 @@ static bool postConnectHandler( freerdp *p_instance )
+ vlcrdp_context_t * p_vlccontext = (vlcrdp_context_t *) p_instance->context;
+
+ msg_Dbg( p_vlccontext->p_demux, "connected to desktop %dx%d (%d bpp)",
+-#if defined(FREERDP_VERSION_MAJOR) && (FREERDP_VERSION_MAJOR > 1 || (FREERDP_VERSION_MAJOR == 1 && FREERDP_VERSION_MINOR >= 1))
+ p_instance->settings->DesktopWidth,
+ p_instance->settings->DesktopHeight,
+ p_instance->settings->ColorDepth
+-#else
+- p_instance->settings->width,
+- p_instance->settings->height,
+- p_instance->settings->color_depth
+-#endif
+ );
+
+ p_instance->update->DesktopResize = desktopResizeHandler;
+ p_instance->update->BeginPaint = beginPaintHandler;
+ p_instance->update->EndPaint = endPaintHandler;
+
+- gdi_init( p_instance,
+- CLRBUF_16BPP |
+-#if defined(FREERDP_VERSION_MAJOR) && defined(FREERDP_VERSION_MINOR) && \
+- !(FREERDP_VERSION_MAJOR > 1 || (FREERDP_VERSION_MAJOR == 1 && FREERDP_VERSION_MINOR >= 2))
+- CLRBUF_24BPP |
+-#endif
+- CLRBUF_32BPP, NULL );
++ if ( p_instance->settings->ColorDepth > 16 )
++ gdi_init( p_instance, PIXEL_FORMAT_XRGB32);
++ else
++ gdi_init( p_instance, PIXEL_FORMAT_RGB16);
+
+ desktopResizeHandler( p_instance->context );
+ return true;
+@@ -432,10 +416,6 @@ static int Open( vlc_object_t *p_this )
+ if ( p_sys->f_fps <= 0 ) p_sys->f_fps = 1.0;
+ p_sys->i_frame_interval = 1000000 / p_sys->f_fps;
+
+-#if FREERDP_VERSION_MAJOR == 1 && FREERDP_VERSION_MINOR < 2
+- freerdp_channels_global_init();
+-#endif
+-
+ p_sys->p_instance = freerdp_new();
+ if ( !p_sys->p_instance )
+ {
+@@ -508,9 +488,6 @@ static void Close( vlc_object_t *p_this )
+
+ freerdp_disconnect( p_sys->p_instance );
+ freerdp_free( p_sys->p_instance );
+-#if FREERDP_VERSION_MAJOR == 1 && FREERDP_VERSION_MINOR < 2
+- freerdp_channels_global_uninit();
+-#endif
+
+ if ( p_sys->p_block )
+ block_Release( p_sys->p_block );
+--
+2.14.4
+
+++ /dev/null
-From 5d561e1e2dcde3c9fca4d925f12447009d0d4a4c Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?R=C3=A9mi=20Denis-Courmont?= <remi@remlab.net>
-Date: Wed, 18 Apr 2018 17:23:57 +0300
-Subject: [PATCH] posix: remove ancient run-time fallback to real-time clock
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-posix: remove ancient run-time fallback to real-time clock
-
-For hysterical raisins, GNU/Linux and possibly some other OSes still
-report that monotonic clock must be checked at run-time, although I
-doubt that VLC or even current glibc would run on such old kernel.
-
-Drop that to simplify and avoid the systematic one-time init check.
-
-Downloaded from upstream commit to fix build error on m68k:
-
-posix/thread.c:79:5: warning: #warning Monotonic clock not available. Expect timing issues. [-Wcpp]
- # warning Monotonic clock not available. Expect timing issues.
- ^~~~~~~
-posix/thread.c: In function ‘vlc_clock_setup_once’:
-posix/thread.c:88:18: error: lvalue required as left operand of assignment
- vlc_clock_id = (val < 0) ? CLOCK_REALTIME : CLOCK_MONOTONIC;
-
-Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
----
- src/posix/thread.c | 96 +++++++-----------------------------------------------
- 1 file changed, 11 insertions(+), 85 deletions(-)
-
-diff --git a/src/posix/thread.c b/src/posix/thread.c
-index dab8b71f97..8878941913 100644
---- a/src/posix/thread.c
-+++ b/src/posix/thread.c
-@@ -51,62 +51,16 @@
- # include <sys/pset.h>
- #endif
-
--#if !defined (_POSIX_TIMERS)
--# define _POSIX_TIMERS (-1)
--#endif
--#if !defined (_POSIX_CLOCK_SELECTION)
--/* Clock selection was defined in 2001 and became mandatory in 2008. */
--# define _POSIX_CLOCK_SELECTION (-1)
--#endif
--#if !defined (_POSIX_MONOTONIC_CLOCK)
--# define _POSIX_MONOTONIC_CLOCK (-1)
--#endif
--
--#if (_POSIX_TIMERS > 0)
- static unsigned vlc_clock_prec;
-
--# if (_POSIX_MONOTONIC_CLOCK > 0) && (_POSIX_CLOCK_SELECTION > 0)
--/* Compile-time POSIX monotonic clock support */
--# define vlc_clock_id (CLOCK_MONOTONIC)
--
--# elif (_POSIX_MONOTONIC_CLOCK == 0) && (_POSIX_CLOCK_SELECTION > 0)
--/* Run-time POSIX monotonic clock support (see clock_setup() below) */
--static clockid_t vlc_clock_id;
--
--# else
--/* No POSIX monotonic clock support */
--# define vlc_clock_id (CLOCK_REALTIME)
--# warning Monotonic clock not available. Expect timing issues.
--
--# endif /* _POSIX_MONOTONIC_CLOKC */
--
- static void vlc_clock_setup_once (void)
- {
--# if (_POSIX_MONOTONIC_CLOCK == 0)
-- long val = sysconf (_SC_MONOTONIC_CLOCK);
-- assert (val != 0);
-- vlc_clock_id = (val < 0) ? CLOCK_REALTIME : CLOCK_MONOTONIC;
--# endif
--
- struct timespec res;
-- if (unlikely(clock_getres (vlc_clock_id, &res) != 0 || res.tv_sec != 0))
-+ if (unlikely(clock_getres(CLOCK_MONOTONIC, &res) != 0 || res.tv_sec != 0))
- abort ();
- vlc_clock_prec = (res.tv_nsec + 500) / 1000;
- }
-
--static pthread_once_t vlc_clock_once = PTHREAD_ONCE_INIT;
--
--# define vlc_clock_setup() \
-- pthread_once(&vlc_clock_once, vlc_clock_setup_once)
--
--#else /* _POSIX_TIMERS */
--
--# include <sys/time.h> /* gettimeofday() */
--
--# define vlc_clock_setup() (void)0
--# warning Monotonic clock not available. Expect timing issues.
--#endif /* _POSIX_TIMERS */
--
- static struct timespec mtime_to_ts (mtime_t date)
- {
- lldiv_t d = lldiv (date, CLOCK_FREQ);
-@@ -233,14 +187,11 @@ void vlc_cond_init (vlc_cond_t *p_condvar)
- {
- pthread_condattr_t attr;
-
-- if (unlikely(pthread_condattr_init (&attr)))
-- abort ();
--#if (_POSIX_CLOCK_SELECTION > 0)
-- vlc_clock_setup ();
-- pthread_condattr_setclock (&attr, vlc_clock_id);
--#endif
-- if (unlikely(pthread_cond_init (p_condvar, &attr)))
-+ if (unlikely(pthread_condattr_init (&attr))
-+ || unlikely(pthread_condattr_setclock(&attr, CLOCK_MONOTONIC))
-+ || unlikely(pthread_cond_init (p_condvar, &attr)))
- abort ();
-+
- pthread_condattr_destroy (&attr);
- }
-
-@@ -625,44 +576,27 @@ void vlc_control_cancel (int cmd, ...)
-
- mtime_t mdate (void)
- {
--#if (_POSIX_TIMERS > 0)
- struct timespec ts;
-
-- vlc_clock_setup ();
-- if (unlikely(clock_gettime (vlc_clock_id, &ts) != 0))
-+ if (unlikely(clock_gettime(CLOCK_MONOTONIC, &ts) != 0))
- abort ();
-
- return (INT64_C(1000000) * ts.tv_sec) + (ts.tv_nsec / 1000);
--
--#else
-- struct timeval tv;
--
-- if (unlikely(gettimeofday (&tv, NULL) != 0))
-- abort ();
-- return (INT64_C(1000000) * tv.tv_sec) + tv.tv_usec;
--
--#endif
- }
-
- #undef mwait
- void mwait (mtime_t deadline)
- {
--#if (_POSIX_CLOCK_SELECTION > 0)
-- vlc_clock_setup ();
-+ static pthread_once_t vlc_clock_once = PTHREAD_ONCE_INIT;
-+
- /* If the deadline is already elapsed, or within the clock precision,
- * do not even bother the system timer. */
-+ pthread_once(&vlc_clock_once, vlc_clock_setup_once);
- deadline -= vlc_clock_prec;
-
- struct timespec ts = mtime_to_ts (deadline);
-
-- while (clock_nanosleep (vlc_clock_id, TIMER_ABSTIME, &ts, NULL) == EINTR);
--
--#else
-- deadline -= mdate ();
-- if (deadline > 0)
-- msleep (deadline);
--
--#endif
-+ while (clock_nanosleep(CLOCK_MONOTONIC, TIMER_ABSTIME, &ts, NULL) == EINTR);
- }
-
- #undef msleep
-@@ -670,15 +604,7 @@ void msleep (mtime_t delay)
- {
- struct timespec ts = mtime_to_ts (delay);
-
--#if (_POSIX_CLOCK_SELECTION > 0)
-- vlc_clock_setup ();
-- while (clock_nanosleep (vlc_clock_id, 0, &ts, &ts) == EINTR);
--
--#else
-- while (nanosleep (&ts, &ts) == -1)
-- assert (errno == EINTR);
--
--#endif
-+ while (clock_nanosleep(CLOCK_MONOTONIC, 0, &ts, &ts) == EINTR);
- }
-
- unsigned vlc_GetCPUCount(void)
---
-2.14.4
-
+++ /dev/null
-From 3780bbb20bf35aa8f21ac672da3f0c5f408468e9 Mon Sep 17 00:00:00 2001
-From: Bernd Kuhls <bernd.kuhls@t-online.de>
-Date: Thu, 16 Aug 2018 12:27:40 +0200
-Subject: [PATCH] Add support for freerdp2
-
-Downloaded from
-https://gitweb.gentoo.org/repo/gentoo.git/tree/media-video/vlc/files/vlc-2.2.8-freerdp-2.patch
-
-Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
----
- configure.ac | 2 +-
- modules/access/rdp.c | 51 ++++++++++++++-------------------------------------
- 2 files changed, 15 insertions(+), 38 deletions(-)
-
-diff --git a/configure.ac b/configure.ac
-index bfe43512a2..4808b8becf 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -1992,7 +1992,7 @@ PKG_ENABLE_MODULES_VLC([VNC], [vnc], [libvncclient >= 0.9.9], (VNC/rfb client su
-
- dnl RDP/Remote Desktop access module
- dnl
--PKG_ENABLE_MODULES_VLC([FREERDP], [rdp], [freerdp >= 1.0.1], (RDP/Remote Desktop client support) )
-+PKG_ENABLE_MODULES_VLC([FREERDP], [rdp], [freerdp2 >= 1.0.1], (RDP/Remote Desktop client support) )
-
- dnl
- dnl Real RTSP plugin
-diff --git a/modules/access/rdp.c b/modules/access/rdp.c
-index 2992090219..49986f5da9 100644
---- a/modules/access/rdp.c
-+++ b/modules/access/rdp.c
-@@ -45,18 +45,6 @@
- # include <freerdp/version.h>
- #endif
-
--#if !defined(FREERDP_VERSION_MAJOR) || \
-- (defined(FREERDP_VERSION_MAJOR) && !(FREERDP_VERSION_MAJOR > 1 || (FREERDP_VERSION_MAJOR == 1 && FREERDP_VERSION_MINOR >= 1)))
--# define SoftwareGdi sw_gdi
--# define Fullscreen fullscreen
--# define ServerHostname hostname
--# define Username username
--# define Password password
--# define ServerPort port
--# define EncryptionMethods encryption
--# define ContextSize context_size
--#endif
--
- #include <errno.h>
- #ifdef HAVE_POLL
- # include <poll.h>
-@@ -144,6 +132,7 @@ static void desktopResizeHandler( rdpContext *p_context )
- vlcrdp_context_t * p_vlccontext = (vlcrdp_context_t *) p_context;
- demux_sys_t *p_sys = p_vlccontext->p_demux->p_sys;
- rdpGdi *p_gdi = p_context->gdi;
-+ unsigned bytesPerPixel;
-
- if ( p_sys->es )
- {
-@@ -153,17 +142,21 @@ static void desktopResizeHandler( rdpContext *p_context )
-
- /* Now init and fill es format */
- vlc_fourcc_t i_chroma;
-- switch( p_gdi->bytesPerPixel )
-+ switch( p_gdi->dstFormat )
- {
- default:
-- case 16:
-+ msg_Dbg( p_vlccontext->p_demux, "unhandled dstFormat %x bpp", p_gdi->dstFormat);
-+ case PIXEL_FORMAT_BGR16:
- i_chroma = VLC_CODEC_RGB16;
-+ bytesPerPixel = 16;
- break;
-- case 24:
-+ case PIXEL_FORMAT_BGR24:
- i_chroma = VLC_CODEC_RGB24;
-+ bytesPerPixel = 24;
- break;
-- case 32:
-+ case PIXEL_FORMAT_BGRA32:
- i_chroma = VLC_CODEC_RGB32;
-+ bytesPerPixel = 32;
- break;
- }
- es_format_t fmt;
-@@ -176,7 +169,7 @@ static void desktopResizeHandler( rdpContext *p_context )
- fmt.video.i_height = p_gdi->height;
- fmt.video.i_frame_rate_base = 1000;
- fmt.video.i_frame_rate = 1000 * p_sys->f_fps;
-- p_sys->i_framebuffersize = p_gdi->width * p_gdi->height * p_gdi->bytesPerPixel;
-+ p_sys->i_framebuffersize = p_gdi->width * p_gdi->height * bytesPerPixel;
-
- if ( p_sys->p_block )
- p_sys->p_block = block_Realloc( p_sys->p_block, 0, p_sys->i_framebuffersize );
-@@ -237,28 +230,19 @@ static bool postConnectHandler( freerdp *p_instance )
- vlcrdp_context_t * p_vlccontext = (vlcrdp_context_t *) p_instance->context;
-
- msg_Dbg( p_vlccontext->p_demux, "connected to desktop %dx%d (%d bpp)",
--#if defined(FREERDP_VERSION_MAJOR) && (FREERDP_VERSION_MAJOR > 1 || (FREERDP_VERSION_MAJOR == 1 && FREERDP_VERSION_MINOR >= 1))
- p_instance->settings->DesktopWidth,
- p_instance->settings->DesktopHeight,
- p_instance->settings->ColorDepth
--#else
-- p_instance->settings->width,
-- p_instance->settings->height,
-- p_instance->settings->color_depth
--#endif
- );
-
- p_instance->update->DesktopResize = desktopResizeHandler;
- p_instance->update->BeginPaint = beginPaintHandler;
- p_instance->update->EndPaint = endPaintHandler;
-
-- gdi_init( p_instance,
-- CLRBUF_16BPP |
--#if defined(FREERDP_VERSION_MAJOR) && defined(FREERDP_VERSION_MINOR) && \
-- !(FREERDP_VERSION_MAJOR > 1 || (FREERDP_VERSION_MAJOR == 1 && FREERDP_VERSION_MINOR >= 2))
-- CLRBUF_24BPP |
--#endif
-- CLRBUF_32BPP, NULL );
-+ if ( p_instance->settings->ColorDepth > 16 )
-+ gdi_init( p_instance, PIXEL_FORMAT_XRGB32);
-+ else
-+ gdi_init( p_instance, PIXEL_FORMAT_RGB16);
-
- desktopResizeHandler( p_instance->context );
- return true;
-@@ -432,10 +416,6 @@ static int Open( vlc_object_t *p_this )
- if ( p_sys->f_fps <= 0 ) p_sys->f_fps = 1.0;
- p_sys->i_frame_interval = 1000000 / p_sys->f_fps;
-
--#if FREERDP_VERSION_MAJOR == 1 && FREERDP_VERSION_MINOR < 2
-- freerdp_channels_global_init();
--#endif
--
- p_sys->p_instance = freerdp_new();
- if ( !p_sys->p_instance )
- {
-@@ -508,9 +488,6 @@ static void Close( vlc_object_t *p_this )
-
- freerdp_disconnect( p_sys->p_instance );
- freerdp_free( p_sys->p_instance );
--#if FREERDP_VERSION_MAJOR == 1 && FREERDP_VERSION_MINOR < 2
-- freerdp_channels_global_uninit();
--#endif
-
- if ( p_sys->p_block )
- block_Release( p_sys->p_block );
---
-2.14.4
-
--- /dev/null
+From 27635f902831fac898586f1f3dc98369f12582c9 Mon Sep 17 00:00:00 2001
+From: Bernd Kuhls <bernd.kuhls@t-online.de>
+Date: Sun, 26 Aug 2018 12:51:04 +0200
+Subject: [PATCH] configure.ac: also use AC_PATH_PROG to check for
+ wayland-scanner
+
+When cross-compiling the .pc file might point to the wrong
+wayland-scanner binary (target rather than host) resulting in a
+non-executable and wrong scanner.
+Try searching the PATH first, and if that fails fall back into
+pkg-config.
+
+Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
+---
+ configure.ac | 19 +++++++++++--------
+ 1 file changed, 11 insertions(+), 8 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index 4808b8becf..a18641ed23 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -3140,14 +3140,17 @@ AS_IF([test "${enable_wayland}" != "no"], [
+ AC_MSG_ERROR([$(${PKG_CONFIG} --print-errors 'wayland-protocols >= 1.4')])
+ ])
+
+- AC_MSG_CHECKING([for the Wayland scanner])
+- PKG_CHECK_EXISTS([wayland-scanner], [
+- WAYLAND_SCANNER="$(${PKG_CONFIG} wayland-scanner --variable wayland_scanner)"
+- AC_MSG_RESULT([${WAYLAND_SCANNER}])
+- ], [
+- AC_MSG_RESULT([not found])
+- AC_MSG_ERROR([$(${PKG_CONFIG} --print-errors wayland-scanner)])
+- ])
++ AC_PATH_PROG([WAYLAND_SCANNER], [wayland-scanner])
++ if test "x$WAYLAND_SCANNER" = x; then
++ AC_MSG_CHECKING([for the Wayland scanner])
++ PKG_CHECK_EXISTS([wayland-scanner], [
++ WAYLAND_SCANNER="$(${PKG_CONFIG} wayland-scanner --variable wayland_scanner)"
++ AC_MSG_RESULT([${WAYLAND_SCANNER}])
++ ], [
++ AC_MSG_RESULT([not found])
++ AC_MSG_ERROR([$(${PKG_CONFIG} --print-errors wayland-scanner)])
++ ])
++ fi
+
+ have_wayland="yes"
+
+--
+2.18.0
+
+++ /dev/null
-From 27635f902831fac898586f1f3dc98369f12582c9 Mon Sep 17 00:00:00 2001
-From: Bernd Kuhls <bernd.kuhls@t-online.de>
-Date: Sun, 26 Aug 2018 12:51:04 +0200
-Subject: [PATCH] configure.ac: also use AC_PATH_PROG to check for
- wayland-scanner
-
-When cross-compiling the .pc file might point to the wrong
-wayland-scanner binary (target rather than host) resulting in a
-non-executable and wrong scanner.
-Try searching the PATH first, and if that fails fall back into
-pkg-config.
-
-Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
----
- configure.ac | 19 +++++++++++--------
- 1 file changed, 11 insertions(+), 8 deletions(-)
-
-diff --git a/configure.ac b/configure.ac
-index 4808b8becf..a18641ed23 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -3140,14 +3140,17 @@ AS_IF([test "${enable_wayland}" != "no"], [
- AC_MSG_ERROR([$(${PKG_CONFIG} --print-errors 'wayland-protocols >= 1.4')])
- ])
-
-- AC_MSG_CHECKING([for the Wayland scanner])
-- PKG_CHECK_EXISTS([wayland-scanner], [
-- WAYLAND_SCANNER="$(${PKG_CONFIG} wayland-scanner --variable wayland_scanner)"
-- AC_MSG_RESULT([${WAYLAND_SCANNER}])
-- ], [
-- AC_MSG_RESULT([not found])
-- AC_MSG_ERROR([$(${PKG_CONFIG} --print-errors wayland-scanner)])
-- ])
-+ AC_PATH_PROG([WAYLAND_SCANNER], [wayland-scanner])
-+ if test "x$WAYLAND_SCANNER" = x; then
-+ AC_MSG_CHECKING([for the Wayland scanner])
-+ PKG_CHECK_EXISTS([wayland-scanner], [
-+ WAYLAND_SCANNER="$(${PKG_CONFIG} wayland-scanner --variable wayland_scanner)"
-+ AC_MSG_RESULT([${WAYLAND_SCANNER}])
-+ ], [
-+ AC_MSG_RESULT([not found])
-+ AC_MSG_ERROR([$(${PKG_CONFIG} --print-errors wayland-scanner)])
-+ ])
-+ fi
-
- have_wayland="yes"
-
---
-2.18.0
-
--- /dev/null
+From 57b1e723b73da4c8d42c20d4e28040ec4c0edd85 Mon Sep 17 00:00:00 2001
+From: Fabrice Fontaine <fontaine.fabrice@gmail.com>
+Date: Fri, 28 Feb 2020 14:29:47 +0100
+Subject: [PATCH] modules/video_filter/opencv_example.cpp: fix build with
+ opencv 3.4.9
+
+Use cvScalar instead of CV_RGB to avoid the following build failure with
+opencv 3.4.9:
+
+In file included from /home/naourr/work/instance-2/output-1/host/x86_64-buildroot-linux-uclibc/sysroot/usr/include/opencv2/imgproc/imgproc.hpp:48,
+ from video_filter/opencv_example.cpp:46:
+video_filter/opencv_example.cpp: In function 'picture_t* Filter(filter_t*, picture_t*)':
+video_filter/opencv_example.cpp:200:46: error: could not convert 'cv::Scalar_<double>((double)0, (double)0, (double)0, (double)0)' from 'cv::Scalar' {aka 'cv::Scalar_<double>'} to 'CvScalar'
+ cvRectangle( p_img[0], pt1, pt2, CV_RGB(0,0,0), 3, 8, 0 );
+ ^~~~~~
+
+Indeed, CV_RGB is defined as cv::Scalar instead of cvScalar since
+version 3.4.2 and
+https://github.com/opencv/opencv/commit/7f9253ea0a9fe2635926379420002dbf0c3fce0f
+
+Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
+[Upstream status: https://patches.videolan.org/patch/26655]
+---
+ modules/video_filter/opencv_example.cpp | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/modules/video_filter/opencv_example.cpp b/modules/video_filter/opencv_example.cpp
+index 1334cd4c36..1a8d574f7a 100644
+--- a/modules/video_filter/opencv_example.cpp
++++ b/modules/video_filter/opencv_example.cpp
+@@ -202,7 +202,7 @@ static picture_t *Filter( filter_t *p_filter, picture_t *p_pic )
+ pt2.x = (r->x+r->width)*scale;
+ pt1.y = r->y*scale;
+ pt2.y = (r->y+r->height)*scale;
+- cvRectangle( p_img[0], pt1, pt2, CV_RGB(0,0,0), 3, 8, 0 );
++ cvRectangle( p_img[0], pt1, pt2, cvScalar(0,0,0,0), 3, 8, 0 );
+
+ *(CvRect*)(&(p_sys->event_info.p_region[i])) = *r;
+ p_sys->event_info.p_region[i].i_id = p_sys->i_id++;
+--
+2.25.0
+
+++ /dev/null
-From 57b1e723b73da4c8d42c20d4e28040ec4c0edd85 Mon Sep 17 00:00:00 2001
-From: Fabrice Fontaine <fontaine.fabrice@gmail.com>
-Date: Fri, 28 Feb 2020 14:29:47 +0100
-Subject: [PATCH] modules/video_filter/opencv_example.cpp: fix build with
- opencv 3.4.9
-
-Use cvScalar instead of CV_RGB to avoid the following build failure with
-opencv 3.4.9:
-
-In file included from /home/naourr/work/instance-2/output-1/host/x86_64-buildroot-linux-uclibc/sysroot/usr/include/opencv2/imgproc/imgproc.hpp:48,
- from video_filter/opencv_example.cpp:46:
-video_filter/opencv_example.cpp: In function 'picture_t* Filter(filter_t*, picture_t*)':
-video_filter/opencv_example.cpp:200:46: error: could not convert 'cv::Scalar_<double>((double)0, (double)0, (double)0, (double)0)' from 'cv::Scalar' {aka 'cv::Scalar_<double>'} to 'CvScalar'
- cvRectangle( p_img[0], pt1, pt2, CV_RGB(0,0,0), 3, 8, 0 );
- ^~~~~~
-
-Indeed, CV_RGB is defined as cv::Scalar instead of cvScalar since
-version 3.4.2 and
-https://github.com/opencv/opencv/commit/7f9253ea0a9fe2635926379420002dbf0c3fce0f
-
-Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
-[Upstream status: https://patches.videolan.org/patch/26655]
----
- modules/video_filter/opencv_example.cpp | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/modules/video_filter/opencv_example.cpp b/modules/video_filter/opencv_example.cpp
-index 1334cd4c36..1a8d574f7a 100644
---- a/modules/video_filter/opencv_example.cpp
-+++ b/modules/video_filter/opencv_example.cpp
-@@ -202,7 +202,7 @@ static picture_t *Filter( filter_t *p_filter, picture_t *p_pic )
- pt2.x = (r->x+r->width)*scale;
- pt1.y = r->y*scale;
- pt2.y = (r->y+r->height)*scale;
-- cvRectangle( p_img[0], pt1, pt2, CV_RGB(0,0,0), 3, 8, 0 );
-+ cvRectangle( p_img[0], pt1, pt2, cvScalar(0,0,0,0), 3, 8, 0 );
-
- *(CvRect*)(&(p_sys->event_info.p_region[i])) = *r;
- p_sys->event_info.p_region[i].i_id = p_sys->i_id++;
---
-2.25.0
-
-# From https://get.videolan.org/vlc/3.0.12/vlc-3.0.12.tar.xz.sha256
-sha256 eff458f38a92126094f44f2263c2bf2c7cdef271b48192d0fe7b1726388cf879 vlc-3.0.12.tar.xz
-# From https://get.videolan.org/vlc/3.0.12/vlc-3.0.12.tar.xz.sha1
-sha1 39ef414a07202ec6569acda4c5d91e8576d453bf vlc-3.0.12.tar.xz
+# From https://get.videolan.org/vlc/3.0.14/vlc-3.0.14.tar.xz.sha256
+sha256 49b93e5b33deaa37060e6b24a98200cad70c407947f14eb2a8b6a0c64d8535a6 vlc-3.0.14.tar.xz
+# From https://get.videolan.org/vlc/3.0.14/vlc-3.0.14.tar.xz.sha1
+sha1 8a8613f16a9053668d7a7dcfa1e6d8be93af3e89 vlc-3.0.14.tar.xz
# Locally computed
sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 COPYING
sha256 dc626520dcd53a22f727af3ee42c770e56c97a64fe3adb063799d8ab032fe551 COPYING.LIB
#
################################################################################
-VLC_VERSION = 3.0.12
+VLC_VERSION = 3.0.14
VLC_SITE = https://get.videolan.org/vlc/$(VLC_VERSION)
VLC_SOURCE = vlc-$(VLC_VERSION).tar.xz
VLC_LICENSE = GPL-2.0+, LGPL-2.1+