diff --git a/SConstruct b/SConstruct
index e4034548c4881ce202e0b21434acbc9b6e911ca9..c350d0d0712e0e0c5892251e1c7a28130783dd80 100644
--- a/SConstruct
+++ b/SConstruct
@@ -128,8 +128,11 @@ if GetOption("coverage"):
     if env["CC"] == "gcc":
         env.Append(LIBS=['gcov'])
     else:
-        env.ParseConfig('%s --cflags --ldflags --libs core executionengine mcjit analysis x86codegen x86info' % \
-                        env["LLVM_CONFIG"])
+        # XXX Why do need this with --coverage when we're doing it anyway?
+        if GetOption("use_llvm"):
+            env.ParseConfig('%s --cflags --ldflags --libs core executionengine mcjit analysis x86codegen x86info' % \
+                            env["LLVM_CONFIG"])
+
 
 if os.getenv("CC") == "clang" or env['PLATFORM'] == 'darwin':
     env.Replace(CC="clang",