From 67828b60e046aacb63b5eee2664201e6d94752a5 Mon Sep 17 00:00:00 2001
From: Alexandre Julliard <julliard@winehq.org>
Date: Thu, 28 Aug 2008 12:09:46 +0200
Subject: [PATCH] configure: Build the winetest dependencies in configure
 instead of make_makefiles.

---
 configure                     |  18 ++-
 configure.ac                  |  14 ++
 programs/winetest/Makefile.in | 260 +---------------------------------
 tools/make_makefiles          |  18 +--
 4 files changed, 37 insertions(+), 273 deletions(-)

diff --git a/configure b/configure
index b8bffa4cb6c..590bd0511b0 100755
--- a/configure
+++ b/configure
@@ -781,6 +781,7 @@ ALL_TEST_DIRS
 ALL_PROGRAM_DIRS
 ALL_PROGRAM_INSTALL_DIRS
 ALL_PROGRAM_BIN_INSTALL_DIRS
+ALL_WINETEST_DEPENDS
 LIBOBJS
 LTLIBOBJS'
 ac_subst_files='MAKE_RULES
@@ -25648,6 +25649,20 @@ tools/wrc/Makefile: tools/wrc/Makefile.in Make.rules"
 ac_config_files="$ac_config_files tools/wrc/Makefile"
 
 
+
+ALL_WINETEST_DEPENDS="# Test binaries"
+
+for dir in $ALL_TEST_DIRS
+do
+    if test "$dir" != "\\"
+    then
+        testname=`expr $dir : '\(.*\)/tests'`_test.exe
+        ALL_WINETEST_DEPENDS="$ALL_WINETEST_DEPENDS
+$testname: \$(DLLDIR)/$dir/$testname\$(DLLEXT)
+	cp \$(DLLDIR)/$dir/$testname\$(DLLEXT) \$@ && \$(STRIP) \$@"
+    fi
+done
+
 cat >confcache <<\_ACEOF
 # This file is a shell script that caches the results of configure
 # tests run on this system so they can be shared between configure
@@ -26932,11 +26947,12 @@ ALL_TEST_DIRS!$ALL_TEST_DIRS$ac_delim
 ALL_PROGRAM_DIRS!$ALL_PROGRAM_DIRS$ac_delim
 ALL_PROGRAM_INSTALL_DIRS!$ALL_PROGRAM_INSTALL_DIRS$ac_delim
 ALL_PROGRAM_BIN_INSTALL_DIRS!$ALL_PROGRAM_BIN_INSTALL_DIRS$ac_delim
+ALL_WINETEST_DEPENDS!$ALL_WINETEST_DEPENDS$ac_delim
 LIBOBJS!$LIBOBJS$ac_delim
 LTLIBOBJS!$LTLIBOBJS$ac_delim
 _ACEOF
 
-  if test `sed -n "s/.*$ac_delim\$/X/p" conf$$subs.sed | grep -c X` = 86; then
+  if test `sed -n "s/.*$ac_delim\$/X/p" conf$$subs.sed | grep -c X` = 87; then
     break
   elif $ac_last_try; then
     { { echo "$as_me:$LINENO: error: could not make $CONFIG_STATUS" >&5
diff --git a/configure.ac b/configure.ac
index 8877dede198..589ee93ca6d 100644
--- a/configure.ac
+++ b/configure.ac
@@ -2121,6 +2121,20 @@ WINE_CONFIG_MAKEFILE([tools/winegcc/Makefile],[Make.rules])
 WINE_CONFIG_MAKEFILE([tools/wmc/Makefile],[Make.rules])
 WINE_CONFIG_MAKEFILE([tools/wrc/Makefile],[Make.rules])
 
+dnl Build dependencies for test files compiled into winetest
+
+AC_SUBST(ALL_WINETEST_DEPENDS,["# Test binaries"])
+for dir in $ALL_TEST_DIRS
+do
+    if test "$dir" != "\\"
+    then
+        testname=`expr $dir : '\(.*\)/tests'`_test.exe
+        ALL_WINETEST_DEPENDS="$ALL_WINETEST_DEPENDS
+$testname: \$(DLLDIR)/$dir/$testname\$(DLLEXT)
+	cp \$(DLLDIR)/$dir/$testname\$(DLLEXT) \$@ && \$(STRIP) \$@"
+    fi
+done
+
 AC_OUTPUT
 
 if test "$no_create" = "yes"
diff --git a/programs/winetest/Makefile.in b/programs/winetest/Makefile.in
index 2c06b1194eb..1f1ce84f819 100644
--- a/programs/winetest/Makefile.in
+++ b/programs/winetest/Makefile.in
@@ -21,265 +21,11 @@ SVG_SRCS = winetest.svg
 
 @MAKE_PROG_RULES@
 
-# List of test executables (auto-generated by make_makefiles)
+ALL_TEST_DIRS = @ALL_TEST_DIRS@
 
-TESTBINS = \
-	advapi32_test.exe \
-	advpack_test.exe \
-	browseui_test.exe \
-	cabinet_test.exe \
-	comcat_test.exe \
-	comctl32_test.exe \
-	comdlg32_test.exe \
-	credui_test.exe \
-	crypt32_test.exe \
-	cryptnet_test.exe \
-	d3d8_test.exe \
-	d3d9_test.exe \
-	d3drm_test.exe \
-	d3dx8_test.exe \
-	d3dx9_36_test.exe \
-	d3dxof_test.exe \
-	ddraw_test.exe \
-	dinput_test.exe \
-	dnsapi_test.exe \
-	dplayx_test.exe \
-	dsound_test.exe \
-	fusion_test.exe \
-	gdi32_test.exe \
-	gdiplus_test.exe \
-	hlink_test.exe \
-	imm32_test.exe \
-	inetcomm_test.exe \
-	inetmib1_test.exe \
-	infosoft_test.exe \
-	iphlpapi_test.exe \
-	itss_test.exe \
-	jscript_test.exe \
-	kernel32_test.exe \
-	localspl_test.exe \
-	localui_test.exe \
-	lz32_test.exe \
-	mapi32_test.exe \
-	mlang_test.exe \
-	msacm32_test.exe \
-	mscms_test.exe \
-	mshtml_test.exe \
-	msi_test.exe \
-	mstask_test.exe \
-	msvcrt_test.exe \
-	msvcrtd_test.exe \
-	msxml3_test.exe \
-	netapi32_test.exe \
-	ntdll_test.exe \
-	ntdsapi_test.exe \
-	ntprint_test.exe \
-	odbccp32_test.exe \
-	ole32_test.exe \
-	oleaut32_test.exe \
-	opengl32_test.exe \
-	pdh_test.exe \
-	psapi_test.exe \
-	qedit_test.exe \
-	qmgr_test.exe \
-	quartz_test.exe \
-	rasapi32_test.exe \
-	riched20_test.exe \
-	riched32_test.exe \
-	rpcrt4_test.exe \
-	rsaenh_test.exe \
-	schannel_test.exe \
-	secur32_test.exe \
-	serialui_test.exe \
-	setupapi_test.exe \
-	shdocvw_test.exe \
-	shell32_test.exe \
-	shlwapi_test.exe \
-	snmpapi_test.exe \
-	spoolss_test.exe \
-	urlmon_test.exe \
-	user32_test.exe \
-	userenv_test.exe \
-	usp10_test.exe \
-	uxtheme_test.exe \
-	version_test.exe \
-	winhttp_test.exe \
-	wininet_test.exe \
-	winmm_test.exe \
-	winspool.drv_test.exe \
-	wintrust_test.exe \
-	ws2_32_test.exe
+TESTBINS = $(ALL_TEST_DIRS:%/tests=%_test.exe)
 
-advapi32_test.exe: $(DLLDIR)/advapi32/tests/advapi32_test.exe$(DLLEXT)
-	cp $(DLLDIR)/advapi32/tests/advapi32_test.exe$(DLLEXT) $@ && $(STRIP) $@
-advpack_test.exe: $(DLLDIR)/advpack/tests/advpack_test.exe$(DLLEXT)
-	cp $(DLLDIR)/advpack/tests/advpack_test.exe$(DLLEXT) $@ && $(STRIP) $@
-browseui_test.exe: $(DLLDIR)/browseui/tests/browseui_test.exe$(DLLEXT)
-	cp $(DLLDIR)/browseui/tests/browseui_test.exe$(DLLEXT) $@ && $(STRIP) $@
-cabinet_test.exe: $(DLLDIR)/cabinet/tests/cabinet_test.exe$(DLLEXT)
-	cp $(DLLDIR)/cabinet/tests/cabinet_test.exe$(DLLEXT) $@ && $(STRIP) $@
-comcat_test.exe: $(DLLDIR)/comcat/tests/comcat_test.exe$(DLLEXT)
-	cp $(DLLDIR)/comcat/tests/comcat_test.exe$(DLLEXT) $@ && $(STRIP) $@
-comctl32_test.exe: $(DLLDIR)/comctl32/tests/comctl32_test.exe$(DLLEXT)
-	cp $(DLLDIR)/comctl32/tests/comctl32_test.exe$(DLLEXT) $@ && $(STRIP) $@
-comdlg32_test.exe: $(DLLDIR)/comdlg32/tests/comdlg32_test.exe$(DLLEXT)
-	cp $(DLLDIR)/comdlg32/tests/comdlg32_test.exe$(DLLEXT) $@ && $(STRIP) $@
-credui_test.exe: $(DLLDIR)/credui/tests/credui_test.exe$(DLLEXT)
-	cp $(DLLDIR)/credui/tests/credui_test.exe$(DLLEXT) $@ && $(STRIP) $@
-crypt32_test.exe: $(DLLDIR)/crypt32/tests/crypt32_test.exe$(DLLEXT)
-	cp $(DLLDIR)/crypt32/tests/crypt32_test.exe$(DLLEXT) $@ && $(STRIP) $@
-cryptnet_test.exe: $(DLLDIR)/cryptnet/tests/cryptnet_test.exe$(DLLEXT)
-	cp $(DLLDIR)/cryptnet/tests/cryptnet_test.exe$(DLLEXT) $@ && $(STRIP) $@
-d3d8_test.exe: $(DLLDIR)/d3d8/tests/d3d8_test.exe$(DLLEXT)
-	cp $(DLLDIR)/d3d8/tests/d3d8_test.exe$(DLLEXT) $@ && $(STRIP) $@
-d3d9_test.exe: $(DLLDIR)/d3d9/tests/d3d9_test.exe$(DLLEXT)
-	cp $(DLLDIR)/d3d9/tests/d3d9_test.exe$(DLLEXT) $@ && $(STRIP) $@
-d3drm_test.exe: $(DLLDIR)/d3drm/tests/d3drm_test.exe$(DLLEXT)
-	cp $(DLLDIR)/d3drm/tests/d3drm_test.exe$(DLLEXT) $@ && $(STRIP) $@
-d3dx8_test.exe: $(DLLDIR)/d3dx8/tests/d3dx8_test.exe$(DLLEXT)
-	cp $(DLLDIR)/d3dx8/tests/d3dx8_test.exe$(DLLEXT) $@ && $(STRIP) $@
-d3dx9_36_test.exe: $(DLLDIR)/d3dx9_36/tests/d3dx9_36_test.exe$(DLLEXT)
-	cp $(DLLDIR)/d3dx9_36/tests/d3dx9_36_test.exe$(DLLEXT) $@ && $(STRIP) $@
-d3dxof_test.exe: $(DLLDIR)/d3dxof/tests/d3dxof_test.exe$(DLLEXT)
-	cp $(DLLDIR)/d3dxof/tests/d3dxof_test.exe$(DLLEXT) $@ && $(STRIP) $@
-ddraw_test.exe: $(DLLDIR)/ddraw/tests/ddraw_test.exe$(DLLEXT)
-	cp $(DLLDIR)/ddraw/tests/ddraw_test.exe$(DLLEXT) $@ && $(STRIP) $@
-dinput_test.exe: $(DLLDIR)/dinput/tests/dinput_test.exe$(DLLEXT)
-	cp $(DLLDIR)/dinput/tests/dinput_test.exe$(DLLEXT) $@ && $(STRIP) $@
-dnsapi_test.exe: $(DLLDIR)/dnsapi/tests/dnsapi_test.exe$(DLLEXT)
-	cp $(DLLDIR)/dnsapi/tests/dnsapi_test.exe$(DLLEXT) $@ && $(STRIP) $@
-dplayx_test.exe: $(DLLDIR)/dplayx/tests/dplayx_test.exe$(DLLEXT)
-	cp $(DLLDIR)/dplayx/tests/dplayx_test.exe$(DLLEXT) $@ && $(STRIP) $@
-dsound_test.exe: $(DLLDIR)/dsound/tests/dsound_test.exe$(DLLEXT)
-	cp $(DLLDIR)/dsound/tests/dsound_test.exe$(DLLEXT) $@ && $(STRIP) $@
-fusion_test.exe: $(DLLDIR)/fusion/tests/fusion_test.exe$(DLLEXT)
-	cp $(DLLDIR)/fusion/tests/fusion_test.exe$(DLLEXT) $@ && $(STRIP) $@
-gdi32_test.exe: $(DLLDIR)/gdi32/tests/gdi32_test.exe$(DLLEXT)
-	cp $(DLLDIR)/gdi32/tests/gdi32_test.exe$(DLLEXT) $@ && $(STRIP) $@
-gdiplus_test.exe: $(DLLDIR)/gdiplus/tests/gdiplus_test.exe$(DLLEXT)
-	cp $(DLLDIR)/gdiplus/tests/gdiplus_test.exe$(DLLEXT) $@ && $(STRIP) $@
-hlink_test.exe: $(DLLDIR)/hlink/tests/hlink_test.exe$(DLLEXT)
-	cp $(DLLDIR)/hlink/tests/hlink_test.exe$(DLLEXT) $@ && $(STRIP) $@
-imm32_test.exe: $(DLLDIR)/imm32/tests/imm32_test.exe$(DLLEXT)
-	cp $(DLLDIR)/imm32/tests/imm32_test.exe$(DLLEXT) $@ && $(STRIP) $@
-inetcomm_test.exe: $(DLLDIR)/inetcomm/tests/inetcomm_test.exe$(DLLEXT)
-	cp $(DLLDIR)/inetcomm/tests/inetcomm_test.exe$(DLLEXT) $@ && $(STRIP) $@
-inetmib1_test.exe: $(DLLDIR)/inetmib1/tests/inetmib1_test.exe$(DLLEXT)
-	cp $(DLLDIR)/inetmib1/tests/inetmib1_test.exe$(DLLEXT) $@ && $(STRIP) $@
-infosoft_test.exe: $(DLLDIR)/infosoft/tests/infosoft_test.exe$(DLLEXT)
-	cp $(DLLDIR)/infosoft/tests/infosoft_test.exe$(DLLEXT) $@ && $(STRIP) $@
-iphlpapi_test.exe: $(DLLDIR)/iphlpapi/tests/iphlpapi_test.exe$(DLLEXT)
-	cp $(DLLDIR)/iphlpapi/tests/iphlpapi_test.exe$(DLLEXT) $@ && $(STRIP) $@
-itss_test.exe: $(DLLDIR)/itss/tests/itss_test.exe$(DLLEXT)
-	cp $(DLLDIR)/itss/tests/itss_test.exe$(DLLEXT) $@ && $(STRIP) $@
-jscript_test.exe: $(DLLDIR)/jscript/tests/jscript_test.exe$(DLLEXT)
-	cp $(DLLDIR)/jscript/tests/jscript_test.exe$(DLLEXT) $@ && $(STRIP) $@
-kernel32_test.exe: $(DLLDIR)/kernel32/tests/kernel32_test.exe$(DLLEXT)
-	cp $(DLLDIR)/kernel32/tests/kernel32_test.exe$(DLLEXT) $@ && $(STRIP) $@
-localspl_test.exe: $(DLLDIR)/localspl/tests/localspl_test.exe$(DLLEXT)
-	cp $(DLLDIR)/localspl/tests/localspl_test.exe$(DLLEXT) $@ && $(STRIP) $@
-localui_test.exe: $(DLLDIR)/localui/tests/localui_test.exe$(DLLEXT)
-	cp $(DLLDIR)/localui/tests/localui_test.exe$(DLLEXT) $@ && $(STRIP) $@
-lz32_test.exe: $(DLLDIR)/lz32/tests/lz32_test.exe$(DLLEXT)
-	cp $(DLLDIR)/lz32/tests/lz32_test.exe$(DLLEXT) $@ && $(STRIP) $@
-mapi32_test.exe: $(DLLDIR)/mapi32/tests/mapi32_test.exe$(DLLEXT)
-	cp $(DLLDIR)/mapi32/tests/mapi32_test.exe$(DLLEXT) $@ && $(STRIP) $@
-mlang_test.exe: $(DLLDIR)/mlang/tests/mlang_test.exe$(DLLEXT)
-	cp $(DLLDIR)/mlang/tests/mlang_test.exe$(DLLEXT) $@ && $(STRIP) $@
-msacm32_test.exe: $(DLLDIR)/msacm32/tests/msacm32_test.exe$(DLLEXT)
-	cp $(DLLDIR)/msacm32/tests/msacm32_test.exe$(DLLEXT) $@ && $(STRIP) $@
-mscms_test.exe: $(DLLDIR)/mscms/tests/mscms_test.exe$(DLLEXT)
-	cp $(DLLDIR)/mscms/tests/mscms_test.exe$(DLLEXT) $@ && $(STRIP) $@
-mshtml_test.exe: $(DLLDIR)/mshtml/tests/mshtml_test.exe$(DLLEXT)
-	cp $(DLLDIR)/mshtml/tests/mshtml_test.exe$(DLLEXT) $@ && $(STRIP) $@
-msi_test.exe: $(DLLDIR)/msi/tests/msi_test.exe$(DLLEXT)
-	cp $(DLLDIR)/msi/tests/msi_test.exe$(DLLEXT) $@ && $(STRIP) $@
-mstask_test.exe: $(DLLDIR)/mstask/tests/mstask_test.exe$(DLLEXT)
-	cp $(DLLDIR)/mstask/tests/mstask_test.exe$(DLLEXT) $@ && $(STRIP) $@
-msvcrt_test.exe: $(DLLDIR)/msvcrt/tests/msvcrt_test.exe$(DLLEXT)
-	cp $(DLLDIR)/msvcrt/tests/msvcrt_test.exe$(DLLEXT) $@ && $(STRIP) $@
-msvcrtd_test.exe: $(DLLDIR)/msvcrtd/tests/msvcrtd_test.exe$(DLLEXT)
-	cp $(DLLDIR)/msvcrtd/tests/msvcrtd_test.exe$(DLLEXT) $@ && $(STRIP) $@
-msxml3_test.exe: $(DLLDIR)/msxml3/tests/msxml3_test.exe$(DLLEXT)
-	cp $(DLLDIR)/msxml3/tests/msxml3_test.exe$(DLLEXT) $@ && $(STRIP) $@
-netapi32_test.exe: $(DLLDIR)/netapi32/tests/netapi32_test.exe$(DLLEXT)
-	cp $(DLLDIR)/netapi32/tests/netapi32_test.exe$(DLLEXT) $@ && $(STRIP) $@
-ntdll_test.exe: $(DLLDIR)/ntdll/tests/ntdll_test.exe$(DLLEXT)
-	cp $(DLLDIR)/ntdll/tests/ntdll_test.exe$(DLLEXT) $@ && $(STRIP) $@
-ntdsapi_test.exe: $(DLLDIR)/ntdsapi/tests/ntdsapi_test.exe$(DLLEXT)
-	cp $(DLLDIR)/ntdsapi/tests/ntdsapi_test.exe$(DLLEXT) $@ && $(STRIP) $@
-ntprint_test.exe: $(DLLDIR)/ntprint/tests/ntprint_test.exe$(DLLEXT)
-	cp $(DLLDIR)/ntprint/tests/ntprint_test.exe$(DLLEXT) $@ && $(STRIP) $@
-odbccp32_test.exe: $(DLLDIR)/odbccp32/tests/odbccp32_test.exe$(DLLEXT)
-	cp $(DLLDIR)/odbccp32/tests/odbccp32_test.exe$(DLLEXT) $@ && $(STRIP) $@
-ole32_test.exe: $(DLLDIR)/ole32/tests/ole32_test.exe$(DLLEXT)
-	cp $(DLLDIR)/ole32/tests/ole32_test.exe$(DLLEXT) $@ && $(STRIP) $@
-oleaut32_test.exe: $(DLLDIR)/oleaut32/tests/oleaut32_test.exe$(DLLEXT)
-	cp $(DLLDIR)/oleaut32/tests/oleaut32_test.exe$(DLLEXT) $@ && $(STRIP) $@
-opengl32_test.exe: $(DLLDIR)/opengl32/tests/opengl32_test.exe$(DLLEXT)
-	cp $(DLLDIR)/opengl32/tests/opengl32_test.exe$(DLLEXT) $@ && $(STRIP) $@
-pdh_test.exe: $(DLLDIR)/pdh/tests/pdh_test.exe$(DLLEXT)
-	cp $(DLLDIR)/pdh/tests/pdh_test.exe$(DLLEXT) $@ && $(STRIP) $@
-psapi_test.exe: $(DLLDIR)/psapi/tests/psapi_test.exe$(DLLEXT)
-	cp $(DLLDIR)/psapi/tests/psapi_test.exe$(DLLEXT) $@ && $(STRIP) $@
-qedit_test.exe: $(DLLDIR)/qedit/tests/qedit_test.exe$(DLLEXT)
-	cp $(DLLDIR)/qedit/tests/qedit_test.exe$(DLLEXT) $@ && $(STRIP) $@
-qmgr_test.exe: $(DLLDIR)/qmgr/tests/qmgr_test.exe$(DLLEXT)
-	cp $(DLLDIR)/qmgr/tests/qmgr_test.exe$(DLLEXT) $@ && $(STRIP) $@
-quartz_test.exe: $(DLLDIR)/quartz/tests/quartz_test.exe$(DLLEXT)
-	cp $(DLLDIR)/quartz/tests/quartz_test.exe$(DLLEXT) $@ && $(STRIP) $@
-rasapi32_test.exe: $(DLLDIR)/rasapi32/tests/rasapi32_test.exe$(DLLEXT)
-	cp $(DLLDIR)/rasapi32/tests/rasapi32_test.exe$(DLLEXT) $@ && $(STRIP) $@
-riched20_test.exe: $(DLLDIR)/riched20/tests/riched20_test.exe$(DLLEXT)
-	cp $(DLLDIR)/riched20/tests/riched20_test.exe$(DLLEXT) $@ && $(STRIP) $@
-riched32_test.exe: $(DLLDIR)/riched32/tests/riched32_test.exe$(DLLEXT)
-	cp $(DLLDIR)/riched32/tests/riched32_test.exe$(DLLEXT) $@ && $(STRIP) $@
-rpcrt4_test.exe: $(DLLDIR)/rpcrt4/tests/rpcrt4_test.exe$(DLLEXT)
-	cp $(DLLDIR)/rpcrt4/tests/rpcrt4_test.exe$(DLLEXT) $@ && $(STRIP) $@
-rsaenh_test.exe: $(DLLDIR)/rsaenh/tests/rsaenh_test.exe$(DLLEXT)
-	cp $(DLLDIR)/rsaenh/tests/rsaenh_test.exe$(DLLEXT) $@ && $(STRIP) $@
-schannel_test.exe: $(DLLDIR)/schannel/tests/schannel_test.exe$(DLLEXT)
-	cp $(DLLDIR)/schannel/tests/schannel_test.exe$(DLLEXT) $@ && $(STRIP) $@
-secur32_test.exe: $(DLLDIR)/secur32/tests/secur32_test.exe$(DLLEXT)
-	cp $(DLLDIR)/secur32/tests/secur32_test.exe$(DLLEXT) $@ && $(STRIP) $@
-serialui_test.exe: $(DLLDIR)/serialui/tests/serialui_test.exe$(DLLEXT)
-	cp $(DLLDIR)/serialui/tests/serialui_test.exe$(DLLEXT) $@ && $(STRIP) $@
-setupapi_test.exe: $(DLLDIR)/setupapi/tests/setupapi_test.exe$(DLLEXT)
-	cp $(DLLDIR)/setupapi/tests/setupapi_test.exe$(DLLEXT) $@ && $(STRIP) $@
-shdocvw_test.exe: $(DLLDIR)/shdocvw/tests/shdocvw_test.exe$(DLLEXT)
-	cp $(DLLDIR)/shdocvw/tests/shdocvw_test.exe$(DLLEXT) $@ && $(STRIP) $@
-shell32_test.exe: $(DLLDIR)/shell32/tests/shell32_test.exe$(DLLEXT)
-	cp $(DLLDIR)/shell32/tests/shell32_test.exe$(DLLEXT) $@ && $(STRIP) $@
-shlwapi_test.exe: $(DLLDIR)/shlwapi/tests/shlwapi_test.exe$(DLLEXT)
-	cp $(DLLDIR)/shlwapi/tests/shlwapi_test.exe$(DLLEXT) $@ && $(STRIP) $@
-snmpapi_test.exe: $(DLLDIR)/snmpapi/tests/snmpapi_test.exe$(DLLEXT)
-	cp $(DLLDIR)/snmpapi/tests/snmpapi_test.exe$(DLLEXT) $@ && $(STRIP) $@
-spoolss_test.exe: $(DLLDIR)/spoolss/tests/spoolss_test.exe$(DLLEXT)
-	cp $(DLLDIR)/spoolss/tests/spoolss_test.exe$(DLLEXT) $@ && $(STRIP) $@
-urlmon_test.exe: $(DLLDIR)/urlmon/tests/urlmon_test.exe$(DLLEXT)
-	cp $(DLLDIR)/urlmon/tests/urlmon_test.exe$(DLLEXT) $@ && $(STRIP) $@
-user32_test.exe: $(DLLDIR)/user32/tests/user32_test.exe$(DLLEXT)
-	cp $(DLLDIR)/user32/tests/user32_test.exe$(DLLEXT) $@ && $(STRIP) $@
-userenv_test.exe: $(DLLDIR)/userenv/tests/userenv_test.exe$(DLLEXT)
-	cp $(DLLDIR)/userenv/tests/userenv_test.exe$(DLLEXT) $@ && $(STRIP) $@
-usp10_test.exe: $(DLLDIR)/usp10/tests/usp10_test.exe$(DLLEXT)
-	cp $(DLLDIR)/usp10/tests/usp10_test.exe$(DLLEXT) $@ && $(STRIP) $@
-uxtheme_test.exe: $(DLLDIR)/uxtheme/tests/uxtheme_test.exe$(DLLEXT)
-	cp $(DLLDIR)/uxtheme/tests/uxtheme_test.exe$(DLLEXT) $@ && $(STRIP) $@
-version_test.exe: $(DLLDIR)/version/tests/version_test.exe$(DLLEXT)
-	cp $(DLLDIR)/version/tests/version_test.exe$(DLLEXT) $@ && $(STRIP) $@
-winhttp_test.exe: $(DLLDIR)/winhttp/tests/winhttp_test.exe$(DLLEXT)
-	cp $(DLLDIR)/winhttp/tests/winhttp_test.exe$(DLLEXT) $@ && $(STRIP) $@
-wininet_test.exe: $(DLLDIR)/wininet/tests/wininet_test.exe$(DLLEXT)
-	cp $(DLLDIR)/wininet/tests/wininet_test.exe$(DLLEXT) $@ && $(STRIP) $@
-winmm_test.exe: $(DLLDIR)/winmm/tests/winmm_test.exe$(DLLEXT)
-	cp $(DLLDIR)/winmm/tests/winmm_test.exe$(DLLEXT) $@ && $(STRIP) $@
-winspool.drv_test.exe: $(DLLDIR)/winspool.drv/tests/winspool.drv_test.exe$(DLLEXT)
-	cp $(DLLDIR)/winspool.drv/tests/winspool.drv_test.exe$(DLLEXT) $@ && $(STRIP) $@
-wintrust_test.exe: $(DLLDIR)/wintrust/tests/wintrust_test.exe$(DLLEXT)
-	cp $(DLLDIR)/wintrust/tests/wintrust_test.exe$(DLLEXT) $@ && $(STRIP) $@
-ws2_32_test.exe: $(DLLDIR)/ws2_32/tests/ws2_32_test.exe$(DLLEXT)
-	cp $(DLLDIR)/ws2_32/tests/ws2_32_test.exe$(DLLEXT) $@ && $(STRIP) $@
+@ALL_WINETEST_DEPENDS@
 
 # Special rules
 
diff --git a/tools/make_makefiles b/tools/make_makefiles
index 53ed0ba01ac..14345a90fe1 100755
--- a/tools/make_makefiles
+++ b/tools/make_makefiles
@@ -218,7 +218,7 @@ sub parse_makefile($)
 
 
 ################################################################
-# update the tests list in programs/winetest/Makefile.in and programs/winetest/winetest.rc
+# update the tests list in programs/winetest/winetest.rc
 
 sub update_winetest(@)
 {
@@ -228,18 +228,6 @@ sub update_winetest(@)
     {
         if ($file =~ /^dlls\/(.*)\/tests\/Makefile/) { push @tests, $1; }
     }
-    push @lines, "TESTBINS =";
-    push @lines, map { " \\\n\t" . $_ . "_test.exe"; } sort @tests;
-    push @lines, "\n\n";
-
-    foreach my $test (sort @tests)
-    {
-        push @lines, "${test}_test.exe: \$(DLLDIR)/$test/tests/${test}_test.exe\$(DLLEXT)\n";
-        push @lines, "\tcp \$(DLLDIR)/$test/tests/${test}_test.exe\$(DLLEXT) \$\@ && \$(STRIP) \$\@\n";
-    }
-    push @lines, "\n# Special rules\n";
-
-    replace_in_file( "programs/winetest/Makefile.in", '^TESTBINS\s*=', '^# Special rules', @lines );
 
     replace_in_file( "programs/winetest/winetest.rc", ' TESTRES ', undef,
                      map { $_ . "_test.exe TESTRES \"" . $_ . "_test.exe\"\n"; } sort @tests );
@@ -285,8 +273,8 @@ sub update_makefiles(@)
         push @lines, "WINE_CONFIG_MAKEFILE([$file],[$rules]$args)\n";
     }
 
-    push @lines, "\nAC_OUTPUT\n";
-    replace_in_file( "configure.ac", '^WINE_CONFIG_MAKERULES', '^AC_OUTPUT$', @lines);
+    push @lines, "\ndnl Build dependencies for test files compiled into winetest\n";
+    replace_in_file( "configure.ac", '^WINE_CONFIG_MAKERULES', '^dnl Build dependencies for test files compiled into winetest$', @lines);
 }
 
 
-- 
GitLab