== SCons ==

* Add BGE_CXXFLAGS so we can get rid of hard-coded BGE compiler settings. This was only done for windows, but now linuxers and osxers should be able to set BGE-specific optimisation too. See the windows default configs for example.
This commit is contained in:
Nathan Letwory 2009-09-01 23:32:34 +00:00
parent f12f238062
commit 3f5115064a
17 changed files with 20 additions and 90 deletions

@ -149,6 +149,7 @@ CXX = 'cl.exe'
CCFLAGS = ['/nologo', '/Ob1', '/J', '/W3', '/Gd', '/wd4244', '/wd4305', '/wd4800', '/wd4065', '/wd4267']
CXXFLAGS = ['/EHsc']
BGE_CXXFLAGS = ['/O2', '/EHsc', '/GR', '/fp:fast']
BF_DEBUG_CCFLAGS = ['/Zi', '/FR${TARGET}.sbr']

@ -163,6 +163,7 @@ CXX = 'cl.exe'
CFLAGS = []
CCFLAGS = ['/nologo', '/Ob1', '/J', '/W3', '/Gd', '/wd4244', '/wd4305', '/wd4800', '/wd4065', '/wd4267']
CXXFLAGS = ['/EHsc']
BGE_CXXFLAGS = ['/O2', '/EHsc', '/GR', '/fp:fast']
BF_DEBUG_CCFLAGS = ['/Zi', '/FR${TARGET}.sbr']

@ -28,10 +28,4 @@ incs += ' ' + env['BF_PYTHON_INC']
incs += ' ' + env['BF_BULLET_INC']
incs += ' ' + env['BF_OPENGL_INC']
cxxflags = []
if env['OURPLATFORM'] in ('win32-vc','win64-vc'):
cxxflags.append ('/GR')
cxxflags.append ('/O2')
cxxflags.append ('/EHsc')
env.BlenderLib ( 'bf_bloutines', sources, Split(incs), defs, libtype=['core', 'player'], priority=[300, 45] , cxx_compileflags=cxxflags)
env.BlenderLib ( 'bf_bloutines', sources, Split(incs), defs, libtype=['core', 'player'], priority=[300, 45] , cxx_compileflags=env['BGE_CXXFLAGS'])

@ -23,4 +23,4 @@ incs += ' #source/blender/makesrna'
incs += ' ' + env['BF_PYTHON_INC']
incs += ' ' + env['BF_BULLET_INC']
env.BlenderLib ( 'bf_converter', sources, Split(incs), defs, libtype=['core','player'], priority=[305,50] )
env.BlenderLib ( 'bf_converter', sources, Split(incs), defs, libtype=['core','player'], priority=[305,50], cxx_compileflags=env['BGE_CXXFLAGS'])

@ -6,10 +6,4 @@ sources = env.Glob('*.cpp')
incs ='. #source/kernel/gen_system #intern/string #intern/moto/include #source/gameengine/SceneGraph #source/blender/blenloader'
incs += ' ' + env['BF_PYTHON_INC']
cxxflags = []
if env['OURPLATFORM'] in ('win32-vc', 'win64-vc'):
cxxflags.append ('/GR')
cxxflags.append ('/O2')
cxxflags.append ('/EHsc')
env.BlenderLib ( 'bf_expressions', sources, Split(incs), [], libtype=['core','player'], priority = [360,120], cxx_compileflags=cxxflags)
env.BlenderLib ( 'bf_expressions', sources, Split(incs), [], libtype=['core','player'], priority = [360,120], cxx_compileflags=env['BGE_CXXFLAGS'])

@ -17,12 +17,8 @@ if env['WITH_BF_SDL']:
else:
defs.append('DISABLE_SDL')
cxxflags = []
if env['OURPLATFORM'] in ('win32-vc', 'win64-vc'):
cxxflags.append ('/GR')
cxxflags.append ('/O2')
cxxflags.append ('/EHsc')
if env['BF_DEBUG']:
defs.append('_DEBUG')
env.BlenderLib ( 'bf_logic', sources, Split(incs), defs, libtype=['core','player'], priority=[330, 100], cxx_compileflags=cxxflags )
env.BlenderLib ( 'bf_logic', sources, Split(incs), defs, libtype=['core','player'], priority=[330, 100], cxx_compileflags=env['BGE_CXXFLAGS'])

@ -62,10 +62,4 @@ incs += Split(env['BF_PYTHON_INC'])
incs += Split(env['BF_PNG_INC'])
incs += Split(env['BF_ZLIB_INC'])
cxxflags = []
if env['OURPLATFORM'] in ('win32-vc', 'win64-vc'):
cxxflags.append ('/GR')
cxxflags.append ('/O2')
cxxflags.append ('/EHsc')
env.BlenderLib (libname='gp_common', sources=source_files, includes=incs, defines = [], libtype='player', priority=5, cxx_compileflags=cxxflags)
env.BlenderLib (libname='gp_common', sources=source_files, includes=incs, defines = [], libtype='player', priority=5, cxx_compileflags=env['BGE_CXXFLAGS'])

@ -42,14 +42,8 @@ incs = ['.',
incs += Split(env['BF_PYTHON_INC'])
cxxflags = []
if env['OURPLATFORM'] in ('win32-vc', 'win64-vc'):
cxxflags.append ('/GR')
cxxflags.append ('/O2')
cxxflags.append ('/EHsc')
defs = ''
defs = []
if env['WITH_BF_FFMPEG']:
defs += ' WITH_FFMPEG'
defs.append('WITH_FFMPEG')
env.BlenderLib (libname='gp_ghost', sources=source_files, includes = incs, defines = Split(defs), libtype='player',priority=5, cxx_compileflags=cxxflags)
env.BlenderLib (libname='gp_ghost', sources=source_files, includes = incs, defines = defs, libtype='player',priority=5, cxx_compileflags=env['BGE_CXXFLAGS'])

@ -9,11 +9,4 @@ incs += ' #source/gameengine/Network #source/gameengine/SceneGraph'
incs += ' ' + env['BF_PYTHON_INC']
cxxflags = []
if env['OURPLATFORM'] in ('win32-vc', 'win64-vc'):
cxxflags.append ('/GR')
cxxflags.append ('/O2')
cxxflags.append ('/EHsc')
env.BlenderLib ( 'kx_network', Split(sources), Split(incs), defines=[],libtype=['core', 'player'], priority=[400, 145], cxx_compileflags=cxxflags )
env.BlenderLib ( 'kx_network', Split(sources), Split(incs), defines=[],libtype=['core', 'player'], priority=[400, 145], cxx_compileflags=env['BGE_CXXFLAGS'])

@ -29,12 +29,8 @@ if env['WITH_BF_SDL']:
else:
defs.append('DISABLE_SDL')
cxxflags = []
if env['OURPLATFORM'] in ('win32-vc', 'win64-vc'):
cxxflags.append ('/GR')
cxxflags.append ('/O2')
cxxflags.append ('/EHsc')
if env['BF_DEBUG']:
defs.append('_DEBUG') # for Python
env.BlenderLib ( 'bf_ketsji', sources, Split(incs), defs, libtype=['core','player'], priority=[320, 60], cxx_compileflags = cxxflags )
env.BlenderLib ( 'bf_ketsji', sources, Split(incs), defs, libtype=['core','player'], priority=[320, 60], cxx_compileflags=env['BGE_CXXFLAGS'])

@ -21,10 +21,4 @@ incs += ' #intern/guardedalloc'
incs += ' ' + env['BF_BULLET_INC']
incs += ' ' + env['BF_PYTHON_INC']
cxxflags = []
if env['OURPLATFORM'] in ('win32-vc', 'win64-vc'):
cxxflags.append ('/GR')
cxxflags.append ('/O2')
cxxflags.append ('/EHsc')
env.BlenderLib ( 'bf_bullet', Split(sources), Split(incs), [], libtype=['core','player'], priority=[350,80], cxx_compileflags=cxxflags )
env.BlenderLib ( 'bf_bullet', Split(sources), Split(incs), [], libtype=['core','player'], priority=[350,80], cxx_compileflags=env['BGE_CXXFLAGS'])

@ -5,10 +5,4 @@ sources = 'PHY_IMotionState.cpp PHY_IController.cpp PHY_IPhysicsController.cpp P
incs = '. ../Dummy #intern/moto/include'
cxxflags = []
if env['OURPLATFORM'] in ('win32-vc', 'win64-vc'):
cxxflags.append ('/GR')
cxxflags.append ('/O2')
cxxflags.append ('/EHsc')
env.BlenderLib ( 'bf_common', Split(sources), Split(incs), [], libtype=['core','player'], priority=[360, 90], cxx_compileflags = cxxflags )
env.BlenderLib ( 'bf_common', Split(sources), Split(incs), [], libtype=['core','player'], priority=[360, 90], cxx_compileflags=env['BGE_CXXFLAGS'])

@ -8,10 +8,4 @@ incs += ' #source/blender/gpu #extern/glew/include ' + env['BF_OPENGL_INC']
incs += ' #source/blender/gameengine/Ketsji #source/gameengine/SceneGraph #source/blender/makesdna #source/blender/blenkernel'
incs += ' #intern/guardedalloc #source/blender/blenlib'
cxxflags = []
if env['OURPLATFORM'] in ('win32-vc', 'win64-vc'):
cxxflags.append ('/GR')
cxxflags.append ('/O2')
cxxflags.append ('/EHsc')
env.BlenderLib ( 'bf_oglrasterizer', Split(sources), Split(incs), [], libtype=['core','player'], priority=[350, 115], cxx_compileflags = cxxflags )
env.BlenderLib ( 'bf_oglrasterizer', Split(sources), Split(incs), [], libtype=['core','player'], priority=[350, 115], cxx_compileflags=env['BGE_CXXFLAGS'])

@ -7,10 +7,4 @@ sources = env.Glob('*.cpp')
incs = '. #source/kernel/gen_system #intern/string #intern/moto/include #source/gameengine/BlenderRoutines #extern/glew/include #source/gameengine/Expressions #source/gameengine/SceneGraph #source/blender/blenkernel #source/blender/makesdna'
incs += ' ' + env['BF_PYTHON_INC']
cxxflags = []
if env['OURPLATFORM'] in ('win32-vc', 'win64-vc'):
cxxflags.append ('/GR')
cxxflags.append ('/O2')
cxxflags.append ('/EHsc')
env.BlenderLib ( 'bf_rasterizer', sources, Split(incs), [], libtype=['core','player'], priority=[350,115], cxx_compileflags = cxxflags )
env.BlenderLib ( 'bf_rasterizer', sources, Split(incs), [], libtype=['core','player'], priority=[350,115], cxx_compileflags=env['BGE_CXXFLAGS'])

@ -6,10 +6,4 @@ sources = env.Glob('*.cpp')
incs = '. #intern/moto/include'
cxxflags = []
if env['OURPLATFORM'] in ('win32-vc', 'win64-vc'):
cxxflags.append ('/GR')
cxxflags.append ('/O2')
cxxflags.append ('/EHsc')
env.BlenderLib ( 'bf_scenegraph', sources, Split(incs), [], libtype=['core','player'], priority=[325,125], cxx_compileflags = cxxflags )
env.BlenderLib ( 'bf_scenegraph', sources, Split(incs), [], libtype=['core','player'], priority=[325,125], cxx_compileflags=env['BGE_CXXFLAGS'])

@ -15,15 +15,10 @@ incs += ' #source/blender/gpu #source/kernel/gen_system #intern/string #intern/m
incs += ' #intern/guardedalloc #extern/glew/include'
defs = []
cxxflags = []
if env['OURPLATFORM'] in ('win32-vc', 'win64-vc'):
cxxflags.append ('/GR')
cxxflags.append ('/O2')
cxxflags.append ('/EHsc')
if env['BF_DEBUG']:
defs.append('_DEBUG')
incs += ' ' + env['BF_PYTHON_INC']
#incs += ' ' + env['BF_OPENGL_INC']
@ -32,4 +27,4 @@ if env['WITH_BF_FFMPEG']:
incs += ' ' + env['BF_FFMPEG_INC'] + ' ' + env['BF_PTHREADS_INC']
defs.append('__STDC_CONSTANT_MACROS')
env.BlenderLib ( 'bf_videotex', sources, Split(incs), defs, libtype=['core','player'], priority=[300, 72], cxx_compileflags = cxxflags )
env.BlenderLib ( 'bf_videotex', sources, Split(incs), defs, libtype=['core','player'], priority=[300, 72], cxx_compileflags=env['BGE_CXXFLAGS'])

@ -77,6 +77,7 @@ def validate_arguments(args, bc):
'BF_OPENGL_LINKFLAGS',
'CFLAGS', 'CCFLAGS', 'CXXFLAGS', 'CPPFLAGS',
'REL_CFLAGS', 'REL_CCFLAGS', 'REL_CXXFLAGS',
'BGE_CXXFLAGS',
'BF_PROFILE_CFLAGS', 'BF_PROFILE_CCFLAGS', 'BF_PROFILE_CXXFLAGS', 'BF_PROFILE_LINKFLAGS',
'BF_DEBUG_CFLAGS', 'BF_DEBUG_CCFLAGS', 'BF_DEBUG_CXXFLAGS',
'C_WARN', 'CC_WARN', 'CXX_WARN',
@ -333,6 +334,7 @@ def read_opts(cfg, args):
('CFLAGS', 'C only flags', ''),
('CCFLAGS', 'Generic C and C++ flags', ''),
('CXXFLAGS', 'C++ only flags', ''),
('BGE_CXXFLAGS', 'C++ only flags for BGE', ''),
('CPPFLAGS', 'Defines', ''),
('REL_CFLAGS', 'C only release flags', ''),
('REL_CCFLAGS', 'Generic C and C++ release flags', ''),