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

PROGRAMS = winedump$(EXEEXT)
MANPAGES = winedump.man
MODULE   = none

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

INSTALLDIRS = $(DESTDIR)$(bindir) $(DESTDIR)$(mandir)/man$(prog_manext)

all: $(PROGRAMS) $(MANPAGES)

@MAKE_RULES@

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

install install-dev:: $(PROGRAMS) $(MANPAGES) $(INSTALLDIRS)
	$(INSTALL_PROGRAM) winedump$(EXEEXT) $(DESTDIR)$(bindir)/winedump$(EXEEXT)
	$(INSTALL_DATA) winedump.man $(DESTDIR)$(mandir)/man$(prog_manext)/winedump.$(prog_manext)
	$(INSTALL_SCRIPT) $(SRCDIR)/function_grep.pl $(DESTDIR)$(bindir)/function_grep.pl

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

@DEPENDENCIES@  # everything below this line is overwritten by make depend
