Import('env')
import sys

files = [
	'BPStructs.cpp',
	'DataReader.cpp',
	'Globals.cpp',
	'GLInit.cpp',
	'main.cpp',
	'memcpy_amd.cpp',
	'OpcodeDecoding.cpp',
#	'OpcodeReaders.cpp', # outdated
	'PixelShader.cpp',
	'PixelShaderManager.cpp',
	'rasterfont.cpp',
	'Render.cpp',
	'TextureMngr.cpp',
	'VertexLoader.cpp',
	'VertexLoader_Normal.cpp',
	'VertexShader.cpp',
	'VertexShaderManager.cpp',
	'XFB.cpp',
	'GUI/ConfigDlg.cpp',
	]
compileFlags = [
	'`wx-config --cppflags`',
	]
linkFlags = [
	'`wx-config --libs`',
	]
libs = [
	'videocommon', 'common', 'GLEW', 'jpeg',
	]
if sys.platform == 'darwin':
	platform = 'mac'
	# Use libraries from MacPorts.
	compileFlags.append('-I/opt/local/include')
	linkFlags.append('-L/opt/local/lib')
	# Use SDL.
	compileFlags.append('`sdl-config --cflags`')
	linkFlags.append('`sdl-config --libs`')
	# Use frameworks instead of plain libs, when possible.
	linkFlags += [
		'-framework %s' % framework
		for framework in [ 'OpenGL', 'Cg' ]
		]
else:
	platform = 'linux'
	# Libraries with pkg-config support.
	compileFlags.append('`pkg-config --cflags xxf86vm`')
	linkFlags.append('`pkg-config --libs xxf86vm`')
	# Libraries without pkg-config support.
	libs += [ 'GL', 'Cg', 'CgGL', 'X11' ]

gfxenv = env.Copy(
	CXXFLAGS = ' '.join(compileFlags),
	LINKFLAGS = ' '.join(linkFlags),
	)
gfxenv.SharedLibrary(
	'../../../../Binary/%s/Plugins/zeroogl.so' % platform,
	files,
	LIBS = libs
	)
