X-Git-Url: http://git.pld-linux.org/?a=blobdiff_plain;f=VirtualBox.spec;h=ac6f23a90a7e12bcf1d3612cfe6971fc3a8fe6d6;hb=19e08c6a45b6c1b86db0d06fdc22099b0b968ddf;hp=0d71ac314b5b066d9110411da941c5a56fcdc400;hpb=23790586731c89dbf9f04775bb5c74ea4d758249;p=packages%2FVirtualBox.git diff --git a/VirtualBox.spec b/VirtualBox.spec index 0d71ac3..ac6f23a 100644 --- a/VirtualBox.spec +++ b/VirtualBox.spec @@ -1,7 +1,5 @@ -# # TODO # - java bindings -# - Find how to compile with PLD CFLAGS/CXXFLAGS/LDFLAGS. # - Package SDK. # - Package utils (and write initscripts ?) for Guest OS. # - Check License of VBoxGuestAdditions_*.iso, it's probably not GPL v2. @@ -16,8 +14,9 @@ %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 verbose %bcond_with force_userspace # force userspace build (useful if alt_kernel is set) -%bcond_with verbose %if %{without kernel} %undefine with_dist_kernel @@ -33,19 +32,19 @@ %define _enable_debug_packages 0 %endif -%define rel 1 +%define rel 6 %define pname VirtualBox Summary: VirtualBox - x86 hardware virtualizer Summary(pl.UTF-8): VirtualBox - wirtualizator sprzętu x86 Name: %{pname}%{_alt_kernel} -Version: 4.2.2 +Version: 4.2.4 Release: %{rel} License: GPL v2 Group: Applications/Emulators Source0: http://download.virtualbox.org/virtualbox/%{version}/%{pname}-%{version}.tar.bz2 -# Source0-md5: 2b65dcd9649e56ac6338670b3fb4a14d +# Source0-md5: d1ec2d2a3f2f3f0b277dfe2c520c2e33 Source1: http://download.virtualbox.org/virtualbox/%{version}/VBoxGuestAdditions_%{version}.iso -# Source1-md5: 5336ec5a543549df7b5792b050376aa6 +# Source1-md5: 46fc9cf002e384fb199029c681efd7e8 Source3: %{pname}-vboxdrv.init Source4: %{pname}-vboxguest.init Source5: %{pname}-vboxnetflt.init @@ -62,12 +61,11 @@ 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}-dri.patch -Patch5: %{pname}-disable_build_NetBiosBin.patch -Patch6: xserver-1.12.patch +Patch1: %{pname}-VBoxSysInfo.patch +Patch2: %{pname}-warning_workaround.patch +Patch3: %{pname}-dri.patch +Patch4: %{pname}-disable_build_NetBiosBin.patch +Patch5: xserver-1.12.patch # ubuntu patches Patch10: 16-no-update.patch Patch11: 18-system-xorg.patch @@ -103,6 +101,8 @@ BuildRequires: bin86 BuildRequires: curl-devel %{?with_doc:BuildRequires: docbook-dtd44-xml} BuildRequires: gcc >= 5:3.2.3 +%{?with_webservice:BuildRequires: gsoap-devel} +BuildRequires: kBuild >= 0.1.9998-2 BuildRequires: libIDL-devel BuildRequires: libcap-static BuildRequires: libdrm-devel @@ -147,6 +147,7 @@ Requires(postun): /usr/sbin/groupdel Requires(pre): /usr/bin/getgid Requires(pre): /usr/sbin/groupadd Requires: QtCore >= 4.7.0 +Requires: desktop-file-utils Requires: libvncserver >= 0.9.9 Suggests: gxmessage Provides: group(vbox) @@ -154,10 +155,11 @@ ExclusiveArch: %{ix86} %{x8664} BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) %ifarch %{x8664} -%define vbox_platform linux.amd64 +%define vbox_arch amd64 %else -%define vbox_platform linux.x86 +%define vbox_arch x86 %endif +%define vbox_platform linux.%{vbox_arch} %define outdir out/%{vbox_platform}/release/bin %define _sbindir /sbin @@ -508,12 +510,15 @@ Moduł jądra Linuksa dla VirtualBoksa - sterownik obsługi DRM. %patch3 -p1 %patch4 -p1 %patch5 -p1 -%patch6 -p1 %{__sed} -i -e 's,@VBOX_DOC_PATH@,%{_docdir}/%{name}-%{version},' \ -e 's/Categories=.*/Categories=Utility;Emulator;/' src/VBox/Installer/common/virtualbox.desktop.in -sed 's#@LIBDIR@#%{_libdir}#' < %{SOURCE9} > VirtualBox-wrapper.sh +# Respect LDFLAGS +%{__sed} -i -e "s@_LDFLAGS\.%{vbox_arch}*.*=@& %{rpmldflags}@g" \ + -i Config.kmk src/libs/xpcom18a4/Config.kmk + +%{__sed} 's#@LIBDIR@#%{_libdir}#' < %{SOURCE9} > VirtualBox-wrapper.sh install -d PLD-MODULE-BUILD/{GuestDrivers,HostDrivers} cd PLD-MODULE-BUILD @@ -526,8 +531,8 @@ cd - %patch10 -p1 %patch11 -p1 -# fix build translations (missing qt_fa_IR.ts) -cp -p src/VBox/Frontends/VirtualBox/nls/{qt_en,qt_fa_IR}.ts +# using system kBuild package +%{__rm} -r kBuild %build %if %{with userspace} @@ -539,15 +544,20 @@ echo "VBOX_WITH_TESTCASES := " > LocalConfig.kmk --disable-java \ --disable-hardening \ --disable-kmods \ - --enable-vnc + --enable-vnc \ + %{__enable webservice} \ + %{nil} XSERVER_VERSION=$(rpm -q --queryformat '%{VERSION}\n' xorg-xserver-server-devel | awk -F. ' { print $1 $2 } ' 2> /dev/null || echo ERROR) -. ./env.sh && \ -kmk -j1 \ +kmk %{?_smp_mflags} \ %{?with_verbose:KBUILD_VERBOSE=3} \ - USER=$(id -un) \ + USER=%(id -un) \ VBOX_VERSION_STRING='$(VBOX_VERSION_MAJOR).$(VBOX_VERSION_MINOR).$(VBOX_VERSION_BUILD)'_PLD \ - XSERVER_VERSION="$XSERVER_VERSION" + XSERVER_VERSION="$XSERVER_VERSION" \ + TOOL_GCC3_CFLAGS="%{rpmcflags}" \ + TOOL_GCC3_CXXFLAGS="%{rpmcxxflags}" \ + VBOX_GCC_OPT="%{rpmcxxflags}" \ + %{nil} %endif %if %{with kernel} @@ -562,7 +572,7 @@ cd ../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_drm +%build_kernel_modules -m vboxvideo -C vboxvideo cd ../.. %{__cc} %{rpmcflags} %{rpmldflags} -Wall -Werror src/VBox/Additions/linux/sharedfolders/{mount.vboxsf.c,vbsfmount.c} -o mount.vboxsf %endif @@ -646,15 +656,15 @@ rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/VBox.sh rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/vboxshell.py rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/xpidl rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/additions/runasroot.sh -rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/dtrace/lib/amd64/CPUMInternal.d -rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/dtrace/lib/amd64/cpumctx.d -rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/dtrace/lib/amd64/vbox-arch-types.d -rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/dtrace/lib/amd64/vbox-types.d -rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/dtrace/lib/amd64/vm.d -rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/dtrace/lib/amd64/x86.d -rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/dtrace/testcase/amd64/vbox-vm-struct-test.d rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/load.sh rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/loadall.sh +rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/dtrace/lib/%{vbox_arch}/CPUMInternal.d +rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/dtrace/lib/%{vbox_arch}/cpumctx.d +rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/dtrace/lib/%{vbox_arch}/vbox-arch-types.d +rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/dtrace/lib/%{vbox_arch}/vbox-types.d +rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/dtrace/lib/%{vbox_arch}/vm.d +rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/dtrace/lib/%{vbox_arch}/x86.d +rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/dtrace/testcase/%{vbox_arch}/vbox-vm-struct-test.d %endif # packaged by kernel part @@ -675,7 +685,7 @@ install -p %{SOURCE8} $RPM_BUILD_ROOT/etc/rc.d/init.d/vboxpci %install_kernel_modules -m PLD-MODULE-BUILD/HostDrivers/vboxpci/vboxpci -d misc %install_kernel_modules -m PLD-MODULE-BUILD/GuestDrivers/vboxguest/vboxguest -d misc %install_kernel_modules -m PLD-MODULE-BUILD/GuestDrivers/vboxsf/vboxsf -d misc -%install_kernel_modules -m PLD-MODULE-BUILD/GuestDrivers/vboxvideo_drm/vboxvideo -d misc +%install_kernel_modules -m PLD-MODULE-BUILD/GuestDrivers/vboxvideo/vboxvideo -d misc install -p mount.vboxsf $RPM_BUILD_ROOT%{_sbindir}/mount.vboxsf