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

Better support for Swift targets that depend on pre-compiled static Objective-C libraries #1608

Open
pepicrft opened this issue Aug 3, 2020 · 0 comments
Labels
bounty Resolving this issue is rewarded with a bounty: https://github.com/tuist/tuist/discussions/4982 type:enhancement New feature or request

Comments

@pepicrft
Copy link
Contributor

pepicrft commented Aug 3, 2020

Context 🕵️‍♀️

@laxmorek brought up an interesting use-case where a Swift target depends on a pre-compiled static Objective-C library that has no Swift module map. He tried to consume the library from the Swift code in the target but he was not able to access the public interface of the library.

What 🌱

As Apple suggests here, the target needs to be marked as a module (if it's a framework) and have a umbrella header where the public headers of the library are imported.

Proposal 🎉

Although we could document this use-case, I think Tuist could handle the scenario more gracefully for the sake of user's convenience. Like we do in other areas of the project, we could auto-generate the umbrella-header and set the right build setting to the target. The only drawback that I see with this approach is that the auto-generated umbrella-header might conflict with any other existing umbrella-header. We'd need to figure out a way to handle this scenario too.

@pepicrft pepicrft added type:enhancement New feature or request domain:tuist labels Aug 3, 2020
@shahzadmajeed shahzadmajeed pinned this issue Aug 17, 2023
@shahzadmajeed shahzadmajeed unpinned this issue Aug 17, 2023
@pepicrft pepicrft added bounty Resolving this issue is rewarded with a bounty: https://github.com/tuist/tuist/discussions/4982 and removed domain:tuist labels Dec 24, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bounty Resolving this issue is rewarded with a bounty: https://github.com/tuist/tuist/discussions/4982 type:enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

3 participants