# If so check if it is distributable.
#
# Conditional build:
+%bcond_without doc # don't build the documentation
%bcond_without dist_kernel # without distribution kernel
%bcond_without kernel # don't build kernel module
%bcond_without userspace # don't build userspace package
%define _enable_debug_packages 0
%endif
-%define rel 0.1
+%define rel 12
%define pname VirtualBox
Summary: VirtualBox OSE - x86 hardware virtualizer
Summary(pl.UTF-8): VirtualBox OSE - wirtualizator sprzętu x86
Name: %{pname}%{_alt_kernel}
-Version: 4.0.0
+Version: 4.0.4
Release: %{rel}
License: GPL v2
Group: Applications/Emulators
Source0: http://download.virtualbox.org/virtualbox/%{version}/%{pname}-%{version}.tar.bz2
-# Source0-md5: 0d8c3d2cb4924140b602bfc115c5801f
+# Source0-md5: b4770ca14d1a8cbad9b3eb0e0028ff4b
Source1: http://download.virtualbox.org/virtualbox/%{version}/VBoxGuestAdditions_%{version}.iso
-# Source1-md5: 89957a63bdd79e15e0b1b8df35acc635
+# Source1-md5: 88604a0e94bf1b8c0d0f18fe4314cfdf
Source3: %{pname}-vboxdrv.init
Source4: %{pname}-vboxguest.init
Source5: %{pname}-vboxnetflt.init
Patch3: %{pname}-warning_workaround.patch
Patch4: %{pname}-vnc.patch
Patch5: %{pname}-dri.patch
+Patch6: %{pname}-vboxnetflt-no-qdisc.patch
+# ubuntu patches
+Patch7: 16-no-update.patch
+Patch8: 18-system-xorg.patch
+Patch9: 22-no-static-libstdcpp.patch
+# /ubuntu patches
+Patch10: %{pname}-gcc.patch
URL: http://www.virtualbox.org/
BuildRequires: rpmbuild(macros) >= 1.535
%if %{with userspace}
%if "%{pld_release}" == "ac"
BuildRequires: XFree86-devel
%else
+BuildRequires: xorg-lib-libXcomposite-devel
BuildRequires: xorg-lib-libXcursor-devel
BuildRequires: xorg-lib-libXmu-devel
+BuildRequires: xorg-xserver-server-devel
%endif
BuildRequires: OpenGL-GLU-devel
BuildRequires: OpenGL-devel
BuildRequires: bcc
BuildRequires: bin86
BuildRequires: curl-devel
-BuildRequires: docbook-dtd44-xml
+%{?with_doc:BuildRequires: docbook-dtd44-xml}
BuildRequires: gcc >= 5:3.2.3
BuildRequires: libIDL-devel
BuildRequires: libcap-static
+BuildRequires: libdrm-devel
BuildRequires: libpng-devel >= 1.2.5
BuildRequires: libstdc++-devel >= 5:3.2.3
BuildRequires: libstdc++-static >= 5:3.2.3
BuildRequires: mkisofs
BuildRequires: makeself
BuildRequires: pam-devel
+BuildRequires: pixman-devel
BuildRequires: pkgconfig
BuildRequires: pulseaudio-devel >= 0.9.0
BuildRequires: python-devel
BuildRequires: qt4-build >= 4.2.0
BuildRequires: qt4-linguist
BuildRequires: sed >= 4.0
+%if %{with doc}
BuildRequires: texlive-fonts-bitstream
BuildRequires: texlive-fonts-other
BuildRequires: texlive-fonts-type1-bitstream
BuildRequires: texlive-format-pdflatex
+BuildRequires: texlive-latex-ucs
+BuildRequires: texlive-xetex
+%endif
BuildRequires: which
BuildRequires: xalan-c-devel >= 1.10.0
BuildRequires: xerces-c-devel >= 2.6.0
Summary(pl.UTF-8): Sterownik myszy dla systemu gościa w VirtualBoksie OSE
Group: X11/Applications
Requires: xorg-xserver-server >= 1.0.99.901
-%if "%{pld_release}" == "ti"
-Requires: xorg-xserver-server(xinput-abi) <= 11.0
-%else
-Requires: xorg-xserver-server(xinput-abi) <= 11.0
-%endif
+Requires: xorg-xserver-server(xinput-abi) <= 12.2
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
-%if "%{pld_release}" == "ti"
-Requires: xorg-xserver-server(videodrv-abi) <= 8.0
-%else
-Requires: xorg-xserver-server(videodrv-abi) <= 8.0
-%endif
+Requires: xorg-xserver-server(videodrv-abi) <= 10.0
Requires: xorg-xserver-server(videodrv-abi) >= 2.0
%description -n xorg-driver-video-vboxvideo
../src/VBox/HostDrivers/linux/export_modules host-modules.tar.gz --without-hardening
tar -zxf host-modules.tar.gz -C HostDrivers
cd -
+%patch6 -p1
+%patch7 -p1
+%patch8 -p1
+%patch9 -p1
+%patch10 -p1
%build
%if %{with userspace}
./configure \
--with-gcc="%{__cc}" \
--with-g++="%{__cxx}" \
+ %{!?with_doc:--disable-docs} \
--disable-java \
--disable-hardening \
--disable-kmods
. ./env.sh && \
-kmk -j1 %{?with_verbose:KBUILD_VERBOSE=3} USER=$(id -un)
+kmk -j1 \
+ %{?with_verbose:KBUILD_VERBOSE=3} \
+ USER=$(id -un) \
+ XSERVER_VERSION="$(rpm -q --queryformat '%{VERSION}\n' xorg-xserver-server-devel | awk -F. ' { print $1 $2 } ' 2> /dev/null || echo ERROR)"
%endif
%if %{with kernel}
mv $RPM_BUILD_ROOT{%{_libdir}/%{pname},%{_pixmapsdir}}/VBox.png
mv $RPM_BUILD_ROOT{%{_libdir}/%{pname},%{_desktopdir}}/virtualbox.desktop
-%if "%{pld_release}" == "ti"
-mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions/vboxmouse_drv_19.so,%{_libdir}/xorg/modules/input/vboxmouse_drv.so}
-mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions/vboxvideo_drv_19.so,%{_libdir}/xorg/modules/drivers/vboxvideo_drv.so}
-%else
-mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions/vboxmouse_drv_19.so,%{_libdir}/xorg/modules/input/vboxmouse_drv.so}
-mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions/vboxvideo_drv_19.so,%{_libdir}/xorg/modules/drivers/vboxvideo_drv.so}
-%endif
+mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions/vboxmouse_drv.so,%{_libdir}/xorg/modules/input/vboxmouse_drv.so}
+mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions/vboxvideo_drv.so,%{_libdir}/xorg/modules/drivers/vboxvideo_drv.so}
mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions/VBoxOGL.so,%{_libdir}/xorg/modules/dri/vboxvideo_dri.so}
# xorg other driver versions
rm -vf $RPM_BUILD_ROOT%{_libdir}/%{pname}/additions/vboxmouse_drv*.{o,so}
%if %{with userspace}
%files
%defattr(644,root,root,755)
-%doc %{outdir}/UserManual.pdf
+%{?with_doc:%doc %{outdir}/UserManual.pdf}
%dir %{_libdir}/VirtualBox
%dir %{_libdir}/VirtualBox/ExtensionPacks
%dir %{_libdir}/VirtualBox/additions
%dir %{_libdir}/VirtualBox/components
%dir %{_libdir}/VirtualBox/icons
+%dir %{_libdir}/VirtualBox/icons/*x*
%dir %{_libdir}/VirtualBox/nls
%attr(755,root,root) %{_bindir}/VBoxBFE
%attr(755,root,root) %{_bindir}/VBoxHeadless