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


MODULE 	= if1632

SRCS 	= callback.c relay.c relay32.c

DLLS16	= commdlg.spec compobj.spec ddeml.spec gdi.spec kernel.spec \
	keyboard.spec mmsystem.spec mouse.spec ole2.spec ole2conv.spec \
	ole2disp.spec ole2nls.spec ole2prox.spec olecli.spec olesvr.spec \
	shell.spec sound.spec storage.spec stress.spec system.spec \
	toolhelp.spec user.spec win87em.spec winprocs.spec winsock.spec

DLLS32	= gdi32.spec kernel32.spec shell32.spec user32.spec winprocs32.spec


OBJS = $(SRCS:.c=.o) $(DLLS16:.spec=.o) $(DLLS32:.spec=.o) call16.o call32.o

SPEC16_FILES = $(DLLS16:.spec=.S)
SPEC32_FILES = $(DLLS32:.spec=.c)

.SUFFIXES: .spec

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

.S.o:
	$(CC) -c -o $*.o $<  

.spec.S:
	$(BUILD) -spec16 $< > $*.S

.spec.c:
	$(BUILD) -spec32 $< > $*.c

all: checkbuild $(MODULE).o

$(SPEC16_FILES) $(SPEC32_FILES): $(TOPSRC)/tools/build

checkbuild:
	cd $(TOPSRC)/tools; $(MAKE) 'CC=$(CC)' 'CFLAGS=$(CFLAGS)' 'LD=$(LD)' 'LDCOMBINEFLAGS=$(LDCOMBINEFLAGS)' build

call16.S: $(TOPSRC)/include/callback.h $(BUILD)
	$(BUILD) -call16 `cat $(TOPSRC)/include/callback.h | grep "extern.*CallTo16_" | sed 's/.*CallTo16_\(.*\)(.*/\1/' | sort | uniq` > call16.S

call32.S: $(SPEC16_FILES)
	$(BUILD) -call32 `cat $(SPEC16_FILES) | grep CallTo32_ | sed 's/.*CallTo32_\(.*\)/\1/' | sort | uniq` > call32.S

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

depend:
	sed '/\#\#\# Dependencies/q' < Makefile > tmp_make
	$(CC) $(DIVINCL) $(XINCL) -MM $(SRCS) >> tmp_make
	mv tmp_make Makefile

clean:
	rm -f *.o \#*\# *~ *.bak tmp_make
	rm -f $(DLLS16:.spec=.S) $(DLLS32:.spec=.c) call32.S call16.S

distclean: clean
	rm -f Makefile

countryclean:

dummy:

### Dependencies:
