From: Bernd Kuhls Date: Thu, 13 May 2021 07:04:31 +0000 (+0200) Subject: package/vlc: security bump version to 3.0.14 X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=6a075914849457d0c52e6bb3235faa9f3fcdbefb;p=buildroot.git package/vlc: security bump version to 3.0.14 Removed patch 0002 which was applied upstream: https://code.videolan.org/videolan/vlc/-/commit/41caaa08cde60c4fec4bf2e5f9610e2a1b9e6a23 Renumbered remaining patches. Release notes: https://www.videolan.org/vlc/releases/3.0.13.html https://www.videolan.org/vlc/releases/3.0.12-update.html Version 3.0.13 fixes VideoLAN-SB-VLC-3013: https://www.videolan.org/security/sb-vlc3013.html Signed-off-by: Bernd Kuhls Signed-off-by: Peter Korsgaard --- diff --git a/package/vlc/0002-automake-add-subdir-objects-option.patch b/package/vlc/0002-automake-add-subdir-objects-option.patch new file mode 100644 index 0000000000..d4493bdf7f --- /dev/null +++ b/package/vlc/0002-automake-add-subdir-objects-option.patch @@ -0,0 +1,32 @@ +From 54e7e0bda02099ae9d1c42abed1932ffa8d354e8 Mon Sep 17 00:00:00 2001 +From: "Arnout Vandecappelle (Essensium/Mind)" +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) +--- + 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 + diff --git a/package/vlc/0002-lua-Define-LUA_COMPAT_APIINTCASTS-for-Lua-5.3.0-comp.patch b/package/vlc/0002-lua-Define-LUA_COMPAT_APIINTCASTS-for-Lua-5.3.0-comp.patch deleted file mode 100644 index 11eaaf3b20..0000000000 --- a/package/vlc/0002-lua-Define-LUA_COMPAT_APIINTCASTS-for-Lua-5.3.0-comp.patch +++ /dev/null @@ -1,41 +0,0 @@ -From 00135e21bec84a2fe5920d02fa0982ceb9f89a35 Mon Sep 17 00:00:00 2001 -From: Vinson Lee -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 -Signed-off-by: Jean-Baptiste Kempf -[Backport upstream commit 41caaa08cde60c4fec4bf2e5f9610e2a1b9e6a23] -Signed-off-by: Bernd Kuhls ---- - 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 - #include - -+#define LUA_COMPAT_APIINTCASTS - #define LUA_COMPAT_MODULE - #include /* Low level lua C API */ - #include /* Higher level C API */ --- -2.14.4 - diff --git a/package/vlc/0003-automake-add-subdir-objects-option.patch b/package/vlc/0003-automake-add-subdir-objects-option.patch deleted file mode 100644 index d4493bdf7f..0000000000 --- a/package/vlc/0003-automake-add-subdir-objects-option.patch +++ /dev/null @@ -1,32 +0,0 @@ -From 54e7e0bda02099ae9d1c42abed1932ffa8d354e8 Mon Sep 17 00:00:00 2001 -From: "Arnout Vandecappelle (Essensium/Mind)" -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) ---- - 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 - diff --git a/package/vlc/0003-build-use-pkg-config-to-get-tremor-libs.patch b/package/vlc/0003-build-use-pkg-config-to-get-tremor-libs.patch new file mode 100644 index 0000000000..652718b013 --- /dev/null +++ b/package/vlc/0003-build-use-pkg-config-to-get-tremor-libs.patch @@ -0,0 +1,50 @@ +From fb257e1e204c30436b3509ea3fa9f7c5fe131dc1 Mon Sep 17 00:00:00 2001 +From: Fabrice Fontaine +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 +--- + 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 + diff --git a/package/vlc/0004-Fix-build-error-using-uClibc-by-adding-sys-types.h.patch b/package/vlc/0004-Fix-build-error-using-uClibc-by-adding-sys-types.h.patch new file mode 100644 index 0000000000..a1d7189689 --- /dev/null +++ b/package/vlc/0004-Fix-build-error-using-uClibc-by-adding-sys-types.h.patch @@ -0,0 +1,44 @@ +From bbb15b9cbf9353423619f2c40abdf95d861e66ba Mon Sep 17 00:00:00 2001 +From: Bernd Kuhls +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 +[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 /* for ssize_t */ ++ + # ifdef __cplusplus + extern "C" { + # endif +-- +2.14.4 + diff --git a/package/vlc/0004-build-use-pkg-config-to-get-tremor-libs.patch b/package/vlc/0004-build-use-pkg-config-to-get-tremor-libs.patch deleted file mode 100644 index 652718b013..0000000000 --- a/package/vlc/0004-build-use-pkg-config-to-get-tremor-libs.patch +++ /dev/null @@ -1,50 +0,0 @@ -From fb257e1e204c30436b3509ea3fa9f7c5fe131dc1 Mon Sep 17 00:00:00 2001 -From: Fabrice Fontaine -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 ---- - 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 - diff --git a/package/vlc/0005-Don-t-assume-strerror_l-is-available.patch b/package/vlc/0005-Don-t-assume-strerror_l-is-available.patch new file mode 100644 index 0000000000..cd839b7379 --- /dev/null +++ b/package/vlc/0005-Don-t-assume-strerror_l-is-available.patch @@ -0,0 +1,58 @@ +From 0435cf37308652af1cf244b6429e919fa7ffaa95 Mon Sep 17 00:00:00 2001 +From: Bernd Kuhls +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 +--- + 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 + diff --git a/package/vlc/0005-Fix-build-error-using-uClibc-by-adding-sys-types.h.patch b/package/vlc/0005-Fix-build-error-using-uClibc-by-adding-sys-types.h.patch deleted file mode 100644 index a1d7189689..0000000000 --- a/package/vlc/0005-Fix-build-error-using-uClibc-by-adding-sys-types.h.patch +++ /dev/null @@ -1,44 +0,0 @@ -From bbb15b9cbf9353423619f2c40abdf95d861e66ba Mon Sep 17 00:00:00 2001 -From: Bernd Kuhls -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 -[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 /* for ssize_t */ -+ - # ifdef __cplusplus - extern "C" { - # endif --- -2.14.4 - diff --git a/package/vlc/0006-Don-t-assume-strerror_l-is-available.patch b/package/vlc/0006-Don-t-assume-strerror_l-is-available.patch deleted file mode 100644 index cd839b7379..0000000000 --- a/package/vlc/0006-Don-t-assume-strerror_l-is-available.patch +++ /dev/null @@ -1,58 +0,0 @@ -From 0435cf37308652af1cf244b6429e919fa7ffaa95 Mon Sep 17 00:00:00 2001 -From: Bernd Kuhls -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 ---- - 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 - diff --git a/package/vlc/0006-posix-remove-ancient-run-time-fallback-to-real-time-.patch b/package/vlc/0006-posix-remove-ancient-run-time-fallback-to-real-time-.patch new file mode 100644 index 0000000000..4fc639e222 --- /dev/null +++ b/package/vlc/0006-posix-remove-ancient-run-time-fallback-to-real-time-.patch @@ -0,0 +1,187 @@ +From 5d561e1e2dcde3c9fca4d925f12447009d0d4a4c Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?R=C3=A9mi=20Denis-Courmont?= +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 +--- + 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 + #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 /* 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 + diff --git a/package/vlc/0007-Add-support-for-freerdp2.patch b/package/vlc/0007-Add-support-for-freerdp2.patch new file mode 100644 index 0000000000..75f095545b --- /dev/null +++ b/package/vlc/0007-Add-support-for-freerdp2.patch @@ -0,0 +1,150 @@ +From 3780bbb20bf35aa8f21ac672da3f0c5f408468e9 Mon Sep 17 00:00:00 2001 +From: Bernd Kuhls +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 +--- + 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 + #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 + #ifdef HAVE_POLL + # include +@@ -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 + diff --git a/package/vlc/0007-posix-remove-ancient-run-time-fallback-to-real-time-.patch b/package/vlc/0007-posix-remove-ancient-run-time-fallback-to-real-time-.patch deleted file mode 100644 index 4fc639e222..0000000000 --- a/package/vlc/0007-posix-remove-ancient-run-time-fallback-to-real-time-.patch +++ /dev/null @@ -1,187 +0,0 @@ -From 5d561e1e2dcde3c9fca4d925f12447009d0d4a4c Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?R=C3=A9mi=20Denis-Courmont?= -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 ---- - 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 - #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 /* 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 - diff --git a/package/vlc/0008-Add-support-for-freerdp2.patch b/package/vlc/0008-Add-support-for-freerdp2.patch deleted file mode 100644 index 75f095545b..0000000000 --- a/package/vlc/0008-Add-support-for-freerdp2.patch +++ /dev/null @@ -1,150 +0,0 @@ -From 3780bbb20bf35aa8f21ac672da3f0c5f408468e9 Mon Sep 17 00:00:00 2001 -From: Bernd Kuhls -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 ---- - 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 - #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 - #ifdef HAVE_POLL - # include -@@ -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 - diff --git a/package/vlc/0008-configure.ac-also-use-AC_PATH_PROG-to-check-for-wayl.patch b/package/vlc/0008-configure.ac-also-use-AC_PATH_PROG-to-check-for-wayl.patch new file mode 100644 index 0000000000..2b74fe0d39 --- /dev/null +++ b/package/vlc/0008-configure.ac-also-use-AC_PATH_PROG-to-check-for-wayl.patch @@ -0,0 +1,50 @@ +From 27635f902831fac898586f1f3dc98369f12582c9 Mon Sep 17 00:00:00 2001 +From: Bernd Kuhls +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 +--- + 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 + diff --git a/package/vlc/0009-configure.ac-also-use-AC_PATH_PROG-to-check-for-wayl.patch b/package/vlc/0009-configure.ac-also-use-AC_PATH_PROG-to-check-for-wayl.patch deleted file mode 100644 index 2b74fe0d39..0000000000 --- a/package/vlc/0009-configure.ac-also-use-AC_PATH_PROG-to-check-for-wayl.patch +++ /dev/null @@ -1,50 +0,0 @@ -From 27635f902831fac898586f1f3dc98369f12582c9 Mon Sep 17 00:00:00 2001 -From: Bernd Kuhls -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 ---- - 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 - diff --git a/package/vlc/0009-modules-video_filter-opencv_example.cpp-fix-build-wi.patch b/package/vlc/0009-modules-video_filter-opencv_example.cpp-fix-build-wi.patch new file mode 100644 index 0000000000..952f9fdf51 --- /dev/null +++ b/package/vlc/0009-modules-video_filter-opencv_example.cpp-fix-build-wi.patch @@ -0,0 +1,42 @@ +From 57b1e723b73da4c8d42c20d4e28040ec4c0edd85 Mon Sep 17 00:00:00 2001 +From: Fabrice Fontaine +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)0, (double)0, (double)0, (double)0)' from 'cv::Scalar' {aka 'cv::Scalar_'} 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 +[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 + diff --git a/package/vlc/0010-modules-video_filter-opencv_example.cpp-fix-build-wi.patch b/package/vlc/0010-modules-video_filter-opencv_example.cpp-fix-build-wi.patch deleted file mode 100644 index 952f9fdf51..0000000000 --- a/package/vlc/0010-modules-video_filter-opencv_example.cpp-fix-build-wi.patch +++ /dev/null @@ -1,42 +0,0 @@ -From 57b1e723b73da4c8d42c20d4e28040ec4c0edd85 Mon Sep 17 00:00:00 2001 -From: Fabrice Fontaine -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)0, (double)0, (double)0, (double)0)' from 'cv::Scalar' {aka 'cv::Scalar_'} 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 -[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 - diff --git a/package/vlc/vlc.hash b/package/vlc/vlc.hash index f404cbf335..396c3a2ab1 100644 --- a/package/vlc/vlc.hash +++ b/package/vlc/vlc.hash @@ -1,7 +1,7 @@ -# 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 diff --git a/package/vlc/vlc.mk b/package/vlc/vlc.mk index 020c37aa5d..c1e190099e 100644 --- a/package/vlc/vlc.mk +++ b/package/vlc/vlc.mk @@ -4,7 +4,7 @@ # ################################################################################ -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+