xref: /haiku/src/tests/servers/app/Jamfile (revision 991dadd6324f7b7a68e94743a39ebae789823228)
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 ] ;
50SEARCH_SOURCE += [ FDirName $(appServerDir) stackandtile ] ;
51
52SharedLibrary libhwinterface.so :
53	BBitmapBuffer.cpp
54	DWindowBuffer.cpp
55	HWInterface.cpp
56	RGBColor.cpp
57	UpdateQueue.cpp
58
59	: libtestappserver.so
60;
61
62
63# The reason for this is that libhwinterfaceimpl.so needs to link against
64# libbe *first*, but simply adding it to the library list would add it to
65# LINKLIBS which is always appended after NEEDLIBS in the command line.
66LINKFLAGS on libhwinterfaceimpl.so ?= $(LINKFLAGS) ;
67LINKFLAGS on libhwinterfaceimpl.so += -lbe ;
68
69SharedLibrary libhwinterfaceimpl.so :
70	ViewHWInterface.cpp
71	DWindowHWInterface.cpp
72	MultiLocker.cpp
73
74#	trace.c
75	: libhwinterface.so
76;
77
78local decorator_src =
79	DecorManager.cpp
80	Decorator.cpp
81	DefaultDecorator.cpp
82	DefaultWindowBehaviour.cpp
83	MagneticBorder.cpp
84	TabDecorator.cpp
85	WindowBehaviour.cpp
86	;
87
88local font_src =
89	FontCache.cpp
90	FontCacheEntry.cpp
91	FontEngine.cpp
92	FontFamily.cpp
93	FontManager.cpp
94	FontStyle.cpp
95	;
96
97# These files are shared between the test_app_server and the libhwintreface, so
98# they can talk together.
99SharedLibrary libtestappserver.so :
100	Angle.cpp
101	ClientMemoryAllocator.cpp
102	CursorData.cpp
103	CursorManager.cpp
104	CursorSet.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	MessageLooper.cpp
132
133	# Decorator
134	$(decorator_src)
135
136	# Manager Classes
137	BitmapManager.cpp
138	InputManager.cpp
139	ScreenManager.cpp
140
141	AppServer.cpp
142	Desktop.cpp
143	ServerApp.cpp
144	ServerWindow.cpp
145
146	# DrawingEngine Classes
147#	AccelerantBuffer.cpp
148#	AccelerantHWInterface.cpp
149	BitmapBuffer.cpp
150	BitmapDrawingEngine.cpp
151	drawing_support.cpp
152	MallocBuffer.cpp
153
154	AlphaMask.cpp
155	BitmapHWInterface.cpp
156	DesktopSettings.cpp
157	DrawingContext.cpp
158	OffscreenServerWindow.cpp
159	OffscreenWindow.cpp
160	RegionPool.cpp
161	Screen.cpp
162	ScreenConfigurations.cpp
163	ServerPicture.cpp
164	View.cpp
165	VirtualScreen.cpp
166	Window.cpp
167	WindowList.cpp
168	Workspace.cpp
169	WorkspacesView.cpp
170
171	# stack and tile
172	SATDecorator.cpp
173	SATGroup.cpp
174	SATWindow.cpp
175	StackAndTile.cpp
176	Stacking.cpp
177	Tiling.cpp
178	# libraries
179	: be libpainter.a libagg.a liblinprog.a libtextencoding.so libshared.a
180	[ BuildFeatureAttribute freetype : library ]
181;
182
183Includes [ FGristFiles AppServer.cpp BitmapManager.cpp
184	ClientMemoryAllocator.cpp Desktop.cpp DesktopSettings.cpp
185	DrawState.cpp DrawingContext.cpp DrawingEngine.cpp ServerApp.cpp
186	ServerBitmap.cpp ServerCursor.cpp ServerFont.cpp ServerPicture.cpp
187	ServerWindow.cpp View.cpp Window.cpp WorkspacesView.cpp
188	$(decorator_src) $(font_src) ]
189	: [ BuildFeatureAttribute freetype : headers ] ;
190
191
192AddResources test_app_server : test_app_server.rdef ;
193
194Server test_app_server :
195
196	# drawing
197	drawing_support.cpp
198
199	# libraries
200	:
201	[ BuildFeatureAttribute zlib : library ] libtestappserver.so be
202	libhwinterface.so libhwinterfaceimpl.so libtextencoding.so
203	[ BuildFeatureAttribute freetype : library ]
204	$(TARGET_LIBSTDC++) $(TARGET_LIBSUPC++)
205;
206
207# install in the test dir
208HaikuInstall install-test-apps : $(HAIKU_APP_TEST_LIB_DIR)
209	: libtestappserver.so libbe_test.so
210	  libhwinterface.so libhwinterfaceimpl.so libtextencoding.so
211	: tests!apps ;
212
213HaikuInstall install-test-apps : $(HAIKU_APP_TEST_DIR) : test_app_server
214	: tests!apps ;
215
216} # if $(TARGET_PLATFORM) = libbe_test
217
218SubInclude HAIKU_TOP src tests servers app archived_view ;
219SubInclude HAIKU_TOP src tests servers app async_drawing ;
220SubInclude HAIKU_TOP src tests servers app avoid_focus ;
221SubInclude HAIKU_TOP src tests servers app benchmark ;
222SubInclude HAIKU_TOP src tests servers app bitmap_bounds ;
223SubInclude HAIKU_TOP src tests servers app bitmap_drawing ;
224SubInclude HAIKU_TOP src tests servers app code_to_name ;
225SubInclude HAIKU_TOP src tests servers app clip_to_picture ;
226SubInclude HAIKU_TOP src tests servers app constrain_clipping_region ;
227SubInclude HAIKU_TOP src tests servers app copy_bits ;
228SubInclude HAIKU_TOP src tests servers app cursor_test ;
229SubInclude HAIKU_TOP src tests servers app desktop_window ;
230SubInclude HAIKU_TOP src tests servers app draw_after_children ;
231SubInclude HAIKU_TOP src tests servers app draw_string_offsets ;
232SubInclude HAIKU_TOP src tests servers app drawing_debugger ;
233SubInclude HAIKU_TOP src tests servers app drawing_modes ;
234SubInclude HAIKU_TOP src tests servers app event_mask ;
235SubInclude HAIKU_TOP src tests servers app find_view ;
236SubInclude HAIKU_TOP src tests servers app following ;
237SubInclude HAIKU_TOP src tests servers app font_spacing ;
238SubInclude HAIKU_TOP src tests servers app hide_and_show ;
239SubInclude HAIKU_TOP src tests servers app idle_test ;
240SubInclude HAIKU_TOP src tests servers app lagging_get_mouse ;
241SubInclude HAIKU_TOP src tests servers app lock_focus ;
242SubInclude HAIKU_TOP src tests servers app look_and_feel ;
243SubInclude HAIKU_TOP src tests servers app menu_crash ;
244SubInclude HAIKU_TOP src tests servers app no_pointer_history ;
245SubInclude HAIKU_TOP src tests servers app painter ;
246SubInclude HAIKU_TOP src tests servers app playground ;
247SubInclude HAIKU_TOP src tests servers app pulsed_drawing ;
248SubInclude HAIKU_TOP src tests servers app regularapps ;
249SubInclude HAIKU_TOP src tests servers app resize_limits ;
250SubInclude HAIKU_TOP src tests servers app scrollbar ;
251SubInclude HAIKU_TOP src tests servers app scrolling ;
252SubInclude HAIKU_TOP src tests servers app shape_test ;
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 view_state ;
258SubInclude HAIKU_TOP src tests servers app view_transit ;
259SubInclude HAIKU_TOP src tests servers app window_creation ;
260SubInclude HAIKU_TOP src tests servers app window_invalidation ;
261SubInclude HAIKU_TOP src tests servers app workspace_activated ;
262SubInclude HAIKU_TOP src tests servers app workspace_switcher ;
263