More robust cross-compile testing solution
Recently I have been developing on an M1 mac, which is a platform not supported by Virgil.
This is a problem because it is not possible to run either x86-linux and x86-darwin binaries directly on this platform. In the past, I have relied on testing on one or the other x86 platform and relying on bootstrap change detection to avoid breaking the other.
To address this, I added a caching mechanism for execute tests so that "aeneas test" can at least detect if test binaries are an exact match.
Recently, I've taken to using qemu running tinycore Linux in a VM for x86 testing, but doing so is clunky, and this was a pain to set up.
This is a tracking issue for making cross-compile testing a priority.
I'm envisioning a distributed ssh/scp solution that can be driven directly by the "aeneas test" script, both with real devices and VMs.
I've added the ability to do remove execution of tests, based on ssh and rsync. It's a bit hacky and relatively inefficient, as it relies at least 4 ssh/rsync rounds to sync the test directory, output binaries, etc. But it's a start.
I added an android test script and am able to run x86 tests on the Zenfone 2...but it does not have SSE 4.2, so some float tests fail.