build: compile_et rules for parallel make
[openafs.git] / src / ubik / Makefile.in
index c095d49..e9cd30c 100644 (file)
 # License.  For details, see the LICENSE file in the top-level source
 # directory or online at http://www.openafs.org/dl/license10.html
 
-DEST=@DEST@
-TOP_INCDIR=@TOP_INCDIR@
-TOP_LIBDIR=@TOP_LIBDIR@
-prefix=@prefix@
-exec_prefix=@exec_prefix@
-bindir=@bindir@
-sbindir=@sbindir@
-libexecdir=@libexecdir@
-libdir=@libdir@
-includedir=@includedir@
-mandir=@mandir@
-afssrvbindir=@afssrvbindir@
-afssrvsbindir=@afssrvsbindir@
-afssrvlibexecdir=@afssrvlibexecdir@
-TOP_SRCDIR=@TOP_SRCDIR@
-SYS_NAME=@AFS_SYSNAME@
-
-SHELL = /bin/sh
-
-include ../config/Makefile.${SYS_NAME}
-
-CFLAGS=${OPTMZ} -I${TOP_SRCDIR}/config -I. -I${TOP_INCDIR} ${XCFLAGS}
-UKERNELDIR=../libuafs/
-
-LIBOBJS=disk.o  remote.o beacon.o recovery.o ubik.o  vote.o lock.o phys.o \
-       ubik_int.cs.o ubik_int.ss.o ubik_int.xdr.o ubikcmd.o \
-       ubikclient.o uerrors.o
+srcdir=@srcdir@
+include @TOP_OBJDIR@/src/config/Makefile.config
+include @TOP_OBJDIR@/src/config/Makefile.lwp
+include @TOP_OBJDIR@/src/config/Makefile.lwptool
+
+LT_authent_objs = uinit.lo ubikclient.lo uerrors.lo ubik_int.cs.lo \
+                 ubik_int.xdr.lo
+
+LT_objs =   $(LT_authent_objs) \
+           disk.lo remote.lo beacon.lo recovery.lo ubik.lo vote.lo lock.lo \
+           phys.lo ubik_int.ss.lo ubikcmd.lo
+
+LT_deps =   $(top_builddir)/src/auth/liboafs_auth.la \
+           $(top_builddir)/src/opr/liboafs_opr.la \
+           $(top_builddir)/src/comerr/liboafs_comerr.la \
+           $(top_builddir)/src/lwp/liboafs_lwpcompat.la \
+           $(top_builddir)/src/rx/liboafs_rx.la \
+           $(top_builddir)/src/util/liboafs_util.la
 
 INCLS=${TOP_INCDIR}/lwp.h ${TOP_INCDIR}/lock.h \
        ${TOP_INCDIR}/rx/rx.h ${TOP_INCDIR}/rx/xdr.h \
        ${TOP_INCDIR}/lock.h ubik.h ubik_int.h
 
-LIBS=${TOP_LIBDIR}/librx.a ${TOP_LIBDIR}/liblwp.a \
-     ${TOP_LIBDIR}/libcom_err.a ${TOP_LIBDIR}/libcmd.a \
-     ${TOP_LIBDIR}/util.a ${TOP_LIBDIR}/libsys.a ${XLIBS}
+LIBS=${TOP_LIBDIR}/librx.a ${TOP_LIBDIR}/liblwp.a ${TOP_LIBDIR}/libauth.a \
+       ${TOP_LIBDIR}/libafscom_err.a ${TOP_LIBDIR}/libcmd.a \
+       ${TOP_LIBDIR}/libsys.a ${TOP_LIBDIR}/libauth.a \
+       ${TOP_LIBDIR}/libafsutil.a ${TOP_LIBDIR}/libopr.a \
+       ${XLIBS}
+
+all: depinstall ${TOP_LIBDIR}/libubik.a udebug utst_server utst_client \
+     liboafs_ubik.la libauthent_ubik.la
+
+generated: \
+       utst_int.cs.c utst_int.ss.c utst_int.xdr.c utst_int.h \
+       Kubik_int.cs.c Kubik_int.xdr.c Kubik_int.h \
+       ubik_int.cs.c ubik_int.ss.c ubik_int.xdr.c ubik_int.h \
+       uerrors.c ubik.h
+
+depinstall: \
+       ubik_int.cs.c ubik_int.xdr.c \
+       ${TOP_INCDIR}/ubik.h \
+       ${TOP_INCDIR}/ubik_int.h
+
+${TOP_LIBDIR}/libubik.a: libubik.a
+       ${INSTALL_DATA} $? $@
 
-RXGEN=${TOP_SRCDIR}/rxgen/rxgen
-COMPILE_ET=${TOP_SRCDIR}/comerr/compile_et
+${TOP_INCDIR}/ubik.h: ubik.h
+       ${INSTALL_DATA} $? $@
 
-all: test ukinstall ${TOP_LIBDIR}/libubik.a ${TOP_INCDIR}/ubik.h ${TOP_INCDIR}/ubik_int.h udebug utst_server utst_client
+${TOP_INCDIR}/ubik_int.h: ubik_int.h
+       ${INSTALL_DATA} $? $@
 
 utst_server: utst_server.o utst_int.ss.o utst_int.xdr.o libubik.a 
-       ${CC} ${CFLAGS} -o utst_server utst_server.o utst_int.ss.o utst_int.xdr.o libubik.a $(LIBS)
+       $(AFS_LDRULE) utst_server.o utst_int.ss.o utst_int.xdr.o \
+               libubik.a $(LIBS) $(LIB_roken)
 
 utst_client: utst_client.o utst_int.cs.o utst_int.xdr.o libubik.a 
-       ${CC} ${CFLAGS} -o utst_client utst_client.o utst_int.cs.o utst_int.xdr.o libubik.a $(LIBS)
+       $(AFS_LDRULE) utst_client.o utst_int.cs.o utst_int.xdr.o \
+               libubik.a $(LIBS) $(LIB_roken)
 
 udebug: udebug.o libubik.a 
-       ${CC} ${CFLAGS} -o udebug udebug.o libubik.a $(LIBS)
+       $(AFS_LDRULE) udebug.o libubik.a $(LIBS) $(LIB_roken)
+
+ubik_int.cs.c: ubik_int.xg
+       ${RXGEN} -A -x -C -o $@ ${srcdir}/ubik_int.xg
+
+ubik_int.ss.c: ubik_int.xg
+       ${RXGEN} -A -x -S -o $@ ${srcdir}/ubik_int.xg
+
+ubik_int.xdr.c: ubik_int.xg
+       ${RXGEN} -A -x -c -o $@ ${srcdir}/ubik_int.xg
+
+ubik_int.h: ubik_int.xg
+       ${RXGEN} -A -x -h -o $@ ${srcdir}/ubik_int.xg
 
-ubik_int.ss.c ubik_int.cs.c ubik_int.xdr.c ubik_int.h: ubik_int.xg
-       ${RXGEN} -x ubik_int.xg
+ubik_int.cs.c: ubik_int.h
+ubik_int.ss.c: ubik_int.h
+ubik_int.xdr.c: ubik_int.h
 
 Kubik_int.cs.c: ubik_int.xg Kubik_int.h
-       ${RXGEN} -x -k -C -o Kubik_int.cs.c ubik_int.xg
+       ${RXGEN} -A -x -k -C -o Kubik_int.cs.c ${srcdir}/ubik_int.xg
+
 Kubik_int.xdr.c: ubik_int.xg
-       ${RXGEN} -x -k -c -o Kubik_int.xdr.c ubik_int.xg
+       ${RXGEN} -A -x -k -c -o Kubik_int.xdr.c ${srcdir}/ubik_int.xg
+
 Kubik_int.h: ubik_int.xg
-       ${RXGEN} -x -k -h -o Kubik_int.h ubik_int.xg
+       ${RXGEN} -A -x -k -h -o Kubik_int.h ${srcdir}/ubik_int.xg
 
 utst_int.ss.o: utst_int.ss.c utst_int.xdr.c
 utst_int.cs.o: utst_int.cs.c utst_int.xdr.c
 utst_int.xdr.o: utst_int.xdr.c utst_int.h
-utst_int.ss.c utst_int.cs.c utst_int.xdr.c utst_int.h: utst_int.xg
-       ${RXGEN} utst_int.xg
+
+utst_int.cs.c: utst_int.xg
+       ${RXGEN} -A -C -u -o $@ ${srcdir}/utst_int.xg
+
+utst_int.ss.c: utst_int.xg
+       ${RXGEN} -A -S -o $@ ${srcdir}/utst_int.xg
+
+utst_int.xdr.c: utst_int.xg
+       ${RXGEN} -A -c -o $@ ${srcdir}/utst_int.xg
+
+utst_int.h: utst_int.xg
+       ${RXGEN} -A -h -u -o $@ ${srcdir}/utst_int.xg
+
+utst_int.cs.c: utst_int.h
+utst_int.ss.c: utst_int.h
+utst_int.xdr.c: utst_int.h
 
 utst_server.o: utst_server.c ${INCLS} utst_int.h AFS_component_version_number.c
 utst_client.o: utst_client.c ${INCLS} utst_int.h AFS_component_version_number.c
 
 udebug.o: udebug.c ${INCLS} AFS_component_version_number.c
-       ${CC} ${CFLAGS} -g -I. -I${TOP_INCDIR} -I${TOP_INCDIR}/afs -c udebug.c
-
 uerrors.o: uerrors.c
 
 uerrors.c ubik.h: uerrors.et ubik.p.h
        $(RM) -f ubik.h uerrors.c
-       ${COMPILE_ET} uerrors -h ubik
-
-libubik.a: ${LIBOBJS} AFS_component_version_number.o
-       -$(RM) -f $@
-       $(AR) crc $@ ${LIBOBJS} AFS_component_version_number.o
-       $(RANLIB) $@
-
-disk.o: disk.c ${INCLS}
-remote.o: remote.c ${INCLS}
-beacon.o: beacon.c ${INCLS}
-lock.o: lock.c ${INCLS}
-recovery.o: recovery.c ${INCLS}
-ubik.o: ubik.c ${INCLS}
-phys.o: phys.c ${INCLS}
-vote.o: vote.c ${INCLS}
-ubikcmd.o: ubikcmd.c ${INCLS}
-ubikclient.o: ubikclient.c ${INCLS}
-ubik_int.ss.o: ubik_int.ss.c ${INCLS}
-ubik_int.cs.o: ubik_int.cs.c ${INCLS}
-ubik_int.xdr.o: ubik_int.xdr.c ${INCLS}
+       ${COMPILE_ET} -p ${srcdir} uerrors -h ubik
+ubik.h: uerrors.c
+
+libubik.a: ${LT_objs}
+       $(LT_LDLIB_lwp) $(LT_objs)
+
+$(LT_objs): $(INCLS)
+
 utst_int.ss.o: utst_int.ss.c ${INCLS} utst_int.h
 utst_int.cs.o: utst_int.cs.c ${INCLS} utst_int.h
 utst_int.xdr.o: utst_int.xdr.c ${INCLS} utst_int.h 
 
+liboafs_ubik.la: liboafs_ubik.la.sym $(LT_objs) $(LT_deps)
+       $(LT_LDLIB_shlib) $(LT_objs) $(LT_deps) $(LT_libs)
+
+libauthent_ubik.la: $(LT_authent_objs)
+       $(LT_LDLIB_pic) $(LT_authent_objs)
+
 #
 # Installation targets
 #
 test: all
 
-install: \
-       ${DESTDIR}${libdir}/libubik.a \
-       ${DESTDIR}${includedir}/ubik.h \
-       ${DESTDIR}${includedir}/ubik_int.h \
-       ${DESTDIR}${bindir}/udebug \
-       ${DESTDIR}${afssrvbindir}/udebug
-
-${DEST}/bin/udebug ${DEST}/root.server/usr/afs/bin/udebug: udebug
-       ${INSTALL} $? $@
-
-${DEST}/lib/libubik.a: libubik.a
-       ${INSTALL} $? $@
-
-${DEST}/include/ubik.h: ubik.h
-       ${INSTALL} $? $@
-
-${DEST}/include/ubik_int.h: ubik_int.h
-       ${INSTALL} $? $@
-
-ukinstall: ${UKERNELDIR}/afs ${UKERNELDIR}/afsint \
-       ${UKERNELDIR}/afsint/ubik_int.h \
-       ${UKERNELDIR}/afsint/ubik_int.cs.c \
-       ${UKERNELDIR}/afsint/ubik_int.xdr.c \
-       ${UKERNELDIR}/afs/ubik.h \
-       ${UKERNELDIR}/afs/ubikclient.c \
-       ${UKERNELDIR}/afs/uerrors.c
-
-${UKERNELDIR}/afs:
-       mkdir -p $@
-
-${UKERNELDIR}/afsint:
-       mkdir -p $@
-
-${UKERNELDIR}/afsint/ubik_int.h: Kubik_int.h
-       ${INSTALL} $? $@
-
-${UKERNELDIR}/afsint/ubik_int.cs.c: Kubik_int.cs.c
-       ${INSTALL} $? $@
-
-${UKERNELDIR}/afsint/ubik_int.xdr.c: Kubik_int.xdr.c
-       ${INSTALL} $? $@
-
-${UKERNELDIR}/afs/ubik.h: ubik.h
-       ${INSTALL} $? $@
-
-${UKERNELDIR}/afs/ubikclient.c: ubikclient.c
-       ${INSTALL} $? $@
-
-${UKERNELDIR}/afs/uerrors.c: uerrors.c
-       ${INSTALL} $? $@
+install: libubik.a ubik.h ubik_int.h udebug
+       ${INSTALL} -d ${DESTDIR}${libdir}
+       ${INSTALL} -d ${DESTDIR}${includedir}
+       ${INSTALL} -d ${DESTDIR}${bindir}
+       ${INSTALL} -d ${DESTDIR}${afssrvbindir}
+       ${INSTALL_DATA} libubik.a ${DESTDIR}${libdir}/libubik.a
+       ${INSTALL_DATA} ubik.h ${DESTDIR}${includedir}/ubik.h
+       ${INSTALL_DATA} ubik_int.h ${DESTDIR}${includedir}/ubik_int.h
+       ${INSTALL_PROGRAM} udebug ${DESTDIR}${bindir}/udebug
+       ${INSTALL_PROGRAM} udebug ${DESTDIR}${afssrvbindir}/udebug
+
+dest: libubik.a ubik.h ubik_int.h udebug
+       ${INSTALL} -d ${DEST}/lib
+       ${INSTALL} -d ${DEST}/include
+       ${INSTALL} -d ${DEST}/root.server/usr/afs/bin
+       ${INSTALL_DATA} libubik.a ${DEST}/lib/libubik.a
+       ${INSTALL_DATA} ubik.h ${DEST}/include/ubik.h
+       ${INSTALL_DATA} ubik_int.h ${DEST}/include/ubik_int.h
+       ${INSTALL_PROGRAM} udebug ${DEST}/bin/udebug
+       ${INSTALL_PROGRAM} udebug ${DEST}/root.server/usr/afs/bin/udebug
 
 #
 # Misc. targets
 #
 clean:
+       $(LT_CLEAN)
        $(RM) -f *.o utst_server utst_client udebug *.a *.cs.c *.ss.c *.xdr.c
        $(RM) -f utst_int.h ubik_int.h uerrors.c ubik.h core AFS_component_version_number.c Kubik_int.h
 
 include ../config/Makefile.version
-
-
-${DESTDIR}${libdir}/libubik.a: libubik.a
-       ${INSTALL} $? $@
-
-${TOP_LIBDIR}/libubik.a: libubik.a
-       ${INSTALL} $? $@
-
-${DESTDIR}${includedir}/ubik.h: ubik.h
-       ${INSTALL} $? $@
-
-${TOP_INCDIR}/ubik.h: ubik.h
-       ${INSTALL} $? $@
-
-${DESTDIR}${includedir}/ubik_int.h: ubik_int.h
-       ${INSTALL} $? $@
-
-${TOP_INCDIR}/ubik_int.h: ubik_int.h
-       ${INSTALL} $? $@
-
-${DESTDIR}${bindir}/udebug: udebug
-       ${INSTALL} $? $@
-
-${DESTDIR}${afssrvbindir}/udebug: udebug
-       ${INSTALL} $? $@
-
-dest: \
-       ${DEST}/lib/libubik.a \
-       ${DEST}/include/ubik.h \
-       ${DEST}/include/ubik_int.h \
-       ${DEST}/bin/udebug \
-       ${DEST}/root.server/usr/afs/bin/udebug
-