Skip to content
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

Add Carthage-compliant framework target, for iOS 10 #43

Open
wants to merge 8 commits into
base: master
Choose a base branch
from

Conversation

sstadelman
Copy link

I'm a NUI developer, and am working to update the workflow to support Carthage dependency manager for modern swift applications. Carthage is dependent on the shared build scheme(s) in the *.xcodeproj. For modern iOS applications, the *.framework linkage is preferable to the library approach.

I have not touched any of the existing targets, but instead added a new target, of type: iOS, objective-c, framework. iOS 10 SDK, $(ARCHS_STANDARD).

I copied the build phases settings of the MacOS framework target, and added the flag -fno-objc-arc to the necessary source .m files.

Last, I set the new build scheme for the iOS framework to "shared", and pushed the xcscheme, which can be discovered by Carthage dependency manager.


To link CoreParse to an iOS application target, using Carthage, the developer should add the following line to their Cartfile:
github "https://github.com/beelsebob/CoreParse.git" "master" (Idealy, a new release could be created, eliminating the need for the branch name)

Then, run carthage update from the project root. This checks out the source of the CoreParse repo, and attempts to build the shared schemes. The developer should then find the built framework in the $(SRC_ROOT)/carthage/Build folder, and drag to the Linked Frameworks and Libraries section of the target General tab.

To update in the future, re-run the carthage update command.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant