Files
haiku-beta6/src/kernel/Jamfile
T

456 lines
8.4 KiB
Plaintext
Raw Normal View History

SubDir OBOS_TOP src kernel ;
2002-07-09 12:24:59 +00:00
KernelLd stage2 :
<$(SOURCE_GRIST)!boot!arch!$(OBOS_ARCH)>stage2.o
<$(SOURCE_GRIST)!boot!arch!$(OBOS_ARCH)>stage2_asm.o
<$(SOURCE_GRIST)!boot!arch!$(OBOS_ARCH)>smp_boot.o
<$(SOURCE_GRIST)!boot!arch!$(OBOS_ARCH)>smp_trampoline.o
# posix functions needed by the stage2 boot loader
<$(SOURCE_GRIST)!libroot!posix!locale>ctype.o
<$(SOURCE_GRIST)!libroot!posix!stdio>kvsprintf.o
<$(SOURCE_GRIST)!libroot!posix!string>memset.o
<$(SOURCE_GRIST)!libroot!posix!string>memcpy.o
<$(SOURCE_GRIST)!libroot!posix!string>strnlen.o
2002-07-09 12:24:59 +00:00
:
$(SUBDIR)/boot/arch/$(OBOS_ARCH)/stage2.ld
:
-dN
:
:
bootstrap
;
KernelLd kernel :
kernel_core.o
kernel_fs.o
2002-07-09 12:24:59 +00:00
libbus.a
libvm.a
lib$(OBOS_ARCH).a
libdrivers.a
linkhack.so
kernel_os_arch_$(OBOS_ARCH).o
kernel_posix_locale.o
2002-11-17 05:04:08 +00:00
kernel_posix_main.o
2002-11-18 00:42:48 +00:00
kernel_posix_signal.o
kernel_posix_stdio.o
kernel_posix_stdlib.o
kernel_posix_sys.o
2002-11-16 17:47:34 +00:00
kernel_posix_time.o
2002-11-17 05:04:08 +00:00
kernel_posix_unistd.o
posix_string.o
2002-07-09 12:24:59 +00:00
:
$(SUBDIR)/core/arch/$(OBOS_ARCH)/kernel.ld
:
-Bdynamic -export-dynamic -dynamic-linker /foo/bar
:
:
kernel
;
KernelLd kernel.so :
# ToDo: remove kernel.so completely and make the drivers/modules
# linkable against the kernel itself
kernel_core.o
kernel_fs.o
2002-07-09 12:24:59 +00:00
libbus.a
libvm.a
lib$(OBOS_ARCH).a
libdrivers.a
linkhack.so
kernel_os_arch_$(OBOS_ARCH).o
kernel_posix_locale.o
2002-11-17 05:04:08 +00:00
kernel_posix_main.o
2002-11-18 00:42:48 +00:00
kernel_posix_signal.o
kernel_posix_stdio.o
kernel_posix_stdlib.o
kernel_posix_sys.o
2002-11-16 17:47:34 +00:00
kernel_posix_time.o
2002-11-17 05:04:08 +00:00
kernel_posix_unistd.o
posix_string.o
2002-07-09 12:24:59 +00:00
:
$(SUBDIR)/core/arch/$(OBOS_ARCH)/kernel.ld
:
-Bdynamic -shared -export-dynamic -dynamic-linker /foo/bar
;
KernelLd libglue.o : # libglue.o is used for dynamic libraries
<$(SOURCE_GRIST)!glue>crt0.o
<$(SOURCE_GRIST)!glue>init_term_dyn.o
2002-07-09 12:24:59 +00:00
:
:
-r
:
no_gcc
;
KernelLd libroot.so :
libglue.o
<$(SOURCE_GRIST)!libroot>libroot_init.o
os_main.o
os_arch_$(OBOS_ARCH).o
posix_locale.o
posix_main.o
posix_malloc.o
posix_math.o
posix_math_arch_$(OBOS_ARCH).o
2002-11-18 00:42:48 +00:00
posix_signal.o
posix_stdio.o
posix_stdlib.o
posix_string.o
posix_sys.o
2002-11-16 17:47:34 +00:00
posix_time.o
posix_unistd.o
:
$(SUBDIR)/ldscripts/$(OBOS_ARCH)/library.ld
:
-shared -soname libroot.so -Bdynamic -export-dynamic
:
# no_gcc
# for now link against libgcc.a to allow more BeOS executables to be run.
# Needs a definitive decision - most probably we will have to link it statically
# against libroot.so, too, like BeOS does it
:
lib/libroot.so
;
KernelLd libglue2.o : # libglue2.o is used for executables
<$(SOURCE_GRIST)!glue>crt0.o
<$(SOURCE_GRIST)!glue>init_term_dyn.o
<$(SOURCE_GRIST)!glue>start_dyn.o
:
:
-r
:
no_gcc
2002-07-09 12:24:59 +00:00
;
KernelLd init :
libglue2.o
<$(SOURCE_GRIST)!apps>init.o
libroot.so
:
$(SUBDIR)/ldscripts/$(OBOS_ARCH)/app.ld
:
:
:
bin/init
;
2002-07-09 12:24:59 +00:00
KernelStaticLibraryObjects librld.a :
# needed for rld.so only
<$(SOURCE_GRIST)!libroot!os>syscalls.o
<$(SOURCE_GRIST)!libroot!os>sem.o
<$(SOURCE_GRIST)!libroot!os!arch!$(OBOS_ARCH)>atomic.o
2002-07-09 12:24:59 +00:00
<$(SOURCE_GRIST)!libroot!posix>errno.o
2002-07-09 12:24:59 +00:00
<$(SOURCE_GRIST)!libroot!posix!locale>ctype.o
<$(SOURCE_GRIST)!libroot!posix!stdio>kvsprintf.o
<$(SOURCE_GRIST)!libroot!posix!unistd>open.o
<$(SOURCE_GRIST)!libroot!posix!string>memchr.o
<$(SOURCE_GRIST)!libroot!posix!string>memcmp.o
<$(SOURCE_GRIST)!libroot!posix!string>memcpy.o
<$(SOURCE_GRIST)!libroot!posix!string>memmove.o
<$(SOURCE_GRIST)!libroot!posix!string>memset.o
<$(SOURCE_GRIST)!libroot!posix!string>strcasecmp.o
<$(SOURCE_GRIST)!libroot!posix!string>strcasestr.o
<$(SOURCE_GRIST)!libroot!posix!string>strcat.o
<$(SOURCE_GRIST)!libroot!posix!string>strchr.o
<$(SOURCE_GRIST)!libroot!posix!string>strcmp.o
<$(SOURCE_GRIST)!libroot!posix!string>strcpy.o
<$(SOURCE_GRIST)!libroot!posix!string>strcspn.o
<$(SOURCE_GRIST)!libroot!posix!string>strdup.o
<$(SOURCE_GRIST)!libroot!posix!string>strerror.o
<$(SOURCE_GRIST)!libroot!posix!string>strlcat.o
<$(SOURCE_GRIST)!libroot!posix!string>strlcpy.o
<$(SOURCE_GRIST)!libroot!posix!string>strlen.o
<$(SOURCE_GRIST)!libroot!posix!string>strncat.o
<$(SOURCE_GRIST)!libroot!posix!string>strncmp.o
<$(SOURCE_GRIST)!libroot!posix!string>strncpy.o
<$(SOURCE_GRIST)!libroot!posix!string>strnicmp.o
<$(SOURCE_GRIST)!libroot!posix!string>strnlen.o
<$(SOURCE_GRIST)!libroot!posix!string>strpbrk.o
<$(SOURCE_GRIST)!libroot!posix!string>strrchr.o
<$(SOURCE_GRIST)!libroot!posix!string>strspn.o
<$(SOURCE_GRIST)!libroot!posix!string>strstr.o
<$(SOURCE_GRIST)!libroot!posix!string>strtok.o
;
KernelLd rld.so :
<$(SOURCE_GRIST)!apps!rld>rld0.o
<$(SOURCE_GRIST)!apps!rld>rld.o
<$(SOURCE_GRIST)!apps!rld>rldelf.o
<$(SOURCE_GRIST)!apps!rld>rldexport.o
<$(SOURCE_GRIST)!apps!rld>rldheap.o
<$(SOURCE_GRIST)!apps!rld>rldaux.o
librld.a
2002-07-09 12:24:59 +00:00
:
$(SUBDIR)/apps/rld/arch/$(OBOS_ARCH)/rld.ld
2002-07-09 12:24:59 +00:00
:
:
:
libexec/rld.so
2002-07-09 12:24:59 +00:00
;
KernelLd false :
libglue2.o
<$(SOURCE_GRIST)!apps>false_main.o
libroot.so
2002-07-09 12:24:59 +00:00
:
$(SUBDIR)/ldscripts/$(OBOS_ARCH)/app.ld
:
:
:
bin/false
;
KernelLd true :
libglue2.o
<$(SOURCE_GRIST)!apps>true_main.o
libroot.so
2002-07-09 12:24:59 +00:00
:
$(SUBDIR)/ldscripts/$(OBOS_ARCH)/app.ld
:
:
:
bin/true
;
KernelLd fibo :
libglue2.o
<$(SOURCE_GRIST)!apps>fibo_main.o
libroot.so
2002-07-09 12:24:59 +00:00
:
$(SUBDIR)/ldscripts/$(OBOS_ARCH)/app.ld
:
:
:
bin/fibo
;
2002-10-23 17:31:10 +00:00
KernelLd sig_test :
libglue2.o
<$(SOURCE_GRIST)!apps>sig_test.o
libroot.so
:
$(SUBDIR)/ldscripts/$(OBOS_ARCH)/app.ld
:
:
:
bin/sig_test
;
KernelLd tls_test :
libglue2.o
<$(SOURCE_GRIST)!apps>tls_test.o
libroot.so
:
$(SUBDIR)/ldscripts/$(OBOS_ARCH)/app.ld
:
:
:
bin/tls_test
;
2002-07-09 12:24:59 +00:00
KernelLd fortune :
libglue2.o
<$(SOURCE_GRIST)!apps!fortune>main.o
libroot.so
2002-07-09 12:24:59 +00:00
:
$(SUBDIR)/ldscripts/$(OBOS_ARCH)/app.ld
:
:
:
bin/fortune
;
KernelConfigSection etc/fortunes : data : $(SUBDIR)/apps/fortune/fortunes ;
KernelLd ls :
libglue2.o
<$(SOURCE_GRIST)!apps!ls>main.o
libroot.so
2002-07-09 12:24:59 +00:00
:
$(SUBDIR)/ldscripts/$(OBOS_ARCH)/app.ld
:
:
:
bin/ls
;
KernelLd symlink :
libglue2.o
<$(SOURCE_GRIST)!apps!symlink>main.o
libroot.so
:
$(SUBDIR)/ldscripts/$(OBOS_ARCH)/app.ld
:
:
:
bin/symlink
;
2002-07-09 12:24:59 +00:00
# Note: shell is a built in target, thus we need the grist.
KernelLd obos_shell :
libglue2.o
<$(SOURCE_GRIST)!apps!shell>main.o
<$(SOURCE_GRIST)!apps!shell>args.o
<$(SOURCE_GRIST)!apps!shell>commands.o
<$(SOURCE_GRIST)!apps!shell>file_utils.o
<$(SOURCE_GRIST)!apps!shell>parse.o
<$(SOURCE_GRIST)!apps!shell>script.o
<$(SOURCE_GRIST)!apps!shell>shell_vars.o
<$(SOURCE_GRIST)!apps!shell>statements.o
<$(SOURCE_GRIST)!apps!shell>shell_history.o
libroot.so
2002-07-09 12:24:59 +00:00
:
$(SUBDIR)/ldscripts/$(OBOS_ARCH)/app.ld
:
:
:
bin/shell
;
KernelLd cpuinfo :
libglue2.o
<$(SOURCE_GRIST)!apps!cpuinfo>main.o
libroot.so
2002-07-09 12:24:59 +00:00
:
$(SUBDIR)/ldscripts/$(OBOS_ARCH)/app.ld
2002-07-09 12:24:59 +00:00
:
:
:
bin/cpuinfo
2002-07-09 12:24:59 +00:00
;
KernelLd testapp :
libglue2.o
<$(SOURCE_GRIST)!apps!testapp>main.o
libroot.so
2002-07-09 12:24:59 +00:00
:
$(SUBDIR)/ldscripts/$(OBOS_ARCH)/app.ld
:
:
:
bin/testapp
;
KernelLd hostname :
libglue2.o
<$(SOURCE_GRIST)!apps!hostname>main.o
libroot.so
2002-07-09 12:24:59 +00:00
:
$(SUBDIR)/ldscripts/$(OBOS_ARCH)/app.ld
:
:
:
bin/hostname
;
KernelLd filetest :
libglue2.o
<$(SOURCE_GRIST)!apps!filetest>main.o
libroot.so
2002-07-09 12:24:59 +00:00
:
$(SUBDIR)/ldscripts/$(OBOS_ARCH)/app.ld
:
:
:
bin/filetest
;
2002-07-18 13:59:03 +00:00
KernelLd envtest :
libglue2.o
<$(SOURCE_GRIST)!apps!envtest>main.o
libroot.so
2002-07-18 13:59:03 +00:00
:
$(SUBDIR)/ldscripts/$(OBOS_ARCH)/app.ld
:
:
:
bin/envtest
;
2002-07-19 01:23:24 +00:00
#if $(OS) = "BEOS"
#{
# KernelConfigSection addons/drivers/dev/misc/pcspeaker
# :
# elf32
# :
# /boot/home/config/add-ons/kernel/drivers/bin/pcspeaker
# ;
# KernelConfigSection addons/drivers/dev/net/tulip
# :
# elf32
# :
# /boot/beos/system/add-ons/kernel/drivers/bin/tulip
# ;
#}
2002-07-09 12:24:59 +00:00
KernelLd ps :
libglue2.o
<$(SOURCE_GRIST)!apps!ps>main.o
libroot.so
:
2002-07-09 12:24:59 +00:00
$(SUBDIR)/ldscripts/$(OBOS_ARCH)/app.ld
:
:
:
bin/ps
;
2002-07-09 12:24:59 +00:00
KernelLd echo :
libglue2.o
<$(SOURCE_GRIST)!apps!echo>main.o
libroot.so
:
2002-07-09 12:24:59 +00:00
$(SUBDIR)/ldscripts/$(OBOS_ARCH)/app.ld
:
:
:
bin/echo
;
2002-07-09 12:24:59 +00:00
KernelLd uname :
libglue2.o
<$(SOURCE_GRIST)!apps!uname>main.o
libroot.so
:
$(SUBDIR)/ldscripts/$(OBOS_ARCH)/app.ld
:
:
:
bin/uname
;
2002-07-09 12:24:59 +00:00
WriteKernelConfig $(OBOS_KERNEL_CONFIG) ;
2002-07-09 12:24:59 +00:00
BuildKernel $(OBOS_KERNEL) : $(OBOS_KERNEL_CONFIG) ;
2002-07-09 12:24:59 +00:00
KernelFloppyImage $(OBOS_FLOPPY) : $(OBOS_KERNEL) : $(SUBDIR)/boot/arch/$(OBOS_ARCH)/bootblock.bin ;
2002-07-09 12:24:59 +00:00
2002-07-17 13:29:58 +00:00
Depends floppy : $(OBOS_FLOPPY) ;
NotFile floppy ;
SubInclude OBOS_TOP src kernel boot ;
SubInclude OBOS_TOP src kernel core ;
SubInclude OBOS_TOP src kernel drivers ;
SubInclude OBOS_TOP src kernel global ;
SubInclude OBOS_TOP src kernel glue ;
SubInclude OBOS_TOP src kernel apps ;
SubInclude OBOS_TOP src kernel libroot ;