SCons:
authorNathan Letwory <nathan@letworyinteractive.com>
Sun, 15 Feb 2009 23:26:00 +0000 (23:26 +0000)
committerNathan Letwory <nathan@letworyinteractive.com>
Sun, 15 Feb 2009 23:26:00 +0000 (23:26 +0000)
* giving compileflags, cc_compileflags and cxx_compileflags to BlenderLib() now actually overrides any other setting (so there's no unclarity when ie. conflicting options are being specified in REL_CFLAGS et al). These are set after either release or debug flags, but before any *_WARN flags (so those stay maintained).
* add cxx_compileflags for GE parts on win32-vc to have better performance.
* NOTE: if platform maintainers (OSX and Linux) could check and do the same for their systems. Not vital, but probably very, very much welcomed by GE users.

15 files changed:
extern/bullet2/src/SConscript
source/gameengine/BlenderRoutines/SConscript
source/gameengine/Expressions/SConscript
source/gameengine/GameLogic/SConscript
source/gameengine/GamePlayer/common/SConscript
source/gameengine/GamePlayer/ghost/SConscript
source/gameengine/Ketsji/KXNetwork/SConscript
source/gameengine/Ketsji/SConscript
source/gameengine/Physics/Bullet/SConscript
source/gameengine/Physics/common/SConscript
source/gameengine/Rasterizer/RAS_OpenGLRasterizer/SConscript
source/gameengine/Rasterizer/SConscript
source/gameengine/SceneGraph/SConscript
source/gameengine/VideoTexture/SConscript
tools/Blender.py

index 203407569b181e29b03101f45685b53090e5ffff..48e30cdf58a9dc9e53f4406917ad47eae2e66c9a 100644 (file)
@@ -10,7 +10,7 @@ cflags = []
 if env['OURPLATFORM']=='win32-vc':
     defs += ' WIN32 NDEBUG _WINDOWS _LIB'
     #cflags += ['/MT', '/W3', '/GX', '/O2', '/Op']
-    cflags += ['/MT', '/W3', '/GX', '/Og', '/Ot', '/Ob1', '/Op', '/G6']
+    cflags += ['/MT', '/W3', '/GX', '/Og', '/Ot', '/Ob1', '/Op', '/G6', '/O3']
 elif env['OURPLATFORM']=='win32-mingw':
     defs += ' NDEBUG'
     cflags += ['-O2']
index 78adbc83d9b4512c597fc63f05d6389ce4456122..7a1bf4d9ad613df4b9c631ccd5c125e93d951d92 100644 (file)
@@ -25,5 +25,6 @@ incs += ' ' + env['BF_OPENGL_INC']
 cxxflags = []
 if env['OURPLATFORM']=='win32-vc':
        cxxflags.append ('/GR')
+       cxxflags.append ('/O2')
 
-env.BlenderLib ( 'bf_bloutines', sources, Split(incs), [], libtype=['game', 'game2', 'player'], priority=[0, 0, 55] , compileflags=cxxflags)
+env.BlenderLib ( 'bf_bloutines', sources, Split(incs), [], libtype=['game', 'game2', 'player'], priority=[0, 0, 55] , cxx_compileflags=cxxflags)
index 809ac31371eb5207a3350119a4698a5a0bf601e2..3d855d406231b708437723d901daabc31a170c7e 100644 (file)
@@ -6,4 +6,9 @@ sources = env.Glob('*.cpp')
 incs ='. #source/kernel/gen_system #intern/string #intern/moto/include'
 incs += ' ' + env['BF_PYTHON_INC']
 
-env.BlenderLib ( 'bf_expressions', sources, Split(incs), [], libtype=['game','player'], priority = [45,125] )
+cxxflags = []
+if env['OURPLATFORM']=='win32-vc':
+       cxxflags.append ('/GR')
+       cxxflags.append ('/O2')
+
+env.BlenderLib ( 'bf_expressions', sources, Split(incs), [], libtype=['game','player'], priority = [45,125], cxx_compileflags=cxxflags)
index b4e2159dc22f7d6718fc0e48a405feec44c4d599..ebf225f728f46a96c76ad3a86c05300c787799ff 100644 (file)
@@ -17,4 +17,9 @@ if env['WITH_BF_SDL']:
 else:
        defs += ' DISABLE_SDL'
 
-env.BlenderLib ( 'bf_logic', sources, Split(incs), Split(defs), libtype=['game','player'], priority=[30, 110] )
+cxxflags = []
+if env['OURPLATFORM']=='win32-vc':
+       cxxflags.append ('/GR')
+       cxxflags.append ('/O2')
+
+env.BlenderLib ( 'bf_logic', sources, Split(incs), Split(defs), libtype=['game','player'], priority=[30, 110], cxx_compileflags=cxxflags )
index 30f20a670d31863d87819715f10db0b958ea8982..c9bda78d9053c5a91a6d7f4434e5c712dc6d71f0 100644 (file)
@@ -67,8 +67,9 @@ incs += Split(env['BF_SOLID_INC'])
 incs += Split(env['BF_PNG_INC'])
 incs += Split(env['BF_ZLIB_INC'])
 
-cflags=[]
+cxxflags = []
 if env['OURPLATFORM']=='win32-vc':
-    cflags = ['/GR']
+       cxxflags.append ('/GR')
+       cxxflags.append ('/O2')
 
-env.BlenderLib (libname='gp_common', sources=source_files, includes=incs, defines = [], libtype='player', priority=5, compileflags=cflags)
+env.BlenderLib (libname='gp_common', sources=source_files, includes=incs, defines = [], libtype='player', priority=5, cxx_compileflags=cxxflags)
index 4f1324b39388bbce39595774f715a795b79522c8..0785ce4bd0d543609e8a0e478fa14b944a6d6749 100644 (file)
@@ -45,12 +45,14 @@ incs = ['.',
 
 incs += Split(env['BF_PYTHON_INC'])
 incs += Split(env['BF_SOLID_INC'])
-cflags = []
+
+cxxflags = []
 if env['OURPLATFORM']=='win32-vc':
-    cflags = ['/GR']
+       cxxflags.append ('/GR')
+       cxxflags.append ('/O2')
 
 defs = ''
 if env['WITH_BF_FFMPEG']:
     defs += ' WITH_FFMPEG'
 
-env.BlenderLib (libname='gp_ghost', sources=source_files, includes = incs, defines = Split(defs), libtype='player',priority=0, compileflags=cflags)
+env.BlenderLib (libname='gp_ghost', sources=source_files, includes = incs, defines = Split(defs), libtype='player',priority=0, cxx_compileflags=cxxflags)
index 2297b96c19e34fe3d10b6fe66d940771ff64e50e..2476ed1f275a82cd63172d71ceb718e152de6f24 100644 (file)
@@ -9,4 +9,10 @@ incs += ' #source/gameengine/Network'
 
 incs += ' ' + env['BF_PYTHON_INC']
 
-env.BlenderLib ( 'kx_network', Split(sources), Split(incs), defines=[],libtype=['game2', 'player'], priority=[5, 155] )
+cxxflags = []
+if env['OURPLATFORM']=='win32-vc':
+       cxxflags.append ('/GR')
+       cxxflags.append ('/O2')
+
+
+env.BlenderLib ( 'kx_network', Split(sources), Split(incs), defines=[],libtype=['game2', 'player'], priority=[5, 155], cxx_compileflags=cxxflags )
index f5c620b583fd72c36783f1b5d52c1d45751e314d..e9e68f14df898b8a957a416075da22d4bed6cff8 100644 (file)
@@ -34,11 +34,6 @@ incs += ' #source/gameengine/Physics/Sumo #source/gameengine/Physics/Sumo/includ
 incs += ' #source/gameengine/Physics/Sumo/Fuzzics/include #source/gameengine/Network/LoopBackNetwork'
 incs += ' #source/blender/misc #source/blender/blenloader #extern/glew/include #source/blender/gpu'
 
-cflags = []
-if env['OURPLATFORM'] == 'win32-vc':
-       cflags.append('/GR')
-       cflags.append('/Ox')
-
 incs += ' ' + env['BF_SOLID_INC']
 incs += ' ' + env['BF_PYTHON_INC']
 incs += ' ' + env['BF_BULLET_INC']
@@ -47,4 +42,9 @@ incs += ' ' + env['BF_OPENGL_INC']
 if  env['WITH_BF_SDL']:
     incs += ' ' + env['BF_SDL_INC']
 
-env.BlenderLib ( 'bf_ketsji', sources, Split(incs), [], libtype=['game','player'], priority=[25, 72], compileflags = cflags )
+cxxflags = []
+if env['OURPLATFORM']=='win32-vc':
+       cxxflags.append ('/GR')
+       cxxflags.append ('/O2')
+
+env.BlenderLib ( 'bf_ketsji', sources, Split(incs), [], libtype=['game','player'], priority=[25, 72], cxx_compileflags = cxxflags )
index 0936d45197afa8da67a9206dbcee504a39d0b49f..0d5bf4933d89339448198564935b60a41cc9547f 100644 (file)
@@ -7,9 +7,9 @@ incs = '. ../common #source/kernel/gen_system #intern/string #intern/moto/includ
 
 incs += ' ' + env['BF_BULLET_INC']
 
-cflags = []
+cxxflags = []
 if env['OURPLATFORM']=='win32-vc':
-    cflags.append('/GR')
-    cflags.append('/O2')
+       cxxflags.append ('/GR')
+       cxxflags.append ('/O2')
 
-env.BlenderLib ( 'bf_bullet', Split(sources), Split(incs), [], libtype=['game','player'], priority=[15,90] )
+env.BlenderLib ( 'bf_bullet', Split(sources), Split(incs), [], libtype=['game','player'], priority=[15,90], cxx_compileflags=cxxflags )
index 91c5101675e6330b1d21faa4be9d2638962a547f..474536e1f76fc01169ce0af8e12484e394039714 100644 (file)
@@ -5,4 +5,9 @@ sources = 'PHY_IMotionState.cpp PHY_IPhysicsController.cpp PHY_IPhysicsEnvironme
 
 incs = '. ../Dummy #intern/moto/include'
 
-env.BlenderLib ( 'bf_common', Split(sources), Split(incs), [], libtype=['game', 'game2','player'], priority=[20, 35, 95] )
+cxxflags = []
+if env['OURPLATFORM']=='win32-vc':
+       cxxflags.append ('/GR')
+       cxxflags.append ('/O2')
+
+env.BlenderLib ( 'bf_common', Split(sources), Split(incs), [], libtype=['game', 'game2','player'], priority=[20, 35, 95], cxx_compileflags = cxxflags )
index 8d46528f7f0de08525da7b97927e32c8d103c97d..6731da9a776796c2046292a8c9f30ed027ddfe4a 100644 (file)
@@ -6,4 +6,9 @@ sources = env.Glob('*.cpp')
 incs = '. #source/kernel/gen_system #intern/string #intern/moto/include #source/gameengine/Rasterizer #source/gameengine/BlenderRoutines '
 incs += ' #source/blender/gpu #extern/glew/include ' + env['BF_OPENGL_INC']
 
-env.BlenderLib ( 'bf_oglrasterizer', Split(sources), Split(incs), [], libtype=['game','player'], priority=[40, 120] )
+cxxflags = []
+if env['OURPLATFORM']=='win32-vc':
+       cxxflags.append ('/GR')
+       cxxflags.append ('/O2')
+
+env.BlenderLib ( 'bf_oglrasterizer', Split(sources), Split(incs), [], libtype=['game','player'], priority=[40, 120], cxx_compileflags = cxxflags )
index a024f7e0ee6f3921fe09a402bc55708e8a769d8d..a16a04b85145f2d7e2a9bfc044d1d672c6ab9266 100644 (file)
@@ -7,9 +7,9 @@ sources = env.Glob('*.cpp')
 incs = '. #source/kernel/gen_system #intern/string #intern/moto/include #source/gameengine/BlenderRoutines #extern/glew/include #source/gameengine/Expressions #source/blender/blenkernel #source/blender/makesdna'
 incs += ' ' + env['BF_PYTHON_INC']
 
+cxxflags = []
 if env['OURPLATFORM']=='win32-vc':
-       cflags = []
-       cflags.append('/Ox')
-       env.BlenderLib ( 'bf_rasterizer', sources, Split(incs), [], libtype=['game','player'], priority=[35,115], compileflags = cflags )
-else:
-       env.BlenderLib ( 'bf_rasterizer', sources, Split(incs), [], libtype=['game','player'], priority=[35,115] )
+       cxxflags.append ('/GR')
+       cxxflags.append ('/O2')
+
+env.BlenderLib ( 'bf_rasterizer', sources, Split(incs), [], libtype=['game','player'], priority=[35,115], cxx_compileflags = cxxflags )
index 23c1c24c2977229ded69f9d6622d866ed2e0bcd1..8ebf9c0b850119ce5a8148a0fad4f60dd0ac4593 100644 (file)
@@ -6,4 +6,9 @@ sources = env.Glob('*.cpp') #'SG_BBox.cpp SG_Controller.cpp SG_IObject.cpp SG_No
 
 incs = '. #intern/moto/include'
 
-env.BlenderLib ( 'bf_scenegraph', sources, Split(incs), [], libtype=['game','player'], priority=[50,130] )
+cxxflags = []
+if env['OURPLATFORM']=='win32-vc':
+       cxxflags.append ('/GR')
+       cxxflags.append ('/O2')
+
+env.BlenderLib ( 'bf_scenegraph', sources, Split(incs), [], libtype=['game','player'], priority=[50,130], cxx_compileflags = cxxflags )
index f3fe0dab6ad835abd8d3f4a6b75810c27b33f92f..28737ed06e5fc15627e2a6a999aeea00a671aa53 100644 (file)
@@ -15,11 +15,12 @@ incs += ' #source/blender/gpu #source/kernel/gen_system #intern/string #intern/m
 incs += ' #intern/guardedalloc #intern/SoundSystem'
 incs += ' #extern/glew/include'
 
-cflags = []
 defs = ''
-if env['OURPLATFORM'] == 'win32-vc':
-       cflags.append('/GR')
-       cflags.append('/Ox')
+cxxflags = []
+if env['OURPLATFORM']=='win32-vc':
+       cxxflags.append ('/GR')
+       cxxflags.append ('/O2')
+
 
 incs += ' ' + env['BF_PYTHON_INC']
 #incs += ' ' + env['BF_OPENGL_INC']
@@ -29,4 +30,4 @@ if env['WITH_BF_FFMPEG']:
     incs += ' ' + env['BF_FFMPEG_INC']
     defs += ' __STDC_CONSTANT_MACROS'
 
-env.BlenderLib ( 'bf_videotex', sources, Split(incs), Split(defs), libtype=['game','player'], priority=[25, 72], compileflags = cflags )
+env.BlenderLib ( 'bf_videotex', sources, Split(incs), Split(defs), libtype=['game','player'], priority=[25, 72], cxx_compileflags = cxxflags )
index 1c54e98f1776c9c7c696f5fbadca139ed6f873ff..9c978fccf4986375d23a2a9457cc3ff4e90ef081 100644 (file)
@@ -434,11 +434,11 @@ class BlenderEnvironment(SConsEnvironment):
                                        lenv.Append(CCFLAGS = lenv['BF_PROFILE_CCFLAGS'])
                                        lenv.Append(CXXFLAGS = lenv['BF_PROFILE_CXXFLAGS'])
                        if compileflags:
-                               lenv.Append(CFLAGS = compileflags)
+                               lenv.Replace(CFLAGS = compileflags)
                        if cc_compileflags:
-                               lenv.Append(CCFLAGS = cc_compileflags)
+                               lenv.Replace(CCFLAGS = cc_compileflags)
                        if cxx_compileflags:
-                               lenv.Append(CXXFLAGS = cxx_compileflags)
+                               lenv.Replace(CXXFLAGS = cxx_compileflags)
                        lenv.Append(CFLAGS = lenv['C_WARN'])
                        lenv.Append(CCFLAGS = lenv['CC_WARN'])
                        lenv.Append(CXXFLAGS = lenv['CXX_WARN'])