%define version	3.1.6
%define release	2%{?_dist_release}

%define kname	vboxdrv
%define oname	VirtualBox
%define srcname	%{oname}-%{version}-OSE
%define distname	%{oname}-%{version}_OSE
%define dirname vbox-ose
%define pkgver	%{version}

%define vboxlibdir	%{_libdir}/%{name}
%define vboxdatadir	%{_datadir}/%{name}

%define build_additions 1

%ifarch %{ix86}
%define vbox_platform linux.x86
%endif
%ifarch x86_64
%define vbox_platform linux.amd64
%endif

# nuke vbox-specific dependencies
%define _provides_exceptions ^VBox
%define _requires_exceptions ^VBox

Summary:	A general-purpose full virtualizer for x86 hardware
Summary(ja):	汎用の x86 ハードウエア完全仮想化ソフトウエア
Name:		VirtualBox
Version:	%{version}
Release:	%{release}
License:	GPL
Group:		Development/Tools
Url:		http://www.virtualbox.org/

Source0:	http://download.virtualbox.org/virtualbox/%ver/%{srcname}.tar.bz2
Source2:	virtualbox.init.vine
Source4:	60-vboxadd.perms
Source10:	VirtualBox.png
Patch2:		VirtualBox-1.5.6_OSE-kernelrelease.patch
Patch4:		VirtualBox-1.6.0_OSE-futex.patch
Patch5:         virtualbox-fix-vboxadd-req.patch
# (fc) 1.6.0-2mdv fix initscript name in VBox.sh script
Patch6:		VirtualBox-1.6.0_OSE-initscriptname.patch
# (fc) 2.0.2-2mdv disable version check at startup
Patch8:		VirtualBox-disableversioncheck.patch
# (hk) fix build kernel-headers-2.6.29*
Patch10:	VirtualBox-kernel-headers-2.6.29.patch
# (fc) 2.2.0-1mdv add Wine Direct3D guest additions option (Debian)
Patch11:	15-wined3d-guest-addition.patch
# (fc) 2.2.0-1mdv disable update notification (Debian)
Patch12:	16-no-update.patch

# vine
Patch100:	VirtualBox-2.2.2-buildfix.patch

BuildRoot:	%{_tmppath}/%{name}-%{version}-%{release}-buildroot
ExclusiveArch:	%{ix86} x86_64
Requires:	dkms-%{name} = %{version}-%{release}
BuildRequires:	dev86, iasl
BuildRequires:	zlib-devel
BuildRequires:	libXcursor-devel
BuildRequires:	libXmu-devel
BuildRequires:	SDL-devel
BuildRequires:  qt4-devel
BuildRequires:	libIDL-devel
BuildRequires:  e2fsprogs-devel
BuildRequires:	libxslt-devel
BuildRequires:  xerces-c-devel, xalan-c-devel
BuildRequires:	hal-devel
BuildRequires:  libXt-devel
BuildRequires:  libstdc++34-devel
BuildRequires:  python-devel
BuildRequires:  libcap-devel
BuildRequires:	pulseaudio-libs-devel
BuildRequires:	kernel-devel
BuildRequires:  mesa-libGL-devel
BuildRequires:  mesa-libGLU-devel
BuildRequires:	gsoap-devel
BuildRequires:  curl-devel
BuildRequires:  alsa-lib-devel
BuildRequires:	dkms
BuildRequires:  kBuild >= 0.1.5p2
BuildRequires:  yasm
BuildRequires:  qt4-designer
%ifarch x86_64
BuildRequires:  compat32-glibc-devel
%endif

%description
VirtualBox Open Source Edition (OSE) is a general-purpose full
virtualizer for x86 hardware.

%description -l ja
VirtualBox Open Source Edition (OSE) は汎用の x86 ハードウエア
完全仮想化ソフトウエアです。

%package -n	dkms-%{name}
Summary:	VirtualBox OSE kernel module
Summary(ja):    VirtualBox OSE カーネルモジュール
Group:		System Environment/Kernel
Requires(post):	  dkms
Requires(preun):  dkms

%description -n dkms-%{name}
Kernel support for VirtualBox OSE.

%description -l ja -n dkms-%{name}
VirtualBox OSE のカーネルサポートパッケージです。

%if %{build_additions}
%package 	guest-additions
Summary:	Additions for VirtualBox OSE guest systems
Summary(ja):	VirtualBox OSE ゲストシステム用の追加モジュール
Group:		System Environment/Kernel
Requires:	dkms-vboxadd = %{version}-%{release}
Requires:	dkms-vboxvfs = %{version}-%{release}
Requires:	dkms-vboxvideo = %{version}-%{release}
Requires:	xorg-x11-drv-vboxmouse
Requires:	xorg-x11-drv-vboxvideo
Requires:	xorg-x11-server-utils

%description    guest-additions
This packages contains additions for VirtualBox OSE guest systems.
It allows to share files with the host system, copy/paste between
guest and host, and sync time with host.

%description -l ja guest-additions
このパッケージには VirtualBox OSE ゲストシステムのための追加モジュール
が含まれています。これを利用することでホストシステムとファイルを共有し
たり、ゲスト/ホスト間でカット&ペーストを行ったり、ホストと時刻同期をし
たりすることができます。

%package -n	dkms-vboxadd
Summary:	Kernel module for VirtualBox OSE additions
Summary(ja):    VirtualBox OSE additions のカーネルモジュール
Group:		System Environment/Kernel
Requires(post):	  dkms
Requires(preun):  dkms
Provides:	dkms-vboxvfs = %{version}-%{release}
Obsoletes:	dkms-vboxvfs < %{version}-%{release}
Provides:	dkms-vboxvideo = %{version}-%{release}
Obsoletes:	dkms-vboxvideo < %{version}-%{release}

%description -n dkms-vboxadd
Kernel module for VirtualBox OSE additions.

%description -l ja -n dkms-vboxadd
VirtualBox OSE 追加モジュールのためのカーネルモジュールです。

%package -n	xorg-x11-drv-vboxmouse
Summary:	X.org X11 input driver for VirtualBox mouse
Summary:	X.org X11 VirtualBox マウス入力ドライバ
Group:		User Interface/X Hardware Support
Requires:	%{name}-guest-additions

%description -n xorg-x11-drv-vboxmouse
The X.org driver for mouse in VirtualBox guests

%description -l ja -n xorg-x11-drv-vboxmouse
VirtualBox のゲストシステム用の X.org マウスドライバです。

%package -n	xorg-x11-drv-vboxvideo
Summary:	X.org X11 video driver for VirtualBox guests
Summary(ja):	X.org X11 VirtualBox ビデオドライバ
Group:		User Interface/X Hardware Support
Requires:	%{name}-guest-additions

%description -n xorg-x11-drv-vboxvideo
The X.org driver for video in VirtualBox guests

%description -l ja -n xorg-x11-drv-vboxvideo
VirtualBox のゲストシステム用の X.org ビデオドライバです。

%endif

%prep
%setup -q -n %{distname}
%patch2 -p1 -b .kernelrelease
%patch4 -p1 -b .futex
%patch5 -p1 -b .fix-timesync-req
%patch6 -p1 -b .initscriptname
%patch8 -p1 -b .versioncheck
%patch10 -p1 -b .kernel-headers-2.6.29
%patch11 -p1 -b .wined3d
%patch12 -p1 -b .disable-update
%patch100 -p1 -b .buildfix

# remove prebuilt binaries
rm -rf kBuild tools

cat << EOF > LocalConfig.kmk
VBOX_PATH_APP_PRIVATE_ARCH:=%{vboxlibdir}
VBOX_WITH_ORIGIN:=
VBOX_WITH_RUNPATH:=%{vboxlibdir}
VBOX_PATH_APP_PRIVATE:=%{vboxdatadir}
VBOX_WITH_TESTCASE:=
VBOX_WITH_TESTSUITE:=
EOF

%build
./configure --disable-kmods --with-linux=$PWD/fake-linux

%if !%{build_additions}
sed -rie 's/(VBOX_WITH_LINUX_ADDITIONS\s+:=\s+).*/\1/' AutoConfig.kmk
echo VBOX_WITHOUT_ADDITIONS=1 >> LocalConfig.kmk
%endif

. ./env.sh
kmk KBUILD_VERBOSE=2 \
    TOOL_YASM_AS=yasm \
    VBOX_WITH_REGISTRATION_REQUEST= \
    %{?_smp_mflags} all

%install
rm -rf %{buildroot}

# install vbox components
mkdir -p %{buildroot}%{vboxlibdir} %{buildroot}%{vboxdatadir} 

(cd out/%{vbox_platform}/release/bin && tar cf - --exclude=additions .) | \
(cd %{buildroot}%{vboxlibdir} && tar xf -)

# move noarch files to vboxdatadir
mv %{buildroot}%{vboxlibdir}/{VBox*.sh,nls,*.desktop,*.png} %{buildroot}%{vboxdatadir}

# install service
mkdir -p %{buildroot}%{_initrddir}
install -m755 %{SOURCE2} %{buildroot}%{_initrddir}/virtualbox

# install wrappers
mkdir -p %{buildroot}%{_sysconfdir}/vbox
cat > %{buildroot}%{_sysconfdir}/vbox/vbox.cfg << EOF
# VirtualBox installation directory
INSTALL_DIR="%{vboxlibdir}"
EOF
mkdir -p %{buildroot}%{_bindir}
ln -s %{vboxdatadir}/VBox.sh %{buildroot}%{_bindir}/%{name}
ln -s %{vboxdatadir}/VBox.sh %{buildroot}%{_bindir}/VBoxManage
ln -s %{vboxdatadir}/VBox.sh %{buildroot}%{_bindir}/VBoxSDL
ln -s %{vboxdatadir}/VBox.sh %{buildroot}%{_bindir}/VBoxHeadless
#ln -s %{vboxdatadir}/VBox.sh %{buildroot}%{_bindir}/vboxwebsrv

# provide network control tools in bindir
ln -s %{vboxlibdir}/VBoxTunctl %{buildroot}%{_bindir}/VBoxTunctl
ln -s %{vboxlibdir}/VBoxNetAdpCtl %{buildroot}%{_bindir}/VBoxNetAdpCtl
ln -s %{vboxlibdir}/VBoxNetDHCP %{buildroot}%{_bindir}/VBoxNetDHCP

install -d %{buildroot}/var/run/%{name}

# install dkms sources
mkdir -p %{buildroot}%{_usr}/src/%{name}-%{version}-%{release}
cat > vboxbuild << EOF
#!/bin/sh
set -e
make -C %{kname} KERN_DIR=\$1
cp -f %{kname}/Module.symvers vboxnetflt
cp -f %{kname}/Module.symvers vboxnetadp
make -C vboxnetflt KERN_DIR=\$1
make -C vboxnetadp KERN_DIR=\$1
EOF
install -m 0755 vboxbuild %{buildroot}%{_usr}/src/%{name}-%{version}-%{release}
mv %{buildroot}%{vboxlibdir}/src/* %{buildroot}%{_usr}/src/%{name}-%{version}-%{release}/
cat > %{buildroot}%{_usr}/src/%{name}-%{version}-%{release}/dkms.conf << EOF
MAKE[0]="./vboxbuild \$kernel_source_dir"
PACKAGE_NAME=%{name}
PACKAGE_VERSION=%{version}-%{release}
DEST_MODULE_LOCATION[0]=/kernel/3rdparty/vbox
BUILT_MODULE_LOCATION[0]=%{kname}/
BUILT_MODULE_NAME[0]=%{kname}
DEST_MODULE_LOCATION[1]=/kernel/3rdparty/vbox
BUILT_MODULE_LOCATION[1]=vboxnetflt/
BUILT_MODULE_NAME[1]=vboxnetflt
DEST_MODULE_LOCATION[2]=/kernel/3rdparty/vbox
BUILT_MODULE_LOCATION[2]=vboxnetadp/
BUILT_MODULE_NAME[2]=vboxnetadp
AUTOINSTALL=yes
EOF

# install udev rules
mkdir -p %{buildroot}%{_sysconfdir}/udev/rules.d/
cat > %{buildroot}%{_sysconfdir}/udev/rules.d/%{name}.rules << EOF
KERNEL=="%{kname}", MODE="0666"
EOF
cat > %{buildroot}%{_sysconfdir}/udev/rules.d/vbox-additions.rules << EOF
KERNEL=="vboxguest|vboxuser", ENV{ACL_MANAGE}="1"
EOF

# install additions
%if %{build_additions}
mkdir -p %{buildroot}%{_datadir}/hal/fdi/policy/20thirdparty
install -m755 src/VBox/Additions/linux/installer/vboxadd-service.sh %{buildroot}%{_initrddir}/vboxadd-timesync
install -m755 src/VBox/Additions/x11/Installer/VBoxRandR.sh %{buildroot}%{_bindir}/VBoxRandR
install -m755 src/VBox/Additions/linux/installer/90-vboxguest.fdi %{buildroot}%{_datadir}/hal/fdi/policy/20thirdparty/90-vboxguest.fdi

install -d %{buildroot}%{_sysconfdir}/X11/xinit.d
install -m755 src/VBox/Additions/x11/Installer/98vboxadd-xclient %{buildroot}%{_sysconfdir}/X11/xinit.d

pushd out/%{vbox_platform}/release/bin/additions
  install -d %{buildroot}/sbin %{buildroot}%{_sbindir} %{buildroot}/%{_libdir}/dri
  install -m755 mount.vboxsf %{buildroot}/sbin/mount.vboxsf
  install -m755 VBoxService %{buildroot}%{_sbindir}

  install -d %{buildroot}%{_sysconfdir}/security/console.perms.d/
  install -m644 %{SOURCE4} %{buildroot}%{_sysconfdir}/security/console.perms.d/

  install -m755 VBoxClient %{buildroot}%{_bindir}
  install -m755 VBoxControl %{buildroot}%{_bindir}

  install -m755 VBoxOGL*.so %{buildroot}%{_libdir}
  ln -s -f ../VBoxOGL.so %{buildroot}%{_libdir}/dri/vboxvideo_dri.so

  install -d %{buildroot}%{_sysconfdir}/modprobe.preload.d
  cat > %{buildroot}%{_sysconfdir}/modprobe.preload.d/vbox-guest-additions << EOF
vboxadd
vboxvfs
EOF

  install -d %{buildroot}%{_libdir}/xorg/modules/{input,drivers}
  install vboxmouse_drv_17.so %{buildroot}%{_libdir}/xorg/modules/input/vboxmouse_drv.so
  install vboxvideo_drv_17.so %{buildroot}%{_libdir}/xorg/modules/drivers/vboxvideo_drv.so

  mkdir -p %{buildroot}%{_usr}/src/vboxadditions-%{version}-%{release}
  cat > %{buildroot}%{_usr}/src/vboxadditions-%{version}-%{release}/dkms.conf << EOF
PACKAGE_NAME=vboxadditions
PACKAGE_VERSION=%{version}-%{release}
MAKE[0]="make -C \$kernel_source_dir M=\$dkms_tree/\$module/\$module_version/build/vboxguest &&
cp \$dkms_tree/\$module/\$module_version/build/vboxguest/Module.symvers \$dkms_tree/\$module/\$module_version/build/vboxvfs &&
make -C \$kernel_source_dir M=\$dkms_tree/\$module/\$module_version/build/vboxvfs &&
cp \$dkms_tree/\$module/\$module_version/build/vboxvfs/Module.symvers \$dkms_tree/\$module/\$module_version/build/vboxvideo &&
make -C \$kernel_source_dir M=\$dkms_tree/\$module/\$module_version/build/vboxvideo"
EOF

  i=0
  for kmod in vboxguest vboxvfs vboxvideo; do
    mkdir -p %{buildroot}%{_usr}/src/vboxadditions-%{version}-%{release}/$kmod
    cp -a src/$kmod/* %{buildroot}%{_usr}/src/vboxadditions-%{version}-%{release}/$kmod/
    cat >> %{buildroot}%{_usr}/src/vboxadditions-%{version}-%{release}/dkms.conf << EOF
DEST_MODULE_LOCATION[$i]=/kernel/3rdparty/vbox
BUILT_MODULE_LOCATION[$i]=$kmod/
BUILT_MODULE_NAME[$i]=$kmod
EOF
    i=$((i+1))
  done
  cat >> %{buildroot}%{_usr}/src/vboxadditions-%{version}-%{release}/dkms.conf << EOF
CLEAN="make -C \$kernel_source_dir M=\$dkms_tree/\$module/\$module_version/build/vboxguest clean && 
make -C \$kernel_source_dir M=\$dkms_tree/\$module/\$module_version/build/vboxvfs clean && 
make -C \$kernel_source_dir M=\$dkms_tree/\$module/\$module_version/build/vboxvideo clean "
AUTOINSTALL=yes
EOF
popd
  sed 's/^\(.package.*-kernel-\)\(.*-latest\)\(.*\)\\$/\1\2\3Obsoletes: vboxvfs-kernel-\2 vboxvideo-kernel-\2\\n\\/' /etc/dkms/template-dkms-mkrpm.spec > %{buildroot}%{_usr}/src/vboxadditions-%{version}-%{release}/vboxadditions-dkms-mkrpm.spec
%endif

# install icons
mkdir -p %{buildroot}%{_iconsdir}
install -m644 %{SOURCE10} %{buildroot}%{_iconsdir}/

# install menu entries

mkdir -p %{buildroot}%{_datadir}/applications
cat > %{buildroot}%{_datadir}/applications/%{name}.desktop << EOF
[Desktop Entry]
Name=VirtualBox
Comment=Full virtualizer for x86 hardware
Comment[ja]=x86 ハードウエアの完全仮想化システム
Exec=%{_bindir}/%{name}
Icon=%{name}
Type=Application
Terminal=false
Categories=System;Emulator;
EOF

# add missing makefile for kernel module
install -m644 src/VBox/HostDrivers/Support/linux/Makefile %{buildroot}%{_usr}/src/%{name}-%{version}-%{release}/

# remove unpackaged files
rm -rf %{buildroot}%{vboxlibdir}/{src,sdk,testcase}
rm  -f %{buildroot}%{vboxlibdir}/tst*
rm  -f %{buildroot}%{vboxlibdir}/vboxkeyboard.tar.gz
rm  -f %{buildroot}%{vboxlibdir}/SUP*
rm  -f %{buildroot}%{vboxlibdir}/xpidl

%clean
rm -rf %{buildroot}

%post
/sbin/chkconfig --add virtualbox

%postun
if [ "$1" -ge "1" ]; then
  /sbin/service virtualbox condrestart > /dev/null 2>&1 || :
fi

%preun
if [ $1 = 0 ]; then
    service virtualbox stop > /dev/null 2>&1 ||:
    /sbin/chkconfig --del virtualbox
fi
	

%post -n dkms-%{name}
set -x
/usr/sbin/dkms --rpm_safe_upgrade add -m %{name} -v %{version}-%{release} ||:
/usr/sbin/dkms --rpm_safe_upgrade build -m %{name} -v %{version}-%{release} ||:
/usr/sbin/dkms --rpm_safe_upgrade install -m %{name} -v %{version}-%{release} --force ||:
/sbin/modprobe %{kname} >/dev/null 2>&1 || :
/sbin/modprobe vboxnetflt >/dev/null 2>&1 || :

%preun -n dkms-%{name}
# rmmod can fail
/sbin/rmmod vboxnetflt >/dev/null 2>&1
/sbin/rmmod %{kname} >/dev/null 2>&1
set -x
/usr/sbin/dkms --rpm_safe_upgrade remove -m %{name} -v %{version}-%{release} --all || :

%if %{build_additions}
%post guest-additions
/sbin/chkconfig --add vboxadd-timesync

%postun guest-additions
if [ "$1" -ge "1" ]; then
  /sbin/service vboxadd-timesync condrestart > /dev/null 2>&1 || :
fi

%preun guest-additions
if [ $1 = 0 ]; then
    service vboxadd-timesync stop > /dev/null 2>&1 ||:
    /sbin/chkconfig --del vboxadd-timesync
fi

%post -n dkms-vboxadd
set -x
/usr/sbin/dkms --rpm_safe_upgrade add -m vboxadditions -v %{version}-%{release} ||:
/usr/sbin/dkms --rpm_safe_upgrade build -m vboxadditions -v %{version}-%{release} ||:
/usr/sbin/dkms --rpm_safe_upgrade install -m vboxadditions -v %{version}-%{release} ||:
:

%preun -n dkms-vboxadd
set -x
/usr/sbin/dkms --rpm_safe_upgrade remove -m vboxadditions -v %{version}-%{release} --all ||:
:

%endif

%files
%defattr(-,root,root)
%config %{_sysconfdir}/vbox/vbox.cfg
%{_bindir}/%{name}
%{_bindir}/VBoxManage
%{_bindir}/VBoxSDL
%{_bindir}/VBoxHeadless
%{_bindir}/VBoxTunctl
%{_bindir}/VBoxNetAdpCtl
%{_bindir}/VBoxNetDHCP
#%{_bindir}/vboxwebsrv
%{vboxlibdir}
%attr(4711,root,root) %{vboxlibdir}/VBoxHeadless
%attr(4711,root,root) %{vboxlibdir}/VBoxSDL
%attr(4711,root,root) %{vboxlibdir}/%{name}
%attr(4711,root,root) %{vboxlibdir}/VBoxNetAdpCtl
%attr(4711,root,root) %{vboxlibdir}/VBoxNetDHCP
%attr(644,root,root) %{vboxlibdir}/*.gc
%attr(644,root,root) %{vboxlibdir}/*.r0
%{vboxdatadir}
# initscripts integration
%{_initrddir}/virtualbox
%config %{_sysconfdir}/udev/rules.d/%{name}.rules
%dir /var/run/%{name}
# desktop integration
%{_iconsdir}/*.png
%{_datadir}/applications/%{name}.desktop

%files -n dkms-%{name}
%defattr(-,root,root)
%{_usr}/src/%{name}-%{version}-%{release}

%if %{build_additions}
%files guest-additions
%defattr(-,root,root)
/sbin/mount.vboxsf
%{_initrddir}/vboxadd-timesync
%{_sbindir}/VBoxService
%{_bindir}/VBoxClient
%{_bindir}/VBoxControl
%{_bindir}/VBoxRandR
%{_sysconfdir}/security/console.perms.d/60-vboxadd.perms
%{_sysconfdir}/udev/rules.d/vbox-additions.rules
%{_sysconfdir}/X11/xinit.d/98vboxadd-xclient
%{_sysconfdir}/modprobe.preload.d/vbox-guest-additions

%files -n xorg-x11-drv-vboxmouse
%defattr(-,root,root)
%{_libdir}/xorg/modules/input/vboxmouse_drv.so
%{_datadir}/hal/fdi/policy/20thirdparty/90-vboxguest.fdi

%files -n xorg-x11-drv-vboxvideo
%defattr(-,root,root)
%{_libdir}/VBoxOGL*
%{_libdir}/xorg/modules/drivers/vboxvideo_drv.so
%{_libdir}/dri/vboxvideo_dri.so

%files -n dkms-vboxadd
%defattr(-,root,root)
%{_usr}/src/vbox*-%{version}-%{release}

%endif


%changelog
* Mon Apr 19 2010 Daisuke SUZUKI <daisuke@linux.or.jp> 3.1.6-2
- fix initscript

* Sun Apr 18 2010 Daisuke SUZUKI <daisuke@linux.or.jp> 3.1.6-1
- new upstream release

* Tue Nov 17 2009 Daisuke SUZUKI <daisuke@linux.or.jp> 3.0.10-1
- new upstream release
- add missing BR:

* Mon Sep 21 2009 Daisuke SUZUKI <daisuke@linux.or.jp> 3.0.6-1
- new upstream release

* Wed Aug 05 2009 Daisuke SUZUKI <daisuke@linux.or.jp> 3.0.4-1
- new upstream release
- add translated summaries and descriptions

* Mon Jul 13 2009 Daisuke SUZUKI <daisuke@linux.or.jp> 3.0.2-1
- new upstream release

* Wed Jul 01 2009 Daisuke SUZUKI <daisuke@linux.or.jp> 3.0.0-1
- new upstream release

* Tue Jun 09 2009 Daisuke SUZUKI <daisuke@linux.or.jp> 2.2.4-3
- change Group: of dkms-VirtualBox to System Environment/Kernel

* Tue Jun 02 2009 Daisuke SUZUKI <daisuke@linux.or.jp> 2.2.4-2
- remove modprobe.d/vbox-guest-additions

* Sun May 31 2009 Daisuke SUZUKI <daisuke@linux.or.jp> 2.2.4-1
- update to 2.2.4

* Sun May 31 2009 Daisuke SUZUKI <daisuke@linux.or.jp> 2.2.2-1
- initial build for Vine Linux
- update to 2.2.2

* Wed Apr 22 2009 Pascal Terjan <pterjan@mandriva.org> 2.2.0-4mdv2009.1
+ Revision: 368679
- Fix mkrpm template

* Tue Apr 21 2009 Pascal Terjan <pterjan@mandriva.org> 2.2.0-3mdv2009.1
+ Revision: 368502
- BuildRequires:dkms-minimal
- Obsolete -latest dkms binary packages

* Wed Apr 15 2009 Frederic Crozat <fcrozat@mandriva.com> 2.2.0-2mdv2009.1
+ Revision: 367571
- Patch15: kill vboxclient if leftover from previous X11 session
- Patch14 (Sun): fix OpenGL support for Linux Guest additions
- improve packaging to be more LSB compliant

* Fri Apr 10 2009 Frederic Crozat <fcrozat@mandriva.com> 2.2.0-1mdv2009.1
+ Revision: 365828
- Release 2.2.0
- enable OpenGL pass-through. Caveat : Linux guest support is not working when building guest additions with Open source edition (under investigation)
- move location of fdi file (fix mouse integration support when using HAL)
- merge all guest additions kernel module in one single DKMS (pterjan)
- Enable webservice
- Remove patch9, no longer needed (when using kernel 2.6.29.x, you MUST use kernel 2.6.29.1 or later)
- Regenerate patches 8, 10
- Patch11: add Wine Direct3D guest additions option (Debian)
- Patch12: disable update notification (Debian)
- Patch13: make network settings more intuitive (Debian)
- Add missing dependencies in guest additions package
- No longer use gcc 4.2, build fine with latest gcc 4.3
- Replace source3 with upstream version
- Update source4 to change permissions on both guest additions devices
- Fix permissions on non .so files

* Mon Mar 09 2009 Pascal Terjan <pterjan@mandriva.org> 2.1.4-5mdv2009.1
+ Revision: 353280
- vboxvfs needs vboxadd

* Wed Mar 04 2009 Frederic Crozat <fcrozat@mandriva.com> 2.1.4-4mdv2009.1
+ Revision: 348336
- Force rebuild of dkms modules

* Wed Feb 25 2009 Herton Ronaldo Krzesinski <herton@mandriva.com.br> 2.1.4-3mdv2009.1
+ Revision: 344966
- Copy Module.symvers for vboxnetflt dkms build, needed with
  CONFIG_MODVERSIONS enabled in latest cooker kernels.

* Wed Feb 25 2009 Herton Ronaldo Krzesinski <herton@mandriva.com.br> 2.1.4-2mdv2009.1
+ Revision: 344896
- Apply fix for VM load failure with kernels 2.6.29-rc5 or later
  (#48096, http://www.virtualbox.org/ticket/3403).
- Fix building with kernel-headers-2.6.29*

* Tue Feb 17 2009 Frederik Himpe <fhimpe@mandriva.org> 2.1.4-1mdv2009.1
+ Revision: 342236
- Update to new version 2.1.4
- Fix source URL

* Thu Jan 22 2009 Frederic Crozat <fcrozat@mandriva.com> 2.1.2-2mdv2009.1
+ Revision: 332593
- Use xorg 1.6 drivers when building cooker guest addition packages

* Thu Jan 22 2009 Funda Wang <fundawang@mandriva.org> 2.1.2-1mdv2009.1
+ Revision: 332404
- specify CC4.2
- New version 2.1.2
- rediff libpath patch

* Sun Jan 04 2009 Colin Guthrie <cguthrie@mandriva.org> 2.1.0-5mdv2009.1
+ Revision: 324525
- Rebuild mouse and display drivers for xserver 1.6

* Thu Dec 25 2008 Michael Scherer <misc@mandriva.org> 2.1.0-4mdv2009.1
+ Revision: 318540
- rebuild for new python

* Fri Dec 19 2008 Frederic Crozat <fcrozat@mandriva.com> 2.1.0-3mdv2009.1
+ Revision: 316288
- Fix guest additions for cooker, we ship Xorg 1.5 now
- Ship fdi file for vboxmouse

* Fri Dec 19 2008 Adam Williamson <awilliamson@mandriva.org> 2.1.0-2mdv2009.1
+ Revision: 316021
- oops, finish fixing up initscript

* Fri Dec 19 2008 Adam Williamson <awilliamson@mandriva.org> 2.1.0-1mdv2009.1
+ Revision: 316019
- adjust initscript and dkms.conf for the fact that there's now two necessary
  kernel modules for the master: vboxdrv and vboxnetflt
- drop mdvconfig.patch: this stub does nothing useful, and breaks the build
  (see fcrozat's mail on Cooker)
- VBoxAddIF and VBoxDeleteIF are now obsolete and not provided

  + Frederic Crozat <fcrozat@mandriva.com>
    - Release 2.1.0
    - Regenerate patch1
    - update buildrequires

* Sun Nov 30 2008 Frederik Himpe <fhimpe@mandriva.org> 2.0.6-2mdv2009.1
+ Revision: 308552
- Rebuild mouse and display drivers for xserver 1.5

* Wed Nov 26 2008 Funda Wang <fundawang@mandriva.org> 2.0.6-1mdv2009.1
+ Revision: 306865
- New version 2.0.6

* Mon Nov 03 2008 Funda Wang <fundawang@mandriva.org> 2.0.4-1mdv2009.1
+ Revision: 299348
- New version 2.0.4

* Mon Sep 15 2008 Frederic Crozat <fcrozat@mandriva.com> 2.0.2-2mdv2009.0
+ Revision: 284854
- Patch8: disable version check at startup

* Sat Sep 13 2008 Frederik Himpe <fhimpe@mandriva.org> 2.0.2-1mdv2009.0
+ Revision: 284544
- Update to bugfix update 2.0.2

* Tue Sep 09 2008 Olivier Blin <oblin@mandriva.com> 2.0.0-3mdv2009.0
+ Revision: 283015
- build guest additions on x86_64 too (#43593)

  + Frederic Crozat <fcrozat@mandriva.com>
    - Patch7: fix QT4 detection on x86-64 on Mandriva 2008.1

* Thu Sep 04 2008 Frederic Crozat <fcrozat@mandriva.com> 2.0.0-1mdv2009.0
+ Revision: 280850
- Fix BuildRequires
- Release 2.0.0
- Remove patches 3, 7 (merged upstream)

* Mon Sep 01 2008 Herton Ronaldo Krzesinski <herton@mandriva.com.br> 1.6.4-4mdv2009.0
+ Revision: 278071
- Added patch to allow VirtualBox kernel module to build with
  Linux 2.6.27

  + Pixel <pixel@mandriva.com>
    - increase release number
    - use gcc4.2 to build the recompiler (not ported to gcc 4.3 yet)

* Wed Aug 06 2008 Olivier Blin <oblin@mandriva.com> 1.6.4-2mdv2009.0
+ Revision: 264273
- create /var/run/VirtualBox (#41963)
- use tunctl from the tunctl package while VBoxTunctl does not build

* Tue Aug 05 2008 Olivier Blin <oblin@mandriva.com> 1.6.4-1mdv2009.0
+ Revision: 264016
- do not include VBoxTunctl for now (build is broken in upstream tarball)
- rediff misc_register patch (the register part has been implemented upstream, I should submit the deregister hunks)
- fix 1.6.4 build by not building tunctl (some Makefile.kmk are missing)
- 1.6.4

* Tue Jul 29 2008 Frederic Crozat <fcrozat@mandriva.com> 1.6.2-2mdv2009.0
+ Revision: 252777
- Don't use gcc 3.3 for build on 2008.1 or earlier

* Wed Jul 09 2008 Olivier Blin <oblin@mandriva.com> 1.6.2-1mdv2009.0
+ Revision: 232889
- set again linux sources path in configure
- use gcc 3.3 to build the recompiler (not ported to gcc 4.3 yet)
- use kernel-devel-latest instead of kernel-source-latest
- use a prepared copy of the linux tree (for linux/bounds.h)

  + Frederic Crozat <fcrozat@mandriva.com>
    - Release 1.6.2
    - Regenerate patch5
    - Fix duplicated line in specfile

  + Pixel <pixel@mandriva.com>
    - rpm filetriggers deprecates update_menus/update_scrollkeeper/update_mime_database/update_icon_cache/update_desktop_database/post_install_gconf_schemas

* Fri May 16 2008 Frederic Crozat <fcrozat@mandriva.com> 1.6.0-4mdv2009.0
+ Revision: 208160
- Fix seamless mode in guest additions subpackage

* Thu May 15 2008 Anssi Hannula <anssi@mandriva.org> 1.6.0-3mdv2009.0
+ Revision: 207692
- rename VBoxAddIF.sh and VBoxDeleteIF.sh to VBoxAddIF and VBoxDeleteIF
  to match original names and documentation

* Wed May 14 2008 Frederic Crozat <fcrozat@mandriva.com> 1.6.0-2mdv2009.0
+ Revision: 207235
- Replace source1 with patch 6 (use up to date VBox.sh script)
- Ensure VBoxAddIF/VBoxDeleteIF scripts are packaged, as well as VBoxTunctl (Mdv bug #40769)
- package VBoxHeadless (Mdv bug #40771)

* Fri May 09 2008 Olivier Blin <oblin@mandriva.com> 1.6.0-1mdv2009.0
+ Revision: 205313
- try harder to disable additions on x86_64
- buildrequire libxslt-devel
- adapt to vboxadd-xclient being renamed as VBoxClient
- rediff futex patch
- rediff misc_register patch
- 1.6.0
- revert BUILT_MODULE_NAME addition, the bug is fixed in dkms

  + Anssi Hannula <anssi@mandriva.org>
    - add BUILT_MODULE_NAME to dkms.conf of vboxadd and vboxvfs (fixes DKMS
      error)

* Tue Feb 26 2008 Olivier Blin <oblin@mandriva.com> 1.5.6-1mdv2008.1
+ Revision: 175619
- 1.5.6
- rediff KERNELRELEASE patch

* Tue Feb 26 2008 Olivier Blin <oblin@mandriva.com> 1.5.4-5mdv2008.1
+ Revision: 175610
- try to start dkms instead of vboxadd in vboxadd-timesync service (since modules are loaded from modprobe.preload.d, #36728)

* Fri Feb 08 2008 Thierry Vignaud <tvignaud@mandriva.com> 1.5.4-4mdv2008.1
+ Revision: 163970
- drop old menu

  + Frederic Crozat <fcrozat@mandriva.com>
    - Really disable pulseaudio support on 2008.0 or older

* Thu Jan 10 2008 Frederic Crozat <fcrozat@mandriva.com> 1.5.4-3mdv2008.1
+ Revision: 147602
- Use correct version of x11 mouse and video additional driver when used on 2008.1 (xorg 1.4) and 2008.0
- Only build pulseaudio support for 2008.1

* Wed Jan 09 2008 Olivier Blin <oblin@mandriva.com> 1.5.4-2mdv2008.1
+ Revision: 147006
- fix dkms build for kernels different from running kernel

* Thu Jan 03 2008 Olivier Blin <oblin@mandriva.com> 1.5.4-1mdv2008.1
+ Revision: 142711
- buildrequire pulseaudio-devel
- rediff libpath patch
- remove 2.6.24 build fix, fixed upstream
- 1.5.4
- restore BuildRoot

  + Pascal Terjan <pterjan@mandriva.org>
    - Switch to Debian patch for 2.6.24
    - Re-create the 2.6.24 patch, some bits got lost

  + Thierry Vignaud <tvignaud@mandriva.com>
    - kill re-definition of %%buildroot on Pixel's request
    - kill explicit icon extension

  + Giuseppe Ghibò <ghibo@mandriva.com>
    - Use kernel-source-latest in BuildRequires as conditional.
    - Add conditional build flags for older release.
    - Let Patch5 conditional.

* Fri Nov 30 2007 Pascal Terjan <pterjan@mandriva.org> 1.5.2-3mdv2008.1
+ Revision: 114076
- Improve 2.6.24 patch so that it should still build with older kernels

* Fri Nov 30 2007 Pascal Terjan <pterjan@mandriva.org> 1.5.2-2mdv2008.1
+ Revision: 114047
- Fix other parts to build with 2.6.24
- Fix vboxdrv for 2.6.24

* Tue Nov 13 2007 Olivier Blin <oblin@mandriva.com> 1.5.2-1mdv2008.1
+ Revision: 108363
- remove keyboards patch (was from upstream svn)
- rediff kernelrelease patch
- rediff libpath patch
- 1.5.2

* Thu Oct 04 2007 Olivier Blin <oblin@mandriva.com> 1.5.0-6mdv2008.0
+ Revision: 95447
- really apply misc_register patch (so that vboxadd devices are automatically created)
- add release in dkms PACKAGE_VERSION to ease upgrades

* Sat Sep 29 2007 Olivier Blin <oblin@mandriva.com> 1.5.0-5mdv2008.0
+ Revision: 93837
- require kmod(vboxdrv) instead of dkms package
- do not mark initscript as config file
- move initscripts and udev rules out of dkms package (so that it works when using dkms prebuilt modules)

* Sat Sep 29 2007 Olivier Blin <oblin@mandriva.com> 1.5.0-4mdv2008.0
+ Revision: 93812
- add vboxadd-timesync service
- add pam_console perms file to assign vboxadd device to console user
- use misc_register() to register vboxadd device so that /dev/vboxadd gets created automatically by udev

* Fri Sep 28 2007 Olivier Blin <oblin@mandriva.com> 1.5.0-3mdv2008.0
+ Revision: 93770
- add vboxadd-xclient xinit.d script
- release new additions, but we still need to fix mknod for vboxadd
  (or use device_create() in kernel module), set console perms for
  vboxadd in console.perms.d, and add timesync initscript
- make guest additions package require X11 drivers
- make x11 driver packages suggest virtualbox-guest-additions
- add virtualbox-guest-additions package (with xclient, timesync, mount.vboxsf)
- add dkms-vboxadd and dkms-vboxvfs packages

* Fri Sep 28 2007 Olivier Blin <oblin@mandriva.com> 1.5.0-2mdv2008.0
+ Revision: 93534
- build additions on ix86 only
- fix support for Brazilian, Belgian, US intl and US dvorak keyboards and add support for multimedia keys (from upstream SVN)
- buildrequire libstdc++-static-devel
- buildrequire libxt-devel
- buildrequire kernel-source-latest, since iurt/urpmi don't install latest kernel-source automatically
- buildrequire kernel-source
- package mouse guest addition in x11-driver-input-vboxmouse
- package video guest addition in x11-driver-video-vboxvideo
- build VirtualBox additions

* Mon Sep 03 2007 Olivier Blin <oblin@mandriva.com> 1.5.0-1mdv2008.0
+ Revision: 78607
- drop libstdc++5 BuildRequires
- drop unapplied x86_64 NMI watchdog disabling patch (merged upstream)
- 1.5.0
- rediff mdvconfig patch

  + Thierry Vignaud <tvignaud@mandriva.com>
    - kill desktop-file-validate's 'warning: key "Encoding" in group "Desktop Entry" is deprecated'

* Fri Jun 08 2007 Per Øyvind Karlsen <peroyvind@mandriva.org> 1.4.0-1mdv2008.0
+ Revision: 37085
- from Jos?\195?\169 Melo <mmodem00@gmail.com>:
  	o 1.4.0
  	o update patch:2 since is needed to load (modprobe) vbox driver in kernel-2.6.17
  	o remove patch1 since is becomes obsolete with this new version,and continues installing and running stable no matter if is kernel-2.6.17 or greater
  	o add missing buildrequire hal-devel


* Thu Mar 15 2007 Gwenole Beauchesne <gbeauchesne@mandriva.com> 1.3.8-1mdv2007.1
+ Revision: 144313
- add should-start: dkms to initscript (#29523)
- 1.3.8
  * hard reset network device on reboot
  * fix issues with IBM JVM 1.4.2 in Linux guests
  * add support for X.org 7.2.x in Linux guest additions

* Fri Mar 02 2007 Gwenole Beauchesne <gbeauchesne@mandriva.com> 1.3.6-1mdv2007.1
+ Revision: 131492
- disable NMIs on Core 2 platforms too
- 1.3.6
  * fix some GUI issues
  * fix OpenBSD 4.0 support
  * fix CD/DVD-ROM detection in Windows Vista guests
  * fix networking issues with Windows NT 4.0 guests
  * fix some ALSA problems that could cause system reboots

* Mon Feb 12 2007 Gwenole Beauchesne <gbeauchesne@mandriva.com> 1.3.4-1mdv2007.1
+ Revision: 119895
- 1.3.4

* Mon Feb 12 2007 Gwenole Beauchesne <gbeauchesne@mandriva.com> 1.3.3.20070209-1mdv2007.1
+ Revision: 119017
- SVN updates (2007/02/09):
  * additional 64-bit fixes
  * asynchronous packets transmission in NIC code

* Sat Feb 03 2007 Gwenole Beauchesne <gbeauchesne@mandriva.com> 1.3.3.20070202-1mdv2007.1
+ Revision: 116064
- various 64-bit fixes
- updates from SVN (2007/02/02):
  * initial 64-bit host support
  * fix IDE for Open Solaris 10
  * add VDI compacting to the GUI

* Sat Jan 27 2007 Gwenole Beauchesne <gbeauchesne@mandriva.com> 1.3.3-1mdv2007.1
+ Revision: 114276
- initial mandriva linux package

