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
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 # Sub-directories that don't have a makefile
28 # Destination directories for make install
29 INSTALLDIRS = $(DESTDIR)$(bindir)
32 @echo "Wine build complete."
34 WINAPI_CHECK_EXTRA_FLAGS = --global
38 # Rules for re-running configure
40 config.status: configure
41 @./config.status --recheck
43 include/config.h: include/stamp-h
44 include/stamp-h: include/config.h.in config.status
45 @./config.status include/config.h include/stamp-h
52 $(RM) config.* configure.lineno TAGS tags include/config.h include/stamp-h Makefile Make.tmp
53 $(RM) -r autom4te.cache
55 # Dependencies between directories
57 # dependencies needed to build any dll or program
58 __tooldeps__: libs/port libs/wine libs/wpp
59 __builddeps__: __tooldeps__ include
60 .PHONY: test crosstest __tooldeps__ __builddeps__
62 loader server: libs/port libs/wine tools
66 tools/wmc tools/wrc: tools
67 tools tools/wmc tools/wrc: libs/wine
68 tools/widl tools/wmc tools/wrc: libs/wpp
70 dlls/shell32/Makefile dlls/shell32/__depend__: dlls/shell32/AUTHORS
72 $(MAKEDEP): include/config.h
73 @cd $(TOOLSDIR)/tools && $(MAKE) makedep$(TOOLSEXT)
79 (test -d .git && git ls-files '*.[chly]' '*.idl' || find -L $(top_srcdir) -name '*.[ch]' -print) | xargs etags -a
83 (test -d .git && git ls-files '*.[chly]' '*.idl' || find -L $(top_srcdir) -name '*.[ch]' -print) | xargs ctags -a