1SubDir HAIKU_TOP src system boot platform u-boot ; 2 3SubDirHdrs $(HAIKU_TOP) headers private kernel boot platform $(TARGET_BOOT_PLATFORM) ; 4SubDirHdrs $(HAIKU_TOP) headers private kernel platform $(TARGET_BOOT_PLATFORM) ; 5SubDirHdrs $(HAIKU_TOP) src add-ons kernel bus_managers fdt ; 6 7SubDirHdrs $(HAIKU_TOP) src system boot arch $(TARGET_KERNEL_ARCH_DIR) ; 8SubDirHdrs $(HAIKU_TOP) src system boot platform u-boot arch $(TARGET_KERNEL_ARCH_DIR) ; 9 10UseLibraryHeaders [ FDirName libfdt ] ; 11 12UsePrivateHeaders [ FDirName kernel disk_device_manager ] ; 13UsePrivateHeaders [ FDirName graphics common ] ; 14UsePrivateHeaders [ FDirName graphics vesa ] ; 15UsePrivateHeaders [ FDirName storage ] ; 16UsePrivateHeaders [ FDirName kernel arch generic ] ; 17 18{ 19 local defines = _BOOT_MODE ; 20 21 defines = [ FDefines $(defines) ] ; 22 SubDirCcFlags $(defines) -g3 -O0 ; 23 SubDirC++Flags $(defines) -fno-rtti -g3 -O0 ; 24} 25 26SEARCH_SOURCE += [ FDirName $(HAIKU_TOP) src add-ons accelerants common ] ; 27 28SEARCH on [ FGristFiles $(genericPlatformSources) ] 29 = [ FDirName $(HAIKU_TOP) src system boot platform generic ] ; 30 31local platform ; 32for platform in [ MultiBootSubDirSetup u-boot ] { 33 on $(platform) { 34 35 # First build the non arch dependent parts 36 BootMergeObject boot_platform_u-boot_common.o : 37 start.cpp 38 debug.cpp 39 console.cpp 40 serial.cpp 41 devices.cpp 42 keyboard.cpp 43 menu.cpp 44 cpu.cpp 45 uimage.cpp 46 video.cpp 47 $(genericPlatformSources) 48 : 49 : 50 boot_platform_generic_u-boot.a 51 [ MultiBootGristFiles boot_fdt.a ] 52 ; 53 54 BootMergeObject boot_platform_u-boot.o : 55 : : 56 # must come first to have _start_* at correct locations 57 boot_platform_u-boot_$(TARGET_ARCH).o 58 boot_platform_u-boot_common.o 59 ; 60 } 61} 62 63 64# Tell the build system to where stage1.bin can be found, so it can be used 65# elsewhere. 66SEARCH on stage1.bin = $(SUBDIR) ; 67 68SubInclude HAIKU_TOP src system boot platform u-boot arch ; 69