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
22 TOPSRCDIR
= @top_srcdir@
29 FONTSSUBDIRS
= @FONTSSUBDIRS@
31 # Sub-directories to run make depend/clean into
43 # Sub-directories to install for install-lib
50 # Sub-directories to install for install-dev
51 INSTALLDEVSUBDIRS
= include
53 # Sub-directories to install for both install-lib and install-dev
54 INSTALLBOTHSUBDIRS
= dlls libs tools
56 INSTALLSUBDIRS
= $(INSTALLDEVSUBDIRS
) $(INSTALLLIBSUBDIRS
)
58 # Sub-directories to run make test into
62 @echo
"Wine build complete."
64 WINAPI_CHECK_EXTRA_FLAGS
= --global
66 INSTALLDIRS
= $(DESTDIR
)$(datadir)/aclocal
70 Make.rules
: Make.rules.in configure
71 @echo
$? is newer than
'Make.rules', please rerun .
/configure
!
75 $(RM
) $@
&& $(LN_S
) $(WINEWRAPPER
) $@
79 install install-dev
:: $(DESTDIR
)$(datadir)/aclocal dummy
80 $(INSTALL_DATA
) $(SRCDIR
)/aclocal.m4
$(DESTDIR
)$(datadir)/aclocal
/wine.m4
82 install install-lib
:: $(INSTALLLIBSUBDIRS
:%=%/__install__
) $(INSTALLBOTHSUBDIRS
:%=%/__install-lib__
)
84 install install-dev
:: $(INSTALLDEVSUBDIRS
:%=%/__install__
) $(INSTALLBOTHSUBDIRS
:%=%/__install-dev__
)
86 uninstall:: $(INSTALLBOTHSUBDIRS
:%=%/__uninstall__
)
87 $(RM
) $(DESTDIR
)$(datadir)/aclocal
/wine.m4
88 -rmdir
$(DESTDIR
)$(datadir)/wine
$(DESTDIR
)$(datadir)/aclocal
90 # Dependencies between directories
92 all: $(INSTALLSUBDIRS
) $(INSTALLBOTHSUBDIRS
)
93 dlls
: include libs tools
94 fonts loader server
: libs tools
95 programs
: dlls
include libs tools
99 dlls
/__install-lib__ dlls
/__install-dev__
: libs tools
include
100 include/__install__
: include libs tools
101 libs
/__install-lib__ libs
/__install-dev__
: libs
102 fonts
/__install__ loader
/__install__ server
/__install__
: libs tools
103 programs
/__install__
: libs tools
include dlls
/__install-lib__
104 tools
/__install-lib__ tools
/__install-dev__
: tools
106 $(SUBDIRS
:%=%/__depend__
): tools
include
110 checklink
:: $(TESTSUBDIRS
:%=%/__checklink__
)
112 check test:: $(TESTSUBDIRS
:%=%/__test__
)
113 $(TESTSUBDIRS
:%=%/__test__
): wine
115 crosstest
:: $(TESTSUBDIRS
:%=%/__crosstest__
)
116 $(TESTSUBDIRS
:%=%/__crosstest__
): tools
include
121 find
$(TOPSRCDIR
)/ -name
'*.[ch]' -print | etags
-
124 find
$(TOPSRCDIR
)/ -name
'*.[ch]' -print | ctags
--c-types
=+px
-L
-
126 manpages htmlpages sgmlpages
:
127 @cd documentation
&& $(MAKE
) $@
133 $(RM
) config.
* configure.lineno TAGS
tags Make.rules dlls
/Makedll.rules dlls
/Makeimplib.rules dlls
/Maketest.rules programs
/Makeprog.rules libs
/Makelib.rules
include/config.h
134 $(RM
) -r autom4te.cache
135 $(RM
) `find . \( -name Makefile -o -size 0 \) -print`
137 .PHONY
: manpages htmlpages sgmlpages
distclean