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