libport: Add a replacement implementation for strnlen.
[wine.git] / Makefile.in
blob6f1af8cfa714e74a1790c5635a6ca03c3a7b7577
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
6 # test: run tests
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 # The following variable definitions are copied into all makefiles
23 prefix = @prefix@
24 exec_prefix = @exec_prefix@
25 bindir = @bindir@
26 libdir = @libdir@
27 datarootdir = @datarootdir@
28 datadir = @datadir@
29 mandir = @mandir@
30 fontdir = ${datadir}/wine/fonts
31 includedir = @includedir@/wine
32 dlldir = @dlldir@
33 fakedlldir = ${dlldir}/fakedlls
34 top_srcdir = @top_srcdir@
35 top_builddir = @top_builddir@
36 srcdir = @srcdir@
37 SHELL = /bin/sh
38 RM = rm -f
39 MV = mv
40 CC = @CC@
41 CXX = @CXX@
42 CPPBIN = @CPPBIN@
43 CROSSCC = @CROSSCC@
44 CFLAGS = @CFLAGS@
45 CPPFLAGS = @CPPFLAGS@
46 CROSSCFLAGS = @CROSSCFLAGS@
47 EXTRACFLAGS = @EXTRACFLAGS@
48 MSVCRTFLAGS = @BUILTINFLAG@
49 TARGETFLAGS = @TARGETFLAGS@
50 UNWINDFLAGS = @UNWINDFLAGS@
51 LDEXECFLAGS = @LDEXECFLAGS@
52 LIBS = @LIBS@
53 BISON = @BISON@
54 FLEX = @FLEX@
55 EXEEXT = @EXEEXT@
56 TOOLSEXT = @TOOLSEXT@
57 DLLTOOL = @DLLTOOL@
58 AR = @AR@
59 ARFLAGS = @ARFLAGS@
60 RANLIB = @RANLIB@
61 STRIP = @STRIP@
62 LN_S = @LN_S@
63 TOOLSDIR = @TOOLSDIR@
64 LD = @LD@
65 LDFLAGS = @LDFLAGS@
66 DLLFLAGS = @DLLFLAGS@
67 PRELINK = @PRELINK@
68 FONTFORGE = @FONTFORGE@
69 RSVG = @RSVG@
70 CONVERT = @CONVERT@
71 ICOTOOL = @ICOTOOL@
72 MSGFMT = @MSGFMT@
73 CROSSTARGET = @CROSSTARGET@
74 SUBDIRS = @SUBDIRS@
75 RUNTESTFLAGS = -q -P wine
76 MAKEDEP = $(TOOLSDIR)/tools/makedep$(TOOLSEXT)
77 WINEBUILD = $(TOOLSDIR)/tools/winebuild/winebuild$(TOOLSEXT)
78 WRC = $(TOOLSDIR)/tools/wrc/wrc$(TOOLSEXT)
79 PACKAGE_VERSION = @PACKAGE_VERSION@
80 SED_CMD = LC_ALL=C sed -e 's,@bindir\@,$(bindir),g' -e 's,@dlldir\@,$(dlldir),g' -e 's,@srcdir\@,$(srcdir),g' -e 's,@PACKAGE_STRING\@,@PACKAGE_STRING@,g' -e 's,@PACKAGE_VERSION\@,@PACKAGE_VERSION@,g'
81 LDRPATH_INSTALL = @LDRPATH_INSTALL@
82 LDRPATH_LOCAL = @LDRPATH_LOCAL@
83 INSTALL_PROGRAM = STRIPPROG="$(STRIP)" $(top_srcdir)/tools/install-sh $(INSTALL_PROGRAM_FLAGS)
84 INSTALL_SCRIPT = $(top_srcdir)/tools/install-sh $(INSTALL_SCRIPT_FLAGS)
85 INSTALL_DATA = $(top_srcdir)/tools/install-sh -m 644 $(INSTALL_DATA_FLAGS)
86 prog_manext = 1
87 api_manext = 3w
88 conf_manext = 5
89 WINELOADER_PROGRAMS = @WINELOADER_PROGRAMS@
90 WINELOADER_DEPENDS = @WINELOADER_DEPENDS@
91 WINELOADER_INSTALL = @WINELOADER_INSTALL@
92 WINELOADER_LDFLAGS = @WINELOADER_LDFLAGS@
93 LIBWINE_SHAREDLIB = @LIBWINE_SHAREDLIB@
94 LIBWINE_IMPORTLIB = @LIBWINE_IMPORTLIB@
95 LIBWINE_INSTALL_LIB = @LIBWINE_INSTALL_LIB@
96 LIBWINE_INSTALL_DEV = @LIBWINE_INSTALL_DEV@
97 LIBWINE_LDFLAGS = @LIBWINE_LDFLAGS@
98 LIBWINE_DEPENDS = @LIBWINE_DEPENDS@
99 ALL_TEST_RESOURCES = @ALL_TEST_RESOURCES@
100 DISABLED_SUBDIRS = @DISABLED_SUBDIRS@
101 CONFIGURE_TARGETS = @CONFIGURE_TARGETS@
102 @ALL_VARS_RULES@
103 @SET_MAKE@
105 all: wine
106 @echo "Wine build complete."
108 # Rules for re-running configure
110 config.status: $(srcdir)/configure
111 @./config.status --recheck
113 include/config.h: include/stamp-h
114 include/stamp-h: $(srcdir)/include/config.h.in config.status
115 @./config.status include/config.h include/stamp-h
117 # Rules for cleaning
119 .PHONY: clean distclean __clean__
121 clean:: __clean__
122 distclean:: clean
123 $(RM) -r autom4te.cache documentation/html documentation/api-guide documentation/api-guide-xml documentation/man$(api_manext)
125 # Rules for uninstalling
127 .PHONY: install install-lib install-dev uninstall __uninstall__
128 uninstall:: __uninstall__
129 -rmdir $(DESTDIR)$(fontdir) $(DESTDIR)$(datadir)/wine $(DESTDIR)$(fakedlldir) $(DESTDIR)$(dlldir) $(DESTDIR)$(includedir)/windows/ddk \
130 $(DESTDIR)$(includedir)/windows $(DESTDIR)$(includedir)/msvcrt/sys $(DESTDIR)$(includedir)/msvcrt $(DESTDIR)$(includedir)
132 # Rules for API documentation
134 install-manpages:: manpages
135 for i in documentation/man$(api_manext)/*.$(api_manext); do $(INSTALL_DATA) $$i $(DESTDIR)$(mandir)/$$i; done
137 .PHONY: install-manpages
139 # Dependencies between directories
141 # dependencies needed to build any dll or program
142 __tooldeps__: libs/port libs/wpp
143 __builddeps__: __tooldeps__ libs/wine include po
144 .PHONY: depend dummy check test testclean crosstest __tooldeps__ __builddeps__
146 dummy:
147 loader: libs/port libs/wine tools
148 server: libs/port libs/wine tools include
149 fonts: tools/sfnt2fon
150 include: tools tools/widl
151 libs/wine tools: libs/port
152 tools/sfnt2fon tools/wmc tools/wrc: tools
153 tools/widl tools/wmc tools/wrc: libs/wpp
154 libs/port libs/wine libs/wpp: include/config.h
156 # Misc rules
158 TAGSFLAGS = --langmap='c:+.idl.l.rh,make:(Make*.in)'
160 TAGS etags:
161 $(RM) TAGS
162 (test -d .git && git ls-files || find -L $(top_srcdir) -name '*.[ch]' -print) | xargs etags -a $(TAGSFLAGS)
164 tags ctags:
165 $(RM) tags
166 (test -d .git && git ls-files || find -L $(top_srcdir) -name '*.[ch]' -print) | xargs ctags -a $(TAGSFLAGS)