me=$0
say() { echo >&2 "[1m($me)[21m $1";      }
has() { which $1 >/dev/null 2>&1; return $?; }
check() {
	var=$1
	test "${!var}" == "" || return 0
	say "we were not able to detect a default value for the configuration variable \$$var. please set this variable to $2 and try again."
	exit 1
}
test "$out" = "" && {
	say "\$out environment variable must be set to your build directory - are you running this script by hand? run [1m./build.sh[21m in the root directory instead!"
	exit 2
}
reqpack() {
	if ! has "$1"; then
		say "to $2 for [1mlibk[21m, install the [1m$1[21m package and try again"
		exit 3
	fi
}