virgil icon indicating copy to clipboard operation
virgil copied to clipboard

More robust cross-compile testing solution

Open titzer opened this issue 4 years ago • 2 comments

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.

titzer avatar Feb 08 '21 23:02 titzer

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.

titzer avatar Aug 20 '21 19:08 titzer

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.

titzer avatar Jan 17 '22 17:01 titzer