Merge branch 'gallium-polygon-stipple'
[mesa.git] / scons / llvm.py
index 1b033acb1b3f50d848de1fc694da9e2cdb903719..66f972df5fbfcc396fcdd1c92e22f7c2ea583f1d 100644 (file)
@@ -141,14 +141,20 @@ def generate(env):
         llvm_version = distutils.version.LooseVersion(llvm_version)
 
         try:
-            env.ParseConfig('llvm-config --cppflags')
-            env.ParseConfig('llvm-config --libs jit interpreter nativecodegen bitwriter')
+            # Treat --cppflags specially to prevent NDEBUG from disabling
+            # assertion failures in debug builds.
+            cppflags = env.ParseFlags('!llvm-config --cppflags')
+            try:
+                cppflags['CPPDEFINES'].remove('NDEBUG')
+            except ValueError:
+                pass
+            env.MergeFlags(cppflags)
+
+            env.ParseConfig('llvm-config --libs')
             env.ParseConfig('llvm-config --ldflags')
         except OSError:
             print 'scons: llvm-config version %s failed' % llvm_version
             return
-        else:
-            env['LINK'] = env['CXX']
 
     assert llvm_version is not None
     env['llvm'] = True