1
0
forked from pool/virtualbox

Accepting request 720266 from Virtualization

OBS-URL: https://build.opensuse.org/request/show/720266
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/virtualbox?expand=0&rev=181
This commit is contained in:
Dominique Leuenberger 2019-08-07 11:58:05 +00:00 committed by Git OBS Bridge
commit fd132ab954
22 changed files with 244 additions and 417 deletions

View File

@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:30c3e77c5148d46f9f5c8b281ba3322f2348aed35a0db354802ba60ca2f26b24
size 4335316
oid sha256:d5b7320c38db8c3c8d5374eaab50b0386032752c0c7c3c3470426d02786b33f0
size 4338221

View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:22318cca4a8034f78f16ebc4dab06ccecec6992bf81ce29f90a519574c6132f5
size 117465621

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:fdba6c705fdca590b213d2bc456f8876280022ec82a3280ee49e4c553a9eb381
size 118703619

View File

@ -0,0 +1,13 @@
Index: VirtualBox-6.0.10/src/VBox/Additions/common/VBoxGuest/VBoxGuest-haiku.c
===================================================================
--- VirtualBox-6.0.10.orig/src/VBox/Additions/common/VBoxGuest/VBoxGuest-haiku.c
+++ VirtualBox-6.0.10/src/VBox/Additions/common/VBoxGuest/VBoxGuest-haiku.c
@@ -130,7 +130,7 @@ static struct vboxguest_module_info g_VB
RTMemAllocExTag,
RTMemContAlloc,
RTMemContFree,
- RTMemFreeEx,
+ RTMemFreeExG,
RTMpIsCpuPossible,
RTMpNotificationDeregister,
RTMpNotificationRegister,

View File

@ -1,22 +0,0 @@
Index: a/src/VBox/Frontends/VirtualBox/src/runtime/UIKeyboardHandler.cpp
===================================================================
--- a/src/VBox/Frontends/VirtualBox/src/runtime/UIKeyboardHandler.cpp (revision 131843)
+++ b/src/VBox/Frontends/VirtualBox/src/runtime/UIKeyboardHandler.cpp
(working copy)
@@ -269,6 +269,14 @@
* the keyboard before the target window sees the click. (GNOME Shell's hot corner has
* the same problem. At present we just let that problem be.) */
+ /* Make sure we really do still have the focus: */
+ xcb_get_input_focus_cookie_t xcbFocusCookie = xcb_get_input_focus(QX11Info::connection());
+ xcb_get_input_focus_reply_t *pFocusReply = xcb_get_input_focus_reply(QX11Info::connection(), xcbFocusCookie, 0);
+ xcb_window_t xcbFocusWindow = pFocusReply->focus;
+ free(pFocusReply);
+ if (xcbFocusWindow != m_windows[m_iKeyboardCaptureViewIndex]->winId())
+ return true;
+
/* Grab the mouse button.
* We do not check for failure as we do not currently implement a back-up plan. */
/* If any previous grab is still in process, release it. */

View File

@ -1,54 +0,0 @@
There are two kernel 5.2 API changes that affect VirtualBox:
1. drm_fb_helper_fill_fix() and drm_fb_helper_fill_var() are replaced
by drm_fb_helper_fill_info().
2. The arguments for ttm_bo_device_init() are changed.
Index: VirtualBox-6.0.8/src/VBox/Additions/linux/drm/vbox_fb.c
===================================================================
--- VirtualBox-6.0.8.orig/src/VBox/Additions/linux/drm/vbox_fb.c
+++ VirtualBox-6.0.8/src/VBox/Additions/linux/drm/vbox_fb.c
@@ -335,13 +335,17 @@ static int vboxfb_create(struct drm_fb_h
info->apertures->ranges[0].base = pci_resource_start(dev->pdev, 0);
info->apertures->ranges[0].size = pci_resource_len(dev->pdev, 0);
-#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 11, 0) || defined(RHEL_75)
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(5, 2, 0)
+ drm_fb_helper_fill_info(info, &fbdev->helper, sizes);
+#elif LINUX_VERSION_CODE >= KERNEL_VERSION(4, 11, 0) || defined(RHEL_75)
drm_fb_helper_fill_fix(info, fb->pitches[0], fb->format->depth);
#else
drm_fb_helper_fill_fix(info, fb->pitches[0], fb->depth);
#endif
+#if LINUX_VERSION_CODE < KERNEL_VERSION(5, 2, 0)
drm_fb_helper_fill_var(info, &fbdev->helper, sizes->fb_width,
sizes->fb_height);
+#endif
info->screen_base = bo->kmap.virtual;
info->screen_size = size;
Index: VirtualBox-6.0.8/src/VBox/Additions/linux/drm/vbox_ttm.c
===================================================================
--- VirtualBox-6.0.8.orig/src/VBox/Additions/linux/drm/vbox_ttm.c
+++ VirtualBox-6.0.8/src/VBox/Additions/linux/drm/vbox_ttm.c
@@ -298,7 +298,6 @@ int vbox_mm_init(struct vbox_private *vb
if (ret)
return ret;
#endif
-
ret = ttm_bo_device_init(&vbox->ttm.bdev,
#if LINUX_VERSION_CODE < KERNEL_VERSION(5, 0, 0)
vbox->ttm.bo_global_ref.ref.object,
@@ -307,7 +306,11 @@ int vbox_mm_init(struct vbox_private *vb
#if LINUX_VERSION_CODE >= KERNEL_VERSION(3, 15, 0) || defined(RHEL_71)
dev->anon_inode->i_mapping,
#endif
+#if LINUX_VERSION_CODE < KERNEL_VERSION(5, 2, 0)
DRM_FILE_PAGE_OFFSET, true);
+#else
+ true);
+#endif
if (ret) {
DRM_ERROR("Error initialising bo driver; %d\n", ret);
#if LINUX_VERSION_CODE < KERNEL_VERSION(5, 0, 0)

81
fixes_for_5.3.patch Normal file
View File

@ -0,0 +1,81 @@
Index: VirtualBox-6.0.10/src/VBox/HostDrivers/VBoxNetFlt/linux/VBoxNetFlt-linux.c
===================================================================
--- VirtualBox-6.0.10.orig/src/VBox/HostDrivers/VBoxNetFlt/linux/VBoxNetFlt-linux.c
+++ VirtualBox-6.0.10/src/VBox/HostDrivers/VBoxNetFlt/linux/VBoxNetFlt-linux.c
@@ -2123,7 +2123,10 @@ static int vboxNetFltLinuxEnumeratorCall
#endif
if (in_dev != NULL)
{
- for_ifa(in_dev) {
+ /* macros for_ifa() and endfor_ifs() disappear for kernel 5.3
+ * Code them directly */
+ struct in_ifaddr *ifa;
+ for (ifa = in_dev->ifa_list; ifa; ifa = ifa->ifa_next) {
if (VBOX_IPV4_IS_LOOPBACK(ifa->ifa_address))
return NOTIFY_OK;
@@ -2137,7 +2140,7 @@ static int vboxNetFltLinuxEnumeratorCall
pThis->pSwitchPort->pfnNotifyHostAddress(pThis->pSwitchPort,
/* :fAdded */ true, kIntNetAddrType_IPv4, &ifa->ifa_address);
- } endfor_ifa(in_dev);
+ }
}
/*
Index: VirtualBox-6.0.10/src/VBox/Runtime/r0drv/linux/mp-r0drv-linux.c
===================================================================
--- VirtualBox-6.0.10.orig/src/VBox/Runtime/r0drv/linux/mp-r0drv-linux.c
+++ VirtualBox-6.0.10/src/VBox/Runtime/r0drv/linux/mp-r0drv-linux.c
@@ -283,12 +283,16 @@ RTDECL(int) RTMpOnAll(PFNRTMPWORKER pfnW
if (RTCpuSetCount(&OnlineSet) > 1)
{
/* Fire the function on all other CPUs without waiting for completion. */
-# if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 27)
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(5, 3, 0)
+ smp_call_function(rtmpLinuxAllWrapper, &Args, 0 /* wait */);
+#elif LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 27)
int rc = smp_call_function(rtmpLinuxAllWrapper, &Args, 0 /* wait */);
-# else
+#else
int rc = smp_call_function(rtmpLinuxAllWrapper, &Args, 0 /* retry */, 0 /* wait */);
-# endif
+#endif
+# if LINUX_VERSION_CODE < KERNEL_VERSION(5, 3, 0)
Assert(!rc); NOREF(rc);
+#endif
}
#endif
@@ -326,7 +330,9 @@ RTDECL(int) RTMpOnOthers(PFNRTMPWORKER p
{
#ifdef CONFIG_SMP
IPRT_LINUX_SAVE_EFL_AC();
+#if LINUX_VERSION_CODE < KERNEL_VERSION(5, 3, 0)
int rc;
+#endif
RTMPARGS Args;
RTTHREADPREEMPTSTATE PreemptState = RTTHREADPREEMPTSTATE_INITIALIZER;
@@ -337,14 +343,18 @@ RTDECL(int) RTMpOnOthers(PFNRTMPWORKER p
Args.cHits = 0;
RTThreadPreemptDisable(&PreemptState);
-# if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 27)
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(5, 3, 0)
+ smp_call_function(rtmpLinuxWrapper, &Args, 1 /* wait */);
+#elif LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 27)
rc = smp_call_function(rtmpLinuxWrapper, &Args, 1 /* wait */);
-# else /* older kernels */
+#else /* older kernels */
rc = smp_call_function(rtmpLinuxWrapper, &Args, 0 /* retry */, 1 /* wait */);
-# endif /* older kernels */
+#endif /* older kernels */
RTThreadPreemptRestore(&PreemptState);
+#if LINUX_VERSION_CODE < KERNEL_VERSION(5, 3, 0)
Assert(rc == 0); NOREF(rc);
+#endif
IPRT_LINUX_RESTORE_EFL_AC();
#else
RT_NOREF(pfnWorker, pvUser1, pvUser2);

View File

@ -1,168 +0,0 @@
Index: VirtualBox-6.0.6/src/VBox/Additions/linux/drm/vbox_drv.c
===================================================================
--- VirtualBox-6.0.6.orig/src/VBox/Additions/linux/drm/vbox_drv.c
+++ VirtualBox-6.0.6/src/VBox/Additions/linux/drm/vbox_drv.c
@@ -283,12 +283,6 @@ static struct drm_driver driver = {
.lastclose = vbox_driver_lastclose,
.master_set = vbox_master_set,
.master_drop = vbox_master_drop,
-#if LINUX_VERSION_CODE >= KERNEL_VERSION(3, 18, 0) || defined(RHEL_73)
-# if LINUX_VERSION_CODE < KERNEL_VERSION(4, 14, 0) && !defined(RHEL_75)
- .set_busid = drm_pci_set_busid,
-# endif
-#endif
-
.fops = &vbox_fops,
.irq_handler = vbox_irq_handler,
.name = DRIVER_NAME,
Index: VirtualBox-6.0.6/src/VBox/Additions/linux/drm/vbox_mode.c
===================================================================
--- VirtualBox-6.0.6.orig/src/VBox/Additions/linux/drm/vbox_mode.c
+++ VirtualBox-6.0.6/src/VBox/Additions/linux/drm/vbox_mode.c
@@ -498,7 +498,8 @@ static void vbox_set_edid(struct drm_con
for (i = 0; i < EDID_SIZE - 1; ++i)
sum += edid[i];
edid[EDID_SIZE - 1] = (0x100 - (sum & 0xFF)) & 0xFF;
-#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 19, 0)
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 19, 0) || \
+ defined(CONFIG_SUSE_VERSION)
drm_connector_update_edid_property(connector, (struct edid *)edid);
#else
drm_mode_connector_update_edid_property(connector, (struct edid *)edid);
@@ -669,7 +670,8 @@ static int vbox_connector_init(struct dr
drm_connector_register(connector);
#endif
-#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 19, 0)
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 19, 0) || \
+ defined(CONFIG_SUSE_VERSION)
drm_connector_attach_encoder(connector, encoder);
#else
drm_mode_connector_attach_encoder(connector, encoder);
Index: VirtualBox-6.0.6/src/VBox/Additions/linux/drm/vbox_ttm.c
===================================================================
--- VirtualBox-6.0.6.orig/src/VBox/Additions/linux/drm/vbox_ttm.c
+++ VirtualBox-6.0.6/src/VBox/Additions/linux/drm/vbox_ttm.c
@@ -210,7 +210,8 @@ static struct ttm_backend_func vbox_tt_b
.destroy = &vbox_ttm_backend_destroy,
};
-#if (LINUX_VERSION_CODE < KERNEL_VERSION(4, 17, 0)) && !defined(RHEL_76)
+#if (LINUX_VERSION_CODE < KERNEL_VERSION(4, 17, 0)) && !defined(RHEL_76) && \
+ !defined(CONFIG_SUSE_VERSION)
static struct ttm_tt *vbox_ttm_tt_create(struct ttm_bo_device *bdev,
unsigned long size,
u32 page_flags,
@@ -227,7 +228,8 @@ static struct ttm_tt *vbox_ttm_tt_create
return NULL;
tt->func = &vbox_tt_backend_func;
-#if (LINUX_VERSION_CODE < KERNEL_VERSION(4, 17, 0)) && !defined(RHEL_76)
+#if (LINUX_VERSION_CODE < KERNEL_VERSION(4, 17, 0)) && !defined(RHEL_76) && \
+ !defined(CONFIG_SUSE_VERSION)
if (ttm_tt_init(tt, bdev, size, page_flags, dummy_read_page)) {
#else
if (ttm_tt_init(tt, bo, page_flags)) {
@@ -240,7 +242,8 @@ static struct ttm_tt *vbox_ttm_tt_create
}
#if LINUX_VERSION_CODE < KERNEL_VERSION(4, 17, 0)
-# if (LINUX_VERSION_CODE < KERNEL_VERSION(4, 16, 0)) && !defined(RHEL_76)
+# if (LINUX_VERSION_CODE < KERNEL_VERSION(4, 16, 0)) && !defined(RHEL_76) && \
+ !defined(CONFIG_SUSE_VERSION)
static int vbox_ttm_tt_populate(struct ttm_tt *ttm)
{
return ttm_pool_populate(ttm);
@@ -274,7 +277,8 @@ static struct ttm_bo_driver vbox_bo_driv
.io_mem_reserve = &vbox_ttm_io_mem_reserve,
.io_mem_free = &vbox_ttm_io_mem_free,
#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 12, 0) || defined(RHEL_75)
-# if (LINUX_VERSION_CODE < KERNEL_VERSION(4, 16, 0)) && !defined(RHEL_76)
+# if (LINUX_VERSION_CODE < KERNEL_VERSION(4, 16, 0)) && !defined(RHEL_76) && \
+ !defined(CONFIG_SUSE_VERSION)
.io_mem_pfn = ttm_bo_default_io_mem_pfn,
# endif
#endif
@@ -420,7 +424,8 @@ int vbox_bo_create(struct drm_device *de
ret = ttm_bo_init(&vbox->ttm.bdev, &vboxbo->bo, size,
ttm_bo_type_device, &vboxbo->placement,
-#if LINUX_VERSION_CODE < KERNEL_VERSION(4, 17, 0) && !defined(RHEL_76)
+#if LINUX_VERSION_CODE < KERNEL_VERSION(4, 17, 0) && !defined(RHEL_76) && \
+ !defined(CONFIG_SUSE_VERSION)
align >> PAGE_SHIFT, false, NULL, acc_size,
#else
align >> PAGE_SHIFT, false, acc_size,
@@ -449,7 +454,8 @@ static inline u64 vbox_bo_gpu_offset(str
int vbox_bo_pin(struct vbox_bo *bo, u32 pl_flag, u64 *gpu_addr)
{
-#if (LINUX_VERSION_CODE >= KERNEL_VERSION(4, 16, 0)) || defined(RHEL_76)
+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(4, 16, 0)) || defined(RHEL_76) || \
+ defined(CONFIG_SUSE_VERSION)
struct ttm_operation_ctx ctx = { false, false };
#endif
int i, ret;
@@ -467,7 +473,8 @@ int vbox_bo_pin(struct vbox_bo *bo, u32
for (i = 0; i < bo->placement.num_placement; i++)
PLACEMENT_FLAGS(bo->placements[i]) |= TTM_PL_FLAG_NO_EVICT;
-#if (LINUX_VERSION_CODE < KERNEL_VERSION(4, 16, 0)) && !defined(RHEL_76)
+#if (LINUX_VERSION_CODE < KERNEL_VERSION(4, 16, 0)) && !defined(RHEL_76) && \
+ !defined(CONFIG_SUSE_VERSION)
ret = ttm_bo_validate(&bo->bo, &bo->placement, false, false);
#else
ret = ttm_bo_validate(&bo->bo, &bo->placement, &ctx);
@@ -485,7 +492,8 @@ int vbox_bo_pin(struct vbox_bo *bo, u32
int vbox_bo_unpin(struct vbox_bo *bo)
{
-#if (LINUX_VERSION_CODE >= KERNEL_VERSION(4, 16, 0)) || defined(RHEL_76)
+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(4, 16, 0)) || defined(RHEL_76) || \
+ defined(CONFIG_SUSE_VERSION)
struct ttm_operation_ctx ctx = { false, false };
#endif
int i, ret;
@@ -501,7 +509,8 @@ int vbox_bo_unpin(struct vbox_bo *bo)
for (i = 0; i < bo->placement.num_placement; i++)
PLACEMENT_FLAGS(bo->placements[i]) &= ~TTM_PL_FLAG_NO_EVICT;
-#if (LINUX_VERSION_CODE < KERNEL_VERSION(4, 16, 0)) && !defined(RHEL_76)
+#if (LINUX_VERSION_CODE < KERNEL_VERSION(4, 16, 0)) && !defined(RHEL_76) && \
+ !defined(CONFIG_SUSE_VERSION)
ret = ttm_bo_validate(&bo->bo, &bo->placement, false, false);
#else
ret = ttm_bo_validate(&bo->bo, &bo->placement, &ctx);
@@ -519,7 +528,8 @@ int vbox_bo_unpin(struct vbox_bo *bo)
*/
int vbox_bo_push_sysram(struct vbox_bo *bo)
{
-#if (LINUX_VERSION_CODE >= KERNEL_VERSION(4, 16, 0)) || defined(RHEL_76)
+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(4, 16, 0)) || defined(RHEL_76) || \
+ defined(CONFIG_SUSE_VERSION)
struct ttm_operation_ctx ctx = { false, false };
#endif
int i, ret;
@@ -540,7 +550,8 @@ int vbox_bo_push_sysram(struct vbox_bo *
for (i = 0; i < bo->placement.num_placement; i++)
PLACEMENT_FLAGS(bo->placements[i]) |= TTM_PL_FLAG_NO_EVICT;
-#if (LINUX_VERSION_CODE < KERNEL_VERSION(4, 16, 0)) && !defined(RHEL_76)
+#if (LINUX_VERSION_CODE < KERNEL_VERSION(4, 16, 0)) && !defined(RHEL_76) && \
+ !defined(CONFIG_SUSE_VERSION)
ret = ttm_bo_validate(&bo->bo, &bo->placement, false, false);
#else
ret = ttm_bo_validate(&bo->bo, &bo->placement, &ctx);
Index: VirtualBox-6.0.6/src/VBox/Additions/linux/drm/vbox_main.c
===================================================================
--- VirtualBox-6.0.6.orig/src/VBox/Additions/linux/drm/vbox_main.c
+++ VirtualBox-6.0.6/src/VBox/Additions/linux/drm/vbox_main.c
@@ -600,7 +600,7 @@ int vbox_dumb_destroy(struct drm_file *f
}
#endif
-#if LINUX_VERSION_CODE < KERNEL_VERSION(4, 19, 0)
+#if LINUX_VERSION_CODE < KERNEL_VERSION(4, 19, 0) && !defined(CONFIG_SUSE_VERSION)
static void ttm_bo_put(struct ttm_buffer_object *bo)
{
ttm_bo_unref(&bo);

View File

@ -1,34 +0,0 @@
Index: VirtualBox-6.0.8/src/VBox/Additions/linux/drm/vbox_drv.c
===================================================================
--- VirtualBox-6.0.8.orig/src/VBox/Additions/linux/drm/vbox_drv.c
+++ VirtualBox-6.0.8/src/VBox/Additions/linux/drm/vbox_drv.c
@@ -283,11 +283,6 @@ static struct drm_driver driver = {
.lastclose = vbox_driver_lastclose,
.master_set = vbox_master_set,
.master_drop = vbox_master_drop,
-#if LINUX_VERSION_CODE >= KERNEL_VERSION(3, 18, 0) || defined(RHEL_73)
-# if LINUX_VERSION_CODE < KERNEL_VERSION(4, 14, 0) && !defined(RHEL_75)
- .set_busid = drm_pci_set_busid,
-# endif
-#endif
.fops = &vbox_fops,
.irq_handler = vbox_irq_handler,
Index: VirtualBox-6.0.8/src/VBox/Additions/linux/drm/vbox_main.c
===================================================================
--- VirtualBox-6.0.8.orig/src/VBox/Additions/linux/drm/vbox_main.c
+++ VirtualBox-6.0.8/src/VBox/Additions/linux/drm/vbox_main.c
@@ -600,13 +600,6 @@ int vbox_dumb_destroy(struct drm_file *f
}
#endif
-#if LINUX_VERSION_CODE < KERNEL_VERSION(4, 19, 0)
-static void ttm_bo_put(struct ttm_buffer_object *bo)
-{
- ttm_bo_unref(&bo);
-}
-#endif
-
void vbox_gem_free_object(struct drm_gem_object *obj)
{
struct vbox_bo *vbox_bo = gem_to_vbox_bo(obj);

View File

@ -139,3 +139,4 @@ Index: VirtualBox-6.0.6/src/VBox/GuestHost/OpenGL/include/chromium.h
/* prototype these functions for opengl_stub/getprocaddress.c */
extern void APIENTRY glGenQueries(GLsizei n, GLuint *ids);

View File

@ -62,7 +62,7 @@ Index: VirtualBox-6.0.4/src/apps/VBoxSUIDMessage/VBoxSUIDMessage.cpp
+ msgBox.setWindowTitle(QObject::tr("File Permissions problem !"));
+ msgBox.setText(QObject::tr("File VirtualBoxVM must be SUID, but the file permissions are wrong.\n\n"
+ "To fix this problem, please run\n"
+ "sudo chmod 4711 /usr/lib/virtualbox/VirtualBoxVM\n\n"
+ "sudo chmod 4750 /usr/lib/virtualbox/VirtualBoxVM\n\n"
+ "Until this is done, Virtual Machines cannot run."));
+ msgBox.exec();
+ app.quit();

View File

@ -1,7 +1,7 @@
Index: VirtualBox-6.0.6/src/VBox/Additions/linux/installer/vboxadd.sh
Index: VirtualBox-6.0.10/src/VBox/Additions/linux/installer/vboxadd.sh
===================================================================
--- VirtualBox-6.0.6.orig/src/VBox/Additions/linux/installer/vboxadd.sh
+++ VirtualBox-6.0.6/src/VBox/Additions/linux/installer/vboxadd.sh
--- VirtualBox-6.0.10.orig/src/VBox/Additions/linux/installer/vboxadd.sh
+++ VirtualBox-6.0.10/src/VBox/Additions/linux/installer/vboxadd.sh
@@ -26,11 +26,14 @@
# Provides: vboxadd
# Required-Start:
@ -74,8 +74,8 @@ Index: VirtualBox-6.0.6/src/VBox/Additions/linux/installer/vboxadd.sh
fi
done
for i in ${OLDMODULES}; do
@@ -356,9 +338,9 @@ create_udev_rule()
echo "KERNEL=${udev_fix}\"vboxuser\", NAME=\"vboxuser\", OWNER=\"vboxadd\", MODE=\"0666\"" >> /etc/udev/rules.d/60-vboxadd.rules
@@ -359,9 +341,9 @@ create_udev_rule()
udevcontrol reload_rules >/dev/null 2>&1 || true
fi
}
-
@ -87,7 +87,7 @@ Index: VirtualBox-6.0.6/src/VBox/Additions/linux/installer/vboxadd.sh
# And a post-installation script for rebuilding modules when a new kernel
# is installed.
mkdir -p /etc/kernel/postinst.d /etc/kernel/prerm.d
@@ -403,47 +385,15 @@ shared_folder_setup()
@@ -406,47 +388,15 @@ shared_folder_setup()
# setup_script
setup()
{
@ -139,7 +139,7 @@ Index: VirtualBox-6.0.6/src/VBox/Additions/linux/installer/vboxadd.sh
depmod
# Remove old module sources
@@ -453,12 +403,13 @@ cleanup()
@@ -456,12 +406,13 @@ cleanup()
fi
# Clean-up X11-related bits
@ -157,7 +157,7 @@ Index: VirtualBox-6.0.6/src/VBox/Additions/linux/installer/vboxadd.sh
fi
rm -f /sbin/mount.vboxsf 2>/dev/null
rm -f /etc/udev/rules.d/60-vboxadd.rules 2>/dev/null
@@ -489,7 +440,7 @@ start()
@@ -494,7 +445,7 @@ start()
rm -f $userdev || {
fail "Cannot remove $userdev"
}
@ -166,10 +166,10 @@ Index: VirtualBox-6.0.6/src/VBox/Additions/linux/installer/vboxadd.sh
fail "modprobe vboxguest failed"
case "$no_udev" in 1)
sleep .5;;
Index: VirtualBox-6.0.6/src/VBox/Additions/linux/installer/vboxadd-service.sh
Index: VirtualBox-6.0.10/src/VBox/Additions/linux/installer/vboxadd-service.sh
===================================================================
--- VirtualBox-6.0.6.orig/src/VBox/Additions/linux/installer/vboxadd-service.sh
+++ VirtualBox-6.0.6/src/VBox/Additions/linux/installer/vboxadd-service.sh
--- VirtualBox-6.0.10.orig/src/VBox/Additions/linux/installer/vboxadd-service.sh
+++ VirtualBox-6.0.10/src/VBox/Additions/linux/installer/vboxadd-service.sh
@@ -26,7 +26,7 @@
# Provides: vboxadd-service
# Required-Start: vboxadd
@ -179,10 +179,10 @@ Index: VirtualBox-6.0.6/src/VBox/Additions/linux/installer/vboxadd-service.sh
# Default-Stop: 0 1 6
# X-Conflicts-With: systemd-timesyncd.service
# Description: VirtualBox Additions Service
Index: VirtualBox-6.0.6/src/VBox/Installer/linux/vboxautostart-service.sh
Index: VirtualBox-6.0.10/src/VBox/Installer/linux/vboxautostart-service.sh
===================================================================
--- VirtualBox-6.0.6.orig/src/VBox/Installer/linux/vboxautostart-service.sh
+++ VirtualBox-6.0.6/src/VBox/Installer/linux/vboxautostart-service.sh
--- VirtualBox-6.0.10.orig/src/VBox/Installer/linux/vboxautostart-service.sh
+++ VirtualBox-6.0.10/src/VBox/Installer/linux/vboxautostart-service.sh
@@ -23,7 +23,7 @@
# Provides: vboxautostart-service
# Required-Start: vboxdrv
@ -192,10 +192,10 @@ Index: VirtualBox-6.0.6/src/VBox/Installer/linux/vboxautostart-service.sh
# Default-Stop: 0 1 6
# Description: VirtualBox autostart service
### END INIT INFO
Index: VirtualBox-6.0.6/src/VBox/Installer/linux/vboxballoonctrl-service.sh
Index: VirtualBox-6.0.10/src/VBox/Installer/linux/vboxballoonctrl-service.sh
===================================================================
--- VirtualBox-6.0.6.orig/src/VBox/Installer/linux/vboxballoonctrl-service.sh
+++ VirtualBox-6.0.6/src/VBox/Installer/linux/vboxballoonctrl-service.sh
--- VirtualBox-6.0.10.orig/src/VBox/Installer/linux/vboxballoonctrl-service.sh
+++ VirtualBox-6.0.10/src/VBox/Installer/linux/vboxballoonctrl-service.sh
@@ -23,7 +23,7 @@
# Provides: vboxballoonctrl-service
# Required-Start: vboxdrv
@ -205,10 +205,10 @@ Index: VirtualBox-6.0.6/src/VBox/Installer/linux/vboxballoonctrl-service.sh
# Default-Stop: 0 1 6
# Description: VirtualBox watchdog daemon
### END INIT INFO
Index: VirtualBox-6.0.6/src/VBox/ValidationKit/testboxscript/linux/testboxscript-service.sh
Index: VirtualBox-6.0.10/src/VBox/ValidationKit/testboxscript/linux/testboxscript-service.sh
===================================================================
--- VirtualBox-6.0.6.orig/src/VBox/ValidationKit/testboxscript/linux/testboxscript-service.sh
+++ VirtualBox-6.0.6/src/VBox/ValidationKit/testboxscript/linux/testboxscript-service.sh
--- VirtualBox-6.0.10.orig/src/VBox/ValidationKit/testboxscript/linux/testboxscript-service.sh
+++ VirtualBox-6.0.10/src/VBox/ValidationKit/testboxscript/linux/testboxscript-service.sh
@@ -31,7 +31,7 @@
# Provides: testboxscript-service
# Required-Start: $network
@ -218,10 +218,10 @@ Index: VirtualBox-6.0.6/src/VBox/ValidationKit/testboxscript/linux/testboxscript
# Default-Stop: 0 1 6
# Description: TestBoxScript service
### END INIT INFO
Index: VirtualBox-6.0.6/src/VBox/ValidationKit/utils/TestExecServ/linux/vboxtxs-nat.sh
Index: VirtualBox-6.0.10/src/VBox/ValidationKit/utils/TestExecServ/linux/vboxtxs-nat.sh
===================================================================
--- VirtualBox-6.0.6.orig/src/VBox/ValidationKit/utils/TestExecServ/linux/vboxtxs-nat.sh
+++ VirtualBox-6.0.6/src/VBox/ValidationKit/utils/TestExecServ/linux/vboxtxs-nat.sh
--- VirtualBox-6.0.10.orig/src/VBox/ValidationKit/utils/TestExecServ/linux/vboxtxs-nat.sh
+++ VirtualBox-6.0.10/src/VBox/ValidationKit/utils/TestExecServ/linux/vboxtxs-nat.sh
@@ -31,7 +31,7 @@
# Provides: vboxtxs
# Required-Start: $network
@ -231,10 +231,10 @@ Index: VirtualBox-6.0.6/src/VBox/ValidationKit/utils/TestExecServ/linux/vboxtxs-
# Default-Stop: 0 1 6
# Description: VirtualBox Test Execution Service
### END INIT INFO
Index: VirtualBox-6.0.6/src/VBox/ValidationKit/utils/TestExecServ/linux/vboxtxs.sh
Index: VirtualBox-6.0.10/src/VBox/ValidationKit/utils/TestExecServ/linux/vboxtxs.sh
===================================================================
--- VirtualBox-6.0.6.orig/src/VBox/ValidationKit/utils/TestExecServ/linux/vboxtxs.sh
+++ VirtualBox-6.0.6/src/VBox/ValidationKit/utils/TestExecServ/linux/vboxtxs.sh
--- VirtualBox-6.0.10.orig/src/VBox/ValidationKit/utils/TestExecServ/linux/vboxtxs.sh
+++ VirtualBox-6.0.10/src/VBox/ValidationKit/utils/TestExecServ/linux/vboxtxs.sh
@@ -31,7 +31,7 @@
# Provides: vboxtxs
# Required-Start: $network

View File

@ -1,7 +1,7 @@
Index: VirtualBox-6.0.0/src/VBox/Installer/linux/vboxdrv.sh
Index: VirtualBox-6.0.10/src/VBox/Installer/linux/vboxdrv.sh
===================================================================
--- VirtualBox-6.0.0.orig/src/VBox/Installer/linux/vboxdrv.sh
+++ VirtualBox-6.0.0/src/VBox/Installer/linux/vboxdrv.sh
--- VirtualBox-6.0.10.orig/src/VBox/Installer/linux/vboxdrv.sh
+++ VirtualBox-6.0.10/src/VBox/Installer/linux/vboxdrv.sh
@@ -19,11 +19,12 @@
#
### BEGIN INIT INFO
@ -19,7 +19,7 @@ Index: VirtualBox-6.0.0/src/VBox/Installer/linux/vboxdrv.sh
### END INIT INFO
## @todo This file duplicates a lot of script with vboxadd.sh. When making
@@ -285,13 +286,6 @@ start()
@@ -312,13 +313,6 @@ See the documenatation for your Linux di
fi
fi
# ensure permissions
@ -33,7 +33,7 @@ Index: VirtualBox-6.0.0/src/VBox/Installer/linux/vboxdrv.sh
if ! $MODPROBE vboxnetflt > /dev/null 2>&1; then
failure "modprobe vboxnetflt failed. Please use 'dmesg' to find out why"
fi
@@ -421,48 +415,8 @@ cleanup()
@@ -448,48 +442,8 @@ cleanup()
# setup_script
setup()
{
@ -81,6 +81,6 @@ Index: VirtualBox-6.0.0/src/VBox/Installer/linux/vboxdrv.sh
- succ_msg "VirtualBox kernel modules built"
+# Try to build the host kernel modules in case prepackaging has failed
+ /sbin/vboxconfig
}
dmnstatus()
# Secure boot on Ubuntu and Debian.
if test -n "$HAVE_SEC_BOOT" &&
type update-secureboot-policy >/dev/null 2>&1; then

View File

@ -210,7 +210,7 @@ start_drv()
failure "Cannot remove $DEVICE"
fi
if ! $MODPROBE vboxdrv > /dev/null 2>&1; then
setup
/sbin/vboxconfig
if ! $MODPROBE vboxdrv > /dev/null 2>&1; then
failure "modprobe vboxdrv failed. Please use 'dmesg' to find out why"
fi

View File

@ -9,8 +9,8 @@ SOURCE="/usr/src/kernel-modules/"
LOGFILE="/var/log/virtualbox.log"
INCLUDE="/lib/modules/`uname -r`/build/include"
#
# Test if vboxsf module loaded. If it is, skip everything else
loaded=$(lsmod | grep vboxsf)
# Test if vboxguest module loaded. If it is, skip everything else
loaded=$(lsmod | grep vboxguest)
if [ -n "$loaded" ] ; then
echo "Kernel modules available. but we will continue..."
fi
@ -28,7 +28,7 @@ popd > /dev/null 2>&1
#
# Check if virtualbox-guest-source version matches virtualbox version
if [ "$(rpm -q virtualbox virtualbox-guest-source --queryformat='%{version}-%{release}\n' 2>/dev/null | sort -u | wc -l)" -ne "1" ] ; then
echo "virtualbox-host-source package version doesn't match the version of virtualbox package."
echo "virtualbox-guest-source package version doesn't match the version of virtualbox package."
echo "This situation is probably not fatal, thus we will try to continue .."
fi
# Prerequisites are available, start build
@ -53,7 +53,7 @@ if [ "$?" -ne 0 ] ; then
exit 1
fi
depmod -a
modprobe -av vboxguest vboxvideo vboxsf
modprobe -av vboxsf vboxguest vboxvideo
cd ../..
rm -rf additions
popd > /dev/null 2>&1

View File

@ -1,8 +0,0 @@
%defattr (-,root,root)
%dir /lib/modules/%2-%1/
%dir /lib/modules/%2-%1/extra
/lib/modules/%2-%1/extra/vboxsf.ko
/lib/modules/%2-%1/extra/vboxguest.ko
%if 0%{?suse_version} >= 1500
/lib/modules/%2-%1/extra/vboxvideo.ko
%endif

View File

@ -1,8 +0,0 @@
Requires: kernel-%1
Provides: virtualbox-guest-kmp = %version
#rename from ose version:
Provides: virtualbox-ose-guest-kmp-%1 = %version
Obsoletes: virtualbox-ose-guest-kmp-%1 < %version
#host (vboxdrv) and guest (vboxguest) kmp exports the same symbol (RTMemFreeEx)
#which break loading modules using modprobe (bnc#661740)
Conflicts: virtualbox-host-kmp

View File

@ -1,8 +0,0 @@
Requires: kernel-%1
Provides: virtualbox-host-kmp = %version
#rename from ose version:
Provides: virtualbox-ose-host-kmp-%1 = %version
Obsoletes: virtualbox-ose-host-kmp-%1 < %version
#host (vboxdrv) and guest (vboxguest) kmp exports the same symbol (RTMemFreeEx)
#which break loading modules using modprobe (bnc#661740)
Conflicts: virtualbox-guest-kmp

View File

@ -5,3 +5,6 @@
/lib/modules/%2-%1/extra/vboxnetadp.ko
/lib/modules/%2-%1/extra/vboxnetflt.ko
/lib/modules/%2-%1/extra/vboxpci.ko
/lib/modules/%2-%1/extra/vboxsf.ko
/lib/modules/%2-%1/extra/vboxvideo.ko
/lib/modules/%2-%1/extra/vboxguest.ko

3
virtualbox-kmp-preamble Normal file
View File

@ -0,0 +1,3 @@
Requires: kernel-%1
Provides: virtualbox-kmp = %version

View File

@ -1,12 +1,66 @@
-------------------------------------------------------------------
Sat Jul 6 17:06:28 UTC 2019 - Larry Finger <Larry.Finger@gmail.com>
Mon Jul 29 06:40:41 UTC 2019 - Larry Finger <Larry.Finger@gmail.com>
- Correct the logic for SLE15_SP1.
- Merge host kmp and guest kmp into a single kmp. The existence of two different kernel module
packages is believed to be the reason that it is possible for a new kernel not to include
the necessary kernel modules (boo#1142955).
Files "virtualbox-host-kmp-files" and "virtualbox-guest-kmp-files" are deleted.
File "virtualbox-kmp-files" is added.
Files "virtualbox-host-preamble" and virtualbox-guest-preamble" are deleted.
File "virtualbox-kmp-preamble" is added.
File "fix_conflict_between_host_and_guest.patch" is added.
-------------------------------------------------------------------
Sat Jul 6 02:30:18 UTC 2019 - Larry Finger <Larry.Finger@gmail.com>
Sat Jul 27 01:53:12 UTC 2019 - Larry Finger <Larry.Finger@gmail.com>
- Update the patch for SLE15 to handle the changes in SP1.
- Script vboxdrv.sh, which is called from the systemd service file, incorrectly called a routine
that does not exist when the kernel modules were not available. This call is changed to /sbin/vboxconfig
that will build the modules if the requisite packages are available. If that is not true, the
systemctl status vboxdrv will list the command needed to load the missing packages. This change
address part of boo#1142995.
-------------------------------------------------------------------
Thu Jul 18 11:48:00 UTC 2019 - Larry Finger <Larry.Finger@gmail.com>
- Version update to 6.0.10 (released July 16 2019 by Oracle)
This is a maintenance release. The following items were fixed and/or added:
Various vulnerabilities are fixed (bsc#1141801) inclding
CVE-2019-2859 CVE-2019-2867 CVE-2019-2866 CVE-2019-2864 CVE-2019-2865 CVE-2019-1543 CVE-2019-2863
CVE-2019-2848 CVE-2019-2877 CVE-2019-2873 CVE-2019-2874 CVE-2019-2875 CVE-2019-2876 CVE-2019-2850
User interface: fix issue inputing controller names (bug #11579)
User interface: fix resize problems with recent Linux hosts (bug #18677)
Serial: fixed guru meditation when raw mode is enabled (bug #18632)
Serial: fixed possible VM crash under certain circumstances
USB: Fixed "unrecoverable error" problems in OHCI emulation (bug #18593, 6.0.6 regression)
USB: improve captured device identification
VBoxManage: fix reversed reporting of audio input and output (thank you Socratis Kalogrianitis)
VBoxManage: fix controlling recording for running machine (bug #18723)
Guest control service: various fixes
Linux hosts: kernel module build fixes for various kernels (bug #18316)
Linux hosts: support UEFI secure boot driver signing on Ubuntu and Debian hosts (bug #11577)
Linux hosts: fix focus grabbing problems with recent Qt versions (builds from source only; thank you Fabian Vogt (SUSE) and Larry Finger; bug #18745)
Windows guests: many shared folders fixes
Windows guests: fix other services failing if seamless mode was not available
Linux guests: kernel module build fixes for various kernels (bugs #18677 and #18697; fixes by Larry Finger and Gianfranco Costamagna)
Linux guests: do not try to load old versions of libcrypt on recent guests in Guest Additions tools (bug #18682)
Linux guests: udev rules for guest kernel modules did not always take effect in time
Linux guests/VMSVGA: do not forget the guest screen size after a guest reboot
OS/2 guests: various shared folder fixes
File "fixes_for_5.2.patch" is deleted - fixed upstream.
File "fixes_for_5.3.patch" is added to handle API changes in kernel 5.3.
File "fixes_for_Leap15.1.patch" is deleted - fixed upstream.
File "fixes_focus_steal.patch" is deleted - fixed upstream.
-------------------------------------------------------------------
Mon Jul 15 19:31:05 UTC 2019 - Larry Finger <Larry.Finger@gmail.com>
- Revise instructions for case when VirtualBoxVM has the wrong privilege.
Rework conditional code when applying patch for SLE15_SP1.
File "fixes_for_SLE15.patch" deleted.
-------------------------------------------------------------------
Sat Jul 6 02:24:37 UTC 2019 - Larry Finger <Larry.Finger@gmail.com>

View File

@ -47,7 +47,7 @@ python3 -O -c "import sys, os, compileall; br='%{buildroot}'; compileall.compile
%define _udevrulesdir /usr/lib/udev/rules.d
Name: virtualbox
# ********* If the VB version exceeds 6.0.x, notify the libvirt maintainer!!
Version: 6.0.8
Version: 6.0.10
Release: 0
Summary: VirtualBox is an Emulator
License: GPL-2.0-or-later
@ -62,10 +62,8 @@ Source0: VirtualBox-%{version}-patched.tar.bz2
Source1: UserManual.pdf
Source3: %{name}-60-vboxguest.rules
Source4: %{name}-default.virtualbox
Source5: %{name}-host-kmp-files
Source6: %{name}-guest-kmp-files
Source7: %{name}-host-preamble
Source8: %{name}-guest-preamble
Source5: %{name}-kmp-files
Source7: %{name}-kmp-preamble
Source9: %{name}-wrapper.sh
Source10: %{name}-LocalConfig.kmk
Source11: %{name}-60-vboxdrv.rules
@ -119,6 +117,8 @@ Patch108: virtualbox-snpritnf-buffer-overflow.patch
Patch109: vbox-usb-warning.diff
# Patch to ensure that VirtualBoxVM is SUID
Patch110: vbox-suid-warning.diff
# Fix symbol conflict between host and guest kmp
Patch111: fix_conflict_between_host_and_guest.patch
# Fix change in kernel API for ttm_bo_move_memcpy()
Patch112: modify_for_4_8_bo_move.patch
# Remove all mention of _smp_mflags
@ -139,18 +139,12 @@ Patch123: switch_to_python3.4+.patch
Patch125: remove_vbox_video_build.patch
# fix library search
Patch128: fix_lib_search.patch
# Fixes for modified kernel in Leap 15.1
Patch129: fixes_for_Leap15.1.patch
# Fixes for modified kernel in Leap 42.3
Patch130: fixes_for_Leap42.3.patch
# Fixes for Qt5.13
Patch131: fixes_for_qt5.13.patch
# Fixes for kernel 5.2
Patch132: fixes_for_5.2.patch
# Fixes for SLE15
Patch133: fixes_for_SLE15.patch
# Fixes for VB stealing focus under Qt 5.13
Patch134: fixes_focus_steal.patch
# Fixes for API changes in kernel 5.3
Patch131: fixes_for_5.3.patch
# Fixes for Qt5.13 on 32-bit systems
Patch132: fixes_for_qt5.13.patch
#endif
Patch999: virtualbox-fix-ui-background-color.patch
#
@ -224,7 +218,7 @@ BuildRequires: pkgconfig(xineramaproto)
BuildRequires: pkgconfig(xmu)
BuildRequires: pkgconfig(xproto)
BuildRequires: pkgconfig(xrandr)
Requires: %{name}-host-kmp = %{version}
Requires: %{name}-kmp = %{version}
Requires(post): sysvinit(syslog)
Requires(pre): permissions
%if ! 0%{?suse_version} > 1325
@ -289,30 +283,22 @@ Obsoletes: %{name}-vboxwebsrv
The VirtualBox web server is used to control headless VMs using a browser.
#########################################
%package host-KMP
Summary: Host kernel module for VirtualBox
%package kmp
Summary: Kernel modules for VirtualBox
Group: System/Emulators/PC
%kernel_module_package -t %{_builddir}/virtualbox-kmp-template -p %{SOURCE7} -n %{name}-host -f %{SOURCE5} -x kdump um xen pae xenpae pv
%kernel_module_package -t %{_builddir}/virtualbox-kmp-template -p %{SOURCE7} -n %{name} -f %{SOURCE5} -x kdump um xen pae xenpae pv
Requires: %{kernel_module_package_buildreqs}
Obsoletes: %{name}-guest-kmp
Obsoletes: %{name}-host-kmp
%description host-KMP
This package contains the kernel-modules that VirtualBox uses to create virtual machines.
##########################################
%package guest-KMP
Summary: Guest kernel modules for VirtualBox
Group: System/Emulators/PC
%kernel_module_package -t %{_builddir}/virtualbox-kmp-template -p %{SOURCE8} -n %{name}-guest -f %{SOURCE6} -x kdump um xen pae xenpae pv
Requires: %{kernel_module_package_buildreqs}
%description guest-KMP
This package contains the VB kernel-modules for Linux guest virtual machines.
%description kmp
This package contains the kernel-modules that VirtualBox uses to create or run virtual machines.
##########################################
%package guest-x11
Summary: VirtualBox X11 drivers for mouse and video
Group: System/X11/Servers/XF86_4
Requires: %{name}-guest-kmp = %{version}
Requires: %{name}-kmp = %{version}
Supplements: modalias(xorg-x11-server:pci:v000080EEd0000BEEFsv*sd*bc*sc*i*)
#rename from xorg-x11-driver-virtualbox-ose:
Provides: xorg-x11-driver-virtualbox-ose = %{version}
@ -325,7 +311,7 @@ This package contains X11 guest utilities and X11 guest mouse and video drivers
%package guest-tools
Summary: VirtualBox guest tools
Group: System/Emulators/PC
Requires: %{name}-guest-kmp = %{version}
Requires: %{name}-kmp = %{version}
Supplements: modalias(pci:v000080EEd0000BEEFsv*sd*bc*sc*i*)
#rename from "ose" version:
Provides: %{name}-ose-guest-tools = %{version}
@ -396,7 +382,7 @@ BuildArch: noarch
%description guest-source
Source files for %{name} guest kernel modules
These can be built for custom kernels using
cd %{_prefix}/src/kernel-modules/virtualbox/guest ; make ; make install
sudo /sbin/vboxguestconfig
###########################################
%package guest-desktop-icons
@ -441,6 +427,7 @@ as an "extpack" for VirtualBox. The implementation is licensed under GPL.
%patch108 -p1
%patch109 -p1
%patch110 -p1
%patch111 -p1
%patch112 -p1
%patch113 -p1
%patch115 -p1
@ -451,25 +438,17 @@ as an "extpack" for VirtualBox. The implementation is licensed under GPL.
%patch123 -p1
%patch125 -p1
%patch128 -p1
# Tumbleweed, Leap 15.1 and above drm adjustments
%if 0%{?suse_version} > 1500 || (0%{?sle_version} >= 150100 && 0%{?is_opensuse})
%patch129 -p1
%else
%if (0%{?sle_version} == 150100)
# Patch only for SLE15.1
%patch133 -p1
%endif
%endif
# Leap 42.3 adjustments
# Adjustments that are version dependent
%if 0%{?sle_version} == 120300 && 0%{?is_opensuse}
# Patch for Leap 42.3
%patch130 -p1
%endif
# Qt5.13 adjustments
%if %{qt5ver} >= 51300
%patch131 -p1
%endif
# Handle the 32-bit changes needed for Qt 5.13
%ifarch %ix86 && 0%{?qt5ver} >= 51300
%patch132 -p1
%patch134 -p1
%endif
# make VB UI background colors look sane again
%patch999 -p1
@ -550,15 +529,15 @@ install -D -m 644 "COPYING" "%{buildroot}%{_datadir}/licenses/LICENSE.vnc"
#
# build kernel modules for guest and host (check novel-kmp package as example)
# host modules : vboxdrv,vboxnetflt,vboxnetadp,vboxpci
# guest modules : vboxguest,vboxsf vboxvideo (for Leap 15.1)
# guest modules : vboxguest,vboxsf vboxvideo (for Leap 15.1 and older)
echo "build kernel modules"
%if 0%{?suse_version} >= 1500
#%if 0%{?suse_version} < 1550
for vbox_module in out/linux.*/release/bin/src/vbox{drv,netflt,netadp,pci} \
out/linux.*/release/bin/additions/src/vbox{guest,sf,video}; do
%else
for vbox_module in out/linux.*/release/bin/src/vbox{drv,netflt,netadp,pci} \
out/linux.*/release/bin/additions/src/vbox{guest,sf}; do
%endif
#%else
#for vbox_module in out/linux.*/release/bin/src/vbox{drv,netflt,netadp,pci} \
# out/linux.*/release/bin/additions/src/vbox{guest,sf}; do
#%endif
#get the module name from path
module_name=$(basename "$vbox_module")
@ -582,7 +561,7 @@ for vbox_module in out/linux.*/release/bin/src/vbox{drv,netflt,netadp,pci} \
fi
# copy vboxguest (for guest) module symbols which are used by vboxsf and vboxvideo km's:
if [ "$module_name" = "vboxsf" -o \
"$module_name" = "vboxvideo" ] ; then
"$module_name" = "vboxvideo" ] ; then
cp $PWD/modules_build_dir/$flavor/vboxguest/Module.symvers \
$PWD/modules_build_dir/$flavor/$module_name
fi
@ -617,7 +596,7 @@ install -d -m 755 %{buildroot}%{_udevrulesdir}
install -d -m 755 %{buildroot}%{_sysconfdir}/X11/xinit/xinitrc.d
####################################################################################
echo "entering virtualbox-kmp-guest and virtualbox-kmp-host install section"
echo "entering virtualbox-kmp install section"
####################################################################################
export INSTALL_MOD_PATH=%{buildroot}
export INSTALL_MOD_DIR=extra
@ -625,11 +604,11 @@ export INSTALL_MOD_DIR=extra
export INITRD_IN_POSTTRANS=1
export KMP_NEEDS_MKINITRD=0
#to install modules we use here similar steps like in build phase, go through all the modules :
%if 0%{?suse_version} >= 1500
#%if 0%{?suse_version} < 1550
for module_name in vbox{drv,netflt,pci,netadp,guest,sf,video}
%else
for module_name in vbox{drv,netflt,pci,netadp,guest,sf}
%endif
#%else
#for module_name in vbox{drv,netflt,pci,netadp,guest,sf}
#%endif
do
#and through the all flavors
for flavor in %{flavors_to_build}; do
@ -830,7 +809,7 @@ getent group vboxusers >/dev/null || groupadd -r vboxusers
# Add groups for seamless mode and shared folders:
getent group vboxguest >/dev/null || groupadd -r vboxguest
getent group vboxsf >/dev/null || groupadd -r vboxsf
%if 0%{?suse_version} >= 1500
%if 0%{?suse_version} <= 1500
getent group vboxvideo >/dev/null || groupadd -r vboxvideo
%endif
%service_add_pre vboxadd-service.service
@ -957,8 +936,6 @@ export DISABLE_RESTART_ON_UPDATE=yes
%{_vbox_instdir}/VBoxHeadless.so
%{_vbox_instdir}/VBoxNetDHCP.so
%{_vbox_instdir}/VBoxNetNAT.so
%{_vbox_instdir}/VBoxOGLhostcrutil.so
%{_vbox_instdir}/VBoxOGLhosterrorspu.so
%{_vbox_instdir}/VBoxREM*.so
%{_vbox_instdir}/VBoxRT.so
%{_vbox_instdir}/VBoxSharedFolders.so
@ -1034,7 +1011,6 @@ export DISABLE_RESTART_ON_UPDATE=yes
%{_vbox_instdir}/VBoxSDL.so
%{_vbox_instdir}/VBoxSharedCrOpenGL.so
%{_vbox_instdir}/VBoxKeyboard.so
%{_vbox_instdir}/VBoxOGLrenderspu.so
%{_vbox_instdir}/VBoxSharedClipboard.so
%{_datadir}/pixmaps/virtualbox.png
%{_datadir}/applications/%{name}.desktop
@ -1048,8 +1024,6 @@ export DISABLE_RESTART_ON_UPDATE=yes
%{_bindir}/VBoxClient
%{_libdir}/VBoxOGL*.so
%{_libdir}/VBoxEGL*.so
#%%{_libdir}/xorg/modules/drivers/vboxvideo_drv.so
#%%{_libdir}/dri/vboxvideo_dri.so
%{_sysconfdir}/X11/xinit/xinitrc.d/vboxadd-xclient.sh
%files guest-tools