xref: /haiku/src/tests/servers/app/Jamfile (revision 5e96d7d537fbec23bad4ae9b4c8e7b02e769f0c6)
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	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	# stack and tile
171	SATDecorator.cpp
172	SATGroup.cpp
173	SATWindow.cpp
174	StackAndTile.cpp
175	Stacking.cpp
176	Tiling.cpp
177	# libraries
178	: be libpainter.a libagg.a liblinprog.a libtextencoding.so libshared.a
179	[ BuildFeatureAttribute freetype : library ]
180;
181
182Includes [ FGristFiles AppServer.cpp BitmapManager.cpp
183	ClientMemoryAllocator.cpp Desktop.cpp DesktopSettings.cpp
184	DrawState.cpp DrawingContext.cpp DrawingEngine.cpp ServerApp.cpp
185	ServerBitmap.cpp ServerCursor.cpp ServerFont.cpp ServerPicture.cpp
186	ServerWindow.cpp View.cpp Window.cpp WorkspacesView.cpp
187	$(decorator_src) $(font_src) ]
188	: [ BuildFeatureAttribute freetype : headers ] ;
189
190
191AddResources test_app_server : test_app_server.rdef ;
192
193Server test_app_server :
194
195	# drawing
196	drawing_support.cpp
197
198	# libraries
199	:
200	[ BuildFeatureAttribute zlib : library ] libtestappserver.so be
201	libhwinterface.so libhwinterfaceimpl.so libtextencoding.so
202	[ BuildFeatureAttribute freetype : library ]
203	$(TARGET_LIBSTDC++) $(TARGET_LIBSUPC++)
204;
205
206# install in the test dir
207HaikuInstall install-test-apps : $(HAIKU_APP_TEST_LIB_DIR)
208	: libtestappserver.so libbe_test.so
209	  libhwinterface.so libhwinterfaceimpl.so libtextencoding.so
210	: tests!apps ;
211
212HaikuInstall install-test-apps : $(HAIKU_APP_TEST_DIR) : test_app_server
213	: tests!apps ;
214
215} # if $(TARGET_PLATFORM) = libbe_test
216
217SubInclude HAIKU_TOP src tests servers app archived_view ;
218SubInclude HAIKU_TOP src tests servers app async_drawing ;
219SubInclude HAIKU_TOP src tests servers app avoid_focus ;
220SubInclude HAIKU_TOP src tests servers app benchmark ;
221SubInclude HAIKU_TOP src tests servers app bitmap_bounds ;
222SubInclude HAIKU_TOP src tests servers app bitmap_drawing ;
223SubInclude HAIKU_TOP src tests servers app code_to_name ;
224SubInclude HAIKU_TOP src tests servers app clip_to_picture ;
225SubInclude HAIKU_TOP src tests servers app constrain_clipping_region ;
226SubInclude HAIKU_TOP src tests servers app copy_bits ;
227SubInclude HAIKU_TOP src tests servers app cursor_test ;
228SubInclude HAIKU_TOP src tests servers app desktop_window ;
229SubInclude HAIKU_TOP src tests servers app draw_after_children ;
230SubInclude HAIKU_TOP src tests servers app draw_string_offsets ;
231SubInclude HAIKU_TOP src tests servers app drawing_debugger ;
232SubInclude HAIKU_TOP src tests servers app drawing_modes ;
233SubInclude HAIKU_TOP src tests servers app event_mask ;
234SubInclude HAIKU_TOP src tests servers app find_view ;
235SubInclude HAIKU_TOP src tests servers app following ;
236SubInclude HAIKU_TOP src tests servers app hide_and_show ;
237SubInclude HAIKU_TOP src tests servers app idle_test ;
238SubInclude HAIKU_TOP src tests servers app lagging_get_mouse ;
239SubInclude HAIKU_TOP src tests servers app lock_focus ;
240SubInclude HAIKU_TOP src tests servers app look_and_feel ;
241SubInclude HAIKU_TOP src tests servers app menu_crash ;
242SubInclude HAIKU_TOP src tests servers app no_pointer_history ;
243SubInclude HAIKU_TOP src tests servers app painter ;
244SubInclude HAIKU_TOP src tests servers app playground ;
245SubInclude HAIKU_TOP src tests servers app pulsed_drawing ;
246SubInclude HAIKU_TOP src tests servers app regularapps ;
247SubInclude HAIKU_TOP src tests servers app resize_limits ;
248SubInclude HAIKU_TOP src tests servers app scrollbar ;
249SubInclude HAIKU_TOP src tests servers app scrolling ;
250SubInclude HAIKU_TOP src tests servers app shape_test ;
251SubInclude HAIKU_TOP src tests servers app statusbar ;
252SubInclude HAIKU_TOP src tests servers app stress_test ;
253SubInclude HAIKU_TOP src tests servers app textview ;
254SubInclude HAIKU_TOP src tests servers app transformation ;
255SubInclude HAIKU_TOP src tests servers app view_state ;
256SubInclude HAIKU_TOP src tests servers app view_transit ;
257SubInclude HAIKU_TOP src tests servers app window_creation ;
258SubInclude HAIKU_TOP src tests servers app window_invalidation ;
259SubInclude HAIKU_TOP src tests servers app workspace_activated ;
260SubInclude HAIKU_TOP src tests servers app workspace_switcher ;
261