xref: /haiku/src/tests/servers/app/Jamfile (revision 93aeb8c3bc3f13cb1f282e3e749258a23790d947)
1SubDir HAIKU_TOP src tests servers app ;
2
3SetSubDirSupportedPlatforms libbe_test ;
4
5# No need to define any of those targets, when not building for libbe_test
6if $(TARGET_PLATFORM) = libbe_test {
7
8UseLibraryHeaders agg png zlib ;
9UsePrivateHeaders app input interface shared [ FDirName servers app ] ;
10
11local appServerDir = [ FDirName $(HAIKU_TOP) src servers app ] ;
12
13UseHeaders [ FDirName $(appServerDir) drawing ] ;
14UseHeaders [ FDirName $(appServerDir) drawing Painter ] ;
15UseHeaders [ FDirName $(appServerDir) drawing Painter drawing_modes ] ;
16UseHeaders [ FDirName $(appServerDir) drawing Painter font_support ] ;
17UseFreeTypeHeaders ;
18
19# This overrides the definitions in private/servers/app/ServerConfig.h
20local defines = [ FDefines TEST_MODE=1 ] ;
21
22SubDirCcFlags $(defines) ;
23SubDirC++Flags $(defines) ;
24
25SEARCH_SOURCE += $(appServerDir) [ FDirName $(appServerDir) drawing ] ;
26
27SharedLibrary libhwinterface.so :
28	BBitmapBuffer.cpp
29	HWInterface.cpp
30	MultiLocker.cpp
31
32	: libhaikuappserver.so be
33;
34
35
36# The reason for this is that libhwinterfaceimpl.so needs to link against
37# libbe *first*, but simply adding it to the library list would add it to
38# LINKLIBS which is always appended after NEEDLIBS in the command line.
39LINKFLAGS on libhwinterfaceimpl.so ?= $(LINKFLAGS) ;
40LINKFLAGS on libhwinterfaceimpl.so += -lbe ;
41
42SharedLibrary libhwinterfaceimpl.so :
43	fake_input_server.cpp
44	ViewHWInterface.cpp
45
46	: be libhwinterface.so
47;
48
49SharedLibrary libhaikuappserver.so :
50	Angle.cpp
51	BGet++.cpp
52	ColorSet.cpp
53	CursorData.cpp
54	CursorSet.cpp
55	DesktopSettings.cpp
56	DrawState.cpp
57	FontFamily.cpp
58	HashTable.cpp
59	RGBColor.cpp
60	ServerBitmap.cpp
61	ServerCursor.cpp
62	ServerFont.cpp
63	FontManager.cpp
64	SystemPalette.cpp
65	Utils.cpp
66
67	# drawing
68	PatternHandler.cpp
69
70	# libraries
71	:
72	be libtextencoding.so libfreetype.so
73;
74
75AddResources haiku_app_server : app_server.rdef ;
76
77Server haiku_app_server :
78	# Misc. Sources
79	Decorator.cpp
80	DebugInfoManager.cpp
81	SubWindowList.cpp
82	PNGDump.cpp
83	RAMLinkMsgReader.cpp
84	MessageLooper.cpp
85
86	# Manager Classes
87	BitmapManager.cpp
88	CursorManager.cpp
89	DecorManager.cpp
90	ScreenManager.cpp
91
92	AppServer.cpp
93	Desktop.cpp
94
95	ServerApp.cpp
96	ServerWindow.cpp
97
98	# DrawingEngine Classes
99	AccelerantBuffer.cpp
100	AccelerantHWInterface.cpp
101	BitmapBuffer.cpp
102	DrawingEngine.cpp
103	MallocBuffer.cpp
104	UpdateQueue.cpp
105
106	VirtualScreen.cpp
107	BitmapHWInterface.cpp
108	DefaultDecorator.cpp
109	Layer.cpp
110	OffscreenServerWindow.cpp
111	OffscreenWinBorder.cpp
112	RootLayer.cpp
113	ServerPicture.cpp
114	ServerScreen.cpp
115	WinBorder.cpp
116	Workspace.cpp
117	WorkspacesLayer.cpp
118
119	# libraries
120	:
121	z libpng.so libhaikuappserver.so
122	libpainter.a be
123	libhwinterface.so libhwinterfaceimpl.so
124	libagg.a libfreetype.so libtextencoding.so
125;
126
127# install in the test dir
128HaikuInstall install-test-apps : $(HAIKU_APP_TEST_LIB_DIR)
129	: libpng.so libhaikuappserver.so libbe_haiku.so libhwinterface.so
130	  libhwinterfaceimpl.so libfreetype.so libtextencoding.so
131	: tests!apps ;
132
133HaikuInstall install-test-apps : $(HAIKU_APP_TEST_DIR) : haiku_app_server
134	: tests!apps ;
135
136} # if $(TARGET_PLATFORM) = libbe_test
137
138SubInclude HAIKU_TOP src tests servers app bitmap_drawing ;
139SubInclude HAIKU_TOP src tests servers app copy_bits ;
140SubInclude HAIKU_TOP src tests servers app painter ;
141SubInclude HAIKU_TOP src tests servers app playground ;
142SubInclude HAIKU_TOP src tests servers app resize_limits ;
143SubInclude HAIKU_TOP src tests servers app scrolling ;
144SubInclude HAIKU_TOP src tests servers app textview ;
145SubInclude HAIKU_TOP src tests servers app regularapps ;
146SubInclude HAIKU_TOP src tests servers app view_state ;
147