qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-devel] [PATCH v2 29/31] docker: add MXE (M cross environment) base


From: Philippe Mathieu-Daudé
Subject: [Qemu-devel] [PATCH v2 29/31] docker: add MXE (M cross environment) base image for MinGW-w64
Date: Mon, 17 Jul 2017 21:31:57 -0300

see http://mxe.cc/

Signed-off-by: Philippe Mathieu-Daudé <address@hidden>
---
 tests/docker/Makefile.include                      |  3 ++
 tests/docker/dockerfiles/debian-win32-cross.docker | 32 ++++++++++++++++++++++
 tests/docker/dockerfiles/debian-win64-cross.docker | 32 ++++++++++++++++++++++
 tests/docker/dockerfiles/debian8-mxe.docker        | 18 ++++++++++++
 4 files changed, 85 insertions(+)
 create mode 100644 tests/docker/dockerfiles/debian-win32-cross.docker
 create mode 100644 tests/docker/dockerfiles/debian-win64-cross.docker
 create mode 100644 tests/docker/dockerfiles/debian8-mxe.docker

diff --git a/tests/docker/Makefile.include b/tests/docker/Makefile.include
index 5a8283674a..e993e149e7 100644
--- a/tests/docker/Makefile.include
+++ b/tests/docker/Makefile.include
@@ -58,6 +58,7 @@ docker-image-%: $(DOCKER_FILES_DIR)/%.docker
 docker-image-debian-powerpc-cross: 
EXTRA_FILES:=tests/docker/dockerfiles/debian-apt-fake.sh
 
 # Enforce dependancies for composite images
+docker-image-debian8-mxe: docker-image-debian8
 docker-image-debian-amd64: docker-image-debian9
 docker-image-debian-armel-cross: docker-image-debian9
 docker-image-debian-armhf-cross: docker-image-debian9
@@ -67,6 +68,8 @@ docker-image-debian-mips64el-cross: docker-image-debian9
 docker-image-debian-powerpc-cross: docker-image-debian8
 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
 
 # Expand all the pre-requistes for each docker image and test combination
 $(foreach i,$(DOCKER_IMAGES), \
diff --git a/tests/docker/dockerfiles/debian-win32-cross.docker 
b/tests/docker/dockerfiles/debian-win32-cross.docker
new file mode 100644
index 0000000000..a628601f6d
--- /dev/null
+++ b/tests/docker/dockerfiles/debian-win32-cross.docker
@@ -0,0 +1,32 @@
+#
+# Docker mingw32 cross-compiler target
+#
+# This docker target builds on the debian Jessie MXE base image.
+#
+FROM qemu:debian8-mxe
+
+MAINTAINER Philippe Mathieu-Daudé <address@hidden>
+
+ENV TARGET i686
+
+RUN DEBIAN_FRONTEND=noninteractive eatmydata \
+    apt-get install -y --no-install-recommends \
+               mxe-$TARGET-w64-mingw32.shared-bzip2 \
+               mxe-$TARGET-w64-mingw32.shared-curl \
+               mxe-$TARGET-w64-mingw32.shared-glib \
+               mxe-$TARGET-w64-mingw32.shared-libgcrypt \
+               mxe-$TARGET-w64-mingw32.shared-libssh2 \
+               mxe-$TARGET-w64-mingw32.shared-libusb1 \
+               mxe-$TARGET-w64-mingw32.shared-lzo \
+               mxe-$TARGET-w64-mingw32.shared-nettle \
+               mxe-$TARGET-w64-mingw32.shared-ncurses \
+               mxe-$TARGET-w64-mingw32.shared-pixman \
+               mxe-$TARGET-w64-mingw32.shared-pkgconf \
+               mxe-$TARGET-w64-mingw32.shared-pthreads \
+               mxe-$TARGET-w64-mingw32.shared-sdl2 \
+               mxe-$TARGET-w64-mingw32.shared-sdl2-mixer \
+               mxe-$TARGET-w64-mingw32.shared-sdl2-gfx \
+               mxe-$TARGET-w64-mingw32.shared-zlib
+
+# Specify the cross prefix for this image (see tests/docker/common.rc)
+ENV QEMU_CONFIGURE_OPTS --cross-prefix=$TARGET-w64-mingw32.shared-
diff --git a/tests/docker/dockerfiles/debian-win64-cross.docker 
b/tests/docker/dockerfiles/debian-win64-cross.docker
new file mode 100644
index 0000000000..32b1da0a34
--- /dev/null
+++ b/tests/docker/dockerfiles/debian-win64-cross.docker
@@ -0,0 +1,32 @@
+#
+# Docker mingw64 cross-compiler target
+#
+# This docker target builds on the debian Jessie MXE base image.
+#
+FROM qemu:debian8-mxe
+
+MAINTAINER Philippe Mathieu-Daudé <address@hidden>
+
+ENV TARGET x86-64
+
+RUN DEBIAN_FRONTEND=noninteractive eatmydata \
+    apt-get install -y --no-install-recommends \
+               mxe-$TARGET-w64-mingw32.shared-bzip2 \
+               mxe-$TARGET-w64-mingw32.shared-curl \
+               mxe-$TARGET-w64-mingw32.shared-glib \
+               mxe-$TARGET-w64-mingw32.shared-libgcrypt \
+               mxe-$TARGET-w64-mingw32.shared-libssh2 \
+               mxe-$TARGET-w64-mingw32.shared-libusb1 \
+               mxe-$TARGET-w64-mingw32.shared-lzo \
+               mxe-$TARGET-w64-mingw32.shared-nettle \
+               mxe-$TARGET-w64-mingw32.shared-ncurses \
+               mxe-$TARGET-w64-mingw32.shared-pixman \
+               mxe-$TARGET-w64-mingw32.shared-pkgconf \
+               mxe-$TARGET-w64-mingw32.shared-pthreads \
+               mxe-$TARGET-w64-mingw32.shared-sdl2 \
+               mxe-$TARGET-w64-mingw32.shared-sdl2-mixer \
+               mxe-$TARGET-w64-mingw32.shared-sdl2-gfx \
+               mxe-$TARGET-w64-mingw32.shared-zlib
+
+# Specify the cross prefix for this image (see tests/docker/common.rc)
+ENV QEMU_CONFIGURE_OPTS --cross-prefix=x86_64-w64-mingw32.shared-
diff --git a/tests/docker/dockerfiles/debian8-mxe.docker 
b/tests/docker/dockerfiles/debian8-mxe.docker
new file mode 100644
index 0000000000..ffebf485c0
--- /dev/null
+++ b/tests/docker/dockerfiles/debian8-mxe.docker
@@ -0,0 +1,18 @@
+#
+# Docker mingw cross-compiler target
+#
+# This docker target builds on the debian Jessie base image.
+#
+FROM qemu:debian8
+
+MAINTAINER Philippe Mathieu-Daudé <address@hidden>
+
+# Add the foreign architecture we want and install dependencies
+RUN http_proxy= apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 
D43A795B73B16ABE9643FE1AFD8FFF16DB45C6AB && \
+    echo "deb http://pkg.mxe.cc/repos/apt/debian jessie main" > 
/etc/apt/sources.list.d/mxeapt.list
+RUN apt-get update
+RUN DEBIAN_FRONTEND=noninteractive eatmydata \
+    apt-get install -y --no-install-recommends \
+               $(apt-get -s install -y --no-install-recommends 
gw32.shared-mingw-w64 gw32.shared-mingw-w64 | egrep "^Inst mxe-x86-64-unknown-" 
| cut -d\  -f2)
+
+ENV PATH $PATH:/usr/lib/mxe/usr/bin/ 
-- 
2.13.2




reply via email to

[Prev in Thread] Current Thread [Next in Thread]