aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--mesonbuild/interpreterbase.py3
-rw-r--r--test cases/common/38 run program/get-version.py3
-rw-r--r--test cases/common/38 run program/meson.build2
3 files changed, 7 insertions, 1 deletions
diff --git a/mesonbuild/interpreterbase.py b/mesonbuild/interpreterbase.py
index 64177ab..e5d7eb1 100644
--- a/mesonbuild/interpreterbase.py
+++ b/mesonbuild/interpreterbase.py
@@ -172,6 +172,9 @@ class FeatureCheckBase:
@staticmethod
def get_target_version(subproject):
+ # Don't do any checks if project() has not been parsed yet
+ if subproject not in mesonlib.project_meson_versions:
+ return ''
return mesonlib.project_meson_versions[subproject]
def use(self, subproject):
diff --git a/test cases/common/38 run program/get-version.py b/test cases/common/38 run program/get-version.py
new file mode 100644
index 0000000..a22d559
--- /dev/null
+++ b/test cases/common/38 run program/get-version.py
@@ -0,0 +1,3 @@
+#!/usr/bin/env python3
+
+print('1.2')
diff --git a/test cases/common/38 run program/meson.build b/test cases/common/38 run program/meson.build
index ab800ef..a05cea3 100644
--- a/test cases/common/38 run program/meson.build
+++ b/test cases/common/38 run program/meson.build
@@ -1,4 +1,4 @@
-project('run command', 'c')
+project('run command', version : run_command('get-version.py', check : true).stdout().strip())
if build_machine.system() == 'windows'
c = run_command('cmd', '/c', 'echo', 'hello')