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
23 TOPSRCDIR
= @top_srcdir@
32 # Sub-directories that don't have a makefile
33 EXTRASUBDIRS
= dlls libs
36 @echo
"Wine build complete."
38 WINAPI_CHECK_EXTRA_FLAGS
= --global
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
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
66 $(ALL_DIRS
:%=%/__clean__
): dummy
67 @cd
`dirname $@` && $(MAKE
) clean
69 clean:: $(ALL_DIRS
:%=%/__clean__
)
70 $(RM
) $(ALL_DIRS
:%=%/Makefile
) tools
/makedep
$(EXEEXT
)
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
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
)
100 (test -d .git
&& git ls-files
'*.[chly]' '*.idl' || find
-L
$(TOPSRCDIR
) -name
'*.[ch]' -print) | xargs etags
-a
104 (test -d .git
&& git ls-files
'*.[chly]' '*.idl' || find
-L
$(TOPSRCDIR
) -name
'*.[ch]' -print) | xargs ctags
-a
112 @ALL_MAKEFILE_DEPENDS@
115 -rmdir
$(DESTDIR
)$(datadir)/wine
$(DESTDIR
)$(fakedlldir
) $(DESTDIR
)$(dlldir
)