Skip to content

Conversation

@nvh
Copy link

@nvh nvh commented May 4, 2015

This creates a separate iOS target that can be picked up by Carthage. This enables iOS support for Carthage out of the box. I've read #77 and understand that this is working around problems that should be fixed in Carthage, but I think this this little bit of overhead is acceptable.
Please let me know if you agree and this if this is a solution you would consider merging, then I could do the same for the Cipher target (this fork is basically scratching my own itch, but I think merging this helps a more widespread adoption of the project)

@stephencelis
Copy link
Owner

Thanks for trying to tackle this. Looks like it doesn't address the Mac build and SQLCipher builds, though? (Which I'm not sure can't be done without tags or without requiring a different framework/module name.)

I worry that Carthage builds frameworks in Release mode even when your app target is in Debug mode (please correct me if I'm wrong). SQLite.swift relies on Swift assertions for a lot of developer-related debugging, and if these get stripped out it would make SQLite.swift tough to troubleshoot.

@nvh
Copy link
Author

nvh commented May 7, 2015

Nope, it doesn't yet, I can add them in a similar way, but the SQLCipher version of the framework will get a different name.

With Carthage, you can build in Debug mode with carthage build --configuration Debug. I'd suggest incorporating the warning above (about SQLite relying on assertions) in the README and encouraging people to use this flag when developing, but rebuild the frameworks for production use. Do you agree?

@baryon
Copy link

baryon commented Jun 19, 2015

Nope, Waitting

@stephencelis
Copy link
Owner

@baryon You can preliminarily try the branch referenced in this PR. I do want to have Carthage support but it requires a bit of thought and project restructuring that I haven't had time for yet.

I've done a few spikes with the SQLCipher component and it just doesn't play nicely with Carthage right now :(

@ky1ejs
Copy link

ky1ejs commented Jul 31, 2015

@stephencelis any updates on this? I'd love to be able to add SQLite.swift via Carthage. What doesn't work about @nvh's solution to Debug builds?

@stephencelis
Copy link
Owner

@kylejm A restructuring and decoupling on the Swift 2 branch should make Carthage support possible (see #154). I'm not sure how easy it will be to back-port to the current Swift 1.2 branch, though.

@schickling
Copy link

I was able to install SQLite (swift-2 branch) via Carthage. 👍

@stephencelis
Copy link
Owner

Carthage supports universal frameworks now, and the swift-2 branch has been updated to have multiple targets, so this should be good to close. Thanks!

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.

5 participants