diff options
author | Bruce Beare <brucex.j.beare@intel.com> | 2010-05-03 10:13:23 -0700 |
---|---|---|
committer | Bruce Beare <brucex.j.beare@intel.com> | 2010-05-07 12:08:53 -0700 |
commit | dfd2d8a63b604de55b5cd961032af72f4626aef3 (patch) | |
tree | 64c8fb6faabb1d90528c1036b843aa4511829731 | |
parent | 3131c1827e4f2485e7e9ede681adad920bf18b24 (diff) | |
download | diskinstaller-dfd2d8a63b604de55b5cd961032af72f4626aef3.tar.gz |
Target to generate VirtualBox image
The kernel command line can be different when using the disk installer.
This allows the console to go to the screen for the disk installer while
still going to the serial port for normal boots.
Remove a check for VBoxMange being installed.
Adds some somewhat more clear instructions on completion or failure.
Change-Id: Ic221d6c75b3109b2ec95a6c6a650c008f1dfef87
-rw-r--r-- | config.mk | 23 | ||||
-rw-r--r-- | installer.c | 5 |
2 files changed, 24 insertions, 4 deletions
@@ -119,9 +119,9 @@ internal_installerimage_args := \ internal_installerimage_files := \ $(filter-out --%,$(internal_installerimage_args)) -BOARD_KERNEL_CMDLINE := $(strip $(BOARD_KERNEL_CMDLINE)) -ifdef BOARD_KERNEL_CMDLINE - internal_installerimage_args += --cmdline "$(BOARD_KERNEL_CMDLINE)" +BOARD_INSTALLER_CMDLINE := $(strip $(BOARD_INSTALLER_CMDLINE)) +ifdef BOARD_INSTALLER_CMDLINE + internal_installerimage_args += --cmdline "$(BOARD_INSTALLER_CMDLINE)" endif installer_tmp_img := $(TARGET_INSTALLER_OUT)/installer_tmp.img @@ -182,10 +182,27 @@ $(INSTALLED_DISKINSTALLERIMAGE_TARGET): \ inst_data=$(installer_data_img) @echo "Done with bootable installer image -[ $@ ]-" + +###################################################################### +# now convert the installer_img (disk image) to a VirtualBox image + +INSTALLED_VBOXINSTALLERIMAGE_TARGET := $(PRODUCT_OUT)/installer.vdi +virtual_box_manager := VBoxManage +virtual_box_manager_options := convertfromraw + +$(INSTALLED_VBOXINSTALLERIMAGE_TARGET): $(INSTALLED_DISKINSTALLERIMAGE_TARGET) + @rm -f $(INSTALLED_VBOXINSTALLERIMAGE_TARGET) + @$(virtual_box_manager) $(virtual_box_manager_options) $(INSTALLED_DISKINSTALLERIMAGE_TARGET) $(INSTALLED_VBOXINSTALLERIMAGE_TARGET) + @echo "Done with VirtualBox bootable installer image -[ $@ ]-" + else # ! TARGET_USE_DISKINSTALLER INSTALLED_DISKINSTALLERIMAGE_TARGET := +INSTALLED_VBOXINSTALLERIMAGE_TARGET := endif endif # TARGET_ARCH == x86 .PHONY: installer_img installer_img: $(INSTALLED_DISKINSTALLERIMAGE_TARGET) + +.PHONY: installer_vdi +installer_vdi: $(INSTALLED_VBOXINSTALLERIMAGE_TARGET) diff --git a/installer.c b/installer.c index 0bf8f48..7c4762e 100644 --- a/installer.c +++ b/installer.c @@ -457,8 +457,10 @@ main(int argc, char *argv[]) } for (img = images->first_child; img; img = img->next) { - if (process_image_node(img, device_disk_info, test)) + if (process_image_node(img, device_disk_info, test)) { + LOGE("Unable to write data to partition. Try running 'installer' again."); return 1; + } ++cnt; } @@ -473,5 +475,6 @@ main(int argc, char *argv[]) return 1; LOGI("Done processing installer config. Configured %d images", cnt); + LOGI("Type 'reboot' or reset to run new image"); return 0; } |