summaryrefslogtreecommitdiff
path: root/mesonbuild/backend/xcodebackend.py
diff options
context:
space:
mode:
authorNick <0xb000@gmail.com>2024-11-04 17:58:54 +0200
committerDylan Baker <dylan@pnwbakers.com>2024-11-04 09:23:15 -0800
commit273894d9897dc60e524506e5dbefc550184aa2cf (patch)
tree6ab235f3c7d7d56f6d601247a3eca90e9f80f09c /mesonbuild/backend/xcodebackend.py
parent040c8d04cc66af891e251939bd44bcc0da11a543 (diff)
downloadmeson-273894d9897dc60e524506e5dbefc550184aa2cf.tar.gz
Xcode backend: only use found appleframeworksn
Add a check before using an `appleframeworks` to make sure it was found. This fixes an exception in meson while encountering an optional dep for the target.
Diffstat (limited to 'mesonbuild/backend/xcodebackend.py')
-rw-r--r--mesonbuild/backend/xcodebackend.py10
1 files changed, 5 insertions, 5 deletions
diff --git a/mesonbuild/backend/xcodebackend.py b/mesonbuild/backend/xcodebackend.py
index fc490c1b5..31fd272b3 100644
--- a/mesonbuild/backend/xcodebackend.py
+++ b/mesonbuild/backend/xcodebackend.py
@@ -526,7 +526,7 @@ class XCodeBackend(backends.Backend):
self.native_frameworks_fileref = {}
for t in self.build_targets.values():
for dep in t.get_external_deps():
- if dep.name == 'appleframeworks':
+ if dep.name == 'appleframeworks' and dep.found():
for f in dep.frameworks:
self.native_frameworks[f] = self.gen_id()
self.native_frameworks_fileref[f] = self.gen_id()
@@ -691,7 +691,7 @@ class XCodeBackend(backends.Backend):
def generate_pbx_build_file(self, objects_dict: PbxDict) -> None:
for tname, t in self.build_targets.items():
for dep in t.get_external_deps():
- if dep.name == 'appleframeworks':
+ if dep.name == 'appleframeworks' and dep.found():
for f in dep.frameworks:
fw_dict = PbxDict()
fwkey = self.native_frameworks[f]
@@ -848,7 +848,7 @@ class XCodeBackend(backends.Backend):
def generate_pbx_file_reference(self, objects_dict: PbxDict) -> None:
for tname, t in self.build_targets.items():
for dep in t.get_external_deps():
- if dep.name == 'appleframeworks':
+ if dep.name == 'appleframeworks' and dep.found():
for f in dep.frameworks:
fw_dict = PbxDict()
framework_fileref = self.native_frameworks_fileref[f]
@@ -1023,7 +1023,7 @@ class XCodeBackend(backends.Backend):
file_list = PbxArray()
bt_dict.add_item('files', file_list)
for dep in t.get_external_deps():
- if dep.name == 'appleframeworks':
+ if dep.name == 'appleframeworks' and dep.found():
for f in dep.frameworks:
file_list.add_item(self.native_frameworks[f], f'{f}.framework in Frameworks')
bt_dict.add_item('runOnlyForDeploymentPostprocessing', 0)
@@ -1071,7 +1071,7 @@ class XCodeBackend(backends.Backend):
for t in self.build_targets.values():
for dep in t.get_external_deps():
- if dep.name == 'appleframeworks':
+ if dep.name == 'appleframeworks' and dep.found():
for f in dep.frameworks:
frameworks_children.add_item(self.native_frameworks_fileref[f], f)