commit:     0e8a96e9d650485f3323e689edfe371cc11688f6
Author:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Mon Dec 25 17:06:29 2017 +0000
Commit:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Mon Dec 25 17:42:07 2017 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=0e8a96e9

media-video/vlc: Fix build with >=net-misc/freerdp-2.0.0

Bug: https://bugs.gentoo.org/590164
Package-Manager: Portage-2.3.19, Repoman-2.3.6

 media-video/vlc/files/vlc-2.2.8-freerdp-2.patch    | 131 +++++++++++++++++++++
 .../{vlc-2.2.9999.ebuild => vlc-2.2.8-r1.ebuild}   |   7 +-
 media-video/vlc/vlc-2.2.9999.ebuild                |   5 +-
 media-video/vlc/vlc-3.0.9999.ebuild                |  10 +-
 media-video/vlc/vlc-9999.ebuild                    |  10 +-
 5 files changed, 148 insertions(+), 15 deletions(-)

diff --git a/media-video/vlc/files/vlc-2.2.8-freerdp-2.patch 
b/media-video/vlc/files/vlc-2.2.8-freerdp-2.patch
new file mode 100644
index 00000000000..5cee1336505
--- /dev/null
+++ b/media-video/vlc/files/vlc-2.2.8-freerdp-2.patch
@@ -0,0 +1,131 @@
+--- a/configure.ac
++++ b/configure.ac
+@@ -1957,7 +1957,7 @@ PKG_ENABLE_MODULES_VLC([VNC], [vnc], [li
+ 
+ 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
+--- a/modules/access/rdp.c     2017-12-25 17:45:32.964429170 +0100
++++ b/modules/access/rdp.c     2017-12-25 17:53:15.114093670 +0100
+@@ -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>
+@@ -140,6 +128,7 @@
+     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 )
+     {
+@@ -149,19 +138,23 @@
+ 
+     /* 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;
+     es_format_Init( &fmt, VIDEO_ES, i_chroma );
+ 
+@@ -172,7 +165,7 @@
+     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 );
+@@ -233,28 +226,19 @@
+     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;
+@@ -428,10 +412,6 @@
+     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 )
+     {
+@@ -506,9 +486,6 @@
+ 
+     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 );

diff --git a/media-video/vlc/vlc-2.2.9999.ebuild 
b/media-video/vlc/vlc-2.2.8-r1.ebuild
similarity index 99%
copy from media-video/vlc/vlc-2.2.9999.ebuild
copy to media-video/vlc/vlc-2.2.8-r1.ebuild
index f36f6cfefe2..fc781d24d8f 100644
--- a/media-video/vlc/vlc-2.2.9999.ebuild
+++ b/media-video/vlc/vlc-2.2.8-r1.ebuild
@@ -133,7 +133,7 @@ RDEPEND="
        projectm? ( media-libs/libprojectm:0 media-fonts/dejavu:0 )
        pulseaudio? ( >=media-sound/pulseaudio-1:0 )
        qt5? ( dev-qt/qtcore:5 dev-qt/qtgui:5 dev-qt/qtwidgets:5 
dev-qt/qtx11extras:5 )
-       rdp? ( =net-misc/freerdp-1*:0=[client] )
+       rdp? ( >=net-misc/freerdp-2.0.0_rc0:0=[client] )
        samba? ( >=net-fs/samba-4.0.0:0[client,-debug(-)] )
        schroedinger? ( >=media-libs/schroedinger-1.0.10:0 )
        sdl? ( >=media-libs/libsdl-1.2.10:0
@@ -213,6 +213,9 @@ PATCHES=(
        "${FILESDIR}"/${PN}-2.2.4-libav-11.7.patch
 
        "${FILESDIR}"/${P}-libupnp-compat.patch
+
+       # Bug 590164
+       "${FILESDIR}"/${P}-freerdp-2.patch
 )
 
 DOCS=( AUTHORS THANKS NEWS README doc/fortunes.txt doc/intf-vcd.txt )
@@ -222,7 +225,7 @@ S="${WORKDIR}/${MY_P}"
 src_prepare() {
        default
 
-       has_version '>=net-libs/libupnp-1.8.0' && eapply 
"${FILESDIR}"/${PN}-2.2.8-libupnp-slot-1.8.patch
+       has_version '>=net-libs/libupnp-1.8.0' && eapply 
"${FILESDIR}"/${P}-libupnp-slot-1.8.patch
 
        # Bootstrap when we are on a git checkout.
        if [[ ${PV} = *9999 ]] ; then

diff --git a/media-video/vlc/vlc-2.2.9999.ebuild 
b/media-video/vlc/vlc-2.2.9999.ebuild
index f36f6cfefe2..ddbc6e4fd4a 100644
--- a/media-video/vlc/vlc-2.2.9999.ebuild
+++ b/media-video/vlc/vlc-2.2.9999.ebuild
@@ -133,7 +133,7 @@ RDEPEND="
        projectm? ( media-libs/libprojectm:0 media-fonts/dejavu:0 )
        pulseaudio? ( >=media-sound/pulseaudio-1:0 )
        qt5? ( dev-qt/qtcore:5 dev-qt/qtgui:5 dev-qt/qtwidgets:5 
dev-qt/qtx11extras:5 )
-       rdp? ( =net-misc/freerdp-1*:0=[client] )
+       rdp? ( >=net-misc/freerdp-2.0.0_rc0:0=[client] )
        samba? ( >=net-fs/samba-4.0.0:0[client,-debug(-)] )
        schroedinger? ( >=media-libs/schroedinger-1.0.10:0 )
        sdl? ( >=media-libs/libsdl-1.2.10:0
@@ -213,6 +213,9 @@ PATCHES=(
        "${FILESDIR}"/${PN}-2.2.4-libav-11.7.patch
 
        "${FILESDIR}"/${P}-libupnp-compat.patch
+
+       # Bug 590164
+       "${FILESDIR}"/${PN}-2.2.8-freerdp-2.patch
 )
 
 DOCS=( AUTHORS THANKS NEWS README doc/fortunes.txt doc/intf-vcd.txt )

diff --git a/media-video/vlc/vlc-3.0.9999.ebuild 
b/media-video/vlc/vlc-3.0.9999.ebuild
index a425abcdf05..e235fc8b947 100644
--- a/media-video/vlc/vlc-3.0.9999.ebuild
+++ b/media-video/vlc/vlc-3.0.9999.ebuild
@@ -165,7 +165,7 @@ RDEPEND="
                dev-qt/qtwidgets:5
                X? ( dev-qt/qtx11extras:5 )
        )
-       rdp? ( =net-misc/freerdp-1*:0=[client] )
+       rdp? ( >=net-misc/freerdp-2.0.0_rc0:0=[client] )
        samba? ( >=net-fs/samba-4.0.0:0[client,-debug(-)] )
        schroedinger? ( >=media-libs/schroedinger-1.0.10:0 )
        sdl-image? ( >=media-libs/sdl-image-1.2.10:0 )
@@ -237,11 +237,9 @@ DEPEND="${RDEPEND}
 "
 
 PATCHES=(
-       # Fix build system mistake.
-       "${FILESDIR}"/${PN}-2.1.0-fix-libtremor-libs.patch
-
-       # Bug #593460
-       "${FILESDIR}"/${PN}-2.2.4-libav-11.7.patch
+       "${FILESDIR}"/${PN}-2.1.0-fix-libtremor-libs.patch # build system
+       "${FILESDIR}"/${PN}-2.2.4-libav-11.7.patch # bug #593460
+       "${FILESDIR}"/${PN}-2.2.8-freerdp-2.patch # bug 590164
 )
 
 DOCS=( AUTHORS THANKS NEWS README doc/fortunes.txt )

diff --git a/media-video/vlc/vlc-9999.ebuild b/media-video/vlc/vlc-9999.ebuild
index a425abcdf05..e235fc8b947 100644
--- a/media-video/vlc/vlc-9999.ebuild
+++ b/media-video/vlc/vlc-9999.ebuild
@@ -165,7 +165,7 @@ RDEPEND="
                dev-qt/qtwidgets:5
                X? ( dev-qt/qtx11extras:5 )
        )
-       rdp? ( =net-misc/freerdp-1*:0=[client] )
+       rdp? ( >=net-misc/freerdp-2.0.0_rc0:0=[client] )
        samba? ( >=net-fs/samba-4.0.0:0[client,-debug(-)] )
        schroedinger? ( >=media-libs/schroedinger-1.0.10:0 )
        sdl-image? ( >=media-libs/sdl-image-1.2.10:0 )
@@ -237,11 +237,9 @@ DEPEND="${RDEPEND}
 "
 
 PATCHES=(
-       # Fix build system mistake.
-       "${FILESDIR}"/${PN}-2.1.0-fix-libtremor-libs.patch
-
-       # Bug #593460
-       "${FILESDIR}"/${PN}-2.2.4-libav-11.7.patch
+       "${FILESDIR}"/${PN}-2.1.0-fix-libtremor-libs.patch # build system
+       "${FILESDIR}"/${PN}-2.2.4-libav-11.7.patch # bug #593460
+       "${FILESDIR}"/${PN}-2.2.8-freerdp-2.patch # bug 590164
 )
 
 DOCS=( AUTHORS THANKS NEWS README doc/fortunes.txt )

Reply via email to