« XDC 2020 MBS Plugins … | Home | MBS Birthday Sale »

Build System Updates for new targets

As you may have noticed the Xojo Inc. announced in the XDC 2020 keynote (see Youtube playlist), that we'll get plugins for iOS later this year. For us it is time to update the build system to duplicate a lot of scripts for new targets.

First we tested how to build iOS dylibs from command line which worked quickly. The more difficult part will be to change code to use #if to enable it for iOS. And of course to later add iOS specific code to get functionality.

Next we worked on trying Linux ARM in 64bit. While not announced, we expect Xojo Inc. to do this someday when they see the need and an engineer has a few days to start the process. For us building ARM 64-bit seems to work fine. It's more or less just duplication of scripts and changing 32 to 64 for the bit count and using separate folder/file names for libraries.

To be prepared in case the Mac with ARM rumors turn up true, we added MacARM as possible build target. The scripts seem to work except that we get errors as the Mac SDK shipping currently does not support arm.

Finally we added the Android platform as target with both simulator and device modes. But we have not yet compiled anything this is a bit new for us. But we expect to learn from Xojo Inc. on how to setup a build environment as they need to do this for their own internal plugins, e.g. XML classes.

All the work is a bit preliminary and subject to change. Once Xojo comes with support for new targets, we can make sure we use the right compilation flags to produce matching libraries.

The new targets added here are:
  • iOS Simulator 64-bit
  • iOS Device 64-bit
  • Linux ARM 64-bit
  • Mac ARM 64-bit
  • Android ARM Simulator 64-bit
  • Android ARM Device 64-bit
Not sure if we get those targets all this year, but at least the build system is prepared. Over 20 libraries do compile for iOS and Linux 64bit already. Some plugins like the CURL and DynaPDF ones do compile for those platforms just fine.

Looking forward for the new targets and thanks to everyone who supports us by testing new functionality and keeping license current.
30 03 20 - 09:37