wok-next annotate virtualbox-ose/receipt @ rev 8969

virtualbox-ose: add PROVIDE=
author Pascal Bellard <pascal.bellard@slitaz.org>
date Wed Mar 02 10:08:14 2011 +0100 (2011-03-02)
parents 1e7c52662662
children 4c56a51375d9
rev   line source
slaxemulator@7064 1 # SliTaz package receipt.
slaxemulator@7064 2
slaxemulator@7064 3 PACKAGE="virtualbox-ose"
slaxemulator@8715 4 VERSION="4.0.4"
slaxemulator@7064 5 CATEGORY="misc"
slaxemulator@7064 6 SHORT_DESC="Powerful x86 virtualization for enterprise as well as home use (Open Source Edition)"
slaxemulator@7064 7 MAINTAINER="slaxemulator@gmail.com"
slaxemulator@8715 8 DEPENDS="libxml2 xorg-libXcursor libIDL xorg-libXinerama libsdl xorg-libXmu curl libvncserver libpng jpeg mesa libglu-mesa qt4 vde2"
pascal@8912 9 BUILD_DEPENDS="bin86 dev86 iasl libxslt-dev Qt4-dev libsdl-ttf-dev alsa-lib-dev hal-dev xorg-libXtst-dev xorg-libXrandr-dev python python-dev xalan-c xalan-c-dev xerces-c-dev openssl-dev zlib-dev libcap-dev glib-dev pam pam-dev bzip2 linux-module-headers pkg-config tar wget"
slaxemulator@7064 10 SOURCE="VirtualBox"
slaxemulator@7814 11 TARBALL="$SOURCE-$VERSION.tar.bz2"
slaxemulator@7064 12 WEB_SITE="http://virtualbox.org/"
slaxemulator@7064 13 WGET_URL="http://download.virtualbox.org/virtualbox/$VERSION/$TARBALL"
pascal@8969 14 PROVIDE="virtualbox"
slaxemulator@7064 15
slaxemulator@7064 16 # Rules to configure and make the package.
slaxemulator@7064 17 compile_rules()
slaxemulator@7064 18 {
slaxemulator@7064 19 cd $src
slaxemulator@8484 20 patch -Np1 -i "$stuff/virtualbox-4-makeself-check.patch"
slaxemulator@8715 21 patch -Np1 -i "$stuff/virtualbox-4-mkisofs-check.patch"
slaxemulator@8715 22 cp $stuff/LocalConfig.kmk .
slaxemulator@7064 23 ./configure \
slaxemulator@7064 24 --disable-pulse \
slaxemulator@7814 25 --disable-java \
slaxemulator@7814 26 --disable-docs \
slaxemulator@8484 27 --enable-webservice \
slaxemulator@8715 28 --enable-vde \
slaxemulator@7064 29 --with-linux=/usr/src/linux
slaxemulator@7064 30 source ./env.sh
slaxemulator@7064 31 kmk all
slaxemulator@7064 32
slaxemulator@7064 33 # build modules
slaxemulator@7814 34 cd
slaxemulator@7814 35 KERN_DIR=/usr/src/linux make -C "$src/out/linux.$BUILD_PLATFORM_ARCH/release/bin/src"
slaxemulator@7064 36 # build guest additions modules
slaxemulator@7814 37 KERN_DIR=/usr/src/linux make -C "$src/out/linux.$BUILD_PLATFORM_ARCH/release/bin/additions/src"
slaxemulator@7814 38 KERN_DIR=/usr/src/linux make -C "$src/out/linux.$BUILD_PLATFORM_ARCH/release/bin/additions/src/vboxvideo"
slaxemulator@7064 39 }
slaxemulator@7064 40
slaxemulator@7064 41 # Rules to gen a SliTaz package suitable for Tazpkg.
slaxemulator@7064 42 genpkg_rules()
slaxemulator@7064 43 {
slaxemulator@7064 44 fs=$WOK/$PACKAGE/taz/$PACKAGE-$VERSION/fs
slaxemulator@7064 45
slaxemulator@7064 46 source $src/env.sh
slaxemulator@7064 47 cd $src/out/linux.$BUILD_PLATFORM_ARCH/release/bin
slaxemulator@8005 48 mkdir -p $fs/usr/bin $fs/usr/lib/virtualbox/components \
slaxemulator@8715 49 $fs/usr/share/virtualbox/nls \
slaxemulator@8715 50 $fs/usr/lib/virtualbox/ExtensionPacks
slaxemulator@8715 51 install -m 0755 VBox.sh $fs/usr/bin/VBox
slaxemulator@7064 52 sed -i 's/ps -U/ps | grep/' $fs/usr/bin/VBox
slaxemulator@7064 53 ln -sf VBox $fs/usr/bin/VBoxHeadless
slaxemulator@8715 54 ln -sf VBox $fs/usr/bin/vboxheadless
slaxemulator@7064 55 ln -sf VBox $fs/usr/bin/VBoxManage
slaxemulator@8715 56 ln -sf VBox $fs/usr/bin/vboxmanage
slaxemulator@7064 57 ln -sf VBox $fs/usr/bin/VBoxSDL
slaxemulator@8715 58 ln -sf VBox $fs/usr/bin/vboxsdl
slaxemulator@7064 59 ln -sf VBox $fs/usr/bin/VirtualBox
slaxemulator@8715 60 ln -sf VBox $fs/usr/bin/virtualbox
slaxemulator@8715 61 ln -sf VBox $fs/usr/bin/vboxwebsrv
slaxemulator@7064 62
slaxemulator@7064 63 install -m 0755 VBoxTunctl "$fs/usr/bin"
slaxemulator@7064 64
slaxemulator@7064 65 # components
slaxemulator@8715 66 install -D -m 0755 components/* $fs/usr/lib/virtualbox/components
slaxemulator@7064 67
slaxemulator@7064 68 # lib
slaxemulator@7064 69 install -m 0755 *.so "$fs/usr/lib/virtualbox"
slaxemulator@7064 70 install -m 0644 *.gc *.r0 VBoxEFI*.fd "$fs/usr/lib/virtualbox"
slaxemulator@7064 71
slaxemulator@7064 72 #setuid root binaries
slaxemulator@8715 73 install -m 4755 VBoxSDL VirtualBox VBoxHeadless VBoxNetDHCP VBoxNetAdpCtl "$fs/usr/lib/virtualbox"
slaxemulator@7064 74
slaxemulator@7064 75 #other binaries
slaxemulator@8715 76 install -m 0755 VBoxManage VBoxSVC VBoxExtPackHelperApp VBoxXPCOMIPCD VBoxTestOGL vboxwebsrv webtest "$fs/usr/lib/virtualbox"
slaxemulator@7064 77
slaxemulator@7064 78 #language
slaxemulator@7064 79 install -m 0755 nls/*.qm "$fs/usr/share/virtualbox/nls"
slaxemulator@8715 80
slaxemulator@8715 81 #useless scripts
slaxemulator@8715 82 install -m 0755 VBoxCreateUSBNode.sh VBoxSysInfo.sh "$fs/usr/share/virtualbox"
slaxemulator@7064 83
slaxemulator@7064 84 #icon
slaxemulator@7064 85 install -D -m 0644 VBox.png "$fs/usr/share/pixmaps/VBox.png"
slaxemulator@7064 86
slaxemulator@7064 87 #desktop
slaxemulator@7064 88 install -D -m 0644 virtualbox.desktop "$fs/usr/share/applications/virtualbox.desktop"
slaxemulator@8715 89 install -D -m 0644 virtualbox.xml "$fs/usr/share/mime/packages/virtualbox.xml"
slaxemulator@7064 90
slaxemulator@7064 91 #install configuration
slaxemulator@7064 92 mkdir -p "$fs/etc/vbox"
slaxemulator@7064 93 echo 'lsmod | grep -q vboxdrv || modprobe vboxdrv' > "$fs/etc/vbox/vbox.cfg"
slaxemulator@7064 94 echo 'INSTALL_DIR=/usr/lib/virtualbox' >> "$fs/etc/vbox/vbox.cfg"
slaxemulator@7064 95
slaxemulator@7064 96 #udev
slaxemulator@7064 97 install -D -m 0644 "$stuff/60-virtualbox.rules" \
slaxemulator@7064 98 "$fs/etc/udev/rules.d/60-virtualbox.rules"
slaxemulator@7064 99
slaxemulator@7064 100 mkdir -p $fs/usr/lib/virtualbox/sdk/bindings/xpcom/python/
slaxemulator@8005 101 cd sdk/installer
slaxemulator@7064 102 VBOX_INSTALL_PATH="/usr/lib/virtualbox" python vboxapisetup.py install --root "$fs"
slaxemulator@8010 103 cd $src/out/linux.$BUILD_PLATFORM_ARCH/release/bin
slaxemulator@8005 104 cd sdk/bindings/xpcom/python
slaxemulator@7064 105 cp -r xpcom $fs/usr/lib/virtualbox/sdk/bindings/xpcom/python/
slaxemulator@7064 106 chmod 644 $fs/usr/lib/virtualbox/sdk/bindings/xpcom/python/xpcom/*.py
slaxemulator@7064 107 chmod 644 $fs/usr/lib/virtualbox/sdk/bindings/xpcom/python/xpcom/server/*.py
slaxemulator@7064 108 chmod 644 $fs/usr/lib/virtualbox/sdk/bindings/xpcom/python/xpcom/client/*.py
slaxemulator@8010 109 cd $src/out/linux.$BUILD_PLATFORM_ARCH/release/bin
slaxemulator@7064 110
slaxemulator@7064 111 # virtualbox-modules
slaxemulator@7064 112 KERNEL_VERSION=`grep ^VERSION= $WOK/linux/receipt | cut -d "=" -f2 | sed -e 's/"//g'`
slaxemulator@7064 113
slaxemulator@7064 114 cd "$src/out/linux.$BUILD_PLATFORM_ARCH/release/bin/src"
slaxemulator@7064 115 install -D -m644 vboxdrv.ko "$fs/lib/modules/$KERNEL_VERSION-slitaz/misc/vboxdrv.ko"
slaxemulator@7064 116 install -D -m644 vboxnetflt.ko "$fs/lib/modules/$KERNEL_VERSION-slitaz/misc/vboxnetflt.ko"
slaxemulator@7064 117 install -D -m644 vboxnetadp.ko "$fs/lib/modules/$KERNEL_VERSION-slitaz/misc/vboxnetadp.ko"
slaxemulator@7064 118
slaxemulator@7064 119 # virtualbox-ose-additions
slaxemulator@7064 120
slaxemulator@7064 121 cd "$src/out/linux.$BUILD_PLATFORM_ARCH/release/bin/additions"
slaxemulator@7064 122 mkdir -p $fs/usr/bin
slaxemulator@7064 123 mkdir -p $fs/sbin
slaxemulator@7064 124 mkdir -p $fs/etc/X11/xorg.conf.d
slaxemulator@7064 125
slaxemulator@7064 126 install -m755 VBoxClient VBoxControl VBoxService "$fs/usr/bin"
slaxemulator@7064 127 install -m755 mount.vboxsf "$fs/sbin"
slaxemulator@7064 128
slaxemulator@7064 129 install -m644 $src/src/VBox/Additions/x11/Installer/50-vboxmouse.conf \
slaxemulator@7064 130 $fs/etc/X11/xorg.conf.d/50-vboxmouse.conf
slaxemulator@7064 131
slaxemulator@7064 132 install -m755 -D $src/src/VBox/Additions/x11/Installer/98vboxadd-xclient \
slaxemulator@7064 133 $fs/usr/bin/VBoxClient-all
slaxemulator@7064 134 install -m755 -D $src/src/VBox/Additions/x11/Installer/vboxclient.desktop \
slaxemulator@7064 135 $fs/etc/xdg/autostart/vboxclient.desktop
slaxemulator@7064 136
slaxemulator@7064 137 install -D vboxmouse_drv_19.so \
slaxemulator@7391 138 "$fs/usr/lib/X11/modules/input/vboxmouse.so"
slaxemulator@7064 139 install -D vboxvideo_drv_19.so \
slaxemulator@7391 140 "$fs/usr/lib/X11/modules/drivers/vboxvideo.so"
slaxemulator@7064 141 install -d "$fs/usr/lib/dri"
slaxemulator@7064 142 install -m755 VBoxOGL*.so "$fs/usr/lib"
slaxemulator@7064 143 ln -s /usr/lib/VBoxOGL.so "$fs/usr/lib/dri/vboxvideo_dri.so"
slaxemulator@7064 144 install -m755 -D pam_vbox.so "$fs/lib/security/pam_vbox.so"
slaxemulator@7064 145
slaxemulator@7064 146 # virtualbox-ose-additions-modules
slaxemulator@7064 147 cd "$src/out/linux.$BUILD_PLATFORM_ARCH/release/bin/additions/src"
slaxemulator@7064 148
slaxemulator@7064 149 cd vboxguest
slaxemulator@7064 150 install -D -m644 vboxguest.ko \
slaxemulator@7064 151 "$fs/lib/modules/$KERNEL_VERSION-slitaz/misc/vboxguest.ko"
slaxemulator@7064 152
slaxemulator@7064 153 cd ../vboxsf
slaxemulator@7064 154 install -D -m644 vboxsf.ko \
slaxemulator@7064 155 "$fs/lib/modules/$KERNEL_VERSION-slitaz/misc/vboxsf.ko"
slaxemulator@7064 156
slaxemulator@7064 157 cd ../vboxvideo
slaxemulator@7064 158 install -D -m644 vboxvideo.ko \
slaxemulator@7064 159 "$fs/lib/modules/$KERNEL_VERSION-slitaz/misc/vboxvideo.ko"
slaxemulator@7064 160
slaxemulator@7064 161 install -D -m 0644 "$stuff/60-vboxguest.rules" \
slaxemulator@7064 162 "$fs/etc/udev/rules.d/60-vboxguest.rules"
slaxemulator@7064 163 }
slaxemulator@7064 164
slaxemulator@7154 165 pre_remove()
slaxemulator@7154 166 {
slaxemulator@7652 167 sed -i "s/vboxdrv vboxnetadp vboxnetflt //" $1/etc/rcS.conf
slaxemulator@7154 168 }
slaxemulator@7154 169
slaxemulator@7154 170 post_install()
slaxemulator@7154 171 {
slaxemulator@7154 172 KERNEL_VERSION=`grep ^VERSION= $1/var/lib/tazpkg/installed/linux/receipt | cut -d "=" -f2 | sed -e 's/"//g'`
slaxemulator@7154 173
slaxemulator@7159 174 chroot "$1/" depmod -a $KERNEL_VERSION-slitaz
slaxemulator@7154 175 grep -qs vboxdrv $1/etc/rcS.conf ||
slaxemulator@7662 176 sed -i 's/LOAD_MODULES="/&vboxdrv vboxnetadp vboxnetflt /' $1/etc/rcS.conf
slaxemulator@7154 177 }