[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH v3 35/46] tests/tcg: enable building for Alpha
From: |
Alex Bennée |
Subject: |
[Qemu-devel] [PATCH v3 35/46] tests/tcg: enable building for Alpha |
Date: |
Tue, 24 Apr 2018 16:23:54 +0100 |
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 <address@hidden>
---
tests/docker/Makefile.include | 1 +
.../dockerfiles/debian-alpha-cross.docker | 12 +++++++
.../dockerfiles/debian-cross-build.docker | 36 +++++++++++++++++++
tests/docker/dockerfiles/debian-sid.docker | 23 ++++++++++++
tests/tcg/alpha/Makefile.include | 2 ++
5 files changed, 74 insertions(+)
create mode 100644 tests/docker/dockerfiles/debian-alpha-cross.docker
create mode 100644 tests/docker/dockerfiles/debian-cross-build.docker
create mode 100644 tests/docker/dockerfiles/debian-sid.docker
create mode 100644 tests/tcg/alpha/Makefile.include
diff --git a/tests/docker/Makefile.include b/tests/docker/Makefile.include
index 6a5aa9ec71..bcf44e80c4 100644
--- a/tests/docker/Makefile.include
+++ b/tests/docker/Makefile.include
@@ -62,6 +62,7 @@ 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
+docker-image-debian-alpha-cross: docker-image-debian-sid
docker-image-travis: NOUSER=1
# Expand all the pre-requistes for each docker image and test combination
diff --git a/tests/docker/dockerfiles/debian-alpha-cross.docker
b/tests/docker/dockerfiles/debian-alpha-cross.docker
new file mode 100644
index 0000000000..e446f7af3f
--- /dev/null
+++ b/tests/docker/dockerfiles/debian-alpha-cross.docker
@@ -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
diff --git a/tests/docker/dockerfiles/debian-cross-build.docker
b/tests/docker/dockerfiles/debian-cross-build.docker
new file mode 100644
index 0000000000..c3611a7d3a
--- /dev/null
+++ b/tests/docker/dockerfiles/debian-cross-build.docker
@@ -0,0 +1,36 @@
+#
+# Docker multiarch cross-compiler target
+#
+# This docker target is builds on Debian cross compiler targets to build distro
+# with a selection of cross compilers for building test binaries.
+#
+# On its own you can't build much but the docker-foo-cross targets
+# build on top of the base debian image.
+#
+FROM debian:stretch
+
+# 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 \
+ gettext \
+ git \
+ libgmp-dev \
+ libmpfr-dev \
+ libmpc-dev \
+ pkg-config \
+ psmisc \
+ python \
+ texinfo \
+ wget \
+ $(apt-get -s build-dep binutils | egrep ^Inst | cut -d\ -f2) \
+ $(apt-get -s build-dep gcc | egrep ^Inst | cut -d\ -f2) \
+ $(apt-get -s build-dep glibc | egrep ^Inst | cut -d\ -f2)
diff --git a/tests/docker/dockerfiles/debian-sid.docker
b/tests/docker/dockerfiles/debian-sid.docker
new file mode 100644
index 0000000000..adeb7134ca
--- /dev/null
+++ b/tests/docker/dockerfiles/debian-sid.docker
@@ -0,0 +1,23 @@
+#
+# A number of our guests exist as ports only. We can either use the ports repo
or get everything from SID
+#
+
+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
diff --git a/tests/tcg/alpha/Makefile.include b/tests/tcg/alpha/Makefile.include
new file mode 100644
index 0000000000..c7dc48eadb
--- /dev/null
+++ b/tests/tcg/alpha/Makefile.include
@@ -0,0 +1,2 @@
+DOCKER_IMAGE=debian-alpha-cross
+DOCKER_CROSS_COMPILER=alpha-linux-gnu-gcc
--
2.17.0
[Qemu-devel] [PATCH v3 35/46] tests/tcg: enable building for Alpha,
Alex Bennée <=
[Qemu-devel] [PATCH v3 46/46] tests/tcg: override runners for broken tests (!UPSTREAM), Alex Bennée, 2018/04/24
[Qemu-devel] [PATCH v3 41/46] tests/tcg: enable building for sparc64, Alex Bennée, 2018/04/24
[Qemu-devel] [PATCH v3 42/46] tests/tcg: enable building for mips64, Alex Bennée, 2018/04/24
[Qemu-devel] [PATCH v3 45/46] tests/Makefile.include: add [build|clean|check]-tcg targets, Alex Bennée, 2018/04/24
Re: [Qemu-devel] [PATCH v3 45/46] tests/Makefile.include: add [build|clean|check]-tcg targets, Philippe Mathieu-Daudé, 2018/04/24
[Qemu-devel] [PATCH v3 19/46] tests/tcg/i386: Build fix for hello-i386, Alex Bennée, 2018/04/24