# @configure_input@      -*-Makefile-*-

prefix          = @prefix@
exec_prefix     = @exec_prefix@
bindir          = @bindir@
libdir          = @libdir@
datarootdir     = @datarootdir@
datadir         = @datadir@
infodir         = @infodir@
mandir          = @mandir@
fontdir         = $(datadir)/wine/fonts
includedir      = @includedir@/wine
dlldir          = @dlldir@
fakedlldir      = $(dlldir)/fakedlls
top_srcdir      = @top_srcdir@
top_builddir    = @top_builddir@
srcdir          = @srcdir@
SHELL           = /bin/sh
RM              = rm -f
MV              = mv
CC              = @CC@
CROSSCC         = @CROSSCC@
CFLAGS          = @CFLAGS@
CPPFLAGS        = @CPPFLAGS@
EXTRACFLAGS     = @EXTRACFLAGS@
TARGETFLAGS     = @TARGETFLAGS@
LIBS            = @LIBS@
BISON           = @BISON@
FLEX            = @FLEX@
EXEEXT          = @EXEEXT@
DLLPREFIX       = @DLLPREFIX@
TOOLSEXT        = @TOOLSEXT@
DLLTOOL         = @DLLTOOL@
AR              = @AR@
ARFLAGS         = @ARFLAGS@
RANLIB          = @RANLIB@
STRIP           = @STRIP@
LN_S            = @LN_S@
MKDIR_P         = @MKDIR_P@
TOOLSDIR        = @TOOLSDIR@
LDFLAGS         = @LDFLAGS@
DLLFLAGS        = @DLLFLAGS@
PRELINK         = @PRELINK@
FONTFORGE       = @FONTFORGE@
RSVG            = @RSVG@
CONVERT         = @CONVERT@
ICOTOOL         = @ICOTOOL@
MSGFMT          = @MSGFMT@
CROSSTARGET     = @CROSSTARGET@
LINGUAS         = @LINGUAS@
ALL_MO_FILES    = $(LINGUAS:%=@top_builddir@/po/%.mo)
PORCFLAGS       = @PORCFLAGS@
BUILDIMAGE      = $(top_srcdir)/tools/buildimage
C2MAN           = $(top_srcdir)/tools/c2man.pl
RUNTEST         = $(top_srcdir)/tools/runtest
RUNTESTFLAGS    = -q -P wine
MAKECTESTS      = $(TOOLSDIR)/tools/make_ctests$(TOOLSEXT)
MAKEXFTMPL      = $(TOOLSDIR)/tools/make_xftmpl$(TOOLSEXT)
MAKEDEP         = $(TOOLSDIR)/tools/makedep$(TOOLSEXT)
SFNT2FNT        = $(TOOLSDIR)/tools/sfnt2fnt$(TOOLSEXT)
WIDL            = $(TOOLSDIR)/tools/widl/widl$(TOOLSEXT)
WINEBUILD       = $(TOOLSDIR)/tools/winebuild/winebuild$(TOOLSEXT)
WMC             = $(TOOLSDIR)/tools/wmc/wmc$(TOOLSEXT)
WRC             = $(TOOLSDIR)/tools/wrc/wrc$(TOOLSEXT)
LIBPORT         = $(top_builddir)/libs/port/libwine_port.a
LIBWPP          = $(top_builddir)/libs/wpp/libwpp.a
LIBWINE         = -L$(top_builddir)/libs/wine -lwine
LIBWINE_STATIC  = $(top_builddir)/libs/wine/libwine_static.a
WINEGCC         = $(TOOLSDIR)/tools/winegcc/winegcc -B$(TOOLSDIR)/tools/winebuild --sysroot=$(top_builddir) @UNWINDFLAGS@
CROSSWINEGCC    = $(TOOLSDIR)/tools/winegcc/winegcc -B$(TOOLSDIR)/tools/winebuild --sysroot=$(top_builddir) --lib-suffix=.cross.a
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'
LDRPATH_INSTALL = @LDRPATH_INSTALL@
LDRPATH_LOCAL   = @LDRPATH_LOCAL@
INSTALL         = @INSTALL@ $(INSTALL_FLAGS)
INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(INSTALL_PROGRAM_FLAGS)
INSTALL_SCRIPT  = @INSTALL_SCRIPT@ $(INSTALL_SCRIPT_FLAGS)
INSTALL_DATA    = @INSTALL_DATA@ $(INSTALL_DATA_FLAGS)
CLEAN_FILES     = *.o *.a *.so *.res *.fake *.ok *.tab.[ch] *.yy.c
prog_manext     = 1
api_manext      = 3w
conf_manext     = 5
@SET_MAKE@

all:
dummy:
.PHONY: all dummy

# End of common header
