WIP recipe & patch for VirtualBox Guest Additions

Currently only clipboard exchange is supported, requires
VBoxTray running in the Deskbar.

The VBoxControl command should also work for some features.
This commit is contained in:
François Revol
2014-07-01 19:30:27 +02:00
parent dbf259bcbb
commit 817f36fb2d
2 changed files with 2676 additions and 0 deletions

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,93 @@
SUMMARY="VirtualBox kernel modules and user-space tools for Haiku guests"
DESCRIPTION="
VirtualBox is a free x86 virtualization solution allowing a wide range \
of x86 operating systems such as Windows, DOS, BSD or Linux to run on a \
Linux system.
This package contains the VirtualBox kernel modules and user-space \
tools for Haiku guests.
"
HOMEPAGE="http://www.virtualbox.org/"
SRC_URI="svn+http://www.virtualbox.org/svn/vbox/trunk#51740"
#CHECKSUM_SHA256=""
#TODO:check user manual for full list
COPYRIGHT="2003-2014 Oracle Corporation."
#TODO:check user manual for full list
LICENSE="
GNU GPL v2
CDDL v1
"
REVISION="1"
ARCHITECTURES="x86_gcc2 x86 x86_64"
PROVIDES="
virtualbox_guest_additions$secondaryArchSuffix = $portVersion
cmd:VBoxControl$secondaryArchSuffix = $portVersion
cmd:VBoxService$secondaryArchSuffix = $portVersion
cmd:VBoxTray$secondaryArchSuffix = $portVersion
"
PATCHES="vbox-$portVersion.patch"
REQUIRES="
haiku$secondaryArchSuffix >= $haikuVersion
openssl$secondaryArchSuffix >= 1.0.0
lib:libiconv$secondaryArchSuffix
lib:libz$secondaryArchSuffix
lib:libpng$secondaryArchSuffix
# lib:libstdc++$secondaryArchSuffix
lib:libcurl$secondaryArchSuffix
"
BUILD_REQUIRES="
openssl${secondaryArchSuffix}_devel >= 1.0.0
devel:libiconv$secondaryArchSuffix
devel:libz$secondaryArchSuffix
devel:libpng$secondaryArchSuffix
devel:libcurl$secondaryArchSuffix
"
BUILD_PREREQUIRES="
# required for kmk_* which are compiled with gcc4
haiku_x86 >= $haikuVersion
haiku${secondaryArchSuffix}_devel >= $haikuVersion
cmd:mkisofs
cmd:gcc$secondaryArchSuffix
cmd:ld$secondaryArchSuffix
cmd:sed
cmd:which
cmd:yasm
"
BUILD()
{
# use the checked-out kBuild for now
export PATH="$PATH:$PWD/kBuild/bin/haiku.x86"
export USER=user
./configure --build-headless --disable-python --disable-java --nofatal
source env.sh
kmk VBOX_ONLY_ADDITIONS=1 VBOX_WITH_ADDITION_DRIVERS=1 BUILD_TYPE=strict all
}
INSTALL()
{
op="out/haiku.x86/strict"
ap=$op/bin/additions
tad="$addOnsDir"
tbd="$binDir"
mkdir -p "$tad/kernel/generic"
mkdir -p "$tad/kernel/drivers/bin"
cp $ap/vboxguest "$tad/kernel/generic/"
cp $ap/vboxdev "$tad/kernel/drivers/bin/"
mkdir -p "$tad/kernel/drivers/dev/misc"
ln -fs ../../bin/vboxdev "$tad/kernel/drivers/dev/misc/"
mkdir -p "$tad/kernel/file_systems"
#cp $ap/vboxsf "$tad/kernel/file_systems/"
mkdir -p "$tbd"
cp $ap/VBoxControl "$tbd/"
cp $ap/VBoxService "$tbd/"
cp $ap/VBoxTray "$tbd/"
}