[libcxx] r226322 - Add 'no_default_flags' option for turning off all default test compile and link flags.

Eric Fiselier eric at efcs.ca
Fri Jan 16 13:22:08 PST 2015


Author: ericwf
Date: Fri Jan 16 15:22:08 2015
New Revision: 226322

URL: http://llvm.org/viewvc/llvm-project?rev=226322&view=rev
Log:
Add 'no_default_flags' option for turning off all default test compile and link flags.

When 'no_default_flags' is true only flags passed using '--param=compile_flags'
and '--param=link_flags' will be used when compiling the tests. This option
can be used to run the test suite against libstdc++ and helps with all
unusual test suite configurations.

NOTE: sanitizer flags are still added when '--param=use_sanitizer' is used even
if '--param=no_default_flags' is given.



Modified:
    libcxx/trunk/test/libcxx/test/config.py
    libcxx/trunk/www/lit_usage.html

Modified: libcxx/trunk/test/libcxx/test/config.py
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/libcxx/test/config.py?rev=226322&r1=226321&r2=226322&view=diff
==============================================================================
--- libcxx/trunk/test/libcxx/test/config.py (original)
+++ libcxx/trunk/test/libcxx/test/config.py Fri Jan 16 15:22:08 2015
@@ -262,6 +262,14 @@ class Configuration(object):
             self.config.available_features.add('long_tests')
 
     def configure_compile_flags(self):
+      no_default_flags = self.get_lit_bool('no_default_flags', False)
+      if not no_default_flags:
+        self.configure_default_compile_flags()
+      # Configure extra flags
+      compile_flags_str = self.get_lit_conf('compile_flags', '')
+      self.compile_flags += shlex.split(compile_flags_str)
+
+    def configure_default_compile_flags(self):
         # Try and get the std version from the command line. Fall back to
         # default given in lit.site.cfg is not present. If default is not
         # present then force c++11.
@@ -294,10 +302,6 @@ class Configuration(object):
                                   ' enable_threads is true.')
         # Use verbose output for better errors
         self.compile_flags += ['-v']
-        # Configure extra compile flags.
-        compile_flags_str = self.get_lit_conf('compile_flags', '')
-        self.compile_flags += shlex.split(compile_flags_str)
-
         sysroot = self.get_lit_conf('sysroot')
         if sysroot:
             self.compile_flags += ['--sysroot', sysroot]
@@ -339,16 +343,18 @@ class Configuration(object):
         self.config.available_features.add('libcpp-has-no-monotonic-clock')
 
     def configure_link_flags(self):
-        self.link_flags += ['-nodefaultlibs']
-
-        # Configure library path
-        self.configure_link_flags_cxx_library_path()
-        self.configure_link_flags_abi_library_path()
-
-        # Configure libraries
-        self.configure_link_flags_cxx_library()
-        self.configure_link_flags_abi_library()
-        self.configure_extra_library_flags()
+        no_default_flags = self.get_lit_bool('no_default_flags', False)
+        if not no_default_flags:
+          self.link_flags += ['-nodefaultlibs']
+
+          # Configure library path
+          self.configure_link_flags_cxx_library_path()
+          self.configure_link_flags_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)

Modified: libcxx/trunk/www/lit_usage.html
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/www/lit_usage.html?rev=226322&r1=226321&r2=226322&view=diff
==============================================================================
--- libcxx/trunk/www/lit_usage.html (original)
+++ libcxx/trunk/www/lit_usage.html Fri Jan 16 15:22:08 2015
@@ -132,6 +132,16 @@ Note: This does not use the installed he
 </p>
 
 <p>
+<h3 class="lit-option">no_default_flags=<bool></h3>
+<blockquote class="lit-option-desc">
+<b>Default: </b><code>False</code></br>
+Disable all default compile and link flags from being added. When this option is
+used only flags specified using the <code>compile_flags</code> and
+<code>link_flags</code> will be used.
+</blockquote>
+</p>
+
+<p>
 <h3 class="lit-option">compile_flags="<list-of-args>"</h3>
 <blockquote class="lit-option-desc">
 Specify additional compile flags as a space delimited string.





More information about the cfe-commits mailing list