0.7.1-alt1
[qemu] / kqemu / Makefile.winnt
1 #
2 # kqemu for Windows NT Makefile
3 # (c) Filip Navara
4 #
5 OBJECTS = kqemu-mod-i386-win32.o kqemu-win32.o
6 CROSS_PREFIX=i386-mingw32-
7
8 TARGET = kqemu.sys
9
10 CFLAGS = -O2 -I.
11
12 all: $(OBJECTS) $(TARGET)
13
14 clean:
15         rm -f kqemu-win32.o $(TARGET)
16
17 %.o: %.c
18         $(CROSS_PREFIX)gcc $(CFLAGS) -c $< -o $@
19
20 %.coff: %.rc
21         $(CROSS_PREFIX)windres -i $< -o $@
22
23 %.a: %.def
24         $(CROSS_PREFIX)dlltool -d $< -l $@ --kill-at
25
26 $(TARGET): $(OBJECTS)
27         $(CROSS_PREFIX)gcc -Wl,--base-file,base.tmp -Wl,--entry,_DriverEntry@8 \
28             -nostartfiles -nostdlib -o junk.tmp $(OBJECTS) -lntoskrnl -lhal
29         rm junk.tmp
30         $(CROSS_PREFIX)dlltool --as=as --dllname $(TARGET) --base-file base.tmp \
31                 --output-exp temp.exp 
32         rm base.tmp
33         $(CROSS_PREFIX)gcc -Wl,--subsystem,native -Wl,--image-base,0x10000 \
34             -Wl,--file-alignment,0x1000 -Wl,--section-alignment,0x1000 \
35             -Wl,--entry,_DriverEntry@8  -Wl,--stack,0x40000 -Wl,temp.exp \
36             -mdll -nostartfiles -nostdlib -o $(TARGET) \
37             $(OBJECTS) -lntoskrnl -lhal
38         rm temp.exp