DEFS      = -D__WINE__
TOPSRCDIR = @top_srcdir@
TOPOBJDIR = ../..
SRCDIR    = @srcdir@
VPATH     = @srcdir@
LEXOPT    = -Cf #-w -b
YACCOPT   = #-v
EXEEXT    = @EXEEXT@
EXTRALIBS = -L$(TOPOBJDIR)/tools/wpp -lwpp

PROGRAMS = widl$(EXEEXT)
MODULE   = none

C_SRCS = \
	header.c \
	proxy.c \
	utils.c \
	widl.c

EXTRA_SRCS = parser.y parser.l
EXTRA_OBJS = y.tab.o @LEX_OUTPUT_ROOT@.o

all: $(PROGRAMS)

@MAKE_RULES@

widl: $(OBJS) $(TOPOBJDIR)/tools/wpp/libwpp.a
	$(CC) $(CFLAGS) -o widl $(OBJS) $(EXTRALIBS) $(LIBWINE) $(LIBUNICODE) $(LEXLIB) $(LDFLAGS)

widl.exe: $(OBJS) $(TOPOBJDIR)/tools/wpp/libwpp.a
	$(CC) $(CFLAGS) -o widl.exe $(OBJS) $(EXTRALIBS) $(LIBWINE) $(LIBUNICODE) $(LEXLIB) -liberty $(LDFLAGS)

y.tab.c y.tab.h: parser.y
	$(YACC) $(YACCOPT) -d -t $(SRCDIR)/parser.y

@LEX_OUTPUT_ROOT@.c: parser.l
	$(LEX) $(LEXOPT) -d -8 $(SRCDIR)/parser.l

@LEX_OUTPUT_ROOT@.o: y.tab.h

clean::
	$(RM) parser.output parser.tab.h lex.backup y.output

install:: $(PROGRAMS)
	$(MKINSTALLDIRS) $(bindir)
	$(INSTALL_PROGRAM) widl$(EXEEXT) $(bindir)/widl$(EXEEXT)

uninstall::
	$(RM) $(bindir)/widl$(EXEEXT)

### Dependencies:
