build: compile_et rules for parallel make
[openafs.git] / src / rxkad / Makefile.in
index 4ebf13e..d768a80 100644 (file)
 # 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
-
-# */
-
-DESTDIR=@DESTDIR@
-SRCDIR=@SRCDIR@
-TOP_SRCDIR=@TOP_SRCDIR@
-SYS_NAME=@AFS_SYSNAME@
-
-SHELL = /bin/sh
-
-include ../config/Makefile.${SYS_NAME}
-
-KERNELDIR = ../libafs/
-UKERNELDIR = ../libuafs/
-COMPILE_ET = ${SRCDIR}/bin/compile_et
-
-CFLAGS = ${OPTMZ} -I${TOP_SRCDIR}/config -I${SRCDIR}/include ${XCFLAGS}
-INCLS= ${SRCDIR}/include/rx/rx.h ${SRCDIR}/include/rx/xdr.h \
-       rxkad.h
-
-OBJS=rxkad_client.o rxkad_server.o rxkad_common.o ticket.o rxkad_errs.o \
-       fcrypt.o crypt_conn.o
-
-all: install
-
-#
-# 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 
+# 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
 
-${UKERNELDIR}/afs:
-       mkdir -p $?
+INCLS=${TOP_INCDIR}/rx/rx.h ${TOP_INCDIR}/rx/xdr.h \
+       ${TOP_INCDIR}/rx/fcrypt.h \
+       ${TOP_INCDIR}/rx/rxkad.h \
+       ${TOP_INCDIR}/rx/rxkad_prototypes.h \
+       rxkad_convert.h fcrypt.h v5gen.h
 
-${UKERNELDIR}/rx:
-       mkdir -p $?
+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
 
-${UKERNELDIR}/afs/private_data.h: private_data.h
-       ${INSTALL} $? $@
+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
 
-${UKERNELDIR}/afs/rxkad.h: rxkad.h
-       ${INSTALL} $? $@
+LT_libs=$(LDFLAGS_hcrypto) $(LIB_hcrypto)
 
-${UKERNELDIR}/rx/rxkad.h: rxkad.h
-       ${INSTALL} $? $@
+fc_test_OBJS=fc_test.o
 
-${UKERNELDIR}/afs/lifetimes.h: lifetimes.h
-       ${INSTALL} $? $@
+fc_test_LIBS=\
+       ${TOP_LIBDIR}/librxkad.a \
+       ${TOP_LIBDIR}/libafshcrypto_lwp.a \
+       ${TOP_LIBDIR}/librx.a \
+       ${TOP_LIBDIR}/liblwp.a \
+       ${TOP_LIBDIR}/libafsutil.a
 
-${UKERNELDIR}/afs/ticket.c: ticket.c
-       ${INSTALL} $? $@
+all: ${TOP_LIBDIR}/librxkad.a liboafs_rxkad.la libafsrpc_rxkad.la depinstall
 
-${UKERNELDIR}/afs/sboxes.h: sboxes.h
-       ${INSTALL} $? $@
+test: fc_test
 
-${UKERNELDIR}/afs/fcrypt.h: fcrypt.h
-       ${INSTALL} $? $@
+generated: \
+       rxkad_errs.c rxkad.h
 
-${UKERNELDIR}/afs/fcrypt.c: fcrypt.c
-       ${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}/afs/crypt_conn.c: crypt_conn.c
-       ${INSTALL} $? $@
+${TOP_LIBDIR}/librxkad.a: librxkad.a
+       ${INSTALL_DATA} $? $@
 
-${UKERNELDIR}/afs/rxkad_client.c: rxkad_client.c
-       ${INSTALL} $? $@
+${TOP_INCDIR}/rx/fcrypt.h: fcrypt.h
+       ${INSTALL_DATA} $? $@
 
-${UKERNELDIR}/afs/rxkad_errs.c: rxkad_errs.c
-       ${INSTALL} $? $@
+${TOP_INCDIR}/rx/rxkad.h: rxkad.h
+       ${INSTALL_DATA} $? $@
 
-${UKERNELDIR}/afs/rxkad_server.c: rxkad_server.c
-       ${INSTALL} $? $@
+${TOP_INCDIR}/rx/rxkad_prototypes.h: rxkad_prototypes.h
+       ${INSTALL_DATA} $? $@
 
-${UKERNELDIR}/afs/rxkad_common.c: rxkad_common.c
-       ${INSTALL} $? $@
+${TOP_INCDIR}/rx/rxkad_stats.h: stats.h
+       ${INSTALL_DATA} $? $@
 
-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
-       ${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 librxkad.a
-       $(AR) rv librxkad.a ${OBJS} AFS_component_version_number.o
-       $(RANLIB) librxkad.a
-
-crypt_conn.o: fcrypt.h private_data.h crypt_conn.c ${INCLS}
+liboafs_rxkad.la: liboafs_rxkad.la.sym $(LT_objs) $(LT_deps)
+       $(LT_LDLIB_shlib) $(LT_objs) $(LT_deps) $(LT_libs)
 
-rxkad_client.o: fcrypt.h private_data.h rxkad_client.c ${INCLS}
+libafsrpc_rxkad.la: $(LT_objs)
+       $(LT_LDLIB_pic) $(LT_objs)
 
-rxkad_server.o: fcrypt.h private_data.h rxkad_server.c ${INCLS}
+CFLAGS_ticket5.lo = @CFLAGS_NOERROR@
 
-rxkad_common.o: fcrypt.h private_data.h rxkad_common.c ${INCLS}
-
-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} rxkad_errs -h rxkad
-
-ticket.o: ticket.c lifetimes.h ${INCLS}
+       $(RM) -f rxkad.h rxkad_errs.c
+       ${COMPILE_ET} -p ${srcdir} rxkad_errs -h rxkad
+rxkad.h: rxkad_errs.c
 
-fcrypt.o: fcrypt.c fcrypt.h sboxes.h rxkad.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
+       $(AFS_LDRULE) tcrypt.o librxkad.a
 
-tcrypt.o: tcrypt.c AFS_component_version_number.o
+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: 
-       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
+       $(LT_CLEAN)
+       $(RM) -f *.o *.a tcrypt core rxkad_errs.c rxkad.h \
+               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