From 51a0ec4f7b691cb6439a5134bae01d8f3c36338a732ce22470d2f905298e96c8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tom=C3=A1=C5=A1=20Chv=C3=A1tal?= Date: Wed, 28 Jan 2015 12:40:06 +0000 Subject: [PATCH] - Cleanup with spec-cleaner - Remove really obsolete conditionals due to buildstatus everywhere OBS-URL: https://build.opensuse.org/package/show/Virtualization/virtualbox?expand=0&rev=171 --- virtualbox.changes | 6 + virtualbox.spec | 502 ++++++++++++++++++--------------------------- 2 files changed, 206 insertions(+), 302 deletions(-) diff --git a/virtualbox.changes b/virtualbox.changes index 577677c..e66fb2b 100644 --- a/virtualbox.changes +++ b/virtualbox.changes @@ -1,3 +1,9 @@ +------------------------------------------------------------------- +Wed Jan 28 11:07:30 UTC 2015 - tchvatal@suse.com + +- Cleanup with spec-cleaner +- Remove really obsolete conditionals due to buildstatus everywhere + ------------------------------------------------------------------- Wed Dec 17 20:37:43 UTC 2014 - coolo@suse.com diff --git a/virtualbox.spec b/virtualbox.spec index 5a44091..0e0ddf8 100644 --- a/virtualbox.spec +++ b/virtualbox.spec @@ -1,7 +1,7 @@ # # spec file for package virtualbox # -# Copyright (c) 2014 SUSE LINUX Products GmbH, Nuernberg, Germany. +# Copyright (c) 2015 SUSE LINUX GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -16,84 +16,9 @@ # -%define _vbox_instdir /usr/lib/virtualbox - -%if 0%{?suse_version} >= 1230 -%define _udevrulesdir /usr/lib/udev/rules.d -%else -%define _udevrulesdir /lib/udev/rules.d -%endif - +%define _vbox_instdir %{_libexecdir}/virtualbox +%define _udevrulesdir %{_libexecdir}/udev/rules.d Name: virtualbox -%if %suse_version > 1230 -BuildRequires: which -%endif -BuildRequires: acpica -BuildRequires: dmidecode -BuildRequires: fdupes -#drop hal dependency -%if %suse_version < 1210 -BuildRequires: hal-devel -%endif -%if %suse_version > 1210 -BuildRequires: sed -%endif -%if %suse_version >= 1210 -BuildRequires: glibc-devel-static -%endif -#gsoap,libopenssl and java needed for building webservice -BuildRequires: gsoap-devel -BuildRequires: java-devel >= 1.6.0 -BuildRequires: libgsoap-devel -BuildRequires: libopenssl-devel -# -BuildRequires: LibVNCServer-devel -BuildRequires: SDL-devel -BuildRequires: alsa-devel -BuildRequires: bin86 -BuildRequires: boost-devel -BuildRequires: dev86 -BuildRequires: e2fsprogs-devel -BuildRequires: gcc -BuildRequires: gcc-c++ -##### virtualbox 4.2.0 does not work with older versions (check in makefile), -##### and fails with newer versions (tested with rev2662) -BuildRequires: device-mapper-devel -BuildRequires: kbuild >= 0.1.9998svn2689 -BuildRequires: kernel-syms -BuildRequires: libcap-devel -BuildRequires: libcurl-devel -BuildRequires: libidl-devel -BuildRequires: libqt4-devel -BuildRequires: libvpx-devel -BuildRequires: libxslt-devel -BuildRequires: module-init-tools -BuildRequires: pam-devel -BuildRequires: pulseaudio-devel -BuildRequires: python-devel -BuildRequires: quilt -BuildRequires: udev -BuildRequires: update-desktop-files -BuildRequires: xorg-x11 -BuildRequires: xorg-x11-devel -BuildRequires: xorg-x11-server -BuildRequires: xorg-x11-server-sdk -BuildRequires: yasm -BuildRequires: zlib-devel-static -%ifarch amd64 x86_64 ia32e em64t -#drop hal dependency -%if %suse_version < 1210 -BuildRequires: hal-32bit -%endif -BuildRequires: gcc-32bit -BuildRequires: gcc-c++-32bit -BuildRequires: xorg-x11-libX11-devel-32bit -BuildRequires: xorg-x11-libXext-devel-32bit -BuildRequires: xorg-x11-libXmu-devel-32bit -BuildRequires: xorg-x11-libXt-devel-32bit -%endif -# -ExclusiveArch: %ix86 x86_64 Version: 4.3.20 Release: 0 Summary: VirtualBox is an Emulator @@ -144,17 +69,67 @@ Patch100: vbox-no-build-dates.diff Patch101: vbox-default-os-type.diff #disable update in vbox gui Patch103: vbox-disable-updates.diff -#use pie/fPIE for setuid binaries (bnc#743143) +#use pie/fPIE for setuid binaries (bnc#743143) Patch104: vbox-fpie.diff -BuildRoot: %{_tmppath}/%{name}-%{version}-build -PreReq: pwdutils permissions -Requires: %{name}-host-kmp = %version -Recommends: %{name}-gui = %version +BuildRequires: LibVNCServer-devel +BuildRequires: SDL-devel +BuildRequires: acpica +BuildRequires: alsa-devel +BuildRequires: bin86 +BuildRequires: boost-devel +BuildRequires: dev86 +BuildRequires: device-mapper-devel +BuildRequires: dmidecode +BuildRequires: e2fsprogs-devel +BuildRequires: fdupes +BuildRequires: gcc +BuildRequires: gcc-c++ +BuildRequires: glibc-devel-static +#gsoap,libopenssl and java needed for building webservice +BuildRequires: gsoap-devel +BuildRequires: java-devel >= 1.6.0 +BuildRequires: kbuild >= 0.1.9998svn2689 +BuildRequires: kernel-syms +BuildRequires: libcap-devel +BuildRequires: libcurl-devel +BuildRequires: libgsoap-devel +BuildRequires: libidl-devel +BuildRequires: libopenssl-devel +BuildRequires: libqt4-devel +BuildRequires: libvpx-devel +BuildRequires: libxslt-devel +BuildRequires: module-init-tools +BuildRequires: pam-devel +BuildRequires: pulseaudio-devel +BuildRequires: python-devel +BuildRequires: quilt +BuildRequires: sed +BuildRequires: udev +BuildRequires: update-desktop-files +BuildRequires: which +BuildRequires: xorg-x11 +BuildRequires: xorg-x11-devel +BuildRequires: xorg-x11-server +BuildRequires: xorg-x11-server-sdk +BuildRequires: yasm +BuildRequires: zlib-devel-static +Requires: %{name}-host-kmp = %{version} +Requires(post): sysvinit(syslog) +Requires(pre): permissions +Requires(pre): pwdutils +Recommends: %{name}-gui = %{version} #rename from ose version: -Provides: %{name}-ose = %version -Obsoletes: %{name}-ose < %version -%if 0%{suse_version} > 1130 -PreReq: sysvinit(syslog) +Provides: %{name}-ose = %{version} +Obsoletes: %{name}-ose < %{version} +BuildRoot: %{_tmppath}/%{name}-%{version}-build +ExclusiveArch: %ix86 x86_64 +%ifarch amd64 x86_64 ia32e em64t +BuildRequires: gcc-32bit +BuildRequires: gcc-c++-32bit +BuildRequires: xorg-x11-libX11-devel-32bit +BuildRequires: xorg-x11-libXext-devel-32bit +BuildRequires: xorg-x11-libXmu-devel-32bit +BuildRequires: xorg-x11-libXt-devel-32bit %endif %description @@ -163,22 +138,24 @@ for enterprise customers, it is also the only professional solution that is freely available as Open Source Software under the terms of the GNU Public License (GPL). ########################################## + %package qt Summary: Qt GUI part for %{name} Group: System/Emulators/PC Requires: %{name} = %{version} +Requires(pre): permissions Provides: %{name}-gui = %{version} #this is needed during update to trigger installing qt subpackage #http://en.opensuse.org/openSUSE:Upgrade_dependencies_explanation#Splitting_and_Merging -Provides: %{name}-ose:/usr/lib/virtualbox/VirtualBox.so +Provides: %{name}-ose:%{_libexecdir}/virtualbox/VirtualBox.so #rename from "ose" version: -Provides: %{name}-ose-qt = %version -Obsoletes: %{name}-ose-qt < %version -PreReq: permissions +Provides: %{name}-ose-qt = %{version} +Obsoletes: %{name}-ose-qt < %{version} %description qt Qt GUI part for %{name}. ######################################### + %package websrv Summary: WebService GUI part for %{name} Group: System/Emulators/PC @@ -188,73 +165,79 @@ Provides: %{name}-gui = %{version} %description websrv websrv GUI part for %{name}. ######################################### + %package host-KMP Summary: Host kernel module for VirtualBox Group: System/Emulators/PC # SUSE specify macro to define host kmp package -%{?suse_kernel_module_package:%suse_kernel_module_package -p %{S:7} -n %{name}-host -f %{S:5} kdump um xen xenpae} +%{?suse_kernel_module_package:%suse_kernel_module_package -p %{SOURCE7} -n %{name}-host -f %{SOURCE5} kdump um xen xenpae} %description host-KMP This package contains the kernel-module for VirtualBox. ########################################## + %package guest-KMP Summary: Guest kernel modules for VirtualBox Group: System/Emulators/PC #SUSE specify macro to define guest kmp package -%{?suse_kernel_module_package:%suse_kernel_module_package -p %{S:8} -n %{name}-guest -f %{S:6} kdump um xen xenpae} +%{?suse_kernel_module_package:%suse_kernel_module_package -p %{SOURCE8} -n %{name}-guest -f %{SOURCE6} kdump um xen xenpae} %description guest-KMP This package contains the kernel-module for VirtualBox. ########################################## + %package guest-x11 Summary: VirtualBox X11 drivers for mouse and video Group: System/X11/Servers/XF86_4 -Requires: %{name}-guest-kmp = %version +Requires: %{name}-guest-kmp = %{version} Supplements: modalias(xorg-x11-server:pci:v000080EEd0000BEEFsv*sd*bc*sc*i*) #rename from xorg-x11-driver-virtualbox-ose: -Provides: xorg-x11-driver-virtualbox-ose = %version -Obsoletes: xorg-x11-driver-virtualbox-ose < %version +Provides: xorg-x11-driver-virtualbox-ose = %{version} +Obsoletes: xorg-x11-driver-virtualbox-ose < %{version} %description guest-x11 VirtualBox This package contains X11 guest utilities and X11 guest mouse and video drivers ########################################### + %package guest-tools Summary: VirtualBox guest tools Group: System/Emulators/PC -Requires: %{name}-guest-kmp = %version +Requires: %{name}-guest-kmp = %{version} Supplements: modalias(pci:v000080EEd0000BEEFsv*sd*bc*sc*i*) #rename from "ose" version: -Provides: %{name}-ose-guest-tools = %version -Obsoletes: %{name}-ose-guest-tools < %version +Provides: %{name}-ose-guest-tools = %{version} +Obsoletes: %{name}-ose-guest-tools < %{version} %description guest-tools VirtualBox guest addition tools. ########################################### -%package -n python-%{name} +%package -n python-%{name} Summary: Python bindings for %{name} Group: Development/Libraries/Python Requires: %{name} = %{version} #rename from "ose" version: -Provides: python-%{name}-ose = %version -Obsoletes: python-%{name}-ose < %version +Provides: python-%{name}-ose = %{version} +Obsoletes: python-%{name}-ose < %{version} %description -n python-%{name} Python XPCOM bindings to %{name}. Used e.g. by vboxgtk package. ########################################### + %package devel Summary: Devel files for %{name} Group: Development/Libraries/Other Requires: %{name} = %{version} Requires: python-%{name} = %{version} #rename from "ose" version: -Provides: %{name}-ose-devel = %version -Obsoletes: %{name}-ose-devel < %version +Provides: %{name}-ose-devel = %{version} +Obsoletes: %{name}-ose-devel < %{version} %description devel Development file for %{name} ########################################### + %package guest-desktop-icons Summary: Icons for guest desktop files Group: System/Emulators/PC @@ -265,6 +248,7 @@ BuildArch: noarch %description guest-desktop-icons This package contains icons for guest desktop files that were created on the desktop. ########################################### + %prep %setup -q -n VirtualBox-%{version} %patch1 @@ -275,18 +259,18 @@ This package contains icons for guest desktop files that were created on the des %patch9 -p1 %patch10 -p1 %patch99 -p1 -%patch100 +%patch100 %patch101 -p1 %patch103 %patch104 -p1 #copy user manual -%__cp %{S:1} UserManual.pdf +cp %{SOURCE1} UserManual.pdf #copy kbuild config -%__cp %{S:10} LocalConfig.kmk +cp %{SOURCE10} LocalConfig.kmk # ########################## ####workaround kmk_sed --v -#instead of kmk_sed use /usr/bin/sed because of bug http://svn.netlabs.org/kbuild/ticket/112, +#instead of kmk_sed use /usr/bin/sed because of bug http://svn.netlabs.org/kbuild/ticket/112, #but we have to create wrapper which will handle --append and --outpout options which are not provided by /usr/bin/sed cat >> kmk_sed <> LocalConfig.kmk ####workaround kmk_sed --^ ########################## # + %build #ensure we dont ever use them rm -rf src/libs/{libpng-*,libxml2-*,libxslt-*,zlib-*,boost-*} @@ -324,7 +309,7 @@ source ./env.sh # VBOX_PATH_PACKAGE_DOCS set propper path for link to pdf in .desktop file # VBOX_WITH_REGISTRATION_REQUEST= VBOX_WITH_UPDATE_REQUEST= just disable some functionality in gui echo "build basic parts" -/usr/bin/kmk %{?_smp_mflags} VBOX_JAVA_HOME=/etc/alternatives/java_sdk_openjdk/ VBOX_GCC_WERR= KBUILD_VERBOSE=2 VBOX_WITH_REGISTRATION_REQUEST= VBOX_WITH_UPDATE_REQUEST= TOOL_YASM_AS=yasm VBOX_PATH_PACKAGE_DOCS=/usr/share/doc/packages/virtualbox all +%{_bindir}/kmk %{?_smp_mflags} VBOX_JAVA_HOME=%{_sysconfdir}/alternatives/java_sdk_openjdk/ VBOX_GCC_WERR= KBUILD_VERBOSE=2 VBOX_WITH_REGISTRATION_REQUEST= VBOX_WITH_UPDATE_REQUEST= TOOL_YASM_AS=yasm VBOX_PATH_PACKAGE_DOCS=%{_docdir}/virtualbox all # # build kernel modules for guest and host (check novel-kmp package as example) # host modules : vboxdrv,vboxnetflt,vboxnetadp @@ -336,30 +321,30 @@ for vbox_module in out/linux.*/release/bin/src/vbox{drv,netflt,netadp,pci} \ module_name=$(basename "$vbox_module") # go through the all flavors (desktop,default ...) - for flavor in %flavors_to_build; do + for flavor in %{flavors_to_build}; do # delete old build dir for sure - %__rm -rf modules_build_dir/${module_name}_${flavor} + rm -rf modules_build_dir/${module_name}_${flavor} # create build directory for specific flavor - %__mkdir -p modules_build_dir/$flavor + mkdir -p modules_build_dir/$flavor # copy sources which will be used to build vbox module in last step - %__cp -r $vbox_module/ modules_build_dir/$flavor/ + cp -r $vbox_module/ modules_build_dir/$flavor/ # copy vboxdrv (for host) module symbols which are used by vboxnetflt and vboxnetadp km's: if [ "$module_name" = "vboxnetflt" -o \ "$module_name" = "vboxnetadp" -o \ "$module_name" = "vboxpci" ] ; then - %__cp $PWD/modules_build_dir/$flavor/vboxdrv/Module.symvers \ + cp $PWD/modules_build_dir/$flavor/vboxdrv/Module.symvers \ $PWD/modules_build_dir/$flavor/$module_name fi # copy vboxguest (for guest) module symbols which are used by vboxsf km: if [ "$module_name" = "vboxsf" ]; then - %__cp $PWD/modules_build_dir/$flavor/vboxguest/Module.symvers \ + cp $PWD/modules_build_dir/$flavor/vboxguest/Module.symvers \ $PWD/modules_build_dir/$flavor/$module_name fi # build the module for the specific flavor - %__make -C /usr/src/linux-obj/%_target_cpu/$flavor modules \ + make -C %{_prefix}/src/linux-obj/%{_target_cpu}/$flavor modules \ M=$PWD/modules_build_dir/$flavor/$module_name done done @@ -368,256 +353,202 @@ done ################################# echo "create directory structure" ################################# -%__install -d -m 755 %{buildroot}/sbin -%__install -d -m 755 %{buildroot}%{_bindir} -%__install -d -m 755 %{buildroot}%{_sbindir} -%__install -d -m 755 %{buildroot}%{_datadir}/virtualbox/nls -%__install -d -m 755 %{buildroot}%{_datadir}/pixmaps -%__install -d -m 755 %{buildroot}%{_datadir}/applications -#%if %suse_version >= 1130 -# %__install -d -m 755 %{buildroot}%{_sysconfdir}/X11/xorg.conf.d/ -#%else -#since 11.3 we don't use hal to detect vbox mouse -%if %suse_version < 1130 - %__install -d -m 755 %{buildroot}%{_datadir}/hal/fdi/policy/20thirdparty -%endif -%__install -d -m 755 %{buildroot}%{_vbox_instdir}/sdk/bindings/xpcom +install -d -m 755 %{buildroot}/sbin +install -d -m 755 %{buildroot}%{_bindir} +install -d -m 755 %{buildroot}%{_sbindir} +install -d -m 755 %{buildroot}%{_datadir}/virtualbox/nls +install -d -m 755 %{buildroot}%{_datadir}/pixmaps +install -d -m 755 %{buildroot}%{_datadir}/applications +install -d -m 755 %{buildroot}%{_vbox_instdir}/sdk/bindings/xpcom #%__install -d -m 755 %{buildroot}%{_vbox_instdir}/sdk/bindings/glue -%__install -d -m 755 %{buildroot}%{_vbox_instdir}/components -%__install -d -m 755 %{buildroot}%{_libdir}/dri -%__install -d -m 755 %{buildroot}%{_libdir}/xorg/modules/drivers -%__install -d -m 755 %{buildroot}%{_libdir}/xorg/modules/input -%__install -d -m 755 %{buildroot}%{_sysconfdir}/default -%__install -d -m 755 %{buildroot}%{_sysconfdir}/init.d -%__install -d -m 755 %{buildroot}%{_sysconfdir}/vbox -%__install -d -m 755 %{buildroot}%{_udevrulesdir} -%__install -d -m 755 %{buildroot}%{_sysconfdir}/X11/xinit/xinitrc.d +install -d -m 755 %{buildroot}%{_vbox_instdir}/components +install -d -m 755 %{buildroot}%{_libdir}/dri +install -d -m 755 %{buildroot}%{_libdir}/xorg/modules/drivers +install -d -m 755 %{buildroot}%{_libdir}/xorg/modules/input +install -d -m 755 %{buildroot}%{_sysconfdir}/default +install -d -m 755 %{buildroot}%{_sysconfdir}/init.d +install -d -m 755 %{buildroot}%{_sysconfdir}/vbox +install -d -m 755 %{buildroot}%{_udevrulesdir} +install -d -m 755 %{buildroot}%{_sysconfdir}/X11/xinit/xinitrc.d #################################################################################### echo "entering virtualbox-kmp-guest and virtualbox-kmp-host install section" #################################################################################### -export INSTALL_MOD_PATH=$RPM_BUILD_ROOT +export INSTALL_MOD_PATH=%{buildroot} export INSTALL_MOD_DIR=updates #to install modules we use here similar steps like in build phase, go trought the all modules : for module_name in vbox{drv,netflt,pci,netadp,guest,sf,video} do #and trought the all flavors - for flavor in %flavors_to_build; do - #to install modules use Makefile from /usr/src/linux-obj/%_target_cpu/$flavor and builds from $PWD/modules_build_dir/$flavor/$module_name - %__make -C /usr/src/linux-obj/%_target_cpu/$flavor modules_install M=$PWD/modules_build_dir/$flavor/$module_name + for flavor in %{flavors_to_build}; do + #to install modules use Makefile from %{_prefix}/src/linux-obj/%_target_cpu/$flavor and builds from $PWD/modules_build_dir/$flavor/$module_name + make -C %{_prefix}/src/linux-obj/%{_target_cpu}/$flavor modules_install M=$PWD/modules_build_dir/$flavor/$module_name done done ########################################### echo "entering guest-tools install section" ########################################### -%__install -m 755 out/linux.*/release/bin/additions/VBoxControl \ +install -m 755 out/linux.*/release/bin/additions/VBoxControl \ %{buildroot}%{_bindir}/VBoxControl -%__install -m 755 out/linux.*/release/bin/additions/VBoxService \ +install -m 755 out/linux.*/release/bin/additions/VBoxService \ %{buildroot}%{_bindir}/VBoxService -%__install -m 755 out/linux.*/release/bin/additions/mount.vboxsf \ +install -m 755 out/linux.*/release/bin/additions/mount.vboxsf \ %{buildroot}/sbin/mount.vboxsf -%__install -m 744 src/VBox/Additions/linux/installer/vboxadd.sh \ +install -m 744 src/VBox/Additions/linux/installer/vboxadd.sh \ %{buildroot}%{_sysconfdir}/init.d/vboxadd -%__ln_s %{_sysconfdir}/init.d/vboxadd \ +ln -s %{_sysconfdir}/init.d/vboxadd \ %{buildroot}%{_sbindir}/rcvboxadd # udev rule for guest (virtualbox-guest-tools) -%__install -m 644 %{SOURCE3} %{buildroot}%{_udevrulesdir}/60-vboxguest.rules +install -m 644 %{SOURCE3} %{buildroot}%{_udevrulesdir}/60-vboxguest.rules # ############################################################## echo "entering guest-x11 install section" ############################################################## pushd out/linux.*/release/bin/additions/ #VBoxClient daemon (support for clipboard,autoresize,seamless windows) -%__install -m 755 VBoxClient %{buildroot}%{_bindir} +install -m 755 VBoxClient %{buildroot}%{_bindir} # xorg drivers for mouse and videos check suse version to add propper driver # check the patch https://www.virtualbox.org/changeset/38784, regarding the # dropped xorg mouse driver in >= 1130 -%if %suse_version >= 1320 - %__install -m 755 vboxvideo_drv_116.so \ +%if 0%{?suse_version} >= 1315 + install -m 755 vboxvideo_drv_116.so \ %{buildroot}%{_libdir}/xorg/modules/drivers/vboxvideo_drv.so -%else -%if %suse_version == 1310 - %__install -m 755 vboxvideo_drv_114.so \ +%endif +%if 0%{?suse_version} == 1310 + install -m 755 vboxvideo_drv_114.so \ %{buildroot}%{_libdir}/xorg/modules/drivers/vboxvideo_drv.so -%else -%if %suse_version == 1230 - %__install -m 755 vboxvideo_drv_113.so \ - %{buildroot}%{_libdir}/xorg/modules/drivers/vboxvideo_drv.so -%else -%if %suse_version == 1220 - %__install -m 755 vboxvideo_drv_112.so \ - %{buildroot}%{_libdir}/xorg/modules/drivers/vboxvideo_drv.so -%else -%if %suse_version == 1210 - %__install -m 755 vboxvideo_drv_110.so \ - %{buildroot}%{_libdir}/xorg/modules/drivers/vboxvideo_drv.so -%else -%if %suse_version == 1140 - %__install -m 755 vboxvideo_drv_19.so \ - %{buildroot}%{_libdir}/xorg/modules/drivers/vboxvideo_drv.so -%else -%if %suse_version == 1130 - %__install -m 755 vboxvideo_drv_18.so \ - %{buildroot}%{_libdir}/xorg/modules/drivers/vboxvideo_drv.so -%else -%if %suse_version == 1120 - %__install -m 755 vboxmouse_drv_16.so \ - %{buildroot}%{_libdir}/xorg/modules/input/vboxmouse_drv.so - %__install -m 755 vboxvideo_drv_16.so \ - %{buildroot}%{_libdir}/xorg/modules/drivers/vboxvideo_drv.so -%else - %__install -m 755 vboxmouse_drv_15.so \ - %{buildroot}%{_libdir}/xorg/modules/input/vboxmouse_drv.so - %__install -m 755 vboxvideo_drv_15.so \ - %{buildroot}%{_libdir}/xorg/modules/drivers/vboxvideo_drv.so -%endif #if =1120 -%endif #if =1130 -%endif #if =1140 -%endif #if =1210 -%endif #if =1220 -%endif #if =1230 -%endif #if =1310 -%endif #if >1310 +%endif popd # VBoxOGL* libs for guest-x11 subpackage -%__install -m 644 out/linux.*/release/bin/additions/VBoxOGL*.so \ +install -m 644 out/linux.*/release/bin/additions/VBoxOGL*.so \ %{buildroot}%{_libdir} # make link for dri lib -%__ln_s %{_libdir}/VBoxOGL.so %{buildroot}%{_libdir}/dri/vboxvideo_dri.so +ln -s %{_libdir}/VBoxOGL.so %{buildroot}%{_libdir}/dri/vboxvideo_dri.so # install init script which start VBoxClient daemon (support for clipboard,autoresize,seamless windows) -%__install -m 755 src/VBox/Additions/x11/Installer/98vboxadd-xclient \ +install -m 755 src/VBox/Additions/x11/Installer/98vboxadd-xclient \ %{buildroot}%{_sysconfdir}/X11/xinit/xinitrc.d/vboxadd-xclient.sh -#%if %suse_version >= 1130 - # add xorg config snipet to vbox mouse integration recognize - # %__install -m 644 %{SOURCE10} %{buildroot}%{_sysconfdir}/X11/xorg.conf.d/60-vboxmouse.conf -#%else -%if %suse_version < 1130 - # hal policy file to autodetect the virtualbox mouse - %__install -m 644 src/VBox/Additions/linux/installer/90-vboxguest.fdi \ - %{buildroot}%{_datadir}/hal/fdi/policy/20thirdparty/90-vboxguest.fdi -%endif ############################################## echo "entering virtualbox(-qt) install section" ############################################## # copy the main files to %{_vbox_instdir} pushd out/linux.*/release/bin -%__install -m 755 VBoxManage %{buildroot}%{_vbox_instdir} -%__install -m 755 VBoxHeadless %{buildroot}%{_vbox_instdir} -%__install -m 755 VBoxSDL %{buildroot}%{_vbox_instdir} -%__install -m 755 VBoxTunctl %{buildroot}%{_vbox_instdir} +install -m 755 VBoxManage %{buildroot}%{_vbox_instdir} +install -m 755 VBoxHeadless %{buildroot}%{_vbox_instdir} +install -m 755 VBoxSDL %{buildroot}%{_vbox_instdir} +install -m 755 VBoxTunctl %{buildroot}%{_vbox_instdir} # create links to vbox tools in PATH - they could be usefull for controlling vbox from command line -%__ln_s %{_vbox_instdir}/VBoxManage %{buildroot}%{_bindir}/VBoxManage -%__ln_s %{_vbox_instdir}/VBoxHeadless \ +ln -s %{_vbox_instdir}/VBoxManage %{buildroot}%{_bindir}/VBoxManage +ln -s %{_vbox_instdir}/VBoxHeadless \ %{buildroot}%{_bindir}/VBoxHeadless -%__ln_s %{_vbox_instdir}/VBoxSDL %{buildroot}%{_bindir}/VBoxSDL -%__ln_s %{_vbox_instdir}/VBoxTunctl %{buildroot}%{_bindir}/VBoxTunctl -%__install -m 755 VBoxSVC %{buildroot}%{_vbox_instdir} -%__install -m 755 VBoxXPCOMIPCD %{buildroot}%{_vbox_instdir} -%__install -m 755 VBoxExtPackHelperApp %{buildroot}%{_vbox_instdir} -%__install -m 755 VBoxTestOGL %{buildroot}%{_vbox_instdir} -%__install -m 755 VBoxPermissionMessage \ +ln -s %{_vbox_instdir}/VBoxSDL %{buildroot}%{_bindir}/VBoxSDL +ln -s %{_vbox_instdir}/VBoxTunctl %{buildroot}%{_bindir}/VBoxTunctl +install -m 755 VBoxSVC %{buildroot}%{_vbox_instdir} +install -m 755 VBoxXPCOMIPCD %{buildroot}%{_vbox_instdir} +install -m 755 VBoxExtPackHelperApp %{buildroot}%{_vbox_instdir} +install -m 755 VBoxTestOGL %{buildroot}%{_vbox_instdir} +install -m 755 VBoxPermissionMessage \ %{buildroot}%{_vbox_instdir} -%__install -m 755 VBoxNetDHCP %{buildroot}%{_vbox_instdir} -%__install -m 755 VBoxNetAdpCtl %{buildroot}%{_vbox_instdir} -%__install -m 755 VirtualBox %{buildroot}%{_vbox_instdir} -%__install -m 755 VBoxEFI*.fd %{buildroot}%{_vbox_instdir} -%__install -m 755 VBoxSysInfo.sh %{buildroot}%{_vbox_instdir} -%__install -m 644 *.so %{buildroot}%{_vbox_instdir} -%__install -m 644 V*.gc %{buildroot}%{_vbox_instdir} -%__install -m 644 *.r0 %{buildroot}%{_vbox_instdir} -%__install -m 644 components/* %{buildroot}%{_vbox_instdir}/components/ +install -m 755 VBoxNetDHCP %{buildroot}%{_vbox_instdir} +install -m 755 VBoxNetAdpCtl %{buildroot}%{_vbox_instdir} +install -m 755 VirtualBox %{buildroot}%{_vbox_instdir} +install -m 755 VBoxEFI*.fd %{buildroot}%{_vbox_instdir} +install -m 755 VBoxSysInfo.sh %{buildroot}%{_vbox_instdir} +install -m 644 *.so %{buildroot}%{_vbox_instdir} +install -m 644 V*.gc %{buildroot}%{_vbox_instdir} +install -m 644 *.r0 %{buildroot}%{_vbox_instdir} +install -m 644 components/* %{buildroot}%{_vbox_instdir}/components/ # install languages -%__install -m 644 nls/* %{buildroot}%{_datadir}/virtualbox/nls/ +install -m 644 nls/* %{buildroot}%{_datadir}/virtualbox/nls/ popd # install desktop file -%__install -m 644 out/linux.*/release/bin/virtualbox.desktop \ +install -m 644 out/linux.*/release/bin/virtualbox.desktop \ %{buildroot}%{_datadir}/applications/%{name}.desktop %suse_update_desktop_file %{buildroot}%{_datadir}/applications/%{name}.desktop 'System Emulator' # create a menu entry -%__install -m 644 out/linux.*/release/bin/VBox.png \ +install -m 644 out/linux.*/release/bin/VBox.png \ %{buildroot}%{_datadir}/pixmaps/virtualbox.png # install udev rule for host (virtualbox) -%__install -m 644 %{SOURCE2} %{buildroot}%{_udevrulesdir}/60-vboxdrv.rules +install -m 644 %{SOURCE2} %{buildroot}%{_udevrulesdir}/60-vboxdrv.rules # install config with session shutdown defs -%__install -m 644 %{SOURCE4} %{buildroot}%{_sysconfdir}/default/virtualbox +install -m 644 %{SOURCE4} %{buildroot}%{_sysconfdir}/default/virtualbox #install wrapper script -%__install -m 644 %{S:9} %{buildroot}%{_bindir}/VirtualBox +install -m 644 %{SOURCE9} %{buildroot}%{_bindir}/VirtualBox # modify and install the vboxdrv init script # TODO: some of this stuff breaks the fillup macros below? -%__sed -i "s|%NOLSB%|yes|g;s|%DEBIAN%||g;s|%PACKAGE%|virtualbox|g" \ +sed -i "s|%{NOLSB}%|yes|g;s|%{DEBIAN}%||g;s|%{PACKAGE}%|virtualbox|g" \ src/VBox/Installer/linux/vboxdrv.sh.in -%__install -m 744 src/VBox/Installer/linux/vboxdrv.sh.in \ +install -m 744 src/VBox/Installer/linux/vboxdrv.sh.in \ %{buildroot}%{_sysconfdir}/init.d/vboxdrv -%__ln_s %{_sysconfdir}/init.d/vboxdrv \ +ln -s %{_sysconfdir}/init.d/vboxdrv \ %{buildroot}%{_sbindir}/rcvboxdrv # Init script to start virtual boxes during boot -%__install -m 755 %{S:12} %{buildroot}%{_sysconfdir}/init.d/vboxes -%__ln_s %{_sysconfdir}/init.d/vboxes \ +install -m 755 %{SOURCE12} %{buildroot}%{_sysconfdir}/init.d/vboxes +ln -s %{_sysconfdir}/init.d/vboxes \ %{buildroot}%{_sbindir}/rcvboxes # sysconfig file intended for vboxes script -%__install -d -m 755 %{buildroot}%{_var}/adm/fillup-templates -install -m 700 %{S:13} %{buildroot}%{_var}/adm/fillup-templates/sysconfig.vbox +install -d -m 755 %{buildroot}%{_var}/adm/fillup-templates +install -m 640 %{SOURCE13} %{buildroot}%{_var}/adm/fillup-templates/sysconfig.vbox # config file for vboxdrv script and vboxweb -%__install -d -m 755 %{buildroot}%{_sysconfdir}/vbox +install -d -m 755 %{buildroot}%{_sysconfdir}/vbox echo -e "#settings for vboxwebsrn\nVBOXWEB_USER=root" > \ %{buildroot}%{_sysconfdir}/vbox/vbox.cfg # install udev helper script for creating usb devices install -m 0755 -D src/VBox/Installer/linux/VBoxCreateUSBNode.sh \ - $RPM_BUILD_ROOT%{_udevrulesdir}/../VBoxCreateUSBNode.sh + %{buildroot}%{_udevrulesdir}/../VBoxCreateUSBNode.sh ###################################################### echo "entrering python-virtualbox install section" ###################################################### pushd out/linux.*/release/bin/sdk/installer VBOX_INSTALL_PATH=%{_vbox_instdir} python vboxapisetup.py install --prefix=%{_prefix} --root=%{buildroot} --record-rpm=%{_tmppath}/SITE_FILES popd -%__install -d -m 755 %{buildroot}%{_vbox_instdir}/sdk/bindings/xpcom -%__cp -r out/linux.*/release/bin/sdk/bindings/xpcom/python %{buildroot}%{_vbox_instdir}/sdk/bindings/xpcom +install -d -m 755 %{buildroot}%{_vbox_instdir}/sdk/bindings/xpcom +cp -r out/linux.*/release/bin/sdk/bindings/xpcom/python %{buildroot}%{_vbox_instdir}/sdk/bindings/xpcom %py_compile %{buildroot}%{_vbox_instdir}/sdk/bindings/xpcom/python ###################################################### echo "entering virtualbox-devel install section" ###################################################### -%__cp -r out/linux.*/release/bin/sdk/bindings/auth %{buildroot}%{_vbox_instdir}/sdk/bindings +cp -r out/linux.*/release/bin/sdk/bindings/auth %{buildroot}%{_vbox_instdir}/sdk/bindings pushd out/linux.*/release/bin/sdk/bindings/xpcom -%__cp -r include %{buildroot}%{_vbox_instdir}/sdk/bindings/xpcom -%__cp -r idl %{buildroot}%{_vbox_instdir}/sdk/bindings/xpcom -%__cp -r cbinding %{buildroot}%{_vbox_instdir}/sdk/bindings/xpcom -%__cp -r samples %{buildroot}%{_vbox_instdir}/sdk/bindings/xpcom +cp -r include %{buildroot}%{_vbox_instdir}/sdk/bindings/xpcom +cp -r idl %{buildroot}%{_vbox_instdir}/sdk/bindings/xpcom +cp -r cbinding %{buildroot}%{_vbox_instdir}/sdk/bindings/xpcom +cp -r samples %{buildroot}%{_vbox_instdir}/sdk/bindings/xpcom popd -%__cp out/linux.*/release/bin/sdk/bindings/VirtualBox.xidl %{buildroot}%{_vbox_instdir}/sdk/bindings +cp out/linux.*/release/bin/sdk/bindings/VirtualBox.xidl %{buildroot}%{_vbox_instdir}/sdk/bindings ###################################################### echo "entering virtualbox-websrv install section" ###################################################### pushd out/linux.*/release/bin -%__install -m 755 vboxwebsrv %{buildroot}%{_vbox_instdir} -%__install -m 755 webtest %{buildroot}%{_vbox_instdir} +install -m 755 vboxwebsrv %{buildroot}%{_vbox_instdir} +install -m 755 webtest %{buildroot}%{_vbox_instdir} popd -%__sed -i "s|%NOLSB%|yes|g;s|%DEBIAN%||g;s|%PACKAGE%|virtualbox|g" \ +sed -i "s|%{NOLSB}%|yes|g;s|%{DEBIAN}%||g;s|%{PACKAGE}%|virtualbox|g" \ src/VBox/Installer/linux/vboxweb-service.sh -%__install -m 744 src/VBox/Installer/linux/vboxweb-service.sh \ +install -m 744 src/VBox/Installer/linux/vboxweb-service.sh \ %{buildroot}%{_sysconfdir}/init.d/vboxweb-service -%__ln_s %{_sysconfdir}/init.d/vboxweb-service \ +ln -s %{_sysconfdir}/init.d/vboxweb-service \ %{buildroot}%{_sbindir}/rcvboxweb-service # ###################################################### echo "entering virtualbox-guest-desktop-icons install section" ###################################################### -%__install -d -m 755 %{buildroot}%{_datadir}/pixmaps/virtalbox +install -d -m 755 %{buildroot}%{_datadir}/pixmaps/virtalbox pushd src/VBox/Frontends/VirtualBox/images for icon in os_*.png; do - %__install -m 644 "$icon" %{buildroot}%{_datadir}/pixmaps/virtalbox/"$icon"; + install -m 644 "$icon" %{buildroot}%{_datadir}/pixmaps/virtalbox/"$icon"; done popd # @@ -651,28 +582,18 @@ groupadd -r vboxusers 2>/dev/null || : %fillup_and_insserv -f -y vboxdrv #setup our sysconfig file /etc/sysconfig/vbox %fillup_only -an vbox -%if %suse_version >= 1140 - %set_permissions %{_vbox_instdir}/VBoxNetDHCP - %set_permissions %{_vbox_instdir}/VBoxNetAdpCtl - %set_permissions %{_vbox_instdir}/VBoxHeadless - %set_permissions %{_vbox_instdir}/VBoxSDL -%else - %run_permissions -%endif +%set_permissions %{_vbox_instdir}/VBoxNetDHCP +%set_permissions %{_vbox_instdir}/VBoxNetAdpCtl +%set_permissions %{_vbox_instdir}/VBoxHeadless +%set_permissions %{_vbox_instdir}/VBoxSDL %post qt -%if %suse_version >= 1140 - %set_permissions %{_vbox_instdir}/VirtualBox -%else - %run_permissions -%endif +%set_permissions %{_vbox_instdir}/VirtualBox %verifyscript -%if %suse_version >= 1140 - %verify_permissions -e %{_vbox_instdir}/VBoxNetDHCP -%endif +%verify_permissions -e %{_vbox_instdir}/VBoxNetDHCP %verify_permissions -e %{_vbox_instdir}/VBoxNetAdpCtl -%verify_permissions -e %{_vbox_instdir}/VBoxHeadless +%verify_permissions -e %{_vbox_instdir}/VBoxHeadless %verify_permissions -e %{_vbox_instdir}/VBoxSDL %verifyscript qt @@ -715,12 +636,9 @@ exit 0 %postun websrv %restart_on_update vboxweb-service %insserv_cleanup -# +# ####################################################### -%clean -[ -d "%{buildroot}" -a "%{buildroot}" != "" ] && %__rm -rf "%{buildroot}" - %files %defattr(-, root, root) %doc UserManual.pdf @@ -769,7 +687,6 @@ exit 0 %{_vbox_instdir}/VBoxVMMPreload.so #todo:double check - if this file should be assigned to the host side %{_vbox_instdir}/VBoxHostChannel.so -# %dir %{_vbox_instdir}/components %{_vbox_instdir}/components/*.so %{_vbox_instdir}/components/*.xpt @@ -784,15 +701,10 @@ exit 0 %{_sbindir}/rcvboxes %{_sbindir}/rcvboxdrv %{_udevrulesdir}/../VBoxCreateUSBNode.sh -%if %suse_version >= 1140 - %verify(not mode) %attr(4750,root,vboxusers) %{_vbox_instdir}/VBoxNetDHCP -%else - %{_vbox_instdir}/VBoxNetDHCP -%endif +%verify(not mode) %attr(4750,root,vboxusers) %{_vbox_instdir}/VBoxNetDHCP %verify(not mode) %attr(4750,root,vboxusers) %{_vbox_instdir}/VBoxNetAdpCtl %verify(not mode) %attr(4750,root,vboxusers) %{_vbox_instdir}/VBoxHeadless %verify(not mode) %attr(4750,root,vboxusers) %{_vbox_instdir}/VBoxSDL -# %files qt %defattr(-, root, root) @@ -807,7 +719,6 @@ exit 0 %{_vbox_instdir}/VirtualBox.so %{_datadir}/pixmaps/virtualbox.png %{_datadir}/applications/%{name}.desktop -# %files guest-x11 %defattr(-, root, root) @@ -819,13 +730,6 @@ exit 0 %{_libdir}/xorg/modules/drivers/vboxvideo_drv.so %{_libdir}/dri/vboxvideo_dri.so %{_sysconfdir}/X11/xinit/xinitrc.d/vboxadd-xclient.sh -%if %suse_version < 1130 -# %config %{_sysconfdir}/X11/xorg.conf.d/60-vboxmouse.conf -#%else - %{_datadir}/hal/fdi/policy/20thirdparty/90-vboxguest.fdi - %{_libdir}/xorg/modules/input/vboxmouse_drv.so -%endif -# %files guest-tools %defattr(-, root, root) @@ -835,7 +739,6 @@ exit 0 %{_udevrulesdir}/60-vboxguest.rules %config %{_sysconfdir}/init.d/vboxadd %{_sbindir}/rcvboxadd -# %files -n python-%{name} -f %{_tmppath}/SITE_FILES %defattr(-, root, root) @@ -843,11 +746,7 @@ exit 0 %dir %{_vbox_instdir}/sdk/bindings %dir %{_vbox_instdir}/sdk/bindings/xpcom %{_vbox_instdir}/sdk/bindings/xpcom/python -%if 0%{?suse_version} > 1130 - %attr(0755, root, root) %{_vbox_instdir}/VBoxPython2_7.so -%else - %attr(0755, root, root) %{_vbox_instdir}/VBoxPython2_6.so -%endif +%attr(0755, root, root) %{_vbox_instdir}/VBoxPython2_7.so %files devel %defattr(-,root, root) @@ -860,11 +759,10 @@ exit 0 %{_vbox_instdir}/sdk/bindings/xpcom/include %{_vbox_instdir}/sdk/bindings/xpcom/samples %{_vbox_instdir}/sdk/bindings/auth -#%{_vbox_instdir}/sdk/bindings/glue/java %files websrv %defattr(-,root, root) -%{_vbox_instdir}/vboxwebsrv +%{_vbox_instdir}/vboxwebsrv %{_vbox_instdir}/webtest %{_sysconfdir}/init.d/vboxweb-service %{_sbindir}/rcvboxweb-service