# appropriately; if the new directory is the last in the chain, then
# update the 'finale' dependency to be the new directory.
+# These three macros define the source, object, and destination folders
-CD = cd
-NTMAKE = nmake /nologo /f ntmakefile install
-NTMAKE_HEADERS = nmake /nologo /f ntmakefile install_headers
-MKDIR = mkdir
-
-# Standard install directory.
-!IFDEF AFSDEV_DESTDIR
-DESTDIR = $(AFSDEV_DESTDIR)
+SRC=src
+#If AFS_OBJDIR is not defined then use obj as relative obj folder
+!IFDEF AFS_OBJDIR
+DESTDIR=$(AFS_OBJDIR)\dest
!ELSE
-DESTDIR = $(AFSROOT)\DEST
+DESTDIR=obj\dest
+AFS_OBJDIR=obj
!ENDIF
+CD = cd
+NTMAKE = nmake /nologo /f ntmakefile install
+NTMAKELANG = nmake /nologo /f ntmakefile en_US
+NTMAKE_HEADERS = nmake /nologo /f ntmakefile install_headers
+NTMAKE_OBJS = nmake /nologo /f ntmakefile install_objs
+MKDIR = mkdir
-start:
-! IF (!EXIST(src))
-! ERROR Execute nmake from directory above src, e.g., afs\3.5.
-! ENDIF
-! IF (!EXIST($(DESTDIR)))
- $(MKDIR) $(DESTDIR)
-! ENDIF
+#debug statement support jumping to last know error
+DOCD=src\DOLASTCMP.BAT
config:
- $(CD) src\$@
+ echo ***** $@
+ $(DOCD) $(SRC)\config
+ $(CD) $(SRC)\config
$(NTMAKE)
$(CD) ..\..
-procmgmt_headers: config
- $(CD) src\procmgmt
+procmgmt_headers:config
+ echo ***** $@
+ $(DOCD) $(SRC)\procmgmt
+ $(CD) $(SRC)\procmgmt
$(NTMAKE_HEADERS)
$(CD) ..\..
-afsreg_headers: config
- $(CD) src\WINNT\afsreg
+afsreg_headers:
+ echo ***** $@
+ $(DOCD) $(SRC)\WINNT\afsreg
+ $(CD) $(SRC)\WINNT\afsreg
$(NTMAKE_HEADERS)
$(CD) ..\..\..
util: procmgmt_headers afsreg_headers
- $(CD) src\$@
+ echo ***** $@
+ $(DOCD) $(SRC)\$@
+ $(CD) $(SRC)\$@
$(NTMAKE)
$(CD) ..\..
comerr: util
- $(CD) src\$@
+ echo ***** $@
+ $(DOCD) $(SRC)\$@
+ $(CD) $(SRC)\$@
$(NTMAKE)
$(CD) ..\..
cmd: comerr
- $(CD) src\$@
+ echo ***** $@
+ $(DOCD) $(SRC)\$@
+ $(CD) $(SRC)\$@
$(NTMAKE)
$(CD) ..\..
afsreg: cmd
- $(CD) src\WINNT\$@
+ echo ***** $@
+ $(DOCD) $(SRC)\WINNT\$@
+ $(CD) $(SRC)\WINNT\$@
$(NTMAKE)
$(CD) ..\..\..
eventlog: afsreg
- $(CD) src\WINNT\$@
+ echo ***** $@
+ $(DOCD) $(SRC)\WINNT\$@
+ $(CD) $(SRC)\WINNT\$@
$(NTMAKE)
$(CD) ..\..\..
lwp: eventlog
- $(CD) src\$@
+ echo ***** $@
+ $(DOCD) $(SRC)\$@
+ $(CD) $(SRC)\$@
$(NTMAKE)
$(CD) ..\..
rxgen: lwp
- $(CD) src\$@
+ echo ***** $@
+ $(DOCD) $(SRC)\$@
+ $(CD) $(SRC)\$@
$(NTMAKE)
$(CD) ..\..
des: rxgen
-! IF (EXIST(src\des\NTMakefile))
- $(CD) src\des
+ echo ***** $@
+! IF (EXIST($(SRC)\des\NTMakefile))
+ $(DOCD) $(SRC)\des
+ $(CD) $(SRC)\des
$(NTMAKE)
$(CD) ..\..
! ELSE
- $(CD) src\des_stub
+ $(DOCD) $(SRC)\des_stub
+ $(CD) $(SRC)\des_stub
$(NTMAKE)
$(CD) ..\..
! ENDIF
rx: des
- $(CD) src\$@
+ echo ***** $@
+ $(DOCD) $(SRC)\$@
+ $(CD) $(SRC)\$@
$(NTMAKE)
$(CD) ..\..
rxstat: rx
- $(CD) src\$@
+ echo ***** $@
+ $(DOCD) $(SRC)\$@
+ $(CD) $(SRC)\$@
$(NTMAKE)
$(CD) ..\..
rxkad: rxstat
- $(CD) src\$@
+ echo ***** $@
+ $(DOCD) $(SRC)\$@
+ $(CD) $(SRC)\$@
$(NTMAKE)
$(CD) ..\..
pthread: rxkad
- $(CD) src\WINNT\$@
+ echo ***** $@
+ $(DOCD) $(SRC)\WINNT\$@
+ $(CD) $(SRC)\WINNT\$@
$(NTMAKE)
$(CD) ..\..\..
procmgmt: pthread
- $(CD) src\$@
+ echo ***** $@
+ $(DOCD) $(SRC)\$@
+ $(CD) $(SRC)\$@
$(NTMAKE)
$(CD) ..\..
fsint: procmgmt
- $(CD) src\$@
+ echo ***** $@
+ $(DOCD) $(SRC)\$@
+ $(CD) $(SRC)\$@
$(NTMAKE)
$(CD) ..\..
audit: fsint
- $(CD) src\$@
+ echo ***** $@
+ $(DOCD) $(SRC)\$@
+ $(CD) $(SRC)\$@
$(NTMAKE)
$(CD) ..\..
osi_headers: audit
- $(CD) src\WINNT\client_osi
+ echo ***** $@
+ $(DOCD) $(SRC)\WINNT\client_osi
+ $(CD) $(SRC)\WINNT\client_osi
$(NTMAKE_HEADERS)
$(CD) ..\..\..
libacl_headers: osi_headers
- $(CD) src\libacl
+ echo ***** $@
+ $(DOCD) $(SRC)\libacl
+ $(CD) $(SRC)\libacl
$(NTMAKE_HEADERS)
$(CD) ..\..
cm_headers: libacl_headers
- $(CD) src\WINNT\afsd
+ echo ***** $@
+ $(DOCD) $(SRC)\WINNT\afsd
+ $(CD) $(SRC)\WINNT\afsd
$(NTMAKE_HEADERS)
$(CD) ..\..\..
sys: cm_headers
- $(CD) src\$@
+ echo ***** $@
+ $(DOCD) $(SRC)\$@
+ $(CD) $(SRC)\$@
$(NTMAKE)
$(CD) ..\..
-auth: sys
- $(CD) src\$@
+afsdobjs: sys
+ echo ***** $@
+ $(DOCD) $(SRC)\WINNT\afsd
+ $(CD) $(SRC)\WINNT\afsd
+ $(NTMAKE_OBJS)
+ $(CD) ..\..\..
+
+auth: afsdobjs
+ echo ***** $@
+ $(DOCD) $(SRC)\$@
+ $(CD) $(SRC)\$@
$(NTMAKE)
$(CD) ..\..
ubik: auth
- $(CD) src\$@
+ echo ***** $@
+ $(DOCD) $(SRC)\$@
+ $(CD) $(SRC)\$@
$(NTMAKE)
$(CD) ..\..
ptserver: ubik
- $(CD) src\$@
+ echo ***** $@
+ $(DOCD) $(SRC)\$@
+ $(CD) $(SRC)\$@
$(NTMAKE)
$(CD) ..\..
libacl: ptserver
- $(CD) src\$@
+ echo ***** $@
+ $(DOCD) $(SRC)\$@
+ $(CD) $(SRC)\$@
$(NTMAKE)
$(CD) ..\..
kauth: libacl
- $(CD) src\$@
+ echo ***** $@
+ $(DOCD) $(SRC)\$@
+ $(CD) $(SRC)\$@
$(NTMAKE)
$(CD) ..\..
vlserver: kauth
- $(CD) src\$@
+ echo ***** $@
+ $(DOCD) $(SRC)\$@
+ $(CD) $(SRC)\$@
$(NTMAKE)
$(CD) ..\..
usd: vlserver
- $(CD) src\$@
+ echo ***** $@
+ $(DOCD) $(SRC)\$@
+ $(CD) $(SRC)\$@
$(NTMAKE)
$(CD) ..\..
bubasics: usd
- $(CD) src\$@
+ echo ***** $@
+ $(DOCD) $(SRC)\$@
+ $(CD) $(SRC)\$@
$(NTMAKE)
$(CD) ..\..
budb: bubasics
- $(CD) src\$@
+ echo ***** $@
+ $(DOCD) $(SRC)\$@
+ $(CD) $(SRC)\$@
$(NTMAKE)
$(CD) ..\..
butm: budb
- $(CD) src\$@
- $(NTMAKE)
- $(CD) ..\..
+ echo ***** $@
+ $(DOCD) $(SRC)\$@
+ $(CD) $(SRC)\$@
+ $(NTMAKE)
+ $(CD) ..\..
dir: butm
- $(CD) src\$@
+ echo ***** $@
+ $(DOCD) $(SRC)\$@
+ $(CD) $(SRC)\$@
$(NTMAKE)
$(CD) ..\..
vol: dir
- $(CD) src\$@
+ echo ***** $@
+ $(DOCD) $(SRC)\$@
+ $(CD) $(SRC)\$@
$(NTMAKE)
$(CD) ..\..
volser: vol
- $(CD) src\$@
+ echo ***** $@
+ $(DOCD) $(SRC)\$@
+ $(CD) $(SRC)\$@
$(NTMAKE)
$(CD) ..\..
viced: volser
- $(CD) src\$@
+ echo ***** $@
+ $(DOCD) $(SRC)\$@
+ $(CD) $(SRC)\$@
$(NTMAKE)
$(CD) ..\..
update: viced
- $(CD) src\$@
+ echo ***** $@
+ $(DOCD) $(SRC)\$@
+ $(CD) $(SRC)\$@
$(NTMAKE)
$(CD) ..\..
bucoord: update
- $(CD) src\$@
- $(NTMAKE)
- $(CD) ..\..
+ echo ***** $@
+ $(DOCD) $(SRC)\$@
+ $(CD) $(SRC)\$@
+ $(NTMAKE)
+ $(CD) ..\..
butc: bucoord
- $(CD) src\$@
- $(NTMAKE)
- $(CD) ..\..
+ echo ***** $@
+ $(DOCD) $(SRC)\$@
+ $(CD) $(SRC)\$@
+ $(NTMAKE)
+ $(CD) ..\..
bozo: butc
- $(CD) src\$@
+ echo ***** $@
+ $(DOCD) $(SRC)\$@
+ $(CD) $(SRC)\$@
$(NTMAKE)
$(CD) ..\..
bosctlsvc: bozo
- $(CD) src\WINNT\$@
+ echo ***** $@
+ $(DOCD) $(SRC)\WINNT\$@
+ $(CD) $(SRC)\WINNT\$@
$(NTMAKE)
$(CD) ..\..\..
bu_utils: bosctlsvc
- $(CD) src\$@
+ echo ***** $@
+ $(DOCD) $(SRC)\$@
+ $(CD) $(SRC)\$@
$(NTMAKE)
$(CD) ..\..
libafsrpc: bu_utils
- $(CD) src\$@
+ echo ***** $@
+ $(DOCD) $(SRC)\$@
+ $(CD) $(SRC)\$@
$(NTMAKE)
$(CD) ..\..
libafsauthent: libafsrpc
- $(CD) src\$@
+ echo ***** $@
+ $(DOCD) $(SRC)\$@
+ $(CD) $(SRC)\$@
$(NTMAKE)
$(CD) ..\..
tviced: libafsauthent
- $(CD) src\$@
+ echo ***** $@
+ $(DOCD) $(SRC)\$@
+ $(CD) $(SRC)\$@
$(NTMAKE)
$(CD) ..\..
tbutc: tviced
- $(CD) src\$@
- $(NTMAKE)
- $(CD) ..\..
+ echo ***** $@
+ $(DOCD) $(SRC)\$@
+ $(CD) $(SRC)\$@
+ $(NTMAKE)
+ $(CD) ..\..
libadmin: tbutc
- $(CD) src\$@
+ echo ***** $@
+ $(DOCD) $(SRC)\$@
+ $(CD) $(SRC)\$@
$(NTMAKE)
$(CD) ..\..
-
+
adminutil: libadmin
- $(CD) src\libadmin\$@
+ echo ***** $@
+ $(DOCD) $(SRC)\libadmin\$@
+ $(CD) $(SRC)\libadmin\$@
$(NTMAKE)
$(CD) ..\..\..
-
+
vos: adminutil
- $(CD) src\libadmin\$@
+ echo ***** $@
+ $(DOCD) $(SRC)\libadmin\$@
+ $(CD) $(SRC)\libadmin\$@
$(NTMAKE)
$(CD) ..\..\..
-
+
client: vos
- $(CD) src\libadmin\$@
+ echo ***** $@
+ $(DOCD) $(SRC)\libadmin\$@
+ $(CD) $(SRC)\libadmin\$@
$(NTMAKE)
$(CD) ..\..\..
-
+
kas: client
- $(CD) src\libadmin\$@
+ echo ***** $@
+ $(DOCD) $(SRC)\libadmin\$@
+ $(CD) $(SRC)\libadmin\$@
$(NTMAKE)
$(CD) ..\..\..
-
+
pts: kas
- $(CD) src\libadmin\$@
+ echo ***** $@
+ $(DOCD) $(SRC)\libadmin\$@
+ $(CD) $(SRC)\libadmin\$@
$(NTMAKE)
$(CD) ..\..\..
-
+
bos: pts
- $(CD) src\libadmin\$@
+ echo ***** $@
+ $(DOCD) $(SRC)\libadmin\$@
+ $(CD) $(SRC)\libadmin\$@
$(NTMAKE)
$(CD) ..\..\..
cfg: bos
- $(CD) src\libadmin\$@
+ echo ***** $@
+ $(DOCD) $(SRC)\libadmin\$@
+ $(CD) $(SRC)\libadmin\$@
$(NTMAKE)
$(CD) ..\..\..
admintest: cfg
- $(CD) src\libadmin\test
+ echo ***** $@
+ $(DOCD) $(SRC)\libadmin\test
+ $(CD) $(SRC)\libadmin\test
$(NTMAKE)
$(CD) ..\..\..
talocale: admintest
- $(CD) src\WINNT\$@
+ echo ***** $@
+ $(DOCD) $(SRC)\WINNT\$@
+ $(CD) $(SRC)\WINNT\$@
$(NTMAKE)
$(CD) ..\..\..
license: talocale
- $(CD) src\WINNT\$@
+ echo ***** $@
+ $(DOCD) $(SRC)\WINNT\$@
+ $(CD) $(SRC)\WINNT\$@
$(NTMAKE)
$(CD) ..\..\..
afsadmsvr: license
- $(CD) src\WINNT\$@
+ echo ***** $@
+ $(DOCD) $(SRC)\WINNT\$@
+ $(CD) $(SRC)\WINNT\$@
$(NTMAKE)
$(CD) ..\..\..
afsusrmgr: afsadmsvr
- $(CD) src\WINNT\$@
+ echo ***** $@
+ $(DOCD) $(SRC)\WINNT\$@
+ $(CD) $(SRC)\WINNT\$@
$(NTMAKE)
$(CD) ..\..\..
afssvrmgr: afsusrmgr
- $(CD) src\WINNT\$@
+ echo ***** $@
+ $(DOCD) $(SRC)\WINNT\$@
+ $(CD) $(SRC)\WINNT\$@
$(NTMAKE)
$(CD) ..\..\..
afssvrcfg: afssvrmgr
- $(CD) src\WINNT\$@
+ echo ***** $@
+ $(DOCD) $(SRC)\WINNT\$@
+ $(CD) $(SRC)\WINNT\$@
$(NTMAKE)
$(CD) ..\..\..
afssvrcpa: afssvrcfg
- $(CD) src\WINNT\$@
+ echo ***** $@
+ $(DOCD) $(SRC)\WINNT\$@
+ $(CD) $(SRC)\WINNT\$@
$(NTMAKE)
$(CD) ..\..\..
-afs_setup_utils: afssvrcpa
- $(CD) src\WINNT\$@
- $(NTMAKE)
- $(CD) ..\..\..
-
-client_talocale: afs_setup_utils
- $(CD) src\WINNT\talocale
+client_talocale: afssvrcpa
+ echo ***** $@
+ $(DOCD) $(SRC)\WINNT\talocale
+ $(CD) $(SRC)\WINNT\talocale
$(NTMAKE)
$(CD) ..\..\..
client_osi: client_talocale
- $(CD) src\WINNT\$@
+ echo ***** $@
+ $(DOCD) $(SRC)\WINNT\$@
+ $(CD) $(SRC)\WINNT\$@
$(NTMAKE)
$(CD) ..\..\..
afsd: client_osi
- $(CD) src\WINNT\$@
+ echo ***** $@
+ $(DOCD) $(SRC)\WINNT\$@
+ $(CD) $(SRC)\WINNT\$@
$(NTMAKE)
$(CD) ..\..\..
client_cpa: afsd
- $(CD) src\WINNT\$@
+ echo ***** $@
+ $(DOCD) $(SRC)\WINNT\$@
+ $(CD) $(SRC)\WINNT\$@
$(NTMAKE)
$(CD) ..\..\..
client_config: client_cpa
- $(CD) src\WINNT\$@
+ echo ***** $@
+ $(DOCD) $(SRC)\WINNT\$@
+ $(CD) $(SRC)\WINNT\$@
$(NTMAKE)
$(CD) ..\..\..
client_exp: client_config
- $(CD) src\WINNT\$@
+ echo ***** $@
+ $(DOCD) $(SRC)\WINNT\$@
+ $(CD) $(SRC)\WINNT\$@
$(NTMAKE)
$(CD) ..\..\..
client_creds: client_exp
- $(CD) src\WINNT\$@
+ echo ***** $@
+ $(DOCD) $(SRC)\WINNT\$@
+ $(CD) $(SRC)\WINNT\$@
$(NTMAKE)
$(CD) ..\..\..
finale: client_creds
- $(CD) src\$@
+ echo ***** $@
+ $(DOCD) $(SRC)\$@
+ $(CD) $(SRC)\$@
$(NTMAKE)
$(CD) ..\..
+ echo Build Finished Successfully
-install: start finale
+install: finale
# InstallShield dependencies
-InstallShield5: install
- $(CD) src\WINNT\install\$@
+InstallShield5:
+ echo ***** afs_setup_utils
+ $(DOCD) $(SRC)\WINNT\afs_setup_utils
+ $(CD) $(SRC)\WINNT\afs_setup_utils
+ $(NTMAKE)
+ $(CD) ..\..\..
+
+ $(DOCD) $(SRC)\WINNT\install\$@
+ $(CD) $(SRC)\WINNT\install\$@
$(NTMAKE)
$(CD) ..\..\..\..
media: InstallShield5
-
-
-# Clean target for src tree
-clean: start
- nmake /nologo /f ntmakefile "NTMAKE = nmake /nologo /f ntmakefile clean" "NTMAKE_HEADERS = nmake /nologo /f ntmakefile clean" install
- $(CD) src\config
+# Clean target for obj tree
+clean:
+ 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
+ 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
+ $(CD) $(SRC)\config
nmake /nologo /f ntmakefile clean_version
$(CD) ..\..
-
# Language-only build target
lang:
- nmake /nologo /f ntmakefile "NTMAKE = nmake /nologo /f ntmakefile lang" "NTMAKE_HEADERS = nmake /nologo /f ntmakefile lang" install
+ nmake /nologo /f ntmakefile "NTMAKE = nmake /nologo /f ntmakefile lang" "NTMAKE_HEADERS = nmake /nologo /f ntmakefile lang" install
+
+mkdir:
+ -xcopy /q /t /e $(SRC)\*.* $(AFS_OBJDIR)\checked\
+ -xcopy /q /t /e $(SRC)\*.* $(AFS_OBJDIR)\free\
+ -mkdir $(DESTDIR)\checked
+ -mkdir $(DESTDIR)\free
+ -mkdir $(DESTDIR)\checked\bin
+ -mkdir $(DESTDIR)\free\bin
+ -@copy $(SRC)\config\NTLANG.BAT .
+