5696c15151295ba50e0900ec7a21ad57e08ecb17
[openafs.git] / src / kauth / 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 # Override default definitions in NTMakefile.$(SYS_NAME) before including.
9
10 RELDIR=kauth
11 !INCLUDE ..\config\NTMakefile.$(SYS_NAME)
12 !include ..\config\NTMakefile.version
13
14 ############################################################################
15 # Definitions for installing header files
16
17 INCFILEDIR = $(DESTDIR)\include\afs
18
19 INCFILES =\
20         $(INCFILEDIR)\kautils.h \
21         $(INCFILEDIR)\kauth.h \
22         $(INCFILEDIR)\kaport.h
23
24
25 ############################################################################
26 # build afskauth.lib
27
28 KAUTH_LIBFILE = $(DESTDIR)\lib\afs\afskauth.lib
29
30 KAUTH_LIBOBJS =\
31         $(OUT)\kauth.xdr.obj \
32         $(OUT)\kauth.cs.obj \
33         $(OUT)\kaaux.obj \
34         $(OUT)\client.obj \
35         $(OUT)\authclient.obj \
36         $(OUT)\token.obj \
37         $(OUT)\kautils.obj \
38         $(OUT)\kalocalcell.obj \
39         $(OUT)\kaerrors.obj \
40         $(OUT)\user_nt.obj \
41         $(OUT)\krb_tf.obj \
42         $(OUT)\cm_config.obj \
43         $(OUT)\AFS_component_version_number.obj
44
45 WINNTAFSD = ..\WINNT\afsd\
46
47 $(OUT)\cm_config.obj: $(WINNTAFSD)\cm_config.c
48         $(C2OBJ) $**
49
50 $(KAUTH_LIBFILE): $(KAUTH_LIBOBJS) 
51         $(LIBARCH)  
52
53 ############################################################################
54 # build afskauth.krb.lib
55
56 KAUTH_KRB_LIBFILE = $(DESTDIR)\lib\afs\afskauth.krb.lib
57
58 KAUTH_KRB_LIBOBJS =\
59         $(OUT)\kauth.xdr.obj \
60         $(OUT)\kauth.cs.obj \
61         $(OUT)\kaaux.obj \
62         $(OUT)\client.obj \
63         $(OUT)\authclient.obj \
64         $(OUT)\token.obj \
65         $(OUT)\kautils.obj \
66         $(OUT)\kalocalcell.obj \
67         $(OUT)\kaerrors.obj \
68         $(OUT)\user.krb.obj \
69         $(OUT)\krb_tf.obj \
70         $(OUT)\cm_config.obj \
71         $(OUT)\AFS_component_version_number.obj
72
73 $(KAUTH_KRB_LIBFILE): $(KAUTH_KRB_LIBOBJS) 
74         $(LIBARCH)  
75
76 #make user.krb.obj
77
78 user_nt.c : $(INCFILES) $(DESTDIR)/include/afs/vice.h
79
80 $(OUT)\user.krb.obj: user_nt.c
81         $(C2OBJ) $**  -DAFS_KERBEROS_ENV
82
83
84 # common libs
85 AFSLIBDIR = $(DESTDIR)\lib\afs
86 AFSLIBS =  \
87         $(AFSLIBDIR)\afsprot.lib \
88         $(AFSLIBDIR)\afsauth.lib \
89         $(AFSLIBDIR)\afscmd.lib \
90         $(AFSLIBDIR)\afscom_err.lib \
91         $(AFSLIBDIR)\afsutil.lib \
92         $(AFSLIBDIR)\afsaudit.lib \
93         $(DESTDIR)\lib\afs\afsreg.lib \
94         $(DESTDIR)\lib\afslwp.lib \
95         $(DESTDIR)\lib\afsdes.lib \
96         $(DESTDIR)\lib\afsrxstat.lib \
97         $(DESTDIR)\lib\afsrx.lib \
98         $(DESTDIR)\lib\afsubik.lib \
99         $(DESTDIR)\lib\afs\afseventlog.lib \
100         $(DESTDIR)\lib\afsrxkad.lib \
101         $(DESTDIR)\lib\cm_dns.obj
102         
103 TOKENLIB = $(DESTDIR)\lib\afs\afspioctl.lib
104
105 ############################################################################
106 # build kaserver
107
108 KASERVER = $(DESTDIR)\root.server\usr\afs\bin\kaserver.exe
109
110 KASERVER_OBJS =\
111         $(OUT)\kaserver.obj \
112         $(OUT)\kautils.obj \
113         $(OUT)\kalocalcell.obj \
114         $(OUT)\kadatabase.obj \
115         $(OUT)\krb_udp.obj \
116         $(OUT)\kaprocs.obj \
117         $(OUT)\kalog.obj \
118         $(OUT)\kauth.ss.obj \
119         $(OUT)\kauth.xdr.obj \
120         $(OUT)\kaaux.obj \
121         $(OUT)\kaauxdb.obj \
122         $(OUT)\kaserver.res
123
124 KASERVER_EXELIBS =\
125         $(DESTDIR)\lib\afs\afsprocmgmt.lib
126
127 $(KASERVER): $(KASERVER_OBJS) $(AFSLIBS) $(KASERVER_EXELIBS)
128         $(EXECONLINK) dnsapi.lib mpr.lib iphlpapi.lib
129         $(_VC_MANIFEST_EMBED_EXE)
130         $(EXEPREP) 
131
132 #build $(OUT)\kadatabase.obj
133
134 $(OUT)\kadatabase.obj: kadatabase.c 
135         $(C2OBJ) $**  /DSPECIAL=1
136
137 #build $(OUT)\kaprocs.obj
138 $(OUT)\kaprocs.obj: kaprocs.c
139         $(C2OBJ) $**  /DSPECIAL=1
140
141 ############################################################################
142 # build kas
143
144 KAS = $(DESTDIR)\root.server\usr\afs\bin\kas.exe
145
146 KAS_OBJS =\
147         $(OUT)\kas.obj \
148         $(OUT)\admin_tools.obj \
149         $(OUT)\kkids.obj \
150         $(OUT)\kas.res
151         
152 $(KAS): $(KAS_OBJS) $(AFSLIBS) $(KAUTH_LIBFILE) $(TOKENLIB)
153         $(EXECONLINK) dnsapi.lib mpr.lib iphlpapi.lib
154         $(_VC_MANIFEST_EMBED_EXE)
155         $(EXEPREP) 
156
157 ########### Misc Exes #######################################################
158 #kpasswd.exe
159 KPASSWD_EXEFILE = $(DESTDIR)\bin\kpasswd.exe
160
161 KPASSWD_OBJS =\
162         $(OUT)\kpasswd.obj \
163         $(OUT)\kkids.obj \
164         $(OUT)\kpasswd.res
165
166 $(KPASSWD_EXEFILE): $(KPASSWD_OBJS) $(AFSLIBS) $(KAUTH_LIBFILE) $(TOKENLIB)
167         $(EXECONLINK) dnsapi.lib mpr.lib iphlpapi.lib
168         $(_VC_MANIFEST_EMBED_EXE)
169         $(EXEPREP)
170
171 #kpwvalid.exe
172 $(OUT)\kpwvalid.exe: $(OUT)\kpwvalid.obj $(AFSLIBS) $(KAUTH_LIBFILE)
173         $(EXECONLINK) dnsapi.lib mpr.lib iphlpapi.lib
174         $(_VC_MANIFEST_EMBED_EXE)
175
176 #kdb.exe - Not implemented for NT - because dbm not available on NT
177 #kdb.exe: $(OUT)\kdb.obj $(AFSLIBS) $(KAUTH_LIBFILE) 
178 #       $(EXECONLINK) dnsapi.lib mpr.lib iphlpapi.lib
179 #       $(_VC_MANIFEST_EMBED_EXE)
180
181 #rebuild.exe 
182 $(OUT)\rebuild.exe: $(OUT)\rebuild.obj $(OUT)\kautils.obj $(AFSLIBS) 
183         $(EXECONLINK) dnsapi.lib mpr.lib iphlpapi.lib
184         $(_VC_MANIFEST_EMBED_EXE)
185
186 ############################################################################
187 # Definitions for generating versioninfo resources
188
189 $(OUT)\kaserver.res: AFS_component_version_number.h
190
191 $(OUT)\kas.res: AFS_component_version_number.h
192
193 $(OUT)\kpasswd.res: AFS_component_version_number.h
194
195 $(INCFILES):$$(@F)
196          $(COPY)  $** $(INCFILEDIR)\.
197
198 ############################################################################
199 # rxgen on kauth.rg
200
201 kauth.cs.c: kauth.rg kauth.h
202         $(RXGEN) -u -x -C -o $@ kauth.rg
203
204 kauth.ss.c: kauth.rg kauth.h
205         $(RXGEN) -x -S -o $@ kauth.rg
206
207 kauth.xdr.c: kauth.rg kauth.h
208         $(RXGEN) -x -c -o $@ kauth.rg
209
210 kauth.h: kauth.rg
211         $(RXGEN) -u -x -h -o $@ kauth.rg
212
213 ############################################################################
214 # compile_et on kaerrors.c 
215
216 kaerrors.c kautils.h: kaerrors.et kautils.p.h
217         $(DEL) kautils.h kaerrors.c
218         $(COMPILE_ET) kaerrors -h kautils
219
220 ############################################################################
221 # install 
222
223 install: $(INCFILES) $(KAUTH_LIBFILE) $(KAUTH_KRB_LIBFILE) $(KASERVER) $(KAS) \
224         $(KPASSWD_EXEFILE) \
225         $(OUT)\kpwvalid.exe $(OUT)\rebuild.exe  \
226         $(DESTDIR)\etc\kas.exe
227
228 install9X: $(INCFILES) $(KAUTH_LIBFILE) $(KAUTH_KRB_LIBFILE) \
229         $(KPASSWD_EXEFILE) 
230
231 # installation targets that depend on local targets
232 $(DESTDIR)\etc\kas.exe:  $(DESTDIR)\root.server\usr\afs\bin\kas.exe
233         $(COPY) $(DESTDIR)\root.server\usr\afs\bin\kas.exe \
234                                         $(DESTDIR)\etc\kas.exe
235
236
237 ############################################################################
238 # Local clean target; augments predefined clean target
239
240 clean::
241         $(DEL) $(KPASSWD_EXEFILE) $(INCFILES)
242         $(DEL) kauth.cs.c kauth.h kauth.ss.c kauth.xdr.c kautils.h
243         $(DEL) kaerrors.c
244
245 mkdir:
246