# Copyright 2000, International Business Machines Corporation and others. # All Rights Reserved. # # 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 srcdir=@srcdir@ include @TOP_OBJDIR@/src/config/Makefile.config include @TOP_OBJDIR@/src/config/Makefile.pthread HELPER_SPLINT=@HELPER_SPLINT@ ENABLE_PTHREADED_UBIK=@ENABLE_PTHREADED_UBIK@ UBIK=$(srcdir)/../ubik RX=$(srcdir)/../rx UTIL=$(srcdir)/../util 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 uinit.o 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 utst_int.h RXOBJS = rx_pthread.o UTILOBJS=uuid.o serverLog.o fileutil.o dirpath.o \ volparse.o flipbase64.o softsig.o hostparse.o pthread_glock.o \ pthread_threadname.o LIBS=${RXOBJS} ${UTILOBJS} ${TOP_LIBDIR}/libafsauthent.a ${TOP_LIBDIR}/libafsrpc.a \ ${TOP_LIBDIR}/libafscom_err.a ${TOP_LIBDIR}/libcmd.a \ ${TOP_LIBDIR}/libsys.a \ $(top_builddir)/src/opr/liboafs_opr.la \ ${XLIBS} ${MT_LIBS} all: depinstall ${TOP_LIBDIR}/libubik_pthread.a udebug utst_server utst_client depinstall: \ ubik_int.cs.c ubik_int.xdr.c \ ${TOP_INCDIR}/ubik.h \ ${TOP_INCDIR}/ubik_int.h # # get the pthreaded rx stuff compiled here # CFLAGS_rx_pthread.o = -DDPF_FSLOG rx_pthread.o: ${RX}/rx_pthread.c $(AFS_CCRULE) $(RX)/rx_pthread.c # # get the pthreaded util stuff compiled here. we do this instead of # using the non-pthreaded libutil.a. There probably should be a # pthreaded version of this library, as we are doing with ubik itself, but... # uuid.o: ${UTIL}/uuid.c $(AFS_CCRULE) $(UTIL)/uuid.c serverLog.o: ${UTIL}/serverLog.c $(AFS_CCRULE) $(UTIL)/serverLog.c fileutil.o: ${UTIL}/fileutil.c $(AFS_CCRULE) $(UTIL)/fileutil.c volparse.o: ${UTIL}/volparse.c $(AFS_CCRULE) $(UTIL)/volparse.c flipbase64.o: ${UTIL}/flipbase64.c $(AFS_CCRULE) $(UTIL)/flipbase64.c dirpath.o: ${UTIL}/dirpath.c $(AFS_CCRULE) $(UTIL)/dirpath.c softsig.o: ${UTIL}/softsig.c $(AFS_CCRULE) $(UTIL)/softsig.c hostparse.o: ${UTIL}/hostparse.c $(AFS_CCRULE) $(UTIL)/hostparse.c pthread_glock.o: ${UTIL}/pthread_glock.c $(AFS_CCRULE) $(UTIL)/pthread_glock.c pthread_threadname.o: ${UTIL}/pthread_threadname.c $(AFS_CCRULE) $(UTIL)/pthread_threadname.c # # insert comments here # utst_server: utst_server.o utst_int.ss.o utst_int.xdr.o libubik_pthread.a ${RXOBJS} ${UTILOBJS} $(LT_LDRULE_static) utst_server.o utst_int.ss.o utst_int.xdr.o \ libubik_pthread.a $(LIBS) $(LIB_hcrypto) $(LIB_roken) utst_client: utst_client.o utst_int.cs.o utst_int.xdr.o libubik_pthread.a ${RXOBJS} ${UTILOBJS} $(LT_LDRULE_static) utst_client.o utst_int.cs.o utst_int.xdr.o \ libubik_pthread.a $(LIBS) $(LIB_hcrypto) $(LIB_roken) udebug: udebug.o libubik_pthread.a ${RXOBJS} ${UTILOBJS} $(LT_LDRULE_static) udebug.o libubik_pthread.a \ $(LIBS) $(LIB_hcrypto) $(LIB_roken) ubik_int.cs.c: ${UBIK}/ubik_int.xg ${RXGEN} -A -x -C -o $@ ${UBIK}/ubik_int.xg ubik_int.ss.c: ${UBIK}/ubik_int.xg ${RXGEN} -A -x -S -o $@ ${UBIK}/ubik_int.xg ubik_int.xdr.c: ${UBIK}/ubik_int.xg ${RXGEN} -A -x -c -o $@ ${UBIK}/ubik_int.xg ubik_int.h: ${UBIK}/ubik_int.xg ${RXGEN} -A -x -h -o $@ ${UBIK}/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}/ubik_int.xg Kubik_int.h ${RXGEN} -A -x -k -C -o Kubik_int.cs.c ${UBIK}/ubik_int.xg Kubik_int.xdr.c: ${UBIK}/ubik_int.xg ${RXGEN} -A -x -k -c -o Kubik_int.xdr.c ${UBIK}/ubik_int.xg Kubik_int.h: ${UBIK}/ubik_int.xg ${RXGEN} -A -x -k -h -o Kubik_int.h ${UBIK}/ubik_int.xg utst_int.ss.o: utst_int.ss.c utst_int.cs.o: utst_int.cs.c utst_int.xdr.o: utst_int.xdr.c utst_int.cs.c: ${UBIK}/utst_int.xg ${RXGEN} -A -C -u -o $@ ${UBIK}/utst_int.xg utst_int.ss.c: ${UBIK}/utst_int.xg ${RXGEN} -A -S -o $@ ${UBIK}/utst_int.xg utst_int.xdr.c: ${UBIK}/utst_int.xg ${RXGEN} -A -c -o $@ ${UBIK}/utst_int.xg utst_int.h: ${UBIK}/utst_int.xg ${RXGEN} -A -h -u -o $@ ${UBIK}/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: ${UBIK}/utst_server.c ${AFS_CCRULE} ${UBIK}/utst_server.c utst_client.o: ${UBIK}/utst_client.c ${AFS_CCRULE} ${UBIK}/utst_client.c udebug.o: ${UBIK}/udebug.c ${AFS_CCRULE} ${UBIK}/udebug.c uerrors.c ubik.h: ${UBIK}/uerrors.et ${UBIK}/ubik.p.h $(RM) -f ubik.h uerrors.c ${COMPILE_ET} -p ${UBIK} uerrors -h ubik libubik_pthread.a: ${INCLS} ${LIBOBJS} AFS_component_version_number.o -$(RM) -f $@ $(AR) crc $@ ${LIBOBJS} AFS_component_version_number.o $(RANLIB) $@ disk.o: ${UBIK}/disk.c $(AFS_CCRULE) $(UBIK)/disk.c uinit.o: ${UBIK}/uinit.c $(AFS_CCRULE) $(UBIK)/uinit.c remote.o: ${UBIK}/remote.c $(AFS_CCRULE) $(UBIK)/remote.c beacon.o: ${UBIK}/beacon.c $(AFS_CCRULE) $(UBIK)/beacon.c lock.o: ${UBIK}/lock.c $(AFS_CCRULE) $(UBIK)/lock.c recovery.o: ${UBIK}/recovery.c $(AFS_CCRULE) $(UBIK)/recovery.c ubik.o: ${UBIK}/ubik.c $(AFS_CCRULE) $(UBIK)/ubik.c phys.o: ${UBIK}/phys.c $(AFS_CCRULE) $(UBIK)/phys.c vote.o: ${UBIK}/vote.c $(AFS_CCRULE) $(UBIK)/vote.c ubikcmd.o: ${UBIK}/ubikcmd.c $(AFS_CCRULE) $(UBIK)/ubikcmd.c ubikclient.o: ${UBIK}/ubikclient.c $(AFS_CCRULE) $(UBIK)/ubikclient.c ubik_int.xdr.o: ubik_int.xdr.c # # Installation targets # test: all install: libubik_pthread.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_pthread.a ${DESTDIR}${libdir}/libubik_pthread.a if [ "x$(ENABLE_PTHREADED_UBIK)" = "xyes" ] ; then \ $(LT_INSTALL_PROGRAM) udebug ${DESTDIR}${bindir}/udebug; \ $(LT_INSTALL_PROGRAM) udebug ${DESTDIR}${afssrvbindir}/udebug; \ ${INSTALL_DATA} ubik.h ${DESTDIR}${includedir}/ubik.h; \ ${INSTALL_DATA} ubik_int.h ${DESTDIR}${includedir}/ubik_int.h; \ fi dest: libubik_pthread.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_pthread.a ${DEST}/lib/libubik_pthread.a if [ "x$(ENABLE_PTHREADED_UBIK)" = "xyes" ] ; then \ ${INSTALL_PROGRAM} udebug ${DEST}/bin/udebug; \ ${INSTALL_PROGRAM} udebug ${DEST}/root.server/usr/afs/bin/udebug; \ ${INSTALL_DATA} ubik.h ${DEST}/include/ubik.h; \ ${INSTALL_DATA} ubik_int.h ${DEST}/include/ubik_int.h; \ fi # # 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 ${TOP_LIBDIR}/libubik_pthread.a: libubik_pthread.a ${INSTALL} $? $@ ${TOP_INCDIR}/ubik.h: ubik.h ${INSTALL} $? $@ ${TOP_INCDIR}/ubik_int.h: ubik_int.h ${INSTALL} $? $@