DEFS      = -D__WINESRC__
TOPSRCDIR = @top_srcdir@
TOPOBJDIR = ../..
SRCDIR    = @srcdir@
VPATH     = @srcdir@
EXEEXT    = @EXEEXT@

PROGRAMS = winebuild$(EXEEXT)
MODULE   = none

C_SRCS = \
	import.c \
	main.c \
	parser.c \
	relay.c \
	res16.c \
	res32.c \
	spec16.c \
	spec32.c \
	utils.c

all: $(PROGRAMS) winebuild.man

@MAKE_RULES@

winebuild$(EXEEXT): $(OBJS)
	$(CC) $(CFLAGS) -o $@ $(OBJS) $(LIBWINE) $(LIBUNICODE) $(LDFLAGS)

winebuild.man: winebuild.man.in
	sed -e 's,@PACKAGE_STRING\@,@PACKAGE_STRING@,g' $(SRCDIR)/winebuild.man.in >$@ || $(RM) $@

install:: $(PROGRAMS) winebuild.man
	$(MKINSTALLDIRS) $(bindir) $(mandir)/man$(prog_manext)
	$(INSTALL_PROGRAM) winebuild$(EXEEXT) $(bindir)/winebuild$(EXEEXT)
	$(INSTALL_DATA) winebuild.man $(mandir)/man$(prog_manext)/winebuild.$(prog_manext)

uninstall::
	$(RM) $(bindir)/winebuild$(EXEEXT) $(mandir)/man$(prog_manext)/winebuild.$(prog_manext)

clean::
	$(RM) winebuild.man

### Dependencies:
