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

git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@226024 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Jonathan Roelofs
2015-01-14 19:29:04 +00:00
parent 6f599cea0e
commit 7819fd7108

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: