Commit 831fd9f4 authored by Marius Rackwitz's avatar Marius Rackwitz

Weak link the aggregate framework

The aggregate target's product isn't really needed, so it isn't copied into the app bundle to not clutter and expose details of the build process. `dyld` is trying to link it at runtime, as the aggregate framework is linked to the user's target to trick Xcode, so that it concludes there is target dependency without the need to declare a literal target dependency, which implies that we would need to add a subproject and add the reference to a target, which is newly created on each run of `pod install`, which would cause again undesirably changes to the user's project.
parent 8b3dd4c4
...@@ -117,8 +117,12 @@ module Pod ...@@ -117,8 +117,12 @@ module Pod
target_basename = target.product_basename target_basename = target.product_basename
new_product_ref = frameworks.files.find { |f| f.path == target.product_name } || new_product_ref = frameworks.files.find { |f| f.path == target.product_name } ||
frameworks.new_product_ref_for_target(target_basename, target.product_type) frameworks.new_product_ref_for_target(target_basename, target.product_type)
unless build_phase.files_references.include?(new_product_ref) unless build_file = build_phase.build_file(new_product_ref)
build_phase.add_file_reference(new_product_ref) build_file = build_phase.add_file_reference(new_product_ref)
end
if target.requires_framework?
build_file.settings ||= {}
build_file.settings['ATTRIBUTES'] = ['Weak']
end end
end end
end end
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment