%define _enable_debug_packages 0
%endif
-%define rel 6
+%define rel 3
%define pname VirtualBox
Summary: VirtualBox - x86 hardware virtualizer
Summary(pl.UTF-8): VirtualBox - wirtualizator sprzętu x86
Name: %{pname}%{_alt_kernel}
-Version: 4.1.4
+Version: 4.2.0
Release: %{rel}
License: GPL v2
Group: Applications/Emulators
Source0: http://download.virtualbox.org/virtualbox/%{version}/%{pname}-%{version}.tar.bz2
-# Source0-md5: dc6e6801b3823332b6ca2e9915221aae
+# Source0-md5: 691b4134983ce7d89b9fb683305cb647
Source1: http://download.virtualbox.org/virtualbox/%{version}/VBoxGuestAdditions_%{version}.iso
-# Source1-md5: 3ea70652459c8590efb8c64f83f4736a
+# Source1-md5: ee74e968bab97466c3b463a0b4d665f5
Source3: %{pname}-vboxdrv.init
Source4: %{pname}-vboxguest.init
Source5: %{pname}-vboxnetflt.init
Source9: %{pname}.sh
Source10: mount.vdi
Source11: udev.rules
+Source12: %{pname}-vboxdrv-modules-load.conf
+Source13: %{pname}-vboxguest-modules-load.conf
+Source14: %{pname}-vboxnetflt-modules-load.conf
+Source15: %{pname}-vboxsf-modules-load.conf
+Source16: %{pname}-vboxnetadp-modules-load.conf
+Source17: %{pname}-vboxpci-modules-load.conf
Patch0: %{pname}-configure-spaces.patch
Patch1: %{pname}-export_modules.patch
Patch2: %{pname}-VBoxSysInfo.patch
Patch3: %{pname}-warning_workaround.patch
-Patch4: %{pname}-vnc.patch
-Patch5: %{pname}-dri.patch
-Patch6: %{pname}-disable_build_NetBiosBin.patch
-Patch7: %{pname}-build.patch
+Patch4: %{pname}-dri.patch
+Patch5: %{pname}-disable_build_NetBiosBin.patch
+Patch6: xserver-1.12.patch
# ubuntu patches
Patch10: 16-no-update.patch
Patch11: 18-system-xorg.patch
BuildRequires: libstdc++-devel >= 5:3.2.3
BuildRequires: libstdc++-static >= 5:3.2.3
BuildRequires: libuuid-devel
-BuildRequires: libvncserver-devel >= 0.9.7
+BuildRequires: libvncserver-devel >= 0.9.9
BuildRequires: libxml2-devel >= 2.6.26
BuildRequires: libxslt-devel >= 1.1.17
BuildRequires: libxslt-progs >= 1.1.17
BuildRequires: python-modules
BuildRequires: qt4-build >= 4.2.0
BuildRequires: qt4-linguist
+BuildRequires: rpmbuild(macros) >= 1.627
BuildRequires: sed >= 4.0
%if %{with doc}
BuildRequires: texlive-fonts-bitstream
Requires(pre): /usr/bin/getgid
Requires(pre): /usr/sbin/groupadd
Requires: QtCore >= 4.7.0
+Requires: libvncserver >= 0.9.9
Suggests: gxmessage
Provides: group(vbox)
ExclusiveArch: %{ix86} %{x8664}
%define outdir out/%{vbox_platform}/release/bin
%define _sbindir /sbin
+# workaround buggy 'file' results:
+#
+# EfiThunk: \0
+# qt_ro.qm: \0 "<\270d\030\312\357\234\225\315!\034\277`\241\275\335B"
+# VBoxEFI32.fd: \0
+# VBoxEFI64.fd: \0
+#
+# which lead to 'Stripping ... ELF shared libraries... (...)/nls/qt_ro.qm: File format not recognized'
+%define _noautostrip .*%{_libdir}/%{name}/.*
+
%description
Oracle VirtualBox is a general-purpose full virtualizer for x86
hardware. Targeted at server, desktop and embedded use, it is now the
Summary(pl.UTF-8): Sterownik myszy dla systemu gościa w VirtualBoksie
Group: X11/Applications
Requires: xorg-xserver-server >= 1.0.99.901
-Requires: xorg-xserver-server(xinput-abi) <= 13.0
+Requires: xorg-xserver-server(xinput-abi) <= 16.0
Requires: xorg-xserver-server(xinput-abi) >= 4.0
%description -n xorg-driver-input-vboxmouse
Requires: Mesa-dri-driver-swrast
Requires: xorg-xserver-libdri >= 1.7.4
Requires: xorg-xserver-server >= 1.0.99.901
-Requires: xorg-xserver-server(videodrv-abi) <= 11.0
+Requires: xorg-xserver-server(videodrv-abi) <= 12.1
Requires: xorg-xserver-server(videodrv-abi) >= 2.0
%description -n xorg-driver-video-vboxvideo
Release: %{rel}@%{_kernel_ver_str}
Group: Base/Kernel
Requires(post,postun): /sbin/depmod
+Requires(post): systemd-units >= 38
Requires: dev >= 2.9.0-7
%if %{with dist_kernel}
%requires_releq_kernel
Requires(postun): %releq_kernel
%endif
+Requires: systemd-units >= 38
Provides: kernel(vboxguest) = %{version}-%{rel}
Obsoletes: kernel%{_alt_kernel}-misc-vboxadd
Conflicts: kernel%{_alt_kernel}-misc-vboxdrv
Release: %{rel}@%{_kernel_ver_str}
Group: Base/Kernel
Requires(post,postun): /sbin/depmod
+Requires(post): systemd-units >= 38
Requires: dev >= 2.9.0-7
%if %{with dist_kernel}
%requires_releq_kernel
Requires(postun): %releq_kernel
%endif
+Requires: systemd-units >= 38
Provides: kernel(vboxdrv) = %{version}-%{rel}
%description -n kernel%{_alt_kernel}-misc-vboxdrv
Release: %{rel}@%{_kernel_ver_str}
Group: Base/Kernel
Requires(post,postun): /sbin/depmod
+Requires(post): systemd-units >= 38
Requires: dev >= 2.9.0-7
Requires: kernel%{_alt_kernel}-misc-vboxdrv
%if %{with dist_kernel}
%requires_releq_kernel
Requires(postun): %releq_kernel
%endif
+Requires: systemd-units >= 38
Provides: kernel(vboxnetflt) = %{version}-%{rel}
%description -n kernel%{_alt_kernel}-misc-vboxnetadp
Release: %{rel}@%{_kernel_ver_str}
Group: Base/Kernel
Requires(post,postun): /sbin/depmod
+Requires(post): systemd-units >= 38
Requires: dev >= 2.9.0-7
Requires: kernel%{_alt_kernel}-misc-vboxdrv
%if %{with dist_kernel}
%requires_releq_kernel
Requires(postun): %releq_kernel
%endif
+Requires: systemd-units >= 38
Provides: kernel(vboxnetflt) = %{version}-%{rel}
%description -n kernel%{_alt_kernel}-misc-vboxnetflt
Release: %{rel}@%{_kernel_ver_str}
Group: Base/Kernel
Requires(post,postun): /sbin/depmod
+Requires(post): systemd-units >= 38
Requires: dev >= 2.9.0-7
Requires: kernel%{_alt_kernel}-misc-vboxdrv
%if %{with dist_kernel}
%requires_releq_kernel
Requires(postun): %releq_kernel
%endif
+Requires: systemd-units >= 38
Provides: kernel(vboxpci) = %{version}-%{rel}
%description -n kernel%{_alt_kernel}-misc-vboxpci
Release: %{rel}@%{_kernel_ver_str}
Group: Base/Kernel
Requires(post,postun): /sbin/depmod
+Requires(post): systemd-units >= 38
Requires: dev >= 2.9.0-7
Requires: kernel%{_alt_kernel}-misc-vboxguest
%if %{with dist_kernel}
%requires_releq_kernel
Requires(postun): %releq_kernel
%endif
+Requires: systemd-units >= 38
Provides: kernel(vboxsf) = %{version}-%{rel}
Obsoletes: kernel%{_alt_kernel}-misc-vboxvfs
Moduł jądra Linuksa dla VirtualBoksa - sterownik obsługi DRM.
%prep
-%setup -q -n %{pname}-%{version}_OSE
+%setup -q -n %{pname}-%{version}
%patch0 -p1
%patch1 -p1
%patch2 -p1
%patch4 -p1
%patch5 -p1
%patch6 -p1
-%patch7 -p1
%{__sed} -i -e 's,@VBOX_DOC_PATH@,%{_docdir}/%{name}-%{version},' \
-e 's/Categories=.*/Categories=Utility;Emulator;/' src/VBox/Installer/common/virtualbox.desktop.in
%endif
%if %{with kernel}
+export KERN_DIR=%{_kernelsrcdir}
cd PLD-MODULE-BUILD/HostDrivers
%build_kernel_modules -m vboxdrv -C vboxdrv
%build_kernel_modules -m vboxnetadp -C vboxnetadp
cp -a$l %{outdir}/* $RPM_BUILD_ROOT%{_libdir}/%{pname}
+%if %{with doc}
+ln -sf %{_docdir}/%{pname}-doc-%{version}/UserManual.pdf $RPM_BUILD_ROOT%{_libdir}/%{pname}/UserManual.pdf
+%endif
+
cp -a %{SOURCE1} $RPM_BUILD_ROOT%{_libdir}/VirtualBox/additions/VBoxGuestAdditions.iso
install -p %{SOURCE10} $RPM_BUILD_ROOT%{_sbindir}/mount.vdi
install -p VirtualBox-wrapper.sh $RPM_BUILD_ROOT%{_libdir}/%{pname}
rm -r $RPM_BUILD_ROOT%{_libdir}/%{pname}/additions/src
rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/vboxkeyboard.tar.bz2
rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/tst*
-
-# IPRT Testcase / Tool - Source Code Massager.
-rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/scm
+rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/ExtensionPacks/VNC/ExtPack-license.*
# Guest Only Tools
install -d $RPM_BUILD_ROOT/etc/{X11/xinit/xinitrc.d,xdg/autostart}
%endif
%if %{with kernel}
-install -d $RPM_BUILD_ROOT{/etc/{rc.d/init.d,modprobe.d},%{_sbindir}}
+install -d $RPM_BUILD_ROOT{/etc/{rc.d/init.d,modules-load.d},%{_sbindir},%{systemdunitdir}}
install -p %{SOURCE3} $RPM_BUILD_ROOT/etc/rc.d/init.d/vboxdrv
install -p %{SOURCE4} $RPM_BUILD_ROOT/etc/rc.d/init.d/vboxguest
install -p %{SOURCE5} $RPM_BUILD_ROOT/etc/rc.d/init.d/vboxnetflt
install -p mount.vboxsf $RPM_BUILD_ROOT%{_sbindir}/mount.vboxsf
+# Tell systemd to load modules
+install -p %{SOURCE12} $RPM_BUILD_ROOT/etc/modules-load.d/vboxdrv.conf
+install -p %{SOURCE13} $RPM_BUILD_ROOT/etc/modules-load.d/vboxguest.conf
+install -p %{SOURCE14} $RPM_BUILD_ROOT/etc/modules-load.d/vboxnetflt.conf
+install -p %{SOURCE15} $RPM_BUILD_ROOT/etc/modules-load.d/vboxsf.conf
+install -p %{SOURCE16} $RPM_BUILD_ROOT/etc/modules-load.d/vboxnetadp.conf
+install -p %{SOURCE17} $RPM_BUILD_ROOT/etc/modules-load.d/vboxpci.conf
+
+# And mask module-loading services
+ln -sf /dev/null $RPM_BUILD_ROOT%{systemdunitdir}/vboxdrv.service
+ln -sf /dev/null $RPM_BUILD_ROOT%{systemdunitdir}/vboxguest.service
+ln -sf /dev/null $RPM_BUILD_ROOT%{systemdunitdir}/vboxnetflt.service
+ln -sf /dev/null $RPM_BUILD_ROOT%{systemdunitdir}/vboxsf.service
+ln -sf /dev/null $RPM_BUILD_ROOT%{systemdunitdir}/vboxnetadp.service
+ln -sf /dev/null $RPM_BUILD_ROOT%{systemdunitdir}/vboxpci.service
%endif
%clean
%depmod %{_kernel_ver}
/sbin/chkconfig --add vboxguest
%service vboxguest restart "VirtualBox Guest additions driver"
+%systemd_reload
%postun -n kernel%{_alt_kernel}-misc-vboxguest
%depmod %{_kernel_ver}
%depmod %{_kernel_ver}
/sbin/chkconfig --add vboxdrv
%service vboxdrv restart "VirtualBox Support Driver"
+%systemd_reload
%postun -n kernel%{_alt_kernel}-misc-vboxdrv
%depmod %{_kernel_ver}
%depmod %{_kernel_ver}
/sbin/chkconfig --add vboxnetadp
%service vboxnetadp restart "VirtualBox Network HostOnly driver"
+%systemd_reload
%postun -n kernel%{_alt_kernel}-misc-vboxnetadp
%depmod %{_kernel_ver}
%depmod %{_kernel_ver}
/sbin/chkconfig --add vboxnetflt
%service vboxnetflt restart "VirtualBox Network Filter driver"
+%systemd_reload
%postun -n kernel%{_alt_kernel}-misc-vboxnetflt
%depmod %{_kernel_ver}
%depmod %{_kernel_ver}
/sbin/chkconfig --add vboxpci
%service vboxnetflt restart "VirtualBox PCI passthrough driver"
+%systemd_reload
%postun -n kernel%{_alt_kernel}-misc-vboxpci
%depmod %{_kernel_ver}
%depmod %{_kernel_ver}
/sbin/chkconfig --add vboxsf
%service vboxsf restart "VirtualBox Host file system access (Shared Folders)"
+%systemd_reload
%postun -n kernel%{_alt_kernel}-misc-vboxsf
%depmod %{_kernel_ver}
%defattr(644,root,root,755)
%dir %{_libdir}/VirtualBox
%dir %{_libdir}/VirtualBox/ExtensionPacks
+%dir %{_libdir}/VirtualBox/ExtensionPacks/VNC
+%dir %{_libdir}/VirtualBox/ExtensionPacks/VNC/linux*
%dir %{_libdir}/VirtualBox/additions
%dir %{_libdir}/VirtualBox/components
%dir %{_libdir}/VirtualBox/nls
%attr(755,root,root) %{_libdir}/VirtualBox/DBGCPlugInDiggers.so
%attr(755,root,root) %{_libdir}/VirtualBox/VBoxAuth.so
%attr(755,root,root) %{_libdir}/VirtualBox/VBoxAuthSimple.so
+%attr(755,root,root) %{_libdir}/VirtualBox/VBoxAutostart
%attr(755,root,root) %{_libdir}/VirtualBox/VBoxBFE
%attr(755,root,root) %{_libdir}/VirtualBox/VBoxBalloonCtrl
%attr(755,root,root) %{_libdir}/VirtualBox/VBoxCreateUSBNode.sh
%attr(755,root,root) %{_libdir}/VirtualBox/VBoxDD2.so
%attr(755,root,root) %{_libdir}/VirtualBox/VBoxDD.so
%attr(755,root,root) %{_libdir}/VirtualBox/VBoxDDU.so
+%attr(755,root,root) %{_libdir}/VirtualBox/VBoxDragAndDropSvc.so
%attr(755,root,root) %{_libdir}/VirtualBox/VBoxExtPackHelperApp
%attr(755,root,root) %{_libdir}/VirtualBox/VBoxGuestControlSvc.so
%attr(755,root,root) %{_libdir}/VirtualBox/VBoxGuestPropSvc.so
%attr(755,root,root) %{_libdir}/VirtualBox/VBoxTestOGL
%attr(755,root,root) %{_libdir}/VirtualBox/VBoxTunctl
%attr(755,root,root) %{_libdir}/VirtualBox/VBoxVMM.so
+%attr(755,root,root) %{_libdir}/VirtualBox/VBoxVMMPreload
%attr(755,root,root) %{_libdir}/VirtualBox/VBoxXPCOMC.so
%attr(755,root,root) %{_libdir}/VirtualBox/VBoxXPCOMIPCD
%attr(755,root,root) %{_libdir}/VirtualBox/VBoxXPCOM.so
%attr(755,root,root) %{_libdir}/VirtualBox/VirtualBox
%attr(755,root,root) %{_libdir}/VirtualBox/VirtualBox-wrapper.sh
+%attr(755,root,root) %{_libdir}/VirtualBox/ExtensionPacks/VNC/linux*/VBoxVNC*.so
%{_libdir}/VirtualBox/VBoxDD2GC.gc
%{_libdir}/VirtualBox/VBoxDDGC.gc
%{_libdir}/VirtualBox/VMMGC.gc
%{_libdir}/VirtualBox/VBoxDD2R0.r0
%{_libdir}/VirtualBox/VBoxDDR0.r0
%{_libdir}/VirtualBox/VMMR0.r0
-%{_libdir}/VirtualBox/EfiThunk
+#%{_libdir}/VirtualBox/EfiThunk
%{_libdir}/VirtualBox/VBoxEFI32.fd
%{_libdir}/VirtualBox/VBoxEFI64.fd
%{_libdir}/VirtualBox/components/VBoxXPCOMBase.xpt
+%{_libdir}/VirtualBox/ExtensionPacks/VNC/ExtPack.xml
%{_libdir}/VirtualBox/components/VirtualBox_XPCOM.xpt
%attr(755,root,root) %{_libdir}/VirtualBox/components/VBoxC.so
%attr(755,root,root) %{_libdir}/VirtualBox/components/VBoxSVCM.so
%attr(755,root,root) %{_libdir}/VirtualBox/components/VBoxXPCOMIPCC.so
-%lang(ar) %{_libdir}/VirtualBox/nls/*_ar.qm
%lang(bg) %{_libdir}/VirtualBox/nls/*_bg.qm
%lang(ca) %{_libdir}/VirtualBox/nls/*_ca.qm
%lang(ca_VA) %{_libdir}/VirtualBox/nls/*_ca_VA.qm
%lang(cs) %{_libdir}/VirtualBox/nls/*_cs.qm
%lang(da) %{_libdir}/VirtualBox/nls/*_da.qm
%lang(de) %{_libdir}/VirtualBox/nls/*_de.qm
-%lang(el) %{_libdir}/VirtualBox/nls/*_el.qm
%lang(en) %{_libdir}/VirtualBox/nls/*_en.qm
%lang(es) %{_libdir}/VirtualBox/nls/*_es.qm
%lang(eu) %{_libdir}/VirtualBox/nls/*_eu.qm
%attr(755,root,root) %{_libdir}/VirtualBox/additions/vboxadd
%attr(755,root,root) %{_libdir}/VirtualBox/additions/vboxadd-service
%attr(755,root,root) %{_libdir}/VirtualBox/additions/vboxadd-x11
+%attr(755,root,root) %{_libdir}/VirtualBox/additions/vboxvideo_drv_111.so
+#attr(755,root,root) %{_libdir}/VirtualBox/additions/vboxvideo_drv_113.so
%files -n pam-pam_vbox
%defattr(644,root,root,755)
%if %{with doc}
%files doc
%defattr(644,root,root,755)
+# this is a symlink...
+%doc %{_libdir}/%{pname}/UserManual.pdf
+# ..to this file
%doc %{outdir}/UserManual.pdf
%endif
%files -n kernel%{_alt_kernel}-misc-vboxguest
%defattr(644,root,root,755)
%attr(754,root,root) /etc/rc.d/init.d/vboxguest
+%config(noreplace) %verify(not md5 mtime size) /etc/modules-load.d/vboxguest.conf
+%{systemdunitdir}/vboxguest.service
/lib/modules/%{_kernel_ver}/misc/vboxguest.ko*
%files -n kernel%{_alt_kernel}-misc-vboxdrv
%defattr(644,root,root,755)
%attr(754,root,root) /etc/rc.d/init.d/vboxdrv
+%config(noreplace) %verify(not md5 mtime size) /etc/modules-load.d/vboxdrv.conf
+%{systemdunitdir}/vboxdrv.service
/lib/modules/%{_kernel_ver}/misc/vboxdrv.ko*
%files -n kernel%{_alt_kernel}-misc-vboxnetadp
%defattr(644,root,root,755)
%attr(754,root,root) /etc/rc.d/init.d/vboxnetadp
+%config(noreplace) %verify(not md5 mtime size) /etc/modules-load.d/vboxnetadp.conf
+%{systemdunitdir}/vboxnetadp.service
/lib/modules/%{_kernel_ver}/misc/vboxnetadp.ko*
%files -n kernel%{_alt_kernel}-misc-vboxnetflt
%defattr(644,root,root,755)
%attr(754,root,root) /etc/rc.d/init.d/vboxnetflt
+%config(noreplace) %verify(not md5 mtime size) /etc/modules-load.d/vboxnetflt.conf
+%{systemdunitdir}/vboxnetflt.service
/lib/modules/%{_kernel_ver}/misc/vboxnetflt.ko*
%files -n kernel%{_alt_kernel}-misc-vboxpci
%defattr(644,root,root,755)
%attr(754,root,root) /etc/rc.d/init.d/vboxpci
+%config(noreplace) %verify(not md5 mtime size) /etc/modules-load.d/vboxpci.conf
+%{systemdunitdir}/vboxpci.service
/lib/modules/%{_kernel_ver}/misc/vboxpci.ko*
%files -n kernel%{_alt_kernel}-misc-vboxsf
%defattr(644,root,root,755)
%attr(754,root,root) /etc/rc.d/init.d/vboxsf
+%config(noreplace) %verify(not md5 mtime size) /etc/modules-load.d/vboxsf.conf
+%{systemdunitdir}/vboxsf.service
%attr(755,root,root) %{_sbindir}/mount.vboxsf
/lib/modules/%{_kernel_ver}/misc/vboxsf.ko*