windows-code-signing-20080702
[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         $(DESTDIR)\lib\cm_nls.obj
103         
104 TOKENLIB = $(DESTDIR)\lib\afs\afspioctl.lib
105
106 ############################################################################
107 # build kaserver
108
109 KASERVER = $(DESTDIR)\root.server\usr\afs\bin\kaserver.exe
110
111 KASERVER_OBJS =\
112         $(OUT)\kaserver.obj \
113         $(OUT)\kautils.obj \
114         $(OUT)\kalocalcell.obj \
115         $(OUT)\kadatabase.obj \
116         $(OUT)\krb_udp.obj \
117         $(OUT)\kaprocs.obj \
118         $(OUT)\kalog.obj \
119         $(OUT)\kauth.ss.obj \
120         $(OUT)\kauth.xdr.obj \
121         $(OUT)\kaaux.obj \
122         $(OUT)\kaauxdb.obj \
123         $(OUT)\kaserver.res
124
125 KASERVER_EXELIBS =\
126         $(DESTDIR)\lib\afs\afsprocmgmt.lib
127
128 $(KASERVER): $(KASERVER_OBJS) $(AFSLIBS) $(KASERVER_EXELIBS)
129         $(EXECONLINK) dnsapi.lib mpr.lib iphlpapi.lib shell32.lib
130         $(_VC_MANIFEST_EMBED_EXE)
131         $(EXEPREP) 
132         $(CODESIGN_USERLAND)
133
134 #build $(OUT)\kadatabase.obj
135
136 $(OUT)\kadatabase.obj: kadatabase.c 
137         $(C2OBJ) $**  /DSPECIAL=1
138
139 #build $(OUT)\kaprocs.obj
140 $(OUT)\kaprocs.obj: kaprocs.c
141         $(C2OBJ) $**  /DSPECIAL=1
142
143 ############################################################################
144 # build kas
145
146 KAS = $(DESTDIR)\root.server\usr\afs\bin\kas.exe
147
148 KAS_OBJS =\
149         $(OUT)\kas.obj \
150         $(OUT)\admin_tools.obj \
151         $(OUT)\kkids.obj \
152         $(OUT)\kas.res
153         
154 $(KAS): $(KAS_OBJS) $(AFSLIBS) $(KAUTH_LIBFILE) $(TOKENLIB)
155         $(EXECONLINK) dnsapi.lib mpr.lib iphlpapi.lib shell32.lib
156         $(_VC_MANIFEST_EMBED_EXE)
157         $(EXEPREP) 
158         $(CODESIGN_USERLAND)
159
160 ########### Misc Exes #######################################################
161 #kpasswd.exe
162 KPASSWD_EXEFILE = $(DESTDIR)\bin\kpasswd.exe
163
164 KPASSWD_OBJS =\
165         $(OUT)\kpasswd.obj \
166         $(OUT)\kkids.obj \
167         $(OUT)\kpasswd.res
168
169 $(KPASSWD_EXEFILE): $(KPASSWD_OBJS) $(AFSLIBS) $(KAUTH_LIBFILE) $(TOKENLIB)
170         $(EXECONLINK) dnsapi.lib mpr.lib iphlpapi.lib shell32.lib
171         $(_VC_MANIFEST_EMBED_EXE)
172         $(EXEPREP)
173         $(CODESIGN_USERLAND)
174
175 #kpwvalid.exe
176 $(OUT)\kpwvalid.exe: $(OUT)\kpwvalid.obj $(AFSLIBS) $(KAUTH_LIBFILE)
177         $(EXECONLINK) dnsapi.lib mpr.lib iphlpapi.lib shell32.lib
178         $(_VC_MANIFEST_EMBED_EXE)
179         $(CODESIGN_USERLAND)
180
181 #kdb.exe - Not implemented for NT - because dbm not available on NT
182 #kdb.exe: $(OUT)\kdb.obj $(AFSLIBS) $(KAUTH_LIBFILE) 
183 #       $(EXECONLINK) dnsapi.lib mpr.lib iphlpapi.lib shell32.lib
184 #       $(_VC_MANIFEST_EMBED_EXE)
185 #        $(CODESIGN_USERLAND)
186
187 #rebuild.exe 
188 $(OUT)\rebuild.exe: $(OUT)\rebuild.obj $(OUT)\kautils.obj $(AFSLIBS) 
189         $(EXECONLINK) dnsapi.lib mpr.lib iphlpapi.lib shell32.lib
190         $(_VC_MANIFEST_EMBED_EXE)
191         $(CODESIGN_USERLAND)
192
193 ############################################################################
194 # Definitions for generating versioninfo resources
195
196 $(OUT)\kaserver.res: AFS_component_version_number.h
197
198 $(OUT)\kas.res: AFS_component_version_number.h
199
200 $(OUT)\kpasswd.res: AFS_component_version_number.h
201
202 $(INCFILES):$$(@F)
203          $(COPY)  $** $(INCFILEDIR)\.
204
205 ############################################################################
206 # rxgen on kauth.rg
207
208 kauth.cs.c: kauth.rg kauth.h
209         $(RXGEN) -u -x -C -o $@ kauth.rg
210
211 kauth.ss.c: kauth.rg kauth.h
212         $(RXGEN) -x -S -o $@ kauth.rg
213
214 kauth.xdr.c: kauth.rg kauth.h
215         $(RXGEN) -x -c -o $@ kauth.rg
216
217 kauth.h: kauth.rg
218         $(RXGEN) -u -x -h -o $@ kauth.rg
219
220 ############################################################################
221 # compile_et on kaerrors.c 
222
223 kaerrors.c kautils.h: kaerrors.et kautils.p.h
224         $(DEL) kautils.h kaerrors.c
225         $(COMPILE_ET) kaerrors -h kautils
226
227 ############################################################################
228 # install 
229
230 install: $(INCFILES) $(KAUTH_LIBFILE) $(KAUTH_KRB_LIBFILE) $(KASERVER) $(KAS) \
231         $(KPASSWD_EXEFILE) \
232         $(OUT)\kpwvalid.exe $(OUT)\rebuild.exe  \
233         $(DESTDIR)\etc\kas.exe
234
235 install9X: $(INCFILES) $(KAUTH_LIBFILE) $(KAUTH_KRB_LIBFILE) \
236         $(KPASSWD_EXEFILE) 
237
238 # installation targets that depend on local targets
239 $(DESTDIR)\etc\kas.exe:  $(DESTDIR)\root.server\usr\afs\bin\kas.exe
240         $(COPY) $(DESTDIR)\root.server\usr\afs\bin\kas.exe \
241                                         $(DESTDIR)\etc\kas.exe
242
243
244 ############################################################################
245 # Local clean target; augments predefined clean target
246
247 clean::
248         $(DEL) $(KPASSWD_EXEFILE) $(INCFILES)
249         $(DEL) kauth.cs.c kauth.h kauth.ss.c kauth.xdr.c kautils.h
250         $(DEL) kaerrors.c
251
252 mkdir:
253