1# This file defines what ends up in the CD boot image and it executes the 2# rules building the image. 3 4#HAIKU_BOOT_FLOPPY = haiku-boot-floppy.image ; 5#MakeLocate $(HAIKU_BOOT_FLOPPY) : $(HAIKU_OUTPUT_DIR) ; 6 7# CD image target 8HAIKU_CD_BOOT_IMAGE = haiku-boot-cd.iso ; 9MakeLocate $(HAIKU_CD_BOOT_IMAGE) : $(HAIKU_OUTPUT_DIR) ; 10 11# the pseudo target all archive contents is attached to 12NotFile $(HAIKU_CD_BOOT_IMAGE_CONTAINER_NAME) ; 13 14# common extra files to put on the boot iso 15local extras = README.html ; 16 17if $(TARGET_ARCH) = ppc { 18 local elfloader = boot_loader_openfirmware ; 19 local coffloader = boot_loader_openfirmware_coff ; 20 21 # OpenFirmware / Mac boot support files: 22 # CHRP script 23 local chrpscript = ofboot.chrp ; 24 # HFS creator and application type mapping for mkisofs 25 local hfsmaps = hfs.map ; 26 27 SEARCH on $(chrpscript) $(hfsmaps) $(extras) = [ FDirName $(HAIKU_TOP) data boot_cd ] ; 28 29 BuildCDBootPPCImage $(HAIKU_CD_BOOT_IMAGE) : $(hfsmaps) : $(elfloader) : $(coffloader) : $(chrpscript) : $(extras) ; 30} else if $(HAIKU_ANYBOOT_LEGACY) = 1 { 31 BuildCDBootImage $(HAIKU_CD_BOOT_IMAGE) : $(HAIKU_BOOT_FLOPPY) : : $(extras) ; 32 33 SEARCH on $(extras) = [ FDirName $(HAIKU_TOP) data boot_cd ] ; 34} else { 35 local efiLoader = haiku_loader.efi ; 36 local efiPartition = esp.image ; 37 MakeLocate $(efiPartition) : $(HAIKU_OUTPUT_DIR) ; 38 BuildEfiSystemPartition $(efiPartition) : $(efiLoader) ; 39 40 BuildCDBootImage $(HAIKU_CD_BOOT_IMAGE) : $(HAIKU_BOOT_FLOPPY) 41 : $(efiPartition) : $(extras) ; 42 43 SEARCH on $(extras) = [ FDirName $(HAIKU_TOP) data boot_cd ] ; 44} 45 46NotFile haiku-boot-cd ; 47Depends haiku-boot-cd : $(HAIKU_CD_BOOT_IMAGE) ; 48