1 # Copyright 2000, International Business Machines Corporation and others.
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
8 AFSDEV_AUXCDEFINES = $(AFSDEV_AUXCDEFINES) /D"_AFXDLL" -I..\kfw\inc\loadfuncs -I..\kfw\inc\krb5 -I..\kfw\inc\leash
11 !INCLUDE ..\..\config\NTMakefile.$(SYS_NAME)
12 !INCLUDE ..\..\config\NTMakefile.version
14 EXEDIR = $(DESTDIR)\root.client\usr\vice\etc
16 ############################################################################
17 # Definitions for installing header files
19 INCFILEDIR = $(DESTDIR)\include\afs # header file install directory
21 # afsdicon and below added for WINNT\extra support
24 $(INCFILEDIR)\afsd.h \
26 $(INCFILEDIR)\cm_buf.h \
27 $(INCFILEDIR)\cm_cell.h \
28 $(INCFILEDIR)\cm_config.h \
29 $(INCFILEDIR)\cm_conn.h \
30 $(INCFILEDIR)\cm_ioctl.h \
31 $(INCFILEDIR)\cm_scache.h \
32 $(INCFILEDIR)\cm_server.h \
33 $(INCFILEDIR)\cm_user.h \
34 $(INCFILEDIR)\cm_dns.h \
35 $(INCFILEDIR)\cm_utils.h \
36 $(INCFILEDIR)\fs_utils.h \
38 $(INCFILEDIR)\krb_prot.h \
39 $(INCFILEDIR)\cm_dir.h \
41 $(INCFILEDIR)\smb3.h \
42 $(INCFILEDIR)\smb_iocons.h \
43 $(INCFILEDIR)\smb_ioctl.h \
44 $(INCFILEDIR)\afsmsg95.h \
45 $(INCFILEDIR)\afsrpc.h \
47 $(INCFILEDIR)\afsdcrash.h \
49 $(INCFILEDIR)\cm_dns_private.h \
50 $(INCFILEDIR)\lanahelper.h \
51 $(INCFILEDIR)\afsdicon.h \
52 $(INCFILEDIR)\cm_callback.h \
53 $(INCFILEDIR)\cm_aclent.h \
54 $(INCFILEDIR)\cm_volume.h \
55 $(INCFILEDIR)\cm_dcache.h \
56 $(INCFILEDIR)\cm_access.h \
57 $(INCFILEDIR)\cm_vnodeops.h \
58 $(INCFILEDIR)\cm_dir.h \
59 $(INCFILEDIR)\cm_utils.h \
60 $(INCFILEDIR)\cm_daemon.h \
61 $(INCFILEDIR)\cm_ioctl.h \
62 $(INCFILEDIR)\cm_dnlc.h \
63 $(INCFILEDIR)\cm_buf.h \
64 $(INCFILEDIR)\cm_freelance.h \
65 $(INCFILEDIR)\afsd_eventlog.h \
66 $(INCFILEDIR)\afsd_eventmessages.h \
67 $(INCFILEDIR)\afskfw.h
70 afsrpc.h $(OUT)\afsrpc_c.obj
72 CONFOBJS=$(OUT)\cm_config.obj \
77 RXOBJS = $(OUT)\xdr_int32.obj $(OUT)\xdr_int64.obj
83 $(RXOBJS): $(RX)\$$(@B).c
86 $(IDLFILES):afsrpc.idl
87 midl $(MIDL_FLAGS) /no_robust $(AFSDEV_AUXMIDLFLAGS) /app_config $?
90 $(OUT)\afsd_init.obj \
92 $(OUT)\cm_server.obj \
93 $(OUT)\cm_volume.obj \
97 $(OUT)\cm_scache.obj \
98 $(OUT)\cm_dcache.obj \
99 $(OUT)\cm_access.obj \
100 $(OUT)\cm_callback.obj \
101 $(OUT)\cm_vnodeops.obj \
103 $(OUT)\cm_utils.obj \
104 $(OUT)\largeintdotnet.obj \
107 $(OUT)\smb_ioctl.obj \
108 $(OUT)\cm_ioctl.obj \
109 $(OUT)\cm_daemon.obj \
110 $(OUT)\cm_aclent.obj \
113 $(OUT)\afsrpc_s.obj \
115 $(OUT)\afsdcrash.obj \
117 $(OUT)\cm_freelance.obj \
118 $(OUT)\afsd_eventlog.obj \
119 $(OUT)\afsd_flushvol.obj
123 $(OUT)\cm_conn.obj: cm_conn.c
124 $(C2OBJ) -DAFS_PTHREAD_ENV /Fo$@ $**
126 FSOBJS=$(OUT)\fs.obj $(OUT)\fs_utils.obj
128 SLOBJS=$(OUT)\symlink.obj $(OUT)\fs_utils.obj
130 ILIBDIR = $(DESTDIR)\lib
133 # Rules for message compiler info for logging events
135 $(INCFILEDIR)\afsd_eventmessages.h: afsd_eventmessages.mc
136 mc afsd_eventmessages.mc
138 ############################################################################
140 # Flags for linking LOGON DLL'S
143 LOGONLINKFLAGS = -entry:DllEntryPoint
146 ############################################################################
151 MIDL_FLAGS=/app_config \
161 midl $(MIDL_FLAGS) $(AFSDEV_AUXMIDLFLAGS) $<
163 ############################################################################
166 CONF_DLLFILE = $(DESTDIR)\root.client\usr\vice\etc\libafsconf.dll
169 $(DESTDIR)\lib\afs\afsutil.lib \
170 $(DESTDIR)\lib\afs\afsreg.lib
172 $(CONF_DLLFILE): $(CONFOBJS) $(OUT)\libafsconf.res $(CONF_DLLLIBS)
173 $(DLLGUILINK) -def:libafsconf.def dnsapi.lib
175 $(COPY) $*.lib $(ILIBDIR)
178 ############################################################################
181 LANAHELPERLIB = $(DESTDIR)\lib\lanahelper.lib
183 LANAHELPERLIB_OBJS =\
184 $(OUT)\lanahelper.obj
186 $(LANAHELPERLIB_OBJS):
188 $(LANAHELPERLIB): $(LANAHELPERLIB_OBJS)
189 $(LIBARCH) netapi32.lib
191 ############################################################################
194 AFSKFWLIB = $(DESTDIR)\lib\afskfw.lib
201 $(AFSKFWLIB): $(AFSKFWLIB_OBJS)
204 ############################################################################
207 LOGON_DLLFILE = $(DESTDIR)\root.client\usr\vice\etc\afslogon.dll
210 $(OUT)\afslogon.obj \
214 $(DESTDIR)\lib\afsauthent.lib \
215 $(DESTDIR)\lib\libafsconf.lib \
216 $(DESTDIR)\lib\afsrxkad.lib \
217 $(DESTDIR)\lib\afsdes.lib \
220 $(LOGON_DLLFILE): $(LOGON_DLLOBJS) $(LOGON_DLLLIBS)
221 $(DLLGUILINK) $(LOGONLINKFLAGS) -def:afslogon.def dnsapi.lib secur32.lib
223 $(COPY) $*.lib $(DESTDIR)\lib
226 ############################################################################
229 LOG95_DLLFILE = $(DESTDIR)\root.client\usr\vice\etc\afslog95.dll
232 $(OUT)\afslog95.obj \
236 $(DESTDIR)\lib\afsauthent.lib \
237 $(DESTDIR)\lib\libafsconf.lib
239 $(LOG95_DLLFILE): $(LOG95_DLLOBJS) $(LOG95_DLLLIBS)
240 $(DLLGUILINK) $(LOGONLINKFLAGS) -def:afslog95.def dnsapi.lib
242 $(COPY) $*.lib $(DESTDIR)\lib
245 ############################################################################
246 # Install target; primary makefile target
248 install_objs: $(OUT)\cm_dns.obj $(OUT)\cm_config.obj $(LANAHELPERLIB)
249 $(COPY) $(OUT)\cm_dns.obj $(DESTDIR)\lib
250 $(COPY) $(OUT)\cm_config.obj $(DESTDIR)\lib
252 install_headers: $(IDLFILES) $(INCFILES)
254 install: install_headers install_objs $(CONF_DLLFILE) \
256 $(EXEDIR)\tokens.exe \
257 $(EXEDIR)\unlog.exe $(EXEDIR)\afsd.exe $(EXEDIR)\afsd_service.exe \
258 $(EXEDIR)\fs.exe $(EXEDIR)\symlink.exe \
260 $(EXEDIR)\afsshare.exe \
261 $(DESTDIR)\bin\kpasswd.exe
263 install9X: install_headers $(CONF_DLLFILE) \
265 $(EXEDIR)\tokens.exe \
266 $(EXEDIR)\unlog.exe $(EXEDIR)\afsd_service.exe \
267 $(EXEDIR)\fs.exe $(EXEDIR)\symlink.exe \
268 $(LOGON_DLLFILE) $(LOG95_DLLFILE) \
269 $(EXEDIR)\afsshare.exe \
270 $(DESTDIR)\bin\kpasswd.exe
272 install_libutils: install_headers $(CONF_DLLFILE) \
274 $(EXEDIR)\tokens.exe \
275 $(EXEDIR)\unlog.exe \
276 $(EXEDIR)\fs.exe $(EXEDIR)\symlink.exe \
277 $(EXEDIR)\afsshare.exe \
278 $(DESTDIR)\bin\kpasswd.exe
280 ############################################################################
281 # Local clean target; augments predefined clean target
283 ############################################################################
287 $(DESTDIR)\lib\afs\afsauth.lib \
288 $(DESTDIR)\lib\afs\afskauth.lib \
289 $(DESTDIR)\lib\afs\afsprot.lib \
290 $(DESTDIR)\lib\afs\afspioctl.lib \
291 $(DESTDIR)\lib\afs\afsaudit.lib \
292 $(DESTDIR)\lib\afs\afsutil.lib \
293 $(DESTDIR)\lib\afs\afscom_err.lib \
294 $(DESTDIR)\lib\afs\afsreg.lib \
295 $(DESTDIR)\lib\afs\afscmd.lib \
296 $(DESTDIR)\lib\afsubik.lib \
297 $(DESTDIR)\lib\afsrxkad.lib \
298 $(DESTDIR)\lib\afsdes.lib \
299 $(DESTDIR)\lib\afsrx.lib \
300 $(DESTDIR)\lib\afslwp.lib \
301 $(DESTDIR)\lib\libosi.lib \
302 $(DESTDIR)\lib\libafsconf.lib
305 $(EXEDIR)\klog.exe: $(OUT)\cklog.obj $(OUT)\klog.res $(EXELIBS)
306 $(EXECONLINK) dnsapi.lib
310 $(EXEDIR)\tokens.exe: $(OUT)\ctokens.obj $(OUT)\tokens.res $(EXELIBS)
311 $(EXECONLINK) dnsapi.lib
315 $(EXEDIR)\unlog.exe: $(OUT)\cunlog.obj $(OUT)\unlog.res $(EXELIBS)
316 $(EXECONLINK) dnsapi.lib
320 AFSD_EXEFILE = $(EXEDIR)\afsd.exe
334 $(DESTDIR)\lib\libosi.lib \
335 $(DESTDIR)\lib\afsrpc.lib \
336 $(DESTDIR)\lib\afsrx.lib \
337 $(DESTDIR)\lib\afsauthent.lib \
338 $(DESTDIR)\lib\afs\mtafsvldb.lib \
339 $(DESTDIR)\lib\afs\mtafsint.lib \
340 $(DESTDIR)\lib\libafsconf.lib \
341 $(DESTDIR)\lib\afs\afsreg.lib \
344 $(AFSD_EXEFILE): $(OUT)\afsd.obj $(AFSDOBJS) $(OUT)\afsd.res $(RXOBJS) $(AFSD_EXELIBS)
345 $(EXEGUILINK) $(AFSD_SDKLIBS)
349 $(EXEDIR)\afsd_service.exe: $(OUT)\afsd_service.obj $(AFSDOBJS) $(OUT)\afsd_service.res $(RXOBJS) $(AFSD_EXELIBS)
350 $(EXECONLINK) $(AFSD_SDKLIBS) /MAP
354 $(EXEDIR)\fs.exe: $(FSOBJS) $(OUT)\fs.res $(EXELIBS)
355 $(EXECONLINK) dnsapi.lib
359 $(EXEDIR)\symlink.exe: $(SLOBJS) $(OUT)\symlink.res $(EXELIBS)
360 $(EXECONLINK) dnsapi.lib
364 $(EXEDIR)\afsshare.exe: $(OUT)\afsshare.obj $(OUT)\afsshare.res
368 # kpasswd.exe - built in kauth, but rebuild here to make pthread-based,
369 # which is required for Windows 95. At some point it would be nice
370 # for all commands to be pthread based, in which case they should
371 # be built in a separate directory (perhaps tbin ala tviced) or
372 # libafsauthent should be built earlier so that each command can
373 # be built in its native directory.
381 $(OUT)\$(KAUTH)\kpasswd.res
384 $(DESTDIR)\lib\afsauthent.lib \
385 $(DESTDIR)\lib\afsrpc.lib \
386 $(DESTDIR)\lib\afsrx.lib \
387 $(DESTDIR)\lib\afs\afscmd.lib \
388 $(DESTDIR)\lib\afsdes.lib \
389 $(DESTDIR)\lib\afs\afsutil.lib
391 $(OUT)\kpasswd.obj: $(KAUTH)/kpasswd.c
392 $(C2OBJ) -DAFS_PTHREAD_ENV /Fo$@ $**
394 $(OUT)\kkids.obj: $(KAUTH)/kkids.c
395 $(C2OBJ) -DAFS_PTHREAD_ENV /Fo$@ $**
397 $(OUT)\kautils.obj: $(KAUTH)/kautils.c
398 $(C2OBJ) -DAFS_PTHREAD_ENV /Fo$@ $**
400 $(OUT)\kpasswd.res: $(KAUTH)\kpasswd.rc
403 $(DESTDIR)\bin\kpasswd.exe: $(KPASSWD_OBJS) $(KPASSWD_LIBS)
404 $(DEL) $(DESTDIR)\bin\kpasswd.exe
409 ############################################################################
410 # generate versioninfo resources
412 $(OUT)\afsshare.res: afsshare.rc AFS_component_version_number.h
414 $(OUT)\fs.res: fs.rc AFS_component_version_number.h
416 $(OUT)\symlink.res: symlink.rc AFS_component_version_number.h
418 $(OUT)\klog.res: klog.rc AFS_component_version_number.h
420 $(OUT)\tokens.res: tokens.rc AFS_component_version_number.h
422 $(OUT)\unlog.res: unlog.rc AFS_component_version_number.h
424 afsd_eventmessages.rc: afsd_eventmessages.h
426 $(OUT)\afsd_service.res: afsd_service.rc afsd_eventmessages.rc AFS_component_version_number.h
428 $(OUT)\afslogon.res: afslogon.rc AFS_component_version_number.h
430 $(OUT)\afslog95.res: afslog95.rc AFS_component_version_number.h
432 $(OUT)\libafsconf.res: libafsconf.rc AFS_component_version_number.h
434 ############################################################################
439 $(DEL) afsd_eventmessages.h
440 $(DEL) $(CONF_DLLFILE)
441 $(DEL) $(LOGON_DLLFILE)
442 $(DEL) $(LOG95_DLLFILE)