FYI ASan/MSan should discover llvm-symbolizer from PATH env var. So, as an alternative, you could just propagate necessary PATH bits to lit-tests.
On Thu, Nov 13, 2014 at 6:47 PM, Eric Fiselier <[email protected]> wrote: > Author: ericwf > Date: Thu Nov 13 20:47:08 2014 > New Revision: 221966 > > URL: http://llvm.org/viewvc/llvm-project?rev=221966&view=rev > Log: > Setup llvm-symbolizer when running the tests with sanitizers > > Modified: > libcxx/trunk/test/lit.cfg > > Modified: libcxx/trunk/test/lit.cfg > URL: > http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/lit.cfg?rev=221966&r1=221965&r2=221966&view=diff > > ============================================================================== > --- libcxx/trunk/test/lit.cfg (original) > +++ libcxx/trunk/test/lit.cfg Thu Nov 13 20:47:08 2014 > @@ -425,16 +425,30 @@ class Configuration(object): > def configure_sanitizer(self): > san = self.get_lit_conf('llvm_use_sanitizer', '').strip() > if san: > + # Search for llvm-symbolizer along the compiler path first > + # and then along the PATH env variable. > + symbolizer_search_paths = os.environ.get('PATH', '') > + cxx_path = lit.util.which(self.cxx) > + if cxx_path is not None: > + symbolizer_search_paths = os.path.dirname(cxx_path) + \ > + os.pathsep + > symbolizer_search_paths > + llvm_symbolizer = lit.util.which('llvm-symbolizer', > + symbolizer_search_paths) > + # Setup the sanitizer compile flags > self.compile_flags += ['-fno-omit-frame-pointer'] > if sys.platform.startswith('linux'): > self.link_flags += ['-ldl'] > if san == 'Address': > self.compile_flags += ['-fsanitize=address'] > + if llvm_symbolizer is not None: > + self.env['ASAN_SYMBOLIZER_PATH'] = llvm_symbolizer > self.config.available_features.add('asan') > elif san == 'Memory' or san == 'MemoryWithOrigins': > self.compile_flags += ['-fsanitize=memory'] > if san == 'MemoryWithOrigins': > self.compile_flags += > ['-fsanitize-memory-track-origins'] > + if llvm_symbolizer is not None: > + self.env['MSAN_SYMBOLIZER_PATH'] = llvm_symbolizer > self.config.available_features.add('msan') > elif san == 'Undefined': > self.compile_flags += ['-fsanitize=undefined', > > > _______________________________________________ > cfe-commits mailing list > [email protected] > http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits > -- Alexey Samsonov [email protected]
_______________________________________________ cfe-commits mailing list [email protected] http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits
