AliSoftware/Reusable

tvOS scheme not working

papertigers opened this issue · 5 comments

Via Carthage:
Dependency "Reusable" has no shared framework schemes for any of the platforms: tvOS

Interesting.

I'm not a Carthage user at all. Any idea how to address this? Given that the Xcode project is auto-generated (I don't use the projects building the frameworks to do my development, would take too much work to rebuild the framework project each time I want to test the examples and never needed to create separate schemes for various platforms before)

Isn't the prebuilt binary ZIP attached to the release not enough to provide tvOS support? Those archives are supposed to contain the pre-build frameworks for both iOS and tvOS…
Except of course if you're using --no-use-binaries when using Carthage, but in that case I don't know how to solve it properly?

Reusable for tvOS is working well when --no-use-binaries is not used which is not mandatory since the 3.0.0 has been released. It's mainly useful when a project has a prebuilt binary zip, and that one isn't supported by the last version of swift (for example, if Reusable 3.0.0 was released with Xcode 8.0 (swift 3.0), we would have needed that flag in order to use that release with Xcode 8.1 (swift 3.0.1)).

I'm not sure how we can fix it if the xcodeproj is auto-generated. When using --no-use-binaries, carthage will just build the framework from the xcodeproj find in the release used. The best fix would be to add a new tvOS framework target into _Pods.xcodeproj. Is that possible in your configuration? Otherwise, we just need to find a way to add that tvOS framework target somewhere!

Its probably easier for me to get it to work without --no-use-binaries. The only reason I was using it, was like you said. Another project dependency complains about not being built for swift 3.0.1

If its too much I can work around it!

Actually I tried pulling down the binary and it ends up putting it in ./Carthage/Build/iOS instead of the tvOS directory.

I just pushed version 4.0.1 which should resolve the issue. The workspace now has a framework target for tvOS in addition to iOS so Carthage is able to see and build it now.