tests/tcg: enable building for Alpha
We can't use our normal Debian based compilers as Alpha isn't an officially supported architecture. However it is available as a port and fortunately cross compilers for all these targets are included in Debian Sid, the perpetual rolling/unstable/testing version of Debian. Signed-off-by: Alex Bennée <alex.bennee@linaro.org> Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org> Tested-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
This commit is contained in:
parent
1e2107092d
commit
409c1c9cbd
@ -64,6 +64,13 @@ docker-image-debian-ppc64el-cross: docker-image-debian9
|
||||
docker-image-debian-s390x-cross: docker-image-debian9
|
||||
docker-image-debian-win32-cross: docker-image-debian8-mxe
|
||||
docker-image-debian-win64-cross: docker-image-debian8-mxe
|
||||
|
||||
# Debian SID images - we are tracking a rolling distro so we want to
|
||||
# force a re-build of the base image if we ever need to build one of
|
||||
# its children.
|
||||
docker-image-debian-sid: NOCACHE=1
|
||||
|
||||
docker-image-debian-alpha-cross: docker-image-debian-sid
|
||||
docker-image-travis: NOUSER=1
|
||||
|
||||
# Specialist build images, sometimes very limited tools
|
||||
|
12
tests/docker/dockerfiles/debian-alpha-cross.docker
Normal file
12
tests/docker/dockerfiles/debian-alpha-cross.docker
Normal file
@ -0,0 +1,12 @@
|
||||
#
|
||||
# Docker cross-compiler target
|
||||
#
|
||||
# This docker target builds on the debian sid base image which
|
||||
# contains cross compilers for Debian "ports" targets.
|
||||
#
|
||||
FROM qemu:debian-sid
|
||||
|
||||
RUN DEBIAN_FRONTEND=noninteractive eatmydata \
|
||||
apt-get install -y --no-install-recommends \
|
||||
gcc-alpha-linux-gnu \
|
||||
libc6.1-dev-alpha-cross || { echo "Failed to build - see debian-sid.docker notes"; exit 1; }
|
32
tests/docker/dockerfiles/debian-sid.docker
Normal file
32
tests/docker/dockerfiles/debian-sid.docker
Normal file
@ -0,0 +1,32 @@
|
||||
#
|
||||
# Debian Sid Base
|
||||
#
|
||||
# A number of our guests exist as ports only. We can either use the
|
||||
# ports repo or get everything from Sid. However Sid is a rolling
|
||||
# distro which may be broken at any particular time. If you are
|
||||
# unlucky and try and build your images while gcc is in the process of
|
||||
# being uploaded this can fail. Your only recourse is to try again in
|
||||
# a few hours when the repos have re-synced. Once built however you
|
||||
# won't be affected by repo changes unless the docker recipies are
|
||||
# updated and trigger a re-build.
|
||||
#
|
||||
|
||||
FROM debian:sid-slim
|
||||
|
||||
# Duplicate deb line as deb-src
|
||||
RUN cat /etc/apt/sources.list | sed "s/^deb\ /deb-src /" >> /etc/apt/sources.list
|
||||
|
||||
# Install common build utilities
|
||||
RUN apt update
|
||||
RUN DEBIAN_FRONTEND=noninteractive apt install -yy eatmydata
|
||||
RUN DEBIAN_FRONTEND=noninteractive eatmydata \
|
||||
apt install -y --no-install-recommends \
|
||||
bison \
|
||||
build-essential \
|
||||
ca-certificates \
|
||||
flex \
|
||||
git \
|
||||
pkg-config \
|
||||
psmisc \
|
||||
python \
|
||||
texinfo || { echo "Failed to build - see debian-sid.docker notes"; exit 1; }
|
2
tests/tcg/alpha/Makefile.include
Normal file
2
tests/tcg/alpha/Makefile.include
Normal file
@ -0,0 +1,2 @@
|
||||
DOCKER_IMAGE=debian-alpha-cross
|
||||
DOCKER_CROSS_COMPILER=alpha-linux-gnu-gcc
|
6
tests/tcg/alpha/Makefile.target
Normal file
6
tests/tcg/alpha/Makefile.target
Normal file
@ -0,0 +1,6 @@
|
||||
# -*- Mode: makefile -*-
|
||||
#
|
||||
# Alpha specific tweaks
|
||||
|
||||
# On Alpha Linux only supports 8k pages
|
||||
EXTRA_RUNS+=run-test-mmap-8192
|
Loading…
Reference in New Issue
Block a user