Author: lkundrak
Update of /cvs/free/rpms/VirtualBox-OSE/devel
In directory se02.es.rpmfusion.net:/tmp/cvs-serv2902/devel
Modified Files:
.cvsignore sources
Added Files:
VirtualBox-OSE-1.6.4-desktop.patch
VirtualBox-OSE-2.0.2-setup.patch
VirtualBox-OSE-2.1.0-32bit.patch
VirtualBox-OSE-2.1.0-icons.patch
VirtualBox-OSE-2.1.2-gcc44.patch
VirtualBox-OSE-2.1.4-libcap.patch
VirtualBox-OSE-2.1.4-swab.patch
VirtualBox-OSE-90-vboxdrv.rules VirtualBox-OSE-guest.modules
VirtualBox-OSE.desktop VirtualBox-OSE.modules
VirtualBox-OSE.spec
Log Message:
Import VirtualBox-OSE
VirtualBox-OSE-1.6.4-desktop.patch:
--- NEW FILE VirtualBox-OSE-1.6.4-desktop.patch ---
This makes the Desktop Entry compliant with the Specification
and corrects the name eliminating possibly unlicensed use of trademark
and confision with differently licensed commercial product.
Lubomir Rintel <lkundrak(a)v3.sk>
--- VirtualBox-1.6.4/src/VBox/Installer/linux/VirtualBox.desktop.desktop 2008-09-02
18:56:23.000000000 +0200
+++ VirtualBox-1.6.4/src/VBox/Installer/linux/VirtualBox.desktop 2008-09-02
18:58:57.000000000 +0200
@@ -1,14 +1,13 @@
[Desktop Entry]
Encoding=UTF-8
Version=1.0
-Name=Sun xVM VirtualBox
+Name=VirtualBox OSE
GenericName=Virtual Machine
Type=Application
Exec=VirtualBox
TryExec=VirtualBox
-DocPath=file://$VBOX_DOC_PATH/UserManual.pdf
Icon=VBox
-Categories=Emulator;System;X-MandrivaLinux-System;
+Categories=Emulator;System;
Comment=Run several virtual systems on a single host computer
Comment[de]=Windows und andere Betriebssysteme unter Linux ausführen
Comment[sv]=Kör flera virtuella system på en enda värddator
VirtualBox-OSE-2.0.2-setup.patch:
--- NEW FILE VirtualBox-OSE-2.0.2-setup.patch ---
Replace some strings which ones that (sometimes) make more sense.
Use QT3 version when QT4 is not available (On el5).
Wrap vditool for fixed LD_LIBRARY_PATH.
Lubomir Rintel <lkundrak(a)v3.sk>
--- VirtualBox-2.0.2/src/VBox/Installer/linux/VBox.sh.setup 2008-09-01 14:23:31.000000000
+0200
+++ VirtualBox-2.0.2/src/VBox/Installer/linux/VBox.sh 2008-09-20 11:01:12.000000000 +0200
@@ -36,19 +36,20 @@
cat << EOF
WARNING: The vboxdrv kernel module is not loaded. Either there is no module
available for the current kernel (`uname -r`) or it failed to
- load. Please recompile the kernel module and install it by
+ load. Reboot the computer, or insert the kernel module by executing
- sudo /etc/init.d/vboxdrv setup
+ '/sbin/modprobe vboxdrv' (as root)
You will not be able to start VMs until this problem is fixed.
EOF
elif [ ! -c /dev/vboxdrv ]; then
cat << EOF
-WARNING: The character device /dev/vboxdrv does not exist. Try
+WARNING: The character device /dev/vboxdrv does not exist. Try running
- sudo /etc/init.d/vboxdrv restart
+ '/sbin/udevtrigger' (as root)
- and if that is not successful, try to re-install the package.
+ and if that is not successful, then you're in situation that
+ can not possibly happen and there's nothing you can do about it.
You will not be able to start VMs until this problem is fixed.
EOF
@@ -86,7 +87,15 @@
APP=${APP##/*/}
case "$APP" in
VirtualBox)
- exec "$INSTALL_DIR/VirtualBox" "$@"
+ if [ -e "$INSTALL_DIR/VirtualBox" ]
+ then
+ exec "$INSTALL_DIR/VirtualBox" "$@"
+ else
+ exec "$INSTALL_DIR/VirtualBox3" "$@"
+ fi
+ ;;
+ VirtualBox3)
+ exec "$INSTALL_DIR/VirtualBox3" "$@"
;;
VBoxManage)
exec "$INSTALL_DIR/VBoxManage" "$@"
@@ -103,6 +112,9 @@
vboxwebsrv)
exec "$INSTALL_DIR/vboxwebsrv" "$@"
;;
+ vditool)
+ exec "$INSTALL_DIR/vditool" "$@"
+ ;;
*)
echo "Unknown application - $APP"
;;
--- VirtualBox-2.0.2/src/VBox/VMM/VM.cpp.setup 2008-09-01 14:23:13.000000000 +0200
+++ VirtualBox-2.0.2/src/VBox/VMM/VM.cpp 2008-09-20 10:47:26.000000000 +0200
@@ -258,8 +258,8 @@
#ifdef RT_OS_LINUX
pszError = N_("VirtualBox kernel driver not loaded. The vboxdrv
kernel module "
"was either not loaded or /dev/vboxdrv is not set
up properly. "
- "Re-setup the kernel module by executing "
- "'/etc/init.d/vboxdrv setup' as
root");
+ "Reboot the computer, or insert the kernel module
by executing "
+ "'/sbin/modprobe vboxdrv' as root");
#else
pszError = N_("VirtualBox kernel driver not loaded");
#endif
@@ -300,8 +300,8 @@
#ifdef RT_OS_LINUX
pszError = N_("VirtualBox kernel driver not installed. The
vboxdrv kernel module "
"was either not loaded or /dev/vboxdrv was not
created for some "
- "reason. Re-setup the kernel module by executing
"
- "'/etc/init.d/vboxdrv setup' as
root");
+ "reason. Insert the kernel module by executing
"
+ "'/sbin/modprobe vboxdrv' as root");
#else
pszError = N_("VirtualBox kernel driver not installed");
#endif
VirtualBox-OSE-2.1.0-32bit.patch:
--- NEW FILE VirtualBox-OSE-2.1.0-32bit.patch ---
Build on x86_64 without 32bit toolchain.
This disables the check for 32bit toolchain and tests that need it (boo).
Lubomir Rintel <lkundrak(a)v3.sk>
--- VirtualBox-2.1.0/src/VBox/Devices/testcase/Makefile.kmk.32bit 2008-12-15
18:25:25.000000000 +0100
+++ VirtualBox-2.1.0/src/VBox/Devices/testcase/Makefile.kmk 2009-01-11 11:36:52.000000000
+0100
@@ -33,22 +33,28 @@
# We setup one 'other' target for executing the structure & alignment
# validation testcases. Perhaps a bit hackish, but extremely useful.
#
+ifneq ($(KBUILD_HOST_ARCH),amd64)
ifeq ($(KBUILD_TARGET),$(KBUILD_HOST))
ifeq ($(filter-out x86.x86 amd64.amd64 x86.amd64,
$(KBUILD_TARGET_ARCH).$(KBUILD_HOST_ARCH)),)
OTHERS += \
$(VBOX_DEVICES_TEST_OUT_DIR)/tstDeviceStructSize.run
endif
endif
+endif
# The normal testing pass.
+ifneq ($(KBUILD_HOST_ARCH),amd64)
TESTING += \
$(VBOX_DEVICES_TEST_OUT_DIR)/tstDeviceStructSize.run
+endif
#
# The testcase generator.
#
+ifneq ($(KBUILD_HOST_ARCH),amd64)
PROGRAMS += tstDeviceStructSizeGC
+endif
tstDeviceStructSizeGC_TEMPLATE = VBOXGCEXE
tstDeviceStructSizeGC_DEFS =
ifdef VBOX_WITH_USB
@@ -78,7 +84,9 @@
#
# The testcase it self.
#
+ifneq ($(KBUILD_HOST_ARCH),amd64)
PROGRAMS += tstDeviceStructSize
+endif
tstDeviceStructSize_TEMPLATE = VBOXR3AUTOTST
tstDeviceStructSize_DEFS =
ifdef VBOX_WITH_USB
--- VirtualBox-2.1.0/src/VBox/VMM/testcase/Makefile.kmk.32bit 2008-12-13
22:59:41.000000000 +0100
+++ VirtualBox-2.1.0/src/VBox/VMM/testcase/Makefile.kmk 2009-01-11 12:29:14.000000000
+0100
@@ -25,7 +25,10 @@
#
# Target lists.
#
-PROGRAMS += tstVMStructSize tstVMStructGC tstAsmStructs tstAsmStructsGC tstVMM
tstVMM-HwAccm tstGlobalConfig tstInstrEmul
+PROGRAMS += tstVMM tstVMM-HwAccm tstGlobalConfig tstInstrEmul
+ifneq ($(KBUILD_HOST_ARCH),amd64)
+ PROGRAMS += tstVMStructSize tstVMStructGC tstAsmStructs tstAsmStructsGC
+endif
ifneq ($(KBUILD_TARGET),win)
PROGRAMS += tstVMMFork
endif
@@ -51,17 +54,23 @@
#
ifeq ($(KBUILD_TARGET),$(KBUILD_HOST))
ifeq ($(filter-out x86.x86 amd64.amd64 x86.amd64,
$(KBUILD_TARGET_ARCH).$(KBUILD_HOST_ARCH)),)
+ ifneq ($(KBUILD_HOST_ARCH),amd64)
OTHERS += \
$(VBOX_VMM_TESTCASE_OUT_DIR)/tstAsmStructs.run \
- $(VBOX_VMM_TESTCASE_OUT_DIR)/tstVMStructSize.run \
+ $(VBOX_VMM_TESTCASE_OUT_DIR)/tstVMStructSize.run
+ endif
+ OTHERS += \
$(VBOX_VMM_TESTCASE_OUT_DIR)/tstInstrEmul.run
endif
endif
# The normal testing pass.
+ifneq ($(KBUILD_HOST_ARCH),amd64)
TESTING += \
$(VBOX_VMM_TESTCASE_OUT_DIR)/tstAsmStructs.run \
- $(VBOX_VMM_TESTCASE_OUT_DIR)/tstVMStructSize.run \
+ $(VBOX_VMM_TESTCASE_OUT_DIR)/tstVMStructSize.run
+endif
+TESTING += \
$(VBOX_VMM_TESTCASE_OUT_DIR)/tstInstrEmul.run
OTHER_CLEAN += \
--- VirtualBox-2.1.0/configure.32bit 2008-12-17 10:49:00.000000000 +0100
+++ VirtualBox-2.1.0/configure 2009-01-11 11:36:52.000000000 +0100
@@ -2092,7 +2092,7 @@
fi
check_libcap
check_compiler_h
- [ "$BUILD_MACHINE" = "amd64" ] && check_32bit
+ #[ "$BUILD_MACHINE" = "amd64" ] && check_32bit
fi
[ -n "$SETUP_WINE" ] && setup_wine
VirtualBox-OSE-2.1.0-icons.patch:
--- NEW FILE VirtualBox-OSE-2.1.0-icons.patch ---
These icons are referred to by the QT3-based frontend, but not
included in the project. SPEC file copies the from QT4 frontend
directory.
Lubomir Rintel <lkundrak(a)v3.sk>
diff -up VirtualBox-2.1.0/src/VBox/Frontends/VirtualBox/VBoxUI.pro.icons
VirtualBox-2.1.0/src/VBox/Frontends/VirtualBox/VBoxUI.pro
--- VirtualBox-2.1.0/src/VBox/Frontends/VirtualBox/VBoxUI.pro.icons 2008-12-30
02:06:39.000000000 +0100
+++ VirtualBox-2.1.0/src/VBox/Frontends/VirtualBox/VBoxUI.pro 2008-12-30
02:08:51.000000000 +0100
@@ -62,40 +62,66 @@ IMAGES = images/tpixel.png \
images/vm_show_logs_disabled_32px.png \
images/vm_start_32px.png \
images/vm_start_disabled_32px.png \
+ images/os_archlinux_64.png \
images/os_archlinux.png \
+ images/os_debian_64.png \
images/os_debian.png \
images/os_dos.png \
images/os_ecs.png \
+ images/os_fedora_64.png \
images/os_fedoracore.png \
+ images/os_fedora.png \
+ images/os_freebsd_64.png \
images/os_freebsd.png \
+ images/os_gentoo_64.png \
images/os_gentoo.png \
images/os_l4.png \
images/os_linux22.png \
+ images/os_linux24_64.png \
images/os_linux24.png \
+ images/os_linux26_64.png \
images/os_linux26.png \
+ images/os_linux_other.png \
+ images/os_mandriva_64.png \
images/os_mandriva.png \
+ images/os_netbsd_64.png \
images/os_netbsd.png \
images/os_netware.png \
+ images/os_openbsd_64.png \
images/os_openbsd.png \
+ images/os_opensolaris_64.png \
images/os_opensolaris.png \
+ images/os_opensuse_64.png \
images/os_opensuse.png \
+ images/os_os2ecs.png \
+ images/os_os2_other.png \
images/os_os2warp3.png \
- images/os_os2warp4.png \
images/os_os2warp45.png \
+ images/os_os2warp4.png \
+ images/os_other.png \
+ images/os_redhat_64.png \
images/os_redhat.png \
+ images/os_solaris_64.png \
images/os_solaris.png \
+ images/os_ubuntu_64.png \
images/os_ubuntu.png \
images/os_unknown.png \
- images/os_win2k.png \
+ images/os_win2k3_64.png \
images/os_win2k3.png \
+ images/os_win2k8_64.png \
images/os_win2k8.png \
+ images/os_win2k.png \
images/os_win31.png \
images/os_win95.png \
images/os_win98.png \
images/os_winme.png \
images/os_winnt4.png \
+ images/os_win_other.png \
+ images/os_winvista_64.png \
images/os_winvista.png \
+ images/os_winxp_64.png \
images/os_winxp.png \
+ images/os_xandros_64.png \
images/os_xandros.png \
images/state_aborted_16px.png \
images/state_discarding_16px.png \
VirtualBox-OSE-2.1.2-gcc44.patch:
--- NEW FILE VirtualBox-OSE-2.1.2-gcc44.patch ---
Make the beast build with GCC 4.4
Lubomir Rintel <lkundrak(a)v3.sk>
diff -up VirtualBox-2.1.2_OSE/configure.gcc44 VirtualBox-2.1.2_OSE/configure
--- VirtualBox-2.1.2_OSE/configure.gcc44 2009-03-14 13:47:48.086155215 +0100
+++ VirtualBox-2.1.2_OSE/configure 2009-03-14 13:47:48.099155125 +0100
@@ -372,9 +372,9 @@ check_gcc()
elif [ $cc_maj -lt 3 \
-o \( $cc_maj -eq 3 -a $cc_min -lt 2 \) \
-o \( $cc_maj -eq 4 -a $cc_min -lt 1 -a "$OS" !=
"darwin" \) \
- -o \( $cc_maj -eq 4 -a $cc_min -gt 3 \) \
+ -o \( $cc_maj -eq 4 -a $cc_min -gt 4 \) \
-o $cc_maj -gt 4 ]; then
- log_failure "gcc version $cc_ver found, expected gcc 3.x with x>1 or gcc
4.x with 0<x<4"
+ log_failure "gcc version $cc_ver found, expected gcc 3.x with x>1 or gcc
4.x with 0<x<5"
fail really
else
log_success "found version $cc_ver"
diff -up VirtualBox-2.1.2_OSE/src/recompiler_new/exec.c.gcc44
VirtualBox-2.1.2_OSE/src/recompiler_new/exec.c
--- VirtualBox-2.1.2_OSE/src/recompiler_new/exec.c.gcc44 2009-03-14 15:32:13.205157315
+0100
+++ VirtualBox-2.1.2_OSE/src/recompiler_new/exec.c 2009-03-14 15:33:13.804150888 +0100
@@ -2751,7 +2751,7 @@ static void notdirty_mem_writeb(void *op
int dirty_flags;
#if defined(VBOX)
ram_addr = addr;
-#elif
+#else
ram_addr = addr - (unsigned long)phys_ram_base;
#endif
#ifdef VBOX
diff -up VirtualBox-2.1.2_OSE/src/VBox/Frontends/VirtualBox4/src/main.cpp.gcc44
VirtualBox-2.1.2_OSE/src/VBox/Frontends/VirtualBox4/src/main.cpp
--- VirtualBox-2.1.2_OSE/src/VBox/Frontends/VirtualBox4/src/main.cpp.gcc44 2009-03-14
15:37:17.874151958 +0100
+++ VirtualBox-2.1.2_OSE/src/VBox/Frontends/VirtualBox4/src/main.cpp 2009-03-14
15:38:07.678153113 +0100
@@ -20,6 +20,7 @@
* additional information or have any questions.
*/
+#include <cstdio>
#include "VBoxGlobal.h"
#include "VBoxProblemReporter.h"
#include "VBoxSelectorWnd.h"
diff -up VirtualBox-2.1.2_OSE/src/VBox/Main/linux/HostHardwareLinux.cpp.gcc44
VirtualBox-2.1.2_OSE/src/VBox/Main/linux/HostHardwareLinux.cpp
--- VirtualBox-2.1.2_OSE/src/VBox/Main/linux/HostHardwareLinux.cpp.gcc44 2009-03-14
15:56:02.806148287 +0100
+++ VirtualBox-2.1.2_OSE/src/VBox/Main/linux/HostHardwareLinux.cpp 2009-03-14
16:15:22.049162257 +0100
@@ -27,6 +27,7 @@
* Header Files *
*******************************************************************************/
+#include <cstdio>
#include <HostHardwareLinux.h>
#include <VBox/log.h>
VirtualBox-OSE-2.1.4-libcap.patch:
--- NEW FILE VirtualBox-OSE-2.1.4-libcap.patch ---
diff -up VirtualBox-2.1.4_OSE/configure.libcap VirtualBox-2.1.4_OSE/configure
--- VirtualBox-2.1.4_OSE/configure.libcap 2009-03-30 14:19:11.475691095 +0200
+++ VirtualBox-2.1.4_OSE/configure 2009-03-30 14:19:45.267690625 +0200
@@ -1548,6 +1548,7 @@ check_libcap()
test_header "libcap library"
cat > .tmp_src.cc << EOF
#include <cstdio>
+#include <sys/types.h>
#include <sys/capability.h>
extern "C" int main(void)
VirtualBox-OSE-2.1.4-swab.patch:
--- NEW FILE VirtualBox-OSE-2.1.4-swab.patch ---
Since 2.6.29, kernel ships swab.h which conflicts with us.
Lubomir Rintel <lkundrak(a)v3.sk>
diff -up VirtualBox-2.1.4_OSE/src/VBox/Devices/Storage/DrvHostDVD.cpp.swab
VirtualBox-2.1.4_OSE/src/VBox/Devices/Storage/DrvHostDVD.cpp
--- VirtualBox-2.1.4_OSE/src/VBox/Devices/Storage/DrvHostDVD.cpp.swab 2009-03-30
14:07:28.804132649 +0200
+++ VirtualBox-2.1.4_OSE/src/VBox/Devices/Storage/DrvHostDVD.cpp 2009-03-30
14:07:30.369131589 +0200
@@ -49,6 +49,7 @@
/* This is another hack for not bothering with C++ unfriendly byteswap macros. */
# define _LINUX_BYTEORDER_SWAB_H
# define _LINUX_BYTEORDER_SWABB_H
+# define _LINUX_SWAB_H
/* Those macros that are needed are defined in the header below */
# include "swab.h"
# include <linux/cdrom.h>
--- NEW FILE VirtualBox-OSE-90-vboxdrv.rules ---
ACTION=="add", DEVPATH=="/class/misc/vboxdrv", OWNER="root",
MODE="0660", GROUP="vboxusers"
--- NEW FILE VirtualBox-OSE-guest.modules ---
#!/bin/sh
/sbin/modprobe vboxadd &>/dev/null
/sbin/modprobe vboxvfs &>/dev/null
--- NEW FILE VirtualBox-OSE.desktop ---
[Desktop Entry]
Encoding=UTF-8
Name=VirtualBox
GenericName=Emulator
Comment=VirtualBox is an Emulator
Exec=VirtualBox
Terminal=False
TryExec=VirtualBox
--- NEW FILE VirtualBox-OSE.modules ---
#!/bin/sh
/sbin/modprobe vboxdrv &>/dev/null
/sbin/modprobe vboxnetflt &>/dev/null
--- NEW FILE VirtualBox-OSE.spec ---
# This is to prevent certain object files from being stripped.
# FIXME: We would not probably get useful information
# without utilizing optflags (see below)
# TODO: Remove executable bit temporarily to prevent stripping
%define debug_package %{nil}
%define groupname vboxusers
Name: VirtualBox-OSE
Version: 2.1.4
Release: 3%{?dist}
Summary: A general-purpose full virtualizer for PC hardware
Group: Development/Tools
License: GPLv2 or (GPLv2 and CDDL)
URL:
http://www.virtualbox.org/wiki/VirtualBox
Source0:
http://download.virtualbox.org/virtualbox/%{version}/VirtualBox-%{version...
Source1:
http://download.virtualbox.org/virtualbox/%{version}/UserManual.pdf
Source3: %{name}.desktop
Source4: %{name}-90-vboxdrv.rules
Source5: %{name}.modules
Source6: %{name}-guest.modules
Patch6: %{name}-1.6.4-desktop.patch
Patch7: %{name}-2.0.2-setup.patch
Patch9: %{name}-2.1.0-icons.patch
Patch10: %{name}-2.1.0-32bit.patch
Patch11: %{name}-2.1.2-gcc44.patch
Patch12: %{name}-2.1.4-swab.patch
Patch13: %{name}-2.1.4-libcap.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
BuildRequires: kBuild >= 0.1.5-1
BuildRequires: SDL-devel xalan-c-devel hal-devel
BuildRequires: dev86 iasl libxslt-devel xerces-c-devel libXcursor-devel libIDL-devel
BuildRequires: yasm
BuildRequires: pulseaudio-libs-devel
BuildRequires: libXmu-devel
BuildRequires: python-devel
BuildRequires: desktop-file-utils
BuildRequires: libcap-devel
%if 0%{?fedora} > 6
BuildRequires: qt4-devel
%else
BuildRequires: qt-devel < 1:4
%endif
ExclusiveArch: %{ix86} x86_64
Requires: %{name}-kmod = %{version}
Provides: %{name}-kmod-common = %{version}
Requires(pre): shadow-utils
%description
A general-purpose full virtualizer and emulator for 32-bit and
64-bit x86 based PC-compatible machines.
%package devel
Summary: %{name} SDK
Group: Development/Libraries
Requires: pyxpcom
Requires: VirtualBox-OSE = %{version}-%{release}
%description devel
%{name} Software Development Kit.
%package guest
Summary: %{name} Guest Additions
Group: System Environment/Base
Requires: %{name}-kmod = %{version}
Provides: %{name}-kmod-common = %{version}
%description guest
Tools that utilize kernel modules for supporting integration
with the Host, including file sharing and tracking of mouse pointer
movement.
%package kmodsrc
Summary: %{name} kernel module source code
Group: System Environment/Kernel
Requires: xorg-x11-server-Xorg
%description kmodsrc
Source tree used for building kernel module packages (%{name}-kmod)
which is generated during the build of main package.
%package -n xorg-x11-drv-%{name}
Summary: X.org X11 %{name} video and mouse driver
Group: User Interface/X Hardware Support
Requires: xorg-x11-server-Xorg
%description -n xorg-x11-drv-%{name}
X.org X11 %{name} video and mouse driver.
%prep
%setup -q -n VirtualBox-%{version}_OSE
cp %{SOURCE1} . # PDF User Guide
%patch6 -p1 -b .desktop
%patch7 -p1 -b .setup
%patch9 -p1 -b .icons
%patch10 -p1 -b .32bit
%patch11 -p1 -b .gcc44
%patch12 -p1 -b .swab
%patch13 -p1 -b .libcap
# Copy icons forgotten from distribution, see patch9
cp src/VBox/Frontends/VirtualBox4/images/os_*.png src/VBox/Frontends/VirtualBox/images
# Remove prebuilt binary tools
rm -rf kBuild
rm -rf tools
# CRLF->LF
sed -i 's/\r//' COPYING
%build
./configure --disable-kmods \
%if 0%{?fedora} > 6
--disable-qt3
%else
--disable-qt4
%endif
. ./env.sh
# VirtualBox build system installs and builds in the same step,
# not allways looking for the installed files to places they have
# really been installed to. Therefore we do not override any of
# the installation paths, but install the tree with the default
# layout under 'obj' and shuffle files around in %%install.
# FIXME: Utilize optflags. This will probably involve patching of makefiles
# Setting VBOX_GCC_OPT to optflags doesn't use the flags for large part of
# the tree, while preventing required symbols to be generated in .r0 files
kmk KBUILD_VERBOSE=2 TOOL_YASM_AS=yasm VBOX_WITH_REGISTRATION_REQUEST=
PATH_INS="$PWD/obj"
%install
rm -rf $RPM_BUILD_ROOT
# The directory layout created below attempts to mimic the one of
# the commercially supported version to minimize confusion
# Directory structure
install -d $RPM_BUILD_ROOT%{_bindir}
install -d $RPM_BUILD_ROOT%{_libdir}
install -d $RPM_BUILD_ROOT%{_libdir}/virtualbox
install -d $RPM_BUILD_ROOT%{_libdir}/virtualbox/components
%if 0%{?fedora} > 6
install -d $RPM_BUILD_ROOT%{_libdir}/virtualbox/nls
%else
install -d $RPM_BUILD_ROOT%{_libdir}/virtualbox/nls3
%endif
install -d $RPM_BUILD_ROOT%{_datadir}/virtualbox/sdk
install -d $RPM_BUILD_ROOT%{_datadir}/pixmaps
install -d $RPM_BUILD_ROOT%{_prefix}/src/%{name}-kmod-%{version}
# Binaries and Wrapper with Launchers
install -p -m 0755 obj/bin/VBox.sh $RPM_BUILD_ROOT%{_bindir}/VBox
ln -sf VBox $RPM_BUILD_ROOT%{_bindir}/VBoxHeadless
ln -sf VBox $RPM_BUILD_ROOT%{_bindir}/VBoxManage
ln -sf VBox $RPM_BUILD_ROOT%{_bindir}/VBoxSDL
ln -sf VBox $RPM_BUILD_ROOT%{_bindir}/VirtualBox
%if 0%{?fedora} <= 6
ln -sf VBox $RPM_BUILD_ROOT%{_bindir}/VirtualBox3
%endif
install -p -m 0755 -t $RPM_BUILD_ROOT%{_bindir} \
obj/bin/VBoxTunctl \
obj/bin/VBoxBFE
# Components
install -p -m 0755 -t $RPM_BUILD_ROOT%{_libdir}/virtualbox/components \
obj/bin/components/*
# Lib
install -p -m 0644 -t $RPM_BUILD_ROOT%{_libdir}/virtualbox \
obj/bin/VBoxDD2.so \
obj/bin/VBoxDD.so \
obj/bin/VBoxDDU.so \
obj/bin/VBoxGuestPropSvc.so \
obj/bin/VBoxHeadless.so \
obj/bin/VBoxPython.so \
obj/bin/VBoxREM.so \
%ifnarch x86_64
obj/bin/VBoxREM32.so \
obj/bin/VBoxREM64.so \
%endif
obj/bin/VBoxRT.so \
obj/bin/VBoxSDL.so \
obj/bin/VBoxSettings.so \
obj/bin/VBoxSharedClipboard.so \
obj/bin/VBoxSharedFolders.so \
obj/bin/VBoxVMM.so \
obj/bin/VBoxXPCOM.so \
obj/bin/VBoxBFE.so \
%if 0%{?fedora} > 6
obj/bin/VBoxKeyboard.so \
obj/bin/VirtualBox.so \
%else
obj/bin/VBoxKeyboard3.so \
obj/bin/VirtualBox3.so \
%endif
obj/bin/V*.gc \
obj/bin/V*.r0
# For some reason this is needed since 2.1.4.
# Upstream binary distribution doesn't do that
pushd $RPM_BUILD_ROOT%{_libdir}/virtualbox/components
ln -sf ../*.so .
popd
# SetUID root binaries
install -p -m 4755 -t $RPM_BUILD_ROOT%{_libdir}/virtualbox \
obj/bin/VBoxHeadless \
obj/bin/VBoxSDL \
%if 0%{?fedora} > 6
obj/bin/VirtualBox
%else
obj/bin/VirtualBox3
%endif
# Other binaries
install -p -m 0755 -t $RPM_BUILD_ROOT%{_libdir}/virtualbox \
obj/bin/VBoxManage \
obj/bin/VBoxSVC \
obj/bin/VBoxXPCOMIPCD
# Language files
%if 0%{?fedora} > 6
install -p -m 0755 -t $RPM_BUILD_ROOT%{_libdir}/virtualbox/nls \
obj/bin/nls/*
%else
install -p -m 0755 -t $RPM_BUILD_ROOT%{_libdir}/virtualbox/nls3 \
obj/bin/nls3/*
%endif
# SDK
cp -rp obj/bin/sdk/. $RPM_BUILD_ROOT%{_datadir}/virtualbox/sdk
install -p -m 0755 -t $RPM_BUILD_ROOT%{_datadir}/virtualbox \
obj/bin/VBoxSysInfo.sh
install -p -m 0644 -t $RPM_BUILD_ROOT%{_datadir}/pixmaps \
obj/bin/VBox.png
# X.Org drivers
install -m 0755 -D obj/bin/additions/vboxmouse_drv_71.so \
$RPM_BUILD_ROOT%{_libdir}/xorg/modules/drivers/vboxmouse_drv.so
install -m 0755 -D obj/bin/additions/vboxvideo_drv_71.so \
$RPM_BUILD_ROOT%{_libdir}/xorg/modules/drivers/vboxvideo_drv.so
# Guest Additions
install -p -m 0755 -t $RPM_BUILD_ROOT%{_bindir} \
obj/bin/additions/mountvboxsf \
obj/bin/additions/vboxadd-timesync \
obj/bin/additions/VBoxClient \
obj/bin/additions/VBoxControl
# Installation root configuration
install -d $RPM_BUILD_ROOT/%{_sysconfdir}/vbox
echo 'INSTALL_DIR="%{_libdir}/virtualbox"' >
$RPM_BUILD_ROOT/%{_sysconfdir}/vbox/vbox.cfg
# Install udev rule
install -p -m 0644 -D %{SOURCE4}
$RPM_BUILD_ROOT%{_sysconfdir}/udev/rules.d/90-vboxdrv.rules
# Install modules load script
install -p -m 0755 -D %{SOURCE5}
$RPM_BUILD_ROOT%{_sysconfdir}/sysconfig/modules/%{name}.modules
install -p -m 0755 -D %{SOURCE6}
$RPM_BUILD_ROOT%{_sysconfdir}/sysconfig/modules/%{name}-guest.modules
# Module Source Code
mkdir -p %{name}-kmod-%{version}
cp -al obj/bin/src/vbox* obj/bin/additions/src/vbox* %{name}-kmod-%{version}
install -d $RPM_BUILD_ROOT%{_datadir}/%{name}-kmod-%{version}
tar --use-compress-program lzma -cf
$RPM_BUILD_ROOT%{_datadir}/%{name}-kmod-%{version}/%{name}-kmod-%{version}.tar.lzma \
%{name}-kmod-%{version}
# Menu entry
desktop-file-install --dir=${RPM_BUILD_ROOT}%{_datadir}/applications \
--vendor='' src/VBox/Installer/linux/VirtualBox.desktop
%clean
rm -rf $RPM_BUILD_ROOT
%pre
getent group %{groupname} >/dev/null || groupadd -r %{groupname}
%files
%defattr(-,root,root,-)
%{_bindir}/VBox
%{_bindir}/VBoxBFE
%{_bindir}/VBoxHeadless
%{_bindir}/VBoxManage
%{_bindir}/VBoxSDL
%{_bindir}/VBoxTunctl
%{_bindir}/VirtualBox
%if 0%{?fedora} <= 6
%{_bindir}/VirtualBox3
%endif
%{_libdir}/virtualbox
%{_datadir}/pixmaps/*
%dir %{_datadir}/virtualbox
%{_datadir}/virtualbox/VBoxSysInfo.sh
%{_datadir}/applications/*.desktop
%config %{_sysconfdir}/vbox/vbox.cfg
%config %{_sysconfdir}/udev/rules.d/90-vboxdrv.rules
%config %{_sysconfdir}/sysconfig/modules/%{name}.modules
%doc COPYING
%files devel
%defattr(0644,root,root,-)
%{_datadir}/virtualbox/sdk
%doc COPYING
%files guest
%defattr(-,root,root,-)
%{_bindir}/mountvboxsf
%{_bindir}/vboxadd-timesync
%{_bindir}/VBoxClient
%{_bindir}/VBoxControl
%config %{_sysconfdir}/sysconfig/modules/%{name}-guest.modules
%doc COPYING
%files kmodsrc
%defattr(-,root,root,-)
%{_datadir}/%{name}-kmod-%{version}
%files -n xorg-x11-drv-%{name}
%defattr(-,root,root,-)
%{_libdir}/xorg/modules/drivers/*
%changelog
* Sun Apr 12 2009 Lubomir Rintel <lkundrak(a)v3.sk> - 2.1.4-3
- Fix SDK permissions
- Fix SDK requires
* Mon Mar 30 2009 Lubomir Rintel <lkundrak(a)v3.sk> - 2.1.4-2
- Fix the swab fix so that we don't break pre-2.6.29 build
* Sat Mar 14 2009 Lubomir Rintel <lkundrak(a)v3.sk> - 2.1.4-1
- Update to 2.1.4
- Pack and compress the module source code
- Drop vendor from desktop entry
* Sat Mar 14 2009 Lubomir Rintel <lkundrak(a)v3.sk> - 2.1.2-3
- Fix build with GCC 4.4
* Thu Feb 05 2009 Lubomir Rintel <lkundrak(a)v3.sk> - 2.1.2-2
- Fix Fedora build, don't attempt to use compat gcc
* Sat Jan 24 2009 Lubomir Rintel <lkundrak(a)v3.sk> - 2.1.2-1
- New upstream release
* Sun Jan 11 2009 Lubomir Rintel <lkundrak(a)v3.sk> - 2.1.0-2
- Fix EL-5 panic
- Build on x86_64 (w/o 32bit toolchain)
* Mon Dec 29 2008 Lubomir Rintel <lkundrak(a)v3.sk> - 2.1.0-1
- New upstream release
- Add guest additions subpackage
- Build QT4 frontend in Fedora
* Mon Sep 29 2008 Lubomir Rintel <lkundrak(a)v3.sk> - 2.0.2-2
- Fix locales path
* Sat Sep 20 2008 Lubomir Rintel <lkundrak(a)v3.sk> - 2.0.2-1
- Update to 2.0.2
- Fix vditool library path
* Thu Sep 04 2008 Lubomir Rintel <lkundrak(a)v3.sk> - 1.6.4-3
- Do the previous change correctly
- Replace occurencies of 'vboxdrv setup'
* Wed Sep 03 2008 Lubomir Rintel <lkundrak(a)v3.sk> - 1.6.4-2
- Move the VboxDD* libs to a less wrong place
* Tue Sep 02 2008 Lubomir Rintel <lkundrak(a)v3.sk> - 1.6.4-1
- Remove selinux subpackage
- Pack the generated source tree for kernel module
- Split off SDK
- Install to more-or-less FHS compliant tree
* Sat Mar 08 2008 Till Maas <opensource till name> - 1.5.6-5
- update group management to match the current guidelines
* Sat Mar 08 2008 Till Maas <opensource till name> - 1.5.6-4
- remove bogus %%post script for kernel module removing and loading.
It worked with dkms, but maybe it was bad anyway.
* Sat Mar 08 2008 Till Maas <opensource till name> - 1.5.6-3
- add requires/provides to be used with kmod package
* Sun Feb 24 2008 Lubomir Kundrak <lkundrak(a)redhat.com> - 1.5.6-2
- SDL-static not needed, as well as the SDL patch
- do not patch configure for kernel sources, use command line switch
* Sun Feb 24 2008 Till Maas <opensource till name> - 1.5.6-1
- update to new version
- add BR: pulseaudio-libs-devel
- remove uneeded recompiler patch
- remove dkms subpackage (it is now a standalone package)
* Sat Feb 16 2008 Lubomir Kundrak <lkundrak(a)redhat.com> - 1.5.2-3
- Hacks to build with gcc43, on F8
* Tue Oct 30 2007 Till Maas <opensource till name> - 1.5.2-2
- add support for x86_64
* Tue Oct 30 2007 Till Maas <opensource till name> - 1.5.2-1
- Update to new version
* Wed Oct 03 2007 Till Maas <opensource till name>
- 1.5.2-0.2.20071003svn5134
- update to devel Version
* Wed Sep 19 2007 Till Maas <opensource till name>
- 1.5.2-0.1.20070919svn4897
- Update to devel Version that may support Fedora as Guest again
- Make /dev/vboxdrv owned by root instead of vboxusers, because only
the group is needed
* Mon Sep 03 2007 Till Maas <opensource till name> - 1.5.0-1
- update to new version
- update License Tag
* Wed Jun 27 2007 Till Maas <opensource till name> - 1.4.0-1
- Update to new version
- Adapt to new kBuild version, which seems to be needed
* Wed Apr 21 2007 Till Maas <opensource till name> - 1.3.8-2
- minor bugfixes in the wrapper script
- rename to VirtualBox-OSE
* Wed Apr 11 2007 Till Maas <opensource till name> - 1.3.8-1
- version bump
- add mkdir $RPM_BUILD_ROOT to %%install to prevent racing condition
- start VBoxSVC with --daemonize
- change source directory in %%prep
- add vditool to wrapper script
- fix path: s/sysconf/sysconfig/ for .modules file
- send rmmod output to /dev/null
- add selinux support
- do not unload the kernel module in preun
* Sun Mar 11 2007 Till Maas <opensource till name> - 1.3.6-3
- new wrapper script, include VBoxSDL
- Use vbox.cfg
- load module in dkms package automatically with sysconfig/modules/virtualbox.modules
- move udev rule to -dkms package
- remove vboxdrv module when deinstalling -dkms package
- add LocalConfig.kmk to make it honour at least some rpm optflags
* Sat Mar 10 2007 Till Maas <opensource till name> - 1.3.6-2
- add COPYING.LIB
- CRLF to LF in COPYING
- add xorg-x11-drv-virtualbox package
* Fri Mar 09 2007 Till Maas <opensource till name> - 1.3.6-1
- Initial release for Fedora, inspired by OpenSuSE spec
Index: .cvsignore
===================================================================
RCS file: /cvs/free/rpms/VirtualBox-OSE/devel/.cvsignore,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- .cvsignore 21 Apr 2009 04:53:10 -0000 1.1
+++ .cvsignore 21 Apr 2009 06:26:11 -0000 1.2
@@ -0,0 +1,2 @@
+VirtualBox-2.1.4-3-OSE.tar.bz2
+UserManual.pdf
Index: sources
===================================================================
RCS file: /cvs/free/rpms/VirtualBox-OSE/devel/sources,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- sources 21 Apr 2009 04:53:10 -0000 1.1
+++ sources 21 Apr 2009 06:26:11 -0000 1.2
@@ -0,0 +1,2 @@
+54548336d61b33e2a01b210b314927cd VirtualBox-2.1.4-3-OSE.tar.bz2
+6d6709fa2a9cb3dfad8c7ad7cd43be32 UserManual.pdf