diff options
-rw-r--r-- | Makefile | 1 | ||||
-rwxr-xr-x | make_boot_img | 26 |
2 files changed, 27 insertions, 0 deletions
@@ -35,6 +35,7 @@ install_only: ifeq (i386,$(ARCH)) rm -rf $(ROOTDEST)/isolinux + [ -d isolinux/xbox ] && mv -f isolinux/xbox/{linuxboot.cfg,default.xbe} $(ROOTDEST) cp -af isolinux $(ROOTDEST) endif diff --git a/make_boot_img b/make_boot_img index a1e46bbf7..470b9dd60 100755 --- a/make_boot_img +++ b/make_boot_img @@ -744,6 +744,32 @@ sub isolinux { _ "cp /usr/lib/syslinux/isolinux.bin isolinux/isolinux.bin"; output("isolinux/isolinux.cfg", syslinux_cfg_all('cdrom')); + + xbox_stage1() if arch() =~ /i.86/; +} + +sub xbox_stage1() { + my $dir = 'isolinux/xbox'; + + eval { rm_rf($dir) }; mkdir_p($dir); + + my $xbox_kernel = find { /xbox/ } all('kernel/all.kernels') or return; + + _ "cp kernel/all.kernels/$xbox_kernel/vmlinuz $dir"; + initrd($tmp_mnt_initrd, 'all', '', "images/all.rdz-$xbox_kernel"); + rename("images/all.rdz-$xbox_kernel", "$dir/initrd"); + + _ "cp /usr/share/cromwell/xromwell-installer.xbe $dir/default.xbe"; + output("$dir/linuxboot.cfg", <<EOF); +kernel $dir/vmlinuz +initrd $dir/initrd +append root=/dev/ram3 ramdisk_size=36000 automatic=method:cdrom +EOF +} + +sub xromwell { + _ "cp /usr/share/cromwell/xromwell_installer.xbe default.xbe"; + _ "cp /usr/share/cromwell/linuxboot.cfg ."; } sub boot_iso { |