1SubDir HAIKU_TOP src system boot arch arm64 ;
2
3local platform ;
4
5local kernelArchSources =
6	arch_elf.cpp
7	arch_uart_linflex.cpp
8;
9
10local kernelArchReusableSources =
11	arch_uart_pl011.cpp
12;
13
14local kernelGenericDriverSources =
15	debug_uart.cpp
16	debug_uart_8250.cpp
17;
18
19kernelLibGenericSources =
20	memcpy.c
21	memset.c
22;
23
24local kernelLibArchSources = ;
25
26local librootOsArchSources =
27	byteorder.S
28;
29
30for platform in [ MultiBootSubDirSetup efi ] {
31	on $(platform) {
32		BootMergeObject [ FGristFiles boot_arch_$(TARGET_KERNEL_ARCH).o ] :
33			$(kernelGenericDriverSources)
34			$(kernelArchSources)
35			$(kernelArchReusableSources)
36			$(kernelLibArchSources)
37			$(kernelLibGenericSources)
38			$(librootOsArchSources)
39
40			arch_cpu.cpp
41			: # additional flags
42		;
43
44		SEARCH on [ FGristFiles $(kernelGenericDriverSources) ]
45			= [ FDirName $(HAIKU_TOP) src system kernel arch generic ] ;
46		SEARCH on [ FGristFiles $(kernelArchSources) ]
47			= [ FDirName $(HAIKU_TOP) src system kernel arch $(TARGET_KERNEL_ARCH_DIR) ] ;
48		SEARCH on [ FGristFiles $(kernelArchReusableSources) ]
49			= [ FDirName $(HAIKU_TOP) src system kernel arch arm ] ;
50		SEARCH on [ FGristFiles $(kernelLibGenericSources) ]
51			= [ FDirName $(HAIKU_TOP) src system libroot posix string arch generic ] ;
52		SEARCH on [ FGristFiles $(kernelLibArchSources) ]
53			= [ FDirName $(HAIKU_TOP) src system libroot posix string arch arm64 ] ;
54		SEARCH on [ FGristFiles $(librootOsArchSources) ]
55			= [ FDirName $(HAIKU_TOP) src system libroot os arch arm64 ] ;
56	}
57}
58