# Description: VirtualBox is a general-purpose full virtualizer for x86 hardware. # URL: http://www.virtualbox.org/ # Maintainer: Jose V Beneyto, sepen at users dot sourceforge dot net # Packager: Jose V Beneyto, sepen at users dot sourceforge dot net # Depends on: bin86,dev86,hal,libsdl,libidl,qt4,xalan-c,iasl,xorg-libxmu,gcc34,libcap name=virtualbox version=2.1.0 release=3 source=(http://download.virtualbox.org/$name/$version/VirtualBox-$version-OSE.tar.bz2 \ $name 60-vboxdrv.rules $name.desktop) build() { KVER=$(uname -r) [ ! -z $KDIR ] && KARG="KERN_DIR=$KDIR" local QT3GUI QT4GUI if [ "$(pkginfo -i | grep '^qt3 ')" ]; then QT3GUI="--with-qt-dir=/usr/share/qt" else QT3GUI="--disable-qt3" fi if [ "$(pkginfo -i | grep '^qt4 ')" ]; then QT4GUI="--with-qt4-dir=/usr/share/qt4" else QT4GUI="--disable-qt4" fi cd VirtualBox-$version # compile ./configure $QT3GUI $QT4GUI \ --with-gcc-compat=gcc-3.4 \ --disable-hardening \ --ose \ --disable-pulse source ./env.sh kmk all # compile kernel modules cd out/linux.x86/release/bin/src make $KARG # install kernel modules install -D -m 0644 vboxdrv.ko $PKG/lib/modules/$KVER/kernel/drivers/misc/vboxdrv.ko install -D -m 0644 vboxnetflt.ko $PKG/lib/modules/$KVER/kernel/drivers/misc/vboxnetflt.ko # remove superfluous files rm -rf $SRC/VirtualBox-$version/out/linux.x86/release/bin/{src,sdk/samples,testcase} \ $SRC/VirtualBox-$version/out/linux.x86/release/bin/{additions/src,nls,nls3} find $SRC/VirtualBox-$version/out/linux.x86/release/bin -type f -name 'tst*' -exec rm -rf {} \; # do the rest install -D -m 0644 $SRC/60-vboxdrv.rules $PKG/etc/udev/rules.d/60-vboxdrv.rules install -d $PKG/usr/{bin,share/$name,share/pixmaps} install -m 0755 $SRC/$name $PKG/usr/bin/$name mv $SRC/VirtualBox-$version/out/linux.x86/release/{bin,lib} $PKG/usr/share/$name chmod +s $PKG/usr/share/$name/bin/VirtualBox install -D -m 0644 $SRC/$name.desktop $PKG/usr/share/applications/$name.desktop mv $PKG/usr/share/$name/bin/VBox.png $PKG/usr/share/pixmaps/$name.png rm $PKG/usr/share/$name/bin/{VBox.sh,SUP*nstall} }