* The rtti fix actually dug up a bug in the scons build scripts. * Autotools took the LLVM cpp and cxx flags, while scons only took the cpp flags. * This grabs the cxx flags and applies them where needed. * I'm going to run over this and clean things up further, however this fixes the build where scons is used and rtti is disabled. * The only linux platform I can find with LLVM no-rtti is Ubuntu. * Resolved bug #70471
Tested-by: Vinson Lee <[email protected]> --- scons/llvm.py | 3 +++ src/gallium/auxiliary/SConscript | 2 ++ src/gallium/drivers/llvmpipe/SConscript | 9 +++++---- 3 files changed, 10 insertions(+), 4 deletions(-) diff --git a/scons/llvm.py b/scons/llvm.py index c1c3736..34b5891 100644 --- a/scons/llvm.py +++ b/scons/llvm.py @@ -190,6 +190,9 @@ def generate(env): pass env.MergeFlags(cppflags) + cxxflags = env.backtick('llvm-config --cxxflags').rstrip() + env.Append(LLVM_CXXFLAGS = cxxflags) + components = ['engine', 'bitwriter', 'x86asmprinter'] if llvm_version >= distutils.version.LooseVersion('3.1'): diff --git a/src/gallium/auxiliary/SConscript b/src/gallium/auxiliary/SConscript index 31dfed3..3ac3112 100644 --- a/src/gallium/auxiliary/SConscript +++ b/src/gallium/auxiliary/SConscript @@ -46,6 +46,8 @@ source = env.ParseSourceList('Makefile.sources', [ ]) if env['llvm']: + env.Append(CXXFLAGS = env['LLVM_CXXFLAGS']) + source += env.ParseSourceList('Makefile.sources', [ 'GALLIVM_SOURCES', 'GALLIVM_CPP_SOURCES' diff --git a/src/gallium/drivers/llvmpipe/SConscript b/src/gallium/drivers/llvmpipe/SConscript index 20500fd..71faee2 100644 --- a/src/gallium/drivers/llvmpipe/SConscript +++ b/src/gallium/drivers/llvmpipe/SConscript @@ -10,12 +10,13 @@ if not env['llvm']: env = env.Clone() llvmpipe = env.ConvenienceLibrary( - target = 'llvmpipe', - source = env.ParseSourceList('Makefile.sources', 'C_SOURCES') - ) + target = 'llvmpipe', + source = env.ParseSourceList('Makefile.sources', 'C_SOURCES') +) -env.Alias('llvmpipe', llvmpipe) +env.Append(CXXFLAGS = env['LLVM_CXXFLAGS']) +env.Alias('llvmpipe', llvmpipe) if not env['embedded']: env = env.Clone() -- 1.8.4 _______________________________________________ mesa-dev mailing list [email protected] http://lists.freedesktop.org/mailman/listinfo/mesa-dev
