Does any Continuous Integration system out there offer building a project on several operating systems at the same time? Like, building the code on Windows, Linux, *BSD and OSX per commit? I understand that most CI systems are “cross-platform” but that could either mean the above or it could also mean that you need a different setup for each OS. Ideally I’d want CI to run on a central server and spin up virtual machines in the backend for all platforms.
Only need for C/C++, interpreted languages are obviously not the target.
3
In Jenkins you can setup different build slaves (which could run on different physical or virtual machines).
Your Jenkins master could then delegate different build jobs to the corresponding slave (also in parallel).
So in your case you could setup some Jenkins slaves where every slave runs on a virtual machine with a different operating system.
Your Jenkins master could then define different build jobs like “Build application for OS X”, “Build application for Win7” etc… and assign every build job to its machine.
A more complete description can be found here: Jenkins distributed builds.
1