# This file defines what ends up in the CD boot image and it executes the# rules building the image.#HAIKU_BOOT_FLOPPY = haiku-boot-floppy.image ;#MakeLocate $(HAIKU_BOOT_FLOPPY) : $(HAIKU_OUTPUT_DIR) ;# CD image targetHAIKU_CD_BOOT_IMAGE = haiku-boot-cd.iso ;MakeLocate $(HAIKU_CD_BOOT_IMAGE) : $(HAIKU_OUTPUT_DIR) ;# the pseudo target all archive contents is attached toNotFile $(HAIKU_CD_BOOT_IMAGE_CONTAINER_NAME) ;# common extra files to put on the boot isolocal extras = README.html ;SEARCH on $(extras) = [ FDirName $(HAIKU_TOP) data boot extras ] ;if $(TARGET_ARCH) = ppc {local elfloader = boot_loader_openfirmware ;local coffloader = haiku_loader.openfirmware ;# OpenFirmware / Mac boot support files:# CHRP scriptlocal chrpscript = ofboot.chrp ;# HFS creator and application type mapping for mkisofslocal hfsmaps = hfs.map ;SEARCH on $(chrpscript) = [ FDirName $(HAIKU_TOP) data boot openfirmware ] ;SEARCH on $(hfsmaps) = [ FDirName $(HAIKU_TOP) data boot openfirmware ] ;BuildCDBootPPCImage $(HAIKU_CD_BOOT_IMAGE) : $(hfsmaps): $(elfloader) : $(coffloader) : $(chrpscript) : $(extras) ;} else {# For other platforms, we have to check which bootloader is used. There# can be multiple ones, making this a bit confusing.for platform in [ MultiBootSubDirSetup ] {on $(platform) {if $(TARGET_BOOT_PLATFORM) = efi {local efiLoader = haiku_loader.efi ;local efiPartition = esp.image ;MakeLocateDebug $(efiPartition) : system boot ;BuildEfiSystemPartition $(efiPartition) : $(efiLoader) ;BuildCDBootImageEFI $(HAIKU_CD_BOOT_IMAGE) : $(HAIKU_BOOT_FLOPPY): $(efiPartition) : $(extras) ;}}}}NotFile haiku-boot-cd ;Depends haiku-boot-cd : $(HAIKU_CD_BOOT_IMAGE) ;