X-Git-Url: https://git.libre-soc.org/?a=blobdiff_plain;f=scons%2Fllvm.py;h=a34edfb4b67148f5ac908a54532f6f0575010bd6;hb=fa0c19d17b9b6308fdca01f609c167b3ea1e68ae;hp=eaa2ecbe026cdcfe3d129e00f96cfe76968258a9;hpb=7d48219b3ac78895315ea6cef3ced3e55d3d92f0;p=mesa.git diff --git a/scons/llvm.py b/scons/llvm.py index eaa2ecbe026..a34edfb4b67 100644 --- a/scons/llvm.py +++ b/scons/llvm.py @@ -50,7 +50,7 @@ def generate(env): llvm_dir = None else: if not os.path.isdir(llvm_dir): - raise SCons.Errors.InternalError, "Specified LLVM directory not found" + raise SCons.Errors.InternalError("Specified LLVM directory not found") if env['debug']: llvm_subdir = 'Debug' @@ -61,7 +61,7 @@ def generate(env): if not os.path.isdir(llvm_bin_dir): llvm_bin_dir = os.path.join(llvm_dir, 'bin') if not os.path.isdir(llvm_bin_dir): - raise SCons.Errors.InternalError, "LLVM binary directory not found" + raise SCons.Errors.InternalError("LLVM binary directory not found") env.PrependENVPath('PATH', llvm_bin_dir) @@ -123,6 +123,10 @@ def generate(env): 'LLVMDemangle', 'LLVMGlobalISel', 'LLVMDebugInfoMSF', 'LLVMBinaryFormat', ]) + if env['platform'] == 'windows' and env['crosscompile']: + # LLVM 5.0 requires MinGW w/ pthreads due to use of std::thread and friends. + assert env['gcc'] + env['CXX'] = env['CXX'] + '-posix' elif llvm_version >= distutils.version.LooseVersion('4.0'): env.Prepend(LIBS = [ 'LLVMX86Disassembler', 'LLVMX86AsmParser', @@ -211,8 +215,11 @@ def generate(env): 'imagehlp', 'psapi', 'shell32', - 'advapi32' + 'advapi32', + 'ole32', + 'uuid', ]) + if env['msvc']: # Some of the LLVM C headers use the inline keyword without # defining it.