mfikes / ambly

ClojureScript REPL into embedded JavaScriptCore
http://ambly.fikesfarm.com
Eclipse Public License 1.0
541 stars 21 forks source link

initial tvos support and demo app target #115

Closed sherbondy closed 8 years ago

sherbondy commented 8 years ago

(Resubmitting with history squashed into single commit) Please test!

I don't think I introduced any regressions (tried on both iOS and tvOS targets after making the changes), but xcodeproj files are a bear, so please let me know if I accidentally tweaked something that causes the file to no longer open in an older version of Xcode that you're interested in continuing to support.

GCDWebServer v3.3 landed about a week ago, noticed on Monday, and finally got around to building the demo app target for tvOS.

Reusing the same AppDelegate source code from the original demo app.

Thanks, Ethan

mfikes commented 8 years ago

Another error I get when attempting to run the Ambly Demo TV target is an inability to link to the Ambly pod, it appears:

ld: library not found for -lAmbly
clang: error: linker command failed with exit code 1 (use -v to see invocation)
sherbondy commented 8 years ago

Eek, dunno how Info-TV.plist got lost in the fray. Will try to resubmit first thing tomorrow.

sherbondy commented 8 years ago

Heh, okay, the missing assets are in. I guess I just got trigger-happy yesterday and completely neglected to add the new files to the commit.

sherbondy commented 8 years ago

As far as the linker error, if you ever encounter that again, I think a fresh pod install might fix that.

mfikes commented 8 years ago

@sherbondy The Info-TV.plist issue has now been resolved, but I can't get the linking bit to work (I tried pod install.)

What I'm doing is getting the patch from this PR (via https://github.com/omcljs/ambly/pull/115.patch) and applying it to a fresh clone, and trying it out. The iOS demo app links and runs but not the tvOS demo app.

mfikes commented 8 years ago

I think the root problem with the linking has to do with the target specifiers in the Podfile. If remove the conditional blocks simply specify platform :tvos, '9.0', then things work, and actually start working on my Mac for subsequent attempts without making this change. (This state fulness probably explains why you don't see it.) I've gone to another Mac and I see that it shows the same issue.

Also, I'm seeing that discovery doesn't work until I restart the app (happens to iOS and tvOS), which may be related to GCDWebServer 3.3.

Given this funkiness, I've put your patch in a tvos branch were these subtle issues can be ironed out before fully merging in, but where people can also try things. Your patch is in here https://github.com/omcljs/ambly/commit/c7caf8533737100f086b652c13cc3b7196a5e4c9

I'll close this PR manually.