]> git.pld-linux.org Git - packages/VirtualBox.git/blobdiff - VirtualBox.spec
bring back virtio (compiles again); rel 2
[packages/VirtualBox.git] / VirtualBox.spec
index 561269cb5b6c33183544cd2a5e35ca97d8fc73a6..e9958656b427b07693e2da189ded920bb07f29ff 100644 (file)
 # - fix desc for dkms packages (proper wording needed), kernel modules desc is mess as well
 #
 # Conditional build:
+%bcond_with    all_langs       # build with all manual translations
 %bcond_without doc             # don't build the documentation
 %bcond_without debuginfo               # disable debuginfo creation (to save space when compiling)
-%bcond_without dist_kernel     # without distribution kernel
 %bcond_without kernel          # don't build kernel module
 %bcond_without userspace       # don't build userspace package
 %bcond_with    webservice      # webservice (SOAP) support
 %bcond_without lightdm         # lightdm greeter
 %bcond_without dkms            # build dkms package
 %bcond_without verbose
+%bcond_without gui                     # disable Qt4 GUI frontend build
+%bcond_without host                    # build guest packages only
 
-%if %{without kernel}
-%undefine      with_dist_kernel
-%else
-%define                _duplicate_files_terminate_build        0
-%endif
-
-# The goal here is to have main, userspace, package built once with
-# simple release number, and only rebuild kernel packages with kernel
-# version as part of release number, without the need to bump release
-# with every kernel change.
 %if 0%{?_pld_builder:1} && %{with kernel} && %{with userspace}
 %{error:kernel and userspace cannot be built at the same time on PLD builders}
 exit 1
 %endif
 
-%if "%{_alt_kernel}" != "%{nil}"
-%if 0%{?build_kernels:1}
-%{error:alt_kernel and build_kernels are mutually exclusive}
-exit 1
-%endif
-%undefine      with_userspace
-%global                _build_kernels          %{alt_kernel}
-%else
-%global                _build_kernels          %{?build_kernels:,%{?build_kernels}}
+%if %{with kernel}
+%define                _duplicate_files_terminate_build        0
 %endif
 
 %if %{without userspace}
@@ -56,81 +41,101 @@ exit 1
 %define                _enable_debug_packages  0
 %endif
 
-%define                kbrs    %(echo %{_build_kernels} | tr , '\\n' | while read n ; do echo %%undefine alt_kernel ; [ -z "$n" ] || echo %%define alt_kernel $n ; echo "BuildRequires:kernel%%{_alt_kernel}-module-build >= 3:2.6.20.2" ; done)
-%define                kpkg    %(echo %{_build_kernels} | tr , '\\n' | while read n ; do echo %%undefine alt_kernel ; [ -z "$n" ] || echo %%define alt_kernel $n ; echo %%kernel_pkg ; done)
-%define                bkpkg   %(echo %{_build_kernels} | tr , '\\n' | while read n ; do echo %%undefine alt_kernel ; [ -z "$n" ] || echo %%define alt_kernel $n ; echo %%build_kernel_pkg ; done)
-%define                ikpkg   %(echo %{_build_kernels} | tr , '\\n' | while read n ; do echo %%undefine alt_kernel ; [ -z "$n" ] || echo %%define alt_kernel $n ; echo %%install_kernel_pkg ; done)
+%ifnarch %{x8664} %{?with_kernel:x32}
+%undefine      with_host
+%endif
+
+%define                qtver   5.6.0
 
-%define                rel             4
+%define                rel             2
 %define                pname           VirtualBox
 Summary:       VirtualBox - x86 hardware virtualizer
 Summary(pl.UTF-8):     VirtualBox - wirtualizator sprzętu x86
 Name:          %{pname}%{?_pld_builder:%{?with_kernel:-kernel}}%{_alt_kernel}
-Version:       4.3.8
+Version:       6.1.16
 Release:       %{rel}%{?_pld_builder:%{?with_kernel:@%{_kernel_ver_str}}}
 License:       GPL v2
 Group:         Applications/Emulators
 Source0:       http://download.virtualbox.org/virtualbox/%{version}/%{pname}-%{version}.tar.bz2
-# Source0-md5: 422ab09b7eb9c0564b55a6a0a6e6678f
+# Source0-md5: a12a647f6c114f2cb1571089b36841fe
 Source1:       http://download.virtualbox.org/virtualbox/%{version}/VBoxGuestAdditions_%{version}.iso
-# Source1-md5: f23d3980a509418b2dcb614483271ffa
+# Source1-md5: 5710cdc38e4d7185b3df1c969b4cb267
 Source2:       vboxservice.init
 Source3:       vboxservice.service
+Source4:       vboxservice.sysconfig
 Source5:       mount.vdi
 Source6:       udev.rules
 Source7:       %{pname}-virtualbox-host-modules-load.conf
 Source8:       %{pname}-virtualbox-guest-modules-load.conf
 Source9:       vboxautostart.init
 Source10:      autostart.cfg
-Patch0:                %{pname}-configure-spaces.patch
+Source11:      vboxclient-vmsvga.service
+Source12:      udev-guest.rules
+Patch0:                %{pname}-version-error.patch
 Patch1:                %{pname}-VBoxSysInfo.patch
 Patch2:                %{pname}-warning_workaround.patch
-Patch3:                %{pname}-dri.patch
 Patch4:                wrapper.patch
-Patch5:                xserver-1.12.patch
 Patch6:                hardening-shared.patch
-Patch7:                lightdm-greeter-glib-includes.patch
+Patch7:                lightdm-greeter-makefile.patch
 Patch8:                lightdm-greeter-g++-link.patch
 Patch9:                pld-guest.patch
 Patch10:       16-no-update.patch
-Patch11:       18-system-xorg.patch
+Patch11:       %{pname}-all-translations.patch
+Patch12:       x32.patch
+Patch13:       %{pname}-no-scrextend.patch
+Patch14:       %{pname}-multipython.patch
+Patch15:       %{pname}-lightdm-1.19.2.patch
+Patch16:       %{pname}-no-vboxvideo.patch
+Patch17:       qt5-gl.patch
 URL:           http://www.virtualbox.org/
 %if %{with userspace}
 %ifarch %{x8664}
-BuildRequires: gcc-multilib
+BuildRequires: gcc-multilib-32
 BuildRequires: glibc-devel(i686)
-BuildRequires: libstdc++-multilib-devel
-BuildRequires: libstdc++-multilib-static
+BuildRequires: libstdc++-multilib-32-devel
+BuildRequires: libstdc++-multilib-32-static
 %endif
 %if "%{pld_release}" == "ac"
 BuildRequires: XFree86-devel
 %else
+BuildRequires: xorg-lib-libX11-devel
 BuildRequires: xorg-lib-libXcomposite-devel
 BuildRequires: xorg-lib-libXcursor-devel
+BuildRequires: xorg-lib-libXdamage-devel
+BuildRequires: xorg-lib-libXext-devel
+BuildRequires: xorg-lib-libXinerama-devel
 BuildRequires: xorg-lib-libXmu-devel
+BuildRequires: xorg-lib-libXrandr-devel
 BuildRequires: xorg-proto-glproto-devel
 BuildRequires: xorg-xserver-server-devel
 %endif
+BuildRequires: EGL-devel
 BuildRequires: OpenGL-GLU-devel
 BuildRequires: OpenGL-devel
-BuildRequires: QtGui-devel
-BuildRequires: QtNetwork-devel
-BuildRequires: QtOpenGL-devel
+BuildRequires: Qt5Core-devel >= %{qtver}
+BuildRequires: Qt5DBus-devel >= %{qtver}
+BuildRequires: Qt5Gui-devel >= %{qtver}
+BuildRequires: Qt5Network-devel >= %{qtver}
+BuildRequires: Qt5OpenGL-devel >= %{qtver}
+BuildRequires: Qt5PrintSupport-devel >= %{qtver}
+BuildRequires: Qt5Widgets-devel >= %{qtver}
+BuildRequires: Qt5X11Extras-devel >= %{qtver}
+BuildRequires: Qt5Xml-devel >= %{qtver}
 BuildRequires: SDL-devel >= 1.2.7
 BuildRequires: acpica
 BuildRequires: alsa-lib-devel >= 1.0.6
 BuildRequires: bash
 BuildRequires: bcc
 BuildRequires: bin86
-BuildRequires: curl-devel
-BuildRequires: device-mapper-devel
+BuildRequires: curl-devel >= 7.19.1
+BuildRequires: device-mapper-devel >= 1.02
 %{?with_doc:BuildRequires:     docbook-dtd44-xml}
 BuildRequires: fakeroot
 %{?with_lightdm:BuildRequires: fltk-devel}
 BuildRequires: gcc >= 5:3.2.3
 %{?with_webservice:BuildRequires:      gsoap-devel}
 BuildRequires: issue
-BuildRequires: kBuild >= 0.1.9998.2700
+BuildRequires: kBuild >= 0.1.9998.3093
 BuildRequires: libIDL-devel
 BuildRequires: libcap-static
 BuildRequires: libdrm-devel
@@ -139,22 +144,23 @@ BuildRequires:    libstdc++-devel >= 5:3.2.3
 BuildRequires: libstdc++-static >= 5:3.2.3
 BuildRequires: libuuid-devel
 BuildRequires: libvncserver-devel >= 0.9.9
-BuildRequires: libvpx-devel
+BuildRequires: libvpx-devel >= 0.9.5
 BuildRequires: libxml2-devel >= 2.6.26
 BuildRequires: libxslt-devel >= 1.1.17
 BuildRequires: libxslt-progs >= 1.1.17
-%{?with_lightdm:BuildRequires: lightdm-libs-qt-devel}
+%{?with_lightdm:BuildRequires: lightdm-libs-qt5-devel}
 BuildRequires: makeself
 BuildRequires: mkisofs
+BuildRequires: openssl-devel >= 1.0.1
 BuildRequires: pam-devel
 BuildRequires: pixman-devel
 BuildRequires: pkgconfig
 BuildRequires: pulseaudio-devel >= 0.9.0
-BuildRequires: python-devel
+BuildRequires: python-devel >= 2.3
 BuildRequires: python-modules
-BuildRequires: qt4-build >= 4.2.0
-BuildRequires: qt4-linguist
-BuildRequires: rpmbuild(macros) >= 1.678
+BuildRequires: qt5-build
+BuildRequires: qt5-linguist
+BuildRequires: rpmbuild(macros) >= 1.715
 BuildRequires: sed >= 4.0
 %if %{with doc}
 BuildRequires: texlive-fonts-bitstream
@@ -167,10 +173,10 @@ BuildRequires:    texlive-xetex
 BuildRequires: which
 BuildRequires: xalan-c-devel >= 1.10.0
 BuildRequires: xerces-c-devel >= 2.6.0
-BuildRequires: yasm
+BuildRequires: yasm >= 0.5.1
 BuildRequires: zlib-devel >= 1.2.1
 %endif
-%{?with_dist_kernel:%{expand:%kbrs}}
+%{?with_kernel:%{expand:%buildrequires_kernel kernel%%{_alt_kernel}-module-build >= 3:2.6.20.2}}
 Requires(post,preun):  /sbin/chkconfig
 Requires(postun):      /usr/sbin/groupdel
 Requires(pre): /usr/bin/getgid
@@ -179,7 +185,7 @@ Requires:   libvncserver >= 0.9.9
 Requires:      udev-core
 Provides:      group(vbox)
 Obsoletes:     VirtualBox-udev < 4.2.10-5
-ExclusiveArch: %{ix86} %{x8664}
+ExclusiveArch: %{ix86} %{x8664} %{?with_kernel:x32}
 BuildRoot:     %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 
 %ifarch %{x8664}
@@ -191,6 +197,10 @@ BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 %define                outdir          out/%{vbox_platform}/release/bin
 %define                objdir          out/%{vbox_platform}/release/obj
 
+%define                filterout               -Werror=format-security
+
+%define                _noautochrpath  .*\\.debug$
+
 %description
 Oracle VirtualBox is a general-purpose full virtualizer for x86
 hardware. Targeted at server, desktop and embedded use, it is now the
@@ -240,7 +250,8 @@ konfigurację maszyny wirtualnej na inny komputer.
 Summary:       Qt GUI part for VirtualBox
 Group:         X11/Applications
 Requires:      %{name} = %{version}-%{release}
-Requires:      QtCore >= 4.7.0
+Requires:      Qt5Core >= %{qtver}
+Requires:      Qt5Gui-platform-xcb >= %{qtver}
 Requires:      desktop-file-utils
 Requires:      desktop-file-utils
 Requires:      fontconfig
@@ -248,6 +259,8 @@ Requires:   fonts-Type1-urw
 Requires:      gtk-update-icon-cache
 Requires:      hicolor-icon-theme
 Requires:      shared-mime-info
+Suggests:      Qt5Gui-platform-xcb-glx >= %{qtver}
+Suggests:      Qt5Gui-platform-xcb-egl >= %{qtver}
 Suggests:      gxmessage
 Conflicts:     %{name} < 4.3.8-3
 
@@ -303,9 +316,9 @@ Summary:    VirtualBox Guest X11 Additions
 Group:         X11/Applications
 Requires:      %{name}-guest = %{version}-%{release}
 Requires:      xorg-app-xrandr
-Requires:      xorg-driver-video-vboxvideo = %{version}-%{release}
-Suggests:      kernel(vboxvideo)
+Requires:      kernel(vboxvideo)
 Obsoletes:     xorg-driver-input-vboxmouse < %{version}-%{release}
+Obsoletes:     xorg-driver-video-vboxvideo < %{version}-%{release}
 
 %description guest-x11
 Tools for X11 session that utilize kernel modules for supporting
@@ -329,6 +342,7 @@ Group:              Themes
 # NOTE: '#' in url is lost because rpm treats it as comment, even hacking with
 # macros doesn't help as rpmbuild takes final result to parse
 URL:           http://www.virtualbox.org/manual/ch09.html#autologon_unix_lightdm
+Requires:      %{name} = %{version}-%{release}
 Requires:      kernel(vboxguest)
 Requires:      lightdm >= 1.0.1
 Requires:      pam-pam_vbox = %{version}-%{release}
@@ -345,33 +359,12 @@ Group:            Base
 PAM module (Pluggable Authentication Module) which can be used to
 perform automated guest logons.
 
-%package -n xorg-driver-video-vboxvideo
-Summary:       X.org video driver for VirtualBox guest OS
-Summary(pl.UTF-8):     Sterownik grafiki dla systemu gościa w VirtualBoksie
-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) <= 15.0
-Requires:      xorg-xserver-server(videodrv-abi) >= 2.0
-Provides:      OpenGL = 2.1
-Provides:      OpenGL-GLX = 1.3
-Provides:      xorg-driver-video
-Provides:      xorg-xserver-module(glx)
-
-%description -n xorg-driver-video-vboxvideo
-X.org video driver for VirtualBox guest OS.
-
-%description -n xorg-driver-video-vboxvideo -l pl.UTF-8
-Sterownik grafiki dla systemu gościa w VirtualBoksie.
-
 %package -n dkms-vboxguest
 Summary:       VirtualBox kernel modules source for Linux Guest
 Summary(pl.UTF-8):     Moduły VirtualBoksa do jądra Linuksa dla systemu gościa
 License:       GPL v2+
 Group:         Base/Kernel
-Requires(pre): dkms
-Requires(post):        dkms
+Requires:      dkms
 %if "%{_rpmversion}" >= "5"
 BuildArch:     noarch
 %endif
@@ -391,8 +384,7 @@ Summary:    VirtualBox Support Drivers source
 Summary(pl.UTF-8):     Moduły jądra Linuksa dla VirtualBoksa
 License:       GPL v2+
 Group:         Base/Kernel
-Requires(pre): dkms
-Requires(post):        dkms
+Requires:      dkms
 %if "%{_rpmversion}" >= "5"
 BuildArch:     noarch
 %endif
@@ -423,14 +415,14 @@ Requires(post,postun):    /sbin/depmod\
 Requires(post):        systemd-units >= 38\
 Requires:      dev >= 2.9.0-7\
 Requires:      systemd-units >= 38\
-%if %{with dist_kernel}\
 %requires_releq_kernel\
 Requires:      %{releq_kernel -n drm}\
 Requires(postun):      %releq_kernel\
-%endif\
 Provides:      kernel(vboxguest) = %{version}-%{rel}\
 Provides:      kernel(vboxsf) = %{version}-%{rel}\
+%if %{_kernel_version_code} < %{_kernel_version_magic 4 13 0}\
 Provides:      kernel(vboxvideo) = %{version}-%{rel}\
+%endif\
 Obsoletes:     kernel-init-guest\
 Conflicts:     kernel%{_alt_kernel}-virtualbox-host\
 \
@@ -452,15 +444,12 @@ 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}\
 Provides:      kernel(vboxnetadp) = %{version}-%{rel}\
 Provides:      kernel(vboxnetflt) = %{version}-%{rel}\
-Provides:      kernel(vboxpci) = %{version}-%{rel}\
 Obsoletes:     kernel-init-host\
 \
 %description -n kernel%{_alt_kernel}-virtualbox-host\
@@ -477,17 +466,23 @@ gospodarzem sprzętu PCI.\
 %if %{with kernel}\
 %files -n kernel%{_alt_kernel}-virtualbox-guest\
 %defattr(644,root,root,755)\
+%if %{_kernel_version_code} >= %{_kernel_version_magic 4 16 0}\
+%config(noreplace) %verify(not md5 mtime size) /etc/depmod.d/%{_kernel_ver}/vboxguest.conf\
+%endif\
 %config(noreplace) %verify(not md5 mtime size) /etc/modules-load.d/virtualbox-guest.conf\
 /lib/modules/%{_kernel_ver}/misc/vboxguest.ko*\
 /lib/modules/%{_kernel_ver}/misc/vboxsf.ko*\
+%if %{_kernel_version_code} < %{_kernel_version_magic 4 13 0}\
 /lib/modules/%{_kernel_ver}/misc/vboxvideo.ko*\
+%endif\
 \
+%if %{with host}\
 %files -n kernel%{_alt_kernel}-virtualbox-host\
 %config(noreplace) %verify(not md5 mtime size) /etc/modules-load.d/virtualbox-host.conf\
 /lib/modules/%{_kernel_ver}/misc/vboxdrv.ko*\
 /lib/modules/%{_kernel_ver}/misc/vboxnetadp.ko*\
 /lib/modules/%{_kernel_ver}/misc/vboxnetflt.ko*\
-/lib/modules/%{_kernel_ver}/misc/vboxpci.ko*\
+%endif\
 %endif\
 \
 %post -n kernel%{_alt_kernel}-virtualbox-guest\
@@ -496,51 +491,68 @@ gospodarzem sprzętu PCI.\
 %postun        -n kernel%{_alt_kernel}-virtualbox-guest\
 %depmod %{_kernel_ver}\
 \
+%if %{with host}\
 %post  -n kernel%{_alt_kernel}-virtualbox-host\
 %depmod %{_kernel_ver}\
 \
 %postun        -n kernel%{_alt_kernel}-virtualbox-host\
 %depmod %{_kernel_ver}\
+%endif\
 %{nil}
 
 %define build_kernel_pkg()\
 export KERN_DIR=%{_kernelsrcdir}\
-cd PLD-MODULE-BUILD/HostDrivers\
+%if %{with host}\
+cd kernel/HostDrivers\
 %build_kernel_modules -m vboxdrv -C vboxdrv\
-%build_kernel_modules -m vboxnetadp -C vboxnetadp\
-%build_kernel_modules -m vboxnetflt -C vboxnetflt\
-%build_kernel_modules -m vboxpci -C vboxpci\
-cd ../GuestDrivers\
+%build_kernel_modules -m vboxnetadp -C vboxnetadp KBUILD_EXTRA_SYMBOLS=$PWD/../vboxdrv/Module.symvers\
+%build_kernel_modules -m vboxnetflt -C vboxnetflt KBUILD_EXTRA_SYMBOLS=$PWD/../vboxdrv/Module.symvers\
+%install_kernel_modules -D ../../kernel/installed -m vboxdrv/vboxdrv,vboxnetadp/vboxnetadp,vboxnetflt/vboxnetflt -d misc\
+cd ../..\
+%endif\
+cd kernel/GuestDrivers\
 %build_kernel_modules -m vboxguest -C vboxguest\
-cp -a vboxguest/Module.symvers vboxsf\
-%build_kernel_modules -m vboxsf -C vboxsf -c\
-%build_kernel_modules -m vboxvideo -C vboxvideo\
+%build_kernel_modules -m vboxsf -C vboxsf KBUILD_EXTRA_SYMBOLS=$PWD/../vboxguest/Module.symvers\
+%install_kernel_modules -D ../../kernel/installed -m vboxsf/vboxsf,vboxguest/vboxguest -d misc\
+%if %{_kernel_version_code} < %{_kernel_version_magic 4 13 0}\
+%build_kernel_modules -m vboxvideo -C vboxvideo KBUILD_EXTRA_SYMBOLS=$PWD/../vboxguest/Module.symvers\
+%install_kernel_modules -D ../../kernel/installed -m vboxvideo/vboxvideo -d misc\
+%endif\
 cd ../..\
-%install_kernel_modules -D PLD-MODULE-BUILD/installed -m PLD-MODULE-BUILD/HostDrivers/vboxdrv/vboxdrv -d misc\
-%install_kernel_modules -D PLD-MODULE-BUILD/installed -m PLD-MODULE-BUILD/HostDrivers/vboxnetadp/vboxnetadp -d misc\
-%install_kernel_modules -D PLD-MODULE-BUILD/installed -m PLD-MODULE-BUILD/HostDrivers/vboxnetflt/vboxnetflt -d misc\
-%install_kernel_modules -D PLD-MODULE-BUILD/installed -m PLD-MODULE-BUILD/HostDrivers/vboxpci/vboxpci -d misc\
-%install_kernel_modules -D PLD-MODULE-BUILD/installed -m PLD-MODULE-BUILD/GuestDrivers/vboxguest/vboxguest -d misc\
-%install_kernel_modules -D PLD-MODULE-BUILD/installed -m PLD-MODULE-BUILD/GuestDrivers/vboxsf/vboxsf -d misc\
-%install_kernel_modules -D PLD-MODULE-BUILD/installed -m PLD-MODULE-BUILD/GuestDrivers/vboxvideo/vboxvideo -d misc\
 %{nil}
 
-%{?with_kernel:%{expand:%kpkg}}
+%define install_kernel_pkg()\
+%if %{_kernel_version_code} >= %{_kernel_version_magic 4 16 0}\
+install -d kernel/installed/etc/depmod.d/%{_kernel_ver}\
+echo override vboxguest %{_kernel_ver} misc > kernel/installed/etc/depmod.d/%{_kernel_ver}/vboxguest.conf\
+%if %{_kernel_version_code} >= %{_kernel_version_magic 5 6 0}\
+echo override vboxsf %{_kernel_ver} misc >> kernel/installed/etc/depmod.d/%{_kernel_ver}/vboxguest.conf\
+%endif\
+%endif\
+%{nil}
+
+%{?with_kernel:%{expand:%create_kernel_packages}}
 
 %prep
 %setup -q -n %{pname}-%{version}
 %patch0 -p1
 %patch1 -p1
 %patch2 -p1
-%patch3 -p1
 %patch4 -p1
-%patch5 -p1
 %patch6 -p1
 %patch7 -p1
 %patch8 -p1
 %patch9 -p1
 %patch10 -p1
-%patch11 -p1
+%if %{with all_langs}
+%patch11 -p0
+%endif
+%patch12 -p1
+%patch13 -p1
+%patch14 -p0
+%patch15 -p0
+%patch16 -p0
+%patch17 -p1
 
 %{__sed} -i -e 's,@VBOX_DOC_PATH@,%{_docdir}/%{name}-%{version},' \
        -e 's/Categories=.*/Categories=Utility;Emulator;/' src/VBox/Installer/common/virtualbox.desktop.in
@@ -552,12 +564,12 @@ cd ../..\
 %{__sed} -i -e 's#@INSTALL_DIR@#%{_libdir}/%{pname}#' src/VBox/Installer/linux/VBox.sh
 
 %if %{with kernel}
-install -d PLD-MODULE-BUILD/{GuestDrivers,HostDrivers}
-cd PLD-MODULE-BUILD
-../src/VBox/Additions/linux/export_modules guest-modules.tar.gz
+install -d kernel/{GuestDrivers,HostDrivers}
+cd kernel
+../src/VBox/Additions/linux/export_modules.sh guest-modules.tar.gz
 tar -zxf guest-modules.tar.gz -C GuestDrivers
 
-../src/VBox/HostDrivers/linux/export_modules host-modules.tar.gz --without-hardening
+../src/VBox/HostDrivers/linux/export_modules.sh --file host-modules.tar.gz --without-hardening
 tar -zxf host-modules.tar.gz -C HostDrivers
 cd -
 %endif
@@ -569,13 +581,19 @@ cd -
 cp -p src/VBox/Frontends/VirtualBox/images/os_{linux26,pld}.png
 cp -p src/VBox/Frontends/VirtualBox/images/os_{linux26,pld}_64.png
 
+# don't force whole userspace to be built with -fPIC
+# see https://www.virtualbox.org/pipermail/vbox-dev/2015-February/012863.html
+%define                filterout_c             -fPIC
+%define                filterout_cxx           -fPIC
+
 cat <<'EOF'>> LocalConfig.kmk
 %{?with_verbose:KBUILD_VERBOSE=3}
 USERNAME=%(id -un)
-__VBOX_BUILD_PUBLISHER=_PLD
+VBOX_BUILD_PUBLISHER=_PLD
 VBOX_VERSION_STRING=$(VBOX_VERSION_MAJOR).$(VBOX_VERSION_MINOR).$(VBOX_VERSION_BUILD)_PLD
 XSERVER_VERSION=%(rpm -q --queryformat '%{V}\n' xorg-xserver-server-devel | awk -F. '{ print $1 $2 }' 2>/dev/null || echo ERROR)
 VBOX_USE_SYSTEM_XORG_HEADERS=1
+VBOX_USE_SYSTEM_GL_HEADERS=1
 %if %{with lightdm}
 VBOX_WITH_LIGHTDM_GREETER=1
 VBOX_WITH_LIGHTDM_GREETER_PACKING=1
@@ -590,12 +608,20 @@ VBOX_PATH_SHARED_LIBS := $(VBOX_PATH_APP_PRIVATE_ARCH)
 VBOX_WITH_ORIGIN :=
 VBOX_WITH_RUNPATH := $(VBOX_PATH_APP_PRIVATE_ARCH)
 #VBOX_PATH_APP_DOCS := %{_docdir}/%{pname}-doc-%{version}
+VBOX_PATH_DOCBOOK_DTD := %{_datadir}/sgml/docbook/xml-dtd-4.4
 
 # don't build testcases to save time, they are not needed for the package
 VBOX_WITH_TESTCASES :=
 VBOX_WITH_TESTSUITE :=
+
+VBOX_WITH_VRDP_RDESKTOP=
+VBOX_WITH_MULTIVERSION_PYTHON=0
+%{!?with_host:VBOX_ONLY_ADDITIONS_WITHOUT_RTISOMAKER=1}
 EOF
 
+%undefine      filterout_c
+%undefine      filterout_cxx
+
 %build
 %if %{with userspace}
 ./configure \
@@ -606,15 +632,17 @@ EOF
        --disable-hardening \
        --disable-kmods \
        --enable-vnc \
+       %{!?with_gui:--disable-qt} \
        %{__enable webservice} \
+       %{!?with_host:--only-additions} \
        %{nil}
 
+. "$PWD/env.sh"
 kmk %{?_smp_mflags}
-
-%{__cc} %{rpmcflags} %{rpmldflags} -Wall -Werror src/VBox/Additions/linux/sharedfolders/{mount.vboxsf.c,vbsfmount.c} -o mount.vboxsf
 %endif
 
-%{?with_kernel:%{expand:%bkpkg}}
+%{?with_kernel:%{expand:%build_kernel_packages}}
+%{?with_kernel:%{expand:%install_kernel_packages}}
 
 %install
 rm -rf $RPM_BUILD_ROOT
@@ -622,6 +650,7 @@ rm -rf $RPM_BUILD_ROOT
 %if %{with userspace}
 install -d $RPM_BUILD_ROOT{%{_bindir},/sbin,%{_sbindir},%{_libdir}/%{pname}/ExtensionPacks} \
        $RPM_BUILD_ROOT{%{_pixmapsdir},%{_desktopdir},%{_datadir}/mime/packages} \
+       $RPM_BUILD_ROOT/etc/sysconfig \
        $RPM_BUILD_ROOT%{_sysconfdir}/vbox/autostart \
        $RPM_BUILD_ROOT%{_libdir}/xorg/modules/{drivers,dri,input} \
        $RPM_BUILD_ROOT{/lib/udev,/etc/udev/rules.d} \
@@ -633,30 +662,29 @@ if cp -al COPYING $RPM_BUILD_ROOT/COPYING; then
        %{__rm} $RPM_BUILD_ROOT/COPYING
 fi
 
+install -d $RPM_BUILD_ROOT%{_datadir}/%{pname}
+
 cp -a$l %{outdir}/* $RPM_BUILD_ROOT%{_libdir}/%{pname}
-cp -a$l %{SOURCE1} $RPM_BUILD_ROOT%{_libdir}/%{pname}/additions/VBoxGuestAdditions.iso
-
-# vboxvideo
-%{__mv} $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions/VBoxOGL.so,%{_libdir}/xorg/modules/dri/vboxvideo_dri.so}
-%{__mv} $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions/vboxvideo_drv_system.so,%{_libdir}/xorg/modules/drivers/vboxvideo_drv.so}
-# XXX: where else to install them that vboxvideo_dri.so finds them? patch with rpath?
-%{__mv} $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_libdir}}/VBoxOGLarrayspu.so
-%{__mv} $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_libdir}}/VBoxOGLcrutil.so
-%{__mv} $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_libdir}}/VBoxOGLerrorspu.so
-%{__mv} $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_libdir}}/VBoxOGLfeedbackspu.so
-%{__mv} $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_libdir}}/VBoxOGLpackspu.so
-%{__mv} $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_libdir}}/VBoxOGLpassthroughspu.so
+
+%if %{without gui}
+%{__rm} -r $RPM_BUILD_ROOT%{_libdir}/%{pname}/icons
+%{__rm} $RPM_BUILD_ROOT%{_libdir}/%{pname}/virtualbox.xml
+%endif
 
 # Guest Only Tools
 %{__mv} $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_bindir}}/VBoxClient
 %{__mv} $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_bindir}}/VBoxControl
+%{__mv} $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_bindir}}/VBoxDRMClient
 %{__mv} $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_bindir}}/VBoxService
 install -d $RPM_BUILD_ROOT/etc/xdg/autostart
 cp -p src/VBox/Additions/x11/Installer/vboxclient.desktop \
        $RPM_BUILD_ROOT/etc/xdg/autostart/vboxclient.desktop
 install -p src/VBox/Additions/x11/Installer/98vboxadd-xclient $RPM_BUILD_ROOT%{_bindir}/VBoxClient-all
 install -p %{SOURCE2} $RPM_BUILD_ROOT/etc/rc.d/init.d/vboxservice
-install -p %{SOURCE3} $RPM_BUILD_ROOT%{systemdunitdir}/vboxservice.service
+cp -p %{SOURCE3} $RPM_BUILD_ROOT%{systemdunitdir}/vboxservice.service
+cp -p %{SOURCE4} $RPM_BUILD_ROOT/etc/sysconfig/vboxservice
+
+cp -p %{SOURCE11} $RPM_BUILD_ROOT%{systemdunitdir}/vboxclient-vmsvga.service
 
 install -p %{SOURCE9} $RPM_BUILD_ROOT/etc/rc.d/init.d/vboxautostart
 %{__sed} -i -e 's#@INSTALL_DIR@#%{_libdir}/%{pname}#' $RPM_BUILD_ROOT/etc/rc.d/init.d/vboxautostart
@@ -665,7 +693,7 @@ cp -p %{SOURCE10} $RPM_BUILD_ROOT%{_sysconfdir}/vbox
 %if %{with lightdm}
 install -d $RPM_BUILD_ROOT%{_datadir}/xgreeters
 %{__mv} $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_sbindir}}/vbox-greeter
-cp -p %{objdir}/Additions/Installer/linux/share/VBoxGuestAdditions/vbox-greeter.desktop $RPM_BUILD_ROOT%{_datadir}/xgreeters
+cp -p %{objdir}/Additions/Installer/linux/other/vbox-greeter.desktop $RPM_BUILD_ROOT%{_datadir}/xgreeters
 %endif
 
 %if %{with dkms}
@@ -677,8 +705,7 @@ install -d $RPM_BUILD_ROOT/%{_lib}/security
 %{__mv} $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,/%{_lib}/security}/pam_vbox.so
 
 # mount.vboxsf
-%{__rm} $RPM_BUILD_ROOT%{_libdir}/%{pname}/additions/mount.vboxsf
-install -p mount.vboxsf $RPM_BUILD_ROOT/sbin/mount.vboxsf
+%{__mv} $RPM_BUILD_ROOT%{_libdir}/%{pname}/additions/mount.vboxsf $RPM_BUILD_ROOT/sbin/mount.vboxsf
 
 # mount.vdi
 install -p %{SOURCE5} $RPM_BUILD_ROOT/sbin/mount.vdi
@@ -687,73 +714,96 @@ install -p %{SOURCE5} $RPM_BUILD_ROOT/sbin/mount.vdi
 %{__rm} $RPM_BUILD_ROOT%{_libdir}/%{pname}/additions/autorun.sh
 %{__rm} $RPM_BUILD_ROOT%{_libdir}/%{pname}/additions/runasroot.sh
 
-# scripts to setup modules, x11 and service. we have covered that in our packages
-%{__rm} $RPM_BUILD_ROOT%{_libdir}/%{pname}/additions/vboxadd
-%{__rm} $RPM_BUILD_ROOT%{_libdir}/%{pname}/additions/vboxadd-service
-%{__rm} $RPM_BUILD_ROOT%{_libdir}/%{pname}/additions/vboxadd-x11
+cp -p %{SOURCE12} $RPM_BUILD_ROOT/etc/udev/rules.d/60-vboxguest.rules
 
+%if %{with host}
 # unknown - checkme
 %if 1
-%{__rm} $RPM_BUILD_ROOT%{_libdir}/%{pname}/helpers/generate_service_file
 %{__rm} $RPM_BUILD_ROOT%{_libdir}/%{pname}/SUPInstall
 %{__rm} $RPM_BUILD_ROOT%{_libdir}/%{pname}/SUPLoggerCtl
 %{__rm} $RPM_BUILD_ROOT%{_libdir}/%{pname}/SUPUninstall
 %{__rm} $RPM_BUILD_ROOT%{_libdir}/%{pname}/load.sh
 %{__rm} $RPM_BUILD_ROOT%{_libdir}/%{pname}/loadall.sh
-%{__rm} $RPM_BUILD_ROOT%{_libdir}/%{pname}/scripts/VBoxHeadlessXOrg.sh
-%{__rm} $RPM_BUILD_ROOT%{_libdir}/%{pname}/scripts/init_template.sh
-%{__rm} $RPM_BUILD_ROOT%{_libdir}/%{pname}/scripts/install_service
 %{__rm} $RPM_BUILD_ROOT%{_libdir}/%{pname}/vboxshell.py
 %{__rm} $RPM_BUILD_ROOT%{_libdir}/%{pname}/xpidl
 %endif
 
-# use upstream installer to relocate rest of the files, fakeroot because it forces uid/gid 0
-fakeroot sh -x $RPM_BUILD_ROOT%{_libdir}/%{pname}/scripts/install.sh \
-       --ose \
-       --prefix %{_prefix} \
-       %{!?with_webservice:--no-web-service} \
-       --root $RPM_BUILD_ROOT
+cp -p$l %{SOURCE1} $RPM_BUILD_ROOT%{_datadir}/%{pname}/VBoxGuestAdditions.iso ||
+cp -p %{SOURCE1} $RPM_BUILD_ROOT%{_datadir}/%{pname}/VBoxGuestAdditions.iso
+
+# manual installation steps based on src/VBox/Installer/linux/install.sh
+ln -sf %{_libdir}/%{pname}/VBox.sh $RPM_BUILD_ROOT%{_bindir}/VirtualBox
+ln -sf %{_libdir}/%{pname}/VBox.sh $RPM_BUILD_ROOT%{_bindir}/VBoxManage
+ln -sf %{_libdir}/%{pname}/VBox.sh $RPM_BUILD_ROOT%{_bindir}/VBoxSDL
+ln -sf %{_libdir}/%{pname}/VBox.sh $RPM_BUILD_ROOT%{_bindir}/VBoxVRDP
+ln -sf %{_libdir}/%{pname}/VBox.sh $RPM_BUILD_ROOT%{_bindir}/VBoxHeadless
+ln -sf %{_libdir}/%{pname}/VBox.sh $RPM_BUILD_ROOT%{_bindir}/VBoxBalloonCtrl
+ln -sf %{_libdir}/%{pname}/VBox.sh $RPM_BUILD_ROOT%{_bindir}/VBoxAutostart
+ln -sf %{_libdir}/%{pname}/VBox.sh $RPM_BUILD_ROOT%{_bindir}/vboxwebsrv
+ln -sf %{_libdir}/%{pname}/vbox-img $RPM_BUILD_ROOT%{_bindir}/vbox-img
+ln -sf %{_libdir}/%{pname}/VBox.sh $RPM_BUILD_ROOT%{_bindir}/VBoxDTrace
+cp -p $RPM_BUILD_ROOT%{_libdir}/%{pname}/icons/128x128/virtualbox.png $RPM_BUILD_ROOT%{_pixmapsdir}/virtualbox.png
+mv $RPM_BUILD_ROOT%{_libdir}/%{pname}/virtualbox.desktop $RPM_BUILD_ROOT%{_desktopdir}/virtualbox.desktop
+mv $RPM_BUILD_ROOT%{_libdir}/%{pname}/virtualbox.xml $RPM_BUILD_ROOT%{_datadir}/mime/packages/virtualbox.xml
+
+mv $RPM_BUILD_ROOT%{_libdir}/%{pname}/nls $RPM_BUILD_ROOT%{_datadir}/%{pname}
+
+(
+cd $RPM_BUILD_ROOT%{_libdir}/%{pname}/icons
+for i in *; do
+cd $i
+    for j in *; do
+       if expr "$j" : "virtualbox\..*" > /dev/null; then
+           dst=apps
+       else
+           dst=mimetypes
+       fi
+        if [ ! -e $RPM_BUILD_ROOT%{_iconsdir}/hicolor/$i/$dst ]; then
+               install -d $RPM_BUILD_ROOT%{_iconsdir}/hicolor/$i/$dst
+       fi
+       mv $RPM_BUILD_ROOT%{_libdir}/%{pname}/icons/$i/$j $RPM_BUILD_ROOT%{_iconsdir}/hicolor/$i/$dst/$j
+    done
+cd -
+done
+)
+
+rm -r $RPM_BUILD_ROOT%{_libdir}/%{pname}/icons
 
-%{__mv} $RPM_BUILD_ROOT{%{_datadir}/%{pname},/lib/udev}/VBoxCreateUSBNode.sh
-cp -p %{SOURCE6} $RPM_BUILD_ROOT/etc/udev/rules.d/virtualbox.rules
+%{__mv} $RPM_BUILD_ROOT{%{_libdir}/%{pname},/lib/udev}/VBoxCreateUSBNode.sh
+cp -p %{SOURCE6} $RPM_BUILD_ROOT/etc/udev/rules.d/60-vboxdrv.rules
 
 %if %{with dkms}
-mv $RPM_BUILD_ROOT%{_datadir}/%{pname}/src $RPM_BUILD_ROOT%{_usrsrc}/vboxhost-%{version}-%{rel}
-%{__rm} $RPM_BUILD_ROOT%{_usrsrc}/vboxhost-%{version}_PLD
+mv $RPM_BUILD_ROOT%{_libdir}/%{pname}/src $RPM_BUILD_ROOT%{_usrsrc}/vboxhost-%{version}-%{rel}
 %endif
 
-# cleanup lowercased variants, not used in any script (less cruft)
-%{__rm} -r $RPM_BUILD_ROOT%{_bindir}/vboxautostart
-%{__rm} -r $RPM_BUILD_ROOT%{_bindir}/vboxballoonctrl
-%{__rm} -r $RPM_BUILD_ROOT%{_bindir}/vboxheadless
-%{__rm} -r $RPM_BUILD_ROOT%{_bindir}/vboxmanage
-%{__rm} -r $RPM_BUILD_ROOT%{_bindir}/vboxsdl
-%{__rm} -r $RPM_BUILD_ROOT%{_bindir}/virtualbox
-
 # cleanup unpackaged
 %{__rm} -r $RPM_BUILD_ROOT%{_libdir}/%{pname}/{sdk,testcase}
 %{__rm} -r $RPM_BUILD_ROOT%{_libdir}/%{pname}/dtrace
 %{__rm} $RPM_BUILD_ROOT%{_libdir}/%{pname}/vboxkeyboard.tar.bz2
-%{__rm} $RPM_BUILD_ROOT%{_libdir}/%{pname}/tst*
 %{__rm} $RPM_BUILD_ROOT%{_libdir}/%{pname}/scripts/generated.sh
 %{__rm} $RPM_BUILD_ROOT%{_libdir}/%{pname}/ExtensionPacks/VNC/ExtPack-license.*
-%{__rm} -r $RPM_BUILD_ROOT%{py_sitescriptdir}/vboxapi*
 
+%if %{with gui}
 # weird icon size
 %{__rm} -r $RPM_BUILD_ROOT%{_iconsdir}/hicolor/40x40
+%endif
+
 # duplicate, we already have virtualbox.png (128x128), this is 32x32
-%{__rm} -r $RPM_BUILD_ROOT%{_pixmapsdir}/VBox.png
+%{__rm} -r $RPM_BUILD_ROOT%{_libdir}/%{pname}/VBox.png
 
 %if %{with doc}
 ln -sf %{_docdir}/%{pname}-doc-%{version}/UserManual.pdf $RPM_BUILD_ROOT%{_libdir}/%{pname}/UserManual.pdf
+%if %{with all_langs}
 ln -sf %{_docdir}/%{pname}-doc-%{version}/UserManual_fr_FR.pdf $RPM_BUILD_ROOT%{_libdir}/%{pname}/UserManual_fr_FR.pdf
 %endif
 %endif
+%endif
+%endif
 
 %if %{with kernel}
 install -d $RPM_BUILD_ROOT{/etc/modules-load.d,/sbin}
 
-cp -a PLD-MODULE-BUILD/installed/* $RPM_BUILD_ROOT
+cp -a kernel/installed/* $RPM_BUILD_ROOT
 
 # Tell systemd to load modules
 cp -p %{SOURCE7} $RPM_BUILD_ROOT/etc/modules-load.d/virtualbox-host.conf
@@ -812,6 +862,7 @@ fi
 %update_mime_database
 
 %pre guest
+%useradd -u 336 -d /usr/share/empty -s /bin/false -c "VirtualBox guest additions" -g nobody vboxadd
 # Add a group "vboxsf" for Shared Folders access
 # All users which want to access the auto-mounted Shared Folders have to be added to this group.
 %groupadd -g 266 -r -f vboxsf
@@ -819,17 +870,18 @@ fi
 %post guest
 /sbin/chkconfig --add vboxservice
 %service vboxservice restart
-%systemd_post vboxservice.service
+%systemd_post vboxservice.service vboxclient-vmsvga.service
 
 %preun guest
 if [ "$1" = "0" ]; then
        /sbin/chkconfig --del vboxservice
        %service vboxservice -q stop
 fi
-%systemd_preun vboxservice.service
+%systemd_preun vboxservice.service vboxclient-vmsvga.service
 
 %postun guest
 if [ "$1" = "0" ]; then
+       %userremove vboxadd
        %groupremove vboxsf
 fi
 %systemd_reload
@@ -841,26 +893,23 @@ fi
 %addusertogroup xdm vbox
 
 %post -n dkms-vboxguest
-set -x
 dkms add -m vboxguest -v %{version}-%{rel} --rpm_safe_upgrade && \
 dkms build -m vboxguest -v %{version}-%{rel} --rpm_safe_upgrade && \
 dkms install -m vboxguest -v %{version}-%{rel} --rpm_safe_upgrade || :
 
 %preun -n dkms-vboxguest
-set -x
 dkms remove -m vboxguest -v %{version}-%{rel} --rpm_safe_upgrade --all || :
 
 %post -n dkms-vboxhost
-set -x
 dkms add -m vboxhost -v %{version}-%{rel} --rpm_safe_upgrade && \
 dkms build -m vboxhost -v %{version}-%{rel} --rpm_safe_upgrade && \
 dkms install -m vboxhost -v %{version}-%{rel} --rpm_safe_upgrade || :
 
 %preun -n dkms-vboxhost
-set -x
 dkms remove -m vboxhost -v %{version}-%{rel} --rpm_safe_upgrade --all || :
 
 %if %{with userspace}
+%if %{with host}
 %files
 %defattr(644,root,root,755)
 %dir %attr(751,root,root) %{_sysconfdir}/vbox
@@ -868,16 +917,17 @@ dkms remove -m vboxhost -v %{version}-%{rel} --rpm_safe_upgrade --all || :
 %attr(640,root,vbox) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/vbox/autostart.cfg
 %attr(754,root,root) /etc/rc.d/init.d/vboxautostart
 %attr(755,root,root) /sbin/mount.vdi
-%attr(755,root,root) %{_bindir}/VBox
 %attr(755,root,root) %{_bindir}/VBoxAutostart
 %attr(755,root,root) %{_bindir}/VBoxBalloonCtrl
+%attr(755,root,root) %{_bindir}/VBoxDTrace
 %attr(755,root,root) %{_bindir}/VBoxHeadless
 %attr(755,root,root) %{_bindir}/VBoxManage
 %attr(755,root,root) %{_bindir}/VBoxSDL
-%attr(755,root,root) %{_bindir}/VBoxTunctl
+%attr(755,root,root) %{_bindir}/VBoxVRDP
+%attr(755,root,root) %{_bindir}/vbox-img
 %dir %{_libdir}/%{pname}
 # libraries
-%attr(755,root,root) %{_libdir}/%{pname}/DBGCPlugInDiggers.so
+%attr(755,root,root) %{_libdir}/%{pname}/DbgPlugInDiggers.so
 %attr(755,root,root) %{_libdir}/%{pname}/VBoxAuth.so
 %attr(755,root,root) %{_libdir}/%{pname}/VBoxAuthSimple.so
 %attr(755,root,root) %{_libdir}/%{pname}/VBoxDD.so
@@ -888,14 +938,10 @@ dkms remove -m vboxhost -v %{version}-%{rel} --rpm_safe_upgrade --all || :
 %attr(755,root,root) %{_libdir}/%{pname}/VBoxGuestPropSvc.so
 %attr(755,root,root) %{_libdir}/%{pname}/VBoxHostChannel.so
 %attr(755,root,root) %{_libdir}/%{pname}/VBoxKeyboard.so
-%attr(755,root,root) %{_libdir}/%{pname}/VBoxOGLhostcrutil.so
-%attr(755,root,root) %{_libdir}/%{pname}/VBoxOGLhosterrorspu.so
-%attr(755,root,root) %{_libdir}/%{pname}/VBoxOGLrenderspu.so
 %attr(755,root,root) %{_libdir}/%{pname}/VBoxPython*.so
-%attr(755,root,root) %{_libdir}/%{pname}/VBoxREM.so
 %attr(755,root,root) %{_libdir}/%{pname}/VBoxRT.so
+%attr(755,root,root) %{_libdir}/%{pname}/VBoxSVGA3D.so
 %attr(755,root,root) %{_libdir}/%{pname}/VBoxSharedClipboard.so
-%attr(755,root,root) %{_libdir}/%{pname}/VBoxSharedCrOpenGL.so
 %attr(755,root,root) %{_libdir}/%{pname}/VBoxSharedFolders.so
 %attr(755,root,root) %{_libdir}/%{pname}/VBoxVMM.so
 %attr(755,root,root) %{_libdir}/%{pname}/VBoxXPCOM.so
@@ -906,8 +952,10 @@ dkms remove -m vboxhost -v %{version}-%{rel} --rpm_safe_upgrade --all || :
 %endif
 
 # binaries
+%attr(755,root,root) %{_libdir}/%{pname}/VBox.sh
 %attr(755,root,root) %{_libdir}/%{pname}/VBoxAutostart
 %attr(755,root,root) %{_libdir}/%{pname}/VBoxBalloonCtrl
+%attr(755,root,root) %{_libdir}/%{pname}/VBoxDTrace
 %attr(755,root,root) %{_libdir}/%{pname}/VBoxExtPackHelperApp
 %attr(755,root,root) %{_libdir}/%{pname}/VBoxHeadless
 %attr(755,root,root) %{_libdir}/%{pname}/VBoxManage
@@ -916,32 +964,62 @@ dkms remove -m vboxhost -v %{version}-%{rel} --rpm_safe_upgrade --all || :
 %attr(755,root,root) %{_libdir}/%{pname}/VBoxNetNAT
 %attr(755,root,root) %{_libdir}/%{pname}/VBoxSDL
 %attr(755,root,root) %{_libdir}/%{pname}/VBoxSVC
+%attr(755,root,root) %{_libdir}/%{pname}/VBoxTunctl
 %attr(755,root,root) %{_libdir}/%{pname}/VBoxVMMPreload
 %attr(755,root,root) %{_libdir}/%{pname}/VBoxVolInfo
 %attr(755,root,root) %{_libdir}/%{pname}/VBoxXPCOMIPCD
+%attr(755,root,root) %{_libdir}/%{pname}/VirtualBoxVM
+%attr(755,root,root) %{_libdir}/%{pname}/bldRTLdrCheckImports
 %attr(755,root,root) %{_libdir}/%{pname}/iPxeBaseBin
+%attr(755,root,root) %{_libdir}/%{pname}/vboximg-mount
 %if %{with doc}
 %attr(755,root,root) %{_libdir}/%{pname}/VBoxManageHelp
 %endif
+%dir %{_libdir}/%{pname}/tools
+%attr(755,root,root) %{_libdir}/%{pname}/tools/RTCat
+%attr(755,root,root) %{_libdir}/%{pname}/tools/RTChMod
+%attr(755,root,root) %{_libdir}/%{pname}/tools/RTCp
+%attr(755,root,root) %{_libdir}/%{pname}/tools/RTDbgSymCache
+%attr(755,root,root) %{_libdir}/%{pname}/tools/RTEfiFatExtract
+%attr(755,root,root) %{_libdir}/%{pname}/tools/RTFTPServer
+%attr(755,root,root) %{_libdir}/%{pname}/tools/RTFuzzClient
+%attr(755,root,root) %{_libdir}/%{pname}/tools/RTFuzzMaster
+%attr(755,root,root) %{_libdir}/%{pname}/tools/RTGzip
+%attr(755,root,root) %{_libdir}/%{pname}/tools/RTHttp
+%attr(755,root,root) %{_libdir}/%{pname}/tools/RTIsoMaker
+%attr(755,root,root) %{_libdir}/%{pname}/tools/RTKrnlModInfo
+%attr(755,root,root) %{_libdir}/%{pname}/tools/RTLdrCheckImports
+%attr(755,root,root) %{_libdir}/%{pname}/tools/RTLdrFlt
+%attr(755,root,root) %{_libdir}/%{pname}/tools/RTLs
+%attr(755,root,root) %{_libdir}/%{pname}/tools/RTManifest
+%attr(755,root,root) %{_libdir}/%{pname}/tools/RTMkDir
+%attr(755,root,root) %{_libdir}/%{pname}/tools/RTRm
+%attr(755,root,root) %{_libdir}/%{pname}/tools/RTRmDir
+%attr(755,root,root) %{_libdir}/%{pname}/tools/RTShutdown
+%attr(755,root,root) %{_libdir}/%{pname}/tools/RTSignTool
+%attr(755,root,root) %{_libdir}/%{pname}/tools/RTTar
+%attr(755,root,root) %{_libdir}/%{pname}/tools/RTTraceLogTool
+%attr(755,root,root) %{_libdir}/%{pname}/tools/RTUnzip
+%attr(755,root,root) %{_libdir}/%{pname}/tools/scm
 
 %dir %{_libdir}/%{pname}/ExtensionPacks
 %{_libdir}/%{pname}/ExtensionPacks/VNC/ExtPack.xml
 %dir %{_libdir}/%{pname}/ExtensionPacks/VNC
 %dir %{_libdir}/%{pname}/ExtensionPacks/VNC/linux*
 %attr(755,root,root) %{_libdir}/%{pname}/ExtensionPacks/VNC/linux*/VBoxVNC*.so
-
-%{_libdir}/%{pname}/VBoxDD2GC.debug
-%{_libdir}/%{pname}/VBoxDD2GC.gc
-%{_libdir}/%{pname}/VBoxDD2R0.debug
-%{_libdir}/%{pname}/VBoxDD2R0.r0
-%{_libdir}/%{pname}/VBoxDDGC.debug
-%{_libdir}/%{pname}/VBoxDDGC.gc
+%dir %{_libdir}/%{pname}/ExtensionPacks/Oracle_VBoxDTrace_Extension_Pack
+%{_libdir}/%{pname}/ExtensionPacks/Oracle_VBoxDTrace_Extension_Pack/ExtPack.xml
+%dir %{_libdir}/%{pname}/ExtensionPacks/Oracle_VBoxDTrace_Extension_Pack/linux*
+%attr(755,root,root) %{_libdir}/%{pname}/ExtensionPacks/Oracle_VBoxDTrace_Extension_Pack/linux*/VBoxDTrace*.so
+%{_libdir}/%{pname}/ExtensionPacks/Oracle_VBoxDTrace_Extension_Pack/linux*/VBoxDTraceR0.debug
+%{_libdir}/%{pname}/ExtensionPacks/Oracle_VBoxDTrace_Extension_Pack/linux*/VBoxDTraceR0.r0
+
+%{_libdir}/%{pname}/VBoxBugReport
+%{_libdir}/%{pname}/VBoxCpuReport
 %{_libdir}/%{pname}/VBoxDDR0.debug
 %{_libdir}/%{pname}/VBoxDDR0.r0
 %{_libdir}/%{pname}/VBoxEFI32.fd
 %{_libdir}/%{pname}/VBoxEFI64.fd
-%{_libdir}/%{pname}/VMMGC.debug
-%{_libdir}/%{pname}/VMMGC.gc
 %{_libdir}/%{pname}/VMMR0.debug
 %{_libdir}/%{pname}/VMMR0.r0
 
@@ -951,16 +1029,20 @@ dkms remove -m vboxhost -v %{version}-%{rel} --rpm_safe_upgrade --all || :
 %attr(755,root,root) %{_libdir}/%{pname}/components/VBoxC.so
 %attr(755,root,root) %{_libdir}/%{pname}/components/VBoxSVCM.so
 %attr(755,root,root) %{_libdir}/%{pname}/components/VBoxXPCOMIPCC.so
+%attr(755,root,root) %{_libdir}/%{pname}/VBoxSysInfo.sh
+
+%{_libdir}/%{pname}/UnattendedTemplates
 
 %dir %{_datadir}/%{pname}
-%attr(755,root,root) %{_datadir}/%{pname}/VBoxSysInfo.sh
 
-%config(noreplace) %verify(not md5 mtime size) /etc/udev/rules.d/virtualbox.rules
+%config(noreplace) %verify(not md5 mtime size) /etc/udev/rules.d/60-vboxdrv.rules
 %attr(755,root,root) /lib/udev/VBoxCreateUSBNode.sh
 
+%if %{with gui}
 %files gui
 %defattr(644,root,root,755)
 %attr(755,root,root) %{_bindir}/VirtualBox
+%attr(755,root,root) %{_libdir}/%{pname}/UICommon.so
 %attr(755,root,root) %{_libdir}/%{pname}/VBoxDbg.so
 %attr(755,root,root) %{_libdir}/%{pname}/VBoxTestOGL
 %attr(755,root,root) %{_libdir}/%{pname}/VirtualBox
@@ -971,13 +1053,16 @@ dkms remove -m vboxhost -v %{version}-%{rel} --rpm_safe_upgrade --all || :
 %lang(cs) %{_datadir}/%{pname}/nls/*_cs.qm
 %lang(da) %{_datadir}/%{pname}/nls/*_da.qm
 %lang(de) %{_datadir}/%{pname}/nls/*_de.qm
+%lang(en) %{_datadir}/%{pname}/nls/*_el.qm
 %lang(en) %{_datadir}/%{pname}/nls/*_en.qm
 %lang(es) %{_datadir}/%{pname}/nls/*_es.qm
 %lang(eu) %{_datadir}/%{pname}/nls/*_eu.qm
-%lang(fi) %{_datadir}/%{pname}/nls/*_fa_IR.qm
+%lang(fa) %{_datadir}/%{pname}/nls/*_fa.qm
 %lang(fi) %{_datadir}/%{pname}/nls/*_fi.qm
 %lang(fr) %{_datadir}/%{pname}/nls/*_fr.qm
-%lang(gl_ES) %{_datadir}/%{pname}/nls/*_gl_ES.qm
+%lang(gl) %{_datadir}/%{pname}/nls/*_gl.qm
+%lang(he) %{_datadir}/%{pname}/nls/*_he.qm
+%lang(hr) %{_datadir}/%{pname}/nls/*_hr_HR.qm
 %lang(hu) %{_datadir}/%{pname}/nls/*_hu.qm
 %lang(id) %{_datadir}/%{pname}/nls/*_id.qm
 %lang(it) %{_datadir}/%{pname}/nls/*_it.qm
@@ -992,8 +1077,10 @@ dkms remove -m vboxhost -v %{version}-%{rel} --rpm_safe_upgrade --all || :
 %lang(ro) %{_datadir}/%{pname}/nls/*_ro.qm
 %lang(ru) %{_datadir}/%{pname}/nls/*_ru.qm
 %lang(sk) %{_datadir}/%{pname}/nls/*_sk.qm
+%lang(sk) %{_datadir}/%{pname}/nls/*_sl.qm
 %lang(sr) %{_datadir}/%{pname}/nls/*_sr.qm
 %lang(sv) %{_datadir}/%{pname}/nls/*_sv.qm
+%lang(th) %{_datadir}/%{pname}/nls/*_th.qm
 %lang(tr) %{_datadir}/%{pname}/nls/*_tr.qm
 %lang(uk) %{_datadir}/%{pname}/nls/*_uk.qm
 %lang(zh_CN) %{_datadir}/%{pname}/nls/*_zh_CN.qm
@@ -1004,32 +1091,53 @@ dkms remove -m vboxhost -v %{version}-%{rel} --rpm_safe_upgrade --all || :
 %{_iconsdir}/hicolor/*/apps/virtualbox.svg
 %{_iconsdir}/hicolor/*/mimetypes/virtualbox-*.png
 %{_datadir}/mime/packages/virtualbox.xml
+%endif
 
 %files additions
 %defattr(644,root,root,755)
 %{_datadir}/%{pname}/VBoxGuestAdditions.iso
 
+%if %{with webservice}
+%files webservice
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_bindir}/vboxwebsrv
+%attr(755,root,root) %{_libdir}/%{pname}/vboxwebsrv
+%attr(755,root,root) %{_libdir}/%{pname}/webtest
+%endif
+
+%if %{with doc}
+%files doc
+%defattr(644,root,root,755)
+# this is a symlink...
+%doc %{_libdir}/%{pname}/UserManual.pdf
+%if %{with all_langs}
+%lang(fr) %doc %{_libdir}/%{pname}/UserManual_fr_FR.pdf
+%endif
+# ..to this file
+%doc %{outdir}/UserManual.pdf
+%if %{with all_langs}
+%lang(fr) %doc %{outdir}/UserManual_fr_FR.pdf
+%endif
+%endif
+%endif
+
 %files guest
 %defattr(644,root,root,755)
 %attr(755,root,root) /sbin/mount.vboxsf
 %attr(754,root,root) /etc/rc.d/init.d/vboxservice
+%config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/vboxservice
 %{systemdunitdir}/vboxservice.service
+%{systemdunitdir}/vboxclient-vmsvga.service
 %attr(755,root,root) %{_bindir}/VBoxControl
 %attr(755,root,root) %{_bindir}/VBoxService
+%config(noreplace) %verify(not md5 mtime size) /etc/udev/rules.d/60-vboxguest.rules
 
 %files guest-x11
 %defattr(644,root,root,755)
 /etc/xdg/autostart/vboxclient.desktop
 %attr(755,root,root) %{_bindir}/VBoxClient
 %attr(755,root,root) %{_bindir}/VBoxClient-all
-
-%if %{with webservice}
-%files webservice
-%defattr(644,root,root,755)
-%attr(755,root,root) %{_bindir}/vboxwebsrv
-%attr(755,root,root) %{_libdir}/%{pname}/vboxwebsrv
-%attr(755,root,root) %{_libdir}/%{pname}/webtest
-%endif
+%attr(755,root,root) %{_bindir}/VBoxDRMClient
 
 %if %{with lightdm}
 %files -n lightdm-greeter-vbox
@@ -1042,36 +1150,15 @@ dkms remove -m vboxhost -v %{version}-%{rel} --rpm_safe_upgrade --all || :
 %defattr(644,root,root,755)
 %attr(755,root,root) /%{_lib}/security/pam_vbox.so
 
-%if %{with doc}
-%files doc
-%defattr(644,root,root,755)
-# this is a symlink...
-%doc %{_libdir}/%{pname}/UserManual.pdf
-%lang(fr) %doc %{_libdir}/%{pname}/UserManual_fr_FR.pdf
-# ..to this file
-%doc %{outdir}/UserManual.pdf
-%lang(fr) %doc %{outdir}/UserManual_fr_FR.pdf
-%endif
-
-%files -n xorg-driver-video-vboxvideo
-%defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir}/xorg/modules/drivers/vboxvideo_drv.so
-%attr(755,root,root) %{_libdir}/xorg/modules/dri/vboxvideo_dri.so
-# vboxvideo_dri.so deps
-%attr(755,root,root) %{_libdir}/VBoxOGLarrayspu.so
-%attr(755,root,root) %{_libdir}/VBoxOGLcrutil.so
-%attr(755,root,root) %{_libdir}/VBoxOGLerrorspu.so
-%attr(755,root,root) %{_libdir}/VBoxOGLfeedbackspu.so
-%attr(755,root,root) %{_libdir}/VBoxOGLpackspu.so
-%attr(755,root,root) %{_libdir}/VBoxOGLpassthroughspu.so
-
 %if %{with dkms}
 %files -n dkms-vboxguest
 %defattr(644,root,root,755)
 %{_usrsrc}/vboxguest-%{version}-%{rel}
 
+%if %{with host}
 %files -n dkms-vboxhost
 %defattr(644,root,root,755)
 %{_usrsrc}/vboxhost-%{version}-%{rel}
 %endif
 %endif
+%endif
This page took 0.068418 seconds and 4 git commands to generate.