From d0ad48fdc998730e46b93e7d209d897d96b9a29e Mon Sep 17 00:00:00 2001
From: Jens Verwiebe <info@jensverwiebe.de>
Date: Wed, 12 Mar 2014 13:04:21 +0100
Subject: [PATCH] OSX/bullet: i have to use -O0 again, else weird bullet
 behaviour comes back. I overlooked in cmake my fix same time changed the
 optimization level to 0, so not use optimization is the real fix ( postponed
 for after 2.70 ). I appears we should investigate scons anyway: compileflags
 does not apply to c and c++ same time as expected.

---
 extern/bullet2/src/SConscript | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/extern/bullet2/src/SConscript b/extern/bullet2/src/SConscript
index 3bc2af7a1fd..69e56782974 100644
--- a/extern/bullet2/src/SConscript
+++ b/extern/bullet2/src/SConscript
@@ -19,7 +19,8 @@ elif env['OURPLATFORM'] in ('linux', 'freebsd4', 'freebsd5'):
     cflags += ['-O2']
 elif sys.platform=='darwin':
     defs += ' NDEBUG'
-    bt_cxx_flags = env['CXXFLAGS'] + ['-O2', '-fPIC', '-msse3', '-mssse3', '-ffast-math']
+    bt_cc_flags = env['CCFLAGS'] + ['-O0', '-fPIC', '-msse','-msse2', '-msse3', '-mssse3', '-ffast-math']
+    bt_cxx_flags = env['CXXFLAGS'] + ['-O0', '-fPIC', '-msse','-msse2', '-msse3', '-mssse3', '-ffast-math']
 
 bullet2_src = env.Glob("LinearMath/*.cpp")
 bullet2_src += env.Glob("BulletCollision/BroadphaseCollision/*.cpp")
@@ -38,6 +39,6 @@ bullet2_src += env.Glob("BulletSoftBody/*.cpp")
 incs = '. BulletCollision BulletDynamics LinearMath BulletSoftBody'
 
 if sys.platform=='darwin':
-	env.BlenderLib ( libname = 'extern_bullet2', sources=bullet2_src, includes=Split(incs), defines=Split(defs), libtype=['extern','player'], priority=[20,137], cc_compileflags=env['CCFLAGS'], cxx_compileflags=bt_cxx_flags )
+	env.BlenderLib ( libname = 'extern_bullet2', sources=bullet2_src, includes=Split(incs), defines=Split(defs), libtype=['extern','player'], priority=[20,137], cc_compileflags=bt_cc_flags, cxx_compileflags=bt_cxx_flags )
 else:
 	env.BlenderLib ( libname = 'extern_bullet2', sources=bullet2_src, includes=Split(incs), defines=Split(defs), libtype=['extern','player'], priority=[20,137], compileflags=cflags )
-- 
GitLab