Peter Maydell <peter.mayd...@linaro.org> writes: > On 21 August 2016 at 04:46, Pranith Kumar <bobby.pr...@gmail.com> wrote: >> The tests currently fail, so I didn't think it would be appropriate to >> hook them up. If the rearrangement is acceptable and once I fix the >> tests, I will hook up 'make check' to run these tests. > > So the question is: how will this work on systems which > don't have the relevant compiler toolchain for the target? > This has always been the stumbling block for tests which > want to run guest code: it's just too much of a pain for > most developers to have the toolchains available to build > the guest code.
We could just make running the tests optional on ./configure finding the relevant cross compilers. The misc/ tests at the very least can be built with the host compiler and run on a host-to-host linux-user build. > > I have a vague idea that we could use something involving > docker images so that you could define a test case including > what the toolchain it needed to build was, and then have > images so that in practice you could just use prebuilt > binaries for the test blobs. But I haven't really thought > much about it yet. Currently the docker support doesn't allow copying artefacts from the build. But you can certainly run a make target in a (potentially) cross arch docker container now. For example: make docker-test-quick@debian-bootstrap \ EXTRA_CONFIGURE_OPTS="--enable-gprof --enable-gcov --disable-pie" \ J=9 V=1 DEBUG=1 If we fix up make test to build misc + host compiler directory then they will get run by the binfmt_misc enabled linux-user binary that was copied when the image was created. You can update the image with the current image easily enough: ./tests/docker/docker.py update qmu:debian-bootstrap ./arm-linux-user/qemu-arm > > thanks > -- PMM -- Alex Bennée