# Maintainer: Ben Allen # Contributor: Ben Allen _flavor=${FLAVOR:-hardened} _kpkg=linux-$_flavor _kver=4.9.51 _kpkgrel=0 # when chaning _ver we *must* bump _mypkgrel _ver=5.1.26 _mypkgrel=0 _name=virtualbox-guest-modules _kpkgver="$_kver-r$_kpkgrel" _abi_release=${_kver}-${_kpkgrel}-${_flavor} _abi_release_virthardened=${_kver}-${_kpkgrel}-virthardened pkgname=${_name}-${_flavor} pkgver=$_kver pkgrel=$(($_kpkgrel + $_mypkgrel)) pkgdesc="VirtualBox Additions guest kernel modules for $_flavor" arch='x86 x86_64' url='http://virtualbox.org' license="GPL custom" makedepends="linux-hardened-dev=$_kpkgver linux-virthardened-dev=$_kpkgver sed coreutils" subpackages="$_name-virthardened:_virthardened" source="http://download.virtualbox.org/virtualbox/$_ver/VirtualBox-$_ver.tar.bz2 vboxguest-log-use-c99.patch const-struct-kernel_param.patch " provides="${_name}-grsec=${pkgver}-r${pkgrel}" builddir="$srcdir"/VirtualBox-$_ver prepare() { local i ( # verify the kernel version before entering chroot _kapkbuild="$startdir"/../../main/linux-${_flavor}/APKBUILD if [ -f $_kapkbuild ]; then . $_kapkbuild pkgname=$_name-$_flavor if [ "$_kver" != "$pkgver" ]; then die "please update _kver to $pkgver" fi if [ "$_kpkgrel" != "$pkgrel" ]; then die "please update _kpkgrel to $pkgrel" fi fi ) || return 1 cd "$builddir" default_prepare || return 1 "$builddir"/src/VBox/Additions/linux/export_modules \ "$srcdir/vbox-kmod-$_ver.tar.gz" || return 1 for i in $_abi_release $_abi_release_virthardened; do mkdir -p "$srcdir/$i" tar -C "$srcdir/$i" -zxf "$srcdir"/vbox-kmod-$_ver.tar.gz done } build() { local i for i in $_abi_release $_abi_release_virthardened; do cd "$srcdir/$i" # Build Kernel Modules make KERN_DIR=/lib/modules/${i}/build \ || return 1 done } package() { local i module= for i in $_abi_release $_abi_release_virthardened; do cd "$srcdir/$i" for module in *.ko; do install -v -D -m644 ${module} \ "$pkgdir/lib/modules/$i/misc/${module}" done done } _virthardened() { pkgdesc="VirtualBox Additions kernel modules for virthardened" mkdir -p "$subpkgdir"/lib/modules/ # vboxvideo.ko won't load with virthardened kernel as it doesn't have DRM rm "$pkgdir"/lib/modules/$_abi_release_virthardened/misc/vboxvideo.ko mv "$pkgdir"/lib/modules/$_abi_release_virthardened \ "$subpkgdir"/lib/modules/ } sha512sums="680e9646a51a0a5923b3ded10007ee1c1e2a41c6d8a961d2b2540db6578bed2847154f4cac87e3cfe1118a62595b47c7df99da854f6c340e173b9eb8cacf2add VirtualBox-5.1.26.tar.bz2 bd934e9ed3d2324ef66e2539d2f3f6fab35a8858d670bba817b9cabfe66e85fe13a8594b35f4a8e639841f72fb0b8d12af38518ba25638da5ef338b259ab600b vboxguest-log-use-c99.patch d069876f93e431833800c1d26ea77ae1dec40c840bb549cf519ceea93ee1ca89bcb262a13b00001503d19e596965d74a71a7f49be232ea892a82114d3ea4337c const-struct-kernel_param.patch"