1 # $Id: makefile,v 1.13 2000/08/11 12:31:17 ekohl Exp $
3 # Makefile for ReactOS advapi32.dll
6 BASE_CFLAGS = -I../../include
10 ifneq ($(HOST),mingw32-windows)
11 ifneq ($(HOST),mingw32-linux)
12 DLLTARGET=$(TARGETNAME).a
14 DLLTARGET=$(TARGETNAME).dll
17 DLLTARGET=$(TARGETNAME).dll
21 MISC_OBJECTS = misc/dllmain.o misc/shutdown.o \
24 REGISTRY_OBJECTS = reg/reg.o
26 SECURITY_OBJECTS = sec/lsa.o sec/sec.o sec/ac.o sec/sid.o
28 SERVICE_OBJECTS = service/scm.o service/sctrl.o service/undoc.o
30 TOKEN_OBJECTS = token/token.o
32 RESOURCE_OBJECT = $(TARGETNAME).coff
34 OBJECTS = $(MISC_OBJECTS) $(REGISTRY_OBJECTS) $(SECURITY_OBJECTS) \
35 $(SERVICE_OBJECTS) $(TOKEN_OBJECTS) \
39 CLEAN_FILES = misc\*.o reg\*.o sec\*.o service\*.o token\*.o \
40 $(TARGETNAME).o $(TARGETNAME).a junk.tmp base.tmp temp.exp \
41 $(TARGETNAME).dll $(TARGETNAME).sym $(TARGETNAME).coff
43 CLEAN_FILES = misc/*.o reg/*.o sec/*.o service/*.o token/*.o \
44 $(TARGETNAME).o $(TARGETNAME).a junk.tmp base.tmp temp.exp \
45 $(TARGETNAME).dll $(TARGETNAME).sym $(TARGETNAME).coff
50 $(TARGETNAME).coff: $(TARGETNAME).rc ../../include/reactos/resource.h
52 $(TARGETNAME).a: $(OBJECTS)
53 $(LD) -r $(OBJECTS) -o $(TARGETNAME).a
55 $(TARGETNAME).dll: $(DLLMAIN) $(OBJECTS) $(TARGETNAME).def
56 $(LD) -r $(OBJECTS) -o $(TARGETNAME).o
58 --dllname $(TARGETNAME).dll \
59 --def $(TARGETNAME).def \
61 --output-lib $(TARGETNAME).a
65 ../kernel32/kernel32.a \
66 -specs=$(TARGETNAME)_specs \
69 -Wl,--base-file,base.tmp
72 --dllname $(TARGETNAME).dll \
73 --base-file base.tmp \
74 --output-exp temp.exp \
75 --def $(TARGETNAME).edf
80 ../kernel32/kernel32.a \
81 -specs=$(TARGETNAME)_specs \
83 -o $(TARGETNAME).dll \
84 -Wl,--image-base,0x20000000 \
85 -Wl,--file-alignment,0x1000 \
86 -Wl,--section-alignment,0x1000 \
89 $(NM) --numeric-sort $(TARGETNAME).dll > $(TARGETNAME).sym
92 clean: $(CLEAN_FILES:%=%_clean)
94 $(CLEAN_FILES:%=%_clean): %_clean:
97 .PHONY: clean $(CLEAN_FILES:%=%_clean)
99 install: $(FLOPPY_DIR)/dlls/$(TARGETNAME).dll
101 $(FLOPPY_DIR)/dlls/$(TARGETNAME).dll: $(TARGETNAME).dll
103 $(CP) $(TARGETNAME).dll $(FLOPPY_DIR)\dlls\$(TARGETNAME).dll
105 $(CP) $(TARGETNAME).dll $(FLOPPY_DIR)/dlls/$(TARGETNAME).dll
108 dist: $(DIST_DIR)/dlls/$(TARGETNAME).dll
110 $(DIST_DIR)/dlls/$(TARGETNAME).dll: $(TARGETNAME).dll
112 $(CP) $(TARGETNAME).dll ..\..\$(DIST_DIR)\dlls\$(TARGETNAME).dll
114 $(CP) $(TARGETNAME).dll ../../$(DIST_DIR)/dlls/$(TARGETNAME).dll
117 include ../../rules.mak