2017-09-05 02:11:58 +00:00
|
|
|
# Makefile for VM tests
|
|
|
|
|
2018-07-16 02:00:08 +00:00
|
|
|
.PHONY: vm-build-all vm-clean-all
|
2017-09-05 02:11:58 +00:00
|
|
|
|
2018-07-12 01:28:29 +00:00
|
|
|
IMAGES := ubuntu.i386 freebsd netbsd openbsd centos
|
2019-01-24 11:54:48 +00:00
|
|
|
IMAGES_DIR := $(HOME)/.cache/qemu-vm/images
|
|
|
|
IMAGE_FILES := $(patsubst %, $(IMAGES_DIR)/%.img, $(IMAGES))
|
2017-09-05 02:11:58 +00:00
|
|
|
|
|
|
|
.PRECIOUS: $(IMAGE_FILES)
|
|
|
|
|
|
|
|
vm-test:
|
|
|
|
@echo "vm-test: Test QEMU in preconfigured virtual machines"
|
|
|
|
@echo
|
|
|
|
@echo " vm-build-ubuntu.i386 - Build QEMU in ubuntu i386 VM"
|
|
|
|
@echo " vm-build-freebsd - Build QEMU in FreeBSD VM"
|
|
|
|
@echo " vm-build-netbsd - Build QEMU in NetBSD VM"
|
|
|
|
@echo " vm-build-openbsd - Build QEMU in OpenBSD VM"
|
2018-07-12 01:28:29 +00:00
|
|
|
@echo " vm-build-centos - Build QEMU in CentOS VM, with Docker"
|
2018-07-27 08:34:45 +00:00
|
|
|
@echo ""
|
|
|
|
@echo " vm-build-all - Build QEMU in all VMs"
|
|
|
|
@echo " vm-clean-all - Clean up VM images"
|
2019-01-21 16:54:42 +00:00
|
|
|
@echo
|
|
|
|
@echo "Special variables:"
|
|
|
|
@echo " BUILD_TARGET=foo - override the build target"
|
|
|
|
@echo " TARGET_LIST=a,b,c - Override target list in builds."
|
|
|
|
@echo ' EXTRA_CONFIGURE_OPTS="..."'
|
2017-09-05 02:11:58 +00:00
|
|
|
|
|
|
|
vm-build-all: $(addprefix vm-build-, $(IMAGES))
|
|
|
|
|
2018-07-16 02:00:08 +00:00
|
|
|
vm-clean-all:
|
|
|
|
rm -f $(IMAGE_FILES)
|
|
|
|
|
2019-01-24 11:54:48 +00:00
|
|
|
$(IMAGES_DIR)/%.img: $(SRC_PATH)/tests/vm/% \
|
|
|
|
$(SRC_PATH)/tests/vm/basevm.py \
|
|
|
|
$(SRC_PATH)/tests/vm/Makefile.include
|
|
|
|
@mkdir -p $(IMAGES_DIR)
|
2017-09-05 02:11:58 +00:00
|
|
|
$(call quiet-command, \
|
|
|
|
$< \
|
|
|
|
$(if $(V)$(DEBUG), --debug) \
|
|
|
|
--image "$@" \
|
|
|
|
--force \
|
|
|
|
--build-image $@, \
|
|
|
|
" VM-IMAGE $*")
|
|
|
|
|
|
|
|
|
|
|
|
# Build in VM $(IMAGE)
|
2019-01-24 11:54:48 +00:00
|
|
|
vm-build-%: $(IMAGES_DIR)/%.img
|
2017-09-05 02:11:58 +00:00
|
|
|
$(call quiet-command, \
|
|
|
|
$(SRC_PATH)/tests/vm/$* \
|
|
|
|
$(if $(V)$(DEBUG), --debug) \
|
|
|
|
$(if $(DEBUG), --interactive) \
|
|
|
|
$(if $(J),--jobs $(J)) \
|
2018-08-03 08:52:28 +00:00
|
|
|
$(if $(V),--verbose) \
|
2017-09-05 02:11:58 +00:00
|
|
|
--image "$<" \
|
2019-01-21 16:54:42 +00:00
|
|
|
$(if $(BUILD_TARGET),--build-target $(BUILD_TARGET)) \
|
|
|
|
--build-qemu $(SRC_PATH) -- \
|
|
|
|
$(if $(TARGET_LIST),--target-list=$(TARGET_LIST)) \
|
|
|
|
$(if $(EXTRA_CONFIGURE_OPTS),$(EXTRA_CONFIGURE_OPTS)), \
|
2017-09-05 02:11:58 +00:00
|
|
|
" VM-BUILD $*")
|
|
|
|
|