xref: /haiku/src/system/boot/platform/efi/Jamfile (revision 211483cb512baaca8b17e0112a360b5a17cde0ca)
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