Hi, I tried to set up something vaguely resembling a Continuous Integration for TinyCC. The only other CI for TinyCC I managed to find seems to be [1], which is months out of date and only tests one architecture (amd64).
[1] https://travis-ci.org/TinyCC/tinycc/branches My CI tests many architectures. I don't have hardware for all of them, so instead I use the runners provided by GitLab CI (which is again amd64), spawning a QEMU virtual machine for the tested architecture. QEMU is not identical to actual hardware, but I believe this is better than nothing. Also, the end result is very very hacky and much slower than it could be, but, again, the alternative is nothing (correct me if I am wrong). I currently test for Debian i386, amd64, armhf and arm64. I will add riscv64 as soon as the latest Debian kernel boots again. In line of principle armel too could be added, but I don't know how to generate a Debian armel image that boots with QEMU. It would be nice to add Windows and macOS as well, but I don't know how to automatically perform tests once the virtual machine has started. Results are here: https://gitlab.com/giomasce/tinycc/pipelines There is a cron job that automatically pushes there commits on the mob branch. Incidentally, i386 tests currently fail[2] (I haven't investigated this yet). [2] https://gitlab.com/giomasce/tinycc/-/jobs/378533140#L563 For horror lovers among you, scripts powering the CI are here: https://gitlab.com/giomasce/tinycc-test I hope you find this useful for detecting regressions. Have fun, Giovanni. -- Giovanni Mascellani <g.mascell...@gmail.com> Postdoc researcher - Université Libre de Bruxelles
signature.asc
Description: OpenPGP digital signature
_______________________________________________ Tinycc-devel mailing list Tinycc-devel@nongnu.org https://lists.nongnu.org/mailman/listinfo/tinycc-devel