%define el4 0 %define el5 0 %{?dist: %{expand: %%define %dist 1}} %if !%{el4} && !%{el5} %{error:dist must be el4 or el5} %quit %endif %define enable_debug_packages %{nil} %define debug_package %{nil} Summary: VirtualBox Open Source Edition (OSE) Name: VirtualBox-OSE Version: 1.5.2 Release: 2.%{dist} URL: http://www.virtualbox.org/ Vendor: LXPRO.COM Packager: Greg Bailey Source0: http://www.virtualbox.org/download/%{version}/VirtualBox-%{version}_OSE.tar.bz2 #Source1: http://www.virtualbox.org/download/%{version}/VBoxGuestAdditions_%{version}_OSE.iso #Source2: http://www.virtualbox.org/download/UserManual.pdf Source3: vboxdrv.init License: GNU GPL Version 2 Group: Applications/System BuildRoot: %{_tmppath}/%{name}-root Requires: xerces-c xalan-c %if %{el4} Requires: fonts-xorg-base %endif %if %{el5} Requires: xorg-x11-fonts-base %endif Requires(post): dkms Requires(preun): dkms BuildRequires: dev86 iasl libxslt xerces-c-devel xalan-c BuildRequires: qt-devel libIDL-devel SDL-devel alsa-lib-devel hal-devel BuildRequires: gcc-c++ %if %{el4} BuildRequires: xorg-x11-devel %endif %if %{el5} BuildRequires: libXcursor-devel %endif %description VirtualBox Open Source Edition (OSE) is a powerful PC virtualization solution allowing you to run a wide range of PC operating systems on your Linux system. This includes Windows, Linux, FreeBSD, DOS, OpenBSD and others. VirtualBox comes with a broad feature set and excellent performance, making it the premier virtualization software solution on the market. %prep %setup -q -n VirtualBox-%{version}_OSE %build ./configure source env.sh kmk %_smp_mflags all #cp -a %{SOURCE2} . %install rm -rf $RPM_BUILD_ROOT mkdir -p $RPM_BUILD_ROOT%{_bindir} ln -s %{_libdir}/virtualbox/VBox.sh $RPM_BUILD_ROOT%{_bindir}/VirtualBox ln -s %{_libdir}/virtualbox/VBox.sh $RPM_BUILD_ROOT%{_bindir}/VBoxManage ln -s %{_libdir}/virtualbox/VBox.sh $RPM_BUILD_ROOT%{_bindir}/VBoxSDL mkdir -p $RPM_BUILD_ROOT%{_datadir}/applications cp -a src/VBox/Installer/linux/VirtualBox.desktop $RPM_BUILD_ROOT%{_datadir}/applications/. mkdir -p $RPM_BUILD_ROOT%{_datadir}/icons cp -a src/VBox/Installer/linux/VBox.png $RPM_BUILD_ROOT%{_datadir}/icons/. mkdir -p $RPM_BUILD_ROOT%{_initrddir} cp -a %{SOURCE3} $RPM_BUILD_ROOT%{_initrddir}/vboxdrv mkdir -p $RPM_BUILD_ROOT%{_libdir}/virtualbox cp -a out/linux.x86/release/bin/* $RPM_BUILD_ROOT%{_libdir}/virtualbox/. #cp -a %{SOURCE1} $RPM_BUILD_ROOT%{_libdir}/virtualbox/VBoxGuestAdditions.iso %if %{el4} mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/udev/permissions.d cat > $RPM_BUILD_ROOT%{_sysconfdir}/udev/permissions.d/virtualbox.permissions << EOF vboxdrv:root:root:0666 EOF %endif %if %{el5} mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/udev/rules.d cat > $RPM_BUILD_ROOT%{_sysconfdir}/udev/rules.d/virtualbox.rules << EOF KERNEL=="vboxdrv", MODE="0666" EOF %endif mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/vbox cat > $RPM_BUILD_ROOT%{_sysconfdir}/vbox/vbox.cfg << EOF INSTALL_DIR="%{_libdir}/virtualbox" EOF mkdir -p $RPM_BUILD_ROOT%{_usrsrc}/virtualbox-%{version} mv $RPM_BUILD_ROOT%{_libdir}/virtualbox/src/* $RPM_BUILD_ROOT%{_usrsrc}/virtualbox-%{version}/. cat > $RPM_BUILD_ROOT%{_usrsrc}/virtualbox-%{version}/dkms.conf << EOF PACKAGE_NAME=virtualbox PACKAGE_VERSION=%{version} DEST_MODULE_LOCATION[0]=/kernel/drivers/misc BUILT_MODULE_NAME[0]=vboxdrv AUTOINSTALL=yes EOF rm -rf $RPM_BUILD_ROOT%{_libdir}/virtualbox/additions rm -rf $RPM_BUILD_ROOT%{_libdir}/virtualbox/sdk rm -rf $RPM_BUILD_ROOT%{_libdir}/virtualbox/src rm -rf $RPM_BUILD_ROOT%{_libdir}/virtualbox/testcase rm -rf $RPM_BUILD_ROOT%{_libdir}/virtualbox/tst* rm -rf $RPM_BUILD_ROOT%{_libdir}/virtualbox/vboxdrv.ko rm -rf $RPM_BUILD_ROOT%{_libdir}/virtualbox/VBox.png %clean rm -rf $RPM_BUILD_ROOT %post dkms --rpm_safe_upgrade add -m virtualbox -v %{version} -q dkms --rpm_safe_upgrade build -m virtualbox -v %{version} -q dkms --rpm_safe_upgrade install -m virtualbox -v %{version} -q --force /sbin/chkconfig --add vboxdrv /sbin/chkconfig vboxdrv on /sbin/service vboxdrv start true %preun /sbin/service vboxdrv stop /sbin/chkconfig --del vboxdrv dkms --rpm_safe_upgrade remove -m virtualbox -v %{version} -q --all true %files %defattr(-,root,root) %{_bindir}/VirtualBox %{_bindir}/VBoxManage %{_bindir}/VBoxSDL %{_datadir}/applications/VirtualBox.desktop %{_datadir}/icons/VBox.png %{_initrddir}/vboxdrv %{_libdir}/virtualbox %if %{el4} %config %{_sysconfdir}/udev/permissions.d/virtualbox.permissions %endif %if %{el5} %config %{_sysconfdir}/udev/rules.d/virtualbox.rules %endif %dir %{_sysconfdir}/vbox %config %{_sysconfdir}/vbox/vbox.cfg %{_usrsrc}/virtualbox-%{version} %doc COPYING #%doc UserManual.pdf %changelog * Wed Dec 12 2007 Greg Bailey [1.5.2-2] - Remove VBoxGuestAdditions OSE iso (not GPL) - Remove UserManual.pdf (not GPL) * Mon Nov 12 2007 Greg Bailey [1.5.2-1] - Cleanup RPM macro usage - Fix udev permissions for RHEL4 * Tue Sep 11 2007 Greg Bailey [1.5.0-1] - Initial RPM version