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
22 TESTS=$(AFSROOT)\tests
24 #If AFS_OBJDIR is not defined then use obj as relative obj folder
26 AFS_OBJDIR=$(AFSROOT)\obj\$(SYS_NAME)
30 DESTDIR=$(AFSROOT)\dest\$(SYS_NAME)
34 WIXCYGOPT=-dCygwinArchives
42 NTMAKE = nmake /nologo /f ntmakefile install
43 NTMAKELANG = nmake /nologo /f ntmakefile en_US
44 NTMAKE_HEADERS = nmake /nologo /f ntmakefile install_headers
45 NTMAKE_OBJS = nmake /nologo /f ntmakefile install_objs
47 #debug statement support jumping to last known error
48 DOCD=$(SRC)\DOLASTCMP.BAT
57 procmgmt_headers: config
59 $(DOCD) $(SRC)\procmgmt
66 $(DOCD) $(SRC)\WINNT\afsreg
67 $(CD) $(SRC)\WINNT\afsreg
94 $(DOCD) $(SRC)\WINNT\$@
99 util: procmgmt_headers afsreg_headers lwp_headers rx_headers pthread
129 $(DOCD) $(SRC)\WINNT\$@
130 $(CD) $(SRC)\WINNT\$@
136 $(DOCD) $(SRC)\WINNT\$@
137 $(CD) $(SRC)\WINNT\$@
176 ubik_headers: rxdebug
220 $(DOCD) $(SRC)\WINNT\client_osi
221 $(CD) $(SRC)\WINNT\client_osi
225 libacl_headers: osi_headers
227 $(DOCD) $(SRC)\libacl
232 cm_headers: libacl_headers
234 $(DOCD) $(SRC)\WINNT\afsd
235 $(CD) $(SRC)\WINNT\afsd
239 auth_headers: cm_headers
246 vlserver_headers: auth_headers
248 $(DOCD) $(SRC)\vlserver
249 $(CD) $(SRC)\vlserver
253 afsdobjs: vlserver_headers
255 $(DOCD) $(SRC)\WINNT\afsd
256 $(CD) $(SRC)\WINNT\afsd
394 $(DOCD) $(SRC)\WINNT\$@
395 $(CD) $(SRC)\WINNT\$@
413 libafsauthent: libafsrpc
420 tviced: libafsauthent
443 $(DOCD) $(SRC)\WINNT\$@
444 $(CD) $(SRC)\WINNT\$@
450 $(DOCD) $(SRC)\WINNT\$@
451 $(CD) $(SRC)\WINNT\$@
457 $(DOCD) $(SRC)\WINNT\$@
458 $(CD) $(SRC)\WINNT\$@
464 $(DOCD) $(SRC)\WINNT\$@
465 $(CD) $(SRC)\WINNT\$@
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\$@
507 $(CD) $(SRC)\libadmin\$@
513 $(DOCD) $(SRC)\libadmin\$@
514 $(CD) $(SRC)\libadmin\$@
520 $(DOCD) $(SRC)\libadmin\$@
521 $(CD) $(SRC)\libadmin\$@
527 $(DOCD) $(SRC)\libadmin\test
528 $(CD) $(SRC)\libadmin\test
534 $(DOCD) $(SRC)\WINNT\$@
535 $(CD) $(SRC)\WINNT\$@
541 $(DOCD) $(SRC)\WINNT\$@
542 $(CD) $(SRC)\WINNT\$@
548 $(DOCD) $(SRC)\WINNT\$@
549 $(CD) $(SRC)\WINNT\$@
555 $(DOCD) $(SRC)\WINNT\$@
556 $(CD) $(SRC)\WINNT\$@
562 $(DOCD) $(SRC)\WINNT\$@
563 $(CD) $(SRC)\WINNT\$@
567 client_talocale: afssvrcpa
569 $(DOCD) $(SRC)\WINNT\talocale
570 $(CD) $(SRC)\WINNT\talocale
574 client_cpa: client_talocale
576 $(DOCD) $(SRC)\WINNT\$@
577 $(CD) $(SRC)\WINNT\$@
581 client_config: client_cpa
583 $(DOCD) $(SRC)\WINNT\$@
584 $(CD) $(SRC)\WINNT\$@
588 client_exp: client_config
590 $(DOCD) $(SRC)\WINNT\$@
591 $(CD) $(SRC)\WINNT\$@
595 client_creds: client_exp
597 $(DOCD) $(SRC)\WINNT\$@
598 $(CD) $(SRC)\WINNT\$@
604 $(DOCD) $(SRC)\WINNT\$@
605 $(CD) $(SRC)\WINNT\$@
616 netidmgr_plugin: xstat
618 $(DOCD) $(SRC)\WINNT\$@
619 $(CD) $(SRC)\WINNT\$@
623 rpctestlib: fsint libafsrpc
630 extra: netidmgr_plugin rpctestlib
631 ! IF EXIST($(SRC)\WINNT\extra) && EXIST($(SRC)\WINNT\extra\NTMakefile)
633 $(DOCD) $(SRC)\WINNT\$@
634 $(CD) $(SRC)\WINNT\$@
638 @echo ***** Skipping $@ ***** Not found.
649 @echo Build Finished Successfully
652 # Clean target for obj tree
655 nmake /nologo /f ntmakefile version
657 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
659 nmake /nologo /f ntmakefile clean_version
662 # Language-only build target
664 nmake /nologo /f ntmakefile "NTMAKE = nmake /nologo /f ntmakefile lang" "NTMAKE_HEADERS = nmake /nologo /f ntmakefile lang" install
669 -mkdir $(AFS_OBJDIR)\checked
670 -mkdir $(AFS_OBJDIR)\free
671 -xcopy /q /t /e $(SRC)\*.* $(AFS_OBJDIR)\checked\
672 -xcopy /q /t /e $(SRC)\*.* $(AFS_OBJDIR)\free\
673 -mkdir $(DESTDIR)\checked
674 -mkdir $(DESTDIR)\free
675 -mkdir $(DESTDIR)\checked\bin
676 -mkdir $(DESTDIR)\free\bin
677 -@copy $(SRC)\config\NTLANG.BAT .
680 @echo ***** Making Loopback Adapter Utility DLL
681 $(DOCD) $(SRC)\WINNT\install\$@
682 $(CD) $(SRC)\WINNT\install\$@
688 $(DOCD) $(DOC)\man-pages
689 $(CD) $(DOC)\man-pages
693 documentation: config
695 $(DOCD) $(DOC)\xml\ReleaseNotesWindows
696 $(CD) $(DOC)\xml\ReleaseNotesWindows
701 $(DOCD) ..\AdminGuide
707 NSIS.i386: loopback man-pages documentation
708 @echo ***** Making NSIS Installer
709 $(DOCD) $(SRC)\WINNT\install\NSIS
710 $(CD) $(SRC)\WINNT\install\NSIS
715 @echo Skipping NSIS Installer on non-x86 platforms; not implemented
719 wix: loopback man-pages documentation
720 @echo ***** Making Wix MSI Installer
721 $(DOCD) $(SRC)\WINNT\install\$@
722 $(CD) $(SRC)\WINNT\install\$@
726 wix-lite: loopback man-pages documentation
727 @echo ***** Making Wix MSI Installer (Lite)
728 $(DOCD) $(SRC)\WINNT\install\wix
729 $(CD) $(SRC)\WINNT\install\wix
730 $(NTMAKE) LITECLIENT=1
733 media: install NSIS wix
735 install-nsis: install NSIS
737 install-wix: install wix
739 install-wix-lite: install wix-lite