1SubDir HAIKU_TOP src system boot platform efi ; 2 3SetupFeatureObjectsDir $(TARGET_BOOT_PLATFORM) ; 4 5UsePrivateHeaders [ FDirName kernel boot ] ; 6UseBuildFeatureHeaders gnuefi ; 7UseBuildFeatureHeaders gnuefi : headersProtocol ; 8UseBuildFeatureHeaders gnuefi : headersArch ; 9SubDirHdrs $(HAIKU_TOP) src add-ons kernel partitioning_systems gpt ; 10 11{ 12 local defines = _BOOT_MODE GNU_EFI_USE_MS_ABI _BOOT_PLATFORM_EFI ; 13 defines = [ FDefines $(defines) ] ; 14 SubDirCcFlags $(defines) ; 15 SubDirC++Flags $(defines) -fno-rtti ; 16} 17 18local efi_glue_src = 19 crt0-efi-x86_64.S 20 ; 21 22local platform_src = 23 relocation_func.cpp 24 start.cpp 25 console.cpp 26 video.cpp 27 debug.cpp 28 entry.S 29 mmu.cpp 30 heap.cpp 31 acpi.cpp 32 menu.cpp 33 devices.cpp 34 hpet.cpp 35 cpu.cpp 36 smp.cpp 37 serial.cpp 38 smp_trampoline.S 39 support.S 40 ; 41 42Includes [ FGristFiles $(efi_glue_src) $(platform_src) ] 43 : 44 [ BuildFeatureAttribute gnuefi : headers ] 45 [ BuildFeatureAttribute gnuefi : headersProtocol ] 46 [ BuildFeatureAttribute gnuefi : headersArch ] 47 ; 48 49BootMergeObject boot_platform_efi.o : 50 $(efi_glue_src) 51 $(platform_src) 52 : 53 : boot_platform_generic.a 54 ; 55 56SEARCH on [ FGristFiles relocation_func.cpp ] 57 = [ FDirName $(SUBDIR) arch $(TARGET_ARCH) ] ; 58LOCATE on [ FGristFiles $(efi_glue_src) ] 59 = [ BuildFeatureAttribute gnuefi : libdir : path ] ; 60Depends [ FGristFiles $(efi_glue_src) ] 61 : [ BuildFeatureAttribute gnuefi : libdir ] ; 62