xref: /openbmc/qemu/tests/vm/Makefile.include (revision 438c78da)
1# Makefile for VM tests
2
3.PHONY: vm-build-all vm-clean-all
4
5IMAGES := ubuntu.i386 freebsd netbsd openbsd centos
6IMAGE_FILES := $(patsubst %, tests/vm/%.img, $(IMAGES))
7
8.PRECIOUS: $(IMAGE_FILES)
9
10vm-test:
11	@echo "vm-test: Test QEMU in preconfigured virtual machines"
12	@echo
13	@echo "  vm-build-ubuntu.i386            - Build QEMU in ubuntu i386 VM"
14	@echo "  vm-build-freebsd                - Build QEMU in FreeBSD VM"
15	@echo "  vm-build-netbsd                 - Build QEMU in NetBSD VM"
16	@echo "  vm-build-openbsd                - Build QEMU in OpenBSD VM"
17	@echo "  vm-build-centos                 - Build QEMU in CentOS VM, with Docker"
18	@echo ""
19	@echo "  vm-build-all                    - Build QEMU in all VMs"
20	@echo "  vm-clean-all                    - Clean up VM images"
21
22vm-build-all: $(addprefix vm-build-, $(IMAGES))
23
24vm-clean-all:
25	rm -f $(IMAGE_FILES)
26
27tests/vm/%.img: $(SRC_PATH)/tests/vm/% \
28		$(SRC_PATH)/tests/vm/basevm.py \
29		$(SRC_PATH)/tests/vm/Makefile.include
30	$(call quiet-command, \
31		$< \
32		$(if $(V)$(DEBUG), --debug) \
33		--image "$@" \
34		--force \
35		--build-image $@, \
36		"  VM-IMAGE $*")
37
38
39# Build in VM $(IMAGE)
40vm-build-%: tests/vm/%.img
41	$(call quiet-command, \
42		$(SRC_PATH)/tests/vm/$* \
43		$(if $(V)$(DEBUG), --debug) \
44		$(if $(DEBUG), --interactive) \
45		$(if $(J),--jobs $(J)) \
46		$(if $(V),--verbose) \
47		--image "$<" \
48		--build-qemu $(SRC_PATH), \
49		"  VM-BUILD $*")
50
51