# This Makefile understands the following targets: # # all (default): build wine # clean: remove all intermediate files # distclean: also remove all files created by configure # test: run tests # testclean: clean test results to force running all tests again # crosstest: build tests as native windows applications (requires MinGW) # install-lib: install libraries needed to run applications # install-dev: install development environment # install: install everything # uninstall: uninstall everything # depend: create the dependencies # etags: create a TAGS file for Emacs. # manpages: compile manpages for Wine API # htmlpages: compile html pages for Wine API # sgmlpages: compile sgml source for the Wine API Guide # Directories TOPSRCDIR = @top_srcdir@ TOPOBJDIR = . SRCDIR = @srcdir@ VPATH = @srcdir@ LIBEXT = @LIBEXT@ MODULE = none FONTSSUBDIRS = @FONTSSUBDIRS@ # Sub-directories to run make depend/clean into SUBDIRS = \ dlls \ documentation \ fonts \ include \ libs \ loader \ programs \ server \ tools # Sub-directories to install for install-lib INSTALLLIBSUBDIRS = \ $(FONTSSUBDIRS) \ loader \ programs \ server # Sub-directories to install for install-dev INSTALLDEVSUBDIRS = include # Sub-directories to install for both install-lib and install-dev INSTALLBOTHSUBDIRS = dlls libs tools INSTALLSUBDIRS = $(INSTALLDEVSUBDIRS) $(INSTALLLIBSUBDIRS) # Sub-directories to run make test into TESTSUBDIRS = \ dlls \ programs all: Make.rules wine @echo "Wine build complete." WINAPI_CHECK_EXTRA_FLAGS = --global @MAKE_RULES@ Make.rules: Make.rules.in configure @echo $? is newer than 'Make.rules', please rerun ./configure! @exit 1 wine: $(WINEWRAPPER) $(RM) $@ && $(LN_S) $(WINEWRAPPER) $@ # Installation rules install-aclocal: dummy $(MKINSTALLDIRS) $(datadir)/aclocal $(INSTALL_DATA) $(SRCDIR)/aclocal.m4 $(datadir)/aclocal/wine.m4 install-lib:: $(INSTALLLIBSUBDIRS:%=%/__install__) $(INSTALLBOTHSUBDIRS:%=%/__install-lib__) install-dev:: $(INSTALLDEVSUBDIRS:%=%/__install__) $(INSTALLBOTHSUBDIRS:%=%/__install-dev__) install-aclocal install:: install-lib install-dev install-aclocal uninstall:: $(INSTALLBOTHSUBDIRS:%=%/__uninstall__) $(RM) $(datadir)/aclocal/wine.m4 -rmdir $(datadir)/wine $(datadir)/aclocal .PHONY: install-aclocal # Dependencies between directories all: $(INSTALLSUBDIRS) $(INSTALLBOTHSUBDIRS) dlls: include libs tools fonts loader server: libs tools programs: dlls include libs tools include: libs tools tools: libs dlls/__install-lib__ dlls/__install-dev__: libs tools include include/__install__: include libs tools libs/__install-lib__ libs/__install-dev__: libs fonts/__install__ loader/__install__ server/__install__: libs tools programs/__install__: libs tools include dlls/__install-lib__ tools/__install-lib__ tools/__install-dev__: tools $(SUBDIRS:%=%/__depend__): tools include # Test rules checklink:: $(TESTSUBDIRS:%=%/__checklink__) check test:: $(TESTSUBDIRS:%=%/__test__) $(TESTSUBDIRS:%=%/__test__): wine crosstest:: $(TESTSUBDIRS:%=%/__crosstest__) $(TESTSUBDIRS:%=%/__crosstest__): tools include # Misc rules TAGS etags: find $(TOPSRCDIR) -name '*.[ch]' -print | etags - tags ctags: find $(TOPSRCDIR) -name '*.[ch]' -print | ctags --c-types=+px -L - manpages htmlpages sgmlpages: cd documentation && $(MAKE) $@ clean:: $(RM) wine distclean: clean $(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 $(RM) -r autom4te.cache $(RM) `find . \( -name Makefile -o -size 0 \) -print` .PHONY: manpages htmlpages sgmlpages distclean ### Dependencies: