haiku/src/servers/app/Jamfile

140 lines
2.9 KiB
Plaintext
Raw Normal View History

SubDir OBOS_TOP src servers app ;
AddResources app_server : app_server.rdef ;
UseLibraryHeaders agg png zlib ;
UsePrivateHeaders app interface shared [ FDirName servers app ] ;
UseHeaders [ FDirName $(OBOS_TOP) src servers app drawing ] ;
UseHeaders [ FDirName $(OBOS_TOP) src servers app drawing Painter ] ;
UseHeaders [ FDirName $(OBOS_TOP) src servers app drawing Painter drawing_modes ] ;
UseHeaders [ FDirName $(OBOS_TOP) src servers app drawing Painter font_support ] ;
UseFreeTypeHeaders ;
SEARCH_SOURCE += [ FDirName $(SUBDIR) drawing ] ;
if ( $(TARGET_PLATFORM) = haiku ) {
# This overrides the definitions in private/servers/app/ServerConfig.h
defines = [ FDefines TEST_MODE=0 ] ;
SubDirCcFlags $(defines) ;
SubDirC++Flags $(defines) ;
VIEW_DRIVER_SOURCES =
AccelerantBuffer.cpp
AccelerantHWInterface.cpp
BitmapBuffer.cpp
DisplayDriverPainter.cpp
HWInterface.cpp
MallocBuffer.cpp
UpdateQueue.cpp
;
} else {
VIEW_DRIVER_SOURCES =
fake_input_server.cpp
BitmapBuffer.cpp
AccelerantBuffer.cpp
AccelerantHWInterface.cpp
DisplayDriverPainter.cpp
HWInterface.cpp
MallocBuffer.cpp
UpdateQueue.cpp
ViewHWInterface.cpp
;
}
SharedLibrary appserver :
Angle.cpp
BGet++.cpp
BitmapManager.cpp
ColorSet.cpp
CursorData.cpp
Decorator.cpp
FontFamily.cpp
IPoint.cpp
LayerData.cpp
RGBColor.cpp
ServerBitmap.cpp
ServerCursor.cpp
ServerFont.cpp
FontServer.cpp
SysCursor.cpp
SystemPalette.cpp
TokenHandler.cpp
Utils.cpp
# drawing
PatternHandler.cpp
DisplayDriver.cpp
;
Server app_server :
# Misc. Sources
DebugInfoManager.cpp
SubWindowList.cpp
MultiLocker.cpp
PicturePlayer.cpp
PNGDump.cpp
RAMLinkMsgReader.cpp
# Manager Classes
CursorManager.cpp
DecorManager.cpp
ScreenManager.cpp
AppServer.cpp
Desktop.cpp
DesktopSettings.cpp
ServerApp.cpp
ServerWindow.cpp
# DisplayDriver Classes
$(VIEW_DRIVER_SOURCES)
VirtualScreen.cpp
offscreen bitmaps work, tested on Haiku as well, supports all colorspaces that BBitmap::ImportBits() supports. It uses a fallback for non-B_RGB(A)32 bitmaps. Added support for B_SUB_PIXEL_PRECISION view flags, though it is a bit hacky, since I had to add it to LayerData, even though it is not a true part of stack data. Added Layer::SetFlags() to enforce code path and update fLayerData. Cleaned up DisplayDriverPainter and DisplayDriver API (changed some const BRect& rect to simply BRect rect in order to be able to reuse it in the code), moved Painter.h, the test environment only draws the changed part of the frame buffer again - this causes a lot less CPU overhead, Painter special cases stroke width of 1.0 to use square caps, which is similar to R5 implementation and removes a lot of problems with non-straight line drawing, ServerWindow uses the DisplayDriver from it's WinBorder instead of the one from the Desktop (needed for offscreen windows, which have their own DisplayDriverPainter), it also checks for GetRootLayer() == NULL, because offscreen layers are not attached to a RootLayer, there was a fix for scrolling which worked at least in the test environment, it is now defunced, because Adi moved _CopyBits to Layer... I need to reenable it later, LayerData has no more fEscapementDelta, also fixed fFontAliasing (which was thought to overriding the font flags, and now works as such again), Desktop initialises the menu_info and scroll_bar_info stuff, which makes ScrollBars work actually... hope I didn't forget something. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13448 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-07-05 20:17:16 +04:00
BBitmapBuffer.cpp
BitmapHWInterface.cpp
DefaultDecorator.cpp
Layer.cpp
offscreen bitmaps work, tested on Haiku as well, supports all colorspaces that BBitmap::ImportBits() supports. It uses a fallback for non-B_RGB(A)32 bitmaps. Added support for B_SUB_PIXEL_PRECISION view flags, though it is a bit hacky, since I had to add it to LayerData, even though it is not a true part of stack data. Added Layer::SetFlags() to enforce code path and update fLayerData. Cleaned up DisplayDriverPainter and DisplayDriver API (changed some const BRect& rect to simply BRect rect in order to be able to reuse it in the code), moved Painter.h, the test environment only draws the changed part of the frame buffer again - this causes a lot less CPU overhead, Painter special cases stroke width of 1.0 to use square caps, which is similar to R5 implementation and removes a lot of problems with non-straight line drawing, ServerWindow uses the DisplayDriver from it's WinBorder instead of the one from the Desktop (needed for offscreen windows, which have their own DisplayDriverPainter), it also checks for GetRootLayer() == NULL, because offscreen layers are not attached to a RootLayer, there was a fix for scrolling which worked at least in the test environment, it is now defunced, because Adi moved _CopyBits to Layer... I need to reenable it later, LayerData has no more fEscapementDelta, also fixed fFontAliasing (which was thought to overriding the font flags, and now works as such again), Desktop initialises the menu_info and scroll_bar_info stuff, which makes ScrollBars work actually... hope I didn't forget something. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13448 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-07-05 20:17:16 +04:00
OffscreenServerWindow.cpp
OffscreenWinBorder.cpp
RootLayer.cpp
ServerPicture.cpp
ServerScreen.cpp
WinBorder.cpp
Workspace.cpp
WorkspacesLayer.cpp
;
# link libraries for app_server and libappserver.so
if $(TARGET_PLATFORM) = haiku {
# link for Haiku
LinkSharedOSLibs libappserver.so :
libroot.so libbe.so libfreetype.so libtextencoding.so ;
LinkSharedOSLibs app_server :
libroot.so libtranslation.so libz.so libpng.so libbe.so
libappserver.so libpainter.a libagg.a libfreetype.so
libtextencoding.so ;
} else {
# link as test application under R5
LINKFLAGS on app_server ?= $(LINKFLAGS) ;
LINKFLAGS on app_server += -lbe ;
LinkSharedOSLibs libappserver.so :
root be <boot!home!config!lib>libopenbeos.so
textencoding libfreetype.so ;
LinkSharedOSLibs app_server :
root be game translation libz.so libpng.so libappserver.so
libpainter.a <boot!home!config!lib>libopenbeos.so
libagg.a libfreetype.so textencoding ;
}
SubInclude OBOS_TOP src servers app drawing Painter ;