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
93 $(DOCD) $(SRC)\WINNT\$@
98 util: procmgmt_headers afsreg_headers lwp_headers rx_headers pthread
128 $(DOCD) $(SRC)\WINNT\$@
129 $(CD) $(SRC)\WINNT\$@
135 $(DOCD) $(SRC)\WINNT\$@
136 $(CD) $(SRC)\WINNT\$@
175 ubik_headers: rxdebug
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
442 $(DOCD) $(SRC)\WINNT\$@
443 $(CD) $(SRC)\WINNT\$@
449 $(DOCD) $(SRC)\WINNT\$@
450 $(CD) $(SRC)\WINNT\$@
456 $(DOCD) $(SRC)\WINNT\$@
457 $(CD) $(SRC)\WINNT\$@
463 $(DOCD) $(SRC)\WINNT\$@
464 $(CD) $(SRC)\WINNT\$@
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\$@
520 $(CD) $(SRC)\libadmin\$@
526 $(DOCD) $(SRC)\libadmin\test
527 $(CD) $(SRC)\libadmin\test
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\$@
561 $(DOCD) $(SRC)\WINNT\$@
562 $(CD) $(SRC)\WINNT\$@
566 client_talocale: afssvrcpa
568 $(DOCD) $(SRC)\WINNT\talocale
569 $(CD) $(SRC)\WINNT\talocale
573 client_cpa: client_talocale
575 $(DOCD) $(SRC)\WINNT\$@
576 $(CD) $(SRC)\WINNT\$@
580 client_config: client_cpa
582 $(DOCD) $(SRC)\WINNT\$@
583 $(CD) $(SRC)\WINNT\$@
587 client_exp: client_config
589 $(DOCD) $(SRC)\WINNT\$@
590 $(CD) $(SRC)\WINNT\$@
594 client_creds: client_exp
596 $(DOCD) $(SRC)\WINNT\$@
597 $(CD) $(SRC)\WINNT\$@
603 $(DOCD) $(SRC)\WINNT\$@
604 $(CD) $(SRC)\WINNT\$@
615 netidmgr_plugin: xstat
617 $(DOCD) $(SRC)\WINNT\$@
618 $(CD) $(SRC)\WINNT\$@
622 extra: netidmgr_plugin
623 ! IF EXIST($(SRC)\WINNT\extra) && EXIST($(SRC)\WINNT\extra\NTMakefile)
625 $(DOCD) $(SRC)\WINNT\$@
626 $(CD) $(SRC)\WINNT\$@
630 @echo ***** Skipping $@ ***** Not found.
641 @echo Build Finished Successfully
644 # Clean target for obj tree
646 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
647 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
649 nmake /nologo /f ntmakefile clean_version
652 # Language-only build target
654 nmake /nologo /f ntmakefile "NTMAKE = nmake /nologo /f ntmakefile lang" "NTMAKE_HEADERS = nmake /nologo /f ntmakefile lang" install
659 -mkdir $(AFS_OBJDIR)\checked
660 -mkdir $(AFS_OBJDIR)\free
661 -xcopy /q /t /e $(SRC)\*.* $(AFS_OBJDIR)\checked\
662 -xcopy /q /t /e $(SRC)\*.* $(AFS_OBJDIR)\free\
663 -mkdir $(DESTDIR)\checked
664 -mkdir $(DESTDIR)\free
665 -mkdir $(DESTDIR)\checked\bin
666 -mkdir $(DESTDIR)\free\bin
667 -@copy $(SRC)\config\NTLANG.BAT .
670 @echo ***** Making Loopback Adapter Utility DLL
671 $(DOCD) $(SRC)\WINNT\install\$@
672 $(CD) $(SRC)\WINNT\install\$@
678 $(DOCD) $(DOC)\man-pages
679 $(CD) $(DOC)\man-pages
683 documentation: config
685 $(DOCD) $(DOC)\xml\ReleaseNotesWindows
686 $(CD) $(DOC)\xml\ReleaseNotesWindows
691 $(DOCD) ..\AdminGuide
697 NSIS.i386: loopback man-pages documentation
698 @echo ***** Making NSIS Installer
699 $(DOCD) $(SRC)\WINNT\install\NSIS
700 $(CD) $(SRC)\WINNT\install\NSIS
705 @echo Skipping NSIS Installer on non-x86 platforms; not implemented
709 wix: loopback man-pages documentation
710 @echo ***** Making Wix MSI Installer
711 $(DOCD) $(SRC)\WINNT\install\$@
712 $(CD) $(SRC)\WINNT\install\$@
716 media: install NSIS wix
718 install-nsis: install NSIS
720 install-wix: install wix