Support picking the unwinder used for testing on linux (just as libc++abi testing allows)

llvm-svn: 226024
This commit is contained in:
Jonathan Roelofs 2015-01-14 19:29:04 +00:00
parent a0afb55ff9
commit fd41e2f946
1 changed files with 12 additions and 2 deletions

View File

@ -370,11 +370,21 @@ class Configuration(object):
'C++ ABI setting %s unsupported for tests' % cxx_abi)
def configure_extra_library_flags(self):
enable_threads = self.get_lit_bool('enable_threads', True)
llvm_unwinder = self.get_lit_conf('llvm_unwinder', False)
if sys.platform == 'darwin':
self.link_flags += ['-lSystem']
elif sys.platform.startswith('linux'):
self.link_flags += ['-lgcc_eh', '-lc', '-lm', '-lpthread',
'-lrt', '-lgcc_s']
if not llvm_unwinder:
self.link_flags += ['-lgcc_eh']
self.link_flags += ['-lc', '-lm']
if enable_threads:
self.link_flags += ['-lpthread']
self.link_flags += ['-lrt']
if llvm_unwinder:
self.link_flags += ['-lunwind', '-ldl']
else:
self.link_flags += ['-lgcc_s']
elif sys.platform.startswith('freebsd'):
self.link_flags += ['-lc', '-lm', '-pthread', '-lgcc_s']
else: