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)
33 WIXCYGOPT=-dCygwinArchives
41 NTMAKE = nmake /nologo /f ntmakefile install
42 NTMAKELANG = nmake /nologo /f ntmakefile en_US
43 NTMAKE_HEADERS = nmake /nologo /f ntmakefile install_headers
44 NTMAKE_OBJS = nmake /nologo /f ntmakefile install_objs
46 #debug statement support jumping to last known error
47 DOCD=$(SRC)\DOLASTCMP.BAT
56 procmgmt_headers: config
58 $(DOCD) $(SRC)\procmgmt
65 $(DOCD) $(SRC)\WINNT\afsreg
66 $(CD) $(SRC)\WINNT\afsreg
84 util: procmgmt_headers afsreg_headers lwp_headers rx_headers
114 $(DOCD) $(SRC)\WINNT\$@
115 $(CD) $(SRC)\WINNT\$@
121 $(DOCD) $(SRC)\WINNT\$@
122 $(CD) $(SRC)\WINNT\$@
142 ! IF (EXIST($(SRC)\des\NTMakefile))
148 $(DOCD) $(SRC)\des_stub
149 $(CD) $(SRC)\des_stub
168 ubik_headers: rxdebug
191 $(DOCD) $(SRC)\WINNT\$@
192 $(CD) $(SRC)\WINNT\$@
219 $(DOCD) $(SRC)\WINNT\client_osi
220 $(CD) $(SRC)\WINNT\client_osi
224 libacl_headers: osi_headers
226 $(DOCD) $(SRC)\libacl
231 cm_headers: libacl_headers
233 $(DOCD) $(SRC)\WINNT\afsd
234 $(CD) $(SRC)\WINNT\afsd
238 auth_headers: cm_headers
245 vlserver_headers: auth_headers
247 $(DOCD) $(SRC)\vlserver
248 $(CD) $(SRC)\vlserver
252 afsdobjs: vlserver_headers
254 $(DOCD) $(SRC)\WINNT\afsd
255 $(CD) $(SRC)\WINNT\afsd
393 $(DOCD) $(SRC)\WINNT\$@
394 $(CD) $(SRC)\WINNT\$@
412 libafsauthent: libafsrpc
419 tviced: libafsauthent
435 $(DOCD) $(SRC)\WINNT\$@
436 $(CD) $(SRC)\WINNT\$@
442 $(DOCD) $(SRC)\WINNT\$@
443 $(CD) $(SRC)\WINNT\$@
449 $(DOCD) $(SRC)\WINNT\$@
450 $(CD) $(SRC)\WINNT\$@
456 $(DOCD) $(SRC)\WINNT\$@
457 $(CD) $(SRC)\WINNT\$@
470 $(DOCD) $(SRC)\libadmin\$@
471 $(CD) $(SRC)\libadmin\$@
477 $(DOCD) $(SRC)\libadmin\$@
478 $(CD) $(SRC)\libadmin\$@
484 $(DOCD) $(SRC)\libadmin\$@
485 $(CD) $(SRC)\libadmin\$@
491 $(DOCD) $(SRC)\libadmin\$@
492 $(CD) $(SRC)\libadmin\$@
498 $(DOCD) $(SRC)\libadmin\$@
499 $(CD) $(SRC)\libadmin\$@
505 $(DOCD) $(SRC)\libadmin\$@
506 $(CD) $(SRC)\libadmin\$@
512 $(DOCD) $(SRC)\libadmin\$@
513 $(CD) $(SRC)\libadmin\$@
519 $(DOCD) $(SRC)\libadmin\test
520 $(CD) $(SRC)\libadmin\test
526 $(DOCD) $(SRC)\WINNT\$@
527 $(CD) $(SRC)\WINNT\$@
533 $(DOCD) $(SRC)\WINNT\$@
534 $(CD) $(SRC)\WINNT\$@
540 $(DOCD) $(SRC)\WINNT\$@
541 $(CD) $(SRC)\WINNT\$@
547 $(DOCD) $(SRC)\WINNT\$@
548 $(CD) $(SRC)\WINNT\$@
554 $(DOCD) $(SRC)\WINNT\$@
555 $(CD) $(SRC)\WINNT\$@
559 client_talocale: afssvrcpa
561 $(DOCD) $(SRC)\WINNT\talocale
562 $(CD) $(SRC)\WINNT\talocale
566 client_cpa: client_talocale
568 $(DOCD) $(SRC)\WINNT\$@
569 $(CD) $(SRC)\WINNT\$@
573 client_config: client_cpa
575 $(DOCD) $(SRC)\WINNT\$@
576 $(CD) $(SRC)\WINNT\$@
580 client_exp: client_config
582 $(DOCD) $(SRC)\WINNT\$@
583 $(CD) $(SRC)\WINNT\$@
587 client_creds: client_exp
589 $(DOCD) $(SRC)\WINNT\$@
590 $(CD) $(SRC)\WINNT\$@
596 $(DOCD) $(SRC)\WINNT\$@
597 $(CD) $(SRC)\WINNT\$@
608 netidmgr_plugin: xstat
610 $(DOCD) $(SRC)\WINNT\$@
611 $(CD) $(SRC)\WINNT\$@
615 extra: netidmgr_plugin
616 ! IF EXIST($(SRC)\WINNT\extra) && EXIST($(SRC)\WINNT\extra\NTMakefile)
618 $(DOCD) $(SRC)\WINNT\$@
619 $(CD) $(SRC)\WINNT\$@
623 @echo ***** Skipping $@ ***** Not found.
634 @echo Build Finished Successfully
637 # Clean target for obj tree
639 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
640 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
642 nmake /nologo /f ntmakefile clean_version
645 # Language-only build target
647 nmake /nologo /f ntmakefile "NTMAKE = nmake /nologo /f ntmakefile lang" "NTMAKE_HEADERS = nmake /nologo /f ntmakefile lang" install
652 -mkdir $(AFS_OBJDIR)\checked
653 -mkdir $(AFS_OBJDIR)\free
654 -xcopy /q /t /e $(SRC)\*.* $(AFS_OBJDIR)\checked\
655 -xcopy /q /t /e $(SRC)\*.* $(AFS_OBJDIR)\free\
656 -mkdir $(DESTDIR)\checked
657 -mkdir $(DESTDIR)\free
658 -mkdir $(DESTDIR)\checked\bin
659 -mkdir $(DESTDIR)\free\bin
660 -@copy $(SRC)\config\NTLANG.BAT .
663 @echo ***** Making Loopback Adapter Utility DLL
664 $(DOCD) $(SRC)\WINNT\install\$@
665 $(CD) $(SRC)\WINNT\install\$@
671 $(DOCD) $(DOC)\man-pages
672 $(CD) $(DOC)\man-pages
678 $(DOCD) $(DOC)\xml\ReleaseNotesWindows
679 $(CD) $(DOC)\xml\ReleaseNotesWindows
684 $(DOCD) ..\AdminGuide
690 NSIS.i386: loopback man-pages documentation
691 @echo ***** Making NSIS Installer
692 $(DOCD) $(SRC)\WINNT\install\$@
693 $(CD) $(SRC)\WINNT\install\$@
698 @echo Skipping NSIS Installer on non-x86 platforms; not implemented
702 wix: loopback man-pages documentation
703 @echo ***** Making Wix MSI Installer
704 $(DOCD) $(SRC)\WINNT\install\$@
705 $(CD) $(SRC)\WINNT\install\$@
709 media: install NSIS wix
711 install-nsis: install NSIS
713 install-wix: install wix