#! /bin/bash

set -e

die() {
	echo "$*"
	exit 1
}

[[ -z $1 ]] && die "Usage: $0 version"
VERSION="${1}"
FILE="$(portageq envvar DISTDIR)"/VirtualBox-"${VERSION}".tar.bz2
DIR="$(realpath "$(dirname "${0}")")"
mkdir out
pushd out &> /dev/null
echo Extracting
tar jxf "${FILE}"
pushd * &> /dev/null

pushd src/VBox/HostDrivers/linux &> /dev/null
echo Exporting host modules
./export_modules.sh --folder tmp
tar JcfC "${DIR}"/vbox-host-kernel-module-src-${VERSION}.tar.xz tmp .
popd &> /dev/null

pushd src/VBox/Additions/linux &> /dev/null
echo Exporting guest modules
./export_modules.sh --folder tmp
tar JcfC "${DIR}"/vbox-guest-kernel-module-src-${VERSION}.tar.xz tmp .
popd &> /dev/null

popd &> /dev/null
popd &> /dev/null
echo Cleaning up
rm -fR out
ls -lh vbox-host-kernel-module-src-${VERSION}.tar.xz vbox-guest-kernel-module-src-${VERSION}.tar.xz
