1338b8dc3SIngo WeinholdSubDir HAIKU_TOP src system boot loader ; 25af32e75SAxel Dörfler 3338b8dc3SIngo WeinholdSubDirHdrs $(HAIKU_TOP) src add-ons kernel partitioning_systems amiga ; 4338b8dc3SIngo WeinholdSubDirHdrs $(HAIKU_TOP) src add-ons kernel partitioning_systems apple ; 561ba1259SAxel DörflerSubDirHdrs $(HAIKU_TOP) src add-ons kernel partitioning_systems gpt ; 6338b8dc3SIngo WeinholdSubDirHdrs $(HAIKU_TOP) src add-ons kernel partitioning_systems intel ; 76b202f4eSIngo WeinholdUsePrivateKernelHeaders ; 85af32e75SAxel DörflerUsePrivateHeaders [ FDirName kernel disk_device_manager ] ; 96b202f4eSIngo WeinholdUsePrivateHeaders [ FDirName kernel util ] ; 106b202f4eSIngo WeinholdUsePrivateHeaders shared storage ; 115af32e75SAxel Dörfler 12*1f96a3cbSJessica Hamiltonlocal defines = $(DEFINES) ; 13*1f96a3cbSJessica Hamilton 14*1f96a3cbSJessica Hamiltonlocal platform ; 15*1f96a3cbSJessica Hamiltonfor platform in [ MultiBootSubDirSetup ] { 16*1f96a3cbSJessica Hamilton on $(platform) { 175af32e75SAxel Dörfler { 18*1f96a3cbSJessica Hamilton DEFINES = $(defines) ; 19*1f96a3cbSJessica Hamilton 2030572237SIngo Weinhold DEFINES += 215af32e75SAxel Dörfler _BOOT_MODE 22da80a050SAlex Smith BOOT_ARCH=\\\"$(TARGET_KERNEL_ARCH)\\\" 23c06e68d0SAxel Dörfler KMESSAGE_CONTAINER_ONLY 245af32e75SAxel Dörfler 255af32e75SAxel Dörfler BOOT_SUPPORT_PARTITION_INTEL 265af32e75SAxel Dörfler 275af32e75SAxel Dörfler BOOT_SUPPORT_FILE_SYSTEM_BFS 2885a53ea2SAxel Dörfler BOOT_SUPPORT_FILE_SYSTEM_TARFS 29f335531bSFrançois Revol #BOOT_SUPPORT_FILE_MAP_DISK 30085cf27bSIngo Weinhold BOOT_SUPPORT_FILE_SYSTEM_FAT 315af32e75SAxel Dörfler ; 325af32e75SAxel Dörfler 33c06e68d0SAxel Dörfler # Add architecture specific partition/file system modules 34c06e68d0SAxel Dörfler 35da80a050SAlex Smith switch $(TARGET_KERNEL_ARCH) { 36c06e68d0SAxel Dörfler case "ppc" : 37c06e68d0SAxel Dörfler { 3830572237SIngo Weinhold DEFINES += 39c06e68d0SAxel Dörfler BOOT_SUPPORT_PARTITION_AMIGA 40c06e68d0SAxel Dörfler BOOT_SUPPORT_PARTITION_APPLE 41c06e68d0SAxel Dörfler 42c06e68d0SAxel Dörfler BOOT_SUPPORT_FILE_SYSTEM_AMIGA_FFS 43c06e68d0SAxel Dörfler ; 44c06e68d0SAxel Dörfler } 45c06e68d0SAxel Dörfler case "x86" : 46c06e68d0SAxel Dörfler { 4730572237SIngo Weinhold DEFINES += 487417d5edSAlex Smith ALTERNATE_BOOT_ARCH=\\\"x86_64\\\" 49f6a34444SAlex Smith BOOT_SUPPORT_ELF64 507417d5edSAlex Smith 51c06e68d0SAxel Dörfler BOOT_SUPPORT_PARTITION_EFI 52c06e68d0SAxel Dörfler 539e90c30eSAxel Dörfler #BOOT_SUPPORT_FILE_SYSTEM_FAT 54c06e68d0SAxel Dörfler ; 55*1f96a3cbSJessica Hamilton if $(TARGET_BOOT_PLATFORM) = efi { 56b3215a62SHenry Harrington DEFINES += 57b3215a62SHenry Harrington _BOOT_PLATFORM_EFI 58b3215a62SHenry Harrington ; 59211483cbSFredrik Holmqvist } 60c06e68d0SAxel Dörfler } 61c06e68d0SAxel Dörfler } 62c06e68d0SAxel Dörfler 63*1f96a3cbSJessica Hamilton if $(TARGET_BOOT_PLATFORM) != efi { 6425fa3b1bSJessica Hamilton DEFINES += BOOT_SUPPORT_ELF32 ; 6525fa3b1bSJessica Hamilton } 6625fa3b1bSJessica Hamilton 6730572237SIngo Weinhold local kernelC++Header = [ FDirName $(HAIKU_TOP) headers private kernel util 6830572237SIngo Weinhold kernel_cpp.h ] ; 6930572237SIngo Weinhold 7030572237SIngo Weinhold SubDirC++Flags -fno-rtti -include $(kernelC++Header) ; 715af32e75SAxel Dörfler } 725af32e75SAxel Dörfler 7330572237SIngo Weinhold 74*1f96a3cbSJessica Hamilton BootStaticLibrary [ MultiBootGristFiles boot_loader ] : 75c04f3a62SIngo Weinhold PathBlacklist.cpp 765af32e75SAxel Dörfler elf.cpp 7728a2172cSIngo Weinhold heap.cpp 785af32e75SAxel Dörfler kernel_args.cpp 795af32e75SAxel Dörfler load_driver_settings.cpp 8028a2172cSIngo Weinhold loader.cpp 8128a2172cSIngo Weinhold main.cpp 8228a2172cSIngo Weinhold menu.cpp 835c0f8450SIngo Weinhold package_support.cpp 8428a2172cSIngo Weinhold pager.cpp 8528a2172cSIngo Weinhold partitions.cpp 8628a2172cSIngo Weinhold RootFileSystem.cpp 8728a2172cSIngo Weinhold stdio.cpp 8828a2172cSIngo Weinhold vfs.cpp 8928a2172cSIngo Weinhold vm.cpp 905af32e75SAxel Dörfler 915af32e75SAxel Dörfler # libroot 9285db3873SIngo Weinhold driver_settings.cpp 935af32e75SAxel Dörfler 945af32e75SAxel Dörfler # utils 955af32e75SAxel Dörfler kernel_cpp.cpp 969e8dc2a9SIngo Weinhold KMessage.cpp 97bd185b41SIngo Weinhold list.cpp 9828a2172cSIngo Weinhold ring_buffer.cpp 9989294b50SAxel Dörfler safemode_settings.cpp 1003a7e0b00SIngo Weinhold StringHash.cpp 1015af32e75SAxel Dörfler 10232832cbeSIngo Weinhold DataIO.cpp 10330572237SIngo Weinhold Referenceable.cpp 1045af32e75SAxel Dörfler ; 1055af32e75SAxel Dörfler 1065af32e75SAxel Dörfler # The partition support is built in an extra static library 1075af32e75SAxel Dörfler # so that only the ones that are used will be included. 1085af32e75SAxel Dörfler 109*1f96a3cbSJessica Hamilton BootStaticLibrary [ MultiBootGristFiles boot_partitions ] : 110f335531bSFrançois Revol FileMapDisk.cpp 1115af32e75SAxel Dörfler amiga_rdb.cpp 1125af32e75SAxel Dörfler apple.cpp 113ab313893SAxel Dörfler 114eef8417eSAxel Dörfler efi_gpt.cpp 115ab313893SAxel Dörfler Header.cpp 116ab313893SAxel Dörfler crc32.cpp 117ab313893SAxel Dörfler utility.cpp 118ab313893SAxel Dörfler 1195af32e75SAxel Dörfler intel.cpp 1205af32e75SAxel Dörfler PartitionMap.cpp 1215af32e75SAxel Dörfler PartitionMapParser.cpp 1225af32e75SAxel Dörfler ; 1235af32e75SAxel Dörfler 1245af32e75SAxel Dörfler # Tell Jam where to find the utility sources 1253a7e0b00SIngo Weinhold SEARCH on [ FGristFiles kernel_cpp.cpp list.cpp ring_buffer.cpp StringHash.cpp ] 126338b8dc3SIngo Weinhold = [ FDirName $(HAIKU_TOP) src system kernel util ] ; 1275af32e75SAxel Dörfler 1289e8dc2a9SIngo Weinhold SEARCH on [ FGristFiles KMessage.cpp ] 1299e8dc2a9SIngo Weinhold = [ FDirName $(HAIKU_TOP) src system kernel messaging ] ; 1309e8dc2a9SIngo Weinhold 13189294b50SAxel Dörfler SEARCH on [ FGristFiles safemode_settings.cpp ] 13289294b50SAxel Dörfler = [ FDirName $(HAIKU_TOP) src system kernel debug ] ; 13389294b50SAxel Dörfler 13485db3873SIngo Weinhold SEARCH on [ FGristFiles driver_settings.cpp ] 135338b8dc3SIngo Weinhold = [ FDirName $(HAIKU_TOP) src system libroot os ] ; 1365af32e75SAxel Dörfler 1375af32e75SAxel Dörfler SEARCH on [ FGristFiles amiga_rdb.cpp ] 138338b8dc3SIngo Weinhold = [ FDirName $(HAIKU_TOP) src add-ons kernel partitioning_systems amiga ] ; 1395af32e75SAxel Dörfler 1405af32e75SAxel Dörfler SEARCH on [ FGristFiles apple.cpp ] 141338b8dc3SIngo Weinhold = [ FDirName $(HAIKU_TOP) src add-ons kernel partitioning_systems apple ] ; 1425af32e75SAxel Dörfler 143ab313893SAxel Dörfler SEARCH on [ FGristFiles efi_gpt.cpp Header.cpp crc32.cpp utility.cpp ] 14461ba1259SAxel Dörfler = [ FDirName $(HAIKU_TOP) src add-ons kernel partitioning_systems gpt ] ; 145eef8417eSAxel Dörfler 1465af32e75SAxel Dörfler SEARCH on [ FGristFiles intel.cpp PartitionMap.cpp PartitionMapParser.cpp ] 147338b8dc3SIngo Weinhold = [ FDirName $(HAIKU_TOP) src add-ons kernel partitioning_systems intel ] ; 1485af32e75SAxel Dörfler 1495af32e75SAxel Dörfler SEARCH on [ FGristFiles stage2_crt0.S ] 150da80a050SAlex Smith = [ FDirName $(HAIKU_TOP) src system boot arch $(TARGET_KERNEL_ARCH) ] ; 1515af32e75SAxel Dörfler 15232832cbeSIngo Weinhold SEARCH on [ FGristFiles DataIO.cpp Referenceable.cpp ] 15330572237SIngo Weinhold = [ FDirName $(HAIKU_TOP) src kits support ] ; 154*1f96a3cbSJessica Hamilton } 155*1f96a3cbSJessica Hamilton} 1565af32e75SAxel Dörfler 157338b8dc3SIngo WeinholdSubInclude HAIKU_TOP src system boot loader file_systems ; 158d561d0adSIngo WeinholdSubInclude HAIKU_TOP src system boot loader net ; 159