diff --git a/testsuite/setup-env b/testsuite/setup-env
new file mode 100755
index 0000000000000000000000000000000000000000..1936136acebe867d6274cb07025f753b2f14553d
--- /dev/null
+++ b/testsuite/setup-env
@@ -0,0 +1,12 @@
+#! /bin/sh
+
+set -e
+
+# Workaround, it seems difficult to convince wine to put ../lib into PATH.
+case "$EMULATOR" in
+    wine*)
+	for f in ../.lib/*.dll ; do
+	  ln -s "$f" .
+	done
+	;;
+esac
diff --git a/testsuite/teardown-env b/testsuite/teardown-env
index 2c547ad3f0005e5eed5555c3e3bd18c43fdacad5..1aab138bf736784e7e456ca63cc305c176db808a 100755
--- a/testsuite/teardown-env
+++ b/testsuite/teardown-env
@@ -1,3 +1,9 @@
 #! /bin/sh
 
 rm -rf testkey.priv testkey.pub testsignature testsignature2
+
+case "$EMULATOR" in
+    wine*)
+	rm `find . -type l -name '*.dll'`
+	;;
+esac