aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--mesonbuild/dependencies.py5
-rw-r--r--mesonbuild/mesonlib.py6
2 files changed, 8 insertions, 3 deletions
diff --git a/mesonbuild/dependencies.py b/mesonbuild/dependencies.py
index 37e2cbd..18d418e 100644
--- a/mesonbuild/dependencies.py
+++ b/mesonbuild/dependencies.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:
diff --git a/mesonbuild/mesonlib.py b/mesonbuild/mesonlib.py
index fbd732a..7248be9 100644
--- a/mesonbuild/mesonlib.py
+++ b/mesonbuild/mesonlib.py
@@ -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_)