Since a few months I’m running my own build server for the Windows versions of ScummVM. Originally, the server was intended to replace my previous toolchain based on MSYS2 and to provide self-contained (avoiding DLL hell) and continuously updated Win32 binaries.
In the meantime, this project evolved quite a bit. Currently, the official Windows versions of ScummVM as well as the Nightly Builds are built by this server. As you can imagine, the term “experimental” doesn’t really fit anymore, even though I’m still referring to this server as my staging environment.
For me it is important to always use the latest versions of the libraries that are used for building ScummVM. Yesterday, I updated my toolchain with
FLAC 1.3.3 and
curl 7.68.0. The builds created in the last couple of hours are already using these new versions. I based my toolchain on the great MXE project. A couple of months ago, I submitted a makefile for libmpeg2 and a makefile for fluidsynth to MXE.
It’s pretty nice to see that the Windows verions of ScummVM with all it’s engines and features can now be built using only the MXE toolchain itself. We don’t have to rely on “self constructed” toolchains anymore. This will make future toolchain updates much easier. Hopefully, it will integrate quite nicely into our CI system.
With the exception of fluidsynth, the libraries I use are (in general) always up-to-date. Regarding fluidsynth, I’m currently not completely satisfied with how it’s implemented in MXE. However, my current plan is to update fluidsynth as soon as we started the next release cycle for ScummVM. Currently, I’d have to build fluidsynth manually and I simply don’t have enough time for it since we already scheduled the next ScummVM release.
In the long run, I’m going to use my toolchain for the official ScummVM buildbot too – but more on that later.