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