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
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
25 exec_prefix = @
exec_prefix@
28 datarootdir
= @datarootdir@
31 fontdir
= ${datadir}/wine
/fonts
32 includedir = @
includedir@
/wine
34 fakedlldir
= ${dlldir}/fakedlls
35 top_srcdir
= @top_srcdir@
36 top_builddir
= @top_builddir@
47 EXTRACFLAGS
= @EXTRACFLAGS@
48 MSVCRTFLAGS
= @BUILTINFLAG@
49 TARGETFLAGS
= @TARGETFLAGS@
50 UNWINDFLAGS
= @UNWINDFLAGS@
51 LDEXECFLAGS
= @LDEXECFLAGS@
68 FONTFORGE
= @FONTFORGE@
73 CROSSTARGET
= @CROSSTARGET@
76 RUNTESTFLAGS
= -q
-P wine
77 MAKEDEP
= $(TOOLSDIR
)/tools
/makedep
$(TOOLSEXT
)
78 WINEBUILD
= $(TOOLSDIR
)/tools
/winebuild
/winebuild
$(TOOLSEXT
)
79 WRC
= $(TOOLSDIR
)/tools
/wrc
/wrc
$(TOOLSEXT
)
80 LIBPORT
= $(top_builddir
)/libs
/port
/libwine_port.a
81 LIBWPP
= $(top_builddir
)/libs
/wpp
/libwpp.a
82 LIBWINE
= -L
$(top_builddir
)/libs
/wine
-lwine
83 LIBWINE_STATIC
= $(top_builddir
)/libs
/wine
/libwine_static.a
84 PACKAGE_VERSION
= @PACKAGE_VERSION@
85 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'
86 LDRPATH_INSTALL
= @LDRPATH_INSTALL@
87 LDRPATH_LOCAL
= @LDRPATH_LOCAL@
88 INSTALL_PROGRAM
= STRIPPROG
="$(STRIP)" $(top_srcdir
)/tools
/install-sh
$(INSTALL_PROGRAM_FLAGS
)
89 INSTALL_SCRIPT
= $(top_srcdir
)/tools
/install-sh
$(INSTALL_SCRIPT_FLAGS
)
90 INSTALL_DATA
= $(top_srcdir
)/tools
/install-sh
-m
644 $(INSTALL_DATA_FLAGS
)
94 WINELOADER_PROGRAMS
= @WINELOADER_PROGRAMS@
95 WINELOADER_DEPENDS
= @WINELOADER_DEPENDS@
96 WINELOADER_INSTALL
= @WINELOADER_INSTALL@
97 LIBWINE_SHAREDLIB
= @LIBWINE_SHAREDLIB@
98 LIBWINE_IMPORTLIB
= @LIBWINE_IMPORTLIB@
99 LIBWINE_INSTALL_LIB
= @LIBWINE_INSTALL_LIB@
100 LIBWINE_INSTALL_DEV
= @LIBWINE_INSTALL_DEV@
101 LIBWINE_LDFLAGS
= @LIBWINE_LDFLAGS@
102 LIBWINE_DEPENDS
= @LIBWINE_DEPENDS@
103 ALL_TEST_RESOURCES
= @ALL_TEST_RESOURCES@
107 # End of common header
110 @echo
"Wine build complete."
112 # Rules for re-running configure
114 config.status
: $(srcdir)/configure
115 @.
/config.status
--recheck
117 include/config.h
: include/stamp-h
118 include/stamp-h
: $(srcdir)/include/config.h.in config.status
119 @.
/config.status
include/config.h
include/stamp-h
123 .PHONY
: clean distclean __clean__
127 $(RM
) config.
* configure.lineno TAGS
tags include/config.h
include/stamp-h Makefile Make.tmp .gitignore
128 $(RM
) -r autom4te.cache documentation
/html documentation
/api-guide documentation
/api-guide-xml documentation
/man
$(api_manext
)
130 # Rules for uninstalling
132 .PHONY
: install install-lib install-dev
uninstall __uninstall__
133 uninstall:: __uninstall__
134 -rmdir
$(DESTDIR
)$(fontdir
) $(DESTDIR
)$(datadir)/wine
$(DESTDIR
)$(fakedlldir
) $(DESTDIR
)$(dlldir
) $(DESTDIR
)$(includedir)/windows
/ddk \
135 $(DESTDIR
)$(includedir)/windows
$(DESTDIR
)$(includedir)/msvcrt
/sys
$(DESTDIR
)$(includedir)/msvcrt
$(DESTDIR
)$(includedir)
137 # Rules for API documentation
139 install-manpages
:: manpages
140 for i in documentation
/man
$(api_manext
)/*.
$(api_manext
); do
$(INSTALL_DATA
) $$i $(DESTDIR
)$(mandir)/$$i; done
142 .PHONY
: install-manpages
144 # Dependencies between directories
146 # dependencies needed to build any dll or program
147 __tooldeps__
: libs
/port libs
/wine libs
/wpp
148 __builddeps__
: __tooldeps__
include
149 .PHONY
: depend dummy
check test testclean crosstest __tooldeps__ __builddeps__
152 loader
: libs
/port libs
/wine tools
153 server
: libs
/port libs
/wine tools
include
154 fonts
: tools
/sfnt2fon
155 include: tools tools
/widl
156 libs
/wine tools
: libs
/port
157 tools
/wmc tools
/wrc
: tools
158 tools
/sfnt2fon tools
/wmc tools
/wrc
: libs
/wine
159 tools
/widl tools
/wmc tools
/wrc
: libs
/wpp
160 libs
/port libs
/wine libs
/wpp
: include/config.h
164 TAGSFLAGS
= --langmap
='c:+.idl.l.rh,make:(Make*.in)'
168 (test -d .git
&& git ls-files || find
-L
$(top_srcdir
) -name
'*.[ch]' -print) | xargs etags
-a
$(TAGSFLAGS
)
172 (test -d .git
&& git ls-files || find
-L
$(top_srcdir
) -name
'*.[ch]' -print) | xargs ctags
-a
$(TAGSFLAGS
)