xref: /haiku/src/tests/servers/app/Jamfile (revision 9bd024edbe5d06358e4285100a3240e4d138a712)
1SubDir HAIKU_TOP src tests servers app ;
2
3UsePrivateHeaders app graphics input interface shared storage ;
4
5SimpleTest app_server_debug :
6	app_server_debug.cpp
7	: be
8;
9
10SetSubDirSupportedPlatforms libbe_test ;
11
12# No need to define any of those targets, when not building for libbe_test
13if $(TARGET_PLATFORM) = libbe_test {
14
15UseLibraryHeaders agg png ;
16UseBuildFeatureHeaders zlib ;
17UsePrivateHeaders [ FDirName graphics common ] ;
18
19# headers/build/private/kernel is needed for safemode.h and syscalls.h.
20# headers/private/kernel for the util/* stuff.
21UseHeaders [ FDirName $(HAIKU_TOP) headers build private kernel ] : true ;
22UsePrivateHeaders kernel support ;
23
24local appServerDir = [ FDirName $(HAIKU_TOP) src servers app ] ;
25
26UseHeaders [ FDirName $(appServerDir) decorator ] ;
27UseHeaders [ FDirName $(appServerDir) drawing ] ;
28UseHeaders [ FDirName $(appServerDir) drawing interface html5 ] ;
29UseHeaders [ FDirName $(appServerDir) drawing interface remote ] ;
30UseHeaders [ FDirName $(appServerDir) drawing Painter ] ;
31UseHeaders [ FDirName $(appServerDir) drawing Painter drawing_modes ] ;
32UseHeaders [ FDirName $(appServerDir) drawing Painter font_support ] ;
33UseHeaders [ FDirName $(appServerDir) font ] ;
34UseHeaders [ FDirName $(appServerDir) stackandtile ] ;
35UseBuildFeatureHeaders freetype ;
36UseLibraryHeaders agg lp_solve linprog ;
37
38# This overrides the definitions in private/servers/app/ServerConfig.h
39local defines = [ FDefines TEST_MODE=1 ] ;
40	# USE_DIRECT_WINDOW_TEST_MODE=1
41
42SubDirCcFlags $(defines) ; #-finstrument-functions ; #-fcheck-memory-usage -D_NO_INLINE_ASM ;
43SubDirC++Flags $(defines) ; #-finstrument-functions ; #-fcheck-memory-usage -D_NO_INLINE_ASM ;
44
45SEARCH_SOURCE += $(appServerDir) ;
46SEARCH_SOURCE += [ FDirName $(appServerDir) decorator ] ;
47SEARCH_SOURCE += [ FDirName $(appServerDir) drawing ] ;
48SEARCH_SOURCE += [ FDirName $(appServerDir) drawing Painter ] ;
49SEARCH_SOURCE += [ FDirName $(appServerDir) font ] ;
50
51SharedLibrary libhwinterface.so :
52	BBitmapBuffer.cpp
53	DWindowBuffer.cpp
54	HWInterface.cpp
55	RGBColor.cpp
56	UpdateQueue.cpp
57
58	: libtestappserver.so
59;
60
61
62# The reason for this is that libhwinterfaceimpl.so needs to link against
63# libbe *first*, but simply adding it to the library list would add it to
64# LINKLIBS which is always appended after NEEDLIBS in the command line.
65LINKFLAGS on libhwinterfaceimpl.so ?= $(LINKFLAGS) ;
66LINKFLAGS on libhwinterfaceimpl.so += -lbe ;
67
68SharedLibrary libhwinterfaceimpl.so :
69	ViewHWInterface.cpp
70	DWindowHWInterface.cpp
71	MultiLocker.cpp
72
73#	trace.c
74	: libhwinterface.so
75;
76
77local decorator_src =
78	DecorManager.cpp
79	Decorator.cpp
80	DefaultDecorator.cpp
81	DefaultWindowBehaviour.cpp
82	MagneticBorder.cpp
83	TabDecorator.cpp
84	WindowBehaviour.cpp
85	;
86
87local font_src =
88	FontCache.cpp
89	FontCacheEntry.cpp
90	FontEngine.cpp
91	FontFamily.cpp
92	FontManager.cpp
93	FontStyle.cpp
94	;
95
96# These files are shared between the test_app_server and the libhwintreface, so
97# they can talk together.
98SharedLibrary libtestappserver.so :
99	Angle.cpp
100	ClientMemoryAllocator.cpp
101	CursorData.cpp
102	CursorManager.cpp
103	CursorSet.cpp
104	DesktopListener.cpp
105	DirectWindowInfo.cpp
106	DrawingEngine.cpp
107	DrawState.cpp
108	$(font_src)
109	GlobalSubpixelSettings.cpp
110	HashTable.cpp
111	IntPoint.cpp
112	IntRect.cpp
113	MultiLocker.cpp
114	Overlay.cpp
115	RGBColor.cpp
116	ServerBitmap.cpp
117	ServerCursor.cpp
118	ServerFont.cpp
119	SystemPalette.cpp
120
121	# drawing
122	PatternHandler.cpp
123
124#	trace.c
125
126	# Misc. Sources
127	ProfileMessageSupport.cpp
128	EventDispatcher.cpp
129	EventStream.cpp
130	MessageLooper.cpp
131
132	# Decorator
133	$(decorator_src)
134
135	# Manager Classes
136	BitmapManager.cpp
137	InputManager.cpp
138	ScreenManager.cpp
139
140	AppServer.cpp
141	Desktop.cpp
142	ServerApp.cpp
143	ServerWindow.cpp
144
145	# DrawingEngine Classes
146#	AccelerantBuffer.cpp
147#	AccelerantHWInterface.cpp
148	BitmapBuffer.cpp
149	BitmapDrawingEngine.cpp
150	drawing_support.cpp
151	MallocBuffer.cpp
152
153	AlphaMask.cpp
154	BitmapHWInterface.cpp
155	DesktopSettings.cpp
156	DrawingContext.cpp
157	OffscreenServerWindow.cpp
158	OffscreenWindow.cpp
159	RegionPool.cpp
160	Screen.cpp
161	ScreenConfigurations.cpp
162	ServerPicture.cpp
163	View.cpp
164	VirtualScreen.cpp
165	Window.cpp
166	WindowList.cpp
167	Workspace.cpp
168	WorkspacesView.cpp
169
170	# libraries
171	: be libpainter.a libagg.a libtextencoding.so libshared.a libstackandtile.a
172	liblinprog.a
173	[ BuildFeatureAttribute freetype : library ]
174;
175
176Includes [ FGristFiles AppServer.cpp BitmapManager.cpp
177	ClientMemoryAllocator.cpp Desktop.cpp DesktopSettings.cpp
178	DrawState.cpp DrawingContext.cpp DrawingEngine.cpp ServerApp.cpp
179	ServerBitmap.cpp ServerCursor.cpp ServerFont.cpp ServerPicture.cpp
180	ServerWindow.cpp View.cpp Window.cpp WorkspacesView.cpp
181	$(decorator_src) $(font_src) ]
182	: [ BuildFeatureAttribute freetype : headers ] ;
183
184
185AddResources test_app_server : test_app_server.rdef ;
186
187Server test_app_server :
188
189	# drawing
190	drawing_support.cpp
191
192	# libraries
193	:
194	[ BuildFeatureAttribute zlib : library ] libtestappserver.so be
195	libhwinterface.so libhwinterfaceimpl.so libtextencoding.so
196	[ BuildFeatureAttribute freetype : library ]
197	[ TargetLibstdc++ ] [ TargetLibsupc++ ]
198;
199
200# install in the test dir
201HaikuInstall install-test-apps : $(HAIKU_APP_TEST_LIB_DIR)
202	: libtestappserver.so libbe_test.so
203	libhwinterface.so libhwinterfaceimpl.so libtextencoding.so
204	: tests!apps ;
205
206HaikuInstall install-test-apps : $(HAIKU_APP_TEST_DIR) : test_app_server
207	: tests!apps ;
208
209} # if $(TARGET_PLATFORM) = libbe_test
210
211SubInclude HAIKU_TOP src tests servers app archived_view ;
212SubInclude HAIKU_TOP src tests servers app async_drawing ;
213SubInclude HAIKU_TOP src tests servers app avoid_focus ;
214SubInclude HAIKU_TOP src tests servers app benchmark ;
215SubInclude HAIKU_TOP src tests servers app bitmap_bounds ;
216SubInclude HAIKU_TOP src tests servers app bitmap_drawing ;
217SubInclude HAIKU_TOP src tests servers app code_to_name ;
218SubInclude HAIKU_TOP src tests servers app clip_to_picture ;
219SubInclude HAIKU_TOP src tests servers app constrain_clipping_region ;
220SubInclude HAIKU_TOP src tests servers app copy_bits ;
221SubInclude HAIKU_TOP src tests servers app cursor_test ;
222SubInclude HAIKU_TOP src tests servers app desktop_window ;
223SubInclude HAIKU_TOP src tests servers app draw_after_children ;
224SubInclude HAIKU_TOP src tests servers app draw_string_offsets ;
225SubInclude HAIKU_TOP src tests servers app drawing_debugger ;
226SubInclude HAIKU_TOP src tests servers app drawing_modes ;
227SubInclude HAIKU_TOP src tests servers app event_mask ;
228SubInclude HAIKU_TOP src tests servers app find_view ;
229SubInclude HAIKU_TOP src tests servers app following ;
230SubInclude HAIKU_TOP src tests servers app font_spacing ;
231SubInclude HAIKU_TOP src tests servers app gradients ;
232SubInclude HAIKU_TOP src tests servers app hide_and_show ;
233SubInclude HAIKU_TOP src tests servers app idle_test ;
234SubInclude HAIKU_TOP src tests servers app lagging_get_mouse ;
235SubInclude HAIKU_TOP src tests servers app lock_focus ;
236SubInclude HAIKU_TOP src tests servers app look_and_feel ;
237SubInclude HAIKU_TOP src tests servers app menu_crash ;
238SubInclude HAIKU_TOP src tests servers app no_pointer_history ;
239SubInclude HAIKU_TOP src tests servers app painter ;
240SubInclude HAIKU_TOP src tests servers app playground ;
241SubInclude HAIKU_TOP src tests servers app pulsed_drawing ;
242SubInclude HAIKU_TOP src tests servers app regularapps ;
243SubInclude HAIKU_TOP src tests servers app resize_limits ;
244SubInclude HAIKU_TOP src tests servers app scrollbar ;
245SubInclude HAIKU_TOP src tests servers app scrolling ;
246SubInclude HAIKU_TOP src tests servers app shape_test ;
247SubInclude HAIKU_TOP src tests servers app stacktile ;
248SubInclude HAIKU_TOP src tests servers app statusbar ;
249SubInclude HAIKU_TOP src tests servers app stress_test ;
250SubInclude HAIKU_TOP src tests servers app textview ;
251SubInclude HAIKU_TOP src tests servers app transformation ;
252SubInclude HAIKU_TOP src tests servers app view_state ;
253SubInclude HAIKU_TOP src tests servers app view_transit ;
254SubInclude HAIKU_TOP src tests servers app window_creation ;
255SubInclude HAIKU_TOP src tests servers app window_invalidation ;
256SubInclude HAIKU_TOP src tests servers app workspace_activated ;
257SubInclude HAIKU_TOP src tests servers app workspace_switcher ;
258