# 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
+INSTALL = @INSTALL@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
CC=${MT_CC}
-CFLAGS=${COMMON_CFLAGS} -I.. -DNINTERFACE ${MT_CFLAGS} -DRXDEBUG
+CFLAGS=${COMMON_CFLAGS} -I.. -DNINTERFACE ${MT_CFLAGS} -DRXDEBUG -DFSSYNC_BUILD_SERVER -DSALVSYNC_BUILD_CLIENT
CCRULE=${CC} ${CFLAGS} -c $?
+RX=../rx
VICED=../viced
VLSERVER=../vlserver
LWP=../lwp
VOL=../vol
FSINT=../fsint
-VICEDOBJS=viced.o afsfileprocs.o host.o physio.o callback.o
+VICEDOBJS=viced.o afsfileprocs.o host.o physio.o callback.o serialize_state.o
VLSERVEROBJS=vldbint.cs.o vldbint.xdr.o
-LWPOBJS=lock.o fasttime.o threadname.o
+LWPOBJS=lock.o threadname.o
LIBACLOBJS=aclprocs.o netprocs.o
-UTILOBJS=assert.o uuid.o serverLog.o fileutil.o netutils.o dirpath.o volparse.o flipbase64.o
+UTILOBJS=assert.o uuid.o serverLog.o fileutil.o netutils.o dirpath.o volparse.o flipbase64.o softsig.o
DIROBJS=buffer.o dir.o salvage.o
-VOLOBJS= vnode.o volume.o vutil.o partition.o fssync.o purge.o \
- clone.o devname.o common.o ihandle.o listinodes.o namei_ops.o
+VOLOBJS= vnode.o volume.o vutil.o partition.o fssync-server.o \
+ clone.o devname.o common.o ihandle.o listinodes.o namei_ops.o \
+ fstab.o salvsync-client.o daemon_com.o
FSINTOBJS= afsaux.o afscbint.cs.o afsint.ss.o afsint.xdr.o
+RXOBJS = rx_pthread.o
+
objects= ${VICEDOBJS} ${VLSERVEROBJS} ${LWPOBJS} ${LIBACLOBJS} \
- ${UTILOBJS} ${DIROBJS} ${VOLOBJS} ${FSINTOBJS}
+ ${UTILOBJS} ${DIROBJS} ${VOLOBJS} ${FSINTOBJS} ${RXOBJS}
+
+SDBGOBJS = state_analyzer.o uuid.o dirpath.o fileutil.o ${TOP_LIBDIR}/util.a
LIBS=${TOP_LIBDIR}/libafsauthent.a ${TOP_LIBDIR}/libafsrpc.a ${TOP_LIBDIR}/util.a
-all: fileserver
+all: fileserver state_analyzer
+
+rx_pthread.o: ${RX}/rx_pthread.c
+ ${CCRULE} -DDPF_FSLOG
viced.o: ${VICED}/viced.c
${CCRULE}
callback.o: ${VICED}/callback.c
${CCRULE}
+serialize_state.o: ./serialize_state.c
+ ${CCRULE}
+
assert.o: ${UTIL}/assert.c
${CCRULE}
dirpath.o: ${UTIL}/dirpath.c
${CCRULE}
-lock.o: ${LWP}/lock.c
+softsig.o: ${UTIL}/softsig.c
${CCRULE}
-fasttime.o: ${LWP}/fasttime.c
+lock.o: ${LWP}/lock.c
${CCRULE}
threadname.o: ${LWP}/threadname.c
partition.o: ${VOL}/partition.c
${CCRULE}
-fssync.o: ${VOL}/fssync.c
+fssync-server.o: ${VOL}/fssync-server.c
+ ${CCRULE}
+
+fssync-client.o: ${VOL}/fssync-client.c
${CCRULE}
-purge.o: ${VOL}/purge.c
+salvsync-client.o: ${VOL}/salvsync-client.c
+ ${CCRULE}
+
+daemon_com.o: ${VOL}/daemon_com.c
${CCRULE}
clone.o: ${VOL}/clone.c
devname.o: ${VOL}/devname.c
${CCRULE}
+# only for darwin?
+fstab.o: ${UTIL}/fstab.c
+ ${CCRULE}
+
common.o: ${VOL}/common.c
${CCRULE}
${CCRULE}
afsint.xdr.o: ${FSINT}/afsint.xdr.c
+ ${CCRULE} @CFLAGS_NOERROR@
+
+state_analyzer.o: state_analyzer.c
${CCRULE}
fileserver: ${objects} ${LIBS}
${CC} ${LDFLAGS} -o fileserver ${objects} ${LIBS} ${MT_LIBS} ${XLIBS}
-${DEST}/root.server/usr/afs/bin/fileserver: fileserver
- ${INSTALL} -ns $? $@
+state_analyzer: ${SDBGOBJS}
+ ${CC} ${LDFLAGS} -o state_analyzer ${SDBGOBJS} ${MT_LIBS} ${XLIBS}
-install: ${DESTDIR}${afssrvlibexecdir}/fileserver
+install: fileserver state_analyzer
+ ${INSTALL} -d ${DESTDIR}${afssrvlibexecdir}
+ ${INSTALL} -d ${DESTDIR}${afssrvsbindir}
+ ${INSTALL} fileserver \
+ ${DESTDIR}${afssrvlibexecdir}/fileserver
+ ${INSTALL_PROGRAM} state_analyzer \
+ ${DESTDIR}${afssrvsbindir}/state_analyzer
+
+dest: fileserver state_analyzer
+ ${INSTALL} -d ${DEST}/root.server/usr/afs/bin
+ ${INSTALL} fileserver \
+ ${DEST}/root.server/usr/afs/bin/fileserver
+ ${INSTALL_PROGRAM} state_analyzer \
+ ${DEST}/root.server/usr/afs/bin/state_analyzer
clean:
- $(RM) -f *.o fileserver core AFS_component_version_number.c
+ $(RM) -f *.o fileserver state_analyzer core AFS_component_version_number.c
include ../config/Makefile.version
-
-${DESTDIR}${afssrvlibexecdir}/fileserver: fileserver
- ${INSTALL} -ns $? $@
-
-dest: ${DEST}/root.server/usr/afs/bin/fileserver
-