From 14ff3a6a541ed4c84a960e3be5ae86421ba9282f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fran=C3=A7ois=20Revol?= Date: Sun, 9 Nov 2008 21:36:07 +0000 Subject: [PATCH] Finally found a hack to get the iso bootable in QEMU SVN (with some patching to get OpenHackware happy)... git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28583 a95241bf-73f2-0310-859d-f6bbb57e9c96 --- build/jam/CDBootPPCImage | 7 +++++-- build/jam/ImageRules | 17 ++++++++++++++--- data/boot_cd/hfs.map | 6 ++++-- 3 files changed, 23 insertions(+), 7 deletions(-) diff --git a/build/jam/CDBootPPCImage b/build/jam/CDBootPPCImage index 042bb652b9..0fabcd15ec 100644 --- a/build/jam/CDBootPPCImage +++ b/build/jam/CDBootPPCImage @@ -12,16 +12,19 @@ MakeLocate $(HAIKU_CD_BOOT_PPC_IMAGE) : $(HAIKU_OUTPUT_DIR) ; NotFile $(HAIKU_CD_BOOT_PPC_IMAGE_CONTAINER_NAME) ; # extra files to put on the boot iso -local extras = ofboot.b README.html ; +local extras = README.html ; SEARCH on $(extras) = [ FDirName $(HAIKU_TOP) data boot_cd ] ; +local chrpboot = ofboot.b ; +SEARCH on $(chrpboot) = [ FDirName $(HAIKU_TOP) data boot_cd ] ; + local hfsmaps = hfs.map ; SEARCH on $(hfsmaps) = [ FDirName $(HAIKU_TOP) data boot_cd ] ; -BuildCDBootPPCImage $(HAIKU_CD_BOOT_PPC_IMAGE) : $(hfsmaps) : boot_loader_openfirmware : $(extras) ; +BuildCDBootPPCImage $(HAIKU_CD_BOOT_PPC_IMAGE) : $(hfsmaps) : boot_loader_openfirmware : $(chrpboot) : $(extras) ; NotFile haiku-boot-cd-ppc ; diff --git a/build/jam/ImageRules b/build/jam/ImageRules index 275e9e93d6..cda219bbbd 100644 --- a/build/jam/ImageRules +++ b/build/jam/ImageRules @@ -1068,22 +1068,33 @@ actions BuildCDBootImage1 #pragma mark - CD Boot PPC Image rules -rule BuildCDBootPPCImage image : hfsmaps : bootloader : extrafiles +rule BuildCDBootPPCImage image : hfsmaps : bootloader : chrpscript : extrafiles { Depends $(image) : $(bootloader) ; + Depends $(image) : $(chrpscript) ; Depends $(image) : $(extrafiles) ; Depends $(image) : $(hfsmaps) ; MAPS on $(image) = $(hfsmaps) ; - BuildCDBootPPCImage1 $(image) : $(bootloader) $(extrafiles) ; + BuildCDBootPPCImage1 $(image) : $(bootloader) $(chrpscript) $(extrafiles) ; } actions BuildCDBootPPCImage1 bind MAPS { $(RM) $(<) + mkdir -p $(HAIKU_OUTPUT_DIR)/cd/ppc + cp $(>) $(HAIKU_OUTPUT_DIR)/cd/ppc/ + cp $(>[2]) $(HAIKU_OUTPUT_DIR)/cd/ppc/bootinfo.txt + cp $(>[1]) $(HAIKU_OUTPUT_DIR)/cd/ofwboot.elf #mkisofs -r -U -chrp-boot -V bootimg -o $(<) $(>[1]) $(>[2-]) - mkisofs -hfs -r -U -chrp-boot -part -map $(MAPS) -no-desktop -hfs-volid bootimg -V bootimg -prep-boot $(>[1]:D=) -o $(<) $(>[1]) $(>[2-]) + #mkisofs -hfs -r -U -chrp-boot -part -map $(MAPS) -no-desktop -hfs-volid bootimg -V bootimg -prep-boot $(>[1]:D=) -o $(<) $(>[1]) $(>[2-]) + #mkisofs -v -hfs -part -map $(MAPS) -no-desktop -hfs-volid bootimg -V bootimg -hfs-bless $(HAIKU_OUTPUT_DIR)/cd/ppc -r -o $(<) $(>[1]) $(>[2-]) $(HAIKU_OUTPUT_DIR)/cd + #mkisofs -r -U -chrp-boot -V bootimg -prep-boot $(>[1]:D=) -o $(<) $(>[1]) $(>[2-]) + #mkisofs -r -U -V bootimg -prep-boot $(>[1]:D=) -o $(<) $(>[1]) $(>[2-]) + # $(HAIKU_OUTPUT_DIR)/cd # -hfs -hfs-bless . + mkisofs -v -hfs -part -map $(MAPS) -no-desktop -hfs-volid bootimg -V bootimg -hfs-bless $(HAIKU_OUTPUT_DIR)/cd/ppc -prep-boot ppc/$(>[1]:D=) -r -o $(<) $(HAIKU_OUTPUT_DIR)/cd + #$(RM) -R $(HAIKU_OUTPUT_DIR)/cd } diff --git a/data/boot_cd/hfs.map b/data/boot_cd/hfs.map index c5f3ea3659..5f0b2e6b20 100644 --- a/data/boot_cd/hfs.map +++ b/data/boot_cd/hfs.map @@ -2,5 +2,7 @@ # from treating everything like a text file (ugly!) # # EXTN XLate CREATOR TYPE Comment -.b Raw 'UNIX' 'tbxi' "bootstrap" -boot_loader_openfirmware Raw 'UNIX' 'boot' "bootstrap" +#.b Raw 'UNIX' 'tbxi' "bootstrap" +#boot_loader_openfirmware Raw 'UNIX' 'boot' "bootstrap" +boot_loader_openfirmware Raw 'UNIX' 'tbxi' "bootstrap" +* Raw 'UNIX' 'UNIX' "unix"