blob: 8cdd78d521267b227adfbde3b70d7fc8c5311afa [file] [log] [blame]
TOPSRC = @top_srcdir@
MODULE = if1632
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 = advapi32.spec comdlg32.spec gdi32.spec kernel32.spec shell32.spec user32.spec winprocs32.spec
SPEC16_FILES = $(DLLS16:.spec=.S)
SPEC32_FILES = $(DLLS32:.spec=.c)
C_SRCS = \
$(SPEC32_FILES) \
callback.c \
dummy.c \
relay.c \
relay32.c
ASM_SRCS = \
$(SPEC16_FILES) \
call16.S \
call32.S
.SUFFIXES: .spec
.spec.S:
$(BUILD) -spec16 $< > $*.S
.spec.c:
$(BUILD) -spec32 $< > $*.c
all: checkbuild $(MODULE).o
@MAKE_RULES@
$(SPEC16_FILES) $(SPEC32_FILES): $(BUILD)
$(BUILD) checkbuild:
cd $(TOPSRC)/tools; $(SUBMAKE) 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
clean::
rm -f $(SPEC16_FILES) $(SPEC32_FILES) call32.S call16.S
# Kludge: don't use optimisation flags to compile these files
advapi32.o: advapi32.c
$(CC) -c $(DEFS) $(DIVINCL) $(EXTRA_DEFS) -o advapi32.o advapi32.c
comdlg32.o: comdlg32.c
$(CC) -c $(DEFS) $(DIVINCL) $(EXTRA_DEFS) -o comdlg32.o comdlg32.c
gdi32.o: gdi32.c
$(CC) -c $(DEFS) $(DIVINCL) $(EXTRA_DEFS) -o gdi32.o gdi32.c
kernel32.o: kernel32.c
$(CC) -c $(DEFS) $(DIVINCL) $(EXTRA_DEFS) -o kernel32.o kernel32.c
shell32.o: shell32.c
$(CC) -c $(DEFS) $(DIVINCL) $(EXTRA_DEFS) -o shell32.o shell32.c
user32.o: user32.c
$(CC) -c $(DEFS) $(DIVINCL) $(EXTRA_DEFS) -o user32.o user32.c
winprocs32.o: winprocs32.c
$(CC) -c $(DEFS) $(DIVINCL) $(EXTRA_DEFS) -o winprocs32.o winprocs32.c
### Dependencies: