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 # Top level nmake NTMakefile driver for building AFS.
10 # This file simply imposes a reasonable total ordering on the set of
11 # directories to build; this ordering is of course more strict than the
12 # partial ordering established by the actual directory dependencies.
14 # When porting a new directory, simply add the directory into the
15 # dependence chain at the earliest point possible, updating its successor
16 # appropriately; if the new directory is the last in the chain, then
17 # update the 'finale' dependency to be the new directory.
19 # These three macros define the source, object, and destination folders
23 #If AFS_OBJDIR is not defined then use obj as relative obj folder
25 AFS_OBJDIR=$(AFSROOT)\obj\$(SYS_NAME)
29 DESTDIR=$(AFSROOT)\dest\$(SYS_NAME)
35 NTMAKE = nmake /nologo /f ntmakefile install
36 NTMAKELANG = nmake /nologo /f ntmakefile en_US
37 NTMAKE_HEADERS = nmake /nologo /f ntmakefile install_headers
38 NTMAKE_OBJS = nmake /nologo /f ntmakefile install_objs
40 #debug statement support jumping to last know error
41 DOCD=$(SRC)\DOLASTCMP.BAT
50 procmgmt_headers: config
52 $(DOCD) $(SRC)\procmgmt
59 $(DOCD) $(SRC)\WINNT\afsreg
60 $(CD) $(SRC)\WINNT\afsreg
71 util: procmgmt_headers afsreg_headers lwp_headers
101 $(DOCD) $(SRC)\WINNT\$@
102 $(CD) $(SRC)\WINNT\$@
108 $(DOCD) $(SRC)\WINNT\$@
109 $(CD) $(SRC)\WINNT\$@
129 ! IF (EXIST($(SRC)\des\NTMakefile))
135 $(DOCD) $(SRC)\des_stub
136 $(CD) $(SRC)\des_stub
155 ubik_headers: rxdebug
178 $(DOCD) $(SRC)\WINNT\$@
179 $(CD) $(SRC)\WINNT\$@
206 $(DOCD) $(SRC)\WINNT\client_osi
207 $(CD) $(SRC)\WINNT\client_osi
211 libacl_headers: osi_headers
213 $(DOCD) $(SRC)\libacl
218 cm_headers: libacl_headers
220 $(DOCD) $(SRC)\WINNT\afsd
221 $(CD) $(SRC)\WINNT\afsd
225 auth_headers: cm_headers
232 vlserver_headers: auth_headers
234 $(DOCD) $(SRC)\vlserver
235 $(CD) $(SRC)\vlserver
239 afsdobjs: vlserver_headers
241 $(DOCD) $(SRC)\WINNT\afsd
242 $(CD) $(SRC)\WINNT\afsd
380 $(DOCD) $(SRC)\WINNT\$@
381 $(CD) $(SRC)\WINNT\$@
399 libafsauthent: libafsrpc
406 tviced: libafsauthent
422 $(DOCD) $(SRC)\WINNT\$@
423 $(CD) $(SRC)\WINNT\$@
429 $(DOCD) $(SRC)\WINNT\$@
430 $(CD) $(SRC)\WINNT\$@
436 $(DOCD) $(SRC)\WINNT\$@
437 $(CD) $(SRC)\WINNT\$@
443 $(DOCD) $(SRC)\WINNT\$@
444 $(CD) $(SRC)\WINNT\$@
457 $(DOCD) $(SRC)\libadmin\$@
458 $(CD) $(SRC)\libadmin\$@
464 $(DOCD) $(SRC)\libadmin\$@
465 $(CD) $(SRC)\libadmin\$@
471 $(DOCD) $(SRC)\libadmin\$@
472 $(CD) $(SRC)\libadmin\$@
478 $(DOCD) $(SRC)\libadmin\$@
479 $(CD) $(SRC)\libadmin\$@
485 $(DOCD) $(SRC)\libadmin\$@
486 $(CD) $(SRC)\libadmin\$@
492 $(DOCD) $(SRC)\libadmin\$@
493 $(CD) $(SRC)\libadmin\$@
499 $(DOCD) $(SRC)\libadmin\$@
500 $(CD) $(SRC)\libadmin\$@
506 $(DOCD) $(SRC)\libadmin\test
507 $(CD) $(SRC)\libadmin\test
513 $(DOCD) $(SRC)\WINNT\$@
514 $(CD) $(SRC)\WINNT\$@
520 $(DOCD) $(SRC)\WINNT\$@
521 $(CD) $(SRC)\WINNT\$@
527 $(DOCD) $(SRC)\WINNT\$@
528 $(CD) $(SRC)\WINNT\$@
534 $(DOCD) $(SRC)\WINNT\$@
535 $(CD) $(SRC)\WINNT\$@
541 $(DOCD) $(SRC)\WINNT\$@
542 $(CD) $(SRC)\WINNT\$@
546 client_talocale: afssvrcpa
548 $(DOCD) $(SRC)\WINNT\talocale
549 $(CD) $(SRC)\WINNT\talocale
553 client_cpa: client_talocale
555 $(DOCD) $(SRC)\WINNT\$@
556 $(CD) $(SRC)\WINNT\$@
560 client_config: client_cpa
562 $(DOCD) $(SRC)\WINNT\$@
563 $(CD) $(SRC)\WINNT\$@
567 client_exp: client_config
569 $(DOCD) $(SRC)\WINNT\$@
570 $(CD) $(SRC)\WINNT\$@
574 client_creds: client_exp
576 $(DOCD) $(SRC)\WINNT\$@
577 $(CD) $(SRC)\WINNT\$@
583 $(DOCD) $(SRC)\WINNT\$@
584 $(CD) $(SRC)\WINNT\$@
595 netidmgr_plugin: xstat
597 $(DOCD) $(SRC)\WINNT\$@
598 $(CD) $(SRC)\WINNT\$@
602 extra: netidmgr_plugin
603 ! IF EXIST($(SRC)\WINNT\extra) && EXIST($(SRC)\WINNT\extra\NTMakefile)
605 $(DOCD) $(SRC)\WINNT\$@
606 $(CD) $(SRC)\WINNT\$@
610 @echo ***** Skipping $@ ***** Not found.
621 @echo Build Finished Successfully
624 # Clean target for obj tree
626 nmake /nologo /f ntmakefile "NTMAKE = nmake /nologo /f ntmakefile clean" "NTMAKE_HEADERS = nmake /nologo /f ntmakefile clean" "NTMAKE_OBJS = nmake /nologo /f ntmakefile clean" install
627 nmake /nologo /f ntmakefile "NTMAKE = nmake /nologo /f ntmakefile clean" "NTMAKE_HEADERS = nmake /nologo /f ntmakefile clean" "NTMAKE_OBJS = nmake /nologo /f ntmakefile clean" media
629 nmake /nologo /f ntmakefile clean_version
632 # Language-only build target
634 nmake /nologo /f ntmakefile "NTMAKE = nmake /nologo /f ntmakefile lang" "NTMAKE_HEADERS = nmake /nologo /f ntmakefile lang" install
639 -mkdir $(AFS_OBJDIR)\checked
640 -mkdir $(AFS_OBJDIR)\free
641 -xcopy /q /t /e $(SRC)\*.* $(AFS_OBJDIR)\checked\
642 -xcopy /q /t /e $(SRC)\*.* $(AFS_OBJDIR)\free\
643 -mkdir $(DESTDIR)\checked
644 -mkdir $(DESTDIR)\free
645 -mkdir $(DESTDIR)\checked\bin
646 -mkdir $(DESTDIR)\free\bin
647 -@copy $(SRC)\config\NTLANG.BAT .
650 @echo ***** Making Loopback Adapter Utility DLL
651 $(DOCD) $(SRC)\WINNT\install\$@
652 $(CD) $(SRC)\WINNT\install\$@
658 $(DOCD) $(DOC)\man-pages
659 $(CD) $(DOC)\man-pages
663 NSIS.i386: loopback man-pages
664 @echo ***** Making NSIS Installer
665 $(DOCD) $(SRC)\WINNT\install\NSIS
666 $(CD) $(SRC)\WINNT\install\NSIS
671 @echo Skipping NSIS Installer on non-x86 platforms; not implemented
675 wix: loopback man-pages
676 @echo ***** Making Wix MSI Installer
677 $(DOCD) $(SRC)\WINNT\install\$@
678 $(CD) $(SRC)\WINNT\install\$@
682 media: install man-pages NSIS wix
684 install-nsis: install man-pages NSIS
686 install-wix: install man-pages wix