aboutsummaryrefslogtreecommitdiff
path: root/mesonbuild/dependencies/base.py
diff options
context:
space:
mode:
authorDaniel Mensinger <daniel@mensinger-ka.de>2019-08-21 14:26:21 +0200
committerJussi Pakkanen <jpakkane@gmail.com>2019-08-21 22:04:48 +0300
commitf097b96883a54868cf98600be23893268b5832f4 (patch)
treeebeddc1e307bce6c83d4998e6c7c7a604738b2c3 /mesonbuild/dependencies/base.py
parent6864058b1043103410faabf4a8e908f6f24b36bf (diff)
downloadmeson-f097b96883a54868cf98600be23893268b5832f4.zip
meson-f097b96883a54868cf98600be23893268b5832f4.tar.gz
meson-f097b96883a54868cf98600be23893268b5832f4.tar.bz2
cmake: fix missing -lpthread (fixes #5821)
Diffstat (limited to 'mesonbuild/dependencies/base.py')
-rw-r--r--mesonbuild/dependencies/base.py11
1 files changed, 7 insertions, 4 deletions
diff --git a/mesonbuild/dependencies/base.py b/mesonbuild/dependencies/base.py
index 0c325cc..e517fea 100644
--- a/mesonbuild/dependencies/base.py
+++ b/mesonbuild/dependencies/base.py
@@ -1326,6 +1326,7 @@ class CMakeDependency(ExternalDependency):
'Valid targets are:\n{}'.format(name, list(self.traceparser.targets.keys())))
# Set dependencies with CMake targets
+ reg_is_lib = re.compile(r'^(-l[a-zA-Z0-9_]+|-pthread)$')
processed_targets = []
incDirs = []
compileDefinitions = []
@@ -1393,14 +1394,16 @@ class CMakeDependency(ExternalDependency):
for j in otherDeps:
if j in self.traceparser.targets:
targets += [j]
+ elif reg_is_lib.match(j) or os.path.exists(j):
+ libraries += [j]
processed_targets += [curr]
# Make sure all elements in the lists are unique and sorted
- incDirs = list(sorted(list(set(incDirs))))
- compileDefinitions = list(sorted(list(set(compileDefinitions))))
- compileOptions = list(sorted(list(set(compileOptions))))
- libraries = list(sorted(list(set(libraries))))
+ incDirs = sorted(set(incDirs))
+ compileDefinitions = sorted(set(compileDefinitions))
+ compileOptions = sorted(set(compileOptions))
+ libraries = sorted(set(libraries))
mlog.debug('Include Dirs: {}'.format(incDirs))
mlog.debug('Compiler Definitions: {}'.format(compileDefinitions))