Updated to 0.0.14
[reactos.git] / reactos / lib / gdi32 / makefile
1 # $Id: makefile,v 1.3 1999/05/24 20:04:44 ea Exp $
2 #
3 # Makefile for ReactOS gdi32.dll
4 #
5 TARGET=gdi32
6
7 ifneq ($(HOST),mingw32-windows)
8 ifneq ($(HOST),mingw32-linux)
9 DLLTARGET=$(TARGET).a
10 else
11 DLLTARGET=$(TARGET).dll
12 endif
13 else
14 DLLTARGET=$(TARGET).dll
15 endif
16
17 all: $(DLLTARGET)
18
19 MAIN_OBJECTS = main/dllmain.o
20
21 MISC_OBJECTS = misc/stubs.o misc/stubsa.o misc/stubsw.o
22
23 RESOURCE_OBJECTS = $(TARGET).coff
24
25 OBJECTS = $(MAIN_OBJECTS) $(MISC_OBJECTS) $(RESOURCE_OBJECTS)
26
27 $(TARGET).a: $(OBJECTS)
28 $(AR) csr $(TARGET).a $(OBJECTS)
29
30 $(TARGET).coff: $(TARGET).rc
31 $(RC) $(TARGET).rc $(TARGET).coff
32
33 $(TARGET).dll: $(DLLMAIN) $(OBJECTS) $(TARGET).def
34 $(LD) -r $(OBJECTS) -o $(TARGET).o
35 $(DLLTOOL) \
36 --dllname $(TARGET).dll \
37 --def $(TARGET).def \
38 --output-lib $(TARGET).a
39 $(CC) $(TARGET).o \
40 ../kernel32/kernel32.a \
41 -specs=$(TARGET)_specs \
42 -mdll \
43 -o junk.tmp \
44 -Wl,--base-file,base.tmp
45 - $(RM) junk.tmp
46 $(DLLTOOL) \
47 --dllname $(TARGET).dll \
48 --base-file base.tmp \
49 --output-exp temp.exp \
50 --def $(TARGET).def
51 - $(RM) base.tmp
52 $(CC) $(TARGET).o \
53 ../kernel32/kernel32.a \
54 -specs=$(TARGET)_specs \
55 -mdll \
56 -o $(TARGET).dll \
57 -Wl,--image-base,0x70000000 \
58 -Wl,--file-alignment,0x1000 \
59 -Wl,--section-alignment,0x1000 \
60 -Wl,temp.exp
61 - $(RM) temp.exp
62 $(NM) --numeric-sort $(TARGET).dll > $(TARGET).sym
63
64 ifeq ($(DOSCLI),yes)
65 CLEAN_FILES = *.o *.coff *.sym *.tmp *.dll main\*.o misc\*.o
66 else
67 CLEAN_FILES = *.o *.coff *.sym *.tmp *.dll main/*.o misc/*.o
68 endif
69
70 clean: $(CLEAN_FILES:%=%_clean)
71
72 $(CLEAN_FILES:%=%_clean): %_clean:
73 - $(RM) $*
74
75 .PHONY: clean $(CLEAN_FILES:%=%_clean)
76
77
78 include ../../rules.mak
79
80 # EOF