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
9 include @TOP_OBJDIR@/src/config/Makefile.config
12 CCRULE=${MT_CC} ${CFLAGS} ${MT_CFLAGS} -c $?
18 RXOBJS= rx_pthread.o rxkad_errs.o
20 UTILOBJS=assert.o uuid.o serverLog.o fileutil.o netutils.o dirpath.o \
21 volparse.o flipbase64.o softsig.o hostparse.o snprintf.o pthread_glock.o
23 INCLS=${TOP_INCDIR}/ubik.h \
24 ${TOP_INCDIR}/lock.h \
26 ${TOP_INCDIR}/rx/rx.h \
27 ${TOP_INCDIR}/rx/xdr.h \
28 ${TOP_INCDIR}/afs/keys.h \
29 ${TOP_INCDIR}/afs/cellconfig.h \
30 ${PTSERVER}/ptserver.h \
31 ${PTSERVER}/ptclient.h \
32 ${PTSERVER}/ptuser.h \
36 ${PTSERVER}/ptprototypes.h
38 LINCLS=${TOP_INCDIR}/ubik.h \
39 ${TOP_INCDIR}/lock.h \
40 ${TOP_INCDIR}/rx/rx.h \
41 ${TOP_INCDIR}/rx/xdr.h \
42 ${TOP_INCDIR}/rx/rxkad.h \
43 ${TOP_INCDIR}/afs/auth.h \
44 ${TOP_INCDIR}/afs/cellconfig.h \
45 ${PTSERVER}/ptclient.h \
46 ${PTSERVER}/ptuser.h \
50 LIBS=${RXOBJS} ${UTILOBJS}\
51 ${TOP_LIBDIR}/libubik_pthread.a \
52 ${TOP_LIBDIR}/libafsauthent.a \
53 ${TOP_LIBDIR}/libafsrpc.a \
54 ${TOP_LIBDIR}/libcmd.a \
55 ${TOP_LIBDIR}/libafsutil.a
57 all: ptserver pts pt_util db_verify ${TOP_LIBDIR}/libprot.a \
58 depinstall readgroup readpwd testpt
66 rx_pthread.o: ${RX}/rx_pthread.c
69 rxkad_errs.o: ../rxkad/rxkad_errs.c
73 # get the pthreaded util stuff compiled here. we do this instead of
74 # using the non-pthreaded libutil.a. There probably should be a
75 # pthreaded version of this library, as we are doing with ubik itself, but...
78 assert.o: ${UTIL}/assert.c
81 uuid.o: ${UTIL}/uuid.c
84 serverLog.o: ${UTIL}/serverLog.c
87 fileutil.o: ${UTIL}/fileutil.c
90 volparse.o: ${UTIL}/volparse.c
93 flipbase64.o: ${UTIL}/flipbase64.c
96 netutils.o: ${UTIL}/netutils.c
99 dirpath.o: ${UTIL}/dirpath.c
102 softsig.o: ${UTIL}/softsig.c
105 hostparse.o: ${UTIL}/hostparse.c
108 snprintf.o: ${UTIL}/snprintf.c
111 pthread_glock.o: ${UTIL}/pthread_glock.c
115 ptserver.o: ${PTSERVER}/ptserver.c
118 ptutils.o: ${PTSERVER}/ptutils.c
121 ptprocs.o: ${PTSERVER}/ptprocs.c
124 utils.o: ${PTSERVER}/utils.c
127 map.o: ${PTSERVER}/map.c
130 ptint.ss.o: ptint.ss.c
133 ptint.cs.o: ptint.cs.c
136 ptint.xdr.o: ptint.xdr.c
139 ptint.cs.c: ${PTSERVER}/ptint.xg
140 ${RXGEN} -x -C -u -o $@ ${PTSERVER}/ptint.xg
142 ptint.ss.c: ${PTSERVER}/ptint.xg
143 ${RXGEN} -x -S -o $@ ${PTSERVER}/ptint.xg
145 ptint.xdr.c: ${PTSERVER}/ptint.xg
146 ${RXGEN} -x -c -o $@ ${PTSERVER}/ptint.xg
148 ptint.h: ${PTSERVER}/ptint.xg
149 ${RXGEN} -x -h -u -o $@ ${PTSERVER}/ptint.xg
155 Kptint.cs.c: ${PTSERVER}/ptint.xg Kptint.h
156 ${RXGEN} -x -k -C -o Kptint.cs.c ${PTSERVER}/ptint.xg
158 Kptint.xdr.c: ${PTSERVER}/ptint.xg
159 ${RXGEN} -x -k -c -o Kptint.xdr.c ${PTSERVER}/ptint.xg
161 Kptint.h: ${PTSERVER}/ptint.xg
162 ${RXGEN} -x -k -h -o Kptint.h ${PTSERVER}/ptint.xg
164 display.o: ${PTSERVER}/display.c
167 ptserver: ptserver.o ptutils.o ptprocs.o ptint.ss.o ptint.xdr.o utils.o $(LIBS) ${TOP_LIBDIR}/libaudit.a map.o
168 ${CC} ${LDFLAGS} -o ptserver ptserver.o ptutils.o ptprocs.o ptint.ss.o ptint.xdr.o utils.o map.o $(LIBS) ${MT_LIBS} ${XLIBS} ${TOP_LIBDIR}/libaudit.a
170 db_verify.o: ${PTSERVER}/db_verify.c
173 db_verify: db_verify.o pterror.o display.o $(LIBS)
174 $(CC) ${LDFLAGS} -o db_verify db_verify.o display.o pterror.o $(LIBS) ${MT_LIBS} ${XLIBS}
176 ptclient: ptclient.o display.o libprot.a $(LIBS)
177 $(CC) ${LDFLAGS} -o ptclient ptclient.o display.o libprot.a $(LIBS) ${MT_LIBS} ${XLIBS}
179 ptclient.o: ${PTSERVER}/ptclient.c
182 ptuser.o: ${PTSERVER}/ptuser.c
185 pterror.h pterror.c: ${PTSERVER}/pterror.et
186 $(RM) -f pterror.h pterror.c
187 ${COMPILE_ET} -p ${PTSERVER} pterror
189 libprot.a: ptuser.o pterror.o ptint.cs.o ptint.xdr.o AFS_component_version_number.o
191 $(AR) crv $@ ptuser.o pterror.o ptint.cs.o ptint.xdr.o AFS_component_version_number.o
194 pts: pts.o libprot.a ${TOP_LIBDIR}/libcmd.a $(LIBS)
195 $(CC) ${LDFLAGS} -o pts pts.o ${TOP_LIBDIR}/libcmd.a libprot.a ${LIBS} ${MT_LIBS} ${XLIBS}
197 pts.o: ${PTSERVER}/pts.c
200 readgroup: readgroup.o libprot.a $(LIBS)
201 $(CC) ${CFLAGS} -o readgroup readgroup.o libprot.a ${LIBS} ${MT_LIBS} ${XLIBS}
203 readgroup.o: ${PTSERVER}/readgroup.c
206 readpwd: readpwd.o libprot.a $(LIBS)
207 $(CC) ${CFLAGS} -o readpwd readpwd.o libprot.a ${LIBS} ${MT_LIBS} ${XLIBS}
209 readpwd.o: ${PTSERVER}/readpwd.c
212 testpt: testpt.o libprot.a ${TOP_LIBDIR}/libcmd.a $(LIBS)
213 $(CC) ${CFLAGS} -o testpt testpt.o -lm ${TOP_LIBDIR}/libcmd.a libprot.a $(LIBS) ${MT_LIBS} ${XLIBS}
215 testpt.o: ${PTSERVER}/testpt.c
218 pt_util: pt_util.o ptutils.o ubik.o utils.o map.o libprot.a $(LIBS)
219 $(CC) ${CFLAGS} -o pt_util pt_util.o ptutils.o ubik.o utils.o map.o libprot.a ${TOP_LIBDIR}/libcmd.a $(LIBS) ${MT_LIBS} ${XLIBS}
221 pt_util.o: ${PTSERVER}/pt_util.c
224 ubik.o: ${PTSERVER}/ubik.c
229 echo '#define ERROR_TABLE_BASE_pr ERROR_TABLE_BASE_PT' >> $@
232 # Installation targets
235 ${DESTDIR}${afssrvlibexecdir}/ptserver \
236 ${DESTDIR}${afssrvbindir}/pts \
237 ${DESTDIR}${bindir}/pts \
238 ${DESTDIR}${afssrvsbindir}/pt_util \
239 ${DESTDIR}${afssrvsbindir}/prdb_check
241 ${DEST}/root.server/usr/afs/bin/ptserver: ptserver
244 ${DEST}/bin/pts ${DEST}/root.server/usr/afs/bin/pts: pts
247 ${DEST}/root.server/usr/afs/bin/pt_util: pt_util
250 ${DEST}/etc/prdb_check: db_verify
257 $(RM) -f *.a *.o ptserver ptint.cs.c ptint.ss.c ptclient ptint.xdr.c ptint.h \
258 libprot.a pts readgroup readpwd db_verify testpt pt_util pterror.h pterror.c \
259 core AFS_component_version_number.c Kptint.cs.c Kptint.h Kptint.xdr.c
261 include ../config/Makefile.version
262 ${DESTDIR}${afssrvlibexecdir}/ptserver: ptserver
265 ${DESTDIR}${afssrvbindir}/pts: pts
268 ${DESTDIR}${bindir}/pts: pts
271 ${DESTDIR}${afssrvsbindir}/pt_util: pt_util
274 ${DESTDIR}${afssrvsbindir}/prdb_check: db_verify
277 ${DESTDIR}${libdir}/afs/libprot.a: libprot.a
280 ${TOP_LIBDIR}/libprot.a: libprot.a
283 ${DESTDIR}${includedir}/afs/prclient.h: ${PTSERVER}/ptclient.h
286 ${TOP_INCDIR}/afs/prclient.h: ${PTSERVER}/ptclient.h
289 ${DESTDIR}${includedir}/afs/prerror.h: pterror.h
292 ${TOP_INCDIR}/afs/prerror.h: pterror.h
295 ${DESTDIR}${includedir}/afs/print.h: ptint.h
298 ${TOP_INCDIR}/afs/print.h: ptint.h
301 ${DESTDIR}${includedir}/afs/prserver.h: ${PTSERVER}/ptserver.h
304 ${TOP_INCDIR}/afs/prserver.h: ${PTSERVER}/ptserver.h
307 ${DESTDIR}${includedir}/afs/ptclient.h: ${PTSERVER}/ptclient.h
310 ${DESTDIR}${includedir}/afs/ptuser.h: ${PTSERVER}/ptuser.h
313 ${TOP_INCDIR}/afs/ptclient.h: ${PTSERVER}/ptclient.h
316 ${TOP_INCDIR}/afs/ptuser.h: ${PTSERVER}/ptuser.h
319 ${DESTDIR}${includedir}/afs/pterror.h: pterror.h
322 ${TOP_INCDIR}/afs/pterror.h: pterror.h
325 ${DESTDIR}${includedir}/afs/ptint.h: ptint.h
328 ${TOP_INCDIR}/afs/ptint.h: ptint.h
331 ${DESTDIR}${includedir}/afs/ptserver.h: ${PTSERVER}/ptserver.h
334 ${TOP_INCDIR}/afs/ptserver.h: ${PTSERVER}/ptserver.h
339 ${DEST}/root.server/usr/afs/bin/ptserver \
340 ${DEST}/root.server/usr/afs/bin/pts \
342 ${DEST}/root.server/usr/afs/bin/pt_util \
343 ${DEST}/etc/prdb_check