Add docker build for Windows emulator

Use the Fedora docker template to cross-compile the Windows 64-bit
emulator.

Signed-off-by: Vincent Palatin <vpalatin@chromium.org>
diff --git a/tests/docker/Makefile.include b/tests/docker/Makefile.include
index 4f4707d..06e831f 100644
--- a/tests/docker/Makefile.include
+++ b/tests/docker/Makefile.include
@@ -8,6 +8,8 @@
 DOCKER_TARGETS := $(patsubst %,docker-image-%,$(DOCKER_IMAGES))
 # Use a global constant ccache directory to speed up repetitive builds
 DOCKER_CCACHE_DIR := $$HOME/.cache/qemu-docker-ccache
+# Results built by the docker execution
+DOCKER_RESULT_DIR := $(shell mktemp -d --suffix=_qemu-docker)
 
 DOCKER_TESTS := $(notdir $(shell \
 	find $(SRC_PATH)/tests/docker/ -name 'test-*' -type f))
@@ -118,11 +120,12 @@
 				-e CCACHE_DIR=/var/tmp/ccache \
 				-v $$(realpath $(DOCKER_SRC_COPY)):/var/tmp/qemu:z$(COMMA)ro \
 				-v $(DOCKER_CCACHE_DIR):/var/tmp/ccache:z \
+				-v $(DOCKER_RESULT_DIR):/var/tmp/install:z \
 				qemu:$(IMAGE) \
 				/var/tmp/qemu/run \
 				$(CMD); \
 			fi \
-			, "  RUN $(CMD) in $(IMAGE)")))
+			, "  RUN $(CMD) in $(IMAGE) OUTPUT $(DOCKER_RESULT_DIR)")))
 
 docker-clean:
 	$(call quiet-command, $(SRC_PATH)/tests/docker/docker.py clean)
diff --git a/tests/docker/dockerfiles/fedora.docker b/tests/docker/dockerfiles/fedora.docker
index 1d26a8e..1907a2b 100644
--- a/tests/docker/dockerfiles/fedora.docker
+++ b/tests/docker/dockerfiles/fedora.docker
@@ -2,6 +2,6 @@
 RUN dnf install -y \
     ccache git tar PyYAML sparse flex bison \
     glib2-devel pixman-devel zlib-devel SDL-devel libfdt-devel \
-    gcc gcc-c++ clang make perl which bc findutils \
-    mingw{32,64}-{pixman,glib2,gmp,SDL,pkg-config,gtk2,gtk3,gnutls,nettle,libtasn1,libjpeg-turbo,libpng,curl,libssh2,bzip2}
+    gcc gcc-c++ clang make perl which bc findutils zip gettext \
+    mingw{32,64}-{pixman,glib2,gmp,pkg-config,gtk2,gtk3,gnutls,nettle,libtasn1,libjpeg-turbo,libpng,curl,libssh2,bzip2}
 ENV FEATURES mingw clang pyyaml
diff --git a/tests/docker/test-mingw-emu b/tests/docker/test-mingw-emu
new file mode 100755
index 0000000..254448f
--- /dev/null
+++ b/tests/docker/test-mingw-emu
@@ -0,0 +1,32 @@
+#!/bin/bash -e
+#
+# Cross compile QEMU with mingw toolchain on Linux.
+#
+# Copyright (c) 2016 Red Hat Inc.
+#
+# Authors:
+#  Fam Zheng <famz@redhat.com>
+#
+# This work is licensed under the terms of the GNU GPL, version 2
+# or (at your option) any later version. See the COPYING file in
+# the top-level directory.
+
+. common.rc
+
+requires mingw dtc
+
+CPREFIX=x86_64-w64-mingw32-
+TARGET_LIST=x86_64-softmmu
+
+build_qemu --cross-prefix=$CPREFIX \
+          --enable-gnutls \
+          --enable-nettle \
+          --enable-curl \
+          --enable-vnc \
+          --enable-bzip2 \
+          --with-gtkabi=3.0
+make install
+
+ARCHIVE=qemu-mingw64-`date -I`.zip
+zip -j /var/tmp/install/${ARCHIVE} $PWD/install/* /usr/x86_64-w64-mingw32/sys-root/mingw/bin/*.dll
+echo "DONE: $ARCHIVE"