Make wxgl mandatory on OS X.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5576 8ced0084-cf51-0410-be5f-012b33b47a6e
This commit is contained in:
Soren Jorvang 2010-06-03 01:24:26 +00:00
parent 3a7b8c51c6
commit 52c912a59e
17 changed files with 699 additions and 1157 deletions

View File

@ -108,10 +108,10 @@ vars.AddVariables(
BoolVariable('verbose', 'Set for compilation line', False),
BoolVariable('bundle', 'Set to create bundle', 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', False),
BoolVariable('openal', 'Build with OpenAL', False),
BoolVariable('noao', 'Build without AO', False),
BoolVariable('wxgl', 'Set For Building with WX GL libs (WIP)', False),
BoolVariable('wxgl', 'Set For Building with WX GL libs', False),
BoolVariable('opencl', 'Build with OpenCL', False),
BoolVariable('nojit', 'Remove entire jit cores', False),
BoolVariable('shared_soil', 'Use system shared libSOIL', False),
@ -354,7 +354,6 @@ if not env['SHARED_SFML']:
#osx specifics
if sys.platform == 'darwin':
compileFlags.append('-mmacosx-version-min=10.5')
env['HAVE_COCOA'] = 1
env['HAVE_XRANDR'] = 0
env['HAVE_X11'] = 0
env['CC'] = "gcc-4.2"
@ -365,21 +364,20 @@ if sys.platform == 'darwin':
else:
env['HAVE_X11'] = conf.CheckPKG('x11')
env['HAVE_XRANDR'] = env['HAVE_X11'] and conf.CheckPKG('xrandr')
env['HAVE_COCOA'] = 0
# handling wx flags CCFLAGS should be created before
wxmods = ['aui', 'adv', 'core', 'base']
env['USE_WX'] = 0
if env['wxgl']:
wxmods.append('gl')
env['USE_WX'] = 1
if sys.platform == 'win32':
if sys.platform == 'win32' or sys.platform == 'darwin':
env['HAVE_WX'] = 1
env['USE_WX'] = 1
if env['USE_WX']:
wxmods.append('gl')
# Gui less build
# gui-less build
if env['nowx']:
env['HAVE_WX'] = 0;
else:
@ -415,7 +413,6 @@ conf.Define('HAVE_WX', env['HAVE_WX'])
conf.Define('USE_WX', env['USE_WX'])
conf.Define('HAVE_X11', env['HAVE_X11'])
conf.Define('HAVE_XRANDR', env['HAVE_XRANDR'])
conf.Define('HAVE_COCOA', env['HAVE_COCOA'])
conf.Define('HAVE_PORTAUDIO', env['HAVE_PORTAUDIO'])
conf.Define('SHARED_SOIL', env['SHARED_SOIL'])
conf.Define('SHARED_LZO', env['SHARED_LZO'])

View File

@ -30,7 +30,7 @@
#include "Frame.h"
#include "HotkeyDlg.h"
#if defined(HAVE_COCOA) && HAVE_COCOA
#ifdef __APPLE__
#include <Cocoa/Cocoa.h>
#endif
@ -1188,7 +1188,7 @@ void CConfigMain::AddResolutions()
main_frame->m_XRRConfig->AddResolutions(arrayStringFor_FullscreenResolution);
#elif defined(HAVE_COCOA) && HAVE_COCOA
#elif defined(__APPLE__)
CGDisplayModeRef mode;
CFArrayRef array;

View File

@ -32,7 +32,7 @@
#include "X11Utils.h"
#endif
#if defined(HAVE_COCOA) && HAVE_COCOA
#ifdef __APPLE__
#import "cocoaApp.h"
#endif
@ -260,7 +260,7 @@ void X11_MainLoop()
#endif
//for cocoa we need to hijack the main to get event
#if defined(HAVE_COCOA) && HAVE_COCOA
#ifdef __APPLE__
@interface CocoaThread : NSObject
{

View File

@ -44,37 +44,29 @@ if wxenv['HAVE_WX']:
'NetWindow.cpp',
]
CPPDEFINES = [
CPPDEFINE = [
'wxNEEDS_CHARPP',
],
compileFlags = [
],
libs = [ 'debwx', 'debugger_ui_util'] + libs
if wxenv['HAVE_COCOA']:
if sys.platform == 'darwin':
files += [ 'cocoaApp.m', ]
compileFlags = [
'-x',
'objective-c++',
]
wxenv.Append(
CXXFLAGS = compileFlags,
LINKFLAGS = [
linkflags = [
'-pthread', '-framework', 'IOKit'
],
LIBS = libs
)
else:
wxenv.Append(
LINKFLAGS = [
'-pthread',
],
LIBS = libs
)
]
if sys.platform == 'darwin':
exeGUI = env['binary_dir'] + 'Dolphin.app/Contents/MacOS/Dolphin'
exeNoGUI = env['binary_dir'] + 'DolphinNoGUI'
@ -96,11 +88,17 @@ if sys.platform == 'darwin':
else:
exeGUI = env['binary_dir'] + 'dolphin-emu'
exeNoGUI = env['binary_dir'] + 'dolphin-emu-nogui'
linkflags = [ '-pthread' ]
if wxenv['HAVE_X11']:
files += [ 'X11Utils.cpp' ]
#objects = [ wxenv.Object(srcFile) for srcFile in files ]
wxenv.Append(
CXXFLAGS = compileFlags,
LINKFLAGS = linkflags,
LIBS = libs,
)
if wxenv['HAVE_WX']:
wxenv.Program(exeGUI, files + [ 'Main.cpp' ])

View File

@ -454,8 +454,6 @@
292AC39C11838FD700B8790B /* CheatsWindow.h in Headers */ = {isa = PBXBuildFile; fileRef = 292ABF8D11838FD600B8790B /* CheatsWindow.h */; };
292AC39D11838FD700B8790B /* cmdline.c in Sources */ = {isa = PBXBuildFile; fileRef = 292ABF8E11838FD600B8790B /* cmdline.c */; };
292AC39E11838FD700B8790B /* cmdline.h in Headers */ = {isa = PBXBuildFile; fileRef = 292ABF8F11838FD600B8790B /* cmdline.h */; };
292AC39F11838FD700B8790B /* cocoaApp.h in Headers */ = {isa = PBXBuildFile; fileRef = 292ABF9011838FD600B8790B /* cocoaApp.h */; };
292AC3A011838FD700B8790B /* cocoaApp.m in Sources */ = {isa = PBXBuildFile; fileRef = 292ABF9111838FD600B8790B /* cocoaApp.m */; };
292AC3A111838FD700B8790B /* ConfigMain.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 292ABF9211838FD600B8790B /* ConfigMain.cpp */; };
292AC3A211838FD700B8790B /* ConfigMain.h in Headers */ = {isa = PBXBuildFile; fileRef = 292ABF9311838FD600B8790B /* ConfigMain.h */; };
292AC3A311838FD700B8790B /* Frame.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 292ABF9411838FD600B8790B /* Frame.cpp */; };
@ -794,8 +792,6 @@
292AC4F711838FD700B8790B /* XFStructs.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 292AC12B11838FD700B8790B /* XFStructs.cpp */; };
292AC4F811838FD700B8790B /* XFStructs.h in Headers */ = {isa = PBXBuildFile; fileRef = 292AC12C11838FD700B8790B /* XFStructs.h */; };
292AC4F911838FD700B8790B /* BPFunctions.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 292AC13011838FD700B8790B /* BPFunctions.cpp */; };
292AC4FA11838FD700B8790B /* cocoaGL.h in Headers */ = {isa = PBXBuildFile; fileRef = 292AC13111838FD700B8790B /* cocoaGL.h */; };
292AC4FB11838FD700B8790B /* cocoaGL.m in Sources */ = {isa = PBXBuildFile; fileRef = 292AC13211838FD700B8790B /* cocoaGL.m */; };
292AC4FC11838FD700B8790B /* Debugger.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 292AC13411838FD700B8790B /* Debugger.cpp */; };
292AC4FD11838FD700B8790B /* Debugger.h in Headers */ = {isa = PBXBuildFile; fileRef = 292AC13511838FD700B8790B /* Debugger.h */; };
292AC4FE11838FD700B8790B /* DLCache.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 292AC13611838FD700B8790B /* DLCache.cpp */; };
@ -837,8 +833,6 @@
292AC52211838FD700B8790B /* BPMemLoader.h in Headers */ = {isa = PBXBuildFile; fileRef = 292AC16011838FD700B8790B /* BPMemLoader.h */; };
292AC52311838FD700B8790B /* Clipper.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 292AC16111838FD700B8790B /* Clipper.cpp */; };
292AC52411838FD700B8790B /* Clipper.h in Headers */ = {isa = PBXBuildFile; fileRef = 292AC16211838FD700B8790B /* Clipper.h */; };
292AC52511838FD700B8790B /* cocoaGL.h in Headers */ = {isa = PBXBuildFile; fileRef = 292AC16311838FD700B8790B /* cocoaGL.h */; };
292AC52611838FD700B8790B /* cocoaGL.m in Sources */ = {isa = PBXBuildFile; fileRef = 292AC16411838FD700B8790B /* cocoaGL.m */; };
292AC52711838FD700B8790B /* CommandProcessor.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 292AC16511838FD700B8790B /* CommandProcessor.cpp */; };
292AC52811838FD700B8790B /* CommandProcessor.h in Headers */ = {isa = PBXBuildFile; fileRef = 292AC16611838FD700B8790B /* CommandProcessor.h */; };
292AC52911838FD700B8790B /* CPMemLoader.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 292AC16711838FD700B8790B /* CPMemLoader.cpp */; };
@ -1778,8 +1772,6 @@
292ABF8D11838FD600B8790B /* CheatsWindow.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CheatsWindow.h; sourceTree = "<group>"; };
292ABF8E11838FD600B8790B /* cmdline.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = cmdline.c; sourceTree = "<group>"; };
292ABF8F11838FD600B8790B /* cmdline.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = cmdline.h; sourceTree = "<group>"; };
292ABF9011838FD600B8790B /* cocoaApp.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = cocoaApp.h; sourceTree = "<group>"; };
292ABF9111838FD600B8790B /* cocoaApp.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = cocoaApp.m; sourceTree = "<group>"; };
292ABF9211838FD600B8790B /* ConfigMain.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ConfigMain.cpp; sourceTree = "<group>"; };
292ABF9311838FD600B8790B /* ConfigMain.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ConfigMain.h; sourceTree = "<group>"; };
292ABF9411838FD600B8790B /* Frame.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = Frame.cpp; sourceTree = "<group>"; };
@ -2148,8 +2140,6 @@
292AC12C11838FD700B8790B /* XFStructs.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = XFStructs.h; sourceTree = "<group>"; };
292AC12E11838FD700B8790B /* Plugin_VideoOGL.vcproj */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xml; path = Plugin_VideoOGL.vcproj; sourceTree = "<group>"; };
292AC13011838FD700B8790B /* BPFunctions.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = BPFunctions.cpp; sourceTree = "<group>"; };
292AC13111838FD700B8790B /* cocoaGL.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = cocoaGL.h; sourceTree = "<group>"; };
292AC13211838FD700B8790B /* cocoaGL.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = cocoaGL.m; sourceTree = "<group>"; };
292AC13411838FD700B8790B /* Debugger.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = Debugger.cpp; sourceTree = "<group>"; };
292AC13511838FD700B8790B /* Debugger.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Debugger.h; sourceTree = "<group>"; };
292AC13611838FD700B8790B /* DLCache.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = DLCache.cpp; sourceTree = "<group>"; };
@ -2193,8 +2183,6 @@
292AC16011838FD700B8790B /* BPMemLoader.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = BPMemLoader.h; sourceTree = "<group>"; };
292AC16111838FD700B8790B /* Clipper.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = Clipper.cpp; sourceTree = "<group>"; };
292AC16211838FD700B8790B /* Clipper.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Clipper.h; sourceTree = "<group>"; };
292AC16311838FD700B8790B /* cocoaGL.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = cocoaGL.h; sourceTree = "<group>"; };
292AC16411838FD700B8790B /* cocoaGL.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = cocoaGL.m; sourceTree = "<group>"; };
292AC16511838FD700B8790B /* CommandProcessor.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CommandProcessor.cpp; sourceTree = "<group>"; };
292AC16611838FD700B8790B /* CommandProcessor.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CommandProcessor.h; sourceTree = "<group>"; };
292AC16711838FD700B8790B /* CPMemLoader.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CPMemLoader.cpp; sourceTree = "<group>"; };
@ -3378,8 +3366,6 @@
292ABF8D11838FD600B8790B /* CheatsWindow.h */,
292ABF8E11838FD600B8790B /* cmdline.c */,
292ABF8F11838FD600B8790B /* cmdline.h */,
292ABF9011838FD600B8790B /* cocoaApp.h */,
292ABF9111838FD600B8790B /* cocoaApp.m */,
292ABF9211838FD600B8790B /* ConfigMain.cpp */,
292ABF9311838FD600B8790B /* ConfigMain.h */,
292ABF9411838FD600B8790B /* Frame.cpp */,
@ -4075,8 +4061,6 @@
isa = PBXGroup;
children = (
292AC13011838FD700B8790B /* BPFunctions.cpp */,
292AC13111838FD700B8790B /* cocoaGL.h */,
292AC13211838FD700B8790B /* cocoaGL.m */,
292AC13311838FD700B8790B /* Debugger */,
292AC13611838FD700B8790B /* DLCache.cpp */,
292AC13711838FD700B8790B /* DLCache.h */,
@ -4159,8 +4143,6 @@
292AC16011838FD700B8790B /* BPMemLoader.h */,
292AC16111838FD700B8790B /* Clipper.cpp */,
292AC16211838FD700B8790B /* Clipper.h */,
292AC16311838FD700B8790B /* cocoaGL.h */,
292AC16411838FD700B8790B /* cocoaGL.m */,
292AC16511838FD700B8790B /* CommandProcessor.cpp */,
292AC16611838FD700B8790B /* CommandProcessor.h */,
292AC16711838FD700B8790B /* CPMemLoader.cpp */,
@ -4605,7 +4587,6 @@
292AC39A11838FD700B8790B /* BootManager.h in Headers */,
292AC39C11838FD700B8790B /* CheatsWindow.h in Headers */,
292AC39E11838FD700B8790B /* cmdline.h in Headers */,
292AC39F11838FD700B8790B /* cocoaApp.h in Headers */,
292AC3A211838FD700B8790B /* ConfigMain.h in Headers */,
292AC3A411838FD700B8790B /* Frame.h in Headers */,
292AC3A811838FD700B8790B /* GameListCtrl.h in Headers */,
@ -4769,7 +4750,6 @@
292AC4F411838FD700B8790B /* TabControl.h in Headers */,
292AC4F611838FD700B8790B /* Thread.h in Headers */,
292AC4F811838FD700B8790B /* XFStructs.h in Headers */,
292AC4FA11838FD700B8790B /* cocoaGL.h in Headers */,
292AC4FD11838FD700B8790B /* Debugger.h in Headers */,
292AC4FF11838FD700B8790B /* DLCache.h in Headers */,
292AC50111838FD700B8790B /* FramebufferManager.h in Headers */,
@ -4790,7 +4770,6 @@
292AC52011838FD700B8790B /* XFB.h in Headers */,
292AC52211838FD700B8790B /* BPMemLoader.h in Headers */,
292AC52411838FD700B8790B /* Clipper.h in Headers */,
292AC52511838FD700B8790B /* cocoaGL.h in Headers */,
292AC52811838FD700B8790B /* CommandProcessor.h in Headers */,
292AC52A11838FD700B8790B /* CPMemLoader.h in Headers */,
292AC52C11838FD700B8790B /* DebugUtil.h in Headers */,
@ -5647,7 +5626,6 @@
292AC39911838FD700B8790B /* BootManager.cpp in Sources */,
292AC39B11838FD700B8790B /* CheatsWindow.cpp in Sources */,
292AC39D11838FD700B8790B /* cmdline.c in Sources */,
292AC3A011838FD700B8790B /* cocoaApp.m in Sources */,
292AC3A111838FD700B8790B /* ConfigMain.cpp in Sources */,
292AC3A311838FD700B8790B /* Frame.cpp in Sources */,
292AC3A511838FD700B8790B /* FrameAui.cpp in Sources */,
@ -5823,7 +5801,6 @@
292AC4F511838FD700B8790B /* Thread.cpp in Sources */,
292AC4F711838FD700B8790B /* XFStructs.cpp in Sources */,
292AC4F911838FD700B8790B /* BPFunctions.cpp in Sources */,
292AC4FB11838FD700B8790B /* cocoaGL.m in Sources */,
292AC4FC11838FD700B8790B /* Debugger.cpp in Sources */,
292AC4FE11838FD700B8790B /* DLCache.cpp in Sources */,
292AC50011838FD700B8790B /* FramebufferManager.cpp in Sources */,
@ -5845,7 +5822,6 @@
292AC51F11838FD700B8790B /* XFB.cpp in Sources */,
292AC52111838FD700B8790B /* BPMemLoader.cpp in Sources */,
292AC52311838FD700B8790B /* Clipper.cpp in Sources */,
292AC52611838FD700B8790B /* cocoaGL.m in Sources */,
292AC52711838FD700B8790B /* CommandProcessor.cpp in Sources */,
292AC52911838FD700B8790B /* CPMemLoader.cpp in Sources */,
292AC52B11838FD700B8790B /* DebugUtil.cpp in Sources */,

View File

@ -122,7 +122,7 @@ static const int gcDefaultControls[] =
0x00, // L semi-press
0x00, // R semi-press
};
#elif defined(HAVE_COCOA) && HAVE_COCOA
#elif defined(__APPLE__)
// Reference for Cocoa key codes:
// http://boredzo.org/blog/archives/2007-05-22/virtual-key-codes
{

View File

@ -42,9 +42,6 @@
#include <X11/Xutil.h>
#include <X11/keysym.h>
#include <X11/XKBlib.h>
//no need for Cocoa yet, but I guess ayuanx isn't done yet.
//#elif defined(HAVE_COCOA) && HAVE_COCOA
// #include <Cocoa/Cocoa.h>
#endif
#include "pluginspecs_pad.h"

View File

@ -55,8 +55,6 @@ void OpenGL_SwapBuffers()
{
#if defined(USE_WX) && USE_WX
GLWin.glCanvas->SwapBuffers();
#elif defined(HAVE_COCOA) && HAVE_COCOA
cocoaGLSwap(GLWin.cocoaCtx,GLWin.cocoaWin);
#elif defined(_WIN32)
SwapBuffers(hDC);
#elif defined(HAVE_X11) && HAVE_X11
@ -78,8 +76,6 @@ void OpenGL_SetWindowText(const char *text)
{
#if defined(USE_WX) && USE_WX
// GLWin.frame->SetTitle(wxString::FromAscii(text));
#elif defined(HAVE_COCOA) && HAVE_COCOA
cocoaGLSetTitle(GLWin.cocoaWin, text);
#elif defined(_WIN32)
// TODO convert text to unicode and change SetWindowTextA to SetWindowText
SetWindowTextA(EmuWindow::GetWnd(), text);
@ -268,12 +264,6 @@ bool OpenGL_Create(SVideoInitialize &_VideoInitialize, int _iwidth, int _iheight
GLWin.glCanvas->SetCurrent(*GLWin.glCtxt);
#elif defined(HAVE_COCOA) && HAVE_COCOA
GLWin.width = s_backbuffer_width;
GLWin.height = s_backbuffer_height;
GLWin.cocoaWin = cocoaGLCreateWindow(GLWin.width, GLWin.height);
GLWin.cocoaCtx = cocoaGLInit(g_Config.iMultisampleMode);
#elif defined(_WIN32)
g_VideoInitialize.pWindowHandle = (void*)EmuWindow::Create((HWND)g_VideoInitialize.pWindowHandle, g_hInstance, _T("Please wait..."));
if (g_VideoInitialize.pWindowHandle == NULL)
@ -415,8 +405,6 @@ bool OpenGL_MakeCurrent()
// connect the glx-context to the window
#if defined(USE_WX) && USE_WX
GLWin.glCanvas->SetCurrent(*GLWin.glCtxt);
#elif defined(HAVE_COCOA) && HAVE_COCOA
cocoaGLMakeCurrent(GLWin.cocoaCtx,GLWin.cocoaWin);
#elif defined(_WIN32)
return wglMakeCurrent(hDC,hRC);
#elif defined(HAVE_X11) && HAVE_X11
@ -437,11 +425,6 @@ void OpenGL_Update()
// TODO fill in
#elif defined(HAVE_COCOA) && HAVE_COCOA
RECT rcWindow = {0};
rcWindow.right = GLWin.width;
rcWindow.bottom = GLWin.height;
#elif defined(_WIN32)
RECT rcWindow;
if (!EmuWindow::GetParentWnd())
@ -481,10 +464,6 @@ void OpenGL_Shutdown()
{
#if defined(USE_WX) && USE_WX
delete GLWin.glCanvas;
#elif defined(HAVE_COCOA) && HAVE_COCOA
cocoaGLDeleteWindow(GLWin.cocoaWin);
cocoaGLDelete(GLWin.cocoaCtx);
#elif defined(_WIN32)
if (hRC) // Do We Have A Rendering Context?
{

View File

@ -48,10 +48,6 @@
#elif defined(USE_SDL) && USE_SDL
#include <GL/glew.h>
#include <SDL.h>
#elif defined(HAVE_COCOA) && HAVE_COCOA
#include <GL/glew.h>
#include "cocoaGL.h"
#endif // end USE_WX
#if defined(__APPLE__)
@ -76,10 +72,7 @@
typedef struct {
int screen;
#if defined(HAVE_COCOA) && HAVE_COCOA
NSWindow *cocoaWin;
NSOpenGLContext *cocoaCtx;
#elif defined(HAVE_X11) && HAVE_X11
#if defined(HAVE_X11) && HAVE_X11
Window win;
Window parent;
Display *dpy;
@ -87,8 +80,7 @@ typedef struct {
GLXContext ctx;
XSetWindowAttributes attr;
Common::Thread *xEventThread;
#endif // X11
#if defined(USE_WX) && USE_WX
#elif defined(USE_WX) && USE_WX
wxGLCanvas *glCanvas;
wxPanel *panel;
wxGLContext *glCtxt;

View File

@ -25,8 +25,6 @@ files = [
'PostProcessing.cpp',
'FramebufferManager.cpp',
]
compileFlags = [
]
linkFlags = [
]
libs = [
@ -48,12 +46,6 @@ if gfxenv['HAVE_WX']:
'Debugger/Debugger.cpp',
]
if gfxenv['HAVE_COCOA']:
files += [ 'cocoaGL.m' ]
compileFlags += [
'-x',
'objective-c++',
]
if sys.platform == 'win32':
files += [ 'OS/Win32.cpp' ]
@ -105,7 +97,6 @@ if gfxenv['USE_WX'] and not gfxenv['HAVE_WX']:
print "Must have wx to use wxgl"
Return()
gfxenv.Append(
CXXFLAGS = compileFlags,
LINKFLAGS = linkFlags,
)

View File

@ -1,29 +0,0 @@
#import <Cocoa/Cocoa.h>
#import <OpenGL/CGLRenderers.h>
#ifdef __cplusplus
extern "C"
{
#endif
void cocoaGLCreateApp();
NSWindow *cocoaGLCreateWindow(int w,int h);
void cocoaGLSetTitle(NSWindow *win, const char *title);
void cocoaGLMakeCurrent(NSOpenGLContext *ctx, NSWindow *win);
NSOpenGLContext* cocoaGLInit(int mode);
void cocoaGLDelete(NSOpenGLContext *ctx);
void cocoaGLDeleteWindow(NSWindow *window);
void cocoaGLSwap(NSOpenGLContext *ctx,NSWindow *window);
#ifdef __cplusplus
}
#endif

View File

@ -1,149 +0,0 @@
#import "cocoaGL.h"
NSWindow *cocoaGLCreateWindow(int w,int h)
{
NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];
NSWindow *window;
window = [[NSWindow alloc] initWithContentRect:NSMakeRect(50,50,w,h)
styleMask:NSTitledWindowMask | NSResizableWindowMask
backing:NSBackingStoreBuffered
defer:FALSE];
[window setReleasedWhenClosed: YES];
[window setTitle:@"Dolphin on OSX"];
//[window makeKeyAndOrderFront: nil];
[pool release];
return window;
}
void cocoaGLSetTitle(NSWindow *win, const char *title)
{
NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];
[win setTitle: [[[NSString alloc] initWithCString: title encoding: NSASCIIStringEncoding] autorelease]];
[pool release];
}
void cocoaGLMakeCurrent(NSOpenGLContext *ctx, NSWindow *win)
{
NSAutoreleasePool *pool;
pool = [[NSAutoreleasePool alloc] init];
int value = 0;
[ctx setValues:&value forParameter:NSOpenGLCPSwapInterval];
if (ctx) {
[ctx setView:[win contentView]];
[ctx update];
[ctx makeCurrentContext];
}
else
[NSOpenGLContext clearCurrentContext];
[pool release];
}
NSOpenGLContext* cocoaGLInit(int mode)
{
NSAutoreleasePool *pool;
NSOpenGLPixelFormatAttribute attr[32];
NSOpenGLPixelFormat *fmt;
NSOpenGLContext *context;
int i = 0;
pool = [[NSAutoreleasePool alloc] init];
attr[i++] = NSOpenGLPFADepthSize;
attr[i++] = 24;
attr[i++] = NSOpenGLPFADoubleBuffer;
attr[i++] = NSOpenGLPFASampleBuffers;
attr[i++] = mode;
attr[i++] = NSOpenGLPFASamples;
attr[i++] = 1;
attr[i++] = NSOpenGLPFANoRecovery;
#ifdef GL_VERSION_1_3
#else
#ifdef GL_VERSION_1_2
#warning "your card only supports ogl 1.2, dolphin will use software renderer"
//if opengl < 1.3 uncomment this twoo lines to use software renderer
attr[i++] = NSOpenGLPFARendererID;
attr[i++] = kCGLRendererGenericFloatID;
#endif
#endif
attr[i++] = NSOpenGLPFAScreenMask;
attr[i++] = CGDisplayIDToOpenGLDisplayMask(CGMainDisplayID());
attr[i] = 0;
fmt = [[NSOpenGLPixelFormat alloc] initWithAttributes:attr];
if (fmt == nil) {
printf("failed to create pixel format\n");
[pool release];
return NULL;
}
context = [[NSOpenGLContext alloc] initWithFormat:fmt shareContext:nil];
[fmt release];
if (context == nil) {
printf("failed to create context\n");
[pool release];
return NULL;
}
[pool release];
return context;
}
void cocoaGLDelete(NSOpenGLContext *ctx)
{
NSAutoreleasePool *pool;
pool = [[NSAutoreleasePool alloc] init];
[ctx clearDrawable];
[ctx release];
[pool release];
}
void cocoaGLDeleteWindow(NSWindow *window)
{
NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];
[window close];
[pool release];
return;
}
void cocoaGLSwap(NSOpenGLContext *ctx,NSWindow *window)
{
NSAutoreleasePool *pool;
pool = [[NSAutoreleasePool alloc] init];
[window makeKeyAndOrderFront: nil];
ctx = [NSOpenGLContext currentContext];
if (ctx != nil)
[ctx flushBuffer];
else
printf("bad cocoa gl ctx\n");
[pool release];
}

View File

@ -55,8 +55,6 @@ void OpenGL_SwapBuffers()
{
#if defined(USE_WX) && USE_WX
GLWin.glCanvas->SwapBuffers();
#elif defined(HAVE_COCOA) && HAVE_COCOA
cocoaGLSwap(GLWin.cocoaCtx,GLWin.cocoaWin);
#elif defined(_WIN32)
SwapBuffers(hDC);
#elif defined(HAVE_X11) && HAVE_X11
@ -78,8 +76,6 @@ void OpenGL_SetWindowText(const char *text)
{
#if defined(USE_WX) && USE_WX
GLWin.frame->SetTitle(wxString::FromAscii(text));
#elif defined(HAVE_COCOA) && HAVE_COCOA
cocoaGLSetTitle(GLWin.cocoaWin, text);
#elif defined(_WIN32)
// TODO convert text to unicode and change SetWindowTextA to SetWindowText
SetWindowTextA(EmuWindow::GetWnd(), text);
@ -165,13 +161,6 @@ bool OpenGL_Create(SVideoInitialize &_VideoInitialize, int _twidth, int _theight
GLWin.glCanvas->Show(TRUE);
GLWin.glCanvas->SetCurrent(*GLWin.glCtxt);
#elif defined(HAVE_COCOA) && HAVE_COCOA
GLWin.width = s_backbuffer_width;
GLWin.height = s_backbuffer_height;
GLWin.cocoaWin = cocoaGLCreateWindow(GLWin.width, GLWin.height);
GLWin.cocoaCtx = cocoaGLInit(0);
#elif defined(_WIN32)
// ---------------------------------------------------------------------------------------
// Create rendering window in Windows
@ -348,8 +337,6 @@ bool OpenGL_MakeCurrent()
{
#if defined(USE_WX) && USE_WX
GLWin.glCanvas->SetCurrent(*GLWin.glCtxt);
#elif defined(HAVE_COCOA) && HAVE_COCOA
cocoaGLMakeCurrent(GLWin.cocoaCtx,GLWin.cocoaWin);
#elif defined(_WIN32)
if (!wglMakeCurrent(hDC,hRC)) {
PanicAlert("(5) Can't Activate The GL Rendering Context.");
@ -385,11 +372,6 @@ void OpenGL_Update()
// TODO fill in
#elif defined(HAVE_COCOA) && HAVE_COCOA
RECT rcWindow = {0};
rcWindow.right = GLWin.width;
rcWindow.bottom = GLWin.height;
#elif defined(_WIN32)
RECT rcWindow;
if (!EmuWindow::GetParentWnd())
@ -456,10 +438,6 @@ void OpenGL_Shutdown()
#if defined(USE_WX) && USE_WX
delete GLWin.glCanvas;
delete GLWin.frame;
#elif defined(HAVE_COCOA) && HAVE_COCOA
cocoaGLDeleteWindow(GLWin.cocoaWin);
cocoaGLDelete(GLWin.cocoaCtx);
#elif defined(_WIN32)
if (hRC) // Do We Have A Rendering Context?
{

View File

@ -50,9 +50,6 @@
#elif defined(USE_SDL) && USE_SDL
#include <GL/glew.h>
#include <SDL.h>
#elif defined(HAVE_COCOA) && HAVE_COCOA
#include <GL/glew.h>
#include "cocoaGL.h"
#endif // end USE_WX
#if defined(__APPLE__)
@ -82,17 +79,13 @@
typedef struct {
int screen;
#if defined(HAVE_COCOA) && HAVE_COCOA
NSWindow *cocoaWin;
NSOpenGLContext *cocoaCtx;
#elif defined(HAVE_X11) && HAVE_X11
#if defined(HAVE_X11) && HAVE_X11
Window win;
Window parent;
Display *dpy;
GLXContext ctx;
XSetWindowAttributes attr;
#endif // X11
#if defined(USE_WX) && USE_WX
#elif defined(USE_WX) && USE_WX
wxGLCanvas *glCanvas;
wxFrame *frame;
wxGLContext *glCtxt;

View File

@ -53,9 +53,6 @@ conf = gfxenv.Configure(custom_tests = tests,
if sys.platform == 'darwin':
gfxenv['FRAMEWORKS'] = ['CoreFoundation', 'System', 'OpenGL', 'Cocoa', 'Cg']
compileFlags = ['-x','objective-c++',]
files += [ 'cocoaGL.m', ]
conf.CheckPKG('OpenGL')
if gfxenv['HAVE_OPENCL']:
gfxenv['FRAMEWORKS'] += ['OpenCL']

View File

@ -1,29 +0,0 @@
#import <Cocoa/Cocoa.h>
#import <OpenGL/CGLRenderers.h>
#ifdef __cplusplus
extern "C"
{
#endif
void cocoaGLCreateApp();
NSWindow *cocoaGLCreateWindow(int w,int h);
void cocoaGLSetTitle(NSWindow *win, const char *title);
void cocoaGLMakeCurrent(NSOpenGLContext *ctx, NSWindow *win);
NSOpenGLContext* cocoaGLInit(int mode);
void cocoaGLDelete(NSOpenGLContext *ctx);
void cocoaGLDeleteWindow(NSWindow *window);
void cocoaGLSwap(NSOpenGLContext *ctx,NSWindow *window);
#ifdef __cplusplus
}
#endif

View File

@ -1,149 +0,0 @@
#import "cocoaGL.h"
NSWindow *cocoaGLCreateWindow(int w,int h)
{
NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];
NSWindow *window;
window = [[NSWindow alloc] initWithContentRect:NSMakeRect(50,50,w,h)
styleMask:NSTitledWindowMask | NSResizableWindowMask
backing:NSBackingStoreBuffered
defer:FALSE];
[window setReleasedWhenClosed: YES];
[window setTitle:@"Dolphin on OSX"];
//[window makeKeyAndOrderFront: nil];
[pool release];
return window;
}
void cocoaGLSetTitle(NSWindow *win, const char *title)
{
NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];
[win setTitle: [[[NSString alloc] initWithCString: title encoding: NSASCIIStringEncoding] autorelease]];
[pool release];
}
void cocoaGLMakeCurrent(NSOpenGLContext *ctx, NSWindow *win)
{
NSAutoreleasePool *pool;
pool = [[NSAutoreleasePool alloc] init];
int value = 0;
[ctx setValues:&value forParameter:NSOpenGLCPSwapInterval];
if (ctx) {
[ctx setView:[win contentView]];
[ctx update];
[ctx makeCurrentContext];
}
else
[NSOpenGLContext clearCurrentContext];
[pool release];
}
NSOpenGLContext* cocoaGLInit(int mode)
{
NSAutoreleasePool *pool;
NSOpenGLPixelFormatAttribute attr[32];
NSOpenGLPixelFormat *fmt;
NSOpenGLContext *context;
int i = 0;
pool = [[NSAutoreleasePool alloc] init];
attr[i++] = NSOpenGLPFADepthSize;
attr[i++] = 24;
attr[i++] = NSOpenGLPFADoubleBuffer;
attr[i++] = NSOpenGLPFASampleBuffers;
attr[i++] = mode;
attr[i++] = NSOpenGLPFASamples;
attr[i++] = 1;
attr[i++] = NSOpenGLPFANoRecovery;
#ifdef GL_VERSION_1_3
#else
#ifdef GL_VERSION_1_2
#warning "your card only supports ogl 1.2, dolphin will use software renderer"
//if opengl < 1.3 uncomment this twoo lines to use software renderer
attr[i++] = NSOpenGLPFARendererID;
attr[i++] = kCGLRendererGenericFloatID;
#endif
#endif
attr[i++] = NSOpenGLPFAScreenMask;
attr[i++] = CGDisplayIDToOpenGLDisplayMask(CGMainDisplayID());
attr[i] = 0;
fmt = [[NSOpenGLPixelFormat alloc] initWithAttributes:attr];
if (fmt == nil) {
printf("failed to create pixel format\n");
[pool release];
return NULL;
}
context = [[NSOpenGLContext alloc] initWithFormat:fmt shareContext:nil];
[fmt release];
if (context == nil) {
printf("failed to create context\n");
[pool release];
return NULL;
}
[pool release];
return context;
}
void cocoaGLDelete(NSOpenGLContext *ctx)
{
NSAutoreleasePool *pool;
pool = [[NSAutoreleasePool alloc] init];
[ctx clearDrawable];
[ctx release];
[pool release];
}
void cocoaGLDeleteWindow(NSWindow *window)
{
NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];
[window close];
[pool release];
return;
}
void cocoaGLSwap(NSOpenGLContext *ctx,NSWindow *window)
{
NSAutoreleasePool *pool;
pool = [[NSAutoreleasePool alloc] init];
[window makeKeyAndOrderFront: nil];
ctx = [NSOpenGLContext currentContext];
if (ctx != nil)
[ctx flushBuffer];
else
printf("bad cocoa gl ctx\n");
[pool release];
}