Dockcross: Cross compiling toolchains in Docker images
github.com
github.com
This is turning into a random info dump, but whatever.
Azure Pipelines has free Windows workers in their pool, for open source, with all standard Windows build tools, python, etc. I'm not aware of other CI providers with Windows instances.
I wanted to use Guix but wanted to try it out with Docker and there aren't any official packages, ran into a number of issues setting it up manually. Guix has their libraries and build environments abstracted in such a way that it should be possible to build any package with say mingw in a line (or two). Guix also seems to have a stricter versioning system than Nix, where it didn't look trivial to pin specific package/system versions.
Gnome msitools has a Wix clone for Windows MSI creation. It's a bit hobbled (doesn't support a lot of fields/parameters).
A few additional steps were involved with setting up an overlay, but it was smooth sailing from there, and people on #gentoo-mips were eager to help.
I like the idea in practice. Assuming you're already on a cross-compiled project, this could vastly make your job easier and you can script around this very easily.
Unless I misunderstand, docker cross is simply for cross compiling apps.
I've been experimenting a lot with embedded boards and compiling a couple of large libraries on a Pi can take all night.
[0] https://servicelab.org/2018/09/13/platform-aware-docker-imag...
It is kinda self-hosting in the sense that you unpack its release in a directory and all its files are going to stay there, including the cross-toolchain that you build.
And, of course, it can automatically build toolchains for a wide range of architectures, all while being fairly configurable.
(For good measure, an example would be OpenRCT2 which maintains Dockerfiles for cross compiling, like this one: https://github.com/OpenRCT2/OpenRCT2/blob/develop/dockerfile... )