2 # WIN32K.SYS build spec
5 MAIN_OBJECTS = main/dllmain.o
6 STUBS_OBJECTS = stubs/stubs.o
7 RESOURCE_OBJECT = win32k.coff
8 OBJECTS = $(MAIN_OBJECTS) $(STUBS_OBJECTS) $(RESOURCE_OBJECT)
12 win32k.coff: win32k.rc ../../include/reactos/resource.h
13 windres win32k.rc win32k.coff
16 CLEAN_FILES = main\*.o stubs\*.o win32k.coff win32k.o win32k.a junk.tmp base.tmp \
17 temp.exp win32k.sys win32k.sym
19 CLEAN_FILES = main/*.o stubs/*.o win32k.coff win32k.o win32k.a junk.tmp base.tmp \
20 temp.exp win32k.sys win32k.sym
23 win32k.sys: $(OBJECTS) win32k.def
24 $(LD) -r $(OBJECTS) -o win32k.o
25 $(DLLTOOL) --dllname win32k.sys --def win32k.def \
27 $(CC) --subsystem=windows -mdll --dll -e _DllMain@12 -o junk.tmp \
28 -Wl,--image-base,0x0 \
29 -Wl,--file-alignment,0x1000 \
30 -Wl,--section-alignment,0x1000 \
31 -Wl,--defsym,_end=end \
32 -Wl,--defsym,_edata=__data_end__ \
33 -Wl,--defsym,_etext=etext -Wl,--base-file,base.tmp win32k.o \
34 ../../ntoskrnl/ntoskrnl.a
36 $(DLLTOOL) --dllname win32k.sys --base-file base.tmp \
37 --output-exp temp.exp --def win32k.def
39 $(CC) --subsystem=windows -mdll --dll -e _DllMain@12 \
40 -o win32k.sys win32k.o ../../ntoskrnl/ntoskrnl.a \
41 -Wl,--image-base,0x0 \
42 -Wl,--file-alignment,0x1000 \
43 -Wl,--section-alignment,0x1000 \
44 -Wl,--defsym,_end=end \
45 -Wl,--defsym,_edata=__data_end__ \
46 -Wl,--defsym,_etext=etext -Wl,temp.exp
49 $(NM) --numeric-sort win32k.sys > win32k.sym
51 clean: $(CLEAN_FILES:%=%_clean)
53 $(CLEAN_FILES:%=%_clean): %_clean:
56 .PHONY: clean $(CLEAN_FILES:%=%_clean)
59 WIN32_LEAN_AND_MEAN = yes
60 #WARNINGS_ARE_ERRORS = yes
61 include ../../rules.mak