# 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 # install-lib: install libraries needed to run applications # install-dev: install development environment # install: install everything # uninstall: uninstall everything # depend: create the dependencies # ctags: create a tags file for vim and others. # 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 # xmlpages: compile xml source for the Wine API Guide # The following variable definitions are copied into all makefiles prefix = @prefix@ exec_prefix = @exec_prefix@ bindir = @bindir@ libdir = @libdir@ datarootdir = @datarootdir@ datadir = @datadir@ mandir = @mandir@ includedir = @includedir@ fontdir = ${datadir}/wine/fonts nlsdir = ${datadir}/wine/nls dlldir = ${libdir}/wine srcdir = @srcdir@ SHELL = /bin/sh ARCH = @ARCH@ CC = @CC@ CXX = @CXX@ CPPBIN = @CPPBIN@ CROSSCC = @CROSSCC@ CFLAGS = @CFLAGS@ CPPFLAGS = @CPPFLAGS@ CROSSCFLAGS = @CROSSCFLAGS@ CROSSLDFLAGS = @CROSSLDFLAGS@ EXTRACFLAGS = @EXTRACFLAGS@ EXTRACROSSCFLAGS= @EXTRACROSSCFLAGS@ MSVCRTFLAGS = @MSVCRTFLAGS@ TARGETFLAGS = @TARGETFLAGS@ LDDLLFLAGS = @LDDLLFLAGS@ LDEXECFLAGS = @LDEXECFLAGS@ LIBS = @LIBS@ BISON = @BISON@ FLEX = @FLEX@ EXEEXT = @EXEEXT@ TOOLSEXT = @TOOLSEXT@ DLLTOOL = @DLLTOOL@ AR = @AR@ RANLIB = @RANLIB@ STRIP = @STRIP@ LN_S = @LN_S@ TOOLSDIR = @TOOLSDIR@ LD = @LD@ LDFLAGS = @LDFLAGS@ DLLFLAGS = @DLLFLAGS@ PRELINK = @PRELINK@ FONTFORGE = @FONTFORGE@ RSVG = @RSVG@ CONVERT = @CONVERT@ ICOTOOL = @ICOTOOL@ MSGFMT = @MSGFMT@ CROSSTARGET = @CROSSTARGET@ CROSSDEBUG = @CROSSDEBUG@ SUBDIRS = @SUBDIRS@ RUNTESTFLAGS = -q -P wine MAKEDEP = $(TOOLSDIR)/tools/makedep$(TOOLSEXT) DELAYLOADFLAG = @DELAYLOADFLAG@ PACKAGE_VERSION = @PACKAGE_VERSION@ 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' api_manext = 3w WINELOADER_PROGRAMS = @WINELOADER_PROGRAMS@ WINELOADER_DEPENDS = @WINELOADER_DEPENDS@ WINELOADER_LDFLAGS = @WINELOADER_LDFLAGS@ WINEPRELOADER_LDFLAGS = @WINEPRELOADER_LDFLAGS@ LIBWINE_SHAREDLIB = @LIBWINE_SHAREDLIB@ LIBWINE_LDFLAGS = @LIBWINE_LDFLAGS@ LIBWINE_DEPENDS = @LIBWINE_DEPENDS@ DISABLED_SUBDIRS = @DISABLED_SUBDIRS@ CONFIGURE_TARGETS = @CONFIGURE_TARGETS@ TOP_INSTALL_LIB = @TOP_INSTALL_LIB@ TOP_INSTALL_DEV = @TOP_INSTALL_DEV@ @ALL_VARS_RULES@ @SET_MAKE@ all: wine @echo "Wine build complete." # Rules for re-running configure config.status: $(srcdir)/configure @./config.status --recheck include/config.h: include/stamp-h include/stamp-h: $(srcdir)/include/config.h.in config.status @./config.status include/config.h include/stamp-h # Rules for cleaning distclean:: clean rm -rf autom4te.cache documentation/html documentation/api-guide documentation/api-guide-xml documentation/man$(api_manext) # Rules for API documentation install-manpages:: manpages for i in documentation/man$(api_manext)/*.$(api_manext); do $(srcdir)/tools/install-sh -m 644 $(INSTALL_DATA_FLAGS) $$i $(DESTDIR)$(mandir)/$$i; done .PHONY: install-manpages # Rules for generated source files dlls/ntdll/unix/version.c: dummy @version=`(GIT_DIR=$(srcdir)/.git git describe HEAD 2>/dev/null || echo "wine-$(PACKAGE_VERSION)") | sed -n -e '$$s/\(.*\)/const char wine_build[] = "\1";/p'` && (echo $$version | cmp -s - $@) || echo $$version >$@ || ($(RM) $@ && exit 1) programs/winetest/build.rc: dummy @build="STRINGTABLE { 1 \"`GIT_DIR=$(srcdir)/.git git rev-parse HEAD 2>/dev/null`\" }" && (echo $$build | cmp -s - $@) || echo $$build >$@ || (rm -f $@ && exit 1) programs/winetest/build.nfo: @-$(CC) -v 2>$@ dlls/wineandroid.drv/wine-debug.apk: dlls/wineandroid.drv/build.gradle $(srcdir)/dlls/wineandroid.drv/AndroidManifest.xml $(srcdir)/dlls/wineandroid.drv/WineActivity.java $(srcdir)/dlls/wineandroid.drv/wine.svg cd dlls/wineandroid.drv && gradle -q -Psrcdir=$(srcdir) assembleDebug mv dlls/wineandroid.drv/build/outputs/apk/wine-debug.apk $@ # Misc rules TAGSFLAGS = --langmap='c:+.idl.l.rh,make:(Make*.in)' TAGS etags: rm -f TAGS (test -d .git && git ls-files || find -L $(srcdir) -name '*.[ch]' -print) | xargs etags -a $(TAGSFLAGS) tags ctags: rm -f tags (test -d .git && git ls-files || find -L $(srcdir) -name '*.[ch]' -print) | xargs ctags -a $(TAGSFLAGS)