i686-elf cross compiler with nasm:
https://hub.docker.com/r/joshwyant/gcc-cross/
This is set up with Travis continuous integration, and GitHub shows a build status indicator.
FAT32 disk image tools:
https://hub.docker.com/r/joshwyant/vdisk-tools/
Readme: https://github.com/joshwyant/vdisk-tools
I won't explain how to use Docker here (there are many resources available on the web), but it makes builds really easy as you don't have to install any dependencies on the host build system. Most CI systems allow you to build inside Docker containers and retrieve the artifacts for further build stages. For example, the disk image tools are written in C#, but you wouldn't know just by running the vmkimg command.
You can try it out:
Code: Select all
$ docker run -it joshwyant/gcc-cross bash
# i686-elf-gcc --version
i686-elf-gcc (GCC) 8.1.0
Copyright (C) 2018 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
If you fork and create a pull request (https://github.com/joshwyant/gcc-cross), you should be able to see your build in Travis CI.