Merge pull request #1758 from dcbaker/llvm-cpp-blacklist

LLVM cpp blacklist
pull/1688/head
Jussi Pakkanen 8 years ago committed by GitHub
commit ebfaf3a16f
  1. 5
      mesonbuild/dependencies.py
  2. 6
      mesonbuild/mesonlib.py

@ -1635,6 +1635,7 @@ class LLVMDependency(Dependency):
llvmconfig = None
_llvmconfig_found = False
__best_found = None
__cpp_blacklist = {'-DNDEBUG'}
def __init__(self, environment, kwargs):
super().__init__('llvm-config', kwargs)
@ -1651,7 +1652,7 @@ class LLVMDependency(Dependency):
self.check_llvmconfig(req_version)
if not self._llvmconfig_found:
if self.__best_found is not None:
mlog.log('found {!r} but need:'.format(self.version),
mlog.log('found {!r} but need:'.format(self.__best_found),
req_version)
else:
mlog.log("No llvm-config found; can't detect dependency")
@ -1680,7 +1681,7 @@ class LLVMDependency(Dependency):
p, out = Popen_safe([self.llvmconfig, '--cppflags'])[:2]
if p.returncode != 0:
raise DependencyException('Could not generate includedir for LLVM.')
self.cargs = shlex.split(out)
self.cargs = list(mesonlib.OrderedSet(shlex.split(out)).difference(self.__cpp_blacklist))
p, out = Popen_safe([self.llvmconfig, '--components'])[:2]
if p.returncode != 0:

@ -708,7 +708,8 @@ class OrderedSet(collections.MutableSet):
def __repr__(self):
# Don't print 'OrderedSet("")' for an empty set.
if self.__container:
return 'OrderedSet("{}")'.format('", "'.join(self.__container.keys()))
return 'OrderedSet("{}")'.format(
'", "'.join(repr(e) for e in self.__container.keys()))
return 'OrderedSet()'
def add(self, value):
@ -721,3 +722,6 @@ class OrderedSet(collections.MutableSet):
def update(self, iterable):
for item in iterable:
self.__container[item] = None
def difference(self, set_):
return type(self)(e for e in self if e not in set_)

Loading…
Cancel
Save