xref: /haiku/src/system/boot/loader/Jamfile (revision 5af32e752606778be5dd7379f319fe43cb3f6b8c)
1*5af32e75SAxel DörflerSubDir OBOS_TOP src kernel boot loader ;
2*5af32e75SAxel Dörfler
3*5af32e75SAxel Dörfler# SubDirHdrs $(OBOS_TOP) src add-ons kernel partitioning_systems amiga ;
4*5af32e75SAxel DörflerUsePrivateHeaders [ FDirName kernel boot platform $(OBOS_BOOT_PLATFORM) ] ;
5*5af32e75SAxel DörflerUsePrivateHeaders [ FDirName kernel disk_device_manager ] ;
6*5af32e75SAxel DörflerUsePrivateHeaders [ FDirName kernel util ] ;
7*5af32e75SAxel DörflerUsePrivateHeaders [ FDirName shared ] ;
8*5af32e75SAxel DörflerUsePrivateHeaders [ FDirName storage ] ;
9*5af32e75SAxel Dörfler
10*5af32e75SAxel Dörfler{
11*5af32e75SAxel Dörfler	local defines =
12*5af32e75SAxel Dörfler		_BOOT_MODE
13*5af32e75SAxel Dörfler		BOOT_ARCH=\\\"$(OBOS_ARCH)\\\"
14*5af32e75SAxel Dörfler
15*5af32e75SAxel Dörfler		BOOT_SUPPORT_PARTITION_AMIGA
16*5af32e75SAxel Dörfler		BOOT_SUPPORT_PARTITION_APPLE
17*5af32e75SAxel Dörfler		BOOT_SUPPORT_PARTITION_INTEL
18*5af32e75SAxel Dörfler
19*5af32e75SAxel Dörfler		BOOT_SUPPORT_FILE_SYSTEM_BFS
20*5af32e75SAxel Dörfler		BOOT_SUPPORT_FILE_SYSTEM_AMIGA_FFS
21*5af32e75SAxel Dörfler		;
22*5af32e75SAxel Dörfler
23*5af32e75SAxel Dörfler	defines = [ FDefines $(defines) ] ;
24*5af32e75SAxel Dörfler	SubDirCcFlags $(defines) -Wall -Wno-multichar ;
25*5af32e75SAxel Dörfler	SubDirC++Flags $(defines) -Wall -Wno-multichar -fno-rtti ;
26*5af32e75SAxel Dörfler}
27*5af32e75SAxel Dörfler
28*5af32e75SAxel DörflerKernelStaticLibrary boot_loader :
29*5af32e75SAxel Dörfler	main.cpp
30*5af32e75SAxel Dörfler	vfs.cpp
31*5af32e75SAxel Dörfler	RootFileSystem.cpp
32*5af32e75SAxel Dörfler	partitions.cpp
33*5af32e75SAxel Dörfler	heap.cpp
34*5af32e75SAxel Dörfler	stdio.cpp
35*5af32e75SAxel Dörfler	elf.cpp
36*5af32e75SAxel Dörfler	menu.cpp
37*5af32e75SAxel Dörfler	loader.cpp
38*5af32e75SAxel Dörfler	kernel_args.cpp
39*5af32e75SAxel Dörfler	load_driver_settings.cpp
40*5af32e75SAxel Dörfler
41*5af32e75SAxel Dörfler	# libroot
42*5af32e75SAxel Dörfler	driver_settings.c
43*5af32e75SAxel Dörfler
44*5af32e75SAxel Dörfler	# utils
45*5af32e75SAxel Dörfler	list.c
46*5af32e75SAxel Dörfler	kernel_cpp.cpp
47*5af32e75SAxel Dörfler
48*5af32e75SAxel Dörfler	: -fno-pic
49*5af32e75SAxel Dörfler	;
50*5af32e75SAxel Dörfler
51*5af32e75SAxel Dörfler# The partition support is built in an extra static library
52*5af32e75SAxel Dörfler# so that only the ones that are used will be included.
53*5af32e75SAxel Dörfler
54*5af32e75SAxel DörflerKernelStaticLibrary boot_partitions :
55*5af32e75SAxel Dörfler	amiga_rdb.cpp
56*5af32e75SAxel Dörfler	apple.cpp
57*5af32e75SAxel Dörfler	intel.cpp
58*5af32e75SAxel Dörfler	PartitionMap.cpp
59*5af32e75SAxel Dörfler	PartitionMapParser.cpp
60*5af32e75SAxel Dörfler	: -fno-pic
61*5af32e75SAxel Dörfler	;
62*5af32e75SAxel Dörfler
63*5af32e75SAxel Dörfler# Tell Jam where to find the utility sources
64*5af32e75SAxel DörflerSEARCH on [ FGristFiles kernel_cpp.cpp list.c ]
65*5af32e75SAxel Dörfler    = [ FDirName $(OBOS_TOP) src kernel core util ] ;
66*5af32e75SAxel Dörfler
67*5af32e75SAxel DörflerSEARCH on [ FGristFiles driver_settings.c ]
68*5af32e75SAxel Dörfler    = [ FDirName $(OBOS_TOP) src kernel libroot os ] ;
69*5af32e75SAxel Dörfler
70*5af32e75SAxel DörflerSEARCH on [ FGristFiles amiga_rdb.cpp ]
71*5af32e75SAxel Dörfler    = [ FDirName $(OBOS_TOP) src add-ons kernel partitioning_systems amiga ] ;
72*5af32e75SAxel Dörfler
73*5af32e75SAxel DörflerSEARCH on [ FGristFiles apple.cpp ]
74*5af32e75SAxel Dörfler    = [ FDirName $(OBOS_TOP) src add-ons kernel partitioning_systems apple ] ;
75*5af32e75SAxel Dörfler
76*5af32e75SAxel DörflerSEARCH on [ FGristFiles intel.cpp PartitionMap.cpp PartitionMapParser.cpp ]
77*5af32e75SAxel Dörfler    = [ FDirName $(OBOS_TOP) src add-ons kernel partitioning_systems intel ] ;
78*5af32e75SAxel Dörfler
79*5af32e75SAxel DörflerSEARCH on [ FGristFiles stage2_crt0.S ]
80*5af32e75SAxel Dörfler    = [ FDirName $(OBOS_TOP) src kernel boot arch $(OBOS_ARCH) ] ;
81*5af32e75SAxel Dörfler
82*5af32e75SAxel Dörfler
83*5af32e75SAxel DörflerSubInclude OBOS_TOP src kernel boot loader file_systems ;
84