]> git.pld-linux.org Git - packages/VirtualBox.git/blobdiff - VirtualBox.spec
- 4.1.18
[packages/VirtualBox.git] / VirtualBox.spec
index 5494ebc0a34a34cc79ba174c402d5c9cf3bf0d09..24732cd93d199099f9829374d1f0fca7901e4b73 100644 (file)
 %define                _enable_debug_packages  0
 %endif
 
-%define                rel             8
+%define                rel             1
 %define                pname           VirtualBox
 Summary:       VirtualBox - x86 hardware virtualizer
 Summary(pl.UTF-8):     VirtualBox - wirtualizator sprzętu x86
 Name:          %{pname}%{_alt_kernel}
-Version:       4.1.6
+Version:       4.1.18
 Release:       %{rel}
 License:       GPL v2
 Group:         Applications/Emulators
 Source0:       http://download.virtualbox.org/virtualbox/%{version}/%{pname}-%{version}.tar.bz2
-# Source0-md5: 03cd0875729558a46f910483e1984316
+# Source0-md5: 38db0a87cba659b484af868b0c2bd3ac
 Source1:       http://download.virtualbox.org/virtualbox/%{version}/VBoxGuestAdditions_%{version}.iso
-# Source1-md5: 69d144809cec66c61aadcbbf16005d48
+# Source1-md5: f8da062c7a116796304a8e8faf3fc32f
 Source3:       %{pname}-vboxdrv.init
 Source4:       %{pname}-vboxguest.init
 Source5:       %{pname}-vboxnetflt.init
@@ -54,6 +54,12 @@ Source8:     %{pname}-vboxpci.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
@@ -61,6 +67,7 @@ Patch3:               %{pname}-warning_workaround.patch
 Patch4:                %{pname}-vnc.patch
 Patch5:                %{pname}-dri.patch
 Patch6:                %{pname}-disable_build_NetBiosBin.patch
+Patch7:                xserver-1.12.patch
 # ubuntu patches
 Patch10:               16-no-update.patch
 Patch11:               18-system-xorg.patch
@@ -118,6 +125,7 @@ BuildRequires:      python-devel
 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
@@ -153,6 +161,16 @@ BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 %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
@@ -259,7 +277,7 @@ Summary:    X.org mouse driver for VirtualBox guest OS
 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
@@ -275,7 +293,7 @@ Group:              X11/Applications
 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.0
 Requires:      xorg-xserver-server(videodrv-abi) >= 2.0
 
 %description -n xorg-driver-video-vboxvideo
@@ -292,11 +310,13 @@ Summary(pl.UTF-8):        Moduł jądra Linuksa dla VirtualBoksa
 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
@@ -316,11 +336,13 @@ Summary(pl.UTF-8):        Moduł jądra Linuksa dla VirtualBoksa
 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
@@ -338,12 +360,14 @@ Summary(pl.UTF-8):        Moduł jądra Linuksa dla VirtualBoksa
 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
@@ -361,12 +385,14 @@ Summary(pl.UTF-8):        Moduł jądra Linuksa dla VirtualBoksa
 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
@@ -384,12 +410,14 @@ Summary(pl.UTF-8):        Moduł jądra Linuksa dla VirtualBoksa
 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
@@ -408,12 +436,14 @@ Summary(pl.UTF-8):        Moduł jądra Linuksa dla VirtualBoksa
 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
 
@@ -451,7 +481,7 @@ You should install this package in your Guest OS.
 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
@@ -459,6 +489,7 @@ Moduł jądra Linuksa dla VirtualBoksa - sterownik obsługi DRM.
 %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
@@ -499,6 +530,7 @@ kmk -j1 \
 %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
@@ -529,6 +561,7 @@ if cp -al VBox.png $RPM_BUILD_ROOT/Vbox.png 2>/dev/null; then
 fi
 
 cp -a$l %{outdir}/* $RPM_BUILD_ROOT%{_libdir}/%{pname}
+ln -sf %{_docdir}/%{pname}-doc-%{version}/UserManual.pdf $RPM_BUILD_ROOT%{_libdir}/%{pname}/UserManual.pdf
 
 cp -a %{SOURCE1} $RPM_BUILD_ROOT%{_libdir}/VirtualBox/additions/VBoxGuestAdditions.iso
 install -p %{SOURCE10} $RPM_BUILD_ROOT%{_sbindir}/mount.vdi
@@ -595,7 +628,7 @@ rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/additions/mount.vboxsf
 %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
@@ -612,6 +645,21 @@ install -p %{SOURCE8} $RPM_BUILD_ROOT/etc/rc.d/init.d/vboxpci
 
 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
@@ -648,6 +696,7 @@ fi
 %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}
@@ -662,6 +711,7 @@ fi
 %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}
@@ -676,6 +726,7 @@ fi
 %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}
@@ -690,6 +741,7 @@ fi
 %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}
@@ -704,6 +756,7 @@ fi
 %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}
@@ -718,6 +771,7 @@ fi
 %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}
@@ -865,6 +919,7 @@ fi
 %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
 
 %files -n pam-pam_vbox
 %defattr(644,root,root,755)
@@ -873,6 +928,9 @@ fi
 %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
 
@@ -901,31 +959,43 @@ fi
 %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*
 
This page took 0.051073 seconds and 4 git commands to generate.