scon fixes SDL compiles

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@1525 8ced0084-cf51-0410-be5f-012b33b47a6e
This commit is contained in:
nakeee 2008-12-13 23:19:56 +00:00
parent 2c66b9d36f
commit bb817fbced
4 changed files with 37 additions and 20 deletions

View File

@ -96,6 +96,7 @@ vars.AddVariables(
BoolVariable('lint', 'Set for lint build (extra warnings)', False), BoolVariable('lint', 'Set for lint build (extra warnings)', False),
BoolVariable('nowx', 'Set For Building with no WX libs (WIP)', False), BoolVariable('nowx', 'Set For Building with no WX libs (WIP)', False),
BoolVariable('wxgl', 'Set For Building with WX GL libs (WIP)', False), BoolVariable('wxgl', 'Set For Building with WX GL libs (WIP)', False),
BoolVariable('sdlgl', 'Set For Building with SDL GL libs (WIP)', False),
EnumVariable('flavor', 'Choose a build flavor', 'release', EnumVariable('flavor', 'Choose a build flavor', 'release',
allowed_values = ('release', 'devel', 'debug'), allowed_values = ('release', 'devel', 'debug'),
ignorecase = 2 ignorecase = 2
@ -190,15 +191,6 @@ env['HAVE_BLUEZ'] = conf.CheckPKG('bluez')
# needed for sound # needed for sound
env['HAVE_AO'] = conf.CheckPKG('ao') env['HAVE_AO'] = conf.CheckPKG('ao')
# handling wx flags CCFLAGS should be created before
wxmods = ['adv', 'core', 'base']
env['USE_WX'] = 0
if env['wxgl']:
wxmods.append('gl')
env['USE_WX'] = 1
env['HAVE_WX'] = conf.CheckWXConfig('2.8', wxmods, 0)
#osx 64 specifics #osx 64 specifics
if sys.platform == 'darwin': if sys.platform == 'darwin':
if env['osx'] == '64cocoa': if env['osx'] == '64cocoa':
@ -211,13 +203,34 @@ if sys.platform == 'darwin':
else: else:
env['HAVE_X11'] = conf.CheckPKG('x11') env['HAVE_X11'] = conf.CheckPKG('x11')
env['HAVE_COCOA'] = 0 env['HAVE_COCOA'] = 0
# handling wx flags CCFLAGS should be created before
wxmods = ['adv', 'core', 'base']
env['USE_WX'] = 0
if env['wxgl']:
wxmods.append('gl')
env['USE_WX'] = 1
env['HAVE_X11'] = 0
env['HAVE_COCOA'] = 0
env['HAVE_WX'] = conf.CheckWXConfig('2.8', wxmods, 0)
# SDL backend
env['USE_SDL'] = 0
if env['sdlgl']:
env['USE_SDL'] = 1
env['HAVE_X11'] = 0
env['HAVE_COCOA'] = 0
env['USE_WX'] = 0
# Gui less build # Gui less build
if env['nowx']: if env['nowx']:
env['HAVE_WX'] = 0; env['HAVE_WX'] = 0;
# Creating config.h defines # Creating config.h defines
conf.Define('HAVE_SDL', env['HAVE_SDL']) conf.Define('HAVE_SDL', env['HAVE_SDL'])
conf.Define('USE_SDL', env['USE_SDL'])
conf.Define('HAVE_BLUEZ', env['HAVE_BLUEZ']) conf.Define('HAVE_BLUEZ', env['HAVE_BLUEZ'])
conf.Define('HAVE_AO', env['HAVE_AO']) conf.Define('HAVE_AO', env['HAVE_AO'])
conf.Define('HAVE_WX', env['HAVE_WX']) conf.Define('HAVE_WX', env['HAVE_WX'])

View File

@ -542,9 +542,14 @@ void OpenGL_Update()
{ {
#if USE_SDL #if USE_SDL
SDL_Surface *surface = SDL_GetVideoSurface(); SDL_Surface *surface = SDL_GetVideoSurface();
RECT rcWindow;
if (!surface) return; if (!surface) return;
nBackbufferWidth = surface->w; nBackbufferWidth = surface->w;
nBackbufferHeight = surface->h; nBackbufferHeight = surface->h;
rcWindow.right = surface->w;
rcWindow.bottom = surface->h;
#elif defined(HAVE_COCOA) && HAVE_COCOA #elif defined(HAVE_COCOA) && HAVE_COCOA
RECT rcWindow; RECT rcWindow;
rcWindow.right = GLWin.width; rcWindow.right = GLWin.width;

View File

@ -41,6 +41,8 @@
#elif defined(HAVE_X11) && HAVE_X11 #elif defined(HAVE_X11) && HAVE_X11
#define I_NEED_OS2_H // HAXXOR #define I_NEED_OS2_H // HAXXOR
#include <GL/glxew.h> #include <GL/glxew.h>
#elif defined(USE_SDL) && USE_SDL
#include <GL/glew.h>
#elif defined(HAVE_COCOA) && HAVE_COCOA #elif defined(HAVE_COCOA) && HAVE_COCOA
#include <GL/glew.h> #include <GL/glew.h>
#include "cocoaGL.h" #include "cocoaGL.h"

View File

@ -95,17 +95,14 @@ conf.Define('HAVE_XXF86VM', gfxenv['HAVE_XXF86VM'])
conf.Finish() conf.Finish()
# change to True if you want to compile with SDL # Sanity check
useSDL = not ((gfxenv['HAVE_X11'] and gfxenv['HAVE_XXF86VM']) if gfxenv['USE_WX'] and not gfxenv['HAVE_WX']:
or gfxenv['HAVE_COCOA']) print "Must have wx to use wxgl"
Return()
if gfxenv['USE_SDL'] and not gfxenv['HAVE_SDL']:
if useSDL and not gfxenv['HAVE_SDL']: print "Must have sdl to use SDL gl"
print name + " must have either X11 or sdl to be build" Return()
Return()
if useSDL:
compileFlags += [ '-DUSE_SDL=1' ]
gfxenv.Append( gfxenv.Append(
CXXFLAGS = compileFlags, CXXFLAGS = compileFlags,