# 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.
srcdir=@srcdir@
include @TOP_OBJDIR@/src/config/Makefile.config
+include @TOP_OBJDIR@/src/config/Makefile.lwp
+include @TOP_OBJDIR@/src/config/Makefile.lwptool
-CFLAGS=-I. -I${srcdir} ${OPTMZ} -I${TOP_OBJDIR}/src/config -I${TOP_INCDIR} ${XCFLAGS}
INCLS=${TOP_INCDIR}/rx/rx.h ${TOP_INCDIR}/rx/xdr.h \
${TOP_INCDIR}/rx/fcrypt.h \
- rxkad.h rxkad_prototypes.h fcrypt.h
+ ${TOP_INCDIR}/rx/rxkad.h \
+ ${TOP_INCDIR}/rx/rxkad_prototypes.h \
+ rxkad_convert.h fcrypt.h v5gen.h
+
+LT_objs=rxkad_client.lo rxkad_server.lo rxkad_common.lo rxkad_errs.lo \
+ fcrypt.lo crypt_conn.lo ticket.lo ticket5.lo crc.lo
+
+LT_deps=$(top_builddir)/src/comerr/liboafs_comerr.la \
+ $(top_builddir)/src/rx/liboafs_rx.la \
+ $(top_builddir)/src/opr/liboafs_opr.la \
+ $(top_builddir)/src/crypto/rfc3961/liboafs_rfc3961.la
-OBJS=rxkad_client.o rxkad_server.o rxkad_common.o ticket.o rxkad_errs.o \
- fcrypt.o crypt_conn.o
+LT_libs=$(LDFLAGS_hcrypto) $(LIB_hcrypto)
fc_test_OBJS=fc_test.o
fc_test_LIBS=\
${TOP_LIBDIR}/librxkad.a \
+ ${TOP_LIBDIR}/libafshcrypto_lwp.a \
${TOP_LIBDIR}/librx.a \
${TOP_LIBDIR}/liblwp.a \
- ${TOP_LIBDIR}/libsys.a
-
-all: kinstall ukinstall ${TOP_LIBDIR}/librxkad.a fc_test \
- ${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/rxkad_prototypes.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/rxkad_prototypes.h: rxkad_prototypes.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} $? $@
+ ${TOP_LIBDIR}/libafsutil.a
-ukinstall: \
- ${UKERNELDIR}/afs \
- ${UKERNELDIR}/rx \
- ${UKERNELDIR}/afs/private_data.h \
- ${UKERNELDIR}/afs/rxkad.h \
- ${UKERNELDIR}/afs/rxkad_prototypes.h \
- ${UKERNELDIR}/afs/fcrypt.h \
- ${UKERNELDIR}/rx/rxkad.h \
- ${UKERNELDIR}/rx/rxkad_prototypes.h \
- ${UKERNELDIR}/rx/fcrypt.h \
- ${UKERNELDIR}/afs/sboxes.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
+all: ${TOP_LIBDIR}/librxkad.a liboafs_rxkad.la libafsrpc_rxkad.la depinstall
+test: fc_test
-${UKERNELDIR}/afs:
- mkdir -p $?
+generated: \
+ rxkad_errs.c rxkad.h
-${UKERNELDIR}/rx:
- mkdir -p $?
-
-${UKERNELDIR}/afs/private_data.h: private_data.h
- ${INSTALL} $? $@
-
-${UKERNELDIR}/afs/rxkad.h: rxkad.h
- ${INSTALL} $? $@
-
-${UKERNELDIR}/afs/rxkad_prototypes.h: rxkad_prototypes.h
- ${INSTALL} $? $@
-
-${UKERNELDIR}/afs/fcrypt.h: fcrypt.h
- ${INSTALL} $? $@
-
-${UKERNELDIR}/rx/rxkad_prototypes.h: rxkad_prototypes.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.c: fcrypt.c
- ${INSTALL} $? $@
-
-${UKERNELDIR}/afs/crypt_conn.c: crypt_conn.c
- ${INSTALL} $? $@
-
-${UKERNELDIR}/afs/rxkad_client.c: rxkad_client.c
- ${INSTALL} $? $@
-
-${UKERNELDIR}/afs/rxkad_errs.c: rxkad_errs.c
- ${INSTALL} $? $@
-
-${UKERNELDIR}/afs/rxkad_server.c: rxkad_server.c
- ${INSTALL} $? $@
-
-${UKERNELDIR}/afs/rxkad_common.c: rxkad_common.c
- ${INSTALL} $? $@
-
-${UKERNELDIR}/rx/rxkad.h: rxkad.h
- ${INSTALL} $? $@
+depinstall: \
+ ${TOP_INCDIR}/rx/rxkad.h \
+ ${TOP_INCDIR}/rx/rxkad_prototypes.h \
+ ${TOP_INCDIR}/rx/rxkad_convert.h \
+ ${TOP_INCDIR}/rx/fcrypt.h \
+ ${TOP_INCDIR}/rx/rxkad_stats.h
-${UKERNELDIR}/rx/fcrypt.h: fcrypt.h
- ${INSTALL} $? $@
+${TOP_LIBDIR}/librxkad.a: librxkad.a
+ ${INSTALL_DATA} $? $@
-install: \
- ${DESTDIR}${libdir}/librxkad.a \
- ${DESTDIR}${includedir}/rx/fcrypt.h \
- ${DESTDIR}${includedir}/rx/rxkad.h \
- ${DESTDIR}${includedir}/rx/rxkad_prototypes.h
+${TOP_INCDIR}/rx/fcrypt.h: fcrypt.h
+ ${INSTALL_DATA} $? $@
-${DEST}/lib/librxkad.a: librxkad.a
- ${INSTALL} $? $@
+${TOP_INCDIR}/rx/rxkad.h: rxkad.h
+ ${INSTALL_DATA} $? $@
-${DEST}/include/rx/fcrypt.h: fcrypt.h
- ${INSTALL} $? $@
+${TOP_INCDIR}/rx/rxkad_prototypes.h: rxkad_prototypes.h
+ ${INSTALL_DATA} $? $@
-${DEST}/include/rx/rxkad.h: rxkad.h
- ${INSTALL} $? $@
+${TOP_INCDIR}/rx/rxkad_stats.h: stats.h
+ ${INSTALL_DATA} $? $@
-${DEST}/include/rx/rxkad_prototypes.h: rxkad_prototypes.h
- ${INSTALL} $? $@
+${TOP_INCDIR}/rx/rxkad_convert.h: rxkad_convert.h
+ ${INSTALL_DATA} $? $@
#
# Build targets
#
+librxkad.a: $(LT_objs)
+ $(LT_LDLIB_lwp) $(LT_objs)
-librxkad.a: ${OBJS} AFS_component_version_number.o
- -$(RM) -f $@
- $(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}
+liboafs_rxkad.la: liboafs_rxkad.la.sym $(LT_objs) $(LT_deps)
+ $(LT_LDLIB_shlib) $(LT_objs) $(LT_deps) $(LT_libs)
-rxkad_server.o: fcrypt.h private_data.h rxkad_server.c ${INCLS}
+libafsrpc_rxkad.la: $(LT_objs)
+ $(LT_LDLIB_pic) $(LT_objs)
-rxkad_common.o: fcrypt.h private_data.h rxkad_common.c ${INCLS}
+CFLAGS_ticket5.lo = @CFLAGS_NOERROR@
-rxkad_errs.o: rxkad_errs.c
+crc.lo: crc.c ${INCLS}
+crypt_conn.lo: crypt_conn.c fcrypt.h private_data.h ${INCLS}
+fcrypt.lo: fcrypt.c fcrypt.h sboxes.h rxkad.h rxkad_prototypes.h
+rxkad_client.lo: fcrypt.h private_data.h rxkad_client.c ${INCLS}
+rxkad_server.lo: rxkad_server.c fcrypt.h private_data.h ${INCLS}
+rxkad_common.lo: fcrypt.h private_data.h rxkad_common.c ${INCLS}
+rxkad_errs.lo: rxkad_errs.c
+ticket.lo: ticket.c lifetimes.h ${INCLS}
+ticket5.lo: ticket5.c v5gen.c v5der.c v5gen-rewrite.h ${INCLS}
rxkad_errs.c rxkad.h: rxkad_errs.et rxkad.p.h
$(RM) -f rxkad.h rxkad_errs.c
${COMPILE_ET} -p ${srcdir} rxkad_errs -h rxkad
+rxkad.h: rxkad_errs.c
-ticket.o: ticket.c lifetimes.h ${INCLS}
-
-fcrypt.o: fcrypt.c fcrypt.h sboxes.h rxkad.h rxkad_prototypes.h
- ${CC} ${CFLAGS} -c fcrypt.c
+tcrypt.o: tcrypt.c AFS_component_version_number.o
tcrypt: tcrypt.o librxkad.a
- ${CC} -o tcrypt tcrypt.o librxkad.a
-
-tcrypt.o: tcrypt.c AFS_component_version_number.o
+ $(AFS_LDRULE) tcrypt.o librxkad.a
-fc_test: ${fc_test_OBJS}
- ${CC} ${CFLAGS} -o fc_test ${fc_test_OBJS} ${fc_test_LIBS} ${XLIBS}
+fc_test: ${fc_test_OBJS} ${fc_test_LIBS}
+ $(AFS_LDRULE) ${fc_test_OBJS} ${fc_test_LIBS} ${XLIBS}
fc_test.o: ${INCLS}
#
-# Misc. targets
+# Install targets
#
+install: librxkad.a fcrypt.h rxkad.h rxkad_prototypes.h
+ ${INSTALL} -d ${DESTDIR}${libdir}
+ ${INSTALL} -d ${DESTDIR}${includedir}/rx
+ ${INSTALL_DATA} librxkad.a ${DESTDIR}${libdir}/librxkad.a
+ ${INSTALL_DATA} ${srcdir}/fcrypt.h ${DESTDIR}${includedir}/rx/fcrypt.h
+ ${INSTALL_DATA} rxkad.h ${DESTDIR}${includedir}/rx/rxkad.h
+ ${INSTALL_DATA} ${srcdir}/rxkad_prototypes.h \
+ ${DESTDIR}${includedir}/rx/rxkad_prototypes.h
+
+dest: librxkad.a fcrypt.h rxkad.h rxkad_prototypes.h
+ ${INSTALL} -d ${DEST}/lib
+ ${INSTALL} -d ${DEST}/include/rx
+ ${INSTALL_DATA} librxkad.a ${DEST}/lib/librxkad.a
+ ${INSTALL_DATA} ${srcdir}/fcrypt.h ${DEST}/include/rx/fcrypt.h
+ ${INSTALL_DATA} rxkad.h ${DEST}/include/rx/rxkad.h
+ ${INSTALL_DATA} ${srcdir}/rxkad_prototypes.h \
+ ${DEST}/include/rx/rxkad_prototypes.h
+#
+# Misc. targets
+#
clean:
+ $(LT_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 \
- fc_test
+ AFS_component_version_number.c 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
- ${INSTALL} $? $@
-
-fcrypt.c: domestic/fcrypt.c
- ${INSTALL} $? $@
-
-fcrypt.h: domestic/fcrypt.h
- ${INSTALL} $? $@
-
-sboxes.h: domestic/sboxes.h
- ${INSTALL} $? $@
-
-tcrypt.c: domestic/tcrypt.c
- ${INSTALL} $? $@
-
include ../config/Makefile.version
-${DESTDIR}${libdir}/librxkad.a: librxkad.a
- ${INSTALL} $? $@
-
-${TOP_LIBDIR}/librxkad.a: librxkad.a
- ${INSTALL} $? $@
-
-${DESTDIR}${includedir}/rx/fcrypt.h: fcrypt.h
- ${INSTALL} $? $@
-
-${DESTDIR}${includedir}/rx/rxkad.h: rxkad.h
- ${INSTALL} $? $@
-
-${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
-