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) drawing interface remote ] ; 50SEARCH_SOURCE += [ FDirName $(appServerDir) drawing interface virtual ] ; 51SEARCH_SOURCE += [ FDirName $(appServerDir) font ] ; 52 53SharedLibrary libhwinterface.so : 54 BBitmapBuffer.cpp 55 DWindowBuffer.cpp 56 HWInterface.cpp 57 RGBColor.cpp 58 UpdateQueue.cpp 59 60 NetReceiver.cpp 61 NetSender.cpp 62 RemoteDrawingEngine.cpp 63 RemoteEventStream.cpp 64 RemoteHWInterface.cpp 65 RemoteMessage.cpp 66 StreamingRingBuffer.cpp 67 68 : # will depend on libtestappserver.so 69; 70 71# We include --no-undefined in LINKFLAGS by default, which we can't use here 72# because otherwise we would be trapped in a circular dependency. 73local hwinterfaceLinkFlags ; 74for flag in [ on libhwinterface.so return $(LINKFLAGS) ] { 75 if $(flag) = "--no-undefined" { 76 hwinterfaceLinkFlags += "--allow-shlib-undefined" ; 77 continue ; 78 } 79 hwinterfaceLinkFlags += $(flag) ; 80} 81LINKFLAGS on libhwinterface.so = $(hwinterfaceLinkFlags) ; 82LINKFLAGS on libhwinterface.so += -lnetwork -lbnetapi ; 83 84# libhwinterfaceimpl.so needs to link against libbe *first*, but simply 85# adding it to the library list would add it to LINKLIBS which is always 86# appended after NEEDLIBS in the command line. 87LINKFLAGS on libhwinterfaceimpl.so ?= $(LINKFLAGS) ; 88LINKFLAGS on libhwinterfaceimpl.so += -lbe ; 89 90SharedLibrary libhwinterfaceimpl.so : 91 ViewHWInterface.cpp 92 DWindowHWInterface.cpp 93 MultiLocker.cpp 94 95# libraries 96 : 97 libhwinterface.so 98 [ TargetLibstdc++ ] 99; 100 101local decorator_src = 102 DecorManager.cpp 103 Decorator.cpp 104 DefaultDecorator.cpp 105 DefaultWindowBehaviour.cpp 106 MagneticBorder.cpp 107 TabDecorator.cpp 108 WindowBehaviour.cpp 109 ; 110 111local font_src = 112 AppFontManager.cpp 113 FontCache.cpp 114 FontCacheEntry.cpp 115 FontEngine.cpp 116 FontFamily.cpp 117 FontManager.cpp 118 FontStyle.cpp 119 GlobalFontManager.cpp 120 ; 121 122# These files are shared between the test_app_server and the libhwintreface, so 123# they can talk together. 124SharedLibrary libtestappserver.so : 125 Angle.cpp 126 ClientMemoryAllocator.cpp 127 CursorData.cpp 128 CursorManager.cpp 129 CursorSet.cpp 130 DelayedMessage.cpp 131 DesktopListener.cpp 132 DirectWindowInfo.cpp 133 DrawingEngine.cpp 134 DrawState.cpp 135 $(font_src) 136 GlobalSubpixelSettings.cpp 137 IntPoint.cpp 138 IntRect.cpp 139 MultiLocker.cpp 140 Overlay.cpp 141 RGBColor.cpp 142 ServerBitmap.cpp 143 ServerCursor.cpp 144 ServerFont.cpp 145 SystemPalette.cpp 146 147 # drawing 148 PatternHandler.cpp 149 150# trace.c 151 152 # Misc. Sources 153 ProfileMessageSupport.cpp 154 EventDispatcher.cpp 155 EventStream.cpp 156 TestServerLoopAdapter.cpp 157 MessageLooper.cpp 158 159 # Decorator 160 $(decorator_src) 161 162 # Manager Classes 163 BitmapManager.cpp 164 InputManager.cpp 165 ScreenManager.cpp 166 167 AppServer.cpp 168 Desktop.cpp 169 ServerApp.cpp 170 ServerWindow.cpp 171 172 # DrawingEngine Classes 173# AccelerantBuffer.cpp 174# AccelerantHWInterface.cpp 175 BitmapBuffer.cpp 176 BitmapDrawingEngine.cpp 177 drawing_support.cpp 178 MallocBuffer.cpp 179 180 AlphaMask.cpp 181 AlphaMaskCache.cpp 182 BitmapHWInterface.cpp 183 Canvas.cpp 184 DesktopSettings.cpp 185 Layer.cpp 186 OffscreenServerWindow.cpp 187 OffscreenWindow.cpp 188 PictureBoundingBoxPlayer.cpp 189 RegionPool.cpp 190 Screen.cpp 191 ScreenConfigurations.cpp 192 ServerPicture.cpp 193 View.cpp 194 VirtualScreen.cpp 195 Window.cpp 196 WindowList.cpp 197 Workspace.cpp 198 WorkspacesView.cpp 199 200 # libraries 201 : be libpainter.a libagg.a libtextencoding.so shared libstackandtile.a 202 liblinprog.a libhwinterface.so libhwinterfaceimpl.so 203 [ BuildFeatureAttribute freetype : library ] 204 [ TargetLibstdc++ ] 205; 206 207Includes [ FGristFiles AppServer.cpp BitmapManager.cpp Canvas.cpp 208 ClientMemoryAllocator.cpp Desktop.cpp DesktopSettings.cpp 209 DrawState.cpp DrawingEngine.cpp ServerApp.cpp 210 ServerBitmap.cpp ServerCursor.cpp ServerFont.cpp ServerPicture.cpp 211 ServerWindow.cpp View.cpp Window.cpp WorkspacesView.cpp 212 $(decorator_src) $(font_src) ] 213 : [ BuildFeatureAttribute freetype : headers ] ; 214 215 216AddResources test_app_server : test_app_server.rdef ; 217 218Server test_app_server : 219 220 # drawing 221 drawing_support.cpp 222 223 # libraries 224 : 225 [ BuildFeatureAttribute zlib : library ] libtestappserver.so be 226 libhwinterface.so libhwinterfaceimpl.so libtextencoding.so 227 [ BuildFeatureAttribute freetype : library ] 228 [ TargetLibstdc++ ] [ TargetLibsupc++ ] 229; 230 231# install in the test dir 232HaikuInstall install-test-apps : $(HAIKU_APP_TEST_LIB_DIR) 233 : libtestappserver.so libbe_test.so 234 libhwinterface.so libhwinterfaceimpl.so libtextencoding.so 235 : tests!apps ; 236 237HaikuInstall install-test-apps : $(HAIKU_APP_TEST_DIR) : test_app_server 238 : tests!apps ; 239 240HaikuInstall install-test-apps : $(HAIKU_APP_TEST_DIR) : run.sh 241 : tests!apps ; 242 243} # if $(TARGET_PLATFORM) = libbe_test 244 245SubInclude HAIKU_TOP src tests servers app archived_view ; 246SubInclude HAIKU_TOP src tests servers app async_drawing ; 247SubInclude HAIKU_TOP src tests servers app avoid_focus ; 248SubInclude HAIKU_TOP src tests servers app benchmark ; 249SubInclude HAIKU_TOP src tests servers app bitmap_bounds ; 250SubInclude HAIKU_TOP src tests servers app bitmap_drawing ; 251SubInclude HAIKU_TOP src tests servers app code_to_name ; 252SubInclude HAIKU_TOP src tests servers app clip_to_picture ; 253SubInclude HAIKU_TOP src tests servers app constrain_clipping_region ; 254SubInclude HAIKU_TOP src tests servers app copy_bits ; 255SubInclude HAIKU_TOP src tests servers app cursor_test ; 256SubInclude HAIKU_TOP src tests servers app desktop_window ; 257SubInclude HAIKU_TOP src tests servers app draw_after_children ; 258SubInclude HAIKU_TOP src tests servers app draw_string_offsets ; 259SubInclude HAIKU_TOP src tests servers app drawing_debugger ; 260SubInclude HAIKU_TOP src tests servers app drawing_modes ; 261SubInclude HAIKU_TOP src tests servers app event_mask ; 262SubInclude HAIKU_TOP src tests servers app find_view ; 263SubInclude HAIKU_TOP src tests servers app following ; 264SubInclude HAIKU_TOP src tests servers app font_spacing ; 265SubInclude HAIKU_TOP src tests servers app gradients ; 266SubInclude HAIKU_TOP src tests servers app hide_and_show ; 267SubInclude HAIKU_TOP src tests servers app idle_test ; 268SubInclude HAIKU_TOP src tests servers app inverse_clipping ; 269SubInclude HAIKU_TOP src tests servers app lagging_get_mouse ; 270SubInclude HAIKU_TOP src tests servers app lock_focus ; 271SubInclude HAIKU_TOP src tests servers app look_and_feel ; 272SubInclude HAIKU_TOP src tests servers app menu_crash ; 273SubInclude HAIKU_TOP src tests servers app no_pointer_history ; 274SubInclude HAIKU_TOP src tests servers app painter ; 275SubInclude HAIKU_TOP src tests servers app playground ; 276SubInclude HAIKU_TOP src tests servers app pulsed_drawing ; 277SubInclude HAIKU_TOP src tests servers app regularapps ; 278SubInclude HAIKU_TOP src tests servers app resize_limits ; 279SubInclude HAIKU_TOP src tests servers app scrollbar ; 280SubInclude HAIKU_TOP src tests servers app scrolling ; 281SubInclude HAIKU_TOP src tests servers app shape_test ; 282SubInclude HAIKU_TOP src tests servers app stacktile ; 283SubInclude HAIKU_TOP src tests servers app statusbar ; 284SubInclude HAIKU_TOP src tests servers app stress_test ; 285SubInclude HAIKU_TOP src tests servers app text_rendering ; 286SubInclude HAIKU_TOP src tests servers app textview ; 287SubInclude HAIKU_TOP src tests servers app tiled_bitmap_test ; 288SubInclude HAIKU_TOP src tests servers app transformation ; 289SubInclude HAIKU_TOP src tests servers app unit_tests ; 290SubInclude HAIKU_TOP src tests servers app view_state ; 291SubInclude HAIKU_TOP src tests servers app view_transit ; 292SubInclude HAIKU_TOP src tests servers app window_creation ; 293SubInclude HAIKU_TOP src tests servers app window_invalidation ; 294SubInclude HAIKU_TOP src tests servers app workspace_activated ; 295SubInclude HAIKU_TOP src tests servers app workspace_switcher ; 296