New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
OS_OBJECT_USE_OBJC is disabled for all Cocoapods #2659
Comments
@rsanchezsaez where does the |
It comes from libdispatch's os/object.h, which is in turn imported by
I'm not sure where the problem is coming from. Adding |
This is not a CocoaPods bug. Please see the documentation about the deployment target of a podspec http://guides.cocoapods.org/syntax/podspec.html#deployment_target And a quick search of the tickets yielded at least:
In the future, please read the CONTRIBUTING file before posting new tickets. |
My bad, sorry about that. Thanks for the clarification! Makes perfect sense. |
Since iOS 6.0+ and OS X 10.8+, GDC queues are full ObjC objects, and hence they are managed by ARC. This is denoted by the
OS_OBJECT_USE_OBJC
preprocessor constant having a non-zero value, as seen here.We are using a project with the Base SDK set to iOS 8.0 and the Deployment Target set to iOS 7.0.
This is the first line of our
Podfile
:so all of our Pods project targets have a iOS 7.0 Deployment target as well.
Using this code
from our AppDelegate correctly prints
OS_OBJECT_USE_OBJC=1
. Using that code from within any source file on the Pods project seems to printOS_OBJECT_USE_OBJC=0
.I read somewhere that using of GDC queues as objects can be opted-out, but I cannot find any related setting on Xcode's Build Settings. I think this is a Cocoapods bug and that
OS_OBJECT_USE_OBJC
should be enabled by default within the Pods when the Deployment target is iOS 6.0+ or OS X 10.8+.See this SO question for additional info.
The text was updated successfully, but these errors were encountered: