-
Notifications
You must be signed in to change notification settings - Fork 1.3k
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
[Xcodeproj] Avoid generating module.modulemap
if umbrella header exists, on creating Clang Module targets
#955
Conversation
…ating the clangModule target If clang module has umbrella header: - Add headers to `HeadersBuildPhase` - Set CLANG_ENABLE_MODULES = YES - Set DEFINES_MODULE = YES - Don’t generate `module.modulemap`
`Xcode.BuildFile.Settings` and` Xcode.BuildSettingsTable.BuildSettings` conform to that.
module.modulemap
if umbrella header exists, on creating the clangModule targetmodule.modulemap
if umbrella header exists, on creating Clang Module targets
Thanks! I will take a look, but it might take me a couple days I want to think about the possible fallout... |
The technical changes to the project model representation and serialization look fine. It might be good to add a unit test specifically for the new Regarding the semantics and what the potential fallout might be, I'll defer to others who are more knowledgeable about the nuances of module maps. |
Thanks for feedbacks. |
I have no objections to the actual diffs, but would want to hear the opinion of someone more familiar with modules about likely fallout. |
With this fix, the setting of the target generated by the PM will be more like the setting of the framework target generated by Xcode's template. |
Are there any updates on this? |
Close this since I opened #1406 against |
This PR increases the portability of generated Xcode project by reducing the use of
module.modulemap
which absolute path contains.HeadersBuildPhase
CLANG_ENABLE_MODULES
=YES
DEFINES_MODULE
=YES
module.modulemap
CLANG_ENABLE_MODULES
=YES
to test target so that we can import clang module.In the course of testing to create a package written only in Objective-C, I came up with this change.
e.g: https://github.com/norio-nomura/GTMNSString_HTML