disconnected-20080523
[openafs.git] / src / libuafs / Makefile.common.in
1 # Copyright 2000, International Business Machines Corporation and others.
2 # All Rights Reserved.
3
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
7
8 # Common elements for Makefiles for all system types.
9 #
10
11 SHELL=/bin/sh
12 INCLUDE=  -I. -I/usr/include -I${TOP_OBJDIR}/src/config
13 UOBJ    =../UAFS
14 JUAFS   =../JUAFS
15 WEBOBJ=../AFSWEB
16 AFS     =../afs
17 RX      =../rx
18 AFSINT=../afsint
19 DES     =../des
20 LIB     =../lib
21 NS_INCL =SRC/../afsweb/netscape_includes
22
23 TOP_OBJ_FSINT = ${TOP_OBJDIR}/src/fsint
24 TOP_OBJ_RXSTAT = ${TOP_OBJDIR}/src/rxstat
25 TOP_OBJ_VLSERVER = ${TOP_OBJDIR}/src/vlserver
26
27 TOP_SRC_AFS = ${TOP_SRCDIR}/afs
28 TOP_SRC_RXSTAT = ${TOP_SRCDIR}/rxstat
29 TOP_SRC_FSINT = ${TOP_SRCDIR}/fsint
30 TOP_SRC_RX = ${TOP_SRCDIR}/rx
31 TOP_SRC_VNOPS = ${TOP_SRCDIR}/afs/VNOPS
32 TOP_SRC_RXKAD = ${TOP_SRCDIR}/rxkad
33
34 COMMON_INCLUDE = -I. -I.. -I../nfs \
35         -I${TOP_SRCDIR} \
36         -I${TOP_SRCDIR}/afs \
37         -I${TOP_SRCDIR}/afs/UKERNEL \
38         -I${TOP_SRCDIR}/config \
39         -I${TOP_SRCDIR}/rx \
40         -I${TOP_SRCDIR}/rx/UKERNEL \
41         -I${TOP_SRCDIR}/rxkad \
42         -I${TOP_SRCDIR}/rxkad/domestic \
43         -I${TOP_SRCDIR}/util \
44         -I${TOP_OBJDIR}/src \
45         -I${TOP_OBJDIR}/src/afs/UKERNEL \
46         -I${TOP_OBJDIR}/src/afs \
47         -I${TOP_OBJDIR}/src/util \
48         -I${TOP_OBJDIR}/src/rxkad \
49         -I${TOP_OBJDIR}/src/config \
50         -I${TOP_OBJDIR}/src/fsint \
51         -I${TOP_OBJDIR}/src/vlserver \
52         -I${TOP_OBJDIR}/src/libuafs \
53         -I${TOP_INCDIR} \
54         -I${TOP_INCDIR}/afs 
55
56 # Build rules - CC and CFLAGS are defined in system specific MakefileProtos.
57
58 all: ${TOP_LIBDIR}/$(LIBJUAFS) ${TOP_LIBDIR}/$(LIBUAFS) linktest
59
60 ${TOP_LIBDIR}/$(LIBAFSWEB): AFSWEB/$(LIBAFSWEB)
61         ${INSTALL_DATA} $? $@
62
63 ${TOP_LIBDIR}/$(LIBAFSWEBKRB): AFSWEB/$(LIBAFSWEBKRB)
64         ${INSTALL_DATA} $? $@
65
66 ${TOP_LIBDIR}/$(LIBUAFS): UAFS/$(LIBUAFS)
67         ${INSTALL_DATA} $? $@
68
69 ${TOP_LIBDIR}/$(LIBJUAFS): JUAFS/$(LIBJUAFS)
70         ${INSTALL_DATA} $? $@
71
72 webinstall: all \
73         ${TOP_LIBDIR}/$(LIBAFSWEB) \
74         ${TOP_LIBDIR}/$(LIBAFSWEBKRB) 
75
76 linktest: UAFS/$(LIBUAFS) ${TOP_OBJDIR}/lib/libdes.a
77         $(CC) $(TEST_CFLAGS) $(TEST_LDFLAGS) -o linktest ${srcdir}/linktest.c $(COMMON_INCLUDE) -DUKERNEL UAFS/$(LIBUAFS) ${TOP_LIBDIR}/libdes.a ${TOP_LIBDIR}/libafsutil.a $(TEST_LIBS) $(XLIBS)
78
79
80 CRULE1= $(CC) $(COMMON_INCLUDE) $(OPTF) -DKERNEL $(LIBJUAFS_FLAGS) $(CFLAGS) -c $?
81 CRULE2= $(CC) $(COMMON_INCLUDE) $(OPTF) $(WEBOPTS) -DKERNEL $(LIBJUAFS_FLAGS) $(CFLAGS) -c $?
82
83 UAFSOBJ = \
84         $(UOBJ)/afs_atomlist.o \
85         $(UOBJ)/afs_lhash.o \
86         $(UOBJ)/afs_analyze.o \
87         $(UOBJ)/afs_error.o \
88         $(UOBJ)/afs_axscache.o  \
89         $(UOBJ)/afs_buffer.o    \
90         $(UOBJ)/afs_callback.o  \
91         $(UOBJ)/afs_cbqueue.o    \
92         $(UOBJ)/afs_cell.o \
93         $(UOBJ)/afs_chunk.o             \
94         $(UOBJ)/afs_conn.o \
95         $(UOBJ)/afs_daemons.o   \
96         $(UOBJ)/afs_dcache.o \
97         $(UOBJ)/afs_dir.o               \
98         $(UOBJ)/afs_disconnected.o      \
99         $(UOBJ)/afs_dynroot.o \
100         $(UOBJ)/afs_icl.o \
101         $(UOBJ)/afs_init.o \
102         $(UOBJ)/afs_lock.o      \
103         $(UOBJ)/afs_mariner.o \
104         $(UOBJ)/afs_memcache.o  \
105         $(UOBJ)/afs_md5.o       \
106         $(UOBJ)/afs_osidnlc.o   \
107         $(UOBJ)/afs_osi_pag.o \
108         $(UOBJ)/afs_segments.o \
109         $(UOBJ)/afs_server.o \
110         $(UOBJ)/afs_stat.o \
111         $(UOBJ)/afs_syscall.o \
112         $(UOBJ)/afs_user.o \
113         $(UOBJ)/afs_util.o \
114         $(UOBJ)/afs_vcache.o \
115         $(UOBJ)/afs_osi_uio.o \
116         $(UOBJ)/afs_vnop_access.o \
117         $(UOBJ)/afs_vnop_attrs.o \
118         $(UOBJ)/afs_vnop_create.o \
119         $(UOBJ)/afs_vnop_dirops.o \
120         $(UOBJ)/afs_vnop_fid.o \
121         $(UOBJ)/afs_vnop_flock.o \
122         $(UOBJ)/afs_vnop_link.o \
123         $(UOBJ)/afs_vnop_lookup.o \
124         $(UOBJ)/afs_vnop_open.o \
125         $(UOBJ)/afs_vnop_read.o \
126         $(UOBJ)/afs_vnop_readdir.o \
127         $(UOBJ)/afs_vnop_remove.o \
128         $(UOBJ)/afs_vnop_rename.o \
129         $(UOBJ)/afs_vnop_strategy.o \
130         $(UOBJ)/afs_vnop_symlink.o \
131         $(UOBJ)/afs_vnop_write.o \
132         $(UOBJ)/afs_volume.o \
133         $(UOBJ)/afs_call.o \
134         $(UOBJ)/afs_pioctl.o \
135         $(UOBJ)/osi_vfsops.o \
136         $(UOBJ)/afs_usrops.o \
137         $(UOBJ)/xdr_afsuuid.o \
138         $(UOBJ)/afs_uuid.o \
139         $(UOBJ)/assert.o \
140         $(UOBJ)/osi_vnodeops.o \
141         $(UOBJ)/osi_vm.o \
142         $(UOBJ)/osi_groups.o \
143         $(UOBJ)/afsaux.o \
144         $(UOBJ)/Kvice.xdr.o \
145         $(UOBJ)/xdr_arrayn.o \
146         $(UOBJ)/Kvice.cs.o \
147         $(UOBJ)/fcrypt.o \
148         $(UOBJ)/rx.o \
149         $(UOBJ)/rx_rdwr.o \
150         $(UOBJ)/rx_clock.o \
151         $(UOBJ)/rx_event.o \
152         $(UOBJ)/rx_globals.o \
153         $(UOBJ)/rx_kmutex.o \
154         $(UOBJ)/rx_knet.o \
155         $(UOBJ)/rx_kcommon.o \
156         $(UOBJ)/rx_misc.o \
157         $(UOBJ)/rx_multi.o \
158         $(UOBJ)/rx_null.o \
159         $(UOBJ)/rx_getaddr.o \
160         $(UOBJ)/rx_packet.o \
161         $(UOBJ)/rx_conncache.o \
162         $(UOBJ)/xdr_rx.o \
163         $(UOBJ)/Kvldbint.cs.o \
164         $(UOBJ)/Kvldbint.xdr.o \
165         $(UOBJ)/Kcallback.ss.o \
166         $(UOBJ)/crypt_conn.o \
167         $(UOBJ)/AFS_component_version_number.o \
168         $(UOBJ)/afs_exporter.o \
169         $(UOBJ)/rxkad_client.o \
170         $(UOBJ)/rxkad_common.o \
171         $(UOBJ)/casestrcpy.o \
172         $(UOBJ)/dirpath.o \
173         $(UOBJ)/fileutil.o \
174         $(UOBJ)/netutils.o \
175         $(UOBJ)/et_name.o \
176         $(UOBJ)/com_err.o \
177         $(UOBJ)/error_msg.o \
178         $(UOBJ)/uerrors.o \
179         $(UOBJ)/kaerrors.o \
180         $(UOBJ)/ktc_errors.o \
181         $(UOBJ)/rxkad_errs.o \
182         $(UOBJ)/authclient.o \
183         $(UOBJ)/authcon.o \
184         $(UOBJ)/cellconfig.o \
185         $(UOBJ)/client.o \
186         $(UOBJ)/acfg_errors.o \
187         $(UOBJ)/kaaux.o \
188         $(UOBJ)/kalocalcell.o \
189         $(UOBJ)/kauth.cs.o \
190         $(UOBJ)/kauth.xdr.o \
191         $(UOBJ)/ktc.o \
192         $(UOBJ)/ptint.cs.o \
193         $(UOBJ)/ptint.xdr.o \
194         $(UOBJ)/ptuser.o \
195         $(UOBJ)/pterror.o \
196         $(UOBJ)/ticket.o \
197         $(UOBJ)/token.o \
198         $(UOBJ)/ubik_int.cs.o \
199         $(UOBJ)/ubik_int.xdr.o \
200         $(UOBJ)/ubikclient.o \
201         $(UOBJ)/user.o \
202         $(UOBJ)/hostparse.o \
203         $(UOBJ)/Krxstat.ss.o \
204         $(UOBJ)/Krxstat.xdr.o \
205         $(UOBJ)/rxstat.o \
206         $(UOBJ)/xdr_int32.o \
207         $(UOBJ)/xdr_int64.o
208
209 AFSWEBOBJ = \
210         $(WEBOBJ)/afs_atomlist.o \
211         $(WEBOBJ)/afs_lhash.o \
212         $(WEBOBJ)/afs_analyze.o \
213         $(WEBOBJ)/afs_error.o \
214         $(WEBOBJ)/afs_axscache.o \
215         $(WEBOBJ)/afs_buffer.o \
216         $(WEBOBJ)/afs_callback.o \
217         $(WEBOBJ)/afs_cbqueue.o \
218         $(WEBOBJ)/afs_cell.o \
219         $(WEBOBJ)/afs_chunk.o \
220         $(WEBOBJ)/afs_conn.o \
221         $(WEBOBJ)/afs_daemons.o \
222         $(WEBOBJ)/afs_dcache.o \
223         $(WEBOBJ)/afs_dir.o \
224         $(WEBOBJ)/afs_disconnected.o \
225         $(WEBOBJ)/afs_dynroot.o \
226         $(WEBOBJ)/afs_icl.o \
227         $(WEBOBJ)/afs_init.o \
228         $(WEBOBJ)/afs_lock.o \
229         $(WEBOBJ)/afs_mariner.o \
230         $(WEBOBJ)/afs_memcache.o \
231         $(WEBOBJ)/afs_md5.o \
232         $(WEBOBJ)/afs_osidnlc.o \
233         $(WEBOBJ)/afs_osi_pag.o \
234         $(WEBOBJ)/afs_segments.o \
235         $(WEBOBJ)/afs_server.o \
236         $(WEBOBJ)/afs_stat.o \
237         $(WEBOBJ)/afs_syscall.o \
238         $(WEBOBJ)/afs_user.o \
239         $(WEBOBJ)/afs_util.o \
240         $(WEBOBJ)/afs_vcache.o \
241         $(WEBOBJ)/afs_osi_uio.o \
242         $(WEBOBJ)/afs_vnop_access.o \
243         $(WEBOBJ)/afs_vnop_attrs.o \
244         $(WEBOBJ)/afs_vnop_create.o \
245         $(WEBOBJ)/afs_vnop_dirops.o \
246         $(WEBOBJ)/afs_vnop_fid.o \
247         $(WEBOBJ)/afs_vnop_flock.o \
248         $(WEBOBJ)/afs_vnop_link.o \
249         $(WEBOBJ)/afs_vnop_lookup.o \
250         $(WEBOBJ)/afs_vnop_open.o \
251         $(WEBOBJ)/afs_vnop_read.o \
252         $(WEBOBJ)/afs_vnop_readdir.o \
253         $(WEBOBJ)/afs_vnop_remove.o \
254         $(WEBOBJ)/afs_vnop_rename.o \
255         $(WEBOBJ)/afs_vnop_strategy.o \
256         $(WEBOBJ)/afs_vnop_symlink.o \
257         $(WEBOBJ)/afs_vnop_write.o \
258         $(WEBOBJ)/afs_volume.o \
259         $(WEBOBJ)/afs_call.o \
260         $(WEBOBJ)/afs_pioctl.o \
261         $(WEBOBJ)/osi_vfsops.o \
262         $(WEBOBJ)/afs_usrops.o \
263         $(WEBOBJ)/xdr_afsuuid.o \
264         $(WEBOBJ)/afs_uuid.o \
265         $(WEBOBJ)/assert.o \
266         $(WEBOBJ)/osi_vnodeops.o \
267         $(WEBOBJ)/osi_vm.o \
268         $(WEBOBJ)/osi_groups.o \
269         $(WEBOBJ)/afsaux.o \
270         $(WEBOBJ)/Kvice.xdr.o \
271         $(WEBOBJ)/xdr_arrayn.o \
272         $(WEBOBJ)/Kvice.cs.o \
273         $(WEBOBJ)/fcrypt.o \
274         $(WEBOBJ)/rx.o \
275         $(WEBOBJ)/rx_rdwr.o \
276         $(WEBOBJ)/rx_clock.o \
277         $(WEBOBJ)/rx_event.o \
278         $(WEBOBJ)/rx_globals.o \
279         $(WEBOBJ)/rx_kmutex.o \
280         $(WEBOBJ)/rx_knet.o \
281         $(WEBOBJ)/rx_kcommon.o \
282         $(WEBOBJ)/rx_misc.o \
283         $(WEBOBJ)/rx_multi.o \
284         $(WEBOBJ)/rx_null.o \
285         $(WEBOBJ)/rx_getaddr.o \
286         $(WEBOBJ)/rx_packet.o \
287         $(WEBOBJ)/rx_conncache.o \
288         $(WEBOBJ)/xdr_rx.o \
289         $(WEBOBJ)/Kvldbint.cs.o \
290         $(WEBOBJ)/Kvldbint.xdr.o \
291         $(WEBOBJ)/Kcallback.ss.o \
292         $(WEBOBJ)/crypt_conn.o \
293         $(WEBOBJ)/AFS_component_version_number.o \
294         $(WEBOBJ)/afs_exporter.o \
295         $(WEBOBJ)/rxkad_client.o \
296         $(WEBOBJ)/rxkad_common.o \
297         $(WEBOBJ)/casestrcpy.o \
298         $(WEBOBJ)/dirpath.o \
299         $(WEBOBJ)/fileutil.o \
300         $(WEBOBJ)/netutils.o \
301         $(WEBOBJ)/et_name.o \
302         $(WEBOBJ)/com_err.o \
303         $(WEBOBJ)/error_msg.o \
304         $(WEBOBJ)/uerrors.o \
305         $(WEBOBJ)/kaerrors.o \
306         $(WEBOBJ)/ktc_errors.o \
307         $(WEBOBJ)/rxkad_errs.o \
308         $(WEBOBJ)/authclient.o \
309         $(WEBOBJ)/authcon.o \
310         $(WEBOBJ)/cellconfig.o \
311         $(WEBOBJ)/client.o \
312         $(WEBOBJ)/acfg_errors.o \
313         $(WEBOBJ)/kaaux.o \
314         $(WEBOBJ)/kalocalcell.o \
315         $(WEBOBJ)/kauth.cs.o \
316         $(WEBOBJ)/kauth.xdr.o \
317         $(WEBOBJ)/ktc.o \
318         $(WEBOBJ)/ptint.cs.o \
319         $(WEBOBJ)/ptint.xdr.o \
320         $(WEBOBJ)/ptuser.o \
321         $(WEBOBJ)/pterror.o \
322         $(WEBOBJ)/securehash.o \
323         $(WEBOBJ)/ticket.o \
324         $(WEBOBJ)/token.o \
325         $(WEBOBJ)/ubik_int.cs.o \
326         $(WEBOBJ)/ubik_int.xdr.o \
327         $(WEBOBJ)/ubikclient.o \
328         $(WEBOBJ)/user.o \
329         $(WEBOBJ)/hostparse.o \
330         $(WEBOBJ)/nsafs.o \
331         $(WEBOBJ)/Krxstat.ss.o \
332         $(WEBOBJ)/Krxstat.xdr.o \
333         $(WEBOBJ)/rxstat.o
334
335
336 AFSWEBOBJKRB = \
337         $(WEBOBJ)/afs_atomlist.o \
338         $(WEBOBJ)/afs_lhash.o \
339         $(WEBOBJ)/afs_analyze.o \
340         $(WEBOBJ)/afs_error.o \
341         $(WEBOBJ)/afs_axscache.o \
342         $(WEBOBJ)/afs_buffer.o \
343         $(WEBOBJ)/afs_callback.o \
344         $(WEBOBJ)/afs_cbqueue.o \
345         $(WEBOBJ)/afs_cell.o \
346         $(WEBOBJ)/afs_chunk.o \
347         $(WEBOBJ)/afs_conn.o \
348         $(WEBOBJ)/afs_daemons.o \
349         $(WEBOBJ)/afs_dcache.o \
350         $(WEBOBJ)/afs_dir.o \
351         $(WEBOBJ)/afs_dynroot.o \
352         $(WEBOBJ)/afs_disconnected.o \
353         $(WEBOBJ)/afs_icl.o \
354         $(WEBOBJ)/afs_init.o \
355         $(WEBOBJ)/afs_lock.o \
356         $(WEBOBJ)/afs_mariner.o \
357         $(WEBOBJ)/afs_memcache.o \
358         $(WEBOBJ)/afs_md5.o \
359         $(WEBOBJ)/afs_osidnlc.o \
360         $(WEBOBJ)/afs_osi_pag.o \
361         $(WEBOBJ)/afs_segments.o \
362         $(WEBOBJ)/afs_server.o \
363         $(WEBOBJ)/afs_stat.o \
364         $(WEBOBJ)/afs_syscall.o \
365         $(WEBOBJ)/afs_user.o \
366         $(WEBOBJ)/afs_util.o \
367         $(WEBOBJ)/afs_vcache.o \
368         $(WEBOBJ)/afs_osi_uio.o \
369         $(WEBOBJ)/afs_vnop_access.o \
370         $(WEBOBJ)/afs_vnop_attrs.o \
371         $(WEBOBJ)/afs_vnop_create.o \
372         $(WEBOBJ)/afs_vnop_dirops.o \
373         $(WEBOBJ)/afs_vnop_fid.o \
374         $(WEBOBJ)/afs_vnop_flock.o \
375         $(WEBOBJ)/afs_vnop_link.o \
376         $(WEBOBJ)/afs_vnop_lookup.o \
377         $(WEBOBJ)/afs_vnop_open.o \
378         $(WEBOBJ)/afs_vnop_read.o \
379         $(WEBOBJ)/afs_vnop_readdir.o \
380         $(WEBOBJ)/afs_vnop_remove.o \
381         $(WEBOBJ)/afs_vnop_rename.o \
382         $(WEBOBJ)/afs_vnop_strategy.o \
383         $(WEBOBJ)/afs_vnop_symlink.o \
384         $(WEBOBJ)/afs_vnop_write.o \
385         $(WEBOBJ)/afs_volume.o \
386         $(WEBOBJ)/afs_call.o \
387         $(WEBOBJ)/afs_pioctl.o \
388         $(WEBOBJ)/osi_vfsops.o \
389         $(WEBOBJ)/afs_usrops.o \
390         $(WEBOBJ)/osi_vnodeops.o \
391         $(WEBOBJ)/osi_vm.o \
392         $(WEBOBJ)/osi_groups.o \
393         $(WEBOBJ)/afsaux.o \
394         $(WEBOBJ)/Kvice.xdr.o \
395         $(WEBOBJ)/xdr_arrayn.o \
396         $(WEBOBJ)/Kvice.cs.o \
397         $(WEBOBJ)/fcrypt.o \
398         $(WEBOBJ)/rx.o \
399         $(WEBOBJ)/rx_rdwr.o \
400         $(WEBOBJ)/rx_clock.o \
401         $(WEBOBJ)/rx_event.o \
402         $(WEBOBJ)/rx_globals.o \
403         $(WEBOBJ)/rx_kmutex.o \
404         $(WEBOBJ)/rx_knet.o \
405         $(WEBOBJ)/rx_kcommon.o \
406         $(WEBOBJ)/rx_misc.o \
407         $(WEBOBJ)/rx_multi.o \
408         $(WEBOBJ)/rx_null.o \
409         $(WEBOBJ)/rx_getaddr.o \
410         $(WEBOBJ)/rx_packet.o \
411         $(WEBOBJ)/rx_conncache.o \
412         $(WEBOBJ)/xdr_rx.o \
413         $(WEBOBJ)/Kvldbint.cs.o \
414         $(WEBOBJ)/Kvldbint.xdr.o \
415         $(WEBOBJ)/Kcallback.ss.o \
416         $(WEBOBJ)/crypt_conn.o \
417         $(WEBOBJ)/AFS_component_version_number.o \
418         $(WEBOBJ)/afs_exporter.o \
419         $(WEBOBJ)/rxkad_client.o \
420         $(WEBOBJ)/rxkad_common.o \
421         $(WEBOBJ)/casestrcpy.o \
422         $(WEBOBJ)/dirpath.o \
423         $(WEBOBJ)/fileutil.o \
424         $(WEBOBJ)/netutils.o \
425         $(WEBOBJ)/et_name.o \
426         $(WEBOBJ)/com_err.o \
427         $(WEBOBJ)/error_msg.o \
428         $(WEBOBJ)/uerrors.o \
429         $(WEBOBJ)/kaerrors.o \
430         $(WEBOBJ)/ktc_errors.o \
431         $(WEBOBJ)/rxkad_errs.o \
432         $(WEBOBJ)/authclient.o \
433         $(WEBOBJ)/authcon.o \
434         $(WEBOBJ)/cellconfig.o \
435         $(WEBOBJ)/client.o \
436         $(WEBOBJ)/acfg_errors.o \
437         $(WEBOBJ)/kaaux.o \
438         $(WEBOBJ)/kalocalcell.o \
439         $(WEBOBJ)/kauth.cs.o \
440         $(WEBOBJ)/kauth.xdr.o \
441         $(WEBOBJ)/ktc.krb.o \
442         $(WEBOBJ)/ptint.cs.o \
443         $(WEBOBJ)/ptint.xdr.o \
444         $(WEBOBJ)/ptuser.o \
445         $(WEBOBJ)/pterror.o \
446         $(WEBOBJ)/securehash.o \
447         $(WEBOBJ)/ticket.o \
448         $(WEBOBJ)/token.o \
449         $(WEBOBJ)/ubik_int.cs.o \
450         $(WEBOBJ)/ubik_int.xdr.o \
451         $(WEBOBJ)/ubikclient.o \
452         $(WEBOBJ)/user.o \
453         $(WEBOBJ)/nsafs.o \
454         $(WEBOBJ)/Krxstat.ss.o \
455         $(WEBOBJ)/Krxstat.xdr.o \
456         $(WEBOBJ)/rxstat.o
457
458 JUAFSOBJ = \
459         $(JUAFS)/afs_atomlist.o \
460         $(JUAFS)/afs_lhash.o \
461         $(JUAFS)/afs_analyze.o \
462         $(JUAFS)/afs_error.o \
463         $(JUAFS)/afs_axscache.o  \
464         $(JUAFS)/afs_buffer.o   \
465         $(JUAFS)/afs_callback.o \
466         $(JUAFS)/afs_cbqueue.o    \
467         $(JUAFS)/afs_cell.o \
468         $(JUAFS)/afs_chunk.o \
469         $(JUAFS)/afs_conn.o \
470         $(JUAFS)/afs_daemons.o  \
471         $(JUAFS)/afs_dcache.o \
472         $(JUAFS)/afs_dir.o \
473         $(JUAFS)/afs_dynroot.o \
474         $(JUAFS)/afs_disconnected.o \
475         $(JUAFS)/afs_icl.o \
476         $(JUAFS)/afs_init.o \
477         $(JUAFS)/afs_lock.o     \
478         $(JUAFS)/afs_mariner.o \
479         $(JUAFS)/afs_memcache.o \
480         $(JUAFS)/afs_md5.o \
481         $(JUAFS)/afs_osidnlc.o  \
482         $(JUAFS)/afs_osi_pag.o \
483         $(JUAFS)/afs_segments.o \
484         $(JUAFS)/afs_server.o \
485         $(JUAFS)/afs_stat.o \
486         $(JUAFS)/afs_syscall.o \
487         $(JUAFS)/afs_user.o \
488         $(JUAFS)/afs_util.o \
489         $(JUAFS)/afs_vcache.o \
490         $(JUAFS)/afs_osi_uio.o \
491         $(JUAFS)/afs_vnop_access.o \
492         $(JUAFS)/afs_vnop_attrs.o \
493         $(JUAFS)/afs_vnop_create.o \
494         $(JUAFS)/afs_vnop_dirops.o \
495         $(JUAFS)/afs_vnop_fid.o \
496         $(JUAFS)/afs_vnop_flock.o \
497         $(JUAFS)/afs_vnop_link.o \
498         $(JUAFS)/afs_vnop_lookup.o \
499         $(JUAFS)/afs_vnop_open.o \
500         $(JUAFS)/afs_vnop_read.o \
501         $(JUAFS)/afs_vnop_readdir.o \
502         $(JUAFS)/afs_vnop_remove.o \
503         $(JUAFS)/afs_vnop_rename.o \
504         $(JUAFS)/afs_vnop_strategy.o \
505         $(JUAFS)/afs_vnop_symlink.o \
506         $(JUAFS)/afs_vnop_write.o \
507         $(JUAFS)/afs_volume.o \
508         $(JUAFS)/afs_call.o \
509         $(JUAFS)/afs_pioctl.o \
510         $(JUAFS)/osi_vfsops.o \
511         $(JUAFS)/afs_usrops.o \
512         $(JUAFS)/xdr_afsuuid.o \
513         $(JUAFS)/afs_uuid.o \
514         $(JUAFS)/assert.o \
515         $(JUAFS)/osi_vnodeops.o \
516         $(JUAFS)/osi_vm.o \
517         $(JUAFS)/osi_groups.o \
518         $(JUAFS)/afsaux.o \
519         $(JUAFS)/Kvice.xdr.o \
520         $(JUAFS)/xdr_arrayn.o \
521         $(JUAFS)/Kvice.cs.o \
522         $(JUAFS)/fcrypt.o \
523         $(JUAFS)/rx.o \
524         $(JUAFS)/rx_rdwr.o \
525         $(JUAFS)/rx_clock.o \
526         $(JUAFS)/rx_event.o \
527         $(JUAFS)/rx_globals.o \
528         $(JUAFS)/rx_knet.o \
529         $(JUAFS)/rx_kcommon.o \
530         $(JUAFS)/rx_misc.o \
531         $(JUAFS)/rx_multi.o \
532         $(JUAFS)/rx_null.o \
533         $(JUAFS)/rx_getaddr.o \
534         $(JUAFS)/rx_packet.o \
535         $(JUAFS)/rx_conncache.o \
536         $(JUAFS)/xdr_rx.o \
537         $(JUAFS)/Kvldbint.cs.o \
538         $(JUAFS)/Kvldbint.xdr.o \
539         $(JUAFS)/Kcallback.ss.o \
540         $(JUAFS)/crypt_conn.o \
541         $(JUAFS)/AFS_component_version_number.o \
542         $(JUAFS)/afs_exporter.o \
543         $(JUAFS)/rxkad_client.o \
544         $(JUAFS)/rxkad_common.o \
545         $(JUAFS)/casestrcpy.o \
546         $(JUAFS)/dirpath.o \
547         $(JUAFS)/fileutil.o \
548         $(JUAFS)/netutils.o \
549         $(JUAFS)/et_name.o \
550         $(JUAFS)/com_err.o \
551         $(JUAFS)/error_msg.o \
552         $(JUAFS)/uerrors.o \
553         $(JUAFS)/kaerrors.o \
554         $(JUAFS)/ktc_errors.o \
555         $(JUAFS)/rxkad_errs.o \
556         $(JUAFS)/authclient.o \
557         $(JUAFS)/authcon.o \
558         $(JUAFS)/cellconfig.o \
559         $(JUAFS)/client.o \
560         $(JUAFS)/acfg_errors.o \
561         $(JUAFS)/kaaux.o \
562         $(JUAFS)/kalocalcell.o \
563         $(JUAFS)/kauth.cs.o \
564         $(JUAFS)/kauth.xdr.o \
565         $(JUAFS)/ktc.o \
566         $(JUAFS)/ptint.cs.o \
567         $(JUAFS)/ptint.xdr.o \
568         $(JUAFS)/ptuser.o \
569         $(JUAFS)/pterror.o \
570         $(JUAFS)/ticket.o \
571         $(JUAFS)/token.o \
572         $(JUAFS)/ubik_int.cs.o \
573         $(JUAFS)/ubik_int.xdr.o \
574         $(JUAFS)/ubikclient.o \
575         $(JUAFS)/user.o \
576         $(JUAFS)/hostparse.o \
577         $(JUAFS)/Krxstat.ss.o \
578         $(JUAFS)/Krxstat.xdr.o \
579         $(JUAFS)/rxstat.o \
580         $(JUAFS)/xdr_int64.o
581
582 # Compilation rules
583
584 # These files are for the user space library
585
586 $(UOBJ)/afs_atomlist.o: $(TOP_SRCDIR)/util/afs_atomlist.c
587         $(CRULE1)
588 $(UOBJ)/afs_lhash.o: $(TOP_SRCDIR)/util/afs_lhash.c
589         $(CRULE1)
590 $(UOBJ)/afs_analyze.o: $(TOP_SRC_AFS)/afs_analyze.c
591         $(CRULE1)
592 $(UOBJ)/afs_axscache.o: $(TOP_SRC_AFS)/afs_axscache.c
593         $(CRULE1)
594 $(UOBJ)/afs_buffer.o: $(TOP_SRC_AFS)/afs_buffer.c
595         $(CRULE1)
596 $(UOBJ)/afs_cell.o: $(TOP_SRC_AFS)/afs_cell.c
597         $(CRULE1)
598 $(UOBJ)/afs_conn.o: $(TOP_SRC_AFS)/afs_conn.c
599         $(CRULE1)
600 $(UOBJ)/afs_dcache.o: $(TOP_SRC_AFS)/afs_dcache.c
601         $(CRULE1)
602 $(UOBJ)/afs_dynroot.o: $(TOP_SRC_AFS)/afs_dynroot.c
603         $(CRULE1)
604 $(UOBJ)/afs_disconnected.o: $(TOP_SRC_AFS)/afs_disconnected.c
605         $(CRULE1)
606 $(UOBJ)/afs_error.o: $(TOP_SRC_AFS)/afs_error.c
607         $(CRULE1)
608 $(UOBJ)/afs_init.o: $(TOP_SRC_AFS)/afs_init.c
609         $(CRULE1)
610 $(UOBJ)/afs_mariner.o: $(TOP_SRC_AFS)/afs_mariner.c
611         $(CRULE1)
612 $(UOBJ)/afs_osidnlc.o: $(TOP_SRC_AFS)/afs_osidnlc.c
613         $(CRULE1)
614 $(UOBJ)/afs_osi.o: $(TOP_SRC_AFS)/afs_osi.c
615         $(CRULE1)
616 $(UOBJ)/afs_osi_pag.o: $(TOP_SRC_AFS)/afs_osi_pag.c
617         $(CRULE1)
618 $(UOBJ)/afs_segments.o: $(TOP_SRC_AFS)/afs_segments.c
619         $(CRULE1)
620 $(UOBJ)/afs_server.o: $(TOP_SRC_AFS)/afs_server.c
621         $(CRULE1)
622 $(UOBJ)/afs_user.o: $(TOP_SRC_AFS)/afs_user.c
623         $(CRULE1)
624 $(UOBJ)/afs_util.o: $(TOP_SRC_AFS)/afs_util.c
625         $(CRULE1)
626 $(UOBJ)/afs_vcache.o: $(TOP_SRC_AFS)/afs_vcache.c
627         $(CRULE1)
628 $(UOBJ)/afs_osi_uio.o: $(TOP_SRC_AFS)/afs_osi_uio.c
629         $(CRULE1)
630 $(UOBJ)/afs_vnop_access.o: $(TOP_SRC_VNOPS)/afs_vnop_access.c
631         $(CRULE1)
632 $(UOBJ)/afs_vnop_attrs.o: $(TOP_SRC_VNOPS)/afs_vnop_attrs.c
633         $(CRULE1)
634 $(UOBJ)/afs_vnop_create.o: $(TOP_SRC_VNOPS)/afs_vnop_create.c
635         $(CRULE1)
636 $(UOBJ)/afs_vnop_dirops.o: $(TOP_SRC_VNOPS)/afs_vnop_dirops.c
637         $(CRULE1)
638 $(UOBJ)/afs_vnop_fid.o: $(TOP_SRC_VNOPS)/afs_vnop_fid.c
639         $(CRULE1)
640 $(UOBJ)/afs_vnop_flock.o: $(TOP_SRC_VNOPS)/afs_vnop_flock.c
641         $(CRULE1)
642 $(UOBJ)/afs_vnop_link.o: $(TOP_SRC_VNOPS)/afs_vnop_link.c
643         $(CRULE1)
644 $(UOBJ)/afs_vnop_lookup.o: $(TOP_SRC_VNOPS)/afs_vnop_lookup.c
645         $(CRULE1)
646 $(UOBJ)/afs_vnop_open.o: $(TOP_SRC_VNOPS)/afs_vnop_open.c
647         $(CRULE1)
648 $(UOBJ)/afs_vnop_read.o: $(TOP_SRC_VNOPS)/afs_vnop_read.c
649         $(CRULE1)
650 $(UOBJ)/afs_vnop_readdir.o: $(TOP_SRC_VNOPS)/afs_vnop_readdir.c
651         $(CRULE1)
652 $(UOBJ)/afs_vnop_remove.o: $(TOP_SRC_VNOPS)/afs_vnop_remove.c
653         $(CRULE1)
654 $(UOBJ)/afs_vnop_rename.o: $(TOP_SRC_VNOPS)/afs_vnop_rename.c
655         $(CRULE1)
656 $(UOBJ)/afs_vnop_strategy.o: $(TOP_SRC_VNOPS)/afs_vnop_strategy.c
657         $(CRULE1)
658 $(UOBJ)/afs_vnop_symlink.o: $(TOP_SRC_VNOPS)/afs_vnop_symlink.c
659         $(CRULE1)
660 $(UOBJ)/afs_vnop_write.o: $(TOP_SRC_VNOPS)/afs_vnop_write.c
661         $(CRULE1)
662 $(UOBJ)/afs_volume.o: $(TOP_SRC_AFS)/afs_volume.c
663         $(CRULE1)
664 $(UOBJ)/rx_rdwr.o: $(TOP_SRC_RX)/rx_rdwr.c
665         $(CRULE1)
666 $(UOBJ)/afs_cbqueue.o: $(TOP_SRC_AFS)/afs_cbqueue.c
667         $(CRULE1)
668 $(UOBJ)/afs_callback.o: $(TOP_SRC_AFS)/afs_callback.c
669         $(CRULE1)
670 $(UOBJ)/afs_chunk.o: $(TOP_SRC_AFS)/afs_chunk.c
671         $(CRULE1)
672 $(UOBJ)/afs_daemons.o: $(TOP_SRC_AFS)/afs_daemons.c
673         $(CRULE1)
674 $(UOBJ)/afs_dir.o:      $(TOP_SRCDIR)/dir/dir.c
675         $(CRULE1) -o afs_dir.o
676 $(UOBJ)/AFS_component_version_number.o: AFS_component_version_number.c
677         $(CRULE1)
678 $(UOBJ)/afs_lock.o: $(TOP_SRC_AFS)/afs_lock.c
679         $(CRULE1)
680 $(UOBJ)/afs_memcache.o: $(TOP_SRC_AFS)/afs_memcache.c
681         $(CRULE1)
682 $(UOBJ)/afs_md5.o: $(TOP_SRC_AFS)/afs_md5.c
683         $(CRULE1)
684 $(UOBJ)/afs_stat.o: $(TOP_SRC_AFS)/afs_stat.c
685         $(CRULE1)
686 $(UOBJ)/fcrypt.o:       $(TOP_SRC_RXKAD)/domestic/fcrypt.c
687         $(CRULE1)
688 $(UOBJ)/crypt_conn.o: $(TOP_SRC_RXKAD)/domestic/crypt_conn.c
689         $(CRULE1)
690 $(UOBJ)/rxkad_client.o: $(TOP_SRC_RXKAD)/rxkad_client.c
691         $(CRULE1)
692 $(UOBJ)/rxkad_common.o: $(TOP_SRC_RXKAD)/rxkad_common.c
693         $(CRULE1)
694 $(UOBJ)/afs_exporter.o: $(TOP_SRCDIR)/afs/afs_exporter.c
695         $(CRULE1)
696 $(UOBJ)/afs_nfsclnt.o: $(TOP_SRC_AFS)/afs_nfsclnt.c
697         $(CRULE1)
698 $(UOBJ)/afs_nfsdisp.o: $(TOP_SRC_AFS)/afs_nfsdisp.c
699         $(CRULE1)
700 $(UOBJ)/rx.o: $(TOP_SRC_RX)/rx.c
701         $(CRULE1)
702 $(UOBJ)/rx_clock.o: $(TOP_SRC_RX)/rx_clock.c
703         $(CRULE1)
704 $(UOBJ)/rx_event.o: $(TOP_SRC_RX)/rx_event.c
705         $(CRULE1)
706 $(UOBJ)/rx_globals.o: $(TOP_SRC_RX)/rx_globals.c
707         $(CRULE1)
708 $(UOBJ)/rx_misc.o: $(TOP_SRC_RX)/rx_misc.c
709         $(CRULE1)
710 $(UOBJ)/rx_multi.o: $(TOP_SRC_RX)/rx_multi.c
711         $(CRULE1)
712 $(UOBJ)/rx_null.o: $(TOP_SRC_RX)/rx_null.c
713         $(CRULE1)
714 $(UOBJ)/rx_getaddr.o: $(TOP_SRC_RX)/rx_getaddr.c
715         $(CRULE1)
716 $(UOBJ)/rx_packet.o: $(TOP_SRC_RX)/rx_packet.c
717         $(CRULE1)
718 $(UOBJ)/rx_conncache.o: $(TOP_SRCDIR)/rx/rx_conncache.c
719         $(CRULE1)
720 $(UOBJ)/xdr_rx.o: $(TOP_SRC_RX)/xdr_rx.c
721         $(CRULE1)
722 $(UOBJ)/xdr_int32.o: $(TOP_SRC_RX)/xdr_int32.c
723         $(CRULE1)
724 $(UOBJ)/xdr_int64.o: $(TOP_SRC_RX)/xdr_int64.c
725         $(CRULE1)
726 $(UOBJ)/afs_usrops.o: $(TOP_SRC_AFS)/UKERNEL/afs_usrops.c
727         $(CRULE1)
728 $(UOBJ)/afs_uuid.o: $(TOP_SRCDIR)/util/uuid.c
729         $(CRULE1) -o afs_uuid.o
730 $(UOBJ)/assert.o: $(TOP_SRCDIR)/util/assert.c
731         $(CRULE1)
732 $(UOBJ)/xdr_afsuuid.o: $(TOP_SRCDIR)/rx/xdr_afsuuid.c
733         $(CRULE1)
734 $(UOBJ)/osi_vnodeops.o: $(TOP_SRC_AFS)/UKERNEL/osi_vnodeops.c
735         $(CRULE1)
736 $(UOBJ)/osi_vm.o: $(TOP_SRC_AFS)/UKERNEL/osi_vm.c
737         $(CRULE1)
738 $(UOBJ)/osi_groups.o: $(TOP_SRC_AFS)/UKERNEL/osi_groups.c
739         $(CRULE1)
740 $(UOBJ)/Kcallback.ss.o: $(TOP_OBJ_FSINT)/Kcallback.ss.c
741         $(CRULE1)
742 $(UOBJ)/Kvice.xdr.o: $(TOP_OBJ_FSINT)/Kvice.xdr.c
743         $(CRULE1)
744 $(UOBJ)/Kvice.cs.o: $(TOP_OBJ_FSINT)/Kvice.cs.c
745         $(CRULE1)
746 $(UOBJ)/afsaux.o: $(TOP_SRC_FSINT)/afsaux.c
747         $(CRULE1)
748 $(UOBJ)/xdr_arrayn.o: $(TOP_SRC_RX)/xdr_arrayn.c
749         $(CRULE1)
750 $(UOBJ)/Kvldbint.cs.o: $(TOP_OBJ_VLSERVER)/Kvldbint.cs.c
751         $(CRULE1)
752 $(UOBJ)/Kvldbint.xdr.o: $(TOP_OBJ_VLSERVER)/Kvldbint.xdr.c
753         $(CRULE1)
754 $(UOBJ)/rx_kmutex.o: $(TOP_SRC_RX)/UKERNEL/rx_kmutex.c
755         $(CRULE1)
756 $(UOBJ)/rx_knet.o: $(TOP_SRC_RX)/UKERNEL/rx_knet.c
757         $(CRULE1)
758 $(UOBJ)/rx_kcommon.o: $(TOP_SRCDIR)/rx/rx_kcommon.c
759         $(CRULE1)
760 $(UOBJ)/afs_call.o: $(TOP_SRC_AFS)/afs_call.c
761         $(CRULE1) -DAFS_NONFSTRANS
762 $(UOBJ)/afs_icl.o: $(TOP_SRC_AFS)/afs_icl.c
763         $(CRULE1) -DAFS_NONFSTRANS
764 $(UOBJ)/afs_pioctl.o: $(TOP_SRC_AFS)/afs_pioctl.c
765         $(CRULE1) -DAFS_NONFSTRANS
766 $(UOBJ)/afs_syscall.o: $(TOP_SRC_AFS)/afs_syscall.c
767         $(CRULE1) -DAFS_NONFSTRANS
768 $(UOBJ)/osi_vfsops.o: $(TOP_SRC_AFS)/UKERNEL/osi_vfsops.c
769         $(CRULE1) -DAFS_NONFSTRANS
770 $(UOBJ)/ktc.o:  $(TOP_SRCDIR)/auth/ktc.c
771         $(CRULE1)
772 $(UOBJ)/ticket.o: $(TOP_SRCDIR)/rxkad/ticket.c
773         $(CRULE1)
774 $(UOBJ)/rxkad_server.o: $(TOP_SRCDIR)/rxkad/rxkad_server.c
775         $(CRULE1)
776 $(UOBJ)/ptint.cs.o: $(TOP_OBJDIR)/src/ptserver/ptint.cs.c
777         $(CRULE1)
778 $(UOBJ)/ptint.xdr.o: $(TOP_OBJDIR)/src/ptserver/ptint.xdr.c
779         $(CRULE1)
780 $(UOBJ)/ptuser.o: $(TOP_SRCDIR)/ptserver/ptuser.c
781         $(CRULE1)
782 $(UOBJ)/pterror.o: $(TOP_OBJDIR)/src/ptserver/pterror.c
783         $(CRULE1)
784 $(UOBJ)/ubikclient.o: $(TOP_SRCDIR)/ubik/ubikclient.c
785         $(CRULE1)
786 $(UOBJ)/ubik_int.cs.o: $(TOP_OBJDIR)/src/ubik/ubik_int.cs.c
787         $(CRULE1)
788 $(UOBJ)/ubik_int.xdr.o: $(TOP_OBJDIR)/src/ubik/ubik_int.xdr.c
789         $(CRULE1)
790 $(UOBJ)/authclient.o: $(TOP_SRCDIR)/kauth/authclient.c
791         $(CRULE1)
792 $(UOBJ)/kalocalcell.o: $(TOP_SRCDIR)/kauth/kalocalcell.c
793         $(CRULE1)
794 $(UOBJ)/client.o: $(TOP_SRCDIR)/kauth/client.c
795         $(CRULE1)
796 $(UOBJ)/user.o: $(TOP_SRCDIR)/kauth/user.c
797         $(CRULE1)
798 $(UOBJ)/hostparse.o: $(TOP_SRCDIR)/util/hostparse.c
799         $(CRULE1)
800 $(UOBJ)/token.o: $(TOP_SRCDIR)/kauth/token.c
801         $(CRULE1)
802 $(UOBJ)/acfg_errors.o: $(TOP_OBJDIR)/src/auth/acfg_errors.c
803         $(CRULE1)
804 $(UOBJ)/kaaux.o: $(TOP_SRCDIR)/kauth/kaaux.c
805         $(CRULE1)
806 $(UOBJ)/authcon.o: $(TOP_SRCDIR)/auth/authcon.c
807         $(CRULE1)
808 $(UOBJ)/cellconfig.o: $(TOP_SRCDIR)/auth/cellconfig.c
809         $(CRULE1)
810 $(UOBJ)/casestrcpy.o: $(TOP_SRCDIR)/util/casestrcpy.c
811         $(CRULE1)
812 $(UOBJ)/dirpath.o: $(TOP_SRCDIR)/util/dirpath.c
813         $(CRULE1)
814 $(UOBJ)/fileutil.o: $(TOP_SRCDIR)/util/fileutil.c
815         $(CRULE1)
816 $(UOBJ)/netutils.o: $(TOP_SRCDIR)/util/netutils.c
817         $(CRULE1)
818 $(UOBJ)/et_name.o: $(TOP_SRCDIR)/comerr/et_name.c
819         $(CRULE1)
820 $(UOBJ)/com_err.o: $(TOP_SRCDIR)/comerr/com_err.c
821         $(CRULE1)
822 $(UOBJ)/error_msg.o: $(TOP_SRCDIR)/comerr/error_msg.c
823         $(CRULE1)
824 $(UOBJ)/uerrors.o: $(TOP_OBJDIR)/src/ubik/uerrors.c
825         $(CRULE1)
826 $(UOBJ)/kaerrors.o: $(TOP_OBJDIR)/src/kauth/kaerrors.c
827         $(CRULE1)
828 $(UOBJ)/ktc_errors.o: $(TOP_OBJDIR)/src/auth/ktc_errors.c
829         $(CRULE1)
830 $(UOBJ)/rxkad_errs.o: $(TOP_OBJDIR)/src/rxkad/rxkad_errs.c
831         $(CRULE1)
832 $(UOBJ)/kauth.cs.o: $(TOP_OBJDIR)/src/kauth/kauth.cs.c
833         $(CRULE1)
834 $(UOBJ)/kauth.xdr.o: $(TOP_OBJDIR)/src/kauth/kauth.xdr.c
835         $(CRULE1)
836 $(UOBJ)/rxstat.o: $(TOP_SRC_RXSTAT)/rxstat.c
837         $(CRULE1)
838 $(UOBJ)/Krxstat.ss.o: $(TOP_OBJ_RXSTAT)/Krxstat.ss.c
839         $(CRULE1)
840 $(UOBJ)/Krxstat.xdr.o: $(TOP_OBJ_RXSTAT)/Krxstat.xdr.c
841         $(CRULE1)
842
843 # These files are for the netscape plugin
844
845 $(WEBOBJ)/afs_atomlist.o: $(TOP_SRCDIR)/util/afs_atomlist.c
846         $(CRULE2)
847 $(WEBOBJ)/afs_lhash.o: $(TOP_SRCDIR)/util/afs_lhash.c
848         $(CRULE2)
849 $(WEBOBJ)/afs_analyze.o: $(TOP_SRC_AFS)/afs_analyze.c
850         $(CRULE2)
851 $(WEBOBJ)/afs_axscache.o: $(TOP_SRC_AFS)/afs_axscache.c
852         $(CRULE2)
853 $(WEBOBJ)/afs_buffer.o: $(TOP_SRC_AFS)/afs_buffer.c
854         $(CRULE2)
855 $(WEBOBJ)/afs_cell.o: $(TOP_SRC_AFS)/afs_cell.c
856         $(CRULE2)
857 $(WEBOBJ)/afs_conn.o: $(TOP_SRC_AFS)/afs_conn.c
858         $(CRULE2)
859 $(WEBOBJ)/afs_dcache.o: $(TOP_SRC_AFS)/afs_dcache.c
860         $(CRULE2)
861 $(WEBOBJ)/afs_disconnected.o: $(TOP_SRC_AFS)/afs_disconnected.c
862         $(CRULE2)
863 $(WEBOBJ)/afs_dynroot.o: $(TOP_SRC_AFS)/afs_dynroot.c
864         $(CRULE2)
865 $(WEBOBJ)/afs_error.o: $(TOP_SRC_AFS)/afs_error.c
866         $(CRULE2)
867 $(WEBOBJ)/afs_init.o: $(TOP_SRC_AFS)/afs_init.c
868         $(CRULE2)
869 $(WEBOBJ)/afs_mariner.o: $(TOP_SRC_AFS)/afs_mariner.c
870         $(CRULE2)
871 $(WEBOBJ)/afs_osidnlc.o: $(TOP_SRC_AFS)/afs_osidnlc.c
872         $(CRULE2)
873 $(WEBOBJ)/afs_osi.o: $(TOP_SRC_AFS)/afs_osi.c
874         $(CRULE2)
875 $(WEBOBJ)/afs_osi_pag.o: $(TOP_SRC_AFS)/afs_osi_pag.c
876         $(CRULE2)
877 $(WEBOBJ)/afs_segments.o: $(TOP_SRC_AFS)/afs_segments.c
878         $(CRULE2)
879 $(WEBOBJ)/afs_server.o: $(TOP_SRC_AFS)/afs_server.c
880         $(CRULE2)
881 $(WEBOBJ)/afs_user.o: $(TOP_SRC_AFS)/afs_user.c
882         $(CRULE2)
883 $(WEBOBJ)/afs_util.o: $(TOP_SRC_AFS)/afs_util.c
884         $(CRULE2)
885 $(WEBOBJ)/afs_vcache.o: $(TOP_SRC_AFS)/afs_vcache.c
886         $(CRULE2)
887 $(WEBOBJ)/afs_osi_uio.o: $(TOP_SRC_AFS)/afs_osi_uio.c
888         $(CRULE2)
889 $(WEBOBJ)/afs_vnop_access.o: $(TOP_SRC_VNOPS)/afs_vnop_access.c
890         $(CRULE2)
891 $(WEBOBJ)/afs_vnop_attrs.o: $(TOP_SRC_VNOPS)/afs_vnop_attrs.c
892         $(CRULE2)
893 $(WEBOBJ)/afs_vnop_create.o: $(TOP_SRC_VNOPS)/afs_vnop_create.c
894         $(CRULE2)
895 $(WEBOBJ)/afs_vnop_dirops.o: $(TOP_SRC_VNOPS)/afs_vnop_dirops.c
896         $(CRULE2)
897 $(WEBOBJ)/afs_vnop_fid.o: $(TOP_SRC_VNOPS)/afs_vnop_fid.c
898         $(CRULE2)
899 $(WEBOBJ)/afs_vnop_flock.o: $(TOP_SRC_VNOPS)/afs_vnop_flock.c
900         $(CRULE2)
901 $(WEBOBJ)/afs_vnop_link.o: $(TOP_SRC_VNOPS)/afs_vnop_link.c
902         $(CRULE2)
903 $(WEBOBJ)/afs_vnop_lookup.o: $(TOP_SRC_VNOPS)/afs_vnop_lookup.c
904         $(CRULE2)
905 $(WEBOBJ)/afs_vnop_open.o: $(TOP_SRC_VNOPS)/afs_vnop_open.c
906         $(CRULE2)
907 $(WEBOBJ)/afs_vnop_read.o: $(TOP_SRC_VNOPS)/afs_vnop_read.c
908         $(CRULE2)
909 $(WEBOBJ)/afs_vnop_readdir.o: $(TOP_SRC_VNOPS)/afs_vnop_readdir.c
910         $(CRULE2)
911 $(WEBOBJ)/afs_vnop_remove.o: $(TOP_SRC_VNOPS)/afs_vnop_remove.c
912         $(CRULE2)
913 $(WEBOBJ)/afs_vnop_rename.o: $(TOP_SRC_VNOPS)/afs_vnop_rename.c
914         $(CRULE2)
915 $(WEBOBJ)/afs_vnop_strategy.o: $(TOP_SRC_VNOPS)/afs_vnop_strategy.c
916         $(CRULE2)
917 $(WEBOBJ)/afs_vnop_symlink.o: $(TOP_SRC_VNOPS)/afs_vnop_symlink.c
918         $(CRULE2)
919 $(WEBOBJ)/afs_vnop_write.o: $(TOP_SRC_VNOPS)/afs_vnop_write.c
920         $(CRULE2)
921 $(WEBOBJ)/afs_volume.o: $(TOP_SRC_AFS)/afs_volume.c
922         $(CRULE2)
923 $(WEBOBJ)/rx_rdwr.o: $(TOP_SRC_RX)/rx_rdwr.c
924         $(CRULE2)
925 $(WEBOBJ)/afs_cbqueue.o: $(TOP_SRC_AFS)/afs_cbqueue.c
926         $(CRULE2)
927 $(WEBOBJ)/afs_callback.o: $(TOP_SRC_AFS)/afs_callback.c
928         $(CRULE2)
929 $(WEBOBJ)/afs_chunk.o: $(TOP_SRC_AFS)/afs_chunk.c
930         $(CRULE2)
931 $(WEBOBJ)/afs_daemons.o: $(TOP_SRC_AFS)/afs_daemons.c
932         $(CRULE2)
933 $(WEBOBJ)/afs_dir.o:    $(TOP_SRCDIR)/dir/dir.c
934         $(CRULE2) -o afs_dir.o
935 $(WEBOBJ)/AFS_component_version_number.o: AFS_component_version_number.c
936         $(CRULE2)
937 $(WEBOBJ)/afs_lock.o: $(TOP_SRC_AFS)/afs_lock.c
938         $(CRULE2)
939 $(WEBOBJ)/afs_memcache.o: $(TOP_SRC_AFS)/afs_memcache.c
940         $(CRULE2)
941 $(WEBOBJ)/afs_md5.o: $(TOP_SRC_AFS)/afs_md5.c
942         $(CRULE2)
943 $(WEBOBJ)/afs_stat.o: $(TOP_SRC_AFS)/afs_stat.c
944         $(CRULE2)
945 $(WEBOBJ)/fcrypt.o:     $(TOP_SRC_RXKAD)/domestic/fcrypt.c
946         $(CRULE2)
947 $(WEBOBJ)/crypt_conn.o: $(TOP_SRC_RXKAD)/domestic/crypt_conn.c
948         $(CRULE2)
949 $(WEBOBJ)/rxkad_client.o: $(TOP_SRC_RXKAD)/rxkad_client.c
950         $(CRULE2)
951 $(WEBOBJ)/rxkad_common.o: $(TOP_SRC_RXKAD)/rxkad_common.c
952         $(CRULE2)
953 $(WEBOBJ)/afs_exporter.o: $(TOP_SRCDIR)/afs/afs_exporter.c
954         $(CRULE2)
955 $(WEBOBJ)/afs_nfsclnt.o: $(TOP_SRC_AFS)/afs_nfsclnt.c
956         $(CRULE2)
957 $(WEBOBJ)/afs_nfsdisp.o: $(TOP_SRC_AFS)/afs_nfsdisp.c
958         $(CRULE2)
959 $(WEBOBJ)/rx.o: $(TOP_SRC_RX)/rx.c
960         $(CRULE2)
961 $(WEBOBJ)/rx_clock.o: $(TOP_SRC_RX)/rx_clock.c
962         $(CRULE2)
963 $(WEBOBJ)/rx_event.o: $(TOP_SRC_RX)/rx_event.c
964         $(CRULE2)
965 $(WEBOBJ)/rx_globals.o: $(TOP_SRC_RX)/rx_globals.c
966         $(CRULE2)
967 $(WEBOBJ)/rx_misc.o: $(TOP_SRC_RX)/rx_misc.c
968         $(CRULE2)
969 $(WEBOBJ)/rx_multi.o: $(TOP_SRC_RX)/rx_multi.c
970         $(CRULE2)
971 $(WEBOBJ)/rx_null.o: $(TOP_SRC_RX)/rx_null.c
972         $(CRULE2)
973 $(WEBOBJ)/rx_getaddr.o: $(TOP_SRC_RX)/rx_getaddr.c
974         $(CRULE2)
975 $(WEBOBJ)/rx_packet.o: $(TOP_SRC_RX)/rx_packet.c
976         $(CRULE2)
977 $(WEBOBJ)/rx_conncache.o: $(TOP_SRCDIR)/rx/rx_conncache.c
978         $(CRULE2)
979 $(WEBOBJ)/xdr_rx.o: $(TOP_SRC_RX)/xdr_rx.c
980         $(CRULE2)
981 $(WEBOBJ)/afs_usrops.o: $(TOP_SRC_AFS)/UKERNEL/afs_usrops.c
982         $(CRULE2)
983 $(WEBOBJ)/afs_uuid.o: $(TOP_SRCDIR)/util/uuid.c
984         $(CRULE2) -o afs_uuid.o
985 $(WEBOBJ)/assert.o: $(TOP_SRCDIR)/util/assert.c
986         $(CRULE1)
987 $(WEBOBJ)/xdr_afsuuid.o: $(TOP_SRCDIR)/rx/xdr_afsuuid.c
988         $(CRULE2)
989 $(WEBOBJ)/osi_vnodeops.o: $(TOP_SRC_AFS)/UKERNEL/osi_vnodeops.c
990         $(CRULE2)
991 $(WEBOBJ)/osi_vm.o: $(TOP_SRC_AFS)/UKERNEL/osi_vm.c
992         $(CRULE2)
993 $(WEBOBJ)/osi_groups.o: $(TOP_SRC_AFS)/UKERNEL/osi_groups.c
994         $(CRULE2)
995 $(WEBOBJ)/Kcallback.ss.o: $(TOP_OBJ_FSINT)/Kcallback.ss.c
996         $(CRULE2)
997 $(WEBOBJ)/Kvice.xdr.o: $(TOP_OBJ_FSINT)/Kvice.xdr.c
998         $(CRULE2)
999 $(WEBOBJ)/Kvice.cs.o: $(TOP_OBJ_FSINT)/Kvice.cs.c
1000         $(CRULE2)
1001 $(WEBOBJ)/afsaux.o: $(TOP_SRC_FSINT)/afsaux.c
1002         $(CRULE2)
1003 $(WEBOBJ)/xdr_arrayn.o: $(TOP_SRC_RX)/xdr_arrayn.c
1004         $(CRULE2)
1005 $(WEBOBJ)/Kvldbint.cs.o: $(TOP_OBJ_VLSERVER)/Kvldbint.cs.c
1006         $(CRULE2)
1007 $(WEBOBJ)/Kvldbint.xdr.o: $(TOP_OBJ_VLSERVER)/Kvldbint.xdr.c
1008         $(CRULE2)
1009 $(WEBOBJ)/rx_kmutex.o: $(TOP_SRC_RX)/UKERNEL/rx_kmutex.c
1010         $(CRULE2)
1011 $(WEBOBJ)/rx_knet.o: $(TOP_SRC_RX)/UKERNEL/rx_knet.c
1012         $(CRULE2)
1013 $(WEBOBJ)/rx_kcommon.o: $(TOP_SRCDIR)/rx/rx_kcommon.c
1014         $(CRULE2)
1015 $(WEBOBJ)/afs_call.o: $(TOP_SRC_AFS)/afs_call.c
1016         $(CRULE2) -DAFS_NONFSTRANS
1017 $(WEBOBJ)/afs_icl.o: $(TOP_SRC_AFS)/afs_icl.c
1018         $(CRULE2) -DAFS_NONFSTRANS
1019 $(WEBOBJ)/afs_pioctl.o: $(TOP_SRC_AFS)/afs_pioctl.c
1020         $(CRULE2) -DAFS_NONFSTRANS
1021 $(WEBOBJ)/afs_syscall.o: $(TOP_SRC_AFS)/afs_syscall.c
1022         $(CRULE2) -DAFS_NONFSTRANS
1023 $(WEBOBJ)/osi_vfsops.o: $(TOP_SRC_AFS)/UKERNEL/osi_vfsops.c
1024         $(CRULE2) -DAFS_NONFSTRANS
1025 $(WEBOBJ)/ktc.o:        $(TOP_SRCDIR)/auth/ktc.c
1026         $(CRULE2)
1027 $(WEBOBJ)/ktc.krb.o:    $(TOP_SRCDIR)/auth/ktc.c
1028         $(CRULE2) -DAFS_KERBEROS_ENV -DMAYBE_NO_KTC 
1029         mv ktc.o ktc.krb.o
1030 $(WEBOBJ)/securehash.o: $(TOP_SRCDIR)/afsweb/securehash.c
1031         $(CRULE2)
1032 $(WEBOBJ)/nsafs.o: $(TOP_SRCDIR)/afsweb/nsafs.c
1033         $(CRULE2)
1034 $(WEBOBJ)/ticket.o: $(TOP_SRCDIR)/rxkad/ticket.c
1035         $(CRULE2)
1036 $(WEBOBJ)/rxkad_server.o: $(TOP_SRCDIR)/rxkad/rxkad_server.c
1037         $(CRULE2)
1038 $(WEBOBJ)/ptint.cs.o: $(TOP_OBJDIR)/src/ptserver/ptint.cs.c
1039         $(CRULE2)
1040 $(WEBOBJ)/ptint.xdr.o: $(TOP_OBJDIR)/src/ptserver/ptint.xdr.c
1041         $(CRULE2)
1042 $(WEBOBJ)/ptuser.o: $(TOP_SRCDIR)/ptserver/ptuser.c
1043         $(CRULE2)
1044 $(WEBOBJ)/pterror.o: $(TOP_OBJDIR)/src/ptserver/pterror.c
1045         $(CRULE2)
1046 $(WEBOBJ)/ubikclient.o: $(TOP_SRCDIR)/ubik/ubikclient.c
1047         $(CRULE2)
1048 $(WEBOBJ)/ubik_int.cs.o: $(TOP_OBJDIR)/src/ubik/ubik_int.cs.c
1049         $(CRULE2)
1050 $(WEBOBJ)/ubik_int.xdr.o: $(TOP_OBJDIR)/src/ubik/ubik_int.xdr.c
1051         $(CRULE2)
1052 $(WEBOBJ)/authclient.o: $(TOP_SRCDIR)/kauth/authclient.c
1053         $(CRULE2)
1054 $(WEBOBJ)/kalocalcell.o: $(TOP_SRCDIR)/kauth/kalocalcell.c
1055         $(CRULE2)
1056 $(WEBOBJ)/client.o: $(TOP_SRCDIR)/kauth/client.c
1057         $(CRULE2)
1058 $(WEBOBJ)/user.o: $(TOP_SRCDIR)/kauth/user.c
1059         $(CRULE2)
1060 $(WEBOBJ)/hostparse.o: $(TOP_SRCDIR)/util/hostparse.c
1061         $(CRULE2)
1062 $(WEBOBJ)/token.o: $(TOP_SRCDIR)/kauth/token.c
1063         $(CRULE2)
1064 $(WEBOBJ)/acfg_errors.o: $(TOP_OBJDIR)/src/auth/acfg_errors.c
1065         $(CRULE2)
1066 $(WEBOBJ)/kaaux.o: $(TOP_SRCDIR)/kauth/kaaux.c
1067         $(CRULE2)
1068 $(WEBOBJ)/kauth.cs.o: $(TOP_OBJDIR)/src/kauth/kauth.cs.c
1069         $(CRULE2)
1070 $(WEBOBJ)/kauth.xdr.o: $(TOP_OBJDIR)/src/kauth/kauth.xdr.c
1071         $(CRULE2)
1072 $(WEBOBJ)/authcon.o: $(TOP_SRCDIR)/auth/authcon.c
1073         $(CRULE2)
1074 $(WEBOBJ)/cellconfig.o: $(TOP_SRCDIR)/auth/cellconfig.c
1075         $(CRULE2)
1076 $(WEBOBJ)/casestrcpy.o: $(TOP_SRCDIR)/util/casestrcpy.c
1077         $(CRULE1)
1078 $(WEBOBJ)/dirpath.o: $(TOP_SRCDIR)/util/dirpath.c
1079         $(CRULE1)
1080 $(WEBOBJ)/fileutil.o: $(TOP_SRCDIR)/util/fileutil.c
1081         $(CRULE1)
1082 $(WEBOBJ)/netutils.o: $(TOP_SRCDIR)/util/netutils.c
1083         $(CRULE1)
1084 $(WEBOBJ)/et_name.o: $(TOP_SRCDIR)/comerr/et_name.c
1085         $(CRULE2)
1086 $(WEBOBJ)/com_err.o: $(TOP_SRCDIR)/comerr/com_err.c
1087         $(CRULE2)
1088 $(WEBOBJ)/error_msg.o: $(TOP_SRCDIR)/comerr/error_msg.c
1089         $(CRULE2)
1090 $(WEBOBJ)/uerrors.o: $(TOP_OBJDIR)/src/ubik/uerrors.c
1091         $(CRULE2)
1092 $(WEBOBJ)/kaerrors.o: $(TOP_OBJDIR)/src/kauth/kaerrors.c
1093         $(CRULE2)
1094 $(WEBOBJ)/ktc_errors.o: $(TOP_OBJDIR)/src/auth/ktc_errors.c
1095         $(CRULE2)
1096 $(WEBOBJ)/rxkad_errs.o: $(TOP_OBJDIR)/src/rxkad/rxkad_errs.c
1097         $(CRULE2)
1098 $(WEBOBJ)/rxstat.o: $(TOP_SRC_RXSTAT)/rxstat.c
1099         $(CRULE2)
1100 $(WEBOBJ)/Krxstat.ss.o: $(TOP_OBJ_RXSTAT)/Krxstat.ss.c
1101         $(CRULE2)
1102 $(WEBOBJ)/Krxstat.xdr.o: $(TOP_OBJ_RXSTAT)/Krxstat.xdr.c
1103         $(CRULE2)
1104
1105 # These are for libjuafs.a 
1106 # Used for linking with libafsauthent and libafsrpc
1107
1108 $(JUAFS)/afs_atomlist.o: $(TOP_SRCDIR)/util/afs_atomlist.c
1109         $(CRULE1)
1110 $(JUAFS)/afs_lhash.o: $(TOP_SRCDIR)/util/afs_lhash.c
1111         $(CRULE1)
1112 $(JUAFS)/afs_analyze.o: $(TOP_SRC_AFS)/afs_analyze.c
1113         $(CRULE1)
1114 $(JUAFS)/afs_axscache.o: $(TOP_SRC_AFS)/afs_axscache.c
1115         $(CRULE1)
1116 $(JUAFS)/afs_buffer.o: $(TOP_SRC_AFS)/afs_buffer.c
1117         $(CRULE1)
1118 $(JUAFS)/afs_cell.o: $(TOP_SRC_AFS)/afs_cell.c
1119         $(CRULE1)
1120 $(JUAFS)/afs_conn.o: $(TOP_SRC_AFS)/afs_conn.c
1121         $(CRULE1)
1122 $(JUAFS)/afs_dcache.o: $(TOP_SRC_AFS)/afs_dcache.c
1123         $(CRULE1)
1124 $(JUAFS)/afs_disconnected.o: $(TOP_SRC_AFS)/afs_disconnected.c
1125         $(CRULE1)
1126 $(JUAFS)/afs_dynroot.o: $(TOP_SRC_AFS)/afs_dynroot.c
1127         $(CRULE1)
1128 $(JUAFS)/afs_error.o: $(TOP_SRC_AFS)/afs_error.c
1129         $(CRULE1)
1130 $(JUAFS)/afs_init.o: $(TOP_SRC_AFS)/afs_init.c
1131         $(CRULE1)
1132 $(JUAFS)/afs_mariner.o: $(TOP_SRC_AFS)/afs_mariner.c
1133         $(CRULE1)
1134 $(JUAFS)/afs_osidnlc.o: $(TOP_SRC_AFS)/afs_osidnlc.c
1135         $(CRULE1)
1136 $(JUAFS)/afs_osi.o: $(TOP_SRC_AFS)/afs_osi.c
1137         $(CRULE1)
1138 $(JUAFS)/afs_osi_pag.o: $(TOP_SRC_AFS)/afs_osi_pag.c
1139         $(CRULE1)
1140 $(JUAFS)/afs_segments.o: $(TOP_SRC_AFS)/afs_segments.c
1141         $(CRULE1)
1142 $(JUAFS)/afs_server.o: $(TOP_SRC_AFS)/afs_server.c
1143         $(CRULE1)
1144 $(JUAFS)/afs_user.o: $(TOP_SRC_AFS)/afs_user.c
1145         $(CRULE1)
1146 $(JUAFS)/afs_util.o: $(TOP_SRC_AFS)/afs_util.c
1147         $(CRULE1)
1148 $(JUAFS)/afs_vcache.o: $(TOP_SRC_AFS)/afs_vcache.c
1149         $(CRULE1)
1150 $(JUAFS)/afs_osi_uio.o: $(TOP_SRC_AFS)/afs_osi_uio.c
1151         $(CRULE1)
1152 $(JUAFS)/afs_vnop_access.o: $(TOP_SRC_VNOPS)/afs_vnop_access.c
1153         $(CRULE1)
1154 $(JUAFS)/afs_vnop_attrs.o: $(TOP_SRC_VNOPS)/afs_vnop_attrs.c
1155         $(CRULE1)
1156 $(JUAFS)/afs_vnop_create.o: $(TOP_SRC_VNOPS)/afs_vnop_create.c
1157         $(CRULE1)
1158 $(JUAFS)/afs_vnop_dirops.o: $(TOP_SRC_VNOPS)/afs_vnop_dirops.c
1159         $(CRULE1)
1160 $(JUAFS)/afs_vnop_fid.o: $(TOP_SRC_VNOPS)/afs_vnop_fid.c
1161         $(CRULE1)
1162 $(JUAFS)/afs_vnop_flock.o: $(TOP_SRC_VNOPS)/afs_vnop_flock.c
1163         $(CRULE1)
1164 $(JUAFS)/afs_vnop_link.o: $(TOP_SRC_VNOPS)/afs_vnop_link.c
1165         $(CRULE1)
1166 $(JUAFS)/afs_vnop_lookup.o: $(TOP_SRC_VNOPS)/afs_vnop_lookup.c
1167         $(CRULE1)
1168 $(JUAFS)/afs_vnop_open.o: $(TOP_SRC_VNOPS)/afs_vnop_open.c
1169         $(CRULE1)
1170 $(JUAFS)/afs_vnop_read.o: $(TOP_SRC_VNOPS)/afs_vnop_read.c
1171         $(CRULE1)
1172 $(JUAFS)/afs_vnop_readdir.o: $(TOP_SRC_VNOPS)/afs_vnop_readdir.c
1173         $(CRULE1)
1174 $(JUAFS)/afs_vnop_remove.o: $(TOP_SRC_VNOPS)/afs_vnop_remove.c
1175         $(CRULE1)
1176 $(JUAFS)/afs_vnop_rename.o: $(TOP_SRC_VNOPS)/afs_vnop_rename.c
1177         $(CRULE1)
1178 $(JUAFS)/afs_vnop_strategy.o: $(TOP_SRC_VNOPS)/afs_vnop_strategy.c
1179         $(CRULE1)
1180 $(JUAFS)/afs_vnop_symlink.o: $(TOP_SRC_VNOPS)/afs_vnop_symlink.c
1181         $(CRULE1)
1182 $(JUAFS)/afs_vnop_write.o: $(TOP_SRC_VNOPS)/afs_vnop_write.c
1183         $(CRULE1)
1184 $(JUAFS)/afs_volume.o: $(TOP_SRC_AFS)/afs_volume.c
1185         $(CRULE1)
1186 $(JUAFS)/rx_rdwr.o: $(TOP_SRC_RX)/rx_rdwr.c
1187         $(CRULE1)
1188 $(JUAFS)/afs_cbqueue.o: $(TOP_SRC_AFS)/afs_cbqueue.c
1189         $(CRULE1)
1190 $(JUAFS)/afs_callback.o: $(TOP_SRC_AFS)/afs_callback.c
1191         $(CRULE1)
1192 $(JUAFS)/afs_chunk.o: $(TOP_SRC_AFS)/afs_chunk.c
1193         $(CRULE1)
1194 $(JUAFS)/afs_daemons.o: $(TOP_SRC_AFS)/afs_daemons.c
1195         $(CRULE1)
1196 $(JUAFS)/afs_dir.o:     $(TOP_SRCDIR)/dir/dir.c
1197         $(CRULE1) -o afs_dir.o
1198 $(JUAFS)/AFS_component_version_number.o: AFS_component_version_number.c
1199         $(CRULE1)
1200 $(JUAFS)/afs_lock.o: $(TOP_SRC_AFS)/afs_lock.c
1201         $(CRULE1)
1202 $(JUAFS)/afs_memcache.o: $(TOP_SRC_AFS)/afs_memcache.c
1203         $(CRULE1)
1204 $(JUAFS)/afs_md5.o: $(TOP_SRC_AFS)/afs_md5.c
1205         $(CRULE1)
1206 $(JUAFS)/afs_stat.o: $(TOP_SRC_AFS)/afs_stat.c
1207         $(CRULE1)
1208 $(JUAFS)/fcrypt.o:      $(TOP_SRC_RXKAD)/domestic/fcrypt.c
1209         $(CRULE1)
1210 $(JUAFS)/crypt_conn.o: $(TOP_SRC_RXKAD)/domestic/crypt_conn.c
1211         $(CRULE1)
1212 $(JUAFS)/rxkad_client.o: $(TOP_SRC_RXKAD)/rxkad_client.c
1213         $(CRULE1)
1214 $(JUAFS)/rxkad_common.o: $(TOP_SRC_RXKAD)/rxkad_common.c
1215         $(CRULE1)
1216 $(JUAFS)/afs_exporter.o: $(TOP_SRCDIR)/afs/afs_exporter.c
1217         $(CRULE1)
1218 $(JUAFS)/afs_nfsclnt.o: $(TOP_SRC_AFS)/afs_nfsclnt.c
1219         $(CRULE1)
1220 $(JUAFS)/afs_nfsdisp.o: $(TOP_SRC_AFS)/afs_nfsdisp.c
1221         $(CRULE1)
1222 $(JUAFS)/rx.o: $(TOP_SRC_RX)/rx.c
1223         $(CRULE1)
1224 $(JUAFS)/rx_clock.o: $(TOP_SRC_RX)/rx_clock.c
1225         $(CRULE1)
1226 $(JUAFS)/rx_event.o: $(TOP_SRC_RX)/rx_event.c
1227         $(CRULE1)
1228 $(JUAFS)/rx_globals.o: $(TOP_SRC_RX)/rx_globals.c
1229         $(CRULE1)
1230 $(JUAFS)/rx_misc.o: $(TOP_SRC_RX)/rx_misc.c
1231         $(CRULE1)
1232 $(JUAFS)/rx_multi.o: $(TOP_SRC_RX)/rx_multi.c
1233         $(CRULE1)
1234 $(JUAFS)/rx_null.o: $(TOP_SRC_RX)/rx_null.c
1235         $(CRULE1)
1236 $(JUAFS)/rx_getaddr.o: $(TOP_SRC_RX)/rx_getaddr.c
1237         $(CRULE1)
1238 $(JUAFS)/rx_packet.o: $(TOP_SRC_RX)/rx_packet.c
1239         $(CRULE1)
1240 $(JUAFS)/rx_conncache.o: $(TOP_SRCDIR)/rx/rx_conncache.c
1241         $(CRULE1)
1242 $(JUAFS)/xdr_rx.o: $(TOP_SRC_RX)/xdr_rx.c
1243         $(CRULE1)
1244 $(JUAFS)/xdr_int64.o: $(TOP_SRC_RX)/xdr_int64.c
1245         $(CRULE1)
1246 $(JUAFS)/afs_usrops.o: $(TOP_SRC_AFS)/UKERNEL/afs_usrops.c
1247         $(CRULE1)
1248 $(JUAFS)/afs_uuid.o: $(TOP_SRCDIR)/util/uuid.c
1249         $(CRULE1) -o afs_uuid.o
1250 $(JUAFS)/assert.o: $(TOP_SRCDIR)/util/assert.c
1251         $(CRULE1)
1252 $(JUAFS)/xdr_afsuuid.o: $(TOP_SRCDIR)/rx/xdr_afsuuid.c
1253         $(CRULE1)
1254 $(JUAFS)/osi_vnodeops.o: $(TOP_SRC_AFS)/UKERNEL/osi_vnodeops.c
1255         $(CRULE1)
1256 $(JUAFS)/osi_vm.o: $(TOP_SRC_AFS)/UKERNEL/osi_vm.c
1257         $(CRULE1)
1258 $(JUAFS)/osi_groups.o: $(TOP_SRC_AFS)/UKERNEL/osi_groups.c
1259         $(CRULE1)
1260 $(JUAFS)/Kcallback.ss.o: $(TOP_OBJ_FSINT)/Kcallback.ss.c
1261         $(CRULE1)
1262 $(JUAFS)/Kvice.xdr.o: $(TOP_OBJ_FSINT)/Kvice.xdr.c
1263         $(CRULE1)
1264 $(JUAFS)/Kvice.cs.o: $(TOP_OBJ_FSINT)/Kvice.cs.c
1265         $(CRULE1)
1266 $(JUAFS)/afsaux.o: $(TOP_SRC_FSINT)/afsaux.c
1267         $(CRULE1)
1268 $(JUAFS)/xdr_arrayn.o: $(TOP_SRC_RX)/xdr_arrayn.c
1269         $(CRULE1)
1270 $(JUAFS)/Kvldbint.cs.o: $(TOP_OBJ_VLSERVER)/Kvldbint.cs.c
1271         $(CRULE1)
1272 $(JUAFS)/Kvldbint.xdr.o: $(TOP_OBJ_VLSERVER)/Kvldbint.xdr.c
1273         $(CRULE1)
1274 $(JUAFS)/rx_knet.o: $(TOP_SRC_RX)/UKERNEL/rx_knet.c
1275         $(CRULE1)
1276 $(JUAFS)/rx_kcommon.o: $(TOP_SRCDIR)/rx/rx_kcommon.c
1277         $(CRULE1)
1278 $(JUAFS)/afs_call.o: $(TOP_SRC_AFS)/afs_call.c
1279         $(CRULE1) -DAFS_NONFSTRANS
1280 $(JUAFS)/afs_icl.o: $(TOP_SRC_AFS)/afs_icl.c
1281         $(CRULE1) -DAFS_NONFSTRANS
1282 $(JUAFS)/afs_pioctl.o: $(TOP_SRC_AFS)/afs_pioctl.c
1283         $(CRULE1) -DAFS_NONFSTRANS
1284 $(JUAFS)/afs_syscall.o: $(TOP_SRC_AFS)/afs_syscall.c
1285         $(CRULE1) -DAFS_NONFSTRANS
1286 $(JUAFS)/osi_vfsops.o: $(TOP_SRC_AFS)/UKERNEL/osi_vfsops.c
1287         $(CRULE1) -DAFS_NONFSTRANS
1288 $(JUAFS)/ktc.o:         $(TOP_SRCDIR)/auth/ktc.c
1289         $(CRULE1)
1290 $(JUAFS)/ticket.o: $(TOP_SRCDIR)/rxkad/ticket.c
1291         $(CRULE1)
1292 $(JUAFS)/rxkad_server.o: $(TOP_SRCDIR)/rxkad/rxkad_server.c
1293         $(CRULE1)
1294 $(JUAFS)/ptint.cs.o: $(TOP_OBJDIR)/src/ptserver/ptint.cs.c
1295         $(CRULE1)
1296 $(JUAFS)/ptint.xdr.o: $(TOP_OBJDIR)/src/ptserver/ptint.xdr.c
1297         $(CRULE1)
1298 $(JUAFS)/ptuser.o: $(TOP_SRCDIR)/ptserver/ptuser.c
1299         $(CRULE1)
1300 $(JUAFS)/pterror.o: $(TOP_OBJDIR)/src/ptserver/pterror.c
1301         $(CRULE1)
1302 $(JUAFS)/ubikclient.o: $(TOP_SRCDIR)/ubik/ubikclient.c
1303         $(CRULE1)
1304 $(JUAFS)/ubik_int.cs.o: $(TOP_OBJDIR)/src/ubik/ubik_int.cs.c
1305         $(CRULE1)
1306 $(JUAFS)/ubik_int.xdr.o: $(TOP_OBJDIR)/src/ubik/ubik_int.xdr.c
1307         $(CRULE1)
1308 $(JUAFS)/authclient.o: $(TOP_SRCDIR)/kauth/authclient.c
1309         $(CRULE1)
1310 $(JUAFS)/kalocalcell.o: $(TOP_SRCDIR)/kauth/kalocalcell.c
1311         $(CRULE1)
1312 $(JUAFS)/client.o: $(TOP_SRCDIR)/kauth/client.c
1313         $(CRULE1)
1314 $(JUAFS)/user.o: $(TOP_SRCDIR)/kauth/user.c
1315         $(CRULE1)
1316 $(JUAFS)/hostparse.o: $(TOP_SRCDIR)/util/hostparse.c
1317         $(CRULE1)
1318 $(JUAFS)/token.o: $(TOP_SRCDIR)/kauth/token.c
1319         $(CRULE1)
1320 $(JUAFS)/acfg_errors.o: $(TOP_OBJDIR)/src/auth/acfg_errors.c
1321         $(CRULE1)
1322 $(JUAFS)/kaaux.o: $(TOP_SRCDIR)/kauth/kaaux.c
1323         $(CRULE1)
1324 $(JUAFS)/authcon.o: $(TOP_SRCDIR)/auth/authcon.c
1325         $(CRULE1)
1326 $(JUAFS)/cellconfig.o: $(TOP_SRCDIR)/auth/cellconfig.c
1327         $(CRULE1)
1328 $(JUAFS)/casestrcpy.o: $(TOP_SRCDIR)/util/casestrcpy.c
1329         $(CRULE1)
1330 $(JUAFS)/dirpath.o: $(TOP_SRCDIR)/util/dirpath.c
1331         $(CRULE1)
1332 $(JUAFS)/fileutil.o: $(TOP_SRCDIR)/util/fileutil.c
1333         $(CRULE1)
1334 $(JUAFS)/netutils.o: $(TOP_SRCDIR)/util/netutils.c
1335         $(CRULE1)
1336 $(JUAFS)/et_name.o: $(TOP_SRCDIR)/comerr/et_name.c
1337         $(CRULE1)
1338 $(JUAFS)/com_err.o: $(TOP_SRCDIR)/comerr/com_err.c
1339         $(CRULE1)
1340 $(JUAFS)/error_msg.o: $(TOP_SRCDIR)/comerr/error_msg.c
1341         $(CRULE1)
1342 $(JUAFS)/uerrors.o: $(TOP_OBJDIR)/src/ubik/uerrors.c
1343         $(CRULE1)
1344 $(JUAFS)/kaerrors.o: $(TOP_OBJDIR)/src/kauth/kaerrors.c
1345         $(CRULE1)
1346 $(JUAFS)/ktc_errors.o: $(TOP_OBJDIR)/src/auth/ktc_errors.c
1347         $(CRULE1)
1348 $(JUAFS)/rxkad_errs.o: $(TOP_OBJDIR)/src/rxkad/rxkad_errs.c
1349         $(CRULE1)
1350 $(JUAFS)/kauth.cs.o: $(TOP_OBJDIR)/src/kauth/kauth.cs.c
1351         $(CRULE1)
1352 $(JUAFS)/kauth.xdr.o: $(TOP_OBJDIR)/src/kauth/kauth.xdr.c
1353         $(CRULE1)
1354 $(JUAFS)/rxstat.o: $(TOP_SRC_RXSTAT)/rxstat.c
1355         $(CRULE1)
1356 $(JUAFS)/Krxstat.ss.o: $(TOP_OBJ_RXSTAT)/Krxstat.ss.c
1357         $(CRULE1)
1358 $(JUAFS)/Krxstat.xdr.o: $(TOP_OBJ_RXSTAT)/Krxstat.xdr.c
1359         $(CRULE1)
1360
1361
1362 clean:
1363         -$(RM) -rf UAFS* JUAFS* AFSWEB* nsapi des afs afsint config rx
1364         -$(RM) -f  h net netinet rpc ufs machine inet nfs sys des linktest $(AFS_OS_CLEAN)
1365
1366
1367 install: UAFS/$(LIBUAFS) JUAFS/$(LIBJUAFS)
1368         ${INSTALL} -d ${DESTDIR}${libdir}
1369         ${INSTALL_DATA} UAFS/$(LIBUAFS) ${DESTDIR}${libdir}/$(LIBUAFS)
1370         ${INSTALL_DATA} JUAFS/$(LIBJUAFS) ${DESTDIR}${libdir}/$(LIBJUAFS)
1371
1372 dest: $(TOP_INCDIR)/afs/param.h $(TOP_INCDIR)/afs/stds.h \
1373                 $(TOP_INCDIR)/afs/afs_sysnames.h \
1374                 $(TOP_INCDIR)/afs/afs_stats.h \
1375                 $(TOP_SRCDIR)/afs/sysincludes.h \
1376                 $(TOP_SRCDIR)/afs/UKERNEL/afs_usrops.h \
1377                 ${TOP_OBJDIR}/lib/libdes.a UAFS/$(LIBUAFS) JUAFS/$(LIBJUAFS)
1378         ${INSTALL} -d ${DEST}/root.perf/include/afs
1379         ${INSTALL} -d ${DEST}/root.perf/lib
1380         ${INSTALL_DATA} $(TOP_INCDIR)/afs/param.h \
1381                 ${DEST}/root.perf/include/afs/param.h
1382         ${INSTALL_DATA} $(TOP_INCDIR)/afs/stds.h \
1383                 ${DEST}/root.perf/include/afs/stds.h
1384         ${INSTALL_DATA} $(TOP_INCDIR)/afs/afs_sysnames.h \
1385                 ${DEST}/root.perf/include/afs/afs_sysnames.h
1386         ${INSTALL_DATA} $(TOP_INCDIR)/afs/afs_stats.h \
1387                 ${DEST}/root.perf/include/afs/afs_stats.h
1388         ${INSTALL_DATA} $(TOP_SRCDIR)/afs/sysincludes.h \
1389                 ${DEST}/root.perf/include/afs/sysincludes.h
1390         ${INSTALL_DATA} $(TOP_SRCDIR)/afs/UKERNEL/afs_usrops.h \
1391                 ${DEST}/root.perf/include/afs/afs_usrops.h
1392         ${INSTALL_DATA} ${TOP_OBJDIR}/lib/libdes.a \
1393                 ${DEST}/root.perf/lib/libdes.a
1394         ${INSTALL_DATA} UAFS/$(LIBUAFS) ${DEST}/root.perf/lib/$(LIBUAFS)
1395         ${INSTALL_DATA} JUAFS/$(LIBJUAFS) ${DEST}/root.perf/lib/$(LIBJUAFS)
1396
1397 #
1398 # Common directory and other build targets
1399 #
1400 UAFS:
1401         mkdir -p $@
1402
1403 JUAFS:
1404         mkdir -p $@
1405
1406 AFSWEB:
1407         mkdir -p $@
1408
1409 setup_common:
1410         -$(RM) -f h net netinet rpc ufs nfs machine sys inet nsapi
1411         -ln -s /usr/include/sys h
1412         -ln -s /usr/include/net net 
1413         -ln -s /usr/include/netinet netinet
1414         -ln -s /usr/include/rpc rpc
1415         -ln -s /usr/include/sys sys
1416         -ln -s /usr/include/nfs nfs
1417         -ln -s /usr/include/inet inet
1418         -ln -s /usr/include/ufs ufs
1419         -ln -s $(NS_INCL) nsapi
1420
1421 setup_uafs: UAFS setup_common
1422         -$(RM) -f UAFS/Makefile UAFS/Makefile.common
1423         ln -s ../Makefile UAFS/Makefile
1424         ln -s ../Makefile.common UAFS/Makefile.common
1425
1426 setup_juafs: JUAFS setup_common
1427         -$(RM) -f JUAFS/Makefile JUAFS/Makefile.common
1428         ln -s ../Makefile JUAFS/Makefile
1429         ln -s ../Makefile.common JUAFS/Makefile.common
1430
1431 setup_nsafs: AFSWEB setup_common
1432         -$(RM) -f AFSWEB/Makefile AFSWEB/Makefile.common
1433         ln -s ../Makefile AFSWEB/Makefile
1434         ln -s ../Makefile.common AFSWEB/Makefile.common
1435
1436 UAFS/$(LIBUAFS): setup_uafs
1437         cd UAFS; \
1438         $(MAKE) $(LIBUAFS) DESTDIR=${DESTDIR} LIBJUAFS_FLAGS=; \
1439         $(RANLIB) $(LIBUAFS)
1440
1441 JUAFS/$(LIBJUAFS): setup_juafs
1442         cd JUAFS; \
1443         $(MAKE) $(LIBJUAFS) DESTDIR=${DESTDIR} LIBJUAFS_FLAGS=-DAFS_WEB_ENHANCEMENTS; \
1444         $(RANLIB) $(LIBJUAFS)
1445
1446 AFSWEB/$(LIBAFSWEB): setup_nsafs
1447         cd AFSWEB; \
1448         $(MAKE) $(LIBAFSWEB) DESTDIR=${DESTDIR}; \
1449         $(RANLIB) $(LIBAFSWEB)
1450
1451 AFSWEB/$(LIBAFSWEBKRB): setup_nsafs
1452         cd AFSWEB; \
1453         $(MAKE) $(LIBAFSWEBKRB) DESTDIR=${DESTDIR}; \
1454         $(RANLIB) $(LIBAFSWEBKRB)
1455
1456 include ${TOP_OBJDIR}/src/config/Makefile.version