makefiles: Output the top-level depend rules explicitly for each module.
[wine/multimedia.git] / Makefile.in
blob31896bb51c017efb2530adfb3136417e713d80ec
1 # This Makefile understands the following targets:
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
21 # Directories
23 TOPSRCDIR = @top_srcdir@
24 TOPOBJDIR = .
25 SRCDIR = @srcdir@
26 VPATH = @srcdir@
27 LIBEXT = @LIBEXT@
28 MODULE = none
30 ALL_DIRS = @ALL_DIRS@
32 # Sub-directories that don't have a makefile
33 EXTRASUBDIRS = dlls libs
35 all: wine
36 @echo "Wine build complete."
38 WINAPI_CHECK_EXTRA_FLAGS = --global
40 @MAKE_RULES@
42 # Rules for re-running configure
44 ALL_CONFIGS = Makefile @ALL_MAKERULES@ @ALL_SYMLINKS@
46 $(SRCDIR)/configure: @MAINTAINER_MODE@ configure.ac aclocal.m4
47 cd $(SRCDIR) && autoconf --warnings=all
49 $(SRCDIR)/include/config.h.in: @MAINTAINER_MODE@ include/stamp-h.in
50 $(SRCDIR)/include/stamp-h.in: configure.ac aclocal.m4
51 cd $(SRCDIR) && autoheader --warnings=all
52 @echo timestamp > $@
54 config.status: configure
55 @./config.status --recheck
57 include/config.h: include/stamp-h
58 include/stamp-h: include/config.h.in config.status
59 @./config.status include/config.h include/stamp-h
61 $(ALL_CONFIGS):
62 @./config.status $@
64 # Rules for cleaning
66 $(ALL_DIRS:%=%/__clean__): dummy
67 @cd `dirname $@` && $(MAKE) clean
69 clean:: $(ALL_DIRS:%=%/__clean__)
70 $(RM) $(ALL_DIRS:%=%/Makefile) tools/makedep$(EXEEXT)
72 distclean:: clean
73 $(RM) config.* configure.lineno TAGS tags include/config.h include/stamp-h $(ALL_CONFIGS)
74 $(RM) -r autom4te.cache
76 .PHONY: distclean $(ALL_DIRS:%=%/__clean__)
78 # Dependencies between directories
80 # dependencies needed to build any dll or program
81 __tooldeps__: libs/port libs/wine libs/wpp
82 __builddeps__ __buildcrossdeps__: __tooldeps__ include
83 .PHONY: test crosstest __tooldeps__ __builddeps__ __buildcrossdeps__
85 loader server: libs/port libs/wine tools
86 fonts: tools
87 include: tools/widl
88 libs/wine: libs/port
89 tools/wmc tools/wrc: tools
90 tools tools/wmc tools/wrc: libs/wine
91 tools/widl tools/wmc tools/wrc: libs/wpp
93 $(MAKEDEP): include/config.h tools/Makefile
94 @cd $(TOOLSDIR)/tools && $(MAKE) makedep$(TOOLSEXT)
96 # Misc rules
98 TAGS etags:
99 $(RM) TAGS
100 (test -d .git && git ls-files '*.[chly]' '*.idl' || find -L $(TOPSRCDIR) -name '*.[ch]' -print) | xargs etags -a
102 tags ctags:
103 $(RM) tags
104 (test -d .git && git ls-files '*.[chly]' '*.idl' || find -L $(TOPSRCDIR) -name '*.[ch]' -print) | xargs ctags -a
106 # Makefile rules
108 .INIT: Makefile
109 .BEGIN: Makefile
110 .MAKEFILEDEPS:
112 @ALL_MAKEFILE_DEPENDS@
114 uninstall::
115 -rmdir $(DESTDIR)$(datadir)/wine $(DESTDIR)$(fakedlldir) $(DESTDIR)$(dlldir)