| # Global rules for building dll unit tests     -*-Makefile-*- | 
 | # | 
 | # Each individual makefile should define the following variables: | 
 | # TESTDLL      : the dll to test | 
 | # C_SRCS       : list of C test programs | 
 | # EXTRALIBS    : extra libraries to link in (optional) | 
 | # EXTRADEFS    : extra symbol definitions, like -DWINELIB (optional) | 
 | # | 
 | # plus all variables required by the global Make.rules.in | 
 | # | 
 |  | 
 | DLLFLAGS     = @DLLFLAGS@ | 
 | DEFS         = -DWINE_STRICT_PROTOTYPES -DWINE_NO_NAMELESS_EXTENSION $(EXTRADEFS) | 
 |  | 
 | MODULE       = $(TESTDLL:%.dll=%)_test.exe | 
 | TESTRESULTS  = $(C_SRCS:.c=.ok) | 
 | TESTPROGRAM  = $(MODULE)$(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%) $(EXTRALIBS) $(LDFLAGS) $(LIBS) | 
 | EXTRA_OBJS   = testlist.o | 
 |  | 
 | CROSSTEST    = $(TESTDLL:%.dll=%)_crosstest.exe | 
 | MAKEDEPFLAGS = -xo -xcross.o | 
 |  | 
 | @MAKE_RULES@ | 
 |  | 
 | all: $(TESTPROGRAM) $(WINETEST_RES) | 
 |  | 
 | $(MODULE) $(MODULE).so: $(OBJS) Makefile.in | 
 | 	$(WINEGCC) $(APPMODE) $(OBJS) -o $@ $(LIBPORT) $(ALL_LIBS) | 
 |  | 
 | $(WINETEST_EXE): $(OBJS) Makefile.in | 
 | 	$(WINEGCC) -s -Wb,-F,$(MODULE) $(APPMODE) $(OBJS) -o $@ $(LIBPORT) $(ALL_LIBS) | 
 |  | 
 | $(WINETEST_RES): $(WINETEST_EXE) | 
 | 	echo "$(MODULE) TESTRES \"$(WINETEST_EXE)\"" | $(LDPATH) $(WRC) $(RCFLAGS) -o $@ | 
 |  | 
 | .PHONY: check test testclean crosstest | 
 |  | 
 | # Rules for building test list | 
 |  | 
 | testlist.c: Makefile.in $(MAKECTESTS) | 
 | 	$(MAKECTESTS) -o $@ $(C_SRCS) | 
 |  | 
 | testlist.o: testlist.c $(top_srcdir)/include/wine/test.h | 
 |  | 
 | # Rules for testing | 
 |  | 
 | check test: $(TESTRESULTS) | 
 |  | 
 | $(TESTRESULTS): $(MODULE)$(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 $(MODULE) $(TESTRESULTS) $(CROSSTEST) |