aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJussi Pakkanen <jpakkane@gmail.com>2025-02-24 13:45:49 +0200
committerJussi Pakkanen <jpakkane@gmail.com>2025-02-24 13:45:49 +0200
commit537f3a4b6b596f638af339b098fdeb2bade678e3 (patch)
treee6835af0cbd2c5c25bc52b06bc725a680a89e13c
parent477d53cb8a3cfc0e6668e4f2a796e994f5b09767 (diff)
downloadmeson-537f3a4b6b596f638af339b098fdeb2bade678e3.zip
meson-537f3a4b6b596f638af339b098fdeb2bade678e3.tar.gz
meson-537f3a4b6b596f638af339b098fdeb2bade678e3.tar.bz2
Use override value when setting up Cython language.
Closes #14284.
-rw-r--r--mesonbuild/build.py10
1 files changed, 8 insertions, 2 deletions
diff --git a/mesonbuild/build.py b/mesonbuild/build.py
index 3bc7d96..0c1e7e6 100644
--- a/mesonbuild/build.py
+++ b/mesonbuild/build.py
@@ -980,8 +980,14 @@ class BuildTarget(Target):
if 'vala' in self.compilers and 'c' not in self.compilers:
self.compilers['c'] = self.all_compilers['c']
if 'cython' in self.compilers:
- key = OptionKey('cython_language', machine=self.for_machine)
- value = self.environment.coredata.optstore.get_value_for(key)
+ # Not grea, but we can't ask for the override value from "the system"
+ # because this object is currently being constructed so it is not
+ # yet placed in the data store. Grab it directly from override strings
+ # instead.
+ value = self.get_override('cython_language')
+ if value is None:
+ key = OptionKey('cython_language', machine=self.for_machine)
+ value = self.environment.coredata.optstore.get_value_for(key)
try:
self.compilers[value] = self.all_compilers[value]
except KeyError: