TOPSRCDIR = @top_srcdir@
TOPOBJDIR = ../..
SRCDIR    = @srcdir@
VPATH     = @srcdir@
EXEEXT    = @EXEEXT@

PROGRAMS = winedump$(EXEEXT)

MODULE   = none

C_SRCS = \
	debug.c \
	dump.c \
	emf.c \
	le.c \
	lnk.c \
	main.c \
	minidump.c \
	misc.c \
	msmangle.c \
	ne.c \
	output.c \
	pe.c \
	search.c \
	symbol.c

all: $(PROGRAMS)

@MAKE_RULES@

winedump$(EXEEXT): $(OBJS)
	$(CC) $(CFLAGS) -o winedump$(EXEEXT) $(OBJS) $(LIBPORT) $(LDFLAGS)

install:: $(PROGRAMS)
	$(MKINSTALLDIRS) $(bindir) $(mandir)/man$(prog_manext)
	$(INSTALL_PROGRAM) winedump$(EXEEXT) $(bindir)/winedump$(EXEEXT)
	$(INSTALL_DATA) $(SRCDIR)/winedump.man $(mandir)/man$(prog_manext)/winedump.$(prog_manext)
	$(INSTALL_SCRIPT) $(SRCDIR)/function_grep.pl $(bindir)/function_grep.pl

uninstall::
	$(RM) $(bindir)/function_grep.pl $(bindir)/winedump$(EXEEXT)
	$(RM) $(mandir)/man$(prog_manext)/winedump.$(prog_manext)

### Dependencies:
