Categories
Game Design Game Development Geek / Technical

Freshly Squeezed Progress Report: Mobile Ports Are Mobilizing

In my previous report, I finished working on the Mac port of my strategic leaf-raking business simulation game, Toytles: Leaf Raking, and then I proceeded to work on the Android port.

I finished the Android work relatively quickly and started working on the iOS port by the end of the week.

Sprint 2026-MJ_12: Release SDL3 update version

Completed

  • Ensure Android version can still be built/deployed

In progress:

  • Ensure iOS version can still be built/deployed

Toytles: Leaf Raking

As I said last time, I had an Android port that was almost finished. I basically needed to test it out manually on my phone to make sure it worked correctly, then I created a bundle and submitted it to Google Play for review.

Then I spent the bulk of the week figuring out what I needed to change to get SDL3 libraries built for iOS. The documentation for SDL3 has suggestions for how to incorporate the library as a subdirectory or submodule of my project, but I would rather build the libraries separately, especially as I will be using these libraries in each of my apps. I should need to build the library for each one.

I had a script that basically built static SDL2 libraries that I incorporated into my app, but the downside was that I needed to build one set of libraries for an app for the iOS simulator to test in and a completely different set of libraries for an app for testing on an actual iPhone or iPad.

Apple allows you to create Universal libraries, but ever since the development of Silicon-based Macs, you couldn’t make assumptions that x86_64 was for the simulator and arm64 was for the iOS hardware.

However, apparently SDL3 allows you to create a very Universal .xcframework. That’s great, except I ran into trouble building it, both on my Intel-based Mac and the Mac in Cloud M2-based Mac, although for different reasons.

I was able to use my old Intel-based Mac Mini to work on the Mac port, but I ultimately ran into a problem in which SDL3 uses and expects newer iOS SDKs than my obsolete machine supports. And on the newer Mac, I ran into problems because it was depending on SDKs for platforms I don’t care about and don’t want to bother with, like visionOS or watchOS.

I will need to do most of my work with Mac in Cloud, unless I get myself a Silicon-based Mac. Either way, I’ll figure it out and hope that the SDL3 port for iOS doesn’t take too much longer.

Thanks for reading, and stay curious!

Want to learn about future Freshly Squeezed games I am creating? Sign up for the GBGames Curiosities newsletter, and download the full color Player’s Guides to my existing and future games for free!

Leave a Reply

Your email address will not be published. Required fields are marked *