OuterCorner / Noise

A noise protocol framework implementation in Objective-C and Swift friendly.
MIT License
18 stars 5 forks source link

SPM support #1

Open jpulik opened 2 years ago

jpulik commented 2 years ago

Hi, What about adding Swift Package Manager support? SPM now does support binary frameworks. If you want, I may help you with this.

pfandrade commented 2 years ago

Hi, I'm not actually using this with SPM in any of my projects. But if you want to make a PR I can review it and merge it.

I guess the OpenSSL.framework should also be SPM enabled for this to work no?

jpulik commented 2 years ago

Thank you for the answer, yes, OpenSSL should support it too. I will take a look and will create Pull request when there is some time for this.

pfandrade commented 2 years ago

I've been taking a look at this and have stumbled into an issue. My goal is to distribute this as a binary framework (just like OpenSSL is at moment) but also specify the OpenSSL as a dependency.

Doing this would mean if you specify Noise as a dependency in your project, SwiftPM would also fetch OpenSSL automatically.

However, I don't seem to be able to specify dependencies for binaryTargets. If you have any ideas on this, would love to hear them.

jpulik commented 2 years ago

You are right, it seems like the binary package cannot have any dependencies right now: https://bugs.swift.org/browse/SR-14245 Maybe possible workaround to try is here: https://forums.swift.org/t/swiftpm-binary-target-with-sub-dependencies/40197/7

pfandrade commented 2 years ago

Yes, I actually tried that but ended up encountering a couple of different issues from it. If I have more time I'll give it another go.