haiku/src/system/boot/Jamfile

79 lines
1.5 KiB
Plaintext
Raw Normal View History

SubDir HAIKU_TOP src system boot ;
local librootFunctions =
byteorder.o
ctype.o
qsort.o
kernel_vsprintf.o
memset.o
memcmp.o
memcpy.o
memmove.o
strdup.o
strlen.o
strnlen.o
strcmp.o
strcasecmp.o
strncmp.o
strcat.o
strcpy.o
strlcat.o
strlcpy.o
strchr.o
strrchr.o
strtol.o
arch_string.o
;
local platformObjects = ;
if $(TARGET_ARCH) = x86 {
platformObjects += <src!system!kernel!arch!$(TARGET_ARCH)>cpuid.o ;
}
KernelLd boot_loader_$(TARGET_BOOT_PLATFORM) :
boot_platform_$(TARGET_BOOT_PLATFORM).o
boot_arch_$(TARGET_ARCH).o
boot_loader.a
boot_net.a
boot_partitions.a
# file systems
boot_bfs.a
boot_amiga_ffs.a
boot_tarfs.a
libz.a
# libroot functions needed by the stage2 boot loader (compiled for the
# kernel)
$(librootFunctions:G=src!system!kernel!lib)
# platform specific objects
$(platformObjects)
: $(HAIKU_TOP)/src/system/ldscripts/$(TARGET_ARCH)/boot_loader_$(TARGET_BOOT_PLATFORM).ld
: -Bstatic
;
rule BuildZbeos {
local zbeos = $(1) ;
local bootLoader = $(2) ;
Depends $(zbeos) : $(bootLoader) ;
MakeLocateDebug $(zbeos) ;
}
actions BuildZbeos {
rm -f $(1)
$(TARGET_OBJCOPY) -O binary $(2) $(1)
}
BuildZbeos zbeos : boot_loader_$(TARGET_BOOT_PLATFORM) ;
# different target for PXE, to be build with TARGET_BOOT_PLATFORM=pxe_ia32 jam pxehaiku-loader
BuildZbeos pxehaiku-loader : boot_loader_$(TARGET_BOOT_PLATFORM) ;
SubInclude HAIKU_TOP src system boot arch $(TARGET_ARCH) ;
SubInclude HAIKU_TOP src system boot loader ;
SubInclude HAIKU_TOP src system boot platform ;