summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJean-Baptiste Queru <jbq@google.com>2010-05-07 12:53:30 -0700
committerAndroid Code Review <code-review@android.com>2010-05-07 12:53:30 -0700
commite401583c107e6264ef8904f257f1bc3cee1967a0 (patch)
tree0b2efef9ef47b0ee20e0a765ad701addab3de3de
parent5a4f8a7feb76b62847eb6cf8e211adc661d6e051 (diff)
parentdfd2d8a63b604de55b5cd961032af72f4626aef3 (diff)
downloaddiskinstaller-e401583c107e6264ef8904f257f1bc3cee1967a0.tar.gz
Merge "Target to generate VirtualBox image"
-rw-r--r--config.mk23
-rw-r--r--installer.c5
2 files changed, 24 insertions, 4 deletions
diff --git a/config.mk b/config.mk
index 2cb034d..11f17fc 100644
--- a/config.mk
+++ b/config.mk
@@ -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;
}