acl: Use libtool
[openafs.git] / src / dvolser / NTMakefile
1 # Copyright 2000, International Business Machines Corporation and others.
2 # All Rights Reserved.
3
4 # This software has been released under the terms of the IBM Public
5 # License.  For details, see the LICENSE file in the top-level source
6 # directory or online at http://www.openafs.org/dl/license10.html
7
8 AFSDEV_AUXCDEFINES = -DAFS_PTHREAD_ENV -DRXDEBUG -DFSSYNC_BUILD_CLIENT -DAFS_DEMAND_ATTACH_FS
9
10 RELDIR=dvolser
11 !INCLUDE ..\config\NTMakefile.$(SYS_NAME)
12 !INCLUDE ..\config\NTMakefile.version
13
14 VOLSER = ..\volser
15 DVOLSER = .
16 VLSERVER = ..\vlserver
17 LIBACL = ..\libacl
18 UTIL = ..\util
19 DIR = ..\dir
20 VOL = ..\vol
21 FSINT = ..\fsint
22 RX = ..\rx
23
24 ############################################################################
25 # Definitions for installing header files
26
27 INCFILEDIR = $(DESTDIR)\include\afs  # header file install directory
28
29 INCFILES = \
30         $(INCFILEDIR)\volser_prototypes.h \
31         $(INCFILEDIR)\volser.h \
32         $(INCFILEDIR)\volint.h
33
34 LOCAL_INCFILES = \
35         volser.h \
36         volint.h
37
38 ############################################################################
39 # Build afsdavolser.lib
40
41 LIBFILE = $(DESTDIR)\lib\afs\afsdvolser.lib
42
43 LIBOBJS = $(OUT)\volint.cs.obj  \
44           $(OUT)\volint.xdr.obj \
45           $(OUT)\volerr.obj  \
46           $(OUT)\volint.ss.obj  \
47           $(OUT)\AFS_component_version_number.obj 
48
49 LIBOBJS2 = $(OUT)\vsprocs.obj \
50           $(OUT)\vsutils.obj \
51           $(OUT)\lockprocs.obj
52
53 # $(LIBOBJS): $(DVOLSER)\$$(@B).c
54 #         $(C2OBJ) -I$(VOLSER) -I$(UTIL) $**
55
56 $(LIBOBJS2): $(VOLSER)\$$(@B).c
57         $(C2OBJ) -I$(VOLSER) -I$(UTIL) $**
58
59 $(LIBFILE): $(LIBOBJS) $(LIBOBJS2)
60         $(LIBARCH)
61
62
63 ############################################################################
64 # Build davolserver
65
66 VOLSERVER_EXEFILE = $(DESTDIR)\root.server\usr\afs\bin\davolserver.exe
67
68 VOLSEROBJS=$(OUT)\volmain.obj $(OUT)\volprocs.obj $(OUT)\physio.obj $(OUT)\voltrans.obj $(OUT)\dumpstuff.obj
69
70 LIBACLOBJS=$(OUT)\aclprocs.obj $(OUT)\netprocs.obj
71
72 DIROBJS=$(OUT)\buffer.obj $(OUT)\dir.obj $(OUT)\salvage.obj
73
74 VOLSERVER_EXEOBJS = $(VOLSEROBJS) \
75         $(VLSERVEROBJS) \
76         $(LIBACLOBJS) \
77         $(DIROBJS) \
78         $(FSINTOBJS) \
79         $(OUT)\vscommon.obj \
80         $(OUT)\davolserver.res
81
82 VOLSERVER_EXELIBS = \
83         $(DESTDIR)\lib\afsauthent.lib \
84         $(DESTDIR)\lib\afsrpc.lib \
85         $(LIBFILE) \
86         $(DESTDIR)\lib\afs\daafsvol.lib \
87         $(DESTDIR)\lib\afs\afscmd.lib \
88         $(DESTDIR)\lib\afs\afsaudit.lib \
89         $(DESTDIR)\lib/afs/afscom_err.lib \
90         $(DESTDIR)\lib\afs\afsreg.lib \
91         $(DESTDIR)\lib\afs\afsprocmgmt.lib \
92         $(DESTDIR)\lib\afs\afseventlog.lib \
93         $(DESTDIR)\lib\afs\mtafsutil.lib \
94         $(DESTDIR)\lib\opr.lib \
95         $(DESTDIR)\lib\afspthread.lib \
96         $(DESTDIR)\lib\afsroken.lib
97
98 $(VOLSERVER_EXEFILE): $(VOLSERVER_EXEOBJS) $(VOLSERVER_EXELIBS)
99         $(EXECONLINK) dnsapi.lib mpr.lib iphlpapi.lib shell32.lib
100         $(_VC_MANIFEST_EMBED_EXE)
101         $(EXEPREP) 
102         $(CODESIGN_USERLAND)
103         $(SYMSTORE_IMPORT)
104
105 $(OUT)\vscommon.obj: $(VOLSER)\common.c
106         $(C2OBJ) /Fo$(OUT)\vscommon.obj -I$(VOLSER) -I$(UTIL) $**
107
108 $(VOLSEROBJS): $(VOLSER)\$$(@B).c
109         $(C2OBJ) -I$(VOLSER) -I$(UTIL) $**
110
111 $(LIBACLOBJS): $(LIBACL)\$$(@B).C
112         $(C2OBJ) -I$(LIBACL) $**
113
114 $(DIROBJS): $(DIR)\$$(@B).C
115         $(C2OBJ) -I$(DIR) $**
116
117 ############################################################################
118 # Generate versioninfo resources
119 $(OUT)\davolserver.res: AFS_component_version_number.h
120
121 ############################################################################
122 # Definitions for generating files via RXGEN
123
124 volint.cs.c: $(VOLSER)\volint.xg volint.h
125         $(RXGEN) -x -C -o $@ $(VOLSER)\volint.xg
126
127 volint.ss.c: $(VOLSER)\volint.xg volint.h
128         $(RXGEN) -x -S -o $@ $(VOLSER)\volint.xg
129
130 volint.xdr.c: $(VOLSER)\volint.xg volint.h
131         $(RXGEN) -x -c -o $@ $(VOLSER)\volint.xg
132
133 volint.h: $(VOLSER)\volint.xg
134         $(RXGEN) -x -h -o $@ $(VOLSER)\volint.xg
135
136 ############################################################################
137 # Definitions for generating files via COMPILE_ET
138
139 volser.h volerr.c: $(VOLSER)\volerr.et $(VOLSER)\volser.p.h
140         $(DEL) volerr.c volser.h
141         $(COPY) $(VOLSER)\volerr.et .
142         $(COPY) $(VOLSER)\volser.p.h .
143         $(COMPILE_ET) volerr -h volser
144
145 ############################################################################
146 # Install target; primary makefile target
147
148 install_lib: $(LIBFILE) 
149
150 install: install_lib $(VOLSERVER_EXEFILE) $(CL_VOS_EXEFILE) \
151                 $(INCFILES)
152
153
154 ############################################################################
155 # Local clean target; augments predefined clean target
156
157 clean::
158       - -$(DEL) volerr.c volser.h volerr.et volser.p.h $(INCFILES)
159         -$(DEL) volint.cs.c volint.h volint.ss.c volint.xdr.c
160         -$(DEL) $(OUT)\davolserver.res
161         -$(DEL) $(VOLSERVER_EXEFILE)
162
163 mkdir: