# This software has been released under the terms of the IBM Public
# License. For details, see the LICENSE file in the top-level source
# directory or online at http://www.openafs.org/dl/license10.html
+#
+# Portions Copyright (c) 2003 Apple Computer, Inc.
-# */
-
-DESTDIR=@DESTDIR@
-SRCDIR=@SRCDIR@
-TOP_SRCDIR=@TOP_SRCDIR@
-SYS_NAME=@AFS_SYSNAME@
+srcdir=@srcdir@
+include @TOP_OBJDIR@/src/config/Makefile.config
-SHELL = /bin/sh
+INCLS=${TOP_INCDIR}/rx/rx.h ${TOP_INCDIR}/rx/xdr.h \
+ ${TOP_INCDIR}/rx/fcrypt.h \
+ rxkad.h rxkad_prototypes.h fcrypt.h v5gen.h \
+ hash.h md4.h md5.h
-include ../config/Makefile.${SYS_NAME}
+OBJS=rxkad_client.o rxkad_server.o rxkad_common.o rxkad_errs.o \
+ fcrypt.o crypt_conn.o ticket.o ticket5.o crc.o \
+ md4.o md5.o
-KERNELDIR = ../libafs/
-UKERNELDIR = ../libuafs/
-COMPILE_ET = ${SRCDIR}/bin/compile_et
+fc_test_OBJS=fc_test.o
-CFLAGS = ${OPTMZ} -I${TOP_SRCDIR}/config -I${SRCDIR}/include ${XCFLAGS}
-INCLS= ${SRCDIR}/include/rx/rx.h ${SRCDIR}/include/rx/xdr.h \
- rxkad.h
+fc_test_LIBS=\
+ ${TOP_LIBDIR}/librxkad.a \
+ ${TOP_LIBDIR}/libdes.a \
+ ${TOP_LIBDIR}/librx.a \
+ ${TOP_LIBDIR}/liblwp.a \
+ ${TOP_LIBDIR}/libsys.a \
+ ${TOP_LIBDIR}/libafsutil.a
-OBJS=rxkad_client.o rxkad_server.o rxkad_common.o ticket.o rxkad_errs.o \
- fcrypt.o crypt_conn.o
+all: ${TOP_LIBDIR}/librxkad.a fc_test depinstall
-all: install
+depinstall: \
+ ${TOP_INCDIR}/rx/rxkad.h \
+ ${TOP_INCDIR}/rx/rxkad_prototypes.h \
+ ${TOP_INCDIR}/rx/fcrypt.h
#
# Install targets
#
-kinstall: \
- ${KERNELDIR}/afs/private_data.h \
- ${KERNELDIR}/afs/rxkad.h \
- ${KERNELDIR}/afs/sboxes.h \
- ${KERNELDIR}/afs/fcrypt.h \
- ${KERNELDIR}/afs/fcrypt.c \
- ${KERNELDIR}/afs/crypt_conn.c \
- ${KERNELDIR}/afs/rxkad_client.c \
- ${KERNELDIR}/afs/rxkad_common.c
-
-${KERNELDIR}/afs/private_data.h: private_data.h
- ${INSTALL} $? $@
-
-${KERNELDIR}/afs/rxkad.h: rxkad.h
- ${INSTALL} $? $@
-
-${KERNELDIR}/afs/sboxes.h: sboxes.h
- ${INSTALL} $? $@
-
-${KERNELDIR}/afs/fcrypt.h: fcrypt.h
- ${INSTALL} $? $@
-
-${KERNELDIR}/afs/fcrypt.c: fcrypt.c
- ${INSTALL} $? $@
-
-${KERNELDIR}/afs/crypt_conn.c: crypt_conn.c
- ${INSTALL} $? $@
-
-${KERNELDIR}/afs/rxkad_client.c: rxkad_client.c
- ${INSTALL} $? $@
-
-${KERNELDIR}/afs/rxkad_common.c: rxkad_common.c
- ${INSTALL} $? $@
-
-ukinstall: \
- ${UKERNELDIR}/afs \
- ${UKERNELDIR}/rx \
- ${UKERNELDIR}/afs/private_data.h \
- ${UKERNELDIR}/afs/rxkad.h \
- ${UKERNELDIR}/rx/rxkad.h \
- ${UKERNELDIR}/afs/sboxes.h \
- ${UKERNELDIR}/afs/fcrypt.h \
- ${UKERNELDIR}/afs/fcrypt.c \
- ${UKERNELDIR}/afs/crypt_conn.c \
- ${UKERNELDIR}/afs/rxkad_client.c \
- ${UKERNELDIR}/afs/rxkad_common.c \
- ${UKERNELDIR}/afs/ticket.c \
- ${UKERNELDIR}/afs/rxkad_server.c \
- ${UKERNELDIR}/afs/lifetimes.h \
- ${UKERNELDIR}/afs/rxkad_errs.c
-
-
-${UKERNELDIR}/afs:
- mkdir -p $?
-
-${UKERNELDIR}/rx:
- mkdir -p $?
-
-${UKERNELDIR}/afs/private_data.h: private_data.h
- ${INSTALL} $? $@
-
-${UKERNELDIR}/afs/rxkad.h: rxkad.h
- ${INSTALL} $? $@
-
-${UKERNELDIR}/rx/rxkad.h: rxkad.h
- ${INSTALL} $? $@
-
-${UKERNELDIR}/afs/lifetimes.h: lifetimes.h
- ${INSTALL} $? $@
-
-${UKERNELDIR}/afs/ticket.c: ticket.c
- ${INSTALL} $? $@
-
-${UKERNELDIR}/afs/sboxes.h: sboxes.h
- ${INSTALL} $? $@
-
-${UKERNELDIR}/afs/fcrypt.h: fcrypt.h
- ${INSTALL} $? $@
-
-${UKERNELDIR}/afs/fcrypt.c: fcrypt.c
- ${INSTALL} $? $@
+install: \
+ ${DESTDIR}${libdir}/librxkad.a \
+ ${DESTDIR}${includedir}/rx/fcrypt.h \
+ ${DESTDIR}${includedir}/rx/rxkad.h \
+ ${DESTDIR}${includedir}/rx/rxkad_prototypes.h
-${UKERNELDIR}/afs/crypt_conn.c: crypt_conn.c
+${DEST}/lib/librxkad.a: librxkad.a
${INSTALL} $? $@
-${UKERNELDIR}/afs/rxkad_client.c: rxkad_client.c
+${DEST}/include/rx/fcrypt.h: fcrypt.h
${INSTALL} $? $@
-${UKERNELDIR}/afs/rxkad_errs.c: rxkad_errs.c
+${DEST}/include/rx/rxkad.h: rxkad.h
${INSTALL} $? $@
-${UKERNELDIR}/afs/rxkad_server.c: rxkad_server.c
- ${INSTALL} $? $@
-
-${UKERNELDIR}/afs/rxkad_common.c: rxkad_common.c
- ${INSTALL} $? $@
-
-install: kinstall ukinstall \
- ${DESTDIR}/lib/librxkad.a \
- ${DESTDIR}/include/rx/rxkad.h
-
-${DESTDIR}/lib/librxkad.a: librxkad.a
- ${INSTALL} $? $@
-
-${DESTDIR}/include/rx/rxkad.h: rxkad.h
+${DEST}/include/rx/rxkad_prototypes.h: rxkad_prototypes.h
${INSTALL} $? $@
#
$(AR) crv $@ ${OBJS} AFS_component_version_number.o
$(RANLIB) $@
-crypt_conn.o: fcrypt.h private_data.h crypt_conn.c ${INCLS}
-
rxkad_client.o: fcrypt.h private_data.h rxkad_client.c ${INCLS}
rxkad_server.o: fcrypt.h private_data.h rxkad_server.c ${INCLS}
rxkad_errs.c rxkad.h: rxkad_errs.et rxkad.p.h
$(RM) -f rxkad.h rxkad_errs.c
- ${COMPILE_ET} rxkad_errs -h rxkad
+ ${COMPILE_ET} -p ${srcdir} rxkad_errs -h rxkad
ticket.o: ticket.c lifetimes.h ${INCLS}
-fcrypt.o: fcrypt.c fcrypt.h sboxes.h rxkad.h
- ${CC} ${CFLAGS} -c fcrypt.c
+ticket5.o: ticket5.c v5gen.c v5der.c v5gen-rewrite.h ${INCLS}
+
+crc.o: crc.c ${INCLS}
+
+md4.o: md4.c ${INCLS}
+
+md5.o: md5.c ${INCLS}
+
+fcrypt.o: ${srcdir}/domestic/fcrypt.c fcrypt.h sboxes.h rxkad.h rxkad_prototypes.h
+ ${CCOBJ} ${CFLAGS} -c ${srcdir}/domestic/fcrypt.c
+
+crypt_conn.o: ${srcdir}/domestic/crypt_conn.c fcrypt.h private_data.h ${INCLS}
+ ${CCOBJ} ${CFLAGS} -c ${srcdir}/domestic/crypt_conn.c
+
+tcrypt.o: ${srcdir}/domestic/tcrypt.c AFS_component_version_number.o
+ ${CCOBJ} ${CFLAGS} -c ${srcdir}/domestic/fcrypt.c
tcrypt: tcrypt.o librxkad.a
${CC} -o tcrypt tcrypt.o librxkad.a
-tcrypt.o: tcrypt.c AFS_component_version_number.o
+fc_test: ${fc_test_OBJS} ${fc_test_LIBS}
+ ${CC} ${CFLAGS} -o fc_test ${fc_test_OBJS} ${fc_test_LIBS} ${XLIBS}
+
+fc_test.o: ${INCLS}
#
# Misc. targets
clean:
$(RM) -f *.o *.a tcrypt core rxkad_errs.c rxkad.h \
AFS_component_version_number.c \
- crypt_conn.c fcrypt.c fcrypt.h sboxes.h
+ fcrypt.h sboxes.h \
+ fc_test
test:
cd test; $(MAKE)
-
# These sources are kept in a separate directory so that we can use an
# ACL to comply with source export restrictions.
-crypt_conn.c: domestic/crypt_conn.c
+fcrypt.h: domestic/fcrypt.h
+ ${INSTALL} $? $@
+
+sboxes.h: domestic/sboxes.h
${INSTALL} $? $@
-fcrypt.c: domestic/fcrypt.c
+include ../config/Makefile.version
+${DESTDIR}${libdir}/librxkad.a: librxkad.a
${INSTALL} $? $@
-fcrypt.h: domestic/fcrypt.h
+${TOP_LIBDIR}/librxkad.a: librxkad.a
${INSTALL} $? $@
-sboxes.h: domestic/sboxes.h
+${DESTDIR}${includedir}/rx/fcrypt.h: fcrypt.h
${INSTALL} $? $@
-tcrypt.c: domestic/tcrypt.c
+${DESTDIR}${includedir}/rx/rxkad.h: rxkad.h
${INSTALL} $? $@
-include ../config/Makefile.version
+${DESTDIR}${includedir}/rx/rxkad_prototypes.h: rxkad_prototypes.h
+ ${INSTALL} $? $@
+
+${TOP_INCDIR}/rx/fcrypt.h: fcrypt.h
+ ${INSTALL} $? $@
+
+${TOP_INCDIR}/rx/rxkad.h: rxkad.h
+ ${INSTALL} $? $@
+
+${TOP_INCDIR}/rx/rxkad_prototypes.h: rxkad_prototypes.h
+ ${INSTALL} $? $@
+
+dest: \
+ ${DEST}/lib/librxkad.a \
+ ${DEST}/include/rx/fcrypt.h \
+ ${DEST}/include/rx/rxkad.h \
+ ${DEST}/include/rx/rxkad_prototypes.h
+