moved mesa addon to opengl addons

misc clean up


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18770 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
Jérôme Duval 2006-09-06 14:35:26 +00:00
parent 07a6f763c2
commit 10bb21518c
8 changed files with 63 additions and 22 deletions

View File

@ -1,13 +1,14 @@
SubDir HAIKU_TOP src add-ons ; SubDir HAIKU_TOP src add-ons ;
SubInclude HAIKU_TOP src add-ons accelerants ; SubInclude HAIKU_TOP src add-ons accelerants ;
SubInclude HAIKU_TOP src add-ons decorators ;
SubInclude HAIKU_TOP src add-ons input_server ; SubInclude HAIKU_TOP src add-ons input_server ;
SubInclude HAIKU_TOP src add-ons kernel ; SubInclude HAIKU_TOP src add-ons kernel ;
SubInclude HAIKU_TOP src add-ons mail_daemon ; SubInclude HAIKU_TOP src add-ons mail_daemon ;
SubInclude HAIKU_TOP src add-ons media ; SubInclude HAIKU_TOP src add-ons media ;
SubInclude HAIKU_TOP src add-ons opengl ;
SubInclude HAIKU_TOP src add-ons print ; SubInclude HAIKU_TOP src add-ons print ;
SubInclude HAIKU_TOP src add-ons translators ;
SubInclude HAIKU_TOP src add-ons decorators ;
SubInclude HAIKU_TOP src add-ons tracker ;
SubInclude HAIKU_TOP src add-ons screen_savers ; SubInclude HAIKU_TOP src add-ons screen_savers ;
SubInclude HAIKU_TOP src add-ons translators ;
SubInclude HAIKU_TOP src add-ons tracker ;

View File

@ -0,0 +1,4 @@
SubDir HAIKU_TOP src add-ons opengl ;
SubInclude HAIKU_TOP src add-ons opengl mesa ;

View File

@ -0,0 +1,21 @@
SubDir HAIKU_TOP src add-ons opengl mesa ;
SetSubDirSupportedPlatformsBeOSCompatible ;
if $(TARGET_PLATFORM) != haiku {
UseHeaders [ FDirName $(HAIKU_TOP) headers os opengl ] : true ;
# We need our public GL headers also when not compiling for Haiku.
}
UsePrivateHeaders opengl ;
UseHeaders [ FDirName $(HAIKU_TOP) src kits opengl mesa ] ;
UseHeaders [ FDirName $(HAIKU_TOP) src kits opengl mesa main ] ;
UseHeaders [ FDirName $(HAIKU_TOP) src kits opengl mesa glapi ] ;
Addon mesa_soft : opengl :
MesaRenderer.cpp
: false
: libmesa.a libGL.so be
;

View File

@ -13,6 +13,13 @@
extern const char * color_space_name(color_space space); extern const char * color_space_name(color_space space);
extern "C" _EXPORT BGLRenderer *
instanciate_gl_renderer(BGLView *view, BGLDispatcher *dispatcher)
{
return new MesaRenderer(view, 0, dispatcher);
}
MesaRenderer::MesaRenderer(BGLView *view, ulong bgl_options, BGLDispatcher *dispatcher) MesaRenderer::MesaRenderer(BGLView *view, ulong bgl_options, BGLDispatcher *dispatcher)
: BGLRenderer(view, bgl_options, dispatcher), : BGLRenderer(view, bgl_options, dispatcher),
fBitmap(NULL), fBitmap(NULL),

View File

@ -6,6 +6,7 @@
#include "GLRenderer.h" #include "GLRenderer.h"
BGLRenderer::BGLRenderer(BGLView *view, ulong bgl_options, BGLDispatcher *dispatcher) BGLRenderer::BGLRenderer(BGLView *view, ulong bgl_options, BGLDispatcher *dispatcher)
: fRefCount(1)
{ {
} }
@ -15,6 +16,7 @@ BGLRenderer::~BGLRenderer()
{ {
} }
void void
BGLRenderer::Acquire() BGLRenderer::Acquire()
{ {
@ -109,3 +111,10 @@ BGLRenderer::EnableDirectMode(bool enabled)
{ {
} }
status_t BGLRenderer::_Reserved_Renderer_0(int32 n, void *p) { return B_ERROR; }
status_t BGLRenderer::_Reserved_Renderer_1(int32 n, void *p) { return B_ERROR; }
status_t BGLRenderer::_Reserved_Renderer_2(int32 n, void *p) { return B_ERROR; }
status_t BGLRenderer::_Reserved_Renderer_3(int32 n, void *p) { return B_ERROR; }
status_t BGLRenderer::_Reserved_Renderer_4(int32 n, void *p) { return B_ERROR; }

View File

@ -35,25 +35,16 @@ UseHeaders [ FDirName $(SUBDIR) mesa swrast_setup ] ;
SubDirC++Flags $(defines) ; SubDirC++Flags $(defines) ;
} }
local arch_sources ;
if $(TARGET_ARCH) = x86 {
# On x86 platform, use the faster GL API dispatching assembly code!
arch_sources = glapi_x86.S ;
} else {
# For non-X86 platforms, no assembly code yet.
arch_sources = ;
}
SEARCH_SOURCE += [ FDirName $(SUBDIR) mesa $(TARGET_ARCH) ] ;
SharedLibrary libGL.so : SharedLibrary libGL.so :
GLView.cpp GLView.cpp
GLDispatcher.cpp GLDispatcher.cpp
GLRenderer.cpp GLRenderer.cpp
# Mesa optimized GL dispatching code (if any) for this target architecture
$(arch_sources)
: :
# Mesa optimized GL dispatching code (if any) for this target architecture
<opengl>mesa_arch_$(TARGET_ARCH).o
# GLU API is included in libGL.so under BeOS R5, not a separate libglu.so library # GLU API is included in libGL.so under BeOS R5, not a separate libglu.so library
<opengl>sgi-glu.o <opengl>sgi-glu.o

View File

@ -9,7 +9,6 @@ if $(TARGET_PLATFORM) != haiku {
UsePrivateHeaders opengl ; UsePrivateHeaders opengl ;
UseHeaders [ FDirName $(SUBDIR) $(DOTDOT) ] ;
UseHeaders [ FDirName $(SUBDIR) main ] ; UseHeaders [ FDirName $(SUBDIR) main ] ;
UseHeaders [ FDirName $(SUBDIR) glapi ] ; UseHeaders [ FDirName $(SUBDIR) glapi ] ;
UseHeaders [ FDirName $(SUBDIR) math ] ; UseHeaders [ FDirName $(SUBDIR) math ] ;
@ -248,8 +247,17 @@ StaticLibrary libmesa.a :
glthread.c glthread.c
; ;
Addon Mesa : opengl :
MesaRenderer.cpp local arch_sources ;
: false if $(TARGET_ARCH) = x86 {
: libmesa.a libGL.so be # On x86 platform, use the faster GL API dispatching assembly code!
arch_sources = glapi_x86.S ;
} else {
# For non-X86 platforms, no assembly code yet.
arch_sources = ;
}
MergeObject <opengl>mesa_arch_$(TARGET_ARCH).o :
$(arch_sources)
; ;