xref: /haiku/src/system/boot/platform/pxe_ia32/Jamfile (revision be3db2942c0e8dda63cdd226ec3c99309d3eab0c)
1SubDir HAIKU_TOP src system boot platform pxe_ia32 ;
2
3SubDirHdrs $(SUBDIR) $(DOTDOT) bios_ia32 ;
4SubDirHdrs $(HAIKU_TOP) headers private kernel boot platform bios_ia32 ;
5SubDirHdrs $(HAIKU_TOP) headers private kernel boot platform $(TARGET_BOOT_PLATFORM) ;
6
7UsePrivateHeaders [ FDirName kernel disk_device_manager ] ;
8UsePrivateHeaders [ FDirName graphics common ] ;
9UsePrivateHeaders [ FDirName graphics vesa ] ;
10UsePrivateHeaders [ FDirName storage ] ;
11
12{
13	local defines = _BOOT_MODE _PXE_ENV ;
14
15	defines = [ FDefines $(defines) ] ;
16	SubDirCcFlags $(defines) -Wall -Wno-multichar ;
17	SubDirC++Flags $(defines) -Wall -Wno-multichar -fno-rtti ;
18}
19
20local bios_ia32_src =
21	start.c
22	debug.c
23	bios.S
24	console.cpp
25	serial.cpp
26	keyboard.cpp
27	menu.cpp
28	mmu.cpp
29	cpu.cpp
30	smp.cpp
31	support.S
32	video.cpp
33	apm.cpp
34;
35
36local bios_ia32_edid_src =
37	decode_edid.c
38	dump_edid.c
39;
40
41
42KernelMergeObject boot_platform_pxe_ia32.o :
43	pxe_stage2.S
44	smp_trampoline.S
45	pxe_bios.S
46	devices.cpp
47	network.cpp
48	pxe_undi.cpp
49	$(bios_ia32_src)
50	$(bios_ia32_edid_src)
51
52	# generic
53	text_menu.cpp
54	: -fno-pic
55;
56
57
58rule BuildPXEstage1 {
59	local bin = $(1) ;
60	local source = $(2) ;
61
62	Depends $(bin) : $(source) ;
63	MakeLocateDebug $(bin) ;
64}
65
66
67actions BuildPXEstage1 {
68	rm -f $(1)
69	as -o $(1).o $(2)
70	ld --oformat binary --Ttext 0x7C00 -o $(1) $(1).o
71}
72
73BuildPXEstage1 pxehaiku : pxe_stage1.S ;
74
75SEARCH on [ FGristFiles $(bios_ia32_src) ]
76	= [ FDirName $(SUBDIR) $(DOTDOT) bios_ia32 ] ;
77
78SEARCH on [ FGristFiles text_menu.cpp ]
79	= [ FDirName $(HAIKU_TOP) src system boot platform generic ] ;
80
81SEARCH on [ FGristFiles $(bios_ia32_edid_src) ]
82	= [ FDirName $(HAIKU_TOP) src add-ons accelerants common ] ;
83
84# We also need the bios_ia32 stage1.bin for building bin/makebootable
85SEARCH on stage1.bin
86 	= [ FDirName $(SUBDIR) $(DOTDOT) bios_ia32 ] ;
87
88SEARCH on pxe_stage1.S = $(SUBDIR) ;
89