TOPSRCDIR = @top_srcdir@
TOPOBJDIR = ../..
SRCDIR    = @srcdir@
VPATH     = @srcdir@
MODULE    = x11drv.dll
EXTRALIBS = $(LIBTSX11) $(X_LIBS) $(XLIB)
IMPORTS   = user32.dll gdi32.dll kernel32.dll

C_SRCS = \
	desktop.c \
	dga2.c \
	mouse.c \
	scroll.c \
	window.c \
	winpos.c \
	x11ddraw.c \
	x11drv_main.c \
	xrender.c \
	xvidmode.c

PROGRAMS = \
	$(TOPOBJDIR)/windows/x11drv/wineclipsrv

EXTRA_OBJS = \
	$(TOPOBJDIR)/graphics/x11drv/x11drv.o \
	$(TOPOBJDIR)/windows/x11drv/x11drv.o

SUBDIRS = \
	$(TOPOBJDIR)/graphics/x11drv \
	$(TOPOBJDIR)/windows/x11drv

@MAKE_DLL_RULES@

all: $(PROGRAMS)

$(EXTRA_OBJS) $(PROGRAMS): dummy
	@cd `dirname $@` && $(MAKE) `basename $@`

install:: $(PROGRAMS) install_libdir
	[ -d $(bindir) ] || $(MKDIR) $(bindir)
	$(INSTALL_PROGRAM) $(TOPOBJDIR)/windows/x11drv/wineclipsrv $(bindir)/wineclipsrv

uninstall:: uninstall_libdir
	cd $(bindir) && $(RM) wineclipsrv

### Dependencies:
