configure: Build binaries as PIE on Android.
[wine.git] / Makefile.in
blob1c5a44d24164ba0af68415a3b7b9c13e843ef53b
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 # Start of common header
22 # The following variable definitions are copied into all makefiles
24 prefix = @prefix@
25 exec_prefix = @exec_prefix@
26 bindir = @bindir@
27 libdir = @libdir@
28 datarootdir = @datarootdir@
29 datadir = @datadir@
30 mandir = @mandir@
31 fontdir = ${datadir}/wine/fonts
32 includedir = @includedir@/wine
33 dlldir = @dlldir@
34 fakedlldir = ${dlldir}/fakedlls
35 top_srcdir = @top_srcdir@
36 top_builddir = @top_builddir@
37 srcdir = @srcdir@
38 SHELL = /bin/sh
39 RM = rm -f
40 MV = mv
41 CC = @CC@
42 CXX = @CXX@
43 CPPBIN = @CPPBIN@
44 CROSSCC = @CROSSCC@
45 CFLAGS = @CFLAGS@
46 CPPFLAGS = @CPPFLAGS@
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 LINGUAS = @LINGUAS@
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 LIBPORT = $(top_builddir)/libs/port/libwine_port.a
80 LIBWPP = $(top_builddir)/libs/wpp/libwpp.a
81 LIBWINE = -L$(top_builddir)/libs/wine -lwine
82 LIBWINE_STATIC = $(top_builddir)/libs/wine/libwine_static.a
83 PACKAGE_VERSION = @PACKAGE_VERSION@
84 SED_CMD = LC_ALL=C sed -e 's,@bindir\@,$(bindir),g' -e 's,@dlldir\@,$(dlldir),g' -e 's,@PACKAGE_STRING\@,@PACKAGE_STRING@,g' -e 's,@PACKAGE_VERSION\@,@PACKAGE_VERSION@,g'
85 LDRPATH_INSTALL = @LDRPATH_INSTALL@
86 LDRPATH_LOCAL = @LDRPATH_LOCAL@
87 INSTALL_PROGRAM = STRIPPROG="$(STRIP)" $(top_srcdir)/tools/install-sh $(INSTALL_PROGRAM_FLAGS)
88 INSTALL_SCRIPT = $(top_srcdir)/tools/install-sh $(INSTALL_SCRIPT_FLAGS)
89 INSTALL_DATA = $(top_srcdir)/tools/install-sh -m 644 $(INSTALL_DATA_FLAGS)
90 prog_manext = 1
91 api_manext = 3w
92 conf_manext = 5
93 WINELOADER_PROGRAMS = @WINELOADER_PROGRAMS@
94 WINELOADER_DEPENDS = @WINELOADER_DEPENDS@
95 WINELOADER_INSTALL = @WINELOADER_INSTALL@
96 LIBWINE_SHAREDLIB = @LIBWINE_SHAREDLIB@
97 LIBWINE_IMPORTLIB = @LIBWINE_IMPORTLIB@
98 LIBWINE_INSTALL_LIB = @LIBWINE_INSTALL_LIB@
99 LIBWINE_INSTALL_DEV = @LIBWINE_INSTALL_DEV@
100 LIBWINE_LDFLAGS = @LIBWINE_LDFLAGS@
101 LIBWINE_DEPENDS = @LIBWINE_DEPENDS@
102 ALL_TEST_RESOURCES = @ALL_TEST_RESOURCES@
103 @ALL_VARS_RULES@
104 @SET_MAKE@
106 # End of common header
108 all: wine
109 @echo "Wine build complete."
111 # Rules for re-running configure
113 config.status: $(srcdir)/configure
114 @./config.status --recheck
116 include/config.h: include/stamp-h
117 include/stamp-h: $(srcdir)/include/config.h.in config.status
118 @./config.status include/config.h include/stamp-h
120 # Rules for cleaning
122 .PHONY: clean distclean __clean__
124 clean:: __clean__
125 distclean:: clean
126 $(RM) config.* configure.lineno TAGS tags include/config.h include/stamp-h Makefile Make.tmp .gitignore
127 $(RM) -r autom4te.cache documentation/html documentation/api-guide documentation/api-guide-xml documentation/man$(api_manext)
129 # Rules for uninstalling
131 .PHONY: install install-lib install-dev uninstall __uninstall__
132 uninstall:: __uninstall__
133 -rmdir $(DESTDIR)$(fontdir) $(DESTDIR)$(datadir)/wine $(DESTDIR)$(fakedlldir) $(DESTDIR)$(dlldir) $(DESTDIR)$(includedir)/windows/ddk \
134 $(DESTDIR)$(includedir)/windows $(DESTDIR)$(includedir)/msvcrt/sys $(DESTDIR)$(includedir)/msvcrt $(DESTDIR)$(includedir)
136 # Rules for API documentation
138 install-manpages:: manpages
139 for i in documentation/man$(api_manext)/*.$(api_manext); do $(INSTALL_DATA) $$i $(DESTDIR)$(mandir)/$$i; done
141 .PHONY: install-manpages
143 # Dependencies between directories
145 # dependencies needed to build any dll or program
146 __tooldeps__: libs/port libs/wine libs/wpp
147 __builddeps__: __tooldeps__ include
148 .PHONY: depend dummy check test testclean crosstest __tooldeps__ __builddeps__
150 dummy:
151 loader: libs/port libs/wine tools
152 server: libs/port libs/wine tools include
153 fonts: tools/sfnt2fon
154 include: tools tools/widl
155 libs/wine tools: libs/port
156 tools/wmc tools/wrc: tools
157 tools/sfnt2fon tools/wmc tools/wrc: libs/wine
158 tools/widl tools/wmc tools/wrc: libs/wpp
159 libs/port libs/wine libs/wpp: include/config.h
161 # Misc rules
163 TAGSFLAGS = --langmap='c:+.idl.l.rh,make:(Make*.in)'
165 TAGS etags:
166 $(RM) TAGS
167 (test -d .git && git ls-files || find -L $(top_srcdir) -name '*.[ch]' -print) | xargs etags -a $(TAGSFLAGS)
169 tags ctags:
170 $(RM) tags
171 (test -d .git && git ls-files || find -L $(top_srcdir) -name '*.[ch]' -print) | xargs ctags -a $(TAGSFLAGS)