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
9 !INCLUDE NTMakefile.$(SYS_NAME)
11 # Relative path to src directory depends on how we got to current directory.
13 INCFILEDIR = $(DESTDIR)\include
15 INCFILEAFSDIR = $(INCFILEDIR)\afs
19 $(INCFILEDIR)\afsconfig.h \
20 $(INCFILEAFSDIR)\stds.h \
21 $(INCFILEAFSDIR)\param.h \
22 $(INCFILEAFSDIR)\afs_sysnames.h \
23 $(INCFILEAFSDIR)\afs_args.h \
24 $(INCFILEAFSDIR)\icl.h
27 $(INCFILEAFSDIR)\param.h: param.$(SYS_NAME).h
30 $(INCFILEDIR)\afsconfig.h: afsconfig-windows.h
34 ! IF (!EXIST($(SRC)\WINNT\afsrdr\build))
35 $(MKDIR) $(SRC)\WINNT\afsrdr\build
37 ! IF (!EXIST($(SRC)\WINNT\afsrdr\build\$(CPU)))
38 $(MKDIR) $(SRC)\WINNT\afsrdr\build\$(CPU)
43 ! IF (!EXIST($(OJT)\afs))
46 ! IF (!EXIST($(OJT)\audit))
49 ! IF (!EXIST($(OJT)\auth))
52 ! IF (!EXIST($(OJT)\auth\test))
53 $(MKDIR) $(OJT)\auth\test
55 ! IF (!EXIST($(OJT)\bozo))
58 ! IF (!EXIST($(OJT)\bubasics))
59 $(MKDIR) $(OJT)\bubasics
61 ! IF (!EXIST($(OJT)\bucoord))
62 $(MKDIR) $(OJT)\bucoord
64 ! IF (!EXIST($(OJT)\budb))
67 ! IF (!EXIST($(OJT)\butc))
70 ! IF (!EXIST($(OJT)\butm))
73 ! IF (!EXIST($(OJT)\bu_utils))
74 $(MKDIR) $(OJT)\bu_utils
76 ! IF (!EXIST($(OJT)\cmd))
79 ! IF (!EXIST($(OJT)\cmd\test))
80 $(MKDIR) $(OJT)\cmd\test
82 ! IF (!EXIST($(OJT)\comerr))
83 $(MKDIR) $(OJT)\comerr
85 ! IF (!EXIST($(OJT)\comerr\test))
86 $(MKDIR) $(OJT)\comerr\test
88 ! IF (!EXIST($(OJT)\config))
89 $(MKDIR) $(OJT)\config
91 ! IF (!EXIST($(OJT)\crypto))
92 $(MKDIR) $(OJT)\crypto
94 ! IF (!EXIST($(OJT)\crypto\hcrypto))
95 $(MKDIR) $(OJT)\crypto\hcrypto
97 ! IF (!EXIST($(OJT)\crypto\rfc3961))
98 $(MKDIR) $(OJT)\crypto\rfc3961
100 ! IF (!EXIST($(OJT)\dir))
103 ! IF (!EXIST($(OJT)\dir\test))
104 $(MKDIR) $(OJT)\dir\test
106 ! IF (!EXIST($(OJT)\finale))
107 $(MKDIR) $(OJT)\finale
109 ! IF (!EXIST($(OJT)\fsint))
110 $(MKDIR) $(OJT)\fsint
112 ! IF (!EXIST($(OJT)\kauth))
113 $(MKDIR) $(OJT)\kauth
115 ! IF (!EXIST($(OJT)\kauth\test))
116 $(MKDIR) $(OJT)\kauth\test
118 ! IF (!EXIST($(OJT)\libacl))
119 $(MKDIR) $(OJT)\libacl
121 ! IF (!EXIST($(OJT)\opr))
124 ! IF (!EXIST($(OJT)\roken))
125 $(MKDIR) $(OJT)\roken
127 ! IF (!EXIST($(OJT)\tests))
128 $(MKDIR) $(OJT)\tests
130 ! IF (!EXIST($(OJT)\tests\rpctestlib))
131 $(MKDIR) $(OJT)\tests\rpctestlib
133 ! IF (!EXIST($(OJT)\libadmin))
134 $(MKDIR) $(OJT)\libadmin
136 ! IF (!EXIST($(OJT)\libadmin\adminutil))
137 $(MKDIR) $(OJT)\libadmin\adminutil
139 ! IF (!EXIST($(OJT)\libadmin\bos))
140 $(MKDIR) $(OJT)\libadmin\bos
142 ! IF (!EXIST($(OJT)\libadmin\cfg))
143 $(MKDIR) $(OJT)\libadmin\cfg
145 ! IF (!EXIST($(OJT)\libadmin\cfg\test))
146 $(MKDIR) $(OJT)\libadmin\cfg\test
148 ! IF (!EXIST($(OJT)\libadmin\client))
149 $(MKDIR) $(OJT)\libadmin\client
151 ! IF (!EXIST($(OJT)\libadmin\kas))
152 $(MKDIR) $(OJT)\libadmin\kas
154 ! IF (!EXIST($(OJT)\libadmin\pts))
155 $(MKDIR) $(OJT)\libadmin\pts
157 ! IF (!EXIST($(OJT)\libadmin\test))
158 $(MKDIR) $(OJT)\libadmin\test
160 ! IF (!EXIST($(OJT)\libadmin\vos))
161 $(MKDIR) $(OJT)\libadmin\vos
163 ! IF (!EXIST($(OJT)\libafsauthent))
164 $(MKDIR) $(OJT)\libafsauthent
166 ! IF (!EXIST($(OJT)\libafsrpc))
167 $(MKDIR) $(OJT)\libafsrpc
169 ! IF (!EXIST($(OJT)\lwp))
172 ! IF (!EXIST($(OJT)\lwp\test))
173 $(MKDIR) $(OJT)\lwp\test
175 ! IF (!EXIST($(OJT)\procmgmt))
176 $(MKDIR) $(OJT)\procmgmt
178 ! IF (!EXIST($(OJT)\procmgmt\test))
179 $(MKDIR) $(OJT)\procmgmt\test
181 ! IF (!EXIST($(OJT)\ptserver))
182 $(MKDIR) $(OJT)\ptserver
184 ! IF (!EXIST($(OJT)\tptserver))
185 $(MKDIR) $(OJT)\tptserver
187 ! IF (!EXIST($(OJT)\rx))
190 ! IF (!EXIST($(OJT)\rx\test))
191 $(MKDIR) $(OJT)\rx\test
193 ! IF (!EXIST($(OJT)\rxdebug))
194 $(MKDIR) $(OJT)\rxdebug
196 ! IF (!EXIST($(OJT)\rxgen))
197 $(MKDIR) $(OJT)\rxgen
199 ! IF (!EXIST($(OJT)\rxkad))
200 $(MKDIR) $(OJT)\rxkad
202 ! IF (!EXIST($(OJT)\rxstat))
203 $(MKDIR) $(OJT)\rxstat
205 ! IF (!EXIST($(OJT)\shlibafsauthent))
206 $(MKDIR) $(OJT)\shlibafsauthent
208 ! IF (!EXIST($(OJT)\shlibafsrpc))
209 $(MKDIR) $(OJT)\shlibafsrpc
211 ! IF (!EXIST($(OJT)\sys))
214 ! IF (!EXIST($(OJT)\tbutc))
215 $(MKDIR) $(OJT)\tbutc
217 ! IF (!EXIST($(OJT)\tvolser))
218 $(MKDIR) $(OJT)\tvolser
220 ! IF (!EXIST($(OJT)\tools))
221 $(MKDIR) $(OJT)\tools
223 ! IF (!EXIST($(OJT)\tools\rxperf))
224 $(MKDIR) $(OJT)\tools\rxperf
226 ! IF (!EXIST($(OJT)\dviced))
227 $(MKDIR) $(OJT)\dviced
229 ! IF (!EXIST($(OJT)\dvolser))
230 $(MKDIR) $(OJT)\dvolser
232 ! IF (!EXIST($(OJT)\ubik))
235 ! IF (!EXIST($(OJT)\tubik))
236 $(MKDIR) $(OJT)\tubik
238 ! IF (!EXIST($(OJT)\update))
239 $(MKDIR) $(OJT)\update
241 ! IF (!EXIST($(OJT)\usd))
244 ! IF (!EXIST($(OJT)\usd\test))
245 $(MKDIR) $(OJT)\usd\test
247 ! IF (!EXIST($(OJT)\util))
250 ! IF (!EXIST($(OJT)\util\test))
251 $(MKDIR) $(OJT)\util\test
253 ! IF (!EXIST($(OJT)\viced))
254 $(MKDIR) $(OJT)\viced
256 ! IF (!EXIST($(OJT)\vlserver))
257 $(MKDIR) $(OJT)\vlserver
259 ! IF (!EXIST($(OJT)\vol))
262 ! IF (!EXIST($(OJT)\vol\test))
263 $(MKDIR) $(OJT)\vol\test
265 ! IF (!EXIST($(OJT)\volser))
266 $(MKDIR) $(OJT)\volser
268 ! IF (!EXIST($(OJT)\xstat))
269 $(MKDIR) $(OJT)\xstat
271 ! IF (!EXIST($(OJT)\WINNT))
272 $(MKDIR) $(OJT)\WINNT
274 ! IF (!EXIST($(OJT)\WINNT\afsadmsvr))
275 $(MKDIR) $(OJT)\WINNT\afsadmsvr
277 ! IF (!EXIST($(OJT)\WINNT\afsapplib))
278 $(MKDIR) $(OJT)\WINNT\afsapplib
280 ! IF (!EXIST($(OJT)\WINNT\afsapplib\lang))
281 $(MKDIR) $(OJT)\WINNT\afsapplib\lang
283 ! IF (!EXIST($(OJT)\WINNT\afsapplib\test))
284 $(MKDIR) $(OJT)\WINNT\afsapplib\test
286 ! IF (!EXIST($(OJT)\WINNT\afsclass))
287 $(MKDIR) $(OJT)\WINNT\afsclass
289 ! IF (!EXIST($(OJT)\WINNT\afsd))
290 $(MKDIR) $(OJT)\WINNT\afsd
292 ! IF (!EXIST($(OJT)\WINNT\afslegal))
293 $(MKDIR) $(OJT)\WINNT\afslegal
295 ! IF (!EXIST($(OJT)\WINNT\afslegal\lang))
296 $(MKDIR) $(OJT)\WINNT\afslegal\lang
298 ! IF (!EXIST($(OJT)\WINNT\afsrdr))
299 $(MKDIR) $(OJT)\WINNT\afsrdr
301 ! IF (!EXIST($(OJT)\WINNT\afsrdr\tools))
302 $(MKDIR) $(OJT)\WINNT\afsrdr\tools
304 ! IF (!EXIST($(OJT)\WINNT\afsrdr\tools\authgroup))
305 $(MKDIR) $(OJT)\WINNT\afsrdr\tools\authgroup
307 ! IF (!EXIST($(OJT)\WINNT\afsrdr\tools\gettrace))
308 $(MKDIR) $(OJT)\WINNT\afsrdr\tools\gettrace
310 ! IF (!EXIST($(OJT)\WINNT\afsrdr\tools\settrace))
311 $(MKDIR) $(OJT)\WINNT\afsrdr\tools\settrace
313 ! IF (!EXIST($(OJT)\WINNT\afsrdr\tools\crash))
314 $(MKDIR) $(OJT)\WINNT\afsrdr\tools\crash
316 ! IF (!EXIST($(OJT)\WINNT\afsreg))
317 $(MKDIR) $(OJT)\WINNT\afsreg
319 ! IF (!EXIST($(OJT)\WINNT\afsreg\test))
320 $(MKDIR) $(OJT)\WINNT\afsreg\test
322 ! IF (!EXIST($(OJT)\WINNT\afssvrcfg))
323 $(MKDIR) $(OJT)\WINNT\afssvrcfg
325 ! IF (!EXIST($(OJT)\WINNT\afssvrcfg\lang))
326 $(MKDIR) $(OJT)\WINNT\afssvrcfg\lang
328 ! IF (!EXIST($(OJT)\WINNT\afssvrcpa))
329 $(MKDIR) $(OJT)\WINNT\afssvrcpa
331 ! IF (!EXIST($(OJT)\WINNT\afssvrcpa\lang))
332 $(MKDIR) $(OJT)\WINNT\afssvrcpa\lang
334 ! IF (!EXIST($(OJT)\WINNT\afssvrmgr))
335 $(MKDIR) $(OJT)\WINNT\afssvrmgr
337 ! IF (!EXIST($(OJT)\WINNT\afssvrmgr\lang))
338 $(MKDIR) $(OJT)\WINNT\afssvrmgr\lang
340 ! IF (!EXIST($(OJT)\WINNT\afsusrmgr))
341 $(MKDIR) $(OJT)\WINNT\afsusrmgr
343 ! IF (!EXIST($(OJT)\WINNT\afsusrmgr\lang))
344 $(MKDIR) $(OJT)\WINNT\afsusrmgr\lang
346 ! IF (!EXIST($(OJT)\WINNT\afs_setup_utils))
347 $(MKDIR) $(OJT)\WINNT\afs_setup_utils
349 ! IF (!EXIST($(OJT)\WINNT\afs_setup_utils\lang))
350 $(MKDIR) $(OJT)\WINNT\afs_setup_utils\lang
352 ! IF (!EXIST($(OJT)\WINNT\afs_setup_utils\_isuser))
353 $(MKDIR) $(OJT)\WINNT\afs_setup_utils\_isuser
355 ! IF (!EXIST($(OJT)\WINNT\afs_setup_utils\GetWebDll))
356 $(MKDIR) $(OJT)\WINNT\afs_setup_utils\GetWebDll
358 ! IF (!EXIST($(OJT)\WINNT\aklog))
359 $(MKDIR) $(OJT)\WINNT\aklog
361 ! IF (!EXIST($(OJT)\WINNT\afsrdr))
362 $(MKDIR) $(OJT)\WINNT\afsrdr
364 ! IF (!EXIST($(OJT)\WINNT\afsrdr\kernel))
365 $(MKDIR) $(OJT)\WINNT\afsrdr\kernel
367 ! IF (!EXIST($(OJT)\WINNT\afsrdr\npdll))
368 $(MKDIR) $(OJT)\WINNT\afsrdr\npdll
370 ! IF (!EXIST($(OJT)\WINNT\bosctlsvc))
371 $(MKDIR) $(OJT)\WINNT\bosctlsvc
373 ! IF (!EXIST($(OJT)\WINNT\client_config))
374 $(MKDIR) $(OJT)\WINNT\client_config
376 ! IF (!EXIST($(OJT)\WINNT\client_config\lang))
377 $(MKDIR) $(OJT)\WINNT\client_config\lang
379 ! IF (!EXIST($(OJT)\WINNT\client_cpa))
380 $(MKDIR) $(OJT)\WINNT\client_cpa
382 ! IF (!EXIST($(OJT)\WINNT\client_cpa\lang))
383 $(MKDIR) $(OJT)\WINNT\client_cpa\lang
385 ! IF (!EXIST($(OJT)\WINNT\client_creds))
386 $(MKDIR) $(OJT)\WINNT\client_creds
388 ! IF (!EXIST($(OJT)\WINNT\client_creds\lang))
389 $(MKDIR) $(OJT)\WINNT\client_creds\lang
391 ! IF (!EXIST($(OJT)\WINNT\client_exp))
392 $(MKDIR) $(OJT)\WINNT\client_exp
394 ! IF (!EXIST($(OJT)\WINNT\client_exp\lang))
395 $(MKDIR) $(OJT)\WINNT\client_exp\lang
397 ! IF (!EXIST($(OJT)\WINNT\client_osi))
398 $(MKDIR) $(OJT)\WINNT\client_osi
400 ! IF (!EXIST($(OJT)\WINNT\eventlog))
401 $(MKDIR) $(OJT)\WINNT\eventlog
403 ! IF (!EXIST($(OJT)\WINNT\eventlog\lang))
404 $(MKDIR) $(OJT)\WINNT\eventlog\lang
406 ! IF (!EXIST($(OJT)\WINNT\eventlog\test))
407 $(MKDIR) $(OJT)\WINNT\eventlog\test
409 ! IF (!EXIST($(OJT)\WINNT\install))
410 $(MKDIR) $(OJT)\WINNT\install
412 ! IF (!EXIST($(OJT)\WINNT\install\InstallShield5))
413 $(MKDIR) $(OJT)\WINNT\install\InstallShield5
415 ! IF (!EXIST($(OJT)\WINNT\install\loopback))
416 $(MKDIR) $(OJT)\WINNT\install\loopback
418 ! IF (!EXIST($(OJT)\WINNT\install\NSIS))
419 $(MKDIR) $(OJT)\WINNT\install\NSIS
421 ! IF (!EXIST($(OJT)\WINNT\install\wix))
422 $(MKDIR) $(OJT)\WINNT\install\wix
424 ! IF (!EXIST($(OJT)\WINNT\install\wix\custom))
425 $(MKDIR) $(OJT)\WINNT\install\wix\custom
427 ! IF (!EXIST($(OJT)\WINNT\install\wix\uninstall))
428 $(MKDIR) $(OJT)\WINNT\install\wix\uninstall
430 ! IF (!EXIST($(OJT)\WINNT\install\Win9x))
431 $(MKDIR) $(OJT)\WINNT\install\Win9x
433 ! IF (!EXIST($(OJT)\WINNT\license))
434 $(MKDIR) $(OJT)\WINNT\license
436 ! IF (!EXIST($(OJT)\WINNT\license\lang))
437 $(MKDIR) $(OJT)\WINNT\license\lang
439 ! IF (!EXIST($(OJT)\WINNT\netidmgr_plugin))
440 $(MKDIR) $(OJT)\WINNT\netidmgr_plugin
442 ! IF (!EXIST($(OJT)\WINNT\pthread))
443 $(MKDIR) $(OJT)\WINNT\pthread
445 ! IF (!EXIST($(OJT)\WINNT\pthread\test))
446 $(MKDIR) $(OJT)\WINNT\pthread\test
448 ! IF (!EXIST($(OJT)\WINNT\talocale))
449 $(MKDIR) $(OJT)\WINNT\talocale
451 ! IF (!EXIST($(OJT)\WINNT\talocale_unicode))
452 $(MKDIR) $(OJT)\WINNT\talocale_unicode
454 ! IF (!EXIST($(OJT)\WINNT\win9xpanel))
455 $(MKDIR) $(OJT)\WINNT\win9xpanel
457 ! IF (!EXIST($(DESTDIR)))
460 ! IF (!EXIST($(DESTDIR)\include))
461 $(MKDIR) $(DESTDIR)\include
463 ! IF (!EXIST($(DESTDIR)\include\afs))
464 $(MKDIR) $(DESTDIR)\include\afs
466 ! IF (!EXIST($(DESTDIR)\include\hcrypto))
467 $(MKDIR) $(DESTDIR)\include\hcrypto
469 ! IF (!EXIST($(DESTDIR)\include\opr))
470 $(MKDIR) $(DESTDIR)\include\opr
472 ! IF (!EXIST($(DESTDIR)\include\rx))
473 $(MKDIR) $(DESTDIR)\include\rx
475 ! IF (!EXIST($(DESTDIR)\include\WINNT))
476 $(MKDIR) $(DESTDIR)\include\WINNT
478 ! IF (!EXIST($(DESTDIR)\lib))
479 $(MKDIR) $(DESTDIR)\lib
481 ! IF (!EXIST($(DESTDIR)\lib\afs))
482 $(MKDIR) $(DESTDIR)\lib\afs
484 ! IF (!EXIST($(DESTDIR)\lib\win95))
485 $(MKDIR) $(DESTDIR)\lib\win95
487 ! IF (!EXIST($(DESTDIR)\bin))
488 $(MKDIR) $(DESTDIR)\bin
490 ! IF (!EXIST($(DESTDIR)\etc))
491 $(MKDIR) $(DESTDIR)\etc
493 ! IF (!EXIST($(DESTDIR)\WinInstall))
494 $(MKDIR) $(DESTDIR)\WinInstall
496 ! IF (!EXIST($(DESTDIR)\WinInstall\Config))
497 $(MKDIR) $(DESTDIR)\WinInstall\Config
499 ! IF (!EXIST($(DESTDIR)\WinInstall\Dll))
500 $(MKDIR) $(DESTDIR)\WinInstall\Dll
502 ! IF (!EXIST($(DESTDIR)\root.server))
503 $(MKDIR) $(DESTDIR)\root.server
505 ! IF (!EXIST($(DESTDIR)\root.server\usr))
506 $(MKDIR) $(DESTDIR)\root.server\usr
508 ! IF (!EXIST($(DESTDIR)\root.server\usr\afs))
509 $(MKDIR) $(DESTDIR)\root.server\usr\afs
511 ! IF (!EXIST($(DESTDIR)\root.server\usr\afs\bin))
512 $(MKDIR) $(DESTDIR)\root.server\usr\afs\bin
514 ! IF (!EXIST($(DESTDIR)\root.client))
515 $(MKDIR) $(DESTDIR)\root.client
517 ! IF (!EXIST($(DESTDIR)\root.client\usr))
518 $(MKDIR) $(DESTDIR)\root.client\usr
520 ! IF (!EXIST($(DESTDIR)\root.client\usr\vice))
521 $(MKDIR) $(DESTDIR)\root.client\usr\vice
523 ! IF (!EXIST($(DESTDIR)\root.client\usr\vice\etc))
524 $(MKDIR) $(DESTDIR)\root.client\usr\vice\etc
526 $(COPY) AFSCONFIG-WINDOWS.H $(DESTDIR)\include\afs\afsconfig.h
529 $(DESTDIR)\bin\NTBUILD.bat
531 $(DESTDIR)\bin\NTBUILD.bat:..\NTBUILD.bat
535 $(DESTDIR)\bin\NTLang.bat: NTLang.bat $(DESTDIR)\bin\util_cr.exe
536 $(COPY) NTLang.bat $(DESTDIR)\bin
537 $(UTIL_CR) + $(DESTDIR)\bin\NTLang.bat
539 $(DESTDIR)\NTDllmap.txt:NTDllmap.txt
542 # Create link to docs needed for media build; allow to fail in case
543 # symlink not available, e.g. if using a 3.4a client, since most builds
544 # aren't media builds.
546 ! IF (EXIST($(DESTDIR)\doc))
547 - symlink rm $(DESTDIR)\doc
549 - symlink make $(DESTDIR)\doc doc-pathname
552 version: $(DESTDIR)\bin\mkvers.exe NTMakefile.version
554 NTMakefile.version: NTMakefile.version-CML NTMakefile.version-NOCML
555 $(DEL) NTMakefile.version
556 ! IF (EXIST(..\..\src\CML\state) || EXIST(..\..\..\src\CML\state))
557 $(COPY) NTMakefile.version-CML NTMakefile.version
559 $(COPY) NTMakefile.version-NOCML NTMakefile.version
563 $(DESTDIR)\bin\mkvers.exe \
564 $(DESTDIR)\bin\util_cr.exe \
565 $(DESTDIR)\bin\touch.exe
567 $(INCTOOLS):$(OUT)\$$(@F)
568 $(COPY) $** $(DESTDIR)\bin\.
569 !IF ("$(AFSVER_CL)"=="1400")
570 $(COPY) $**.manifest $(DESTDIR)\bin\.
573 $(OUT)\mkvers.exe : $(OUT)\mkvers.obj
575 $(_VC_MANIFEST_EMBED_EXE)
579 $(OUT)\touch.exe : $(OUT)\touch.obj
581 $(_VC_MANIFEST_EMBED_EXE)
585 $(OUT)\util_cr.exe : $(OUT)\util_cr.obj
587 $(_VC_MANIFEST_EMBED_EXE)
591 langsetup: $(DESTDIR)\bin\NTLang.bat
593 install: idirs $(INCFILES) $(INCTOOLS) $(INCCOPY) version $(DESTDIR)\NTDllmap.txt langsetup
595 # This clean target must be named something different than the universal
596 # 'clean' so that the version and NTLang.bat files can be removed last.
598 -$(DEL) NTMakefile.version
599 -$(DEL) $(DESTDIR)\bin\NTLang.bat
603 -$(DEL) $(DESTDIR)\LIB\*.DLL
604 -$(DEL) $(DESTDIR)\bin\mkver.exe*
605 -$(DEL) $(DESTDIR)\bin\touch.exe*
606 -$(DEL) $(DESTDIR)\bin\util_cr.exe*
607 -$(DEL) $(OUT)\util_cr.exe*
608 -$(DEL) $(OUT)\mkver.exe*
609 -$(DEL) $(OUT)\touch.exe*