d3d10/tests: Add effect shader test.
[wine] / Makefile.in
1 # This Makefile understands the following targets:
2 #
3 # all (default):   build wine
4 # clean:           remove all intermediate files
5 # distclean:       also remove all files created by configure
6 # test:            run tests
7 # testclean:       clean test results to force running all tests again
8 # crosstest:       build tests as native windows applications (requires MinGW)
9 # install-lib:     install libraries needed to run applications
10 # install-dev:     install development environment
11 # install:         install everything
12 # uninstall:       uninstall everything
13 # depend:          create the dependencies
14 # ctags:           create a tags file for vim and others.
15 # etags:           create a TAGS file for Emacs.
16 # manpages:        compile manpages for Wine API
17 # htmlpages:       compile html pages for Wine API
18 # sgmlpages:       compile sgml source for the Wine API Guide
19 # xmlpages:        compile xml source for the Wine API Guide
20
21 # Directories
22
23 TOPSRCDIR = @top_srcdir@
24 TOPOBJDIR = .
25 SRCDIR    = @srcdir@
26 VPATH     = @srcdir@
27 LIBEXT    = @LIBEXT@
28 MODULE    = none
29
30 ALL_DIRS           = @ALL_DIRS@
31 ALL_DLL_DIRS       = @ALL_DLL_DIRS@
32 ALL_INSTALL_DIRS   = @ALL_INSTALL_DIRS@
33 ALL_PROGRAM_DIRS   = @ALL_PROGRAM_DIRS@
34 ALL_STATICLIB_DIRS = @ALL_STATICLIB_DIRS@
35 ALL_TEST_DIRS      = @ALL_TEST_DIRS@
36 ALL_TOOL_DIRS      = @ALL_TOOL_DIRS@
37 ALL_TOP_DIRS       = @ALL_TOP_DIRS@
38
39 # Sub-directories to run make all into
40 BUILDSUBDIRS = \
41         libs/wine \
42         $(ALL_TOOL_DIRS) \
43         $(ALL_TOP_DIRS) \
44         $(ALL_STATICLIB_DIRS) \
45         $(ALL_DLL_DIRS) \
46         $(ALL_PROGRAM_DIRS) \
47         $(ALL_TEST_DIRS)
48
49 # Sub-directories to run make install/uninstall into
50 INSTALLSUBDIRS = \
51         libs/wine \
52         $(ALL_TOOL_DIRS) \
53         $(ALL_TOP_DIRS) \
54         $(ALL_STATICLIB_DIRS) \
55         $(ALL_DLL_DIRS) \
56         $(ALL_INSTALL_DIRS)
57
58 # Sub-directories that don't have a makefile
59 EXTRASUBDIRS = dlls libs
60
61 all: wine
62         @echo "Wine build complete."
63
64 WINAPI_CHECK_EXTRA_FLAGS = --global
65
66 @MAKE_RULES@
67
68 # Rules for re-running configure
69
70 ALL_CONFIGS = Makefile $(ALL_DIRS:%=%/Makefile) @ALL_MAKERULES@ @ALL_SYMLINKS@
71
72 $(SRCDIR)/configure: @MAINTAINER_MODE@ configure.ac aclocal.m4
73         cd $(SRCDIR) && autoconf --warnings=all
74
75 $(SRCDIR)/include/config.h.in: @MAINTAINER_MODE@ include/stamp-h.in
76 $(SRCDIR)/include/stamp-h.in: configure.ac aclocal.m4
77         cd $(SRCDIR) && autoheader --warnings=all
78         @echo timestamp > $@
79
80 config.status: configure
81         @./config.status --recheck
82
83 include/config.h: include/stamp-h
84 include/stamp-h: include/config.h.in config.status
85         @./config.status include/config.h include/stamp-h
86
87 $(ALL_CONFIGS):
88         @./config.status $@
89
90 # Rules for building
91
92 all: $(BUILDSUBDIRS)
93
94 $(ALL_DIRS): dummy
95         @cd $@ && $(MAKE)
96
97 .PHONY: $(ALL_DIRS)
98
99 # Rules for dependencies
100
101 $(ALL_DIRS:%=%/__depend__): dummy
102         @cd `dirname $@` && $(MAKE) depend
103
104 depend: $(MAKEDEP) $(ALL_DIRS:%=%/__depend__) dummy
105 .PHONY: $(ALL_DIRS:%=%/__depend__)
106
107 # Rules for cleaning
108
109 $(ALL_DIRS:%=%/__clean__): dummy
110         @cd `dirname $@` && $(MAKE) clean
111
112 clean:: $(ALL_DIRS:%=%/__clean__)
113
114 distclean:: clean
115         $(RM) config.* configure.lineno TAGS tags include/config.h include/stamp-h $(ALL_CONFIGS)
116         $(RM) -r autom4te.cache
117
118 .PHONY: distclean $(ALL_DIRS:%=%/__clean__)
119
120 # Rules for installing
121
122 $(INSTALLSUBDIRS:%=%/__install__): dummy
123         @cd `dirname $@` && $(MAKE) install
124
125 $(INSTALLSUBDIRS:%=%/__install-lib__): dummy
126         @cd `dirname $@` && $(MAKE) install-lib
127
128 $(INSTALLSUBDIRS:%=%/__install-dev__): dummy
129         @cd `dirname $@` && $(MAKE) install-dev
130
131 $(INSTALLSUBDIRS:%=%/__uninstall__): dummy
132         @cd `dirname $@` && $(MAKE) uninstall
133
134 install:: $(INSTALLSUBDIRS:%=%/__install__) dummy
135 install-lib:: $(INSTALLSUBDIRS:%=%/__install-lib__) dummy
136 install-dev:: $(INSTALLSUBDIRS:%=%/__install-dev__) dummy
137 uninstall:: $(INSTALLSUBDIRS:%=%/__uninstall__) dummy
138
139 .PHONY: $(INSTALLSUBDIRS:%=%/__install__) $(INSTALLSUBDIRS:%=%/__uninstall__) \
140         $(INSTALLSUBDIRS:%=%/__install-lib__) $(INSTALLSUBDIRS:%=%/__install-dev__)
141
142 uninstall::
143         -rmdir $(DESTDIR)$(datadir)/wine $(DESTDIR)$(fakedlldir) $(DESTDIR)$(dlldir)
144
145 # Rules for testing
146
147 $(ALL_TEST_DIRS:%=%/__test__): dummy
148         @cd `dirname $@` && $(MAKE) test
149
150 $(ALL_TEST_DIRS:%=%/__crosstest__): dummy
151         @cd `dirname $@` && $(MAKE) crosstest
152
153 $(ALL_TEST_DIRS:%=%/__testclean__): dummy
154         @cd `dirname $@` && $(MAKE) testclean
155
156 check test:: $(ALL_TEST_DIRS:%=%/__test__)
157 crosstest:: $(ALL_TEST_DIRS:%=%/__crosstest__)
158 testclean:: $(ALL_TEST_DIRS:%=%/__testclean__)
159
160 .PHONY: check test testclean crosstest $(ALL_TEST_DIRS:%=%/__test__) \
161         $(ALL_TEST_DIRS:%=%/__crosstest__) $(ALL_TEST_DIRS:%=%/__testclean__)
162
163 # Rules for auto documentation
164
165 DOCSUBDIRS = $(ALL_DLL_DIRS)
166
167 $(DOCSUBDIRS:%=%/__man__): dummy
168         @cd `dirname $@` && $(MAKE) man
169
170 $(DOCSUBDIRS:%=%/__doc_html__): dummy
171         @cd `dirname $@` && $(MAKE) doc-html
172
173 $(DOCSUBDIRS:%=%/__doc_sgml__): dummy
174         @cd `dirname $@` && $(MAKE) doc-sgml
175
176 $(DOCSUBDIRS:%=%/__doc_xml__): dummy
177         @cd `dirname $@` && $(MAKE) doc-xml
178
179 man: $(DOCSUBDIRS:%=%/__man__)
180 doc-html: $(DOCSUBDIRS:%=%/__doc_html__)
181 doc-sgml: $(DOCSUBDIRS:%=%/__doc_sgml__)
182 doc-xml: $(DOCSUBDIRS:%=%/__doc_xml__)
183
184 manpages htmlpages sgmlpages xmlpages: dummy
185         @cd documentation && $(MAKE) $@
186
187 .PHONY: man doc-html doc-sgml doc-xml manpages htmlpages sgmlpages xmlpages \
188         $(DOCSUBDIRS:%=%/__man__) $(DOCSUBDIRS:%=%/__doc_html__) $(DOCSUBDIRS:%=%/__doc_sgml__) $(DOCSUBDIRS:%=%/__doc_xml__)
189
190 # Rules for import libraries
191
192 STATIC_LIBS = @ALL_STATIC_LIBS@
193 IMPORT_LIBS = @ALL_IMPORT_LIBS@
194
195 implib: $(ALL_STATICLIB_DIRS) $(IMPORT_LIBS)
196 .PHONY: implib
197
198 # Dependencies between directories
199
200 # dependencies needed to build any dll or program
201 __tooldeps__: libs/port libs/wine libs/wpp $(ALL_TOOL_DIRS)
202 __builddeps__: __tooldeps__ include $(ALL_STATICLIB_DIRS) $(IMPORT_LIBS)
203 __buildcrossdeps__: __tooldeps__ include $(STATIC_LIBS:.a=.cross.a) $(IMPORT_LIBS:.def=.cross.a)
204 .PHONY: __tooldeps__ __builddeps__ __buildcrossdeps__
205
206 loader server: libs/port libs/wine tools
207 fonts: tools
208 include: tools/widl
209 programs/winetest: $(ALL_TEST_DIRS)
210 libs/wine $(ALL_TOOL_DIRS): libs/port
211 tools/wmc tools/wrc: tools
212 tools tools/wmc tools/wrc: libs/wine
213 tools/widl tools/wmc tools/wrc: libs/wpp
214
215 fonts/__install__ fonts/__install-lib__: tools
216 include/__install__ include/__install-dev__: include
217 libs/wine/__install__ libs/wine/__install-lib__ libs/wine/__install-dev__: libs/wine
218 loader/__install__ loader/__install-lib__: libs/port libs/wine tools
219 server/__install__ server/__install-lib__: libs/port libs/wine tools
220 tools/__install__ tools/__install-lib__ tools/__install-dev__: tools
221 tools/widl/__install__ tools/widl/__install-dev__: tools/widl
222 tools/winebuild/__install__ tools/winebuild/__install-dev__: tools/winebuild
223 tools/winedump/__install__ tools/winedump/__install-dev__: tools/winedump
224 tools/winegcc/__install__ tools/winegcc/__install-dev__: tools/winegcc
225 tools/wmc/__install__ tools/wmc/__install-dev__: tools/wmc
226 tools/wrc/__install__ tools/wrc/__install-dev__: tools/wrc
227
228 RECURSE_TARGETS = \
229         __clean__ \
230         __depend__ \
231         __install__ \
232         __instal-dev__ \
233         __install-lib__ \
234         __uninstall__ \
235         __crosstest__
236
237 $(MAKEDEP): include/config.h tools/Makefile
238         @cd $(TOOLSDIR)/tools && $(MAKE) makedep$(TOOLSEXT)
239
240 # Misc rules
241
242 TAGS etags:
243         $(RM) TAGS
244         (test -d .git && git ls-files '*.[chly]' '*.idl' || find -L $(TOPSRCDIR) -name '*.[ch]' -print) | xargs etags -a
245
246 tags ctags:
247         $(RM) tags
248         (test -d .git && git ls-files '*.[chly]' '*.idl' || find -L $(TOPSRCDIR) -name '*.[ch]' -print) | xargs ctags -a
249
250 # Makefile rules
251
252 .INIT: Makefile
253 .BEGIN: Makefile
254 .MAKEFILEDEPS:
255
256 @ALL_MAKEFILE_DEPENDS@