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.
21 NTMAKE = nmake /nologo /f ntmakefile install9x
22 NTMAKELANG = nmake /nologo /f ntmakefile en_install
23 NTMAKE_HEADERS = nmake /nologo /f ntmakefile install_headers
24 NTMAKE_LIBUTILS = nmake /nologo /f ntmakefile install_libutils
28 # Standard install directory.
30 DESTDIR = $(AFSDEV_DESTDIR)
32 DESTDIR = $(AFSROOT)\DEST
38 ! ERROR Execute nmake from directory above src, e.g., afs\3.5.
40 ! IF (!EXIST($(DESTDIR)))
50 procmgmt_headers: config
56 afsreg_headers: config
58 $(CD) $(OBJ)\WINNT\afsreg
62 util: procmgmt_headers afsreg_headers
106 ! IF (EXIST($(OBJ)\des\NTMakefile))
111 $(CD) $(OBJ)\des_stub
136 $(CD) $(OBJ)\WINNT\$@
160 $(CD) $(OBJ)\WINNT\client_osi
164 libacl_headers: osi_headers
170 cm_headers: libacl_headers
172 $(CD) $(OBJ)\WINNT\afsd
184 $(CD) $(OBJ)\WINNT\afsd
236 libafsauthent: libafsrpc
242 libadmin: libafsauthent
248 client_talocale: libadmin
250 $(CD) $(OBJ)\WINNT\talocale
254 client_osi: client_talocale
256 $(CD) $(OBJ)\WINNT\$@
262 $(CD) $(OBJ)\WINNT\$@
268 $(CD) $(OBJ)\WINNT\$@
272 client_config: client_cpa
274 $(CD) $(OBJ)\WINNT\$@
278 client_exp: client_config
280 $(CD) $(OBJ)\WINNT\$@
285 #Leave last echo in - it helps the build reconize the last $(CD)
288 $(CD) $(OBJ)\WINNT\$@
291 echo ***** End of Build
293 install: start client_exp win9xpanel
297 # InstallShield dependencies
299 #Leave last echo in - it helps the build reconize the last $(CD)
301 echo ***** afs_setup_utils
302 $(CD) $(OBJ)\WINNT\afs_setup_utils
303 nmake -f ntmakefile install
306 $(CD) $(OBJ)\WINNT\install\Win9x
307 nmake /nologo /f NTMakefile isinstall
309 eho **** End of Install Scripts
313 # Clean target for obj tree
314 # Fake the version copy so clean will go through the complete cycle with undefines
316 if not exist .\src\config\NTMakefile.version copy .\src\config\NTMakefile.version-NOCML .\src\config\NTMakefile.version
317 nmake /nologo /f ntmake9x "NTMAKE = nmake /nologo /f ntmakefile clean" "NTMAKE_HEADERS = nmake /nologo /f ntmakefile clean" "NTMAKE_LIBUTILS = nmake /nologo /f ntmakefile clean" install
318 $(CD) $(OBJ)\WINNT\install\Win9x
319 nmake /nologo /f NTMakefile clean
321 $(DESTDIR)\BIN\rmbat $(DESTDIR)\include\*.* $(DESTDIR)\include\afs\*.* $(DESTDIR)\include\WINNT\*.* $(DESTDIR)\include\rx\*.*
322 $(DESTDIR)\BIN\rmbat $(DESTDIR)\LIB\*.LIB $(DESTDIR)\LIB\*.DLL $(DESTDIR)\LIB\AFS\*.LIB
323 $(DESTDIR)\BIN\rmbat $(DESTDIR)\root.client\usr\vice\etc\*.*
325 nmake /nologo /f ntmakefile clean_version
327 echo **** End of Clean
329 # Language-only build target
331 nmake /nologo /f ntmakefile "NTMAKE = nmake /nologo /f ntmakefile lang" "NTMAKE_HEADERS = nmake /nologo /f ntmakefile lang" install