Alexandre Julliard : makefiles: Move the testing rules to the global Make. rules file.

Alexandre Julliard julliard at winehq.org
Wed Oct 9 14:22:14 CDT 2013


Module: wine
Branch: master
Commit: 70251170268826185ce52c8fa2522640cab0522e
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=70251170268826185ce52c8fa2522640cab0522e

Author: Alexandre Julliard <julliard at winehq.org>
Date:   Wed Oct  9 12:16:45 2013 +0200

makefiles: Move the testing rules to the global Make.rules file.

---

 Make.rules.in     |   33 ++++++++++++++++++++++++++++++++-
 Maketest.rules.in |   51 +++++----------------------------------------------
 2 files changed, 37 insertions(+), 47 deletions(-)

diff --git a/Make.rules.in b/Make.rules.in
index 7cd84e6..72d7e00 100644
--- a/Make.rules.in
+++ b/Make.rules.in
@@ -18,16 +18,21 @@ DEFS         = -D__WINESRC__ $(EXTRADEFS)
 ALLCFLAGS    = $(INCLUDES) $(DEFS) $(DLLFLAGS) $(EXTRACFLAGS) $(CPPFLAGS) $(CFLAGS) $(MODCFLAGS)
 IDLFLAGS     = $(INCLUDES) $(DEFS) $(EXTRAIDLFLAGS)
 RCFLAGS      = --nostdinc $(PORCFLAGS) $(TARGETFLAGS) $(INCLUDES) $(DEFS) $(EXTRARCFLAGS)
+RUNTESTFLAGS = -q -P wine -T $(top_builddir) $(TESTDLL:%=-M %) $(TESTMODULE:%=-p %@DLLEXT@)
 
 IDL_GEN_C_SRCS  = $(IDL_C_SRCS:.idl=_c.c) $(IDL_I_SRCS:.idl=_i.c) \
                   $(IDL_P_SRCS:.idl=_p.c) $(IDL_S_SRCS:.idl=_s.c)
 IDL_GEN_HEADERS = $(IDL_H_SRCS:.idl=.h) $(IDL_C_SRCS:.idl=.h) $(IDL_I_SRCS:.idl=.h) \
                   $(IDL_P_SRCS:.idl=.h) $(IDL_S_SRCS:.idl=.h)
 
+TESTMODULE_STRIPPED = $(TESTMODULE:%.exe=%-stripped.exe at DLLEXT@)
+CROSSTESTMODULE     = $(TESTMODULE:%_test.exe=%_crosstest.exe)
+
 CLEAN_FILES   = *.o *.a *.so *.mo *.res *.fake *.ok *.tab.[ch] *.yy.c
 CLEAN_TARGETS = $(MODULE) $(IMPORTLIB:%=lib%. at IMPLIBEXT@) $(IDL_GEN_C_SRCS) $(IDL_GEN_HEADERS) \
                 $(IDL_TLB_SRCS:.idl=.tlb) $(IDL_P_SRCS:.idl=_p.c dlldata.c) \
-                $(PO_SRCS:.rc=.res rsrc.pot) $(MC_SRCS:.mc=.res msg.pot) $(XTEMPLATE_SRCS:.x=.h)
+                $(PO_SRCS:.rc=.res rsrc.pot) $(MC_SRCS:.mc=.res msg.pot) $(XTEMPLATE_SRCS:.x=.h) \
+                $(TESTMODULE:%=% testlist.c) $(CROSSTESTMODULE)
 
 OBJS = $(C_SRCS:.c=.o) $(BISON_SRCS:.y=.tab.o) $(LEX_SRCS:.l=.yy.o) $(IDL_GEN_C_SRCS:.c=.o) $(OBJC_SRCS:.m=.o) \
        $(IDL_R_SRCS:.idl=_r.res) $(IDL_TLB_RES) $(RC_SRCS:.rc=.res) $(MC_SRCS:.mc=.res) $(EXTRA_OBJS)
@@ -153,6 +158,32 @@ depend: dummy
 
 .PHONY: depend
 
+# Rules for tests
+
+$(TESTMODULE) $(TESTMODULE:%=%.so): $(OBJS) Makefile.in
+	$(WINEGCC) $(APPMODE) $(OBJS) -o $@ $(IMPORTS:%=-l%) $(LDFLAGS) $(LIBS)
+
+$(TESTMODULE_STRIPPED): $(OBJS) Makefile.in
+	$(WINEGCC) -s -Wb,-F,$(TESTMODULE) $(APPMODE) $(OBJS) -o $@ $(IMPORTS:%=-l%) $(LDFLAGS) $(LIBS)
+
+$(CROSSTESTMODULE): $(CROSSOBJS) Makefile.in
+	$(CROSSWINEGCC) $(CROSSOBJS) -o $@ $(IMPORTS:%=-l%) $(LDFLAGS) $(LIBS)
+
+$(WINETEST_RES): $(TESTMODULE_STRIPPED)
+	echo "$(TESTMODULE) TESTRES \"$(TESTMODULE_STRIPPED)\"" | $(WRC) $(RCFLAGS) -o $@
+
+testlist.c: Makefile.in $(MAKECTESTS)
+	$(MAKECTESTS) -o $@ $(C_SRCS)
+
+testlist.o testlist.cross.o: testlist.c $(top_srcdir)/include/wine/test.h
+
+$(C_SRCS:.c=.ok): $(TESTMODULE:%=%@DLLEXT@) $(TESTDLL:%=../%@DLLEXT@)
+
+testclean::
+	$(RM) *.ok
+
+.PHONY: check test testclean
+
 # Rules for man pages
 
 MANPAGES = $(MANPAGE) $(EXTRA_MANPAGES)
diff --git a/Maketest.rules.in b/Maketest.rules.in
index f77c7c7..f6d80e5 100644
--- a/Maketest.rules.in
+++ b/Maketest.rules.in
@@ -10,57 +10,16 @@
 
 DLLFLAGS     = @DLLFLAGS@
 TESTMODULE   = $(TESTDLL:%.dll=%)_test.exe
-TESTRESULTS  = $(C_SRCS:.c=.ok)
-TESTPROGRAM  = $(TESTMODULE)$(DLLEXT)
-WINETEST_EXE = $(TESTDLL:%.dll=%)_test-stripped.exe$(DLLEXT)
 WINETEST_RES = $(top_builddir)/programs/winetest/$(TESTDLL:%.dll=%)_test.res
-RUNTESTFLAGS = -q -P wine -M $(TESTDLL) -T $(top_builddir) -p $(TESTPROGRAM)
-
-ALL_LIBS     = $(IMPORTS:%=-l%) $(LDFLAGS) $(LIBS)
 EXTRA_OBJS   = testlist.o
-
-CROSSTEST    = $(TESTDLL:%.dll=%)_crosstest.exe
 MAKEDEPFLAGS = -xo -xcross.o
 
- at MAKE_RULES@
-
-all: $(TESTPROGRAM) $(WINETEST_RES)
-
-$(TESTMODULE) $(TESTMODULE).so: $(OBJS) Makefile.in
-	$(WINEGCC) $(APPMODE) $(OBJS) -o $@ $(ALL_LIBS)
-
-$(WINETEST_EXE): $(OBJS) Makefile.in
-	$(WINEGCC) -s -Wb,-F,$(TESTMODULE) $(APPMODE) $(OBJS) -o $@ $(ALL_LIBS)
-
-$(WINETEST_RES): $(WINETEST_EXE)
-	echo "$(TESTMODULE) TESTRES \"$(WINETEST_EXE)\"" | $(WRC) $(RCFLAGS) -o $@
-
-.PHONY: check test testclean crosstest
-
-# Rules for building test list
+all: $(TESTMODULE)$(DLLEXT) $(WINETEST_RES)
 
-testlist.c: Makefile.in $(MAKECTESTS)
-	$(MAKECTESTS) -o $@ $(C_SRCS)
+check test: $(C_SRCS:.c=.ok)
 
-testlist.o testlist.cross.o: testlist.c $(top_srcdir)/include/wine/test.h
+crosstest: @CROSSTEST_DISABLE@ $(TESTDLL:%.dll=%)_crosstest.exe
 
-# Rules for testing
+.PHONY: check test crosstest
 
-check test: $(TESTRESULTS)
-
-$(TESTRESULTS): $(TESTMODULE)$(DLLEXT) ../$(TESTDLL)$(DLLEXT)
-
-# Rules for cross-compiling tests
-
-crosstest: @CROSSTEST_DISABLE@ $(CROSSTEST)
-
-$(CROSSTEST): $(CROSSOBJS) Makefile.in
-	$(CROSSWINEGCC) $(CROSSOBJS) -o $@ $(ALL_LIBS)
-
-# Rules for cleaning
-
-testclean::
-	$(RM) $(TESTRESULTS)
-
-clean::
-	$(RM) testlist.c $(TESTMODULE) $(TESTRESULTS) $(CROSSTEST)
+ at MAKE_RULES@




More information about the wine-cvs mailing list