1 # Copyright 2000, International Business Machines Corporation and others.
4 # This software has been released under the terms of the IBM Public
5 # License. For details, see the LICENSE file in the top-level source
6 # directory or online at http://www.openafs.org/dl/license10.html
8 # Portions Copyright (c) 2003 Apple Computer, Inc.
9 # Portions Copyright (c) 2006 Sine Nomine Associates
12 include @TOP_OBJDIR@/src/config/Makefile.config
14 INSTALL_DATA = @INSTALL_DATA@
15 INSTALL_PROGRAM = @INSTALL_PROGRAM@
16 INSTALL_SCRIPT = @INSTALL_SCRIPT@
19 CFLAGS=${COMMON_CFLAGS} -I.. -DNINTERFACE ${MT_CFLAGS} -DRXDEBUG -DFSSYNC_BUILD_CLIENT \
20 -DSALVSYNC_BUILD_SERVER -DSALVSYNC_BUILD_CLIENT
22 CCRULE=${CC} ${CFLAGS} -c $?
33 SALVAGEDOBJS=salvaged.o vol-salvage.o physio.o
35 DIROBJS=buffer.o dir.o salvage.o
37 LWPOBJS=lock.o threadname.o
39 UTILOBJS=assert.o uuid.o serverLog.o fileutil.o netutils.o dirpath.o volparse.o flipbase64.o softsig.o fstab.o
41 VLIBOBJS=vnode.o volume.o vutil.o partition.o fssync-client.o \
42 clone.o nuke.o devname.o listinodes.o ihandle.o \
43 namei_ops.o salvsync-server.o salvsync-client.o \
46 OBJECTS= ${SALVAGEDOBJS} ${UTILOBJS} ${VLIBOBJS} ${DIROBJS} ${LWPOBJS}
48 FSSDEBUG_OBJS = fssync-debug.o physio.o common.o ${UTILOBJS} ${VLIBOBJS} ${DIROBJS} ${LWPOBJS}
50 SSSDEBUG_OBJS = salvsync-debug.o physio.o common.o ${UTILOBJS} ${VLIBOBJS} ${DIROBJS} ${LWPOBJS}
52 LIBS=${TOP_LIBDIR}/libafsauthent.a ${TOP_LIBDIR}/libafsrpc.a ${TOP_LIBDIR}/util.a ${TOP_LIBDIR}/libcmd.a
54 all: salvageserver fssync-debug salvsync-debug
56 salvaged.o: ${VOL}/salvaged.c
59 vol-salvage.o: ${VOL}/vol-salvage.c
62 physio.o: ${VOL}/physio.c
65 # Uses an alignment hack to convert between incompatible pointers.
66 fssync-debug.o: ${VOL}/fssync-debug.c
67 $(CCOBJ) $(CFLAGS) @CFLAGS_NOSTRICT@ -c ${VOL}/fssync-debug.c
69 salvsync-debug.o: salvsync-debug.c
72 assert.o: ${UTIL}/assert.c
75 uuid.o: ${UTIL}/uuid.c
78 serverLog.o: ${UTIL}/serverLog.c
81 fileutil.o: ${UTIL}/fileutil.c
84 volparse.o: ${UTIL}/volparse.c
87 flipbase64.o: ${UTIL}/flipbase64.c
90 netutils.o: ${UTIL}/netutils.c
93 dirpath.o: ${UTIL}/dirpath.c
96 softsig.o: ${UTIL}/softsig.c
99 buffer.o: ${DIR}/buffer.c
105 salvage.o: ${DIR}/salvage.c
108 lock.o: ${LWP}/lock.c
111 threadname.o: ${LWP}/threadname.c
114 vnode.o: ${VOL}/vnode.c
117 volume.o: ${VOL}/volume.c
120 vutil.o: ${VOL}/vutil.c
123 partition.o: ${VOL}/partition.c
126 fssync-client.o: ${VOL}/fssync-client.c
129 salvsync-server.o: ${VOL}/salvsync-server.c
132 salvsync-client.o: ${VOL}/salvsync-client.c
135 daemon_com.o: ${VOL}/daemon_com.c
138 clone.o: ${VOL}/clone.c
141 nuke.o: ${VOL}/nuke.c
144 devname.o: ${VOL}/devname.c
148 fstab.o: ${UTIL}/fstab.c
151 common.o: ${VOL}/common.c
154 listinodes.o: ${VOL}/listinodes.c
157 ihandle.o: ${VOL}/ihandle.c
160 namei_ops.o: ${VOL}/namei_ops.c
163 salvageserver: ${OBJECTS} ${LIBS}
164 ${CC} ${LDFLAGS} -o salvageserver ${OBJECTS} ${LIBS} ${MT_LIBS} ${XLIBS}
166 fssync-debug: ${FSSDEBUG_OBJS} ${LIBS}
167 ${CC} ${LDFLAGS} -o fssync-debug ${FSSDEBUG_OBJS} ${LIBS} ${MT_LIBS} ${XLIBS}
169 salvsync-debug: ${SSSDEBUG_OBJS} ${LIBS}
170 ${CC} ${LDFLAGS} -o salvsync-debug ${SSSDEBUG_OBJS} ${LIBS} ${MT_LIBS} ${XLIBS}
172 install: salvageserver fssync-debug salvsync-debug
173 ${INSTALL} -d ${DESTDIR}${afssrvlibexecdir}
174 ${INSTALL} -d ${DESTDIR}${afssrvsbindir}
175 ${INSTALL_PROGRAM} salvageserver \
176 ${DESTDIR}${afssrvlibexecdir}/salvageserver
177 ${INSTALL_PROGRAM} fssync-debug \
178 ${DESTDIR}${afssrvsbindir}/fssync-debug
179 ${INSTALL_PROGRAM} salvsync-debug \
180 ${DESTDIR}${afssrvsbindir}/salvsync-debug
182 dest: salvageserver fssync-debug salvsync-debug
183 ${INSTALL} -d ${DEST}/root.server/usr/afs/bin
184 ${INSTALL_PROGRAM} salvageserver \
185 ${DEST}/root.server/usr/afs/bin/salvageserver
186 ${INSTALL_PROGRAM} fssync-debug \
187 ${DEST}/root.server/usr/afs/bin/fssync-debug
188 ${INSTALL_PROGRAM} salvsync-debug \
189 ${DEST}/root.server/usr/afs/bin/salvsync-debug
192 $(RM) -f *.o salvageserver core AFS_component_version_number.c fssync-debug salvsync-debug
194 include ../config/Makefile.version