xref: /kvm-unit-tests/scripts/vmm.bash (revision 25c4b4b4136a34609d6a10bdcbbdb4cce64b8349)
1*25c4b4b4SAlexandru Eliseideclare -A vmm_optname=(
2*25c4b4b4SAlexandru Elisei	[qemu,args]='-append'
3*25c4b4b4SAlexandru Elisei	[qemu,nr_cpus]='-smp'
4*25c4b4b4SAlexandru Elisei)
5*25c4b4b4SAlexandru Elisei
6*25c4b4b4SAlexandru Eliseifunction vmm_optname_args()
7*25c4b4b4SAlexandru Elisei{
8*25c4b4b4SAlexandru Elisei	echo ${vmm_optname[$(vmm_get_target),args]}
9*25c4b4b4SAlexandru Elisei}
10*25c4b4b4SAlexandru Elisei
11*25c4b4b4SAlexandru Eliseifunction vmm_optname_nr_cpus()
12*25c4b4b4SAlexandru Elisei{
13*25c4b4b4SAlexandru Elisei	echo ${vmm_optname[$(vmm_get_target),nr_cpus]}
14*25c4b4b4SAlexandru Elisei}
15*25c4b4b4SAlexandru Elisei
169fcec1dbSAlexandru Eliseifunction vmm_get_target()
179fcec1dbSAlexandru Elisei{
189fcec1dbSAlexandru Elisei	if [[ -z "$TARGET" ]]; then
199fcec1dbSAlexandru Elisei		echo "qemu"
209fcec1dbSAlexandru Elisei	else
219fcec1dbSAlexandru Elisei		echo "$TARGET"
229fcec1dbSAlexandru Elisei	fi
239fcec1dbSAlexandru Elisei}
249fcec1dbSAlexandru Elisei
259fcec1dbSAlexandru Eliseifunction vmm_check_supported()
269fcec1dbSAlexandru Elisei{
279fcec1dbSAlexandru Elisei	# We're not interested in the return code for vmm_get_target().
289fcec1dbSAlexandru Elisei	# shellcheck disable=SC2155
299fcec1dbSAlexandru Elisei	local target=$(vmm_get_target)
309fcec1dbSAlexandru Elisei
319fcec1dbSAlexandru Elisei	case "$target" in
329fcec1dbSAlexandru Elisei	qemu)
339fcec1dbSAlexandru Elisei		return 0
349fcec1dbSAlexandru Elisei		;;
359fcec1dbSAlexandru Elisei	*)
369fcec1dbSAlexandru Elisei		echo "$0 does not support target '$target'"
379fcec1dbSAlexandru Elisei		exit 2
389fcec1dbSAlexandru Elisei		;;
399fcec1dbSAlexandru Elisei	esac
409fcec1dbSAlexandru Elisei}
41