New rule to create a VMWare image from the plain Haiku image using Marcus'

vmdkheader tool. New pseudo target haiku-vmware-image to build it.
Image default name is "haiku.vmdk", adjustable via the
HAIKU_VMWARE_IMAGE_NAME variable.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19982 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
Ingo Weinhold 2007-01-27 12:54:10 +00:00
parent 3ff2441acf
commit a7bbb81537
3 changed files with 33 additions and 1 deletions

View File

@ -296,7 +296,7 @@ AddDirectoryToHaikuImage beos etc synth ;
AddFilesToHaikuImage optional beos system add-ons input_server methods : canna ;
#pragma mark -
#pragma mark - Build The Image
# Set image name and directory defaults and locate the image.
HAIKU_IMAGE_NAME ?= haiku.image ;
@ -381,3 +381,15 @@ Depends haiku-image : $(HAIKU_IMAGE) ;
# install Haiku into a directory
NotFile install-haiku ;
_BuildHaikuImage install-haiku : 0 ;
#pragma mark - Build The VMWare Image
HAIKU_VMWARE_IMAGE_NAME ?= haiku.vmdk ;
HAIKU_VMWARE_IMAGE ?= $(HAIKU_VMWARE_IMAGE_NAME) ;
MakeLocate $(HAIKU_VMWARE_IMAGE) : $(HAIKU_IMAGE_DIR) ;
BuildVMWareImage $(HAIKU_VMWARE_IMAGE) : $(HAIKU_IMAGE)
: $(HAIKU_IMAGE_SIZE) ;
NotFile haiku-vmware-image ;
Depends haiku-vmware-image : $(HAIKU_VMWARE_IMAGE) ;

View File

@ -371,3 +371,20 @@ actions BuildHaikuImage1
export isImage="$(IS_IMAGE)"
$(2[1]) $(2[2-])
}
rule BuildVMWareImage vmwareImage : plainImage : imageSize
{
# BuildVMWareImage <vmware image> : <plain image> : <image size in MB>
IMAGE_SIZE on $(vmwareImage) = $(imageSize) ;
Depends $(vmwareImage) : <build>vmdkheader $(plainImage) ;
BuildVMWareImage1 $(vmwareImage) : <build>vmdkheader $(plainImage) ;
}
actions BuildVMWareImage1
{
rm -f $(1)
$(2[1]) -h 64k -i$(IMAGE_SIZE)M $(1) &&
cat $(2[2]) >> $(1)
}

View File

@ -29,6 +29,9 @@ HAIKU_IMAGE_NAME = walter.image ;
HAIKU_IMAGE_DIR = /tmp ;
HAIKU_IMAGE_SIZE = 100 ;
# Name the VMWare image walter.vmdk (in directory $(HAIKU_IMAGE_DIR)).
HAIKU_VMWARE_IMAGE_NAME = walter.vmdk ;
# Install Haiku in directory /Haiku.
HAIKU_INSTALL_DIR = /Haiku ;