xref: /haiku/src/tests/servers/app/Jamfile (revision b247f935d133a42c427cad8a759a1bf2f65bc290)
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	DelayedMessage.cpp
105	DesktopListener.cpp
106	DirectWindowInfo.cpp
107	DrawingEngine.cpp
108	DrawState.cpp
109	$(font_src)
110	GlobalSubpixelSettings.cpp
111	HashTable.cpp
112	IntPoint.cpp
113	IntRect.cpp
114	MultiLocker.cpp
115	Overlay.cpp
116	RGBColor.cpp
117	ServerBitmap.cpp
118	ServerCursor.cpp
119	ServerFont.cpp
120	SystemPalette.cpp
121
122	# drawing
123	PatternHandler.cpp
124
125#	trace.c
126
127	# Misc. Sources
128	ProfileMessageSupport.cpp
129	EventDispatcher.cpp
130	EventStream.cpp
131	TestServerLoopAdapter.cpp
132	MessageLooper.cpp
133
134	# Decorator
135	$(decorator_src)
136
137	# Manager Classes
138	BitmapManager.cpp
139	InputManager.cpp
140	ScreenManager.cpp
141
142	AppServer.cpp
143	Desktop.cpp
144	ServerApp.cpp
145	ServerWindow.cpp
146
147	# DrawingEngine Classes
148#	AccelerantBuffer.cpp
149#	AccelerantHWInterface.cpp
150	BitmapBuffer.cpp
151	BitmapDrawingEngine.cpp
152	drawing_support.cpp
153	MallocBuffer.cpp
154
155	AlphaMask.cpp
156	AlphaMaskCache.cpp
157	BitmapHWInterface.cpp
158	Canvas.cpp
159	DesktopSettings.cpp
160	Layer.cpp
161	OffscreenServerWindow.cpp
162	OffscreenWindow.cpp
163	PictureBoundingBoxPlayer.cpp
164	RegionPool.cpp
165	Screen.cpp
166	ScreenConfigurations.cpp
167	ServerPicture.cpp
168	View.cpp
169	VirtualScreen.cpp
170	Window.cpp
171	WindowList.cpp
172	Workspace.cpp
173	WorkspacesView.cpp
174
175	# libraries
176	: be libpainter.a libagg.a libtextencoding.so shared libstackandtile.a
177	liblinprog.a
178	[ BuildFeatureAttribute freetype : library ]
179;
180
181Includes [ FGristFiles AppServer.cpp BitmapManager.cpp Canvas.cpp
182	ClientMemoryAllocator.cpp Desktop.cpp DesktopSettings.cpp
183	DrawState.cpp DrawingEngine.cpp ServerApp.cpp
184	ServerBitmap.cpp ServerCursor.cpp ServerFont.cpp ServerPicture.cpp
185	ServerWindow.cpp View.cpp Window.cpp WorkspacesView.cpp
186	$(decorator_src) $(font_src) ]
187	: [ BuildFeatureAttribute freetype : headers ] ;
188
189
190AddResources test_app_server : test_app_server.rdef ;
191
192Server test_app_server :
193
194	# drawing
195	drawing_support.cpp
196
197	# libraries
198	:
199	[ BuildFeatureAttribute zlib : library ] libtestappserver.so be
200	libhwinterface.so libhwinterfaceimpl.so libtextencoding.so
201	[ BuildFeatureAttribute freetype : library ]
202	[ TargetLibstdc++ ] [ TargetLibsupc++ ]
203;
204
205# install in the test dir
206HaikuInstall install-test-apps : $(HAIKU_APP_TEST_LIB_DIR)
207	: libtestappserver.so libbe_test.so
208	libhwinterface.so libhwinterfaceimpl.so libtextencoding.so
209	: tests!apps ;
210
211HaikuInstall install-test-apps : $(HAIKU_APP_TEST_DIR) : test_app_server
212	: tests!apps ;
213
214} # if $(TARGET_PLATFORM) = libbe_test
215
216SubInclude HAIKU_TOP src tests servers app archived_view ;
217SubInclude HAIKU_TOP src tests servers app async_drawing ;
218SubInclude HAIKU_TOP src tests servers app avoid_focus ;
219SubInclude HAIKU_TOP src tests servers app benchmark ;
220SubInclude HAIKU_TOP src tests servers app bitmap_bounds ;
221SubInclude HAIKU_TOP src tests servers app bitmap_drawing ;
222SubInclude HAIKU_TOP src tests servers app code_to_name ;
223SubInclude HAIKU_TOP src tests servers app clip_to_picture ;
224SubInclude HAIKU_TOP src tests servers app constrain_clipping_region ;
225SubInclude HAIKU_TOP src tests servers app copy_bits ;
226SubInclude HAIKU_TOP src tests servers app cursor_test ;
227SubInclude HAIKU_TOP src tests servers app desktop_window ;
228SubInclude HAIKU_TOP src tests servers app draw_after_children ;
229SubInclude HAIKU_TOP src tests servers app draw_string_offsets ;
230SubInclude HAIKU_TOP src tests servers app drawing_debugger ;
231SubInclude HAIKU_TOP src tests servers app drawing_modes ;
232SubInclude HAIKU_TOP src tests servers app event_mask ;
233SubInclude HAIKU_TOP src tests servers app find_view ;
234SubInclude HAIKU_TOP src tests servers app following ;
235SubInclude HAIKU_TOP src tests servers app font_spacing ;
236SubInclude HAIKU_TOP src tests servers app gradients ;
237SubInclude HAIKU_TOP src tests servers app hide_and_show ;
238SubInclude HAIKU_TOP src tests servers app idle_test ;
239SubInclude HAIKU_TOP src tests servers app lagging_get_mouse ;
240SubInclude HAIKU_TOP src tests servers app lock_focus ;
241SubInclude HAIKU_TOP src tests servers app look_and_feel ;
242SubInclude HAIKU_TOP src tests servers app menu_crash ;
243SubInclude HAIKU_TOP src tests servers app no_pointer_history ;
244SubInclude HAIKU_TOP src tests servers app painter ;
245SubInclude HAIKU_TOP src tests servers app playground ;
246SubInclude HAIKU_TOP src tests servers app pulsed_drawing ;
247SubInclude HAIKU_TOP src tests servers app regularapps ;
248SubInclude HAIKU_TOP src tests servers app resize_limits ;
249SubInclude HAIKU_TOP src tests servers app scrollbar ;
250SubInclude HAIKU_TOP src tests servers app scrolling ;
251SubInclude HAIKU_TOP src tests servers app shape_test ;
252SubInclude HAIKU_TOP src tests servers app stacktile ;
253SubInclude HAIKU_TOP src tests servers app statusbar ;
254SubInclude HAIKU_TOP src tests servers app stress_test ;
255SubInclude HAIKU_TOP src tests servers app textview ;
256SubInclude HAIKU_TOP src tests servers app transformation ;
257SubInclude HAIKU_TOP src tests servers app unit_tests ;
258SubInclude HAIKU_TOP src tests servers app view_state ;
259SubInclude HAIKU_TOP src tests servers app view_transit ;
260SubInclude HAIKU_TOP src tests servers app window_creation ;
261SubInclude HAIKU_TOP src tests servers app window_invalidation ;
262SubInclude HAIKU_TOP src tests servers app workspace_activated ;
263SubInclude HAIKU_TOP src tests servers app workspace_switcher ;
264