summaryrefslogtreecommitdiff
path: root/mesonbuild/compilers/cpp.py
diff options
context:
space:
mode:
authorBarnabás Pőcze <pobrn@protonmail.com>2024-06-01 21:26:49 +0200
committerJussi Pakkanen <jpakkane@gmail.com>2024-06-23 22:33:37 +0300
commiteba5498e9b40fdc6fd7d9621a9262dbd8364ea62 (patch)
tree79c23bb6d1c9c9a0cbbd0e5f2001d12ed03240e5 /mesonbuild/compilers/cpp.py
parent03ffb5bd6f2e441227e0a1758b258c2a4d3d58d7 (diff)
downloadmeson-eba5498e9b40fdc6fd7d9621a9262dbd8364ea62.tar.gz
compilers: cpp: fix header name and return value use in header check
There are two issues: 1. has_header() wants just the header name without surrounding <> or similar; it fails otherwise. 2. has_header() returns a tuple of two bools, where the first element determines whether or not the header has been found. So use that element specifically, otherwise the tuple will always evaluate to true because it is not empty. Fixes: 675b47b0692131 ("compilers: cpp: improve libc++ vs libstdc++ detection (again)")
Diffstat (limited to 'mesonbuild/compilers/cpp.py')
-rw-r--r--mesonbuild/compilers/cpp.py2
1 files changed, 1 insertions, 1 deletions
diff --git a/mesonbuild/compilers/cpp.py b/mesonbuild/compilers/cpp.py
index df2f90510..9467a35c5 100644
--- a/mesonbuild/compilers/cpp.py
+++ b/mesonbuild/compilers/cpp.py
@@ -185,7 +185,7 @@ class _StdCPPLibMixin(CompilerMixinBase):
def language_stdlib_provider(self, env: Environment) -> str:
# https://stackoverflow.com/a/31658120
- header = 'version' if self.has_header('<version>', '', env) else 'ciso646'
+ header = 'version' if self.has_header('version', '', env)[0] else 'ciso646'
is_libcxx = self.has_header_symbol(header, '_LIBCPP_VERSION', '', env)[0]
lib = 'c++' if is_libcxx else 'stdc++'
return lib