# This is a pthread safe library containing ubikclient, auth, kauth.
-AFSDEV_AUXCDEFINES = -DAFS_PTHREAD_ENV
+AFSDEV_AUXCDEFINES = $(AFSDEV_AUXCDEFINES) -DAFS_PTHREAD_ENV -I$(DESTDIR)\include\afs \
+ -I$(DESTDIR)\include\rx
+RELDIR=libafsauthent
!include ..\config\NTMakefile.$(SYS_NAME)
!include ..\config\NTMakefile.version
AUDIT = ..\audit
AUTH = ..\auth
KAUTH = ..\kauth
-UBIK = ..\ubik
-UTIL = ..\util
RXKAD = ..\rxkad
PTSERVER = ..\ptserver
SYS = ..\sys
WINNTAFSD = ..\WINNT\afsd
+RX = ..\rx
LIBFILE = $(DESTDIR)\lib\afsauthent.dll
-AUDITOBJS = audit.obj
+RXOBJS = $(OUT)\xdr_int32.obj $(OUT)\xdr_int64.obj
+
+AUDITOBJS = \
+ $(OUT)\audit.obj \
+ $(OUT)\audit-file.obj
AUTHOBJS = \
- cellconfig.obj \
- userok.obj \
- writeconfig.obj \
- authcon.obj \
- ktc_errors.obj \
- ktc_nt.obj \
- acfg_errors.obj
+ $(OUT)\cellconfig.obj \
+ $(OUT)\userok.obj \
+ $(OUT)\authcon.obj \
+ $(OUT)\realms.obj \
+ $(OUT)\ktc_errors.obj \
+ $(OUT)\ktc_nt.obj \
+ $(OUT)\keys.obj \
+ $(OUT)\token.obj \
+ $(OUT)\token.xdr.obj \
+ $(OUT)\acfg_errors.obj \
+ $(OUT)\netrestrict.obj
KAUTHOBJS = \
- kauth.xdr.obj \
- kauth.cs.obj \
- kaaux.obj \
- client.obj \
- authclient.obj \
- token.obj \
- kautils.obj \
- kalocalcell.obj \
- kaerrors.obj \
- user_nt.obj
-
-UBIKOBJS = \
- ubikclient.obj \
- uerrors.obj \
- ubik_int.cs.obj \
- ubik_int.xdr.obj
-
-UTILOBJS = \
- pthread_glock.obj \
- get_krbrlm.obj \
- casestrcpy.obj \
- fileutil.obj \
- dirpath.obj \
- readdir_nt.obj
+ $(OUT)\kauth.xdr.obj \
+ $(OUT)\kauth.cs.obj \
+ $(OUT)\kaaux.obj \
+ $(OUT)\client.obj \
+ $(OUT)\crypt.obj \
+ $(OUT)\authclient.obj \
+ $(OUT)\kautils.obj \
+ $(OUT)\kalocalcell.obj \
+ $(OUT)\kaerrors.obj \
+ $(OUT)\user_nt.obj \
+ $(OUT)\katoken.obj
RXKADOBJS = \
- rxkad_errs.obj
+ $(OUT)\rxkad_errs.obj
PTSERVEROBJS = \
- ptclient.obj \
- ptint.cs.obj \
- ptint.xdr.obj \
- ptuser.obj \
- display.obj \
- pterror.obj
+ $(OUT)\ptint.cs.obj \
+ $(OUT)\ptint.xdr.obj \
+ $(OUT)\ptuser.obj \
+ $(OUT)\display.obj \
+ $(OUT)\pterror.obj
SYSOBJS = \
- pioctl_nt.obj
+ $(OUT)\pioctl_nt.obj
WINNTAFSDOBJS =\
- cm_config.obj \
- afsrpc_c.obj
+ $(OUT)\afsrpc_$(CPU)_c.obj
DLLOBJS =\
$(AUTHOBJS) \
$(KAUTHOBJS) \
- $(UBIKOBJS) \
- $(UTILOBJS) \
$(RXKADOBJS) \
$(PTSERVEROBJS) \
$(SYSOBJS) \
$(WINNTAFSDOBJS) \
$(AUDITOBJS) \
- afsauthent.res
-
-audit.obj: $(AUDIT)\audit.c
- $(C2OBJ) $(AUDIT)\audit.c
-
-cellconfig.obj: $(AUTH)\cellconfig.c
- $(C2OBJ) $(AUTH)\cellconfig.c
-
-userok.obj: $(AUTH)\userok.c
- $(C2OBJ) $(AUTH)\userok.c
-
-writeconfig.obj: $(AUTH)\writeconfig.c
- $(C2OBJ) $(AUTH)\writeconfig.c
-
-authcon.obj: $(AUTH)\authcon.c
- $(C2OBJ) $(AUTH)\authcon.c
-
-ktc_errors.obj: $(AUTH)\ktc_errors.c
- $(C2OBJ) $(AUTH)\ktc_errors.c
-
-acfg_errors.obj: $(AUTH)\acfg_errors.c
- $(C2OBJ) $(AUTH)\acfg_errors.c
-
-kauth.xdr.obj: $(KAUTH)\kauth.xdr.c
- $(C2OBJ) $(KAUTH)\kauth.xdr.c
-
-kauth.cs.obj: $(KAUTH)\kauth.cs.c
- $(C2OBJ) $(KAUTH)\kauth.cs.c
-
-kaaux.obj: $(KAUTH)\kaaux.c
- $(C2OBJ) $(KAUTH)\kaaux.c
-
-client.obj: $(KAUTH)\client.c
- $(C2OBJ) $(KAUTH)\client.c
-
-authclient.obj: $(KAUTH)\authclient.c
- $(C2OBJ) $(KAUTH)\authclient.c
-
-token.obj: $(KAUTH)\token.c
- $(C2OBJ) $(KAUTH)\token.c
-
-kautils.obj: $(KAUTH)\kautils.c
- $(C2OBJ) $(KAUTH)\kautils.c
-
-kalocalcell.obj: $(KAUTH)\kalocalcell.c
- $(C2OBJ) $(KAUTH)\kalocalcell.c
-
-kaerrors.obj: $(KAUTH)\kaerrors.c
- $(C2OBJ) $(KAUTH)\kaerrors.c
-
-ktc_nt.obj: $(AUTH)\ktc_nt.c
- $(C2OBJ) $(AUTH)\ktc_nt.c
+ $(OUT)\afsauthent.res
-user_nt.obj: $(KAUTH)\user_nt.c
- $(C2OBJ) $(KAUTH)\user_nt.c
+$(RXOBJS): $(RX)\$$(@B).c
+ $(C2OBJ) -I$(RX) $**
-ubikclient.obj: $(UBIK)\ubikclient.c
- $(C2OBJ) $(UBIK)\ubikclient.c
+$(AUTHOBJS): $(AUTH)\$$(@B).c
+ $(C2OBJ) -I$(AUTH) $**
-uerrors.obj: $(UBIK)\uerrors.c
- $(C2OBJ) $(UBIK)\uerrors.c
+$(KAUTHOBJS): $(KAUTH)\$$(@B).c
+ $(C2OBJ) -I$(KAUTH) $**
-ubik_int.cs.obj: $(UBIK)\ubik_int.cs.c
- $(C2OBJ) $(UBIK)\ubik_int.cs.c
+$(RXKADOBJS): $(RXKAD)\$$(@B).c
+ $(C2OBJ) -I$(RXKAD) $**
-ubik_int.xdr.obj: $(UBIK)\ubik_int.xdr.c
- $(C2OBJ) $(UBIK)\ubik_int.xdr.c
+$(PTSERVEROBJS): $(PTSERVER)\$$(@B).c
+ $(C2OBJ) -I$(PTSERVER) $**
-get_krbrlm.obj: $(UTIL)\get_krbrlm.c
- $(C2OBJ) $(UTIL)\get_krbrlm.c
+$(WINNTAFSDOBJS): $(WINNTAFSD)\$$(@B).c
+ $(C2OBJ) -I$(WINNTAFSD) $**
-dirpath.obj: $(UTIL)\dirpath.c
- $(C2OBJ) $(UTIL)\dirpath.c
+$(AUDITOBJS): $(AUDIT)\$$(@B).c
+ $(C2OBJ) -I$(AUDIT) $**
-fileutil.obj: $(UTIL)\fileutil.c
- $(C2OBJ) $(UTIL)\fileutil.c
-
-readdir_nt.obj: $(UTIL)\readdir_nt.c
- $(C2OBJ) $(UTIL)\readdir_nt.c
-
-casestrcpy.obj: $(UTIL)\casestrcpy.c
- $(C2OBJ) $(UTIL)\casestrcpy.c
-
-pthread_glock.obj: $(UTIL)\pthread_glock.c
- $(C2OBJ) $(UTIL)\pthread_glock.c
-
-rxkad_errs.obj: $(RXKAD)\rxkad_errs.c
- $(C2OBJ) $(RXKAD)\rxkad_errs.c
-
-ptclient.obj: $(PTSERVER)\ptclient.c
- $(C2OBJ) $(PTSERVER)\ptclient.c
-
-ptuser.obj: $(PTSERVER)\ptuser.c
- $(C2OBJ) $(PTSERVER)\ptuser.c
-
-display.obj: $(PTSERVER)\display.c
- $(C2OBJ) $(PTSERVER)\display.c
-
-ptint.cs.obj: $(PTSERVER)\ptint.cs.c
- $(C2OBJ) $(PTSERVER)\ptint.cs.c
-
-ptint.xdr.obj: $(PTSERVER)\ptint.xdr.c
- $(C2OBJ) $(PTSERVER)\ptint.xdr.c
-
-pterror.obj: $(PTSERVER)\pterror.c
- $(C2OBJ) $(PTSERVER)\pterror.c
-
-pioctl_nt.obj: $(SYS)\pioctl_nt.c
- $(C2OBJ) $(SYS)\pioctl_nt.c
-
-afsrpc_c.obj: $(WINNTAFSD)\afsrpc_c.c
- $(C2OBJ) $(WINNTAFSD)\afsrpc_c.c
-
-cm_config.obj: $(WINNTAFSD)\cm_config.c
- $(C2OBJ) $(WINNTAFSD)\cm_config.c
-
-install: $(DESTDIR)\lib\afsauthent.dll
+$(SYSOBJS): $(SYS)\$$(@B).c
+ $(C2OBJ) -I$(SYS) $**
DLLLIBS =\
- $(DESTDIR)\lib\pthread.lib \
+ $(DESTDIR)\lib\afs\mtafsubik.lib \
+ $(DESTDIR)\lib\afspthread.lib \
$(DESTDIR)\lib\afsrpc.lib \
- $(DESTDIR)\lib\afsdes.lib \
- $(DESTDIR)\lib\afs\afsutil.lib \
+ $(DESTDIR)\lib\afs\mtafsutil.lib \
$(DESTDIR)\lib\afs\afsreg.lib \
- $(DESTDIR)\lib\afs\afseventlog.lib
-
-$(DESTDIR)\lib\afsauthent.dll: $(DLLOBJS) $(DLLLIBS)
- $(DLLCONLINK) /DEF:afsauthent.def rpcrt4.lib
+ $(DESTDIR)\lib\afs\afseventlog.lib \
+ $(DESTDIR)\lib\afs\afsprocmgmt.lib \
+ $(DESTDIR)\lib\afslwp.lib \
+ $(DESTDIR)\lib\lanahelper.lib \
+ $(DESTDIR)\lib\libafsconf.lib \
+ $(DESTDIR)\lib\opr.lib \
+ $(DESTDIR)\lib\afshcrypto.lib \
+ $(DESTDIR)\lib\afsroken.lib
+
+$(LIBFILE): $(DLLOBJS) $(DLLLIBS) $(RXOBJS)
+ $(DLLCONLINK) /DEF:afsauthent.def rpcrt4.lib dnsapi.lib mpr.lib secur32.lib shell32.lib
+ $(_VC_MANIFEST_EMBED_DLL)
$(DLLPREP)
+ $(CODESIGN_USERLAND)
+ $(SYMSTORE_IMPORT)
+ $(MAKECYGLIB) --input-def afsauthent.def
# Definitions for generating versioninfo resources
-afsauthent.res: afsauthent.rc AFS_component_version_number.h
- $(RC) $*.rc
+$(OUT)\afsauthent.res: AFS_component_version_number.h
+
+install: $(LIBFILE)
+
+clean ::
+ $(DEL) $(LIBFILE)
+
+mkdir: