Generated .gitlab-ci.yml files for matrix builds.
To cleanly test combinations of compilers, flags, and libraries, a "matrix build" would typically be used.
Gitlab CI doesn't support matrix builds, instead requiring each case be written explicitly.
A script should be written to define all the combinations needed and generate the appropriate .gitlab-ci.yml file. A pipeline test should also be added to test the current .gitlab-ci.yml file is equivalent to the file generated by the generator, to ensure it's up-to-date.