1SubDir HAIKU_TOP src system boot platform efi arch arm64 ;
2
3SubDirHdrs $(SUBDIR) $(DOTDOT) $(DOTDOT) ;
4SubDirHdrs $(SUBDIR) $(DOTDOT) generic ;
5
6UseLibraryHeaders [ FDirName libfdt ] ;
7
8UsePrivateHeaders [ FDirName kernel platform ] ;
9UsePrivateHeaders [ FDirName kernel boot platform efi ] ;
10
11local platform ;
12for platform in [ MultiBootSubDirSetup efi ] {
13	on $(platform) {
14		{
15			local defines = _BOOT_PLATFORM_EFI ;
16			defines = [ FDefines $(defines) ] ;
17			SubDirCcFlags $(defines) ;
18			SubDirC++Flags $(defines) -fno-rtti ;
19		}
20
21		local arch_src =
22			crt0-efi-$(TARGET_ARCH).S
23			entry.S
24			transition.S
25			exceptions.S
26			cache.S
27			relocation_func.cpp
28			arch_acpi.cpp
29			arch_cache.cpp
30			arch_dtb.cpp
31			arch_mmu.cpp
32			arch_smp.cpp
33			arch_start.cpp
34			arch_timer.cpp
35			;
36
37		local generic_src =
38			generic_mmu.cpp
39			;
40
41		BootMergeObject boot_platform_efi_arm64.o :
42			$(arch_src)
43			$(generic_src)
44			;
45
46		SEARCH on [ FGristFiles $(generic_src) ]
47			= [ FDirName $(SUBDIR) $(DOTDOT) generic ] ;
48	}
49}
50