1SubDir HAIKU_TOP src system boot platform efi ; 2 3UsePrivateHeaders [ FDirName graphics common ] ; 4UsePrivateHeaders [ FDirName kernel boot ] ; 5UsePrivateHeaders [ FDirName kernel platform ] ; 6UsePrivateHeaders [ FDirName kernel boot platform efi ] ; 7UsePrivateHeaders [ FDirName kernel boot arch $(TARGET_KERNEL_ARCH_DIR) ] ; 8 9if $(TARGET_ARCH) != x86_64 && $(TARGET_ARCH) != x86 { 10 UseLibraryHeaders [ FDirName libfdt ] ; 11} 12 13SubDirHdrs $(HAIKU_TOP) src add-ons kernel partitioning_systems gpt ; 14 15{ 16 local defines = _BOOT_PLATFORM_EFI ; 17 18 if $(TARGET_ARCH) != x86_64 && $(TARGET_ARCH) != x86 { 19 defines += _BOOT_FDT_SUPPORT ; 20 } 21 22 defines = [ FDefines $(defines) ] ; 23 SubDirCcFlags $(defines) ; 24 SubDirC++Flags $(defines) -fno-rtti ; 25} 26 27local platform_src = 28 start.cpp 29 console.cpp 30 cpu.cpp 31 video.cpp 32 debug.cpp 33 mmu.cpp 34 heap.cpp 35 acpi.cpp 36 timer.cpp 37 menu.cpp 38 devices.cpp 39 quirks.cpp 40 smp.cpp 41 serial.cpp 42 43 decode_edid.c 44 ; 45 46local support_libs ; 47 48if $(TARGET_ARCH) != x86_64 && $(TARGET_ARCH) != x86 { 49 support_libs += boot_fdt.a ; 50 platform_src += dtb.cpp ; 51} 52 53local platform ; 54for platform in [ MultiBootSubDirSetup efi ] { 55 on $(platform) { 56 SEARCH_SOURCE += [ FDirName $(HAIKU_TOP) src add-ons accelerants common ] ; 57 58 BootMergeObject boot_platform_efi_common.o : 59 $(platform_src) 60 : : 61 [ MultiBootGristFiles $(support_libs) ] 62 boot_platform_generic_efi.a 63 ; 64 65 BootMergeObject boot_platform_efi.o : 66 : : 67 boot_platform_efi_$(TARGET_ARCH).o 68 boot_platform_efi_common.o 69 ; 70 } 71} 72 73SubInclude HAIKU_TOP src system boot platform efi arch $(TARGET_ARCH) ; 74