xref: /haiku/src/system/runtime_loader/Jamfile (revision 079eccf655ba39812b421ae1b87a727d41b50354)
1SubDir HAIKU_TOP src system runtime_loader ;
2
3UsePrivateHeaders runtime_loader ;
4UsePrivateHeaders kernel ;
5	# for <util/KMessage.h>
6UsePrivateSystemHeaders ;
7
8# Don't let gcc inject built-in function code. This will cause dependencies
9# to libroot, which we don't link against.
10SubDirCcFlags -fno-builtin ;
11SubDirC++Flags -fno-builtin -fno-exceptions ;
12
13DEFINES +=
14	KMESSAGE_CONTAINER_ONLY
15	_LOADER_MODE
16;
17
18AddResources runtime_loader : runtime_loader.rdef ;
19
20# needed for "runtime_loader" only
21StaticLibrary libruntime_loader.a :
22	kernel_vsprintf.c
23	kernel_cpp.cpp
24	KMessage.cpp
25	:
26	<src!system!libroot!os>syscalls.o
27	<src!system!libroot!os>sem.o
28	<src!system!libroot!os!arch!$(TARGET_ARCH)>atomic.o
29	<src!system!libroot!os!arch!$(TARGET_ARCH)>thread.o
30
31	<src!system!libroot!posix>errno.o
32
33 	<src!system!libroot!posix!glibc!ctype>ctype-info.o
34	<src!system!libroot!posix!glibc!locale>C-ctype.o
35	<src!system!libroot!posix!glibc!locale>C_name.o
36  	<src!system!libroot!posix!unistd>open.o
37
38	<src!system!libroot!posix!string>memchr.o
39	<src!system!libroot!posix!string>memcmp.o
40	<src!system!libroot!posix!string>memcpy.o
41	<src!system!libroot!posix!string>memmove.o
42	<src!system!libroot!posix!string>memset.o
43	<src!system!libroot!posix!string>strcasecmp.o
44	<src!system!libroot!posix!string>strcat.o
45	<src!system!libroot!posix!string>strchr.o
46	<src!system!libroot!posix!string>strcmp.o
47	<src!system!libroot!posix!string>strcpy.o
48	<src!system!libroot!posix!string>strcspn.o
49	<src!system!libroot!posix!string>strdup.o
50	<src!system!libroot!posix!string>strerror.o
51	<src!system!libroot!posix!string>strlcat.o
52	<src!system!libroot!posix!string>strlcpy.o
53	<src!system!kernel!lib>strlen.o
54	<src!system!libroot!posix!string>strncmp.o
55	<src!system!libroot!posix!string>strnlen.o
56	<src!system!libroot!posix!string>strpbrk.o
57	<src!system!libroot!posix!string>strrchr.o
58	<src!system!libroot!posix!string>strspn.o
59	<src!system!libroot!posix!string>strstr.o
60	<src!system!libroot!posix!string!arch!$(TARGET_ARCH)>arch_string.o
61
62	[ FGristFiles kernel_vsprintf.o ]
63;
64
65SEARCH on [ FGristFiles kernel_cpp.cpp ]
66	= [ FDirName $(HAIKU_TOP) src system kernel util ] ;
67SEARCH on [ FGristFiles kernel_vsprintf.c ]
68	= [ FDirName $(HAIKU_TOP) src system kernel lib ] ;
69SEARCH on [ FGristFiles KMessage.cpp ]
70	= [ FDirName $(HAIKU_TOP) src system kernel messaging ] ;
71
72SEARCH_SOURCE += [ FDirName $(SUBDIR) arch $(TARGET_ARCH) ] ;
73
74Objects
75	runtime_loader.c
76	elf.cpp
77	export.c
78	heap.cpp
79	utility.cpp
80	arch_relocate.c
81;
82
83Ld runtime_loader :
84	[ FGristFiles runtime_loader.o elf.o export.o heap.o utility.o arch_relocate.o ]
85	libruntime_loader.a
86	$(TARGET_GCC_LIBGCC)
87	: $(HAIKU_TOP)/src/system/ldscripts/$(TARGET_ARCH)/runtime_loader.ld
88;
89