summaryrefslogtreecommitdiffstats
path: root/libcxx
diff options
context:
space:
mode:
authorJonathan Roelofs <jonathan@codesourcery.com>2015-01-14 01:29:04 +0000
committerJonathan Roelofs <jonathan@codesourcery.com>2015-01-14 01:29:04 +0000
commit91442356172c0dc1132157dab903851495ef3c28 (patch)
treeba73125290e38b7f5dbb42796df70c80ed2cd9b3 /libcxx
parenta9782ecfb00db1d3d4c2a109d6bfb5d07c1931d9 (diff)
downloadbcm5719-llvm-91442356172c0dc1132157dab903851495ef3c28.tar.gz
bcm5719-llvm-91442356172c0dc1132157dab903851495ef3c28.zip
Refactor the lit config's linker flag discovery code. NFC
llvm-svn: 225920
Diffstat (limited to 'libcxx')
-rw-r--r--libcxx/test/libcxx/test/config.py18
1 files changed, 14 insertions, 4 deletions
diff --git a/libcxx/test/libcxx/test/config.py b/libcxx/test/libcxx/test/config.py
index 9899d94b2ec..a821b8f2b5b 100644
--- a/libcxx/test/libcxx/test/config.py
+++ b/libcxx/test/libcxx/test/config.py
@@ -337,11 +337,23 @@ class Configuration(object):
if abi_library_path:
self.link_flags += ['-L' + abi_library_path,
'-Wl,-rpath,' + abi_library_path]
+
# Configure libraries
+ self.configure_link_flags_cxx_library()
+ self.configure_link_flags_abi_library()
+ self.configure_extra_library_flags()
+
+ link_flags_str = self.get_lit_conf('link_flags', '')
+ self.link_flags += shlex.split(link_flags_str)
+
+ def configure_link_flags_cxx_library(self):
+ libcxx_library = self.get_lit_conf('libcxx_library')
if libcxx_library:
self.link_flags += [libcxx_library]
else:
self.link_flags += ['-lc++']
+
+ def configure_link_flags_abi_library(self):
cxx_abi = self.get_lit_conf('cxx_abi', 'libcxxabi')
if cxx_abi == 'libstdc++':
self.link_flags += ['-lstdc++']
@@ -356,7 +368,8 @@ class Configuration(object):
else:
self.lit_config.fatal(
'C++ ABI setting %s unsupported for tests' % cxx_abi)
- # Configure extra libraries.
+
+ def configure_extra_library_flags(self):
if sys.platform == 'darwin':
self.link_flags += ['-lSystem']
elif sys.platform.startswith('linux'):
@@ -367,9 +380,6 @@ class Configuration(object):
else:
self.lit_config.fatal("unrecognized system: %r" % sys.platform)
- link_flags_str = self.get_lit_conf('link_flags', '')
- self.link_flags += shlex.split(link_flags_str)
-
def configure_sanitizer(self):
san = self.get_lit_conf('use_sanitizer', '').strip()
if san:
OpenPOWER on IntegriCloud