Makefile.in 2.44 KB
Newer Older
Alexandre Julliard's avatar
Alexandre Julliard committed
1 2
# This Makefile understands the following targets:
#
3 4 5 6 7
# 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
8
# crosstest:       build tests as native windows applications (requires MinGW)
9 10
# install-lib:     install libraries needed to run applications
# install-dev:     install development environment
11 12 13
# install:         install everything
# uninstall:       uninstall everything
# depend:          create the dependencies
14
# ctags:           create a tags file for vim and others.
15 16
# etags:           create a TAGS file for Emacs.
# manpages:        compile manpages for Wine API
17
# htmlpages:       compile html pages for Wine API
Hans Leidekker's avatar
Hans Leidekker committed
18
# sgmlpages:       compile sgml source for the Wine API Guide
19
# xmlpages:        compile xml source for the Wine API Guide
Alexandre Julliard's avatar
Alexandre Julliard committed
20

21
# Sub-directories that don't have a makefile
22 23 24
EXTRASUBDIRS = \
	dlls \
	libs \
25
	po \
26
	programs
27

28 29 30
# Destination directories for make install
INSTALLDIRS = $(DESTDIR)$(bindir)

31
all: wine
32
	@echo "Wine build complete."
Alexandre Julliard's avatar
Alexandre Julliard committed
33

34 35
WINAPI_CHECK_EXTRA_FLAGS = --global

Alexandre Julliard's avatar
Alexandre Julliard committed
36 37
@MAKE_RULES@

38 39
# Rules for re-running configure

40
config.status: configure
41
	@./config.status --recheck
42

43 44 45 46
include/config.h: include/stamp-h
include/stamp-h: include/config.h.in config.status
	@./config.status include/config.h include/stamp-h

47 48
# Rules for cleaning

49 50
.PHONY: __clean__
clean:: __clean__
51
distclean:: clean
52
	$(RM) config.* configure.lineno TAGS tags include/config.h include/stamp-h Makefile Make.tmp
53 54
	$(RM) -r autom4te.cache

55 56
# Dependencies between directories

57
# dependencies needed to build any dll or program
58
__tooldeps__: libs/port libs/wine libs/wpp
59 60
__builddeps__: __tooldeps__ include
.PHONY: test crosstest __tooldeps__ __builddeps__
61

62
loader server: libs/port libs/wine tools
63
fonts: tools
64
include: tools tools/widl
65
libs/wine: libs/port
66 67 68
tools/wmc tools/wrc: tools
tools tools/wmc tools/wrc: libs/wine
tools/widl tools/wmc tools/wrc: libs/wpp
69

70 71
dlls/shell32/Makefile dlls/shell32/__depend__: dlls/shell32/AUTHORS

72
$(MAKEDEP): include/config.h
73
	@cd $(TOOLSDIR)/tools && $(MAKE) makedep$(TOOLSEXT)
74

75 76
# Misc rules

Alexandre Julliard's avatar
Alexandre Julliard committed
77
TAGS etags:
78
	$(RM) TAGS
79
	(test -d .git && git ls-files '*.[chly]' '*.idl' || find -L $(top_srcdir) -name '*.[ch]' -print) | xargs etags -a
Alexandre Julliard's avatar
Alexandre Julliard committed
80

81
tags ctags:
82
	$(RM) tags
83
	(test -d .git && git ls-files '*.[chly]' '*.idl' || find -L $(top_srcdir) -name '*.[ch]' -print) | xargs ctags -a