DEFS      = @DLLFLAGS@ -D__WINE__
TOPSRCDIR = @top_srcdir@
TOPOBJDIR = ..
SRCDIR    = @srcdir@
VPATH     = @srcdir@
MODULE    = windows
EXTRAINCL = -I$(TOPSRCDIR)/dlls/user

C_SRCS = \
	caret.c \
	class.c \
	clipboard.c \
	cursoricon.c \
	dce.c \
	defdlg.c \
	defwnd.c \
	dialog.c \
	driver.c \
	focus.c \
	hook.c \
	input.c \
	keyboard.c \
	mdi.c \
	message.c \
	msgbox.c \
	multimon.c \
	nonclient.c \
	painting.c \
	queue.c \
	rect.c \
	scroll.c \
	spy.c \
	struct32.c \
	syscolor.c \
	sysmetrics.c \
	sysparams.c \
	timer.c \
	user.c \
	win.c \
	winhelp.c \
	winpos.c \
	winproc.c

GLUE =	hook.c \
	driver.c

all: $(MODULE).o

@MAKE_RULES@

$(MODULE).o: $(OBJS) Makefile.in $(TOPSRCDIR)/Make.rules.in
	$(LDCOMBINE) $(OBJS) -o $@

### Dependencies:
