aboutsummaryrefslogtreecommitdiff
path: root/mesonbuild/backend/xcodebackend.py
diff options
context:
space:
mode:
authorJussi Pakkanen <jpakkane@gmail.com>2021-08-20 19:24:19 +0300
committerJussi Pakkanen <jpakkane@gmail.com>2021-08-21 22:33:47 +0300
commit3f380b8e1d1dadd05aa2587d3a9a60b009dcced6 (patch)
tree49205cd6d166eb39c0d62fb7ffc7ad428cdb7875 /mesonbuild/backend/xcodebackend.py
parent85d102bc6eb5564115986b9521b6e54bbcd05761 (diff)
downloadmeson-3f380b8e1d1dadd05aa2587d3a9a60b009dcced6.zip
meson-3f380b8e1d1dadd05aa2587d3a9a60b009dcced6.tar.gz
meson-3f380b8e1d1dadd05aa2587d3a9a60b009dcced6.tar.bz2
Fix duplicated frameworks in the Xcode backend.
Diffstat (limited to 'mesonbuild/backend/xcodebackend.py')
-rw-r--r--mesonbuild/backend/xcodebackend.py8
1 files changed, 7 insertions, 1 deletions
diff --git a/mesonbuild/backend/xcodebackend.py b/mesonbuild/backend/xcodebackend.py
index 6e12cbd..01053c1 100644
--- a/mesonbuild/backend/xcodebackend.py
+++ b/mesonbuild/backend/xcodebackend.py
@@ -136,6 +136,9 @@ class PbxDict:
self.keys.add(key)
self.items.append(item)
+ def has_item(self, key):
+ return key in self.keys
+
def add_comment(self, comment):
if isinstance(comment, str):
self.items.append(PbxComment(str))
@@ -710,7 +713,10 @@ class XCodeBackend(backends.Backend):
if isinstance(dep, dependencies.AppleFrameworks):
for f in dep.frameworks:
fw_dict = PbxDict()
- objects_dict.add_item(self.native_frameworks_fileref[f], fw_dict, f)
+ framework_fileref = self.native_frameworks_fileref[f]
+ if objects_dict.has_item(framework_fileref):
+ continue
+ objects_dict.add_item(framework_fileref, fw_dict, f)
fw_dict.add_item('isa', 'PBXFileReference')
fw_dict.add_item('lastKnownFileType', 'wrapper.framework')
fw_dict.add_item('name', f'{f}.framework')