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
SR-3086: Xcode project generation puts modules from external packages together with local ones #777
Conversation
…n; this is just to make the next diff containing the actual changes more clear.
… generated Xcode project, and add modules from the external packages to appropriate directories underneath. This is just a structure navigator change; there is no change to linkage semantics. This addresses https://bugs.swift.org/browse/SR-3086 "Xcode project generation puts modules from external packages together with local ones".
@swift-ci Please test |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM!
macOS failure seems to be in Swift itself. |
Did you experience also trouble with SourceKit based on this? Since Xcode 8.1 and the version of SPM, I don't have code completion for generated xcode projects with the package manager. |
@swift-ci please test linux |
@swift-ci please test OS X |
Are we to re-install the package manager? |
Kitura/Kitura#822 is the same issue. |
There are some comments at Kitura/Kitura#822 about using the older package manager from SPM 3 to generate the xcode project. |
When external packages are present, add a
Dependencies
group, and add modules from the external packages to appropriate directories underneath. This is just a structure navigator change; there is no change to linkage semantics. The structure of the groups tries to respect whether the package uses shallow or deep package format, but does not depend on all of the package dependencies ending up inside aPackages
subdirectory in the source.This addresses https://bugs.swift.org/browse/SR-3086
The diffs are staged into three separate commits to make them easier to read.