[
https://issues.apache.org/jira/browse/CB-10034?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15056985#comment-15056985
]
Roberto Andrade commented on CB-10034:
--------------------------------------
I just came across a scenario where I also wanted to add a framework reference
to the plugin but I did not want it to be automatically added to the "Linked
Frameworks and Libraries" section of the build/target.
Perhaps in addition the "embed" (defaulting to true) we should also incorporate
a "link" (also defaulting to true) so people can override both behaviors if
needed.
My use case was a "private" framework that did not contain binaries for
linking, just header files that the "public" framework didn't expose. so I need
the private framework to be copied over to the platform/plugins I can reference
the header files but since it has no binaries in it, it should not be linked,
which I could do by overriding the "linked" attribute on the framework
reference in my plugins.xml.
> Plugins iOS Custom Frameworks are added to "Embedded Binaries" XCode project
> section by default
> -----------------------------------------------------------------------------------------------
>
> Key: CB-10034
> URL: https://issues.apache.org/jira/browse/CB-10034
> Project: Apache Cordova
> Issue Type: Bug
> Components: CordovaLib
> Affects Versions: 5.4.0, 5.3.3
> Environment: OSX developing for iOS
> Reporter: Roberto Andrade
>
> Since CB-9517 was merged and released in 5.3.0 it seems to have changed the
> approach to adding a "custom framework" dependency declared in {{plugin.xml}}
> with the {{<framework custom="true"/>}} directive into the xcode project, as
> per the [following
> change|https://github.com/apache/cordova-lib/commit/737f2df4e5c8de205c90cc29614483ebcd71f605].
> It assumes all frameworks are "embeddable", which is not true for a great
> chunk of frameworks out there that have not being built with the new iOS
> 8/XCode 6 Cocoa Framework architecture. Most of the frameworks I use
> (developed prior to Apple coming up with the "official" iOS 8 Framework
> utilities and Xcode project options) use community provided
> [iOS-Universal-Framework|https://github.com/kstenerud/iOS-Universal-Framework],
> which once an artifact generated using that project template gets added to
> the "embedded binaries" section of a depending app (ie: Cordova app), Xcode
> has issues doing its thing because they were not built with the iOS 8
> framework magic in it.
> I suggest that the new behavior be the default (ie: add it to the embedded
> binaries section) but provide an option when declaring the framework
> dependency in {{plugin.xml}} so that we can override the behavior and specify
> whether or not we want it to the embedded (at that point the old <=5.2.0
> behavior should take over, ie: just add it to the list of framework
> dependencies but not the the embedded binaries section of the project), may I
> suggest:
> {{<framework custom="true" embed="false"/>}}
> as the optional override (being assumed as {{true}} by default)?
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]