dolphin/Source/Plugins/Plugin_VideoOGL/Src/SConscript

129 lines
2.5 KiB
Python
Raw Normal View History

# -*- python -*-
Import('env')
# can we import path in one place?
import sys
sys.path.append(env['base_dir']+'SconsTests')
import utils
name = "Plugin_VideoOGL"
files = [
'BPStructs.cpp',
'Globals.cpp',
'GLUtil.cpp',
'main.cpp',
'Config.cpp',
'memcpy_amd.cpp',
'OpcodeDecoding.cpp',
'PixelShaderManager.cpp',
'rasterfont.cpp',
'Render.cpp',
'TextureMngr.cpp',
'ImageWrite.cpp',
'NativeVertexFormat.cpp',
'VertexManager.cpp',
'VertexLoader.cpp',
'VertexLoader_Color.cpp',
'VertexLoader_Normal.cpp',
'VertexLoader_Position.cpp',
'VertexLoader_TextCoord.cpp',
'VertexLoaderManager.cpp',
'VertexShaderManager.cpp',
'TextureConverter.cpp',
'XFB.cpp',
'Logging/Console.cpp',
'Logging/Logging.cpp',
]
compileFlags = [
'-fPIC',
]
linkFlags = [
]
libs = [
'videocommon', 'common', 'GLEW',
]
gfxenv = env.Clone()
if gfxenv['HAVE_WX']:
files += [
'GUI/ConfigDlg.cpp',
'Debugger/Debugger.cpp',
'Debugger/PBView.cpp',
]
if gfxenv['osx64']:
files += [ 'cocoaGL.m' ]
compileFlags += [
'-x',
'objective-c++',
]
linkFlags += [
'-framework',
'cocoa',
'-arch',
'x86_64'
]
tests = {'CheckPKG' : utils.CheckPKG}
conf = gfxenv.Configure(custom_tests = tests)
if not (conf.CheckPKG('gl') and conf.CheckPKG('glu')):
print name + " must have opengl (gl and glu) to be build"
Return()
# check for xxf86vm
gfxenv['HAVE_XXF86VM'] = conf.CheckPKG('xxf86vm')
gfxenv = conf.Finish()
if gfxenv['HAVE_XXF86VM']:
gfxenv.ParseConfig("pkg-config xxf86vm --cflags --libs")
gfxenv.ParseConfig("pkg-config gl --cflags --libs")
gfxenv.ParseConfig("pkg-config glu --cflags --libs")
if sys.platform == 'darwin':
# Use libraries from MacPorts.
compileFlags.append('-I/opt/local/include')
linkFlags.append('-L/opt/local/lib')
# Use frameworks instead of plain libs, when possible.
linkFlags += [
'-Wl,-framework,%s' % framework
for framework in [ 'Cg' ]
]
else:
# Libraries without pkg-config support.
libs += [ 'Cg', 'CgGL' ]
# change to True if you want to compile with SDL
useSDL = not (gfxenv['HAVE_X11'] and gfxenv['HAVE_XXF86VM'])
if useSDL and not gfxenv['HAVE_SDL']:
print name + " must have either X11 or sdl to be build"
Return()
if useSDL:
compileFlags += [ '-DUSE_SDL=1' ]
gfxenv.Append(
CXXFLAGS = compileFlags,
LINKFLAGS = linkFlags,
)
gfxenv.SharedLibrary(
env['plugin_dir']+name,
files,
LIBS = libs + gfxenv['LIBS']
)