Deleted Added
full compact
Makefile (274102) Makefile (278985)
1# $FreeBSD: stable/10/release/Makefile 274102 2014-11-04 23:02:16Z gjb $
1# $FreeBSD: stable/10/release/Makefile 278985 2015-02-19 03:57:47Z gjb $
2#
3# Makefile for building releases and release media.
4#
5# User-driven targets:
6# cdrom: Builds release CD-ROM media (disc1.iso)
7# dvdrom: Builds release DVD-ROM media (dvd1.iso)
8# memstick: Builds memory stick image (memstick.img)
9# mini-memstick: Builds minimal memory stick image (mini-memstick.img)
10# ftp: Sets up FTP distribution area (ftp)
2#
3# Makefile for building releases and release media.
4#
5# User-driven targets:
6# cdrom: Builds release CD-ROM media (disc1.iso)
7# dvdrom: Builds release DVD-ROM media (dvd1.iso)
8# memstick: Builds memory stick image (memstick.img)
9# mini-memstick: Builds minimal memory stick image (mini-memstick.img)
10# ftp: Sets up FTP distribution area (ftp)
11# release: Build all media and FTP distribution area
12# install: Copies all release media into ${DESTDIR}
11# release: Invokes real-release, vm-release, and cloudware-release targets
12# real-release: Build all media and FTP distribution area
13# vm-release: Build all virtual machine image targets
14# cloudware-release: Build all cloud hosting provider targets
15# install: Invokes the release-install and vm-install targets
16# release-install: Copies all release installation media into ${DESTDIR}
17# vm-install: Copies all virtual machine images into ${DESTDIR}
13#
14# Variables affecting the build process:
15# WORLDDIR: location of src tree -- must have built world and default kernel
16# (by default, the directory above this one)
17# PORTSDIR: location of ports tree to distribute (default: /usr/ports)
18# DOCDIR: location of doc tree (default: /usr/doc)
19# NOPKG: if set, do not distribute third-party packages
20# NOPORTS: if set, do not distribute ports tree
21# NOSRC: if set, do not distribute source tree
22# NODOC: if set, do not generate release documentation
23# WITH_DVD: if set, generate dvd1.iso
24# WITH_COMPRESSED_IMAGES: if set, compress installation images with xz(1)
25# (uncompressed images are not removed)
26# WITH_VMIMAGES: if set, build virtual machine images with the release
27# WITH_COMPRESSED_VMIMAGES: if set, compress virtual machine disk images
28# with xz(1) (extremely time consuming)
18#
19# Variables affecting the build process:
20# WORLDDIR: location of src tree -- must have built world and default kernel
21# (by default, the directory above this one)
22# PORTSDIR: location of ports tree to distribute (default: /usr/ports)
23# DOCDIR: location of doc tree (default: /usr/doc)
24# NOPKG: if set, do not distribute third-party packages
25# NOPORTS: if set, do not distribute ports tree
26# NOSRC: if set, do not distribute source tree
27# NODOC: if set, do not generate release documentation
28# WITH_DVD: if set, generate dvd1.iso
29# WITH_COMPRESSED_IMAGES: if set, compress installation images with xz(1)
30# (uncompressed images are not removed)
31# WITH_VMIMAGES: if set, build virtual machine images with the release
32# WITH_COMPRESSED_VMIMAGES: if set, compress virtual machine disk images
33# with xz(1) (extremely time consuming)
34# WITH_CLOUDWARE: if set, build cloud hosting disk images with the release
29# TARGET/TARGET_ARCH: architecture of built release
30#
31
32WORLDDIR?= ${.CURDIR}/..
33PORTSDIR?= /usr/ports
34DOCDIR?= /usr/doc
35RELNOTES_LANG?= en_US.ISO8859-1
36XZCMD?= /usr/bin/xz

--- 77 unchanged lines hidden (view full) ---

114IMAGES+= uefi-disc1.iso
115IMAGES+= uefi-bootonly.iso
116. if defined(WITH_DVD) && !empty(WITH_DVD)
117RELEASE_TARGETS+=uefi-dvd1.iso
118IMAGES+= uefi-dvd1.iso
119. endif
120.endif
121
35# TARGET/TARGET_ARCH: architecture of built release
36#
37
38WORLDDIR?= ${.CURDIR}/..
39PORTSDIR?= /usr/ports
40DOCDIR?= /usr/doc
41RELNOTES_LANG?= en_US.ISO8859-1
42XZCMD?= /usr/bin/xz

--- 77 unchanged lines hidden (view full) ---

120IMAGES+= uefi-disc1.iso
121IMAGES+= uefi-bootonly.iso
122. if defined(WITH_DVD) && !empty(WITH_DVD)
123RELEASE_TARGETS+=uefi-dvd1.iso
124IMAGES+= uefi-dvd1.iso
125. endif
126.endif
127
122VMTARGETS= vm-base vm-image
123VMFORMATS?= vhd vmdk qcow2 raw
124VMSIZE?= 20G
125VMBASE?= vm
126AZURECONF?= ${.CURDIR}/tools/azure.conf
127
128CLEANFILES= packagesystem *.txz MANIFEST system ${IMAGES}
128CLEANFILES= packagesystem *.txz MANIFEST release ${IMAGES}
129.if defined(WITH_COMPRESSED_IMAGES) && !empty(WITH_COMPRESSED_IMAGES)
130. for I in ${IMAGES}
131CLEANFILES+= ${I}.xz
132. endfor
133.endif
134.if defined(WITH_DVD) && !empty(WITH_DVD)
135CLEANFILES+= pkg-stage
136.endif
129.if defined(WITH_COMPRESSED_IMAGES) && !empty(WITH_COMPRESSED_IMAGES)
130. for I in ${IMAGES}
131CLEANFILES+= ${I}.xz
132. endfor
133.endif
134.if defined(WITH_DVD) && !empty(WITH_DVD)
135CLEANFILES+= pkg-stage
136.endif
137.if defined(WITH_VMIMAGES) && !empty(WITH_VMIMAGES)
138CLEANFILES+= ${VMBASE}.img
139. for FORMAT in ${VMFORMATS}
140CLEANFILES+= ${VMBASE}.${FORMAT}
141. endfor
142.endif
143CLEANDIRS= dist ftp release bootonly dvd
144.if defined(WITH_VMIMAGES) && !empty(WITH_VMIMAGES)
145CLEANDIRS+= ${VMTARGETS}
146.endif
147.if exists(${.CURDIR}/${TARGET}/mk-azure.sh)
148CLEANFILES+= ${OSRELEASE}.vhd \
149 ${OSRELEASE}.vhd.raw \
150 azure.img
151CLEANDIRS+= vm-azure
152.endif
137CLEANDIRS= dist ftp disc1 bootonly dvd
153beforeclean:
154 chflags -R noschg .
155.include <bsd.obj.mk>
156clean: beforeclean
157
158base.txz:
159 mkdir -p ${DISTDIR}
160 cd ${WORLDDIR} && ${IMAKE} distributeworld DISTDIR=${.OBJDIR}/${DISTDIR}

--- 30 unchanged lines hidden (view full) ---

191 INSTALL_COMPRESSED='' URLS_ABSOLUTE=YES DOCDIR=${.OBJDIR}/rdoc
192 mkdir -p reldoc
193.for i in hardware readme relnotes errata
194 ln -f rdoc/${RELNOTES_LANG}/${i}/article.txt reldoc/${i:tu}.TXT
195 ln -f rdoc/${RELNOTES_LANG}/${i}/article.html reldoc/${i:tu}.HTM
196.endfor
197 cp rdoc/${RELNOTES_LANG}/readme/docbook.css reldoc
198
138beforeclean:
139 chflags -R noschg .
140.include <bsd.obj.mk>
141clean: beforeclean
142
143base.txz:
144 mkdir -p ${DISTDIR}
145 cd ${WORLDDIR} && ${IMAKE} distributeworld DISTDIR=${.OBJDIR}/${DISTDIR}

--- 30 unchanged lines hidden (view full) ---

176 INSTALL_COMPRESSED='' URLS_ABSOLUTE=YES DOCDIR=${.OBJDIR}/rdoc
177 mkdir -p reldoc
178.for i in hardware readme relnotes errata
179 ln -f rdoc/${RELNOTES_LANG}/${i}/article.txt reldoc/${i:tu}.TXT
180 ln -f rdoc/${RELNOTES_LANG}/${i}/article.html reldoc/${i:tu}.HTM
181.endfor
182 cp rdoc/${RELNOTES_LANG}/readme/docbook.css reldoc
183
199system: packagesystem
184disc1: packagesystem
200# Install system
185# Install system
201 mkdir -p release
186 mkdir -p ${.TARGET}
202 cd ${WORLDDIR} && ${IMAKE} installkernel installworld distribution \
187 cd ${WORLDDIR} && ${IMAKE} installkernel installworld distribution \
203 DESTDIR=${.OBJDIR}/release WITHOUT_RESCUE=1 WITHOUT_KERNEL_SYMBOLS=1 \
188 DESTDIR=${.OBJDIR}/${.TARGET} WITHOUT_RESCUE=1 WITHOUT_KERNEL_SYMBOLS=1 \
204 WITHOUT_PROFILE=1 WITHOUT_SENDMAIL=1 WITHOUT_ATF=1 WITHOUT_LIB32=1
205# Copy distfiles
189 WITHOUT_PROFILE=1 WITHOUT_SENDMAIL=1 WITHOUT_ATF=1 WITHOUT_LIB32=1
190# Copy distfiles
206 mkdir -p release/usr/freebsd-dist
207 cp *.txz MANIFEST release/usr/freebsd-dist
191 mkdir -p ${.TARGET}/usr/freebsd-dist
192 cp *.txz MANIFEST ${.TARGET}/usr/freebsd-dist
208# Copy documentation, if generated
209.if !defined(NODOC)
193# Copy documentation, if generated
194.if !defined(NODOC)
210 cp reldoc/* release
195 cp reldoc/* ${.TARGET}
211.endif
212# Set up installation environment
196.endif
197# Set up installation environment
213 ln -fs /tmp/bsdinstall_etc/resolv.conf release/etc/resolv.conf
214 echo sendmail_enable=\"NONE\" > release/etc/rc.conf
215 echo hostid_enable=\"NO\" >> release/etc/rc.conf
216 cp ${.CURDIR}/rc.local release/etc
198 ln -fs /tmp/bsdinstall_etc/resolv.conf ${.TARGET}/etc/resolv.conf
199 echo sendmail_enable=\"NONE\" > ${.TARGET}/etc/rc.conf
200 echo hostid_enable=\"NO\" >> ${.TARGET}/etc/rc.conf
201 cp ${.CURDIR}/rc.local ${.TARGET}/etc
217 touch ${.TARGET}
218
219bootonly: packagesystem
220# Install system
202 touch ${.TARGET}
203
204bootonly: packagesystem
205# Install system
221 mkdir -p bootonly
206 mkdir -p ${.TARGET}
222 cd ${WORLDDIR} && ${IMAKE} installkernel installworld distribution \
207 cd ${WORLDDIR} && ${IMAKE} installkernel installworld distribution \
223 DESTDIR=${.OBJDIR}/bootonly WITHOUT_AMD=1 WITHOUT_AT=1 \
208 DESTDIR=${.OBJDIR}/${.TARGET} WITHOUT_AMD=1 WITHOUT_AT=1 \
224 WITHOUT_GAMES=1 WITHOUT_GROFF=1 \
225 WITHOUT_INSTALLLIB=1 WITHOUT_LIB32=1 WITHOUT_MAIL=1 \
226 WITHOUT_NCP=1 WITHOUT_TOOLCHAIN=1 WITHOUT_PROFILE=1 \
227 WITHOUT_INSTALLIB=1 WITHOUT_RESCUE=1 WITHOUT_DICT=1 \
228 WITHOUT_KERNEL_SYMBOLS=1
229# Copy manifest only (no distfiles) to get checksums
209 WITHOUT_GAMES=1 WITHOUT_GROFF=1 \
210 WITHOUT_INSTALLLIB=1 WITHOUT_LIB32=1 WITHOUT_MAIL=1 \
211 WITHOUT_NCP=1 WITHOUT_TOOLCHAIN=1 WITHOUT_PROFILE=1 \
212 WITHOUT_INSTALLIB=1 WITHOUT_RESCUE=1 WITHOUT_DICT=1 \
213 WITHOUT_KERNEL_SYMBOLS=1
214# Copy manifest only (no distfiles) to get checksums
230 mkdir -p bootonly/usr/freebsd-dist
231 cp MANIFEST bootonly/usr/freebsd-dist
215 mkdir -p ${.TARGET}/usr/freebsd-dist
216 cp MANIFEST ${.TARGET}/usr/freebsd-dist
232# Copy documentation, if generated
233.if !defined(NODOC)
217# Copy documentation, if generated
218.if !defined(NODOC)
234 cp reldoc/* bootonly
219 cp reldoc/* ${.TARGET}
235.endif
236# Set up installation environment
220.endif
221# Set up installation environment
237 ln -fs /tmp/bsdinstall_etc/resolv.conf bootonly/etc/resolv.conf
238 echo sendmail_enable=\"NONE\" > bootonly/etc/rc.conf
239 echo hostid_enable=\"NO\" >> bootonly/etc/rc.conf
240 cp ${.CURDIR}/rc.local bootonly/etc
222 ln -fs /tmp/bsdinstall_etc/resolv.conf ${.TARGET}/etc/resolv.conf
223 echo sendmail_enable=\"NONE\" > ${.TARGET}/etc/rc.conf
224 echo hostid_enable=\"NO\" >> ${.TARGET}/etc/rc.conf
225 cp ${.CURDIR}/rc.local ${.TARGET}/etc
241
226
242dvd:
227dvd: packagesystem
243# Install system
244 mkdir -p ${.TARGET}
245 cd ${WORLDDIR} && ${IMAKE} installkernel installworld distribution \
246 DESTDIR=${.OBJDIR}/${.TARGET} WITHOUT_RESCUE=1 WITHOUT_KERNEL_SYMBOLS=1
247# Copy distfiles
248 mkdir -p ${.TARGET}/usr/freebsd-dist
249 cp *.txz MANIFEST ${.TARGET}/usr/freebsd-dist
250# Copy documentation, if generated
251.if !defined(NODOC)
252 cp reldoc/* ${.TARGET}
253.endif
254# Set up installation environment
255 ln -fs /tmp/bsdinstall_etc/resolv.conf ${.TARGET}/etc/resolv.conf
256 echo sendmail_enable=\"NONE\" > ${.TARGET}/etc/rc.conf
257 echo hostid_enable=\"NO\" >> ${.TARGET}/etc/rc.conf
258 cp ${.CURDIR}/rc.local ${.TARGET}/etc
259 touch ${.TARGET}
260
261release.iso: disc1.iso
228# Install system
229 mkdir -p ${.TARGET}
230 cd ${WORLDDIR} && ${IMAKE} installkernel installworld distribution \
231 DESTDIR=${.OBJDIR}/${.TARGET} WITHOUT_RESCUE=1 WITHOUT_KERNEL_SYMBOLS=1
232# Copy distfiles
233 mkdir -p ${.TARGET}/usr/freebsd-dist
234 cp *.txz MANIFEST ${.TARGET}/usr/freebsd-dist
235# Copy documentation, if generated
236.if !defined(NODOC)
237 cp reldoc/* ${.TARGET}
238.endif
239# Set up installation environment
240 ln -fs /tmp/bsdinstall_etc/resolv.conf ${.TARGET}/etc/resolv.conf
241 echo sendmail_enable=\"NONE\" > ${.TARGET}/etc/rc.conf
242 echo hostid_enable=\"NO\" >> ${.TARGET}/etc/rc.conf
243 cp ${.CURDIR}/rc.local ${.TARGET}/etc
244 touch ${.TARGET}
245
246release.iso: disc1.iso
262disc1.iso: system
263 sh ${.CURDIR}/${TARGET}/mkisoimages.sh -b ${VOLUME_LABEL}_CD ${.TARGET} release
247disc1.iso: disc1
248 sh ${.CURDIR}/${TARGET}/mkisoimages.sh -b ${VOLUME_LABEL}_CD ${.TARGET} disc1
264
249
265uefi-disc1.iso: system
250uefi-disc1.iso: disc1
266.if exists(${.CURDIR}/${TARGET}/mkisoimages-uefi.sh)
267 sh ${.CURDIR}/${TARGET}/mkisoimages-uefi.sh -b ${VOLUME_LABEL}_UEFICD \
251.if exists(${.CURDIR}/${TARGET}/mkisoimages-uefi.sh)
252 sh ${.CURDIR}/${TARGET}/mkisoimages-uefi.sh -b ${VOLUME_LABEL}_UEFICD \
268 ${.TARGET} release
253 ${.TARGET} disc1
269.endif
270
271uefi-bootonly.iso: bootonly
272.if exists(${.CURDIR}/${TARGET}/mkisoimages-uefi.sh)
273 sh ${.CURDIR}/${TARGET}/mkisoimages-uefi.sh -b ${VOLUME_LABEL}_UEFIBO \
274 ${.TARGET} bootonly
275.endif
276

--- 5 unchanged lines hidden (view full) ---

282 sh ${.CURDIR}/${TARGET}/mkisoimages-uefi.sh -b ${VOLUME_LABEL}_UEFIDVD \
283 ${.TARGET} dvd
284.endif
285
286bootonly.iso: bootonly
287 sh ${.CURDIR}/${TARGET}/mkisoimages.sh -b ${VOLUME_LABEL}_BO ${.TARGET} bootonly
288
289memstick: memstick.img
254.endif
255
256uefi-bootonly.iso: bootonly
257.if exists(${.CURDIR}/${TARGET}/mkisoimages-uefi.sh)
258 sh ${.CURDIR}/${TARGET}/mkisoimages-uefi.sh -b ${VOLUME_LABEL}_UEFIBO \
259 ${.TARGET} bootonly
260.endif
261

--- 5 unchanged lines hidden (view full) ---

267 sh ${.CURDIR}/${TARGET}/mkisoimages-uefi.sh -b ${VOLUME_LABEL}_UEFIDVD \
268 ${.TARGET} dvd
269.endif
270
271bootonly.iso: bootonly
272 sh ${.CURDIR}/${TARGET}/mkisoimages.sh -b ${VOLUME_LABEL}_BO ${.TARGET} bootonly
273
274memstick: memstick.img
290memstick.img: system
291 sh ${.CURDIR}/${TARGET}/make-memstick.sh release ${.TARGET}
275memstick.img: disc1
276 sh ${.CURDIR}/${TARGET}/make-memstick.sh disc1 ${.TARGET}
292
293mini-memstick: mini-memstick.img
277
278mini-memstick: mini-memstick.img
294mini-memstick.img: system
279mini-memstick.img: bootonly
295 sh ${.CURDIR}/${TARGET}/make-memstick.sh bootonly ${.TARGET}
296
297uefi-memstick: uefi-memstick.img
280 sh ${.CURDIR}/${TARGET}/make-memstick.sh bootonly ${.TARGET}
281
282uefi-memstick: uefi-memstick.img
298uefi-memstick.img: system
283uefi-memstick.img: disc1
299.if exists(${.CURDIR}/${TARGET}/make-uefi-memstick.sh)
284.if exists(${.CURDIR}/${TARGET}/make-uefi-memstick.sh)
300 sh ${.CURDIR}/${TARGET}/make-uefi-memstick.sh release ${.TARGET}
285 sh ${.CURDIR}/${TARGET}/make-uefi-memstick.sh disc1 ${.TARGET}
301.endif
302
303uefi-mini-memstick: uefi-mini-memstick.img
286.endif
287
288uefi-mini-memstick: uefi-mini-memstick.img
304uefi-mini-memstick.img: system
289uefi-mini-memstick.img: bootonly
305.if exists(${.CURDIR}/${TARGET}/make-uefi-memstick.sh)
306 sh ${.CURDIR}/${TARGET}/make-uefi-memstick.sh bootonly ${.TARGET}
307.endif
308
309packagesystem: base.txz kernel.txz ${EXTRA_PACKAGES}
310 sh ${.CURDIR}/scripts/make-manifest.sh *.txz > MANIFEST
311 touch ${.TARGET}
312

--- 9 unchanged lines hidden (view full) ---

322
323cdrom: disc1.iso bootonly.iso
324dvdrom: dvd1.iso
325ftp: packagesystem
326 rm -rf ftp
327 mkdir -p ftp
328 cp *.txz MANIFEST ftp
329
290.if exists(${.CURDIR}/${TARGET}/make-uefi-memstick.sh)
291 sh ${.CURDIR}/${TARGET}/make-uefi-memstick.sh bootonly ${.TARGET}
292.endif
293
294packagesystem: base.txz kernel.txz ${EXTRA_PACKAGES}
295 sh ${.CURDIR}/scripts/make-manifest.sh *.txz > MANIFEST
296 touch ${.TARGET}
297

--- 9 unchanged lines hidden (view full) ---

307
308cdrom: disc1.iso bootonly.iso
309dvdrom: dvd1.iso
310ftp: packagesystem
311 rm -rf ftp
312 mkdir -p ftp
313 cp *.txz MANIFEST ftp
314
330release:
315release: real-release vm-release cloudware-release
316 touch ${.TARGET}
317
318real-release:
331 ${MAKE} -C ${.CURDIR} ${.MAKEFLAGS} obj
332 ${MAKE} -C ${.CURDIR} ${.MAKEFLAGS} ${RELEASE_TARGETS}
319 ${MAKE} -C ${.CURDIR} ${.MAKEFLAGS} obj
320 ${MAKE} -C ${.CURDIR} ${.MAKEFLAGS} ${RELEASE_TARGETS}
333.if defined(WITH_VMIMAGES) && !empty(WITH_VMIMAGES)
334 ${MAKE} -C ${.CURDIR} ${.MAKEFLAGS} ${VMTARGETS}
335.endif
336
321
337install:
322install: release-install vm-install
323
324release-install:
338.if defined(DESTDIR) && !empty(DESTDIR)
339 mkdir -p ${DESTDIR}
340.endif
341 cp -a ftp ${DESTDIR}/
342.for I in ${IMAGES}
343 cp -p ${I} ${DESTDIR}/${OSRELEASE}-${I}
344. if defined(WITH_COMPRESSED_IMAGES) && !empty(WITH_COMPRESSED_IMAGES)
345 ${XZCMD} -k ${DESTDIR}/${OSRELEASE}-${I}
346. endif
347.endfor
348 cd ${DESTDIR} && sha256 ${OSRELEASE}* > ${DESTDIR}/CHECKSUM.SHA256
349 cd ${DESTDIR} && md5 ${OSRELEASE}* > ${DESTDIR}/CHECKSUM.MD5
325.if defined(DESTDIR) && !empty(DESTDIR)
326 mkdir -p ${DESTDIR}
327.endif
328 cp -a ftp ${DESTDIR}/
329.for I in ${IMAGES}
330 cp -p ${I} ${DESTDIR}/${OSRELEASE}-${I}
331. if defined(WITH_COMPRESSED_IMAGES) && !empty(WITH_COMPRESSED_IMAGES)
332 ${XZCMD} -k ${DESTDIR}/${OSRELEASE}-${I}
333. endif
334.endfor
335 cd ${DESTDIR} && sha256 ${OSRELEASE}* > ${DESTDIR}/CHECKSUM.SHA256
336 cd ${DESTDIR} && md5 ${OSRELEASE}* > ${DESTDIR}/CHECKSUM.MD5
350.if defined(WITH_VMIMAGES) && !empty(WITH_VMIMAGES)
351 mkdir -p ${DESTDIR}/vmimages
352. for FORMAT in ${VMFORMATS}
353 cp -p ${VMBASE}.${FORMAT} \
354 ${DESTDIR}/vmimages/${OSRELEASE}.${FORMAT}
355. endfor
356. if defined(WITH_COMPRESSED_VMIMAGES) && !empty(WITH_COMPRESSED_VMIMAGES)
357# This is very time consuming, so defer it after the images are moved to
358# the DESTDIR.
359. for FORMAT in ${VMFORMATS}
360 # Don't keep the originals. There is a copy in ${.OBJDIR} if needed.
361 ${XZCMD} ${DESTDIR}/vmimages/${OSRELEASE}.${FORMAT}
362. endfor
363. endif
364 cd ${DESTDIR}/vmimages && sha256 ${OSRELEASE}* > \
365 ${DESTDIR}/vmimages/CHECKSUM.SHA256
366 cd ${DESTDIR}/vmimages && md5 ${OSRELEASE}* > \
367 ${DESTDIR}/vmimages/CHECKSUM.MD5
368.endif
369
337
370vm-base:
371.if defined(WITH_VMIMAGES) && !empty(WITH_VMIMAGES)
372. if exists(${.CURDIR}/${TARGET}/mk-vmimage.sh)
373 env TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \
374 ${.CURDIR}/${TARGET}/mk-vmimage.sh ${.TARGET} \
375 ${VMBASE}.img ${WORLDDIR} ${.OBJDIR}/${.TARGET} ${VMSIZE}
376. endif
377.endif
378 touch ${.TARGET}
379
380vm-image: vm-base
381.if defined(WITH_VMIMAGES) && !empty(WITH_VMIMAGES)
382. if exists(${.CURDIR}/${TARGET}/mk-vmimage.sh)
383. for FORMAT in ${VMFORMATS}
384 env TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \
385 ${.CURDIR}/${TARGET}/mk-vmimage.sh ${.TARGET} \
386 ${VMBASE}.img ${FORMAT} ${VMBASE}.${FORMAT}
387. endfor
388. endif
389.endif
390 touch ${.TARGET}
391
392vm-azure:
393.if exists(${.CURDIR}/${TARGET}/mk-azure.sh)
394 env TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} AZURECONF=${AZURECONF} \
395 ${.CURDIR}/${TARGET}/mk-azure.sh ${.TARGET} azure.img \
396 ${WORLDDIR} ${.TARGET} ${VMSIZE} ${OSRELEASE}.vhd
397.endif
398 touch ${.TARGET}
338.include "${.CURDIR}/Makefile.vm"