xref: /haiku/src/kits/Jamfile (revision d3d8b26997fac34a84981e6d2b649521de2cc45a)
1SubDir HAIKU_TOP src kits ;
2
3# If defined allows to run applications without the registrar
4# -- for development only, of course.
5if $(RUN_WITHOUT_REGISTRAR) {
6	local defines = [ FDefines RUN_WITHOUT_REGISTRAR ] ;
7	SubDirCcFlags $(defines) ;
8	SubDirC++Flags $(defines) ;
9}
10
11# If defined allows to run applications without the app server
12# -- needed until the app server runs on our kernel.
13RUN_WITHOUT_APP_SERVER ?= 0 ;
14if $(RUN_WITHOUT_APP_SERVER) != 0 {
15	local defines = [ FDefines RUN_WITHOUT_APP_SERVER ] ;
16	SubDirCcFlags $(defines) ;
17	SubDirC++Flags $(defines) ;
18}
19
20UsePrivateHeaders [ FDirName kernel util ] ;  # For KMessage.h
21UsePrivateHeaders syslog_daemon ;             # For syslog.cpp
22
23# Build our libbe.so
24
25AddResources libbe.so : libbe_version.rdef ;
26
27SharedLibrary libbe.so :
28	KMessage.cpp
29	:
30	<libbe>app_kit.o
31	<libbe>interface_kit.o
32	<libbe>storage_kit.o
33	<libbe>storage_diskdevice_kit.o
34	<libbe>support_kit.o
35
36	libroot.so	# make sure it links against our libroot.so
37	$(TARGET_LIBSTDC++)
38;
39
40# Build libbe_haiku.so
41
42SetSupportedPlatformsForTarget libbe_haiku.so : libbe_test ;
43
44if $(TARGET_PLATFORM) = libbe_test {
45	local syslog = [ FGristFiles syslog.o ] ;
46	# Remove _NO_INLINE_ASM from the defines for syslog.cpp. Otherwise we get
47	# references to tls_get/set() etc. that don't exist under BeOS.
48	TARGET_DEFINES on $(syslog)
49		= [ on $(syslog) FFilter $(TARGET_DEFINES) : _NO_INLINE_ASM ] ;
50
51	# We need to use our <syslog.h>, because the syslog() prototype differs
52	# from the BeOS one.
53	TARGET_DEFINES on $(syslog) += _SYS_LOG_H ;
54	TARGET_C++FLAGS on $(syslog) = [ on $(syslog) return $(TARGET_C++FLAGS) ]
55		-include [ FDirName $(HAIKU_TOP) headers posix syslog.h ] ;
56}
57
58SharedLibrary libbe_haiku.so :
59	KMessage.cpp
60	syslog.cpp
61	:
62	<libbe>app_kit.o
63	<libbe>interface_kit.o
64	<libbe>storage_kit.o
65	<libbe>support_kit.o
66
67	libbeadapter.so
68	net
69	$(TARGET_LIBSTDC++)
70;
71
72SEARCH on [ FGristFiles KMessage.cpp ]
73	= [ FDirName $(HAIKU_TOP) src system kernel messaging ] ;
74
75SEARCH on [ FGristFiles syslog.cpp ]
76	= [ FDirName $(HAIKU_TOP) src system libroot posix ] ;
77
78
79SubInclude HAIKU_TOP src kits app ;
80SubInclude HAIKU_TOP src kits debug ;
81SubInclude HAIKU_TOP src kits device ;
82SubInclude HAIKU_TOP src kits game ;
83SubInclude HAIKU_TOP src kits interface ;
84SubInclude HAIKU_TOP src kits mail ;
85SubInclude HAIKU_TOP src kits media ;
86SubInclude HAIKU_TOP src kits midi ;
87SubInclude HAIKU_TOP src kits midi2 ;
88SubInclude HAIKU_TOP src kits network ;
89SubInclude HAIKU_TOP src kits opengl ;
90SubInclude HAIKU_TOP src kits screensaver ;
91SubInclude HAIKU_TOP src kits storage ;
92SubInclude HAIKU_TOP src kits support ;
93SubInclude HAIKU_TOP src kits textencoding ;
94SubInclude HAIKU_TOP src kits tracker ;
95SubInclude HAIKU_TOP src kits translation ;
96