# 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 INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ HELPER_SPLINT=@HELPER_SPLINT@ VINCLS=${TOP_INCDIR}/afs/partition.h ${TOP_INCDIR}/afs/volume.h \ ${TOP_INCDIR}/afs/vlserver.h vol.h dump.h volser.h lockdata.h \ voltrans_inline.h RINCLS=${TOP_INCDIR}/rx/rx.h ${TOP_INCDIR}/rx/xdr.h \ ${TOP_INCDIR}/afs/keys.h ${TOP_INCDIR}/afs/cellconfig.h \ ${TOP_INCDIR}/ubik.h ${TOP_INCDIR}/afs/cmd.h INTINCLS=volint.h volser.h volser_prototypes.h volser_internal.h LIBS=\ ${TOP_LIBDIR}/libaudit.a \ ${TOP_LIBDIR}/vlib.a \ ${TOP_LIBDIR}/libacl.a \ ${TOP_LIBDIR}/libsys.a \ ${TOP_LIBDIR}/libvldb.a \ ${TOP_LIBDIR}/libubik.a \ ${TOP_LIBDIR}/libauth.a \ ${TOP_LIBDIR}/libcmd.a \ ${TOP_LIBDIR}/librxkad.a \ ${TOP_LIBDIR}/libdes.a \ ${TOP_LIBDIR}/librxstat.a \ ${TOP_LIBDIR}/librx.a \ ${TOP_LIBDIR}/liblwp.a \ ${TOP_LIBDIR}/libsys.a \ ${TOP_LIBDIR}/libcom_err.a \ ${TOP_LIBDIR}/libkauth.a \ ${TOP_LIBDIR}/libusd.a \ ${TOP_LIBDIR}/util.a VOLDUMP_LIBS = \ ../vol/ihandle.o \ ../vol/physio.o \ ../vol/vlib.a \ ${TOP_LIBDIR}/libcmd.a \ ${TOP_LIBDIR}/util.a \ ${TOP_LIBDIR}/libsys.a \ ${TOP_LIBDIR}/libcom_err.a \ ${TOP_LIBDIR}/libdir.a \ ${TOP_LIBDIR}/liblwp.a \ ${TOP_LIBDIR}/libacl.a VSOBJS=vsprocs.o vsutils.o lockprocs.o volint.xdr.o volerr.o SOBJS=volmain.o volprocs.o physio.o common.o voltrans.o volerr.o \ volint.cs.o dumpstuff.o volint.ss.o volint.xdr.o vol_split.o all: volserver vos restorevol voldump \ ${TOP_INCDIR}/afs/volser.h \ ${TOP_INCDIR}/afs/vsutils_prototypes.h \ ${TOP_INCDIR}/afs/volser_prototypes.h \ ${TOP_INCDIR}/afs/volint.h \ ${TOP_LIBDIR}/libvolser.a generated: volser.h volerr.c volint.cs.c volint.ss.c volint.xdr.c volint.h ${TOP_INCDIR}/afs/vsutils_prototypes.h: vsutils_prototypes.h ${INSTALL_DATA} $? $@ ${TOP_INCDIR}/afs/volser_prototypes.h: volser_prototypes.h ${INSTALL_DATA} $? $@ ${TOP_INCDIR}/afs/volser.h: volser.h ${INSTALL_DATA} $? $@ ${TOP_INCDIR}/afs/volint.h: volint.h ${INSTALL_DATA} $? $@ ${TOP_LIBDIR}/libvolser.a: libvolser.a ${INSTALL_DATA} $? $@ restorevol: restorevol.c ${CC} ${CFLAGS} -o restorevol ${srcdir}/restorevol.c \ ${TOP_LIBDIR}/libcmd.a ${TOP_LIBDIR}/util.a ${XLIBS} vos: vos.o ${VSOBJS} libvolser.a ${LIBS} ${CC} ${LDFLAGS} -o vos vos.o $(VSOBJS) libvolser.a ${LIBS} ${XLIBS} volserver: $(SOBJS) $(LIBS) ${TOP_LIBDIR}/libdir.a ${CC} ${DBUG} -o volserver $(SOBJS) ${TOP_LIBDIR}/libdir.a \ ${LDFLAGS} $(LIBS) ${XLIBS} voldump: vol-dump.o ${VOLDUMP_LIBS} ${CC} ${CFLAGS} -o voldump vol-dump.o ${VOLDUMP_LIBS} ${XLIBS} libvolser.a: volint.cs.o $(VSOBJS) volint.ss.o AFS_component_version_number.o -$(RM) -f $@ $(AR) crv $@ volint.cs.o $(VSOBJS) volint.ss.o AFS_component_version_number.o $(RANLIB) $@ volser.h: volerr.c volerr.c: volerr.et volser.p.h $(RM) -f volser.h volerr.c ${COMPILE_ET} -p ${srcdir} volerr -h volser volint.cs.c: volint.xg ${RXGEN} -A -x -C -o $@ ${srcdir}/volint.xg volint.ss.c: volint.xg ${RXGEN} -A -x -S -o $@ ${srcdir}/volint.xg volint.xdr.c: volint.xg ${RXGEN} -A -x -c -o $@ ${srcdir}/volint.xg volint.h: volint.xg ${RXGEN} -A -x -h -o $@ ${srcdir}/volint.xg volint.cs.c: volint.h volint.ss.c: volint.h volint.xdr.c: volint.h # # Dependencies # volint.cs.o: volint.cs.c ${INTINCLS} volint.ss.o: volint.ss.c ${INTINCLS} volint.xdr.o: volint.xdr.c ${INTINCLS} vsutils.o: vsutils.c ${VINCLS} ${RINCLS} ${INTINCLS} volmain.o: volmain.c ${VINCLS} ${RINCLS} ${INTINCLS} AFS_component_version_number.c volprocs.o: volprocs.c ${VINCLS} ${RINCLS} ${INTINCLS} dumpstuff.o: dumpstuff.c ${VINCLS} ${RINCLS} ${INTINCLS} voldump.o: voldump.c ${VINCLS} ${RINCLS} vos.o: vos.c ${VINCLS} ${RINCLS} ${INTINCLS} AFS_component_version_number.c vsprocs.o: vsprocs.c ${VINCLS} ${RINCLS} ${INTINCLS} physio.o: physio.c ${VINCLS} common.o: common.c ${VINCLS} lockprocs.o: lockprocs.c ${VINCLS} ${INTINCLS} ${RINCLS} vol_split.o: vol_split.c ${VINCLS} ${INTINCLS} ${RINCLS} # # Installation targets # install: restorevol voldump volser.h volint.h vos volserver libvolser.a ${INSTALL} -d ${DESTDIR}${sbindir} ${INSTALL} -d ${DESTDIR}${afssrvsbindir} ${INSTALL} -d ${DESTDIR}${includedir}/afs ${INSTALL} -d ${DESTDIR}${libdir}/afs ${INSTALL} -d ${DESTDIR}${afssrvlibexecdir} ${INSTALL_PROGRAM} restorevol ${DESTDIR}${bindir}/restorevol ${INSTALL_PROGRAM} voldump ${DESTDIR}${sbindir}/voldump ${INSTALL_DATA} volser.h ${DESTDIR}${includedir}/afs/volser.h ${INSTALL_DATA} volint.h ${DESTDIR}${includedir}/afs/volint.h ${INSTALL_DATA} ${srcdir}/vsutils_prototypes.h ${DESTDIR}${includedir}/afs/vsutils_prototypes.h ${INSTALL_PROGRAM} vos ${DESTDIR}${sbindir}/vos ${INSTALL_PROGRAM} vos ${DESTDIR}${afssrvsbindir}/vos ${INSTALL_DATA} libvolser.a ${DESTDIR}${libdir}/afs/libvolser.a @case ${SYS_NAME} in \ alpha_dux4*|*linux*|rs_aix*|sgi_6*|sun4x*|sunx86*) \ echo "Don't install volserver for ${SYS_NAME}" ;; \ *_darwin_[1-6][0-9]) \ echo ${INSTALL} volserver \ ${DESTDIR}${afssrvlibexecdir}/volserver ; \ ${INSTALL} volserver \ ${DESTDIR}${afssrvlibexecdir}/volserver ;; \ *_darwin_*) \ echo "Don't install volserver for ${SYS_NAME}" ;; \ *) \ echo ${INSTALL_PRORAM} volserver \ ${DESTDIR}${afssrvlibexecdir}/volserver ; \ ${INSTALL} volserver \ ${DESTDIR}${afssrvlibexecdir}/volserver ;; \ esac dest: restorevol voldump volser.h volint.h vos volserver libvolser.a ${INSTALL} -d ${DEST}/etc ${INSTALL} -d ${DEST}/include/afs ${INSTALL} -d ${DEST}/lib/afs ${INSTALL} -d ${DEST}/root.server/usr/afs/bin ${INSTALL_PROGRAM} restorevol ${DEST}/root.server/usr/afs/bin/restorevol ${INSTALL_PROGRAM} voldump ${DEST}/etc/voldump ${INSTALL_DATA} volser.h ${DEST}/include/afs/volser.h ${INSTALL_DATA} volint.h ${DEST}/include/afs/volint.h ${INSTALL_DATA} ${srcdir}/vsutils_prototypes.h ${DEST}/include/afs/vsutils_prototypes.h ${INSTALL_PROGRAM} vos ${DEST}/etc/vos ${INSTALL_PROGRAM} vos ${DEST}/root.server/usr/afs/bin/vos ${INSTALL_DATA} libvolser.a ${DEST}/lib/afs/libvolser.a @case ${SYS_NAME} in \ alpha_dux4*|*linux*|rs_aix*|sgi_6*|sun4x*|sunx86*) \ echo "Don't install volserver for ${SYS_NAME}" ;; \ *_darwin_[1-6][0-9]) \ echo ${INSTALL} volserver \ ${DEST}/root.server/usr/afs/bin/volserver ; \ ${INSTALL} -ns volserver \ ${DEST}/root.server/usr/afs/bin/volserver ;; \ *_darwin_*) \ echo "Don't install volserver for ${SYS_NAME}" ;; \ *) \ echo ${INSTALL} volserver \ ${DEST}/root.server/usr/afs/bin/volserver ; \ ${INSTALL} volserver \ ${DEST}/root.server/usr/afs/bin/volserver ;; \ esac # # Misc targets # clean: $(RM) -f *.o *.a core volserver volint.ss.c volint.cs.c volint.h \ volint.xdr.c vos volser.h volerr.c AFS_component_version_number.c restorevol voldump check-splint:: sh $(HELPER_SPLINT) $(CFLAGS) \ vos.c restorevol.c \ vsprocs.c vsutils.c lockprocs.c volerr.c \ volmain.c volprocs.c physio.c common.c voltrans.c \ dumpstuff.c vol_split.c include ../config/Makefile.version