Makefile.vm revision 273823
1# 2# $FreeBSD: projects/release-vmimage/release/Makefile.vm 273823 2014-10-29 14:57:30Z gjb $ 3# 4# 5# Makefile for building virtual machine and cloud provider disk images. 6# 7 8VMTARGETS= vm-base vm-image 9VMFORMATS?= vhd vmdk qcow2 raw 10VMSIZE?= 20G 11VMBASE?= vm 12AZURECONF?= ${.CURDIR}/tools/azure.conf 13 14.if defined(WITH_VMIMAGES) && !empty(WITH_VMIMAGES) 15CLEANDIRS+= ${VMTARGETS} 16CLEANFILES+= ${VMBASE}.img 17. for FORMAT in ${VMFORMATS} 18CLEANFILES+= ${VMBASE}.${FORMAT} 19. endfor 20.endif 21 22.if exists(${.CURDIR}/${TARGET}/mk-azure.sh) 23CLEANFILES+= ${OSRELEASE}.vhd \ 24 ${OSRELEASE}.vhd.raw \ 25 azure.img 26CLEANDIRS+= vm-azure 27.endif 28 29vm-base: 30.if defined(WITH_VMIMAGES) && !empty(WITH_VMIMAGES) 31. if exists(${.CURDIR}/${TARGET}/mk-vmimage.sh) 32 env TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \ 33 ${.CURDIR}/${TARGET}/mk-vmimage.sh ${.TARGET} \ 34 ${VMBASE}.img ${WORLDDIR} ${.OBJDIR}/${.TARGET} ${VMSIZE} 35. endif 36.endif 37 touch ${.TARGET} 38 39vm-image: vm-base 40.if defined(WITH_VMIMAGES) && !empty(WITH_VMIMAGES) 41. if exists(${.CURDIR}/${TARGET}/mk-vmimage.sh) 42. for FORMAT in ${VMFORMATS} 43 env TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \ 44 ${.CURDIR}/${TARGET}/mk-vmimage.sh ${.TARGET} \ 45 ${VMBASE}.img ${FORMAT} ${VMBASE}.${FORMAT} 46. endfor 47. endif 48.endif 49 touch ${.TARGET} 50 51vm-azure: 52.if exists(${.CURDIR}/${TARGET}/mk-azure.sh) 53 env TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} AZURECONF=${AZURECONF} \ 54 ${.CURDIR}/${TARGET}/mk-azure.sh ${.TARGET} azure.img \ 55 ${WORLDDIR} ${.TARGET} ${VMSIZE} ${OSRELEASE}.vhd 56.endif 57 touch ${.TARGET} 58