Author: sergiomb
Update of /cvs/free/rpms/VirtualBox/devel
In directory old02.ovh.rpmfusion.lan:/tmp/cvs-serv21507
Modified Files:
VirtualBox-4.1.20-x113.patch VirtualBox-4.2.0-xorg17.patch
VirtualBox.spec
Log Message:
* Fri Sep 07 2012 Sérgio Basto <sergio(a)serjux.com> - 4.2.0-0.4.RC3
- Also Compile guest drives vboxvideo_drv and vboxmouse_drv with X11 sources from system.
- Fix ABI/API breakages in X11 1.13.
VirtualBox-4.1.20-x113.patch:
vboxvideo.c | 55 +++++++++++++++++++++++--------------------------------
vboxvideo.h | 2 +-
vboxvideo_dri.c | 4 ++--
3 files changed, 26 insertions(+), 35 deletions(-)
Index: VirtualBox-4.1.20-x113.patch
===================================================================
RCS file: /cvs/free/rpms/VirtualBox/devel/VirtualBox-4.1.20-x113.patch,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- VirtualBox-4.1.20-x113.patch 3 Sep 2012 03:30:25 -0000 1.1
+++ VirtualBox-4.1.20-x113.patch 7 Sep 2012 03:03:37 -0000 1.2
@@ -1,7 +1,78 @@
X.org 1.13 patch
---- a/src/VBox/Additions/x11/vboxvideo/vboxvideo.c.orig 2012-09-02 05:45:06.134994216
+0100
-+++ b/src/VBox/Additions/x11/vboxvideo/vboxvideo.c 2012-09-02 05:45:20.136137244 +0100
-@@ -709,7 +709,7 @@ vboxEnableDisableFBAccess(int scrnIndex,
+Reference:
+http://www.mail-archive.com/xorg-devel@lists.x.org/msg30282.html
+ [PATCH 01/19] xserver: remove index from CloseScreen (API/ABI breakage) Dave Airlie
+ [PATCH 02/19] xserver: convert block/wakeup handlers to passing ScreenPtr (ABI/API
break) Dave
+ Airlie
+ [PATCH 04/19] xf86: modify FreeScreen callback to take pScrn instead of index. (ABI/API)
Dave
+ Airlie
+ [PATCH 03/19] xf86: change EnterVT/LeaveVT to take a ScrnInfoPtr (ABI/API break) Dave
Airlie
+ [PATCH 07/19] xf86: migrate ValidMode callback to ScrnInfoPtr (ABI/API) Dave Airlie
+ [PATCH 05/19] xf86: move AdjustFrame to passing ScrnInfoPtr (ABI/API) Dave Airlie
+ [PATCH 06/19] xf86: migrate SwitchMode to taking ScrnInfoPtr (ABI/API) Dave Airlie
+ etc...
+--- VirtualBox-4.2.0_RC3/src/VBox/Additions/x11/vboxvideo/vboxvideo_dri.c.x113
2012-08-29 20:10:30.000000000 +0100
++++ VirtualBox-4.2.0_RC3/src/VBox/Additions/x11/vboxvideo/vboxvideo_dri.c 2012-09-06
23:18:39.671510033 +0100
+@@ -156,11 +156,11 @@ VBOXDoBlockHandler(int screenNum, pointe
+ }
+ #endif
+
+-Bool VBOXDRIScreenInit(int scrnIndex, ScreenPtr pScreen, VBOXPtr pVBox)
++Bool VBOXDRIScreenInit(ScreenPtr pScreen, VBOXPtr pVBox)
+ {
+ DRIInfoPtr pDRIInfo = NULL;
+ Bool rc = TRUE;
+- ScrnInfoPtr pScrn = xf86Screens[scrnIndex];
++ ScrnInfoPtr pScrn = xf86ScreenToScrn(pScreen);
+
+ TRACE_ENTRY();
+ pVBox->drmFD = -1;
+--- VirtualBox-4.2.0_RC3/src/VBox/Additions/x11/vboxvideo/vboxvideo.h.x113 2012-09-06
23:42:36.010456357 +0100
++++ VirtualBox-4.2.0_RC3/src/VBox/Additions/x11/vboxvideo/vboxvideo.h 2012-09-06
23:42:49.903562273 +0100
+@@ -234,7 +234,7 @@ extern void vboxAddModes(ScrnInfoPtr pSc
+ uint32_t cyInit);
+
+ /* DRI stuff */
+-extern Bool VBOXDRIScreenInit(int scrnIndex, ScreenPtr pScreen, VBOXPtr pVBox);
++extern Bool VBOXDRIScreenInit(ScreenPtr pScreen, VBOXPtr pVBox);
+ extern Bool VBOXDRIFinishScreenInit(ScreenPtr pScreen);
+ extern void VBOXDRIUpdateStride(ScrnInfoPtr pScrn, VBOXPtr pVBox);
+ extern void VBOXDRICloseScreen(ScreenPtr pScreen, VBOXPtr pVBox);
+--- VirtualBox-4.2.0_RC3/src/VBox/Additions/x11/vboxvideo/vboxvideo.c.x113 2012-08-29
20:10:30.000000000 +0100
++++ VirtualBox-4.2.0_RC3/src/VBox/Additions/x11/vboxvideo/vboxvideo.c 2012-09-06
23:56:40.481894812 +0100
+@@ -108,15 +108,15 @@ static Bool VBOXPciProbe(DriverPtr drv,
+ struct pci_device *dev, intptr_t match_data);
+ #endif
+ static Bool VBOXPreInit(ScrnInfoPtr pScrn, int flags);
+-static Bool VBOXScreenInit(int Index, ScreenPtr pScreen, int argc,
++static Bool VBOXScreenInit(ScreenPtr pScrn, int argc,
+ char **argv);
+-static Bool VBOXEnterVT(int scrnIndex, int flags);
+-static void VBOXLeaveVT(int scrnIndex, int flags);
++static Bool VBOXEnterVT(ScrnInfoPtr pScrn, int flags);
++static void VBOXLeaveVT(ScrnInfoPtr pScrn, int flags);
+ static Bool VBOXCloseScreen(int scrnIndex, ScreenPtr pScreen);
+ static Bool VBOXSaveScreen(ScreenPtr pScreen, int mode);
+-static Bool VBOXSwitchMode(int scrnIndex, DisplayModePtr pMode, int flags);
+-static void VBOXAdjustFrame(int scrnIndex, int x, int y, int flags);
+-static void VBOXFreeScreen(int scrnIndex, int flags);
++static Bool VBOXSwitchMode(ScrnInfoPtr pScrn, DisplayModePtr pMode, int flags);
++static void VBOXAdjustFrame(ScrnInfoPtr pScrn, int x, int y, int flags);
++static void VBOXFreeScreen(ScrnInfoPtr pScrn, int flags);
+ static void VBOXDisplayPowerManagementSet(ScrnInfoPtr pScrn, int mode,
+ int flags);
+
+@@ -700,16 +700,14 @@ VBOXProbe(DriverPtr drv, int flags)
+ * restore it or not afterwards.
+ */
+ static void
+-vboxEnableDisableFBAccess(int scrnIndex, Bool enable)
++vboxEnableDisableFBAccess(ScrnInfoPtr pScrn, Bool enable)
+ {
+- ScrnInfoPtr pScrn = xf86Screens[scrnIndex];
+-
+ VBOXPtr pVBox = VBOXGetRec(pScrn);
+
TRACE_LOG("enable=%s\n", enable ? "TRUE" : "FALSE");
VBOXSetRec(pScrn);
pVBox->accessEnabled = enable;
@@ -10,7 +81,77 @@
TRACE_EXIT();
}
-@@ -1198,7 +1198,7 @@ VBOXCloseScreen(int scrnIndex, ScreenPtr
+@@ -936,9 +934,9 @@ vboxLoadPalette(ScrnInfoPtr pScrn, int n
+ * End QUOTE.
+ */
+ static Bool
+-VBOXScreenInit(int scrnIndex, ScreenPtr pScreen, int argc, char **argv)
++VBOXScreenInit(ScreenPtr pScreen, int argc, char **argv)
+ {
+- ScrnInfoPtr pScrn = xf86Screens[scrnIndex];
++ ScrnInfoPtr pScrn = xf86ScreenToScrn(pScreen);
+ VBOXPtr pVBox = VBOXGetRec(pScrn);
+ VisualPtr visual;
+ unsigned flags;
+@@ -960,7 +958,7 @@ VBOXScreenInit(int scrnIndex, ScreenPtr
+ return (FALSE);
+
+ #ifdef VBOX_DRI
+- pVBox->useDRI = VBOXDRIScreenInit(scrnIndex, pScreen, pVBox);
++ pVBox->useDRI = VBOXDRIScreenInit(pScreen, pVBox);
+ #endif
+
+ if (!fbScreenInit(pScreen, pVBox->base,
+@@ -1113,7 +1111,7 @@ VBOXScreenInit(int scrnIndex, ScreenPtr
+ xf86ShowUnusedOptions(pScrn->scrnIndex, pScrn->options);
+
+ if (vbox_cursor_init(pScreen) != TRUE)
+- xf86DrvMsg(scrnIndex, X_ERROR,
++ xf86DrvMsg(pScrn->scrnIndex, X_ERROR,
+ "Unable to start the VirtualBox mouse pointer integration with
the host system.\n");
+
+ #ifdef VBOX_DRI
+@@ -1124,9 +1122,8 @@ VBOXScreenInit(int scrnIndex, ScreenPtr
+ }
+
+ static Bool
+-VBOXEnterVT(int scrnIndex, int flags)
++VBOXEnterVT(ScrnInfoPtr pScrn, int flags)
+ {
+- ScrnInfoPtr pScrn = xf86Screens[scrnIndex];
+ VBOXPtr pVBox = VBOXGetRec(pScrn);
+
+ TRACE_ENTRY();
+@@ -1136,7 +1133,7 @@ VBOXEnterVT(int scrnIndex, int flags)
+ pVBox->vtSwitch = FALSE;
+ #ifdef VBOX_DRI
+ if (pVBox->useDRI)
+- DRIUnlock(screenInfo.screens[scrnIndex]);
++ DRIUnlock(xf86ScrnToScreen(pScrn));
+ #endif
+ #ifdef VBOXVIDEO_13
+ if (!xf86SetDesiredModes(pScrn))
+@@ -1151,9 +1148,8 @@ VBOXEnterVT(int scrnIndex, int flags)
+ }
+
+ static void
+-VBOXLeaveVT(int scrnIndex, int flags)
++VBOXLeaveVT(ScrnInfoPtr pScrn, int flags)
+ {
+- ScrnInfoPtr pScrn = xf86Screens[scrnIndex];
+ VBOXPtr pVBox = VBOXGetRec(pScrn);
+
+ TRACE_ENTRY();
+@@ -1165,7 +1161,7 @@ VBOXLeaveVT(int scrnIndex, int flags)
+ vboxDisableGraphicsCap(pVBox);
+ #ifdef VBOX_DRI
+ if (pVBox->useDRI)
+- DRILock(screenInfo.screens[scrnIndex], 0);
++ DRILock(xf86ScrnToScreen(pScrn), 0);
+ #endif
+ TRACE_EXIT();
+ }
+@@ -1198,23 +1194,21 @@ VBOXCloseScreen(int scrnIndex, ScreenPtr
/* Remove our observer functions from the X server call chains. */
pScrn->EnableDisableFBAccess = pVBox->EnableDisableFBAccess;
pScreen->CloseScreen = pVBox->CloseScreen;
@@ -19,7 +160,16 @@
}
static Bool
-@@ -1214,7 +1214,7 @@ VBOXSwitchMode(int scrnIndex, DisplayMod
+-VBOXSwitchMode(int scrnIndex, DisplayModePtr pMode, int flags)
++VBOXSwitchMode(ScrnInfoPtr pScrn, DisplayModePtr pMode, int flags)
+ {
+- ScrnInfoPtr pScrn;
+ VBOXPtr pVBox;
+ Bool rc;
+
+ TRACE_LOG("HDisplay=%d, VDisplay=%d\n", pMode->HDisplay,
pMode->VDisplay);
+- pScrn = xf86Screens[scrnIndex]; /* Why does X have three ways of referring to the
screen? */
+ pVBox = VBOXGetRec(pScrn);
/* We want to disable access to the framebuffer before switching mode.
* After doing the switch, we allow access if it was allowed before. */
if (pVBox->accessEnabled)
@@ -28,7 +178,7 @@
#ifdef VBOXVIDEO_13
rc = xf86SetSingleMode(pScrn, pMode, 0);
#else
-@@ -1231,7 +1231,7 @@ VBOXSwitchMode(int scrnIndex, DisplayMod
+@@ -1231,16 +1225,15 @@ VBOXSwitchMode(int scrnIndex, DisplayMod
pScrn->bitsPerPixel);
#endif
if (pVBox->accessEnabled)
@@ -37,118 +187,26 @@
TRACE_LOG("returning %s\n", rc ? "TRUE" : "FALSE");
return rc;
}
---- a/Config.kmk.x113 2012-09-02 17:55:59.642186269 +0100
-+++ b/Config.kmk 2012-09-02 18:30:18.743236550 +0100
-@@ -546,9 +546,9 @@ VBOX_WITH_MULTIVERSION_PYTHON ?= 1
- # Enable the kchmviewer.
- VBOX_WITH_KCHMVIEWER = 1
- # Build the testsuite.
--VBOX_WITH_TESTSUITE = 1
-+VBOX_WITH_TESTSUITE = 0
- # Build the testcases.
--VBOX_WITH_TESTCASES = 1
-+VBOX_WITH_TESTCASES = 0
- # Enables the ffmpeg module for recording test runs.
- # TODO: Enable this for normal build server builds?
- #if1of ($(KBUILD_TARGET), linux)
-@@ -4977,30 +4977,30 @@ endif
- # Guest additions libraries (all static).
- # The _MINI and _SHARED are both compiled as PIC and intended for linking into a
.so/.dll/.dylib.
- #
--VBOX_LIB_IPRT_GUEST_R3 =
$(VBOX_PATH_ADDITIONS_LIB)/RuntimeGuestR3$(VBOX_SUFF_LIB)
--VBOX_LIB_IPRT_GUEST_R3_MINI =
$(VBOX_PATH_ADDITIONS_LIB)/RuntimeGuestR3Mini$(VBOX_SUFF_LIB)
--VBOX_LIB_IPRT_GUEST_R3_SHARED =
$(VBOX_PATH_ADDITIONS_LIB)/RuntimeGuestR3Shared$(VBOX_SUFF_LIB)
--VBOX_LIB_IPRT_GUEST_R0 =
$(VBOX_PATH_ADDITIONS_LIB)/RuntimeGuestR0$(VBOX_SUFF_LIB)
-+VBOX_LIB_IPRT_GUEST_R3 =
$(VBOX_PATH_ADDITIONS_LIB)/RuntimeGuestR3$(VBOX_SUFF_LIB)
-+VBOX_LIB_IPRT_GUEST_R3_MINI =
$(VBOX_PATH_ADDITIONS_LIB)/RuntimeGuestR3Mini$(VBOX_SUFF_LIB)
-+VBOX_LIB_IPRT_GUEST_R3_SHARED =
$(VBOX_PATH_ADDITIONS_LIB)/RuntimeGuestR3Shared$(VBOX_SUFF_LIB)
-+VBOX_LIB_IPRT_GUEST_R0 =
$(VBOX_PATH_ADDITIONS_LIB)/RuntimeGuestR0$(VBOX_SUFF_DLL)
- ifeq ($(KBUILD_TARGET_ARCH),x86)
-- VBOX_LIB_IPRT_GUEST_R0_NT4 =
$(VBOX_PATH_ADDITIONS_LIB)/RuntimeGuestR0NT4$(VBOX_SUFF_LIB)
-+ VBOX_LIB_IPRT_GUEST_R0_NT4 =
$(VBOX_PATH_ADDITIONS_LIB)/RuntimeGuestR0NT4$(VBOX_SUFF_DLL)
- else
- VBOX_LIB_IPRT_GUEST_R0_NT4 = $(VBOX_LIB_IPRT_GUEST_R0)
- endif
--VBOX_LIB_VBGL_R3 =
$(VBOX_PATH_ADDITIONS_LIB)/VBoxGuestR3Lib$(VBOX_SUFF_LIB)
--VBOX_LIB_VBGL_R3_XFREE86 =
$(VBOX_PATH_ADDITIONS_LIB)/VBoxGuestR3LibXFree86$(VBOX_SUFF_LIB)
--VBOX_LIB_VBGL_R3_SHARED =
$(VBOX_PATH_ADDITIONS_LIB)/VBoxGuestR3LibShared$(VBOX_SUFF_LIB)
--VBOX_LIB_VBGL_R0BASE =
$(VBOX_PATH_ADDITIONS_LIB)/VBoxGuestR0LibBase$(VBOX_SUFF_LIB)
--VBOX_LIB_VBGL_R0 =
$(VBOX_PATH_ADDITIONS_LIB)/VBoxGuestR0Lib$(VBOX_SUFF_LIB)
-+VBOX_LIB_VBGL_R3 =
$(VBOX_PATH_ADDITIONS_LIB)/VBoxGuestR3Lib$(VBOX_SUFF_LIB)
-+VBOX_LIB_VBGL_R3_XFREE86 =
$(VBOX_PATH_ADDITIONS_LIB)/VBoxGuestR3LibXFree86$(VBOX_SUFF_DLL)
-+VBOX_LIB_VBGL_R3_SHARED =
$(VBOX_PATH_ADDITIONS_LIB)/VBoxGuestR3LibShared$(VBOX_SUFF_LIB)
-+VBOX_LIB_VBGL_R0BASE =
$(VBOX_PATH_ADDITIONS_LIB)/VBoxGuestR0LibBase$(VBOX_SUFF_DLL)
-+VBOX_LIB_VBGL_R0 =
$(VBOX_PATH_ADDITIONS_LIB)/VBoxGuestR0Lib$(VBOX_SUFF_DLL)
- ifeq ($(KBUILD_TARGET),x86)
- VBOX_LIB_IPRT_GUEST_R3_X86 = $(VBOX_LIB_IPRT_GUEST_R3)
- VBOX_LIB_IPRT_GUEST_R3_SHARED_X86 = $(VBOX_LIB_IPRT_GUEST_R3_SHARED)
- VBOX_LIB_VBGL_R3_X86 = $(VBOX_LIB_VBGL_R3)
- VBOX_LIB_VBGL_R3_SHARED_X86 = $(VBOX_LIB_VBGL_R3_SHARED)
- else
-- VBOX_LIB_IPRT_GUEST_R3_X86 =
$(VBOX_PATH_ADDITIONS_LIB)/RuntimeGuestR3-x86$(VBOX_SUFF_LIB)
-- VBOX_LIB_IPRT_GUEST_R3_SHARED_X86 =
$(VBOX_PATH_ADDITIONS_LIB)/RuntimeGuestR3Shared-x86$(VBOX_SUFF_LIB)
-- VBOX_LIB_VBGL_R3_X86 =
$(VBOX_PATH_ADDITIONS_LIB)/VBoxGuestR3Lib-x86$(VBOX_SUFF_LIB)
-- VBOX_LIB_VBGL_R3_SHARED_X86 =
$(VBOX_PATH_ADDITIONS_LIB)/VBoxGuestR3LibShared-x86$(VBOX_SUFF_LIB)
-+ VBOX_LIB_IPRT_GUEST_R3_X86 =
$(VBOX_PATH_ADDITIONS_LIB)/RuntimeGuestR3-x86$(VBOX_SUFF_DLL)
-+ VBOX_LIB_IPRT_GUEST_R3_SHARED_X86 =
$(VBOX_PATH_ADDITIONS_LIB)/RuntimeGuestR3Shared-x86$(VBOX_SUFF_DLL)
-+ VBOX_LIB_VBGL_R3_X86 =
$(VBOX_PATH_ADDITIONS_LIB)/VBoxGuestR3Lib-x86$(VBOX_SUFF_DLL)
-+ VBOX_LIB_VBGL_R3_SHARED_X86 =
$(VBOX_PATH_ADDITIONS_LIB)/VBoxGuestR3LibShared-x86$(VBOX_SUFF_DLL)
- endif
-
-
----
VirtualBox-4.2.0_RC3/src/VBox/HostServices/SharedFolders/testcase/Makefile.kmk.orig 2012-09-02
18:32:05.119324113 +0100
-+++
VirtualBox-4.2.0_RC3/src/VBox/HostServices/SharedFolders/testcase/Makefile.kmk 2012-05-30
11:38:10.000000000 +0100
-@@ -21,7 +21,9 @@ include $(KBUILD_PATH)/subheader.kmk
- #
- # Structure size testcase.
- #
-+ifneq ($(KBUILD_HOST_ARCH),amd64)
- PROGRAMS += tstShflSizes
-+endif
- TESTING += $(tstShflSizes_0_OUTDIR)/tstShflSizes.run
- ifndef VBOX_ONLY_SDK
- ifeq ($(KBUILD_TARGET),$(KBUILD_HOST))
-@@ -44,7 +46,9 @@ ifdef VBOX_WITH_TESTCASES
- #
- # Case conversion testcase.
- #
-+ifneq ($(KBUILD_HOST_ARCH),amd64)
- PROGRAMS += tstShflCase
-+endif
- tstShflCase_TEMPLATE = VBOXR3TSTEXE
- tstShflCase_DEFS = VBOX_WITH_HGCM
- tstShflCase_SOURCES = tstShflCase.cpp
-@@ -56,9 +60,11 @@ tstShflCase_LIBS = $(LIB_RUNTIME)
-
- # As there are differences between the Windows build of the service and others,
- # we do an additional build with RT_OS_WINDOWS defined on non-Windows targets.
-+ifneq ($(KBUILD_HOST_ARCH),amd64)
- PROGRAMS += \
- tstSharedFolderService \
- $(if $(eq $(KBUILD_TARGET),win),,tstSharedFolderService-win)
-+endif
-
- tstSharedFolderService_TEMPLATE = VBOXR3TSTEXE
- tstSharedFolderService_DEFS = VBOX_WITH_HGCM UNITTEST
---- a/src/VBox/Main/Makefile.kmk 2012-08-29 15:13:36.000000000 +0100
-+++ b/src/VBox/Main/Makefile.kmk 2012-09-02 19:09:49.250454117 +0100
-@@ -705,7 +705,7 @@ $$(VBoxC_0_OUTDIR)/VBoxC.rgs: $(VBOX_PAT
- # VBoxCOM - COM Abstraction Layer library
- #
- LIBRARIES += VBoxCOM
--VBoxCOM_TEMPLATE = VBOXMAINLIB
-+VBoxCOM_TEMPLATE = VBOXMAINDLL
- VBoxCOM_INTERMEDIATES = $(VBOX_MAIN_PREREQS)
- VBoxCOM_SOURCES = \
- glue/com.cpp \
---- a/src/VBox/Runtime/Makefile.kmk.testmangle 2012-08-29 15:13:34.000000000 +0100
-+++ b/src/VBox/Runtime/Makefile.kmk 2012-09-02 19:30:41.688859884 +0100
-@@ -211,7 +211,7 @@ endif
- #
- # RuntimeR3 - Static Runtime for Ring-3 executables.
- #
--RuntimeR3_TEMPLATE = VBoxR3Static
-+RuntimeR3_TEMPLATE = VBOXR3DLLNOXCPT
- RuntimeR3_SDKS = VBOX_LIBXML2 VBOX_OPENSSL VBOX_BOOST ## @todo why is BOOST and
XML2 here? r3/xml.cpp is not in this lib...
- RuntimeR3_SDKS.win = $(VBOX_WINPSDK) $(VBOX_WINDDK)
- RuntimeR3_DEFS = IN_RT_R3 IN_SUP_R3 LDR_WITH_NATIVE LDR_WITH_ELF32 LDR_WITH_PE
RT_WITH_VBOX RT_NO_GIP
+
+ static void
+-VBOXAdjustFrame(int scrnIndex, int x, int y, int flags)
++VBOXAdjustFrame(ScrnInfoPtr pScrn, int x, int y, int flags)
+ {
+- VBOXPtr pVBox = VBOXGetRec(xf86Screens[scrnIndex]);
+- ScrnInfoPtr pScrn = xf86Screens[scrnIndex];
++ VBOXPtr pVBox = VBOXGetRec(pScrn);
+
+ TRACE_ENTRY();
+ /* Don't fiddle with the hardware if we are switched
+@@ -1251,10 +1244,8 @@ VBOXAdjustFrame(int scrnIndex, int x, in
+ }
+
+ static void
+-VBOXFreeScreen(int scrnIndex, int flags)
++VBOXFreeScreen(ScrnInfoPtr pScrn, int flags)
+ {
+- ScrnInfoPtr pScrn = xf86Screens[scrnIndex];
+-
+ /* Destroy the VGA hardware record */
+ vgaHWFreeHWRec(pScrn);
+ /* And our private record */
VirtualBox-4.2.0-xorg17.patch:
VirtualBox-4.2.0_RC3/src/VBox/Additions/x11/vboxmouse/Makefile.kmk | 40 +--
VirtualBox-4.2.0_RC3/src/VBox/Additions/x11/vboxmouse/vboxmouse.c | 10
VirtualBox-4.2.0_RC3/src/VBox/Additions/x11/vboxvideo/Makefile.kmk | 108 ++++++----
b/src/VBox/Additions/common/crOpenGL/Makefile.kmk | 14 -
src/VBox/Additions/x11/vboxvideo/testcase/Makefile.kmk | 4
5 files changed, 98 insertions(+), 78 deletions(-)
Index: VirtualBox-4.2.0-xorg17.patch
===================================================================
RCS file: /cvs/free/rpms/VirtualBox/devel/VirtualBox-4.2.0-xorg17.patch,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- VirtualBox-4.2.0-xorg17.patch 3 Sep 2012 03:30:25 -0000 1.1
+++ VirtualBox-4.2.0-xorg17.patch 7 Sep 2012 03:03:37 -0000 1.2
@@ -1,6 +1,6 @@
-Based:
-Description: Build the X.Org driver only for the selected system X Server version.
-Author: Michael Meskes <meskes(a)debian.org>, Felix Geyer <debfx-pkg(a)fobos.de>
+Build the X.Org driver only for the selected system X Server version.
+Author: Sérgio Basto <sergio(a)serjux.com>
+Based on scripts by Michael Meskes <meskes(a)debian.org>, Felix Geyer
<debfx-pkg(a)fobos.de>
diff --git a/src/VBox/Additions/common/crOpenGL/Makefile.kmk
b/src/VBox/Additions/common/crOpenGL/Makefile.kmk
--- a/src/VBox/Additions/common/crOpenGL/Makefile.kmk
@@ -27,9 +27,76 @@
VBoxOGL_DEFS += VBOX_NO_NATIVEGL
endif
---- a/src/VBox/Additions/x11/vboxmouse/Makefile.kmk.xorg17 2012-08-03 13:28:42.000000000
+0100
-+++ b/src/VBox/Additions/x11/vboxmouse/Makefile.kmk 2012-09-02 23:44:33.878251237 +0100
-@@ -57,9 +57,18 @@ if1of ($(KBUILD_TARGET), linux)
+--- a/src/VBox/Additions/x11/vboxvideo/testcase/Makefile.kmk 2012-01-12
19:57:53.762613198 +0000
++++ b/src/VBox/Additions/x11/vboxvideo/testcase/Makefile.kmk 2012-01-12
20:01:17.296596446 +0000
+@@ -36,11 +36,11 @@ endif # !VBOX_ONLY_SDK
+ #
+ tstSetModeXOrg_TEMPLATE = VBOXR3TSTEXE
+ tstSetModeXOrg_CFLAGS += -std=c99
+-tstSetModeXOrg_DEFS = $(filter-out IN_RT_STATIC,$(vboxvideo_drv_15_DEFS)) TESTCASE
++tstSetModeXOrg_DEFS = $(filter-out IN_RT_STATIC,$(vboxvideo_drv_17_DEFS)) TESTCASE
+ tstSetModeXOrg_SOURCES = \
+ tstSetModeXOrg.c \
+ ../setmode.c
+-tstSetModeXOrg_INCS = $(vboxvideo_drv_15_INCS)
++tstSetModeXOrg_INCS = $(vboxvideo_drv_17_INCS)
+
+
+ # generate rules.
+--- VirtualBox-4.2.0_RC3/src/VBox/Additions/x11/vboxmouse/vboxmouse.c.xorg17 2012-09-07
02:38:56.473777159 +0100
++++ VirtualBox-4.2.0_RC3/src/VBox/Additions/x11/vboxmouse/vboxmouse.c 2012-09-07
02:39:11.025882086 +0100
+@@ -52,13 +52,9 @@
+
+ #include <xf86Module.h>
+
+-#ifdef VBOX_GUESTR3XF86MOD
+-# define _X_EXPORT
+-#else
+-# include <errno.h>
+-# include <fcntl.h>
+-# include <unistd.h>
+-#endif
++#include <errno.h>
++#include <fcntl.h>
++#include <unistd.h>
+
+ #include "product-generated.h"
+
+--- VirtualBox-4.2.0_RC3/src/VBox/Additions/x11/vboxmouse/Makefile.kmk.xorg17 2012-08-03
13:28:42.000000000 +0100
++++ VirtualBox-4.2.0_RC3/src/VBox/Additions/x11/vboxmouse/Makefile.kmk 2012-09-07
03:18:17.460463185 +0100
+@@ -30,25 +30,12 @@ if1of ($(KBUILD_TARGET), linux)
+ # This one has to be defined when building server code on systems where
+ # unsigned long is 64bits
+ vboxmouse_drv_DEFS.amd64 += _XSERVER64
+- vboxmouse_drv_DEFS += \
+- _POSIX_C_SOURCE=199309L _POSIX_SOURCE _XOPEN_SOURCE \
+- _BSD_SOURCE _SVID_SOURCE _GNU_SOURCE SHAPE XINPUT XKB LBX XAPPGROUP \
+- XCSECURITY TOGCUP XF86BIGFONT DPMSExtension PIXPRIV PANORAMIX RENDER \
+- GCCUSESGAS AVOID_GLYPHBLT PIXPRIV SINGLEDEPTH XFreeXDGA XvExtension \
+- XFree86LOADER XFree86Server XF86VIDMODE XvMCExtension SMART_SCHEDULE \
+- BUILDDEBUG X_BYTE_ORDER=X_LITTLE_ENDIAN DNDEBUG FUNCPROTO=15 NARROWPROTO \
+- IN_MODULE XFree86Module PNP_MOUSE IN_XF86_MODULE
+- vboxmouse_drv_INCS := \
+- $(VBOX_PATH_X11_XFREE_4_3)/include \
+- $(VBOX_PATH_X11_XFREE_4_3)/include/extensions \
+- $(VBOX_PATH_X11_XFREE_4_3)/include/X11 \
+- $(VBOX_PATH_X11_XFREE_4_3)/programs/Xserver/hw/xfree86 \
+- $(VBOX_PATH_X11_XFREE_4_3)/programs/Xserver/hw/xfree86/common \
+- $(VBOX_PATH_X11_XFREE_4_3)/programs/Xserver/hw/xfree86/os-support \
+- $(VBOX_PATH_X11_XFREE_4_3)/programs/Xserver/hw/xfree86/os-support/bus \
+- $(VBOX_PATH_X11_XFREE_4_3)/programs/Xserver/mi \
+- $(VBOX_PATH_X11_XFREE_4_3)/programs/Xserver/include \
+- $(PATH_SUB_CURRENT)
++vboxmouse_drv_DEFS += XFree86Server IN_MODULE XFree86Module XFree86LOADER XINPUT XORG_7X
\
++ IN_XF86_MODULE DONT_DEFINE_WRAPPERS NO_ANSIC
++vboxmouse_drv_INCS := \
++ /usr/include/x11 \
++ /usr/include/xorg \
++ /usr/include/pixman-1
+ vboxmouse_drv_SOURCES = \
+ vboxmouse.c
+ # Any global symbols in the driver object files will be added to XFree86's
+@@ -57,9 +44,18 @@ if1of ($(KBUILD_TARGET), linux)
vboxmouse_drv_POST_CMDS = \
objcopy --keep-global-symbol vboxmouseModuleData $(out) $(out)-objcopy$$(NLTAB) \
$(MV) -f $(out)-objcopy $(out)
@@ -50,7 +117,7 @@
#
# vboxmouse_drv_70
#
-@@ -391,5 +398,7 @@ endif # neq ($(KBUILD_TARGET),linux)
+@@ -391,5 +387,7 @@ endif # neq ($(KBUILD_TARGET),linux)
# endif # ! VBOX_ONLY_ADDITIONS
endif # VBOX_WITH_TESTCASES
@@ -58,9 +125,92 @@
+
include $(FILE_KBUILD_SUB_FOOTER)
---- a/src/VBox/Additions/x11/vboxvideo/Makefile.kmk.xorg17 2012-05-30 11:39:29.000000000
+0100
-+++ b/src/VBox/Additions/x11/vboxvideo/Makefile.kmk 2012-09-03 00:00:13.988618277 +0100
-@@ -94,6 +94,44 @@ vboxvideo_drv_SOURCES = \
+--- VirtualBox-4.2.0_RC3/src/VBox/Additions/x11/vboxvideo/Makefile.kmk.xorg17 2012-05-30
11:39:29.000000000 +0100
++++ VirtualBox-4.2.0_RC3/src/VBox/Additions/x11/vboxvideo/Makefile.kmk 2012-09-07
03:24:32.187238932 +0100
+@@ -35,45 +35,35 @@ vboxvideo_drv_DEFS.x86 = __i386__
+ # This one has to be defined when building server code on systems where
+ # unsigned long is 64bits
+ vboxvideo_drv_DEFS.amd64 += _XSERVER64
+-vboxvideo_drv_DEFS = \
+- _POSIX_C_SOURCE=199309L _POSIX_SOURCE _XOPEN_SOURCE \
+- _BSD_SOURCE _SVID_SOURCE _GNU_SOURCE SHAPE XINPUT XKB LBX XAPPGROUP \
+- XCSECURITY TOGCUP XF86BIGFONT DPMSExtension PIXPRIV PANORAMIX RENDER \
+- GCCUSESGAS AVOID_GLYPHBLT PIXPRIV SINGLEDEPTH XFreeXDGA XvExtension \
+- XFree86LOADER XFree86Server XF86VIDMODE XvMCExtension SMART_SCHEDULE \
+- BUILDDEBUG X_BYTE_ORDER=X_LITTLE_ENDIAN DNDEBUG FUNCPROTO=15 NARROWPROTO \
+- IN_MODULE XFree86Module IN_XF86_MODULE IN_RT_STATIC
+-vboxvideo_drv_DEFS += memset=xf86memset memcpy=xf86memcpy
++vboxvideo_drv_DEFS := XFree86Server IN_MODULE XFree86Module XFree86LOADER IN_XF86_MODULE
XORG_7X RENDER=1 \
++ IN_RT_STATIC VBOXVIDEO_13 NO_ANSIC PCIACCESS VBOX_NO_LOW_COLOUR VBOX_DRI
+ vboxvideo_drv_INCS = \
+- $(VBOX_PATH_X11_XFREE_4_3)/include \
+- $(VBOX_PATH_X11_XFREE_4_3)/include/X11 \
+- $(VBOX_PATH_X11_XFREE_4_3)/include/X11/extensions \
+- $(VBOX_PATH_X11_XFREE_4_3)/include/extensions \
+- $(VBOX_PATH_X11_XFREE_4_3)/include/fonts \
+- $(VBOX_PATH_X11_XFREE_4_3)/programs/Xserver/afb \
+- $(VBOX_PATH_X11_XFREE_4_3)/programs/Xserver/include \
+- $(VBOX_PATH_X11_XFREE_4_3)/programs/Xserver/fb \
+- $(VBOX_PATH_X11_XFREE_4_3)/programs/Xserver/hw/xfree86 \
+- $(VBOX_PATH_X11_XFREE_4_3)/programs/Xserver/hw/xfree86/common \
+- $(VBOX_PATH_X11_XFREE_4_3)/programs/Xserver/hw/xfree86/ddc \
+- $(VBOX_PATH_X11_XFREE_4_3)/programs/Xserver/hw/xfree86/int10 \
+- $(VBOX_PATH_X11_XFREE_4_3)/programs/Xserver/hw/xfree86/i2c \
+- $(VBOX_PATH_X11_XFREE_4_3)/programs/Xserver/hw/xfree86/os-support \
+- $(VBOX_PATH_X11_XFREE_4_3)/programs/Xserver/hw/xfree86/vbe \
+- $(VBOX_PATH_X11_XFREE_4_3)/programs/Xserver/hw/xfree86/os-support/bus \
+- $(VBOX_PATH_X11_XFREE_4_3)/programs/Xserver/hw/xfree86/rac \
+- $(VBOX_PATH_X11_XFREE_4_3)/programs/Xserver/hw/xfree86/ramdac \
+- $(VBOX_PATH_X11_XFREE_4_3)/programs/Xserver/hw/xfree86/shadowfb \
+- $(VBOX_PATH_X11_XFREE_4_3)/programs/Xserver/hw/xfree86/vgahw \
+- $(VBOX_PATH_X11_XFREE_4_3)/programs/Xserver/hw/xfree86/xf1bpp \
+- $(VBOX_PATH_X11_XFREE_4_3)/programs/Xserver/hw/xfree86/xf24_32bpp \
+- $(VBOX_PATH_X11_XFREE_4_3)/programs/Xserver/hw/xfree86/xf4bpp \
+- $(VBOX_PATH_X11_XFREE_4_3)/programs/Xserver/mfb \
+- $(VBOX_PATH_X11_XFREE_4_3)/programs/Xserver/mi \
+- $(VBOX_PATH_X11_XFREE_4_3)/programs/Xserver/miext/shadow \
+- $(VBOX_PATH_X11_XFREE_4_3)/programs/Xserver/render \
+- $(VBOX_PATH_X11_XFREE_4_3)/programs/Xserver/randr \
+- $(VBOX_PATH_X11_XFREE_4_3)/programs/Xserver/Xext
++ /usr/include/drm \
++ /usr/include/X11/dri \
++ /usr/include/pixman-1 \
++ /usr/share/xorg-x11-server-source \
++ /usr/share/xorg-x11-server-source/fb \
++ /usr/share/xorg-x11-server-source/hw/xfree86/common \
++ /usr/share/xorg-x11-server-source/hw/xfree86/ddc \
++ /usr/share/xorg-x11-server-source/hw/xfree86/dixmods/extmod \
++ /usr/share/xorg-x11-server-source/hw/xfree86/dri \
++ /usr/share/xorg-x11-server-source/hw/xfree86/i2c \
++ /usr/share/xorg-x11-server-source/hw/xfree86/int10 \
++ /usr/share/xorg-x11-server-source/hw/xfree86/modes \
++ /usr/share/xorg-x11-server-source/hw/xfree86/os-support \
++ /usr/share/xorg-x11-server-source/hw/xfree86/os-support/bus \
++ /usr/share/xorg-x11-server-source/hw/xfree86/ramdac \
++ /usr/share/xorg-x11-server-source/hw/xfree86/shadowfb \
++ /usr/share/xorg-x11-server-source/hw/xfree86/vbe \
++ /usr/share/xorg-x11-server-source/hw/xfree86/vgahw \
++ /usr/share/xorg-x11-server-source/hw/xquartz/xpr \
++ /usr/share/xorg-x11-server-source/include \
++ /usr/share/xorg-x11-server-source/mi \
++ /usr/share/xorg-x11-server-source/miext/damage \
++ /usr/share/xorg-x11-server-source/randr \
++ /usr/share/xorg-x11-server-source/Xext \
++ /usr/share/xorg-x11-server-source/render \
++ /usr/share/xorg-x11-server-source/hw/xfree86/parser
+ vboxvideo_drv_INCS += $(PATH_ROOT)/src/VBox/Runtime/include
+ vboxvideo_drv_SOURCES = \
+ pointer.c \
+@@ -86,7 +76,7 @@ vboxvideo_drv_SOURCES = \
+ $(PATH_ROOT)/src/VBox/Additions/common/VBoxVideo/VBVABase.cpp \
+ $(PATH_ROOT)/src/VBox/GuestHost/HGSMI/HGSMICommon.cpp \
+ $(PATH_ROOT)/src/VBox/Runtime/common/alloc/heapsimple.cpp \
+- $(PATH_ROOT)/src/VBox/Runtime/common/alloc/heapoffset.cpp
++ $(PATH_ROOT)/src/VBox/Runtime/common/alloc/heapoffset.cpp edid.c vboxvideo_dri.c
+ # Any global symbols in the driver object files will be added to XFree86's
+ # symbol table, which can cause problems if we e.g. define a symbol in two
+ # modules.
+@@ -94,6 +84,44 @@ vboxvideo_drv_SOURCES = \
objcopy --keep-global-symbol vboxvideoModuleData $(out) $(out)-objcopy$$(NLTAB) \
$(MV) -f $(out)-objcopy $(out)
@@ -97,7 +247,7 @@
+ /usr/share/xorg-x11-server-source/render \
+ /usr/share/xorg-x11-server-source/hw/xfree86/parser
+vboxvideo_drv_17_INCS += $(PATH_ROOT)/src/VBox/Runtime/include
-+vboxvideo_drv_17_SOURCES = $(vboxvideo_drv_SOURCES) edid.c vboxvideo_dri.c
++vboxvideo_drv_17_SOURCES = $(vboxvideo_drv_SOURCES)
+
+ifdef NOT_FEDORA
+
@@ -105,26 +255,10 @@
#
# vboxvideo_drv_70
#
-@@ -505,4 +543,6 @@ $$(vboxvideo_drv_112_0_OUTDIR)/tstvboxvi
+@@ -505,4 +533,6 @@ $$(vboxvideo_drv_112_0_OUTDIR)/tstvboxvi
# endif # ! VBOX_ONLY_ADDITIONS
endif # VBOX_WITH_TESTCASES
+endif # NOT_FEDORA
+
include $(FILE_KBUILD_SUB_FOOTER)
---- a/src/VBox/Additions/x11/vboxvideo/testcase/Makefile.kmk 2012-01-12
19:57:53.762613198 +0000
-+++ b/src/VBox/Additions/x11/vboxvideo/testcase/Makefile.kmk 2012-01-12
20:01:17.296596446 +0000
-@@ -36,11 +36,11 @@ endif # !VBOX_ONLY_SDK
- #
- tstSetModeXOrg_TEMPLATE = VBOXR3TSTEXE
- tstSetModeXOrg_CFLAGS += -std=c99
--tstSetModeXOrg_DEFS = $(filter-out IN_RT_STATIC,$(vboxvideo_drv_15_DEFS)) TESTCASE
-+tstSetModeXOrg_DEFS = $(filter-out IN_RT_STATIC,$(vboxvideo_drv_17_DEFS)) TESTCASE
- tstSetModeXOrg_SOURCES = \
- tstSetModeXOrg.c \
- ../setmode.c
--tstSetModeXOrg_INCS = $(vboxvideo_drv_15_INCS)
-+tstSetModeXOrg_INCS = $(vboxvideo_drv_17_INCS)
-
-
- # generate rules.
Index: VirtualBox.spec
===================================================================
RCS file: /cvs/free/rpms/VirtualBox/devel/VirtualBox.spec,v
retrieving revision 1.18
retrieving revision 1.19
diff -u -r1.18 -r1.19
--- VirtualBox.spec 3 Sep 2012 05:29:09 -0000 1.18
+++ VirtualBox.spec 7 Sep 2012 03:03:37 -0000 1.19
@@ -15,7 +15,7 @@
Name: VirtualBox
Version: 4.2.0
-Release: 0.3%{?prerel:.%{prerel}}%{?dist}
+Release: 0.4%{?prerel:.%{prerel}}%{?dist}
Summary: A general-purpose full virtualizer for PC hardware
Group: Development/Tools
@@ -39,9 +39,9 @@
Patch18: VirtualBox-OSE-4.0.2-aiobug.patch
Patch22: VirtualBox-OSE-4.1.12-gsoap.patch
Patch23: VirtualBox-OSE-4.1.10-mesa.patch
-#Patch24: VirtualBox-4.1.20-x113.patch
+Patch24: VirtualBox-4.1.20-x113.patch
-%if 0%{?fedora} < 17
+%if 0%{?fedora} < 16
BuildRequires: kBuild >= 0.1.98
%endif
BuildRequires: SDL-devel xalan-c-devel
@@ -186,15 +186,16 @@
%if 0%{?fedora} > 16
%patch23 -p1 -b .mesa
%endif
-#%if 0%{?fedora} > 17
-#%patch24 -p1 -b .x113
-#%endif
+%if 0%{?fedora} > 17
+%patch24 -p1 -b .x113
+%endif
# Remove prebuilt binary tools
-%if 0%{?fedora} < 17
+%if 0%{?fedora} < 16
rm -rf kBuild
%endif
rm -rf tools
+#rm -rf src/VBox/Additions/x11/x11include
# CRLF->LF
sed -i 's/\r//' COPYING
@@ -550,6 +551,10 @@
%changelog
+* Fri Sep 07 2012 Sérgio Basto <sergio(a)serjux.com> - 4.2.0-0.4.RC3
+- Also Compile guest drives vboxvideo_drv and vboxmouse_drv with X11 sources from
system.
+- Fix ABI/API breakages in X11 1.13.
+
* Mon Sep 03 2012 Sérgio Basto <sergio(a)serjux.com> - 4.2.0-0.3.RC3
- fix requires kmod, with version with prerealeses.