VPATH = @srcdir@
MODULE = winetest.exe
APPMODE = -mconsole
-IMPORTS = comctl32 user32 gdi32 wsock32 kernel32
+IMPORTS = uuid comctl32 version user32 gdi32 advapi32 wsock32 kernel32
+DELAYIMPORTS = ole32
+
+EXTRARCFLAGS = -DBUILD_SHA1=\"`GIT_DIR=$(TOPSRCDIR)/.git git rev-parse HEAD 2>/dev/null`\"
C_SRCS = \
gui.c \
RC_SRCS = \
winetest.rc
-RC_BINSRC = winetest.rc
-RC_BINARIES = wine.ico
-
-XFILES = ddraw_test.exe$(DLLEXT)
-OPENGLFILES = d3d9_test.exe$(DLLEXT)
-
-TESTBINS = \
- @OPENGLFILES@ \
- @XFILES@ \
- advpack_test.exe$(DLLEXT) \
- advapi32_test.exe$(DLLEXT) \
- cabinet_test.exe$(DLLEXT) \
- comctl32_test.exe$(DLLEXT) \
- crypt32_test.exe$(DLLEXT) \
- dinput_test.exe$(DLLEXT) \
- dsound_test.exe$(DLLEXT) \
- gdi32_test.exe$(DLLEXT) \
- iphlpapi_test.exe$(DLLEXT) \
- kernel32_test.exe$(DLLEXT) \
- lz32_test.exe$(DLLEXT) \
- mapi32_test.exe$(DLLEXT) \
- mlang_test.exe$(DLLEXT) \
- msacm32_test.exe$(DLLEXT) \
- mscms_test.exe$(DLLEXT) \
- mshtml_test.exe$(DLLEXT) \
- msi_test.exe$(DLLEXT) \
- msvcrt_test.exe$(DLLEXT) \
- msvcrtd_test.exe$(DLLEXT) \
- msxml3_test.exe$(DLLEXT) \
- netapi32_test.exe$(DLLEXT) \
- ntdll_test.exe$(DLLEXT) \
- ole32_test.exe$(DLLEXT) \
- oleaut32_test.exe$(DLLEXT) \
- psapi_test.exe$(DLLEXT) \
- quartz_test.exe$(DLLEXT) \
- riched20_test.exe$(DLLEXT) \
- rpcrt4_test.exe$(DLLEXT) \
- rsabase_test.exe$(DLLEXT) \
- rsaenh_test.exe$(DLLEXT) \
- secur32_test.exe$(DLLEXT) \
- setupapi_test.exe$(DLLEXT) \
- shdocvw_test.exe$(DLLEXT) \
- shell32_test.exe$(DLLEXT) \
- shlwapi_test.exe$(DLLEXT) \
- urlmon_test.exe$(DLLEXT) \
- usp10_test.exe$(DLLEXT) \
- user32_test.exe$(DLLEXT) \
- version_test.exe$(DLLEXT) \
- wininet_test.exe$(DLLEXT) \
- winmm_test.exe$(DLLEXT) \
- winspool.drv_test.exe$(DLLEXT) \
- ws2_32_test.exe$(DLLEXT)
+SVG_SRCS = winetest.svg
@MAKE_PROG_RULES@
+ALL_TEST_DIRS = @ALL_TEST_DIRS@
+
+TESTBINS = $(ALL_TEST_DIRS:%/tests=%_test.exe)
+
+@ALL_WINETEST_DEPENDS@
+
# Special rules
-tests.rc: maketest Makefile.in
- $(SRCDIR)/maketest $(TOPSRCDIR) $(TESTBINS) > $@ || ( $(RM) $@ && exit 1 )
+winetest.res: $(TESTBINS)
-winetest.res: tests.rc $(TESTBINS)
+tests.rc: Makefile.in $(TOPOBJDIR)/config.status
+ (for i in $(TESTBINS); do echo "$$i TESTRES \"$$i\""; done) >$@ || ($(RM) $@ && false)
clean::
- $(RM) tests.rc dist.res winetest-dist winetest-dist.exe $(TESTBINS)
+ $(RM) tests.rc dist.res winetest-dist.exe $(TESTBINS)
depend: tests.rc
.PHONY: dist
-dist: winetest-dist.exe$(DLLEXT) winetest-dist$(EXEEXT)
+dist: winetest-dist.exe$(DLLEXT)
winetest-dist.exe.so: $(OBJS) dist.res Makefile.in
- $(WINEGCC) -B$(TOOLSDIR)/tools/winebuild $(APPMODE) $(OBJS) dist.res -o $@ -L$(DLLDIR) $(DELAYIMPORTS:%=-Wb,-d%) $(ALL_LIBS)
-
-winetest-dist: $(WINEWRAPPER)
- $(RM) $@ && $(LN_S) $(WINEWRAPPER) $@
+ $(WINEGCC) $(APPMODE) $(OBJS) dist.res -o $@ -L$(DLLDIR) $(DELAYIMPORTS:%=-Wb,-d%) $(ALL_LIBS)
winetest-dist.exe: $(OBJS) dist.res.o Makefile.in
- $(CC) $(APPMODE) $(OBJS) dist.res.o -o $@ $(DELAYIMPORTS:%=-l%) $(ALL_LIBS)
-
-dist.res: winetest.rc tests.rc build.id build.nfo tests.url $(TESTBINS) $(RC_BINARIES)
-
-# Rules for stripping the test executables
-
-advpack_test.exe$(DLLEXT): $(DLLDIR)/advpack/tests/advpack_test.exe$(DLLEXT)
- cp $(DLLDIR)/advpack/tests/advpack_test.exe$(DLLEXT) $@ && $(STRIP) $@
-advapi32_test.exe$(DLLEXT): $(DLLDIR)/advapi32/tests/advapi32_test.exe$(DLLEXT)
- cp $(DLLDIR)/advapi32/tests/advapi32_test.exe$(DLLEXT) $@ && $(STRIP) $@
-cabinet_test.exe$(DLLEXT): $(DLLDIR)/cabinet/tests/cabinet_test.exe$(DLLEXT)
- cp $(DLLDIR)/cabinet/tests/cabinet_test.exe$(DLLEXT) $@ && $(STRIP) $@
-comctl32_test.exe$(DLLEXT): $(DLLDIR)/comctl32/tests/comctl32_test.exe$(DLLEXT)
- cp $(DLLDIR)/comctl32/tests/comctl32_test.exe$(DLLEXT) $@ && $(STRIP) $@
-crypt32_test.exe$(DLLEXT): $(DLLDIR)/crypt32/tests/crypt32_test.exe$(DLLEXT)
- cp $(DLLDIR)/crypt32/tests/crypt32_test.exe$(DLLEXT) $@ && $(STRIP) $@
-d3d9_test.exe$(DLLEXT): $(DLLDIR)/d3d9/tests/d3d9_test.exe$(DLLEXT)
- cp $(DLLDIR)/d3d9/tests/d3d9_test.exe$(DLLEXT) $@ && $(STRIP) $@
-ddraw_test.exe$(DLLEXT): $(DLLDIR)/ddraw/tests/ddraw_test.exe$(DLLEXT)
- cp $(DLLDIR)/ddraw/tests/ddraw_test.exe$(DLLEXT) $@ && $(STRIP) $@
-dinput_test.exe$(DLLEXT): $(DLLDIR)/dinput/tests/dinput_test.exe$(DLLEXT)
- cp $(DLLDIR)/dinput/tests/dinput_test.exe$(DLLEXT) $@ && $(STRIP) $@
-dsound_test.exe$(DLLEXT): $(DLLDIR)/dsound/tests/dsound_test.exe$(DLLEXT)
- cp $(DLLDIR)/dsound/tests/dsound_test.exe$(DLLEXT) $@ && $(STRIP) $@
-gdi32_test.exe$(DLLEXT): $(DLLDIR)/gdi/tests/gdi32_test.exe$(DLLEXT)
- cp $(DLLDIR)/gdi/tests/gdi32_test.exe$(DLLEXT) $@ && $(STRIP) $@
-iphlpapi_test.exe$(DLLEXT): $(DLLDIR)/iphlpapi/tests/iphlpapi_test.exe$(DLLEXT)
- cp $(DLLDIR)/iphlpapi/tests/iphlpapi_test.exe$(DLLEXT) $@ && $(STRIP) $@
-kernel32_test.exe$(DLLEXT): $(DLLDIR)/kernel/tests/kernel32_test.exe$(DLLEXT)
- cp $(DLLDIR)/kernel/tests/kernel32_test.exe$(DLLEXT) $@ && $(STRIP) $@
-lz32_test.exe$(DLLEXT): $(DLLDIR)/lz32/tests/lz32_test.exe$(DLLEXT)
- cp $(DLLDIR)/lz32/tests/lz32_test.exe$(DLLEXT) $@ && $(STRIP) $@
-mapi32_test.exe$(DLLEXT): $(DLLDIR)/mapi32/tests/mapi32_test.exe$(DLLEXT)
- cp $(DLLDIR)/mapi32/tests/mapi32_test.exe$(DLLEXT) $@ && $(STRIP) $@
-mlang_test.exe$(DLLEXT): $(DLLDIR)/mlang/tests/mlang_test.exe$(DLLEXT)
- cp $(DLLDIR)/mlang/tests/mlang_test.exe$(DLLEXT) $@ && $(STRIP) $@
-msacm32_test.exe$(DLLEXT): $(DLLDIR)/msacm32/tests/msacm32_test.exe$(DLLEXT)
- cp $(DLLDIR)/msacm32/tests/msacm32_test.exe$(DLLEXT) $@ && $(STRIP) $@
-mscms_test.exe$(DLLEXT): $(DLLDIR)/mscms/tests/mscms_test.exe$(DLLEXT)
- cp $(DLLDIR)/mscms/tests/mscms_test.exe$(DLLEXT) $@ && $(STRIP) $@
-mshtml_test.exe$(DLLEXT): $(DLLDIR)/mshtml/tests/mshtml_test.exe$(DLLEXT)
- cp $(DLLDIR)/mshtml/tests/mshtml_test.exe$(DLLEXT) $@ && $(STRIP) $@
-msi_test.exe$(DLLEXT): $(DLLDIR)/msi/tests/msi_test.exe$(DLLEXT)
- cp $(DLLDIR)/msi/tests/msi_test.exe$(DLLEXT) $@ && $(STRIP) $@
-msvcrt_test.exe$(DLLEXT): $(DLLDIR)/msvcrt/tests/msvcrt_test.exe$(DLLEXT)
- cp $(DLLDIR)/msvcrt/tests/msvcrt_test.exe$(DLLEXT) $@ && $(STRIP) $@
-msvcrtd_test.exe$(DLLEXT): $(DLLDIR)/msvcrtd/tests/msvcrtd_test.exe$(DLLEXT)
- cp $(DLLDIR)/msvcrtd/tests/msvcrtd_test.exe$(DLLEXT) $@ && $(STRIP) $@
-msxml3_test.exe$(DLLEXT): $(DLLDIR)/msxml3/tests/msxml3_test.exe$(DLLEXT)
- cp $(DLLDIR)/msxml3/tests/msxml3_test.exe$(DLLEXT) $@ && $(STRIP) $@
-netapi32_test.exe$(DLLEXT): $(DLLDIR)/netapi32/tests/netapi32_test.exe$(DLLEXT)
- cp $(DLLDIR)/netapi32/tests/netapi32_test.exe$(DLLEXT) $@ && $(STRIP) $@
-ntdll_test.exe$(DLLEXT): $(DLLDIR)/ntdll/tests/ntdll_test.exe$(DLLEXT)
- cp $(DLLDIR)/ntdll/tests/ntdll_test.exe$(DLLEXT) $@ && $(STRIP) $@
-ole32_test.exe$(DLLEXT): $(DLLDIR)/ole32/tests/ole32_test.exe$(DLLEXT)
- cp $(DLLDIR)/ole32/tests/ole32_test.exe$(DLLEXT) $@ && $(STRIP) $@
-oleaut32_test.exe$(DLLEXT): $(DLLDIR)/oleaut32/tests/oleaut32_test.exe$(DLLEXT)
- cp $(DLLDIR)/oleaut32/tests/oleaut32_test.exe$(DLLEXT) $@ && $(STRIP) $@
-psapi_test.exe$(DLLEXT): $(DLLDIR)/psapi/tests/psapi_test.exe$(DLLEXT)
- cp $(DLLDIR)/psapi/tests/psapi_test.exe$(DLLEXT) $@ && $(STRIP) $@
-quartz_test.exe$(DLLEXT): $(DLLDIR)/quartz/tests/quartz_test.exe$(DLLEXT)
- cp $(DLLDIR)/quartz/tests/quartz_test.exe$(DLLEXT) $@ && $(STRIP) $@
-riched20_test.exe$(DLLEXT): $(DLLDIR)/riched20/tests/riched20_test.exe$(DLLEXT)
- cp $(DLLDIR)/riched20/tests/riched20_test.exe$(DLLEXT) $@ && $(STRIP) $@
-rpcrt4_test.exe$(DLLEXT): $(DLLDIR)/rpcrt4/tests/rpcrt4_test.exe$(DLLEXT)
- cp $(DLLDIR)/rpcrt4/tests/rpcrt4_test.exe$(DLLEXT) $@ && $(STRIP) $@
-rsabase_test.exe$(DLLEXT): $(DLLDIR)/rsabase/tests/rsabase_test.exe$(DLLEXT)
- cp $(DLLDIR)/rsabase/tests/rsabase_test.exe$(DLLEXT) $@ && $(STRIP) $@
-rsaenh_test.exe$(DLLEXT): $(DLLDIR)/rsaenh/tests/rsaenh_test.exe$(DLLEXT)
- cp $(DLLDIR)/rsaenh/tests/rsaenh_test.exe$(DLLEXT) $@ && $(STRIP) $@
-secur32_test.exe$(DLLEXT): $(DLLDIR)/secur32/tests/secur32_test.exe$(DLLEXT)
- cp $(DLLDIR)/secur32/tests/secur32_test.exe$(DLLEXT) $@ && $(STRIP) $@
-setupapi_test.exe$(DLLEXT): $(DLLDIR)/setupapi/tests/setupapi_test.exe$(DLLEXT)
- cp $(DLLDIR)/setupapi/tests/setupapi_test.exe$(DLLEXT) $@ && $(STRIP) $@
-shdocvw_test.exe$(DLLEXT): $(DLLDIR)/shdocvw/tests/shdocvw_test.exe$(DLLEXT)
- cp $(DLLDIR)/shdocvw/tests/shdocvw_test.exe$(DLLEXT) $@ && $(STRIP) $@
-shell32_test.exe$(DLLEXT): $(DLLDIR)/shell32/tests/shell32_test.exe$(DLLEXT)
- cp $(DLLDIR)/shell32/tests/shell32_test.exe$(DLLEXT) $@ && $(STRIP) $@
-shlwapi_test.exe$(DLLEXT): $(DLLDIR)/shlwapi/tests/shlwapi_test.exe$(DLLEXT)
- cp $(DLLDIR)/shlwapi/tests/shlwapi_test.exe$(DLLEXT) $@ && $(STRIP) $@
-urlmon_test.exe$(DLLEXT): $(DLLDIR)/urlmon/tests/urlmon_test.exe$(DLLEXT)
- cp $(DLLDIR)/urlmon/tests/urlmon_test.exe$(DLLEXT) $@ && $(STRIP) $@
-usp10_test.exe$(DLLEXT): $(DLLDIR)/usp10/tests/usp10_test.exe$(DLLEXT)
- cp $(DLLDIR)/usp10/tests/usp10_test.exe$(DLLEXT) $@ && $(STRIP) $@
-user32_test.exe$(DLLEXT): $(DLLDIR)/user/tests/user32_test.exe$(DLLEXT)
- cp $(DLLDIR)/user/tests/user32_test.exe$(DLLEXT) $@ && $(STRIP) $@
-wininet_test.exe$(DLLEXT): $(DLLDIR)/wininet/tests/wininet_test.exe$(DLLEXT)
- cp $(DLLDIR)/wininet/tests/wininet_test.exe$(DLLEXT) $@ && $(STRIP) $@
-version_test.exe$(DLLEXT): $(DLLDIR)/version/tests/version_test.exe$(DLLEXT)
- cp $(DLLDIR)/version/tests/version_test.exe$(DLLEXT) $@ && $(STRIP) $@
-winmm_test.exe$(DLLEXT): $(DLLDIR)/winmm/tests/winmm_test.exe$(DLLEXT)
- cp $(DLLDIR)/winmm/tests/winmm_test.exe$(DLLEXT) $@ && $(STRIP) $@
-winspool.drv_test.exe$(DLLEXT): $(DLLDIR)/winspool/tests/winspool.drv_test.exe$(DLLEXT)
- cp $(DLLDIR)/winspool/tests/winspool.drv_test.exe$(DLLEXT) $@ && $(STRIP) $@
-ws2_32_test.exe$(DLLEXT): $(DLLDIR)/ws2_32/tests/ws2_32_test.exe$(DLLEXT)
- cp $(DLLDIR)/ws2_32/tests/ws2_32_test.exe$(DLLEXT) $@ && $(STRIP) $@
-
-### Dependencies:
+ $(CC) $(APPMODE) $(OBJS) dist.res.o -o $@ -L$(DLLDIR) $(IMPORTS:%=-L$(DLLDIR)/%) $(ALL_LIBS)
+ -upx -9 -qqq $@
+
+dist.res: winetest.rc tests.rc build.nfo winetest.ico $(TESTBINS)
+
+@DEPENDENCIES@ # everything below this line is overwritten by make depend
+
+winetest.res: tests.rc