xref: /haiku/src/system/boot/arch/arm/Jamfile (revision 9f739dd2e868114ce19ae73afcff07caf2ddb8b6)
1SubDir HAIKU_TOP src system boot arch arm ;
2
3UsePrivateHeaders [ FDirName kernel platform $(TARGET_BOOT_PLATFORM) ] ;
4
5# TODO: Is there any reason to recompile arch_string.S here?
6local librootArchObjects =
7#	<src!system!libroot!posix!string!arch!$(TARGET_ARCH)>arch_string.o
8	arch_string.S
9;
10
11local kernelLibArchObjects =
12	<src!system!kernel!lib!arch!$(TARGET_ARCH)>byteorder.o
13	<src!system!kernel!lib!arch!$(TARGET_ARCH)>memset.o
14;
15
16local kernelArchSources =
17	arch_elf.cpp
18	arch_uart_8250.cpp
19;
20
21local kernelDebugSources =
22	blue_screen.cpp
23	frame_buffer_console.cpp
24;
25
26local kernelGenericDriverSources =
27	debug_uart_8250.cpp
28;
29
30local platform ;
31for platform in [ MultiBootSubDirSetup u-boot efi ] {
32    on $(platform) {
33		DEFINES += _BOOT_MODE ;
34		BootMergeObject [ FGristFiles boot_arch_$(TARGET_KERNEL_ARCH).o ] :
35			# Kernel Drivers (src/system/kernel)
36			$(kernelGenericDriverSources)
37			$(kernelArchSources)
38
39			arch_cpu.cpp
40			arch_start_kernel.S
41
42			# Reuse a subset of kernel debugging.
43			kernel_stubs.cpp
44			$(kernelDebugSources)
45
46			$(librootArchObjects)
47			:
48			:
49			$(kernelLibArchObjects)
50		;
51
52		SEARCH on [ FGristFiles $(kernelArchSources) ]
53			= [ FDirName $(HAIKU_TOP) src system kernel arch $(TARGET_KERNEL_ARCH) ] ;
54
55		SEARCH on [ FGristFiles $(kernelGenericDriverSources) ]
56			= [ FDirName $(HAIKU_TOP) src system kernel arch generic ] ;
57
58		SEARCH on [ FGristFiles $(librootArchObjects) ]
59			= [ FDirName $(HAIKU_TOP) src system libroot posix string arch $(TARGET_ARCH) ] ;
60
61		SEARCH on [ FGristFiles $(kernelDebugSources) ]
62			= [ FDirName $(HAIKU_TOP) src system kernel debug ] ;
63	}
64}
65
66