1SubDir HAIKU_TOP src system boot platform efi ; 2 3UsePrivateHeaders [ FDirName kernel boot ] ; 4UseBuildFeatureHeaders gnuefi ; 5UseBuildFeatureHeaders gnuefi : headersProtocol ; 6UseBuildFeatureHeaders gnuefi : headersArch ; 7 8{ 9 local defines = _BOOT_MODE GNU_EFI_USE_MS_ABI _BOOT_PLATFORM=efi ; 10 defines = [ FDefines $(defines) ] ; 11 SubDirCcFlags $(defines) ; 12 SubDirC++Flags $(defines) -fno-rtti ; 13} 14 15local efi_glue_src = 16 crt0-efi-x86_64.S 17 ; 18 19local platform_src = 20 relocation_func.cpp 21 start.c 22 ; 23 24Includes [ FGristFiles $(efi_glue_src) $(platform_src) ] 25 : 26 [ BuildFeatureAttribute gnuefi : headers ] 27 [ BuildFeatureAttribute gnuefi : headersProtocol ] 28 [ BuildFeatureAttribute gnuefi : headersArch ] 29 ; 30 31BootMergeObject boot_platform_efi.o : 32 $(efi_glue_src) 33 $(platform_src) 34 : 35 : boot_platform_generic.a 36 ; 37 38SEARCH on [ FGristFiles relocation_func.cpp ] = [ FDirName $(SUBDIR) arch $(TARGET_ARCH) ] ; 39LOCATE on [ FGristFiles $(efi_glue_src) ] = [ BuildFeatureAttribute gnuefi : libdir : path ] ; 40Depends [ FGristFiles $(efi_glue_src) ] : [ BuildFeatureAttribute gnuefi : libdir ] ; 41