DEFS      = -DLEX_OUTPUT_ROOT="\"@LEX_OUTPUT_ROOT@\""
TOPSRCDIR = @top_srcdir@
TOPOBJDIR = ..
SRCDIR    = @srcdir@
VPATH     = @srcdir@
EXEEXT    = @EXEEXT@
MODULE    = none
EXTRAINCL = @FREETYPEINCL@
FREETYPELIBS = @FREETYPELIBS@

PROGRAMS = \
	bin2res$(EXEEXT) \
	fnt2bdf$(EXEEXT) \
	fnt2fon$(EXEEXT) \
	make_ctests$(EXEEXT) \
	makedep$(EXEEXT) \
	sfnt2fnt$(EXEEXT) \
	wineprefixcreate

C_SRCS = \
	bin2res.c \
	fnt2bdf.c \
	fnt2fon.c \
	make_ctests.c \
	makedep.c \
	sfnt2fnt.c \

INSTALLSUBDIRS = \
	widl \
	winebuild \
	winedump \
	winegcc \
	wmc \
	wrc

SUBDIRS = \
	$(INSTALLSUBDIRS) \
	winapi

UPDATE_DESKTOP_DATABASE = update-desktop-database

all: $(PROGRAMS) $(SUBDIRS)

@MAKE_RULES@

makedep$(EXEEXT): makedep.o
	$(CC) $(CFLAGS) -o $@ makedep.o

make_ctests$(EXEEXT): make_ctests.o
	$(CC) $(CFLAGS) -o $@ make_ctests.o

fnt2bdf$(EXEEXT): fnt2bdf.o
	$(CC) $(CFLAGS) -o $@ fnt2bdf.o $(LIBPORT)

fnt2fon$(EXEEXT): fnt2fon.o
	$(CC) $(CFLAGS) -o $@ fnt2fon.o $(LIBPORT)

sfnt2fnt$(EXEEXT): sfnt2fnt.o
	$(CC) $(CFLAGS) -o $@ sfnt2fnt.o $(LIBUNICODE) $(LIBPORT) $(FREETYPELIBS)

bin2res$(EXEEXT): bin2res.o
	$(CC) $(CFLAGS) -o $@ bin2res.o $(LIBPORT)

wineprefixcreate: wineprefixcreate.in
	sed -e 's,@dlldir\@,$(dlldir),g' -e 's,@datadir\@,$(datadir),g' $(SRCDIR)/wineprefixcreate.in >$@ || ($(RM) $@ && false)
	chmod +x wineprefixcreate

install install-lib:: wineprefixcreate
	$(MKINSTALLDIRS) $(bindir) $(datadir)/wine $(datadir)/applications
	$(INSTALL_SCRIPT) wineprefixcreate $(bindir)/wineprefixcreate
	$(INSTALL_DATA) $(SRCDIR)/wine.inf $(datadir)/wine/wine.inf
	$(INSTALL_DATA) $(SRCDIR)/wine.desktop $(datadir)/applications/wine.desktop
	-$(UPDATE_DESKTOP_DATABASE)

install install-dev:: $(INSTALLSUBDIRS:%=%/__install__)
	$(MKINSTALLDIRS) $(bindir) $(mandir)/man$(prog_manext)
	$(INSTALL_SCRIPT) $(SRCDIR)/winemaker $(bindir)/winemaker
	$(INSTALL_DATA) $(SRCDIR)/winemaker.man $(mandir)/man$(prog_manext)/winemaker.$(prog_manext)

uninstall::
	$(RM) $(bindir)/winemaker $(bindir)/wineprefixcreate $(mandir)/man$(prog_manext)/winemaker.$(prog_manext) \
	      $(datadir)/wine/wine.inf $(datadir)/applications/wine.desktop
	-$(UPDATE_DESKTOP_DATABASE)

### Dependencies:
