Hi everyone,
We have great news! Back in 2014
<https://www.inklestudios.com/2014/03/11/tech-focus-android.html>, Iain
Merrick worked with Inkle Studios to port their games "Sorcery!", and
later "80 Days" and the "Sorcery!" sequels, to Android using OpenGL ES
2. Later, he used the same codebase to port those games to macOS and
Windows. He has recently agreed to share his UIKit implementation with
us, and his code can be found at
https://github.com/more-please/inkle-android. I am working to get this
code to work on GNUstep-on-clang-on-Linux, and later on to get it back
to Android and Windows. You can see my revisions here:
https://github.com/ethanc8/inkle-android. Most of the code compiles
rather nicely, but the UIKit mainloop is stuck in a thousands-of-lines
file with many platform-specific intricacies, so I haven't ported that
over yet.
This is quite an important contribution, which if we can
properly use this code, could give us a large start on being able to
port iOS applications to other systems, and harness the large iOS
developer ecosystem. However, the age of his UIKit code and the fact
that Inkle's games did not use as much UIKit as some more UI-heavy
applications might would require us to do major revisions. Additionally,
we have not yet received copyright assignment from him, and in the case
that that couldn't happen, it might be difficult to ensure that the
project is legally sound. Finally, as GNUstep approaches compatibility
with macOS and iOS, we may draw the attention of Apple's management and
legal teams, which may invite unpleasant legal circumstances. Therefore,
it would be important to make sure that the Free Software Foundation can
defend the project against lawsuits and that the project is on as sound
legal ground as possible. This may necessitate the rewriting of all of
the header files in Iain's UIKit implementation, and further talks with
Iain about legal matters.
Thanks,
Ethan Charoenpitaks