CC 	= @CC@
CFLAGS 	= @CFLAGS@
XINCL 	= @x_includes@
TOPSRC  = @top_srcdir@
DIVINCL = -I$(TOPSRC)/include
LD	= @LD@
LDCOMBINEFLAGS = @LDCOMBINEFLAGS@


MODULE 	= objects

SRCS 	= bitblt.c bitmap.c brush.c clipping.c color.c dc.c dcvalues.c \
	dib.c font.c gdiobj.c linedda.c metafile.c oembitmap.c palette.c \
	pen.c region.c text.c

OBJS = $(SRCS:.c=.o)

.c.o:
	$(CC) -c $(CFLAGS) $(XINCL) $(DIVINCL) -o $*.o $<

all: $(MODULE).o

$(MODULE).o: $(OBJS)
	$(LD) $(LDCOMBINEFLAGS) $(OBJS) -o $(MODULE).o

depend:
	sed '/\#\#\# Dependencies/q' < Makefile > tmp_make
	$(CC) $(DIVINCL) $(XINCL) -MM *.c >> tmp_make
	cp tmp_make Makefile
	rm tmp_make

clean:
	rm -f *.o \#*\# *~ tmp_make

distclean: clean
	rm Makefile

countryclean:

NAMES = $(SRCS:.c=)

winelibclean:
	for i in $(NAMES); do \
	if test `grep -c WINELIB $$i.c` -ne 0; then \
	rm $$i.o; \
	fi; \
	done
 
dummy:

### Dependencies:
