commit:     c5fca1c68a374712eb2a6b2fde6807c63b6a5f63
Author:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
AuthorDate: Wed Jan 25 01:16:56 2017 +0000
Commit:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
CommitDate: Wed Jan 25 01:17:57 2017 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c5fca1c6

x11-drivers/xf86-video-virtualbox: Fixed build with >=x11-base/xorg-server-1.19

This closes Gentoo bug #602784.

Package-Manager: Portage-2.3.3, Repoman-2.3.1

 .../xf86-video-virtualbox-5.1.10-xorg119.patch     | 82 ++++++++++++++++++++++
 .../xf86-video-virtualbox-5.1.14.ebuild            |  3 +
 2 files changed, 85 insertions(+)

diff --git 
a/x11-drivers/xf86-video-virtualbox/files/xf86-video-virtualbox-5.1.10-xorg119.patch
 
b/x11-drivers/xf86-video-virtualbox/files/xf86-video-virtualbox-5.1.10-xorg119.patch
new file mode 100644
index 00000000..26958fe
--- /dev/null
+++ 
b/x11-drivers/xf86-video-virtualbox/files/xf86-video-virtualbox-5.1.10-xorg119.patch
@@ -0,0 +1,82 @@
+Fix from opensuse:
+https://build.opensuse.org/package/view_file/Virtualization/virtualbox/Fix_for_server_1.19.patch
+
+https://bugs.gentoo.org/602784
+
+Index: VirtualBox-5.1.10/src/VBox/Additions/x11/vboxvideo/vboxvideo.h
+===================================================================
+--- VirtualBox-5.1.10.orig/src/VBox/Additions/x11/vboxvideo/vboxvideo.h
++++ VirtualBox-5.1.10/src/VBox/Additions/x11/vboxvideo/vboxvideo.h
+@@ -52,6 +52,10 @@
+ #ifndef _VBOXVIDEO_H_
+ #define _VBOXVIDEO_H_
+ 
++#if XORG_VERSION_CURRENT >= 11900000
++#include <bits/sigset.h>
++typedef __sigset_t sigset_t;
++#endif
+ #include <VBox/VBoxVideoGuest.h>
+ #include <VBox/VBoxVideo.h>
+ #include "version-generated.h"
+Index: VirtualBox-5.1.10/src/VBox/Additions/x11/vboxvideo/helpers.c
+===================================================================
+--- VirtualBox-5.1.10.orig/src/VBox/Additions/x11/vboxvideo/helpers.c
++++ VirtualBox-5.1.10/src/VBox/Additions/x11/vboxvideo/helpers.c
+@@ -82,7 +82,11 @@ void vbvxSetIntegerPropery(ScrnInfoPtr p
+ 
+     property_name = MakeAtom(pszName, strlen(pszName), TRUE);
+     VBVXASSERT(property_name != BAD_RESOURCE, ("Failed to set atom \"%s\"\n", 
pszName));
++#if XORG_VERSION_CURRENT >= 11900000
++    dixChangeWindowProperty(serverClient, ROOT_WINDOW(pScrn), property_name, 
XA_INTEGER, 32, PropModeReplace, cData, paData, fSendEvent);
++#else
+     ChangeWindowProperty(ROOT_WINDOW(pScrn), property_name, XA_INTEGER, 32, 
PropModeReplace, cData, paData, fSendEvent);
++#endif
+ }
+ 
+ void vbvxReprobeCursor(ScrnInfoPtr pScrn)
+Index: VirtualBox-5.1.10/src/VBox/Additions/x11/vboxvideo/vboxvideo.c
+===================================================================
+--- VirtualBox-5.1.10.orig/src/VBox/Additions/x11/vboxvideo/vboxvideo.c
++++ VirtualBox-5.1.10/src/VBox/Additions/x11/vboxvideo/vboxvideo.c
+@@ -1229,7 +1229,11 @@ static Bool VBOXScreenInit(ScreenPtr pSc
+     updateGraphicsCapability(pScrn, TRUE);
+ 
+     /* Register block and wake-up handlers for getting new screen size hints. 
*/
++#if XORG_VERSION_CURRENT >= 11900000
++    RegisterBlockAndWakeupHandlers(vboxBlockHandler, 
(ServerWakeupHandlerProcPtr)NoopDDA, (pointer)pScrn);
++#else
+     RegisterBlockAndWakeupHandlers(vboxBlockHandler, 
(WakeupHandlerProcPtr)NoopDDA, (pointer)pScrn);
++#endif
+ 
+     /* software cursor */
+     miDCInitialize(pScreen, xf86GetPointerScreenFuncs());
+Index: VirtualBox-5.1.10/src/VBox/Additions/x11/vboxvideo/pointer.c
+===================================================================
+--- VirtualBox-5.1.10.orig/src/VBox/Additions/x11/vboxvideo/pointer.c
++++ VirtualBox-5.1.10/src/VBox/Additions/x11/vboxvideo/pointer.c
+@@ -15,6 +15,10 @@
+  * hope that it will be useful, but WITHOUT ANY WARRANTY of any kind.
+  */
+ 
++#if XORG_VERSION_CURRENT >= 11900000
++#include <bits/sigset.h>
++typedef __sigset_t sigset_t;
++#endif
+ #include <VBox/VBoxGuestLib.h>
+ 
+ #ifndef PCIACCESS
+Index: VirtualBox-5.1.10/src/VBox/Additions/x11/vboxvideo/edid.c
+===================================================================
+--- VirtualBox-5.1.10.orig/src/VBox/Additions/x11/vboxvideo/edid.c
++++ VirtualBox-5.1.10/src/VBox/Additions/x11/vboxvideo/edid.c
+@@ -44,6 +44,10 @@
+  *    Dave Airlie <[email protected]>
+  */
+ 
++#if XORG_VERSION_CURRENT >= 11900000
++#include <bits/sigset.h>
++typedef __sigset_t sigset_t;
++#endif
+ #include <misc.h>
+ #include <xf86DDC.h>
+ #include <xf86Crtc.h>

diff --git 
a/x11-drivers/xf86-video-virtualbox/xf86-video-virtualbox-5.1.14.ebuild 
b/x11-drivers/xf86-video-virtualbox/xf86-video-virtualbox-5.1.14.ebuild
index 016ff4c..65beeec 100644
--- a/x11-drivers/xf86-video-virtualbox/xf86-video-virtualbox-5.1.14.ebuild
+++ b/x11-drivers/xf86-video-virtualbox/xf86-video-virtualbox-5.1.14.ebuild
@@ -56,6 +56,9 @@ PATCHES=(
 
        # unset useless/problematic checks in configure
        "${FILESDIR}/${PN}-5.0.0_beta3-configure_checks.patch"
+
+       # xorg-1.19 patch from opensuse (bug #602784)
+       "${FILESDIR}/${PN}-5.1.10-xorg119.patch"
 )
 
 QA_TEXTRELS_x86="usr/lib/VBoxOGL.so"

Reply via email to