Add Carthage-compliant framework target, for iOS 10 #43
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
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 theLinked Frameworks and Libraries
section of the target General tab.To update in the future, re-run the
carthage update
command.