1a958f159f38a99e4d607575969e280e1e1307e0
[openafs.git] / src / libafs / 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 SHELL=/bin/sh
11 INCLUDE= -I.  -I/usr/include -I${TOP_OBJDIR}/src/config
12
13 TOP_OBJ_FSINT = ${TOP_OBJDIR}/src/fsint
14 TOP_OBJ_RXSTAT = ${TOP_OBJDIR}/src/rxstat
15 TOP_OBJ_SYS = ${TOP_OBJDIR}/src/sys
16 TOP_OBJ_VLSERVER = ${TOP_OBJDIR}/src/vlserver
17
18 TOP_SRC_AFS = ${TOP_SRCDIR}/afs
19 TOP_SRC_RXSTAT = ${TOP_SRCDIR}/rxstat
20 TOP_SRC_FSINT = ${TOP_SRCDIR}/fsint
21 TOP_SRC_RX = ${TOP_SRCDIR}/rx
22 TOP_SRC_OPR = $(TOP_SRCDIR)/opr
23 TOP_SRC_VNOPS = ${TOP_SRCDIR}/afs/VNOPS
24 TOP_SRC_RXKAD = ${TOP_SRCDIR}/rxkad
25
26 COMMON_INCLUDE = -I. -I.. -I../nfs \
27         -I$(TOP_SRCDIR)/crypto/hcrypto/kernel \
28         -I${TOP_SRCDIR} \
29         -I${TOP_SRCDIR}/afs \
30         -I${TOP_SRCDIR}/afs/${MKAFS_OSTYPE} \
31         -I${TOP_SRCDIR}/config \
32         -I${TOP_SRCDIR}/rx/${MKAFS_OSTYPE} \
33         -I${TOP_SRCDIR}/external/heimdal \
34         -I${TOP_OBJDIR}/src \
35         -I${TOP_OBJDIR}/src/afs \
36         -I${TOP_OBJDIR}/src/afs/${MKAFS_OSTYPE} \
37         -I${TOP_OBJDIR}/src/config \
38         -I${TOP_OBJDIR}/src/fsint \
39         -I${TOP_OBJDIR}/src/vlserver \
40         -I${TOP_OBJDIR}/src/auth \
41         -I${TOP_INCDIR} \
42         -I${TOP_INCDIR}/afs 
43
44 # Build rules - CC and CFLAGS are defined in system specific MakefileProtos.
45 .c.o:
46         $(RUN_CC) $(CC_WRAPPER) $(CC) $(COMMON_INCLUDE) $(CFLAGS) $(CFLAGS-$(@)) $(KERN_DBG) -c $<
47 CRULE_NOOPT=    $(RUN_CC) $(CC_WRAPPER) $(CC) $(COMMON_INCLUDE) $(KERN_DBG) $(CFLAGS) $(CFLAGS-$(@)) -o $@ -c
48 CRULE_OPT=      $(RUN_CC) $(CC_WRAPPER) $(CC) $(COMMON_INCLUDE) $(KERN_DBG) $(KERN_OPTMZ) $(CFLAGS) $(CFLAGS-$(@)) -o $@ -c
49
50 system: all
51
52 install:        all $(INSTDIRS)
53 dest:           all $(DESTDIRS)
54
55 all:    setup $(COMPDIRS)
56
57 single_compdir single_instdir single_destdir: setup
58         cd $(KOBJ) ; \
59         echo $(MAKE) DESTDIR=${DESTDIR} $@_libafs; \
60         $(MAKE) DESTDIR=${DESTDIR}  $@_libafs
61
62 single_compdir_libafs: depsrcs libafs
63 single_instdir_libafs: install_libafs
64 single_destdir_libafs: dest_libafs
65
66 # placeholder for any sources that are built prior to compiling libafs
67 depsrcs: 
68
69 AFSAOBJS = \
70         sha256-kernel.o \
71         rand-timer-kernel.o \
72         afs_atomlist.o \
73         afs_lhash.o \
74         afs_analyze.o \
75         afs_axscache.o  \
76         afs_buffer.o    \
77         afs_bypasscache.o \
78         afs_callback.o  \
79         afs_cbqueue.o    \
80         afs_cell.o \
81         afs_chunk.o             \
82         afs_conn.o \
83         afs_daemons.o   \
84         afs_dcache.o \
85         afs_dir.o               \
86         afs_disconnected.o      \
87         afs_dynroot.o           \
88         afs_error.o \
89         afs_icl.o \
90         afs_init.o \
91         afs_lock.o      \
92         afs_mariner.o \
93         afs_memcache.o  \
94         afs_fetchstore.o        \
95         afs_osi.o               \
96         afs_osidnlc.o   \
97         afs_osi_alloc.o \
98         afs_osi_pag.o \
99         afs_osi_uio.o \
100         afs_osi_vget.o \
101         afs_osi_vm.o \
102         afs_segments.o \
103         afs_server.o \
104         afs_stat.o \
105         afs_syscall.o \
106         afs_tokens.o \
107         afs_user.o \
108         afs_util.o \
109         afs_vcache.o \
110         afs_vnop_access.o \
111         afs_vnop_attrs.o \
112         afs_vnop_create.o \
113         afs_vnop_dirops.o \
114         afs_vnop_fid.o \
115         afs_vnop_flock.o \
116         afs_vnop_link.o \
117         afs_vnop_lookup.o \
118         afs_vnop_open.o \
119         afs_vnop_read.o \
120         afs_vnop_readdir.o \
121         afs_vnop_remove.o \
122         afs_vnop_rename.o \
123         afs_vnop_strategy.o \
124         afs_vnop_symlink.o \
125         afs_vnop_write.o \
126         afs_volume.o \
127         afs_warn.o \
128         xdr_update.o    \
129         xdr_refernce.o  \
130         Kvice.xdr.o     \
131         xdr_arrayn.o    \
132         xdr_array.o     \
133         xdr_int32.o     \
134         xdr_int64.o     \
135         Kvice.cs.o      \
136         fcrypt.o                \
137         rx.o            \
138         rx_call.o       \
139         rx_conn.o       \
140         rx_peer.o       \
141         rx_rdwr.o       \
142         rx_clock.o      \
143         rx_event.o      \
144         rx_globals.o    \
145         rx_identity.o   \
146         rx_kmutex.o     \
147         rx_knet.o       \
148         rx_kcommon.o    \
149         rx_misc.o       \
150         rx_null.o       \
151         rx_opaque.o     \
152         rx_getaddr.o    \
153         rx_packet.o     \
154         rx_multi.o      \
155         rx_stats.o      \
156         opr_rbtree.o    \
157         xdr_rx.o        \
158         xdr_mem.o       \
159         xdr_len.o       \
160         Kvldbint.cs.o   \
161         Kvldbint.xdr.o  \
162         Kcallback.ss.o  \
163         Krxstat.ss.o    \
164         Krxstat.xdr.o   \
165         rxstat.o        \
166         crypt_conn.o    \
167         AFS_component_version_number.o\
168         afs_exporter.o  \
169         rxkad_client.o  \
170         rxkad_common.o  \
171         xdr_afsuuid.o   \
172         xdr.o           \
173         Ktoken.xdr.o    \
174         md5.o           \
175         evp.o           \
176         evp-algs.o      \
177         rand-kernel.o   \
178         alloc-kernel.o  \
179         aes.o           \
180         rijndael-alg-fst.o \
181         sha.o           \
182         n-fold.o        \
183         crypto.o        \
184         crypto-algs.o   \
185         crypto-aes.o    \
186         crypto-context.o \
187         crypto-copy.o   \
188         crypto-ct.o     \
189         crypto-evp.o    \
190         crypto-data.o   \
191         crypto-keyblock.o \
192         crypto-store-int.o \
193         crypto-random.o \
194         afs_uuid.o $(AFS_OS_OBJS)
195
196 # These next two allow nfs and nonfs builds to occur in the same directory.
197 AFSNFSOBJS = \
198         afs_nfsclnt.o   \
199         afs_nfsdisp.o   \
200         afs_call_nfs.o \
201         afs_pioctl_nfs.o \
202         Kpagcb.cs.o     \
203         Kpagcb.xdr.o    \
204         $(AFS_OS_NFSOBJS)
205
206 AFSNONFSOBJS = \
207         afs_call.o \
208         afs_pioctl.o \
209         $(AFS_OS_NONFSOBJS)
210
211 # init daemons call pioctl
212 AFSPAGOBJS = \
213         sha256-kernel.o \
214         rand-timer-kernel.o \
215         md5.o           \
216         evp.o           \
217         evp-algs.o      \
218         rand-kernel.o   \
219         alloc-kernel.o  \
220         aes.o           \
221         rijndael-alg-fst.o \
222         sha.o           \
223         afs_atomlist.o \
224         afs_error.o \
225         afs_icl.o \
226         afs_lhash.o \
227         afs_lock.o      \
228         afs_osi.o               \
229         afs_osi_alloc.o \
230         afs_osi_pag.o \
231         afs_pag_call.o \
232         afs_pag_cred.o \
233         afs_pag_user.o \
234         afs_stat.o \
235         afs_syscall.o \
236         afs_tokens.o \
237         afs_warn.o \
238         xdr_update.o    \
239         xdr_refernce.o  \
240         xdr_arrayn.o    \
241         xdr_array.o     \
242         xdr_int32.o     \
243         xdr_int64.o     \
244         rx_pag.o        \
245         rx_pag_call.o   \
246         rx_conn.o       \
247         rx_peer.o       \
248         rx_pag_rdwr.o   \
249         rx_clock.o      \
250         rx_event.o      \
251         rx_globals.o    \
252         rx_identity.o   \
253         rx_kmutex.o     \
254         rx_pag_knet.o   \
255         rx_pag_kcommon.o        \
256         rx_misc.o       \
257         rx_null.o       \
258         rx_opaque.o     \
259         rx_getaddr.o    \
260         rx_pag_packet.o \
261         rx_multi.o      \
262         rx_stats.o      \
263         strcasecmp_pag.o        \
264         opr_rbtree.o    \
265         xdr_rx.o        \
266         xdr_mem.o       \
267         xdr_len.o       \
268         Kpagcb.ss.o     \
269         Kpagcb.xdr.o    \
270         Krxstat.ss.o    \
271         Krxstat.xdr.o   \
272         Krmtsys.cs.o    \
273         Krmtsys.xdr.o   \
274         rxstat.o        \
275         AFS_component_version_number.o\
276         xdr_afsuuid.o   \
277         xdr.o           \
278         Ktoken.xdr.o    \
279         afs_uuid.o $(AFS_OS_PAGOBJS)
280
281
282 # Compilation rules
283 # These files are to be optimized
284 base64.o: $(TOP_SRCDIR)/util/base64.c
285         $(CRULE_NOOPT) $(TOP_SRCDIR)/util/base64.c
286 afs_atomlist.o: $(TOP_SRCDIR)/util/afs_atomlist.c
287         $(CRULE_OPT) $(TOP_SRCDIR)/util/afs_atomlist.c
288 afs_lhash.o: $(TOP_SRCDIR)/util/afs_lhash.c
289         $(CRULE_OPT) $(TOP_SRCDIR)/util/afs_lhash.c
290 afs_analyze.o: $(TOP_SRC_AFS)/afs_analyze.c
291         $(CRULE_OPT) $(TOP_SRC_AFS)/afs_analyze.c
292 afs_axscache.o: $(TOP_SRC_AFS)/afs_axscache.c
293         $(CRULE_OPT) $(TOP_SRC_AFS)/afs_axscache.c
294 afs_buffer.o: $(TOP_SRC_AFS)/afs_buffer.c
295         $(CRULE_OPT) $(TOP_SRC_AFS)/afs_buffer.c
296 afs_bypasscache.o: $(TOP_SRC_AFS)/afs_bypasscache.c
297         $(CRULE_OPT) $(TOP_SRC_AFS)/afs_bypasscache.c
298 afs_cell.o: $(TOP_SRC_AFS)/afs_cell.c
299         $(CRULE_OPT) $(TOP_SRC_AFS)/afs_cell.c
300 afs_conn.o: $(TOP_SRC_AFS)/afs_conn.c
301         $(CRULE_OPT) $(TOP_SRC_AFS)/afs_conn.c
302 afs_dcache.o: $(TOP_SRC_AFS)/afs_dcache.c
303         $(CRULE_OPT) $(TOP_SRC_AFS)/afs_dcache.c
304 afs_disconnected.o: $(TOP_SRC_AFS)/afs_disconnected.c
305         $(CRULE_OPT) $(TOP_SRC_AFS)/afs_disconnected.c
306 afs_dynroot.o:  $(TOP_SRC_AFS)/afs_dynroot.c
307         $(CRULE_OPT) $(TOP_SRC_AFS)/afs_dynroot.c
308 afs_error.o: $(TOP_SRC_AFS)/afs_error.c
309         $(CRULE_OPT) $(TOP_SRC_AFS)/afs_error.c
310 afs_init.o: $(TOP_SRC_AFS)/afs_init.c
311         $(CRULE_OPT) $(TOP_SRC_AFS)/afs_init.c
312 afs_mariner.o: $(TOP_SRC_AFS)/afs_mariner.c
313         $(CRULE_OPT) $(TOP_SRC_AFS)/afs_mariner.c
314 afs_osidnlc.o: $(TOP_SRC_AFS)/afs_osidnlc.c
315         $(CRULE_OPT) $(TOP_SRC_AFS)/afs_osidnlc.c
316 afs_osi.o:      $(TOP_SRC_AFS)/afs_osi.c
317         $(CRULE_OPT) $(TOP_SRC_AFS)/afs_osi.c
318 afs_osi_alloc.o: $(TOP_SRC_AFS)/afs_osi_alloc.c
319         $(CRULE_OPT) $(TOP_SRC_AFS)/afs_osi_alloc.c
320 afs_osi_pag.o: $(TOP_SRC_AFS)/afs_osi_pag.c
321         $(CRULE_OPT) $(TOP_SRC_AFS)/afs_osi_pag.c
322 afs_osi_uio.o: $(TOP_SRC_AFS)/afs_osi_uio.c
323         $(CRULE_OPT) $(TOP_SRC_AFS)/afs_osi_uio.c
324 afs_osi_vget.o: $(TOP_SRC_AFS)/afs_osi_vget.c
325         $(CRULE_NOOPT) $(TOP_SRC_AFS)/afs_osi_vget.c
326 afs_osi_vm.o:   $(TOP_SRC_AFS)/afs_osi_vm.c
327         $(CRULE_OPT) $(TOP_SRC_AFS)/afs_osi_vm.c
328 afs_segments.o: $(TOP_SRC_AFS)/afs_segments.c
329         $(CRULE_OPT) $(TOP_SRC_AFS)/afs_segments.c
330 afs_server.o: $(TOP_SRC_AFS)/afs_server.c
331         $(CRULE_OPT) $(TOP_SRC_AFS)/afs_server.c
332 afs_tokens.o: $(TOP_SRC_AFS)/afs_tokens.c
333         $(CRULE_OPT) $(TOP_SRC_AFS)/afs_tokens.c
334 afs_user.o: $(TOP_SRC_AFS)/afs_user.c
335         $(CRULE_OPT) $(TOP_SRC_AFS)/afs_user.c
336 afs_util.o: $(TOP_SRC_AFS)/afs_util.c
337         $(CRULE_OPT) $(TOP_SRC_AFS)/afs_util.c
338 afs_warn.o: $(TOP_SRC_AFS)/afs_warn.c
339         $(CRULE_OPT) $(TOP_SRC_AFS)/afs_warn.c
340 afs_vcache.o: $(TOP_SRC_AFS)/afs_vcache.c
341         $(CRULE_OPT) $(TOP_SRC_AFS)/afs_vcache.c
342 afs_vnop_access.o: $(TOP_SRC_VNOPS)/afs_vnop_access.c
343         $(CRULE_NOOPT) $(TOP_SRC_VNOPS)/afs_vnop_access.c
344 afs_vnop_attrs.o: $(TOP_SRC_VNOPS)/afs_vnop_attrs.c
345         $(CRULE_NOOPT) $(TOP_SRC_VNOPS)/afs_vnop_attrs.c
346 afs_vnop_create.o: $(TOP_SRC_VNOPS)/afs_vnop_create.c
347         $(CRULE_NOOPT) $(TOP_SRC_VNOPS)/afs_vnop_create.c
348 afs_vnop_dirops.o: $(TOP_SRC_VNOPS)/afs_vnop_dirops.c
349         $(CRULE_NOOPT) $(TOP_SRC_VNOPS)/afs_vnop_dirops.c
350 afs_vnop_fid.o: $(TOP_SRC_VNOPS)/afs_vnop_fid.c
351         $(CRULE_NOOPT) $(TOP_SRC_VNOPS)/afs_vnop_fid.c
352 afs_vnop_flock.o: $(TOP_SRC_VNOPS)/afs_vnop_flock.c
353         $(CRULE_NOOPT) $(TOP_SRC_VNOPS)/afs_vnop_flock.c
354 afs_vnop_link.o: $(TOP_SRC_VNOPS)/afs_vnop_link.c
355         $(CRULE_NOOPT) $(TOP_SRC_VNOPS)/afs_vnop_link.c
356 afs_vnop_lookup.o: $(TOP_SRC_VNOPS)/afs_vnop_lookup.c
357         $(CRULE_NOOPT) $(TOP_SRC_VNOPS)/afs_vnop_lookup.c
358 afs_vnop_open.o: $(TOP_SRC_VNOPS)/afs_vnop_open.c
359         $(CRULE_NOOPT) $(TOP_SRC_VNOPS)/afs_vnop_open.c
360 afs_vnop_read.o: $(TOP_SRC_VNOPS)/afs_vnop_read.c
361         $(CRULE_NOOPT) $(TOP_SRC_VNOPS)/afs_vnop_read.c
362 afs_vnop_readdir.o: $(TOP_SRC_VNOPS)/afs_vnop_readdir.c
363         $(CRULE_NOOPT) $(TOP_SRC_VNOPS)/afs_vnop_readdir.c
364 afs_vnop_remove.o: $(TOP_SRC_VNOPS)/afs_vnop_remove.c
365         $(CRULE_NOOPT) $(TOP_SRC_VNOPS)/afs_vnop_remove.c
366 afs_vnop_rename.o: $(TOP_SRC_VNOPS)/afs_vnop_rename.c
367         $(CRULE_NOOPT) $(TOP_SRC_VNOPS)/afs_vnop_rename.c
368 afs_vnop_strategy.o: $(TOP_SRC_VNOPS)/afs_vnop_strategy.c
369         $(CRULE_NOOPT) $(TOP_SRC_VNOPS)/afs_vnop_strategy.c
370 afs_vnop_symlink.o: $(TOP_SRC_VNOPS)/afs_vnop_symlink.c
371         $(CRULE_NOOPT) $(TOP_SRC_VNOPS)/afs_vnop_symlink.c
372 afs_vnop_write.o: $(TOP_SRC_VNOPS)/afs_vnop_write.c
373         $(CRULE_NOOPT) $(TOP_SRC_VNOPS)/afs_vnop_write.c
374 afs_volume.o: $(TOP_SRC_AFS)/afs_volume.c
375         $(CRULE_OPT) $(TOP_SRC_AFS)/afs_volume.c
376 rx_call.o: $(TOP_SRC_RX)/rx_call.c
377         $(CRULE_OPT) $(TOP_SRC_RX)/rx_call.c
378 rx_conn.o: $(TOP_SRC_RX)/rx_conn.c
379         $(CRULE_OPT) $(TOP_SRC_RX)/rx_conn.c
380 rx_peer.o: $(TOP_SRC_RX)/rx_peer.c
381         $(CRULE_OPT) $(TOP_SRC_RX)/rx_peer.c
382 rx_rdwr.o: $(TOP_SRC_RX)/rx_rdwr.c
383         $(CRULE_OPT) $(TOP_SRC_RX)/rx_rdwr.c
384 afs_uuid.o: $(TOP_SRCDIR)/util/uuid.c
385         $(CRULE_OPT) $(TOP_SRCDIR)/util/uuid.c
386 xdr_afsuuid.o: $(TOP_SRCDIR)/rx/xdr_afsuuid.c
387         $(CRULE_OPT) $(TOP_SRCDIR)/rx/xdr_afsuuid.c
388 xdr_mem.o: $(TOP_SRCDIR)/rx/xdr_mem.c
389         $(CRULE_OPT) $(TOP_SRCDIR)/rx/xdr_mem.c
390 xdr_len.o: $(TOP_SRCDIR)/rx/xdr_len.c
391         $(CRULE_OPT) $(TOP_SRCDIR)/rx/xdr_len.c
392 Ktoken.xdr.o: $(TOP_OBJDIR)/src/auth/Ktoken.xdr.c
393         $(CRULE_OPT) $(TOP_OBJDIR)/src/auth/Ktoken.xdr.c
394
395 # these files are not to be optimized - subject to change.
396 afs_cbqueue.o: $(TOP_SRC_AFS)/afs_cbqueue.c
397         $(CRULE_NOOPT) $(TOP_SRC_AFS)/afs_cbqueue.c
398 afs_callback.o: $(TOP_SRC_AFS)/afs_callback.c
399         $(CRULE_NOOPT) $(TOP_SRC_AFS)/afs_callback.c
400 afs_chunk.o: $(TOP_SRC_AFS)/afs_chunk.c
401         $(CRULE_NOOPT) $(TOP_SRC_AFS)/afs_chunk.c
402 afs_daemons.o: $(TOP_SRC_AFS)/afs_daemons.c
403         $(CRULE_NOOPT) $(TOP_SRC_AFS)/afs_daemons.c
404 afs_dir.o:      $(TOP_SRCDIR)/dir/dir.c
405         $(CRULE_NOOPT) $(TOP_SRCDIR)/dir/dir.c
406 afs_icl.o: $(TOP_SRC_AFS)/afs_icl.c
407         $(CRULE_NOOPT) $(TOP_SRC_AFS)/afs_icl.c
408 AFS_component_version_number.o: AFS_component_version_number.c
409         $(CRULE_NOOPT) AFS_component_version_number.c
410 afs_lock.o: $(TOP_SRC_AFS)/afs_lock.c
411         $(CRULE_NOOPT) $(TOP_SRC_AFS)/afs_lock.c
412 afs_memcache.o: $(TOP_SRC_AFS)/afs_memcache.c
413         $(CRULE_NOOPT) $(TOP_SRC_AFS)/afs_memcache.c
414 afs_pag_call.o: $(TOP_SRC_AFS)/afs_pag_call.c
415         $(CRULE_NOOPT) $(TOP_SRC_AFS)/afs_pag_call.c
416 afs_pag_cred.o: $(TOP_SRC_AFS)/afs_pag_cred.c
417         $(CRULE_NOOPT) $(TOP_SRC_AFS)/afs_pag_cred.c
418 afs_fetchstore.o: $(TOP_SRC_AFS)/afs_fetchstore.c
419         $(CRULE_NOOPT) $(TOP_SRC_AFS)/afs_fetchstore.c
420 afs_stat.o: $(TOP_SRC_AFS)/afs_stat.c
421         $(CRULE_NOOPT) $(TOP_SRC_AFS)/afs_stat.c
422 afs_syscall.o: $(TOP_SRC_AFS)/afs_syscall.c
423         $(CRULE_NOOPT) $(TOP_SRC_AFS)/afs_syscall.c
424 fcrypt.o:       $(TOP_SRC_RXKAD)/fcrypt.c
425         $(CRULE_NOOPT) $(TOP_SRC_RXKAD)/fcrypt.c
426 crypt_conn.o: $(TOP_SRC_RXKAD)/crypt_conn.c
427         $(CRULE_NOOPT) $(TOP_SRC_RXKAD)/crypt_conn.c
428 rxkad_client.o: $(TOP_SRC_RXKAD)/rxkad_client.c
429         $(CRULE_NOOPT) $(TOP_SRC_RXKAD)/rxkad_client.c
430 rxkad_common.o: $(TOP_SRC_RXKAD)/rxkad_common.c
431         $(CRULE_NOOPT) $(TOP_SRC_RXKAD)/rxkad_common.c
432
433 CFLAGS-fcrypt.o = -I${TOP_SRCDIR}/rxkad -I$(TOP_OBJDIR)/src/rxkad
434 CFLAGS-crypt_conn.o = -I${TOP_SRCDIR}/rxkad -I$(TOP_OBJDIR)/src/rxkad
435 CFLAGS-rxkad_client.o = -I${TOP_SRCDIR}/rxkad -I$(TOP_OBJDIR)/src/rxkad
436 CFLAGS-rxkad_common.o = -I${TOP_SRCDIR}/rxkad -I$(TOP_OBJDIR)/src/rxkad
437
438 afs_exporter.o: $(TOP_SRC_AFS)/afs_exporter.c
439         $(CRULE_NOOPT) $(TOP_SRC_AFS)/afs_exporter.c
440 afs_nfsclnt.o: $(TOP_SRC_AFS)/afs_nfsclnt.c
441         $(CRULE_NOOPT) $(TOP_SRC_AFS)/afs_nfsclnt.c
442 afs_nfsdisp.o: $(TOP_SRC_AFS)/afs_nfsdisp.c
443         $(CRULE_NOOPT) $(TOP_SRC_AFS)/afs_nfsdisp.c
444 rx.o: $(TOP_SRC_RX)/rx.c
445         $(CRULE_NOOPT) $(TOP_SRC_RX)/rx.c
446 rx_clock.o: $(TOP_SRC_RX)/rx_clock.c
447         $(CRULE_NOOPT) $(TOP_SRC_RX)/rx_clock.c
448 rx_event.o: $(TOP_SRC_RX)/rx_event.c
449         $(CRULE_NOOPT) $(TOP_SRC_RX)/rx_event.c
450 rx_globals.o: $(TOP_SRC_RX)/rx_globals.c
451         $(CRULE_NOOPT) $(TOP_SRC_RX)/rx_globals.c
452 rx_identity.o: $(TOP_SRC_RX)/rx_identity.c
453         $(CRULE_NOOPT) $(TOP_SRC_RX)/rx_identity.c
454 rx_misc.o: $(TOP_SRC_RX)/rx_misc.c
455         $(CRULE_NOOPT) $(TOP_SRC_RX)/rx_misc.c
456 rx_multi.o: $(TOP_SRC_RX)/rx_multi.c
457         $(CRULE_NOOPT) $(TOP_SRC_RX)/rx_multi.c
458 rx_null.o: $(TOP_SRC_RX)/rx_null.c
459         $(CRULE_NOOPT) $(TOP_SRC_RX)/rx_null.c
460 rx_opaque.o: $(TOP_SRC_RX)/rx_opaque.c
461         $(CRULE_OPT) $(TOP_SRC_RX)/rx_opaque.c
462 rx_getaddr.o: $(TOP_SRC_RX)/rx_getaddr.c
463         $(CRULE_NOOPT) $(TOP_SRC_RX)/rx_getaddr.c
464 rx_packet.o: $(TOP_SRC_RX)/rx_packet.c
465         $(CRULE_NOOPT) $(TOP_SRC_RX)/rx_packet.c
466 rx_stats.o: $(TOP_SRC_RX)/rx_stats.c
467         $(CRULE_NOOPT) $(TOP_SRC_RX)/rx_stats.c
468 opr_rbtree.o: $(TOP_SRC_OPR)/rbtree.c
469         $(CRULE_OPT) $(TOP_SRC_OPR)/rbtree.c
470 CFLAGS-opr-rbtree.o = -I$(TOP_INCDIR)/opr
471 xdr_rx.o: $(TOP_SRC_RX)/xdr_rx.c
472         $(CRULE_NOOPT) $(TOP_SRC_RX)/xdr_rx.c
473 Kcallback.ss.o: $(TOP_OBJ_FSINT)/Kcallback.ss.c
474         $(CRULE_NOOPT) $(TOP_OBJ_FSINT)/Kcallback.ss.c
475 rxstat.o: $(TOP_SRC_RXSTAT)/rxstat.c
476         $(CRULE_NOOPT) $(TOP_SRC_RXSTAT)/rxstat.c
477 Kpagcb.cs.o: $(TOP_OBJ_FSINT)/Kpagcb.cs.c
478         $(CRULE_NOOPT) $(TOP_OBJ_FSINT)/Kpagcb.cs.c
479 Kpagcb.ss.o: $(TOP_OBJ_FSINT)/Kpagcb.ss.c
480         $(CRULE_NOOPT) $(TOP_OBJ_FSINT)/Kpagcb.ss.c
481 Kpagcb.xdr.o: $(TOP_OBJ_FSINT)/Kpagcb.xdr.c
482         $(CRULE_NOOPT) $(TOP_OBJ_FSINT)/Kpagcb.xdr.c
483 Krxstat.ss.o: $(TOP_OBJ_RXSTAT)/Krxstat.ss.c
484         $(CRULE_NOOPT) $(TOP_OBJ_RXSTAT)/Krxstat.ss.c
485 Krxstat.xdr.o: $(TOP_OBJ_RXSTAT)/Krxstat.xdr.c
486         $(CRULE_NOOPT) $(TOP_OBJ_RXSTAT)/Krxstat.xdr.c
487 Kvice.xdr.o: $(TOP_OBJ_FSINT)/Kvice.xdr.c
488         $(CRULE_NOOPT) $(TOP_OBJ_FSINT)/Kvice.xdr.c
489 Kvice.cs.o: $(TOP_OBJ_FSINT)/Kvice.cs.c
490         $(CRULE_NOOPT) $(TOP_OBJ_FSINT)/Kvice.cs.c
491 Krmtsys.xdr.o: $(TOP_OBJ_SYS)/Krmtsys.xdr.c
492         $(CRULE_NOOPT) $(TOP_OBJ_SYS)/Krmtsys.xdr.c
493 Krmtsys.cs.o: $(TOP_OBJ_SYS)/Krmtsys.cs.c
494         $(CRULE_NOOPT) $(TOP_OBJ_SYS)/Krmtsys.cs.c
495 xdr_update.o: $(TOP_SRC_RX)/xdr_update.c
496         $(CRULE_NOOPT) $(TOP_SRC_RX)/xdr_update.c
497 xdr_refernce.o: $(TOP_SRC_RX)/xdr_refernce.c
498         $(CRULE_NOOPT) $(TOP_SRC_RX)/xdr_refernce.c
499 xdr_arrayn.o: $(TOP_SRC_RX)/xdr_arrayn.c
500         $(CRULE_NOOPT) $(TOP_SRC_RX)/xdr_arrayn.c
501 xdr_array.o: $(TOP_SRC_RX)/xdr_array.c
502         $(CRULE_NOOPT) $(TOP_SRC_RX)/xdr_array.c
503 xdr_int32.o: $(TOP_SRC_RX)/xdr_int32.c
504         $(CRULE_NOOPT) $(TOP_SRC_RX)/xdr_int32.c
505 xdr_int64.o: $(TOP_SRC_RX)/xdr_int64.c
506         $(CRULE_NOOPT) $(TOP_SRC_RX)/xdr_int64.c
507 xdr.o: $(TOP_SRC_RX)/xdr.c
508         $(CRULE_NOOPT) $(TOP_SRC_RX)/xdr.c
509 Kvldbint.cs.o: ${TOP_OBJ_VLSERVER}/Kvldbint.cs.c
510         $(CRULE_NOOPT) ${TOP_OBJ_VLSERVER}/Kvldbint.cs.c
511 CFLAGS-Kvldbint.xdr.o= -DAFS_UUID_XG
512 Kvldbint.xdr.o: ${TOP_OBJ_VLSERVER}/Kvldbint.xdr.c
513         $(CRULE_NOOPT) ${TOP_OBJ_VLSERVER}/Kvldbint.xdr.c
514 rx_kmutex.o: $(TOP_SRC_RX)/${MKAFS_OSTYPE}/rx_kmutex.c
515         $(CRULE_NOOPT) $(TOP_SRC_RX)/${MKAFS_OSTYPE}/rx_kmutex.c
516 rx_knet.o: $(TOP_SRC_RX)/${MKAFS_OSTYPE}/rx_knet.c
517         $(CRULE_NOOPT) $(TOP_SRC_RX)/${MKAFS_OSTYPE}/rx_knet.c
518 rx_kcommon.o: $(TOP_SRC_RX)/rx_kcommon.c
519         $(CRULE_NOOPT) $(TOP_SRC_RX)/rx_kcommon.c
520
521 # Files which do not contain NFS translator code.
522 CFLAGS-afs_call.o= -DAFS_NONFSTRANS
523 afs_call.o: $(TOP_SRC_AFS)/afs_call.c
524         $(CRULE_NOOPT) $(TOP_SRC_AFS)/afs_call.c
525 CFLAGS-afs_pioctl.o= -DAFS_NONFSTRANS
526 afs_pioctl.o: $(TOP_SRC_AFS)/afs_pioctl.c
527         $(CRULE_NOOPT) $(TOP_SRC_AFS)/afs_pioctl.c
528
529 # NFS Translator versions of the above code.
530 afs_call_nfs.o: $(TOP_SRC_AFS)/afs_call.c
531         $(CRULE_NOOPT) $(TOP_SRC_AFS)/afs_call.c
532 afs_pioctl_nfs.o:       $(TOP_SRC_AFS)/afs_pioctl.c
533         $(CRULE_NOOPT) $(TOP_SRC_AFS)/afs_pioctl.c
534
535 # Special objects for the PAG module
536 afs_pag_user.o: $(TOP_SRC_AFS)/afs_user.c
537         $(CRULE_OPT) -DAFS_PAG_MANAGER $(TOP_SRC_AFS)/afs_user.c
538 rx_pag.o: $(TOP_SRC_RX)/rx.c
539         $(CRULE_NOOPT) $(TOP_SRC_RX)/rx.c
540 rx_pag_call.o: $(TOP_SRC_RX)/rx_call.c
541         $(CRULE_NOOPT) $(TOP_SRC_RX)/rx_call.c
542 rx_pag_rdwr.o: $(TOP_SRC_RX)/rx_rdwr.c
543         $(CRULE_NOOPT) $(TOP_SRC_RX)/rx_rdwr.c
544 rx_pag_kcommon.o: $(TOP_SRC_RX)/rx_kcommon.c
545         $(CRULE_NOOPT) $(TOP_SRC_RX)/rx_kcommon.c
546 rx_pag_packet.o: $(TOP_SRC_RX)/rx_packet.c
547         $(CRULE_NOOPT) $(TOP_SRC_RX)/rx_packet.c
548 rx_pag_knet.o: $(TOP_SRC_RX)/${MKAFS_OSTYPE}/rx_knet.c
549         $(CRULE_NOOPT) $(TOP_SRC_RX)/${MKAFS_OSTYPE}/rx_knet.c
550 strcasecmp_pag.o: $(TOP_SRCDIR)/crypto/hcrypto/kernel/strcasecmp.c
551         $(CRULE_NOOPT) $(TOP_SRCDIR)/crypto/hcrypto/kernel/strcasecmp.c
552
553 # Crypto
554 md5.o: $(TOP_SRCDIR)/external/heimdal/hcrypto/md5.c
555         $(CRULE_OPT) $(TOP_SRCDIR)/external/heimdal/hcrypto/md5.c
556
557 evp.o: $(TOP_SRCDIR)/external/heimdal/hcrypto/evp.c
558         $(CRULE_OPT) $(TOP_SRCDIR)/external/heimdal/hcrypto/evp.c
559 CFLAGS-evp.o= -I$(TOP_INCDIR)/hcrypto \
560               -DHAVE_CONFIG_H
561
562 evp-algs.o: $(TOP_SRCDIR)/crypto/hcrypto/kernel/evp-algs.c
563         $(CRULE_OPT) $(TOP_SRCDIR)/crypto/hcrypto/kernel/evp-algs.c
564 CFLAGS-evp-algs.o = -I$(TOP_INCDIR)/hcrypto
565
566 rand-kernel.o: $(TOP_SRCDIR)/crypto/hcrypto/kernel/rand.c
567         $(CRULE_OPT) $(TOP_SRCDIR)/crypto/hcrypto/kernel/rand.c
568 CFLAGS-rand-kernel.o = -I$(TOP_INCDIR)/hcrypto
569
570 rand-fortuna-kernel.o: $(TOP_SRCDIR)/external/heimdal/hcrypto/rand-fortuna.c
571         $(CRULE_OPT) $(TOP_SRCDIR)/external/heimdal/hcrypto/rand-fortuna.c
572 CFLAGS-rand-fortuna-kernel.o = -I$(TOP_INCDIR)/hcrypto
573
574 rand-timer-kernel.o: $(TOP_SRCDIR)/crypto/hcrypto/kernel/rand-timer.c
575         $(CRULE_OPT) $(TOP_SRCDIR)/crypto/hcrypto/kernel/rand-timer.c
576 CFLAGS-rand-timer-kernel.o = -I$(TOP_SRCDIR)/external/heimdal/hcrypto
577
578 sha256-kernel.o: $(TOP_SRCDIR)/external/heimdal/hcrypto/sha256.c
579         $(CRULE_OPT) $(TOP_SRCDIR)/external/heimdal/hcrypto/sha256.c
580 CFLAGS-sha256-kernel.o = -I$(TOP_INCDIR)/hcrypto
581
582 alloc-kernel.o: $(TOP_SRCDIR)/crypto/hcrypto/kernel/alloc.c
583         $(CRULE_OPT) $(TOP_SRCDIR)/crypto/hcrypto/kernel/alloc.c
584
585 aes.o: $(TOP_SRCDIR)/external/heimdal/hcrypto/aes.c
586         $(CRULE_OPT) $(TOP_SRCDIR)/external/heimdal/hcrypto/aes.c
587
588 rijndael-alg-fst.o:  $(TOP_SRCDIR)/external/heimdal/hcrypto/rijndael-alg-fst.c
589         $(CRULE_OPT) $(TOP_SRCDIR)/external/heimdal/hcrypto/rijndael-alg-fst.c
590
591 sha.o: $(TOP_SRCDIR)/external/heimdal/hcrypto/sha.c
592         $(CRULE_OPT) $(TOP_SRCDIR)/external/heimdal/hcrypto/sha.c
593
594 RFC3961_INCLUDES = -I$(TOP_SRCDIR)/crypto/rfc3961 \
595                    -I$(TOP_SRCDIR)/external/heimdal/krb5
596
597 n-fold.o: $(TOP_SRCDIR)/external/heimdal/krb5/n-fold.c
598         $(CRULE_OPT) $(TOP_SRCDIR)/external/heimdal/krb5/n-fold.c
599 CFLAGS-n-fold.o = $(RFC3961_INCLUDES)
600
601 crypto.o: $(TOP_SRCDIR)/external/heimdal/krb5/crypto.c
602         $(CRULE_OPT) $(TOP_SRCDIR)/external/heimdal/krb5/crypto.c
603 CFLAGS-crypto.o = $(RFC3961_INCLUDES)
604
605 crypto-aes.o: $(TOP_SRCDIR)/external/heimdal/krb5/crypto-aes.c
606         $(CRULE_OPT) $(TOP_SRCDIR)/external/heimdal/krb5/crypto-aes.c
607 CFLAGS-crypto-aes.o = $(RFC3961_INCLUDES)
608
609 crypto-evp.o: $(TOP_SRCDIR)/external/heimdal/krb5/crypto-evp.c
610         $(CRULE_OPT) $(TOP_SRCDIR)/external/heimdal/krb5/crypto-evp.c
611 CFLAGS-crypto-evp.o = $(RFC3961_INCLUDES)
612
613 crypto-data.o: $(TOP_SRCDIR)/external/heimdal/krb5/data.c
614         $(CRULE_OPT) $(TOP_SRCDIR)/external/heimdal/krb5/data.c
615 CFLAGS-crypto-data.o = $(RFC3961_INCLUDES)
616
617 crypto-keyblock.o: $(TOP_SRCDIR)/external/heimdal/krb5/keyblock.c
618         $(CRULE_OPT) $(TOP_SRCDIR)/external/heimdal/krb5/keyblock.c
619 CFLAGS-crypto-keyblock.o = $(RFC3961_INCLUDES)
620
621 crypto-store-int.o: $(TOP_SRCDIR)/external/heimdal/krb5/store-int.c
622         $(CRULE_OPT) $(TOP_SRCDIR)/external/heimdal/krb5/store-int.c
623 CFLAGS-crypto-store-int.o = $(RFC3961_INCLUDES)
624
625 crypto-random.o: $(TOP_SRCDIR)/crypto/rfc3961/kernel/random.c
626         $(CRULE_OPT) $(TOP_SRCDIR)/crypto/rfc3961/kernel/random.c
627 CFLAGS-crypto-random.o = -I$(TOP_SRCDIR)/crypto/kernel
628
629 crypto-algs.o: $(TOP_SRCDIR)/crypto/rfc3961/kernel/algs.c
630         $(CRULE_OPT) $(TOP_SRCDIR)/crypto/rfc3961/kernel/algs.c
631 CFLAGS-crypto-algs.o = $(RFC3961_INCLUDES)
632
633 crypto-copy.o: $(TOP_SRCDIR)/crypto/rfc3961/copy.c
634         $(CRULE_OPT) $(TOP_SRCDIR)/crypto/rfc3961/copy.c
635 CFLAGS-crypto-copy.o = $(RFC3961_INCLUDES)
636
637 crypto-context.o: $(TOP_SRCDIR)/crypto/rfc3961/context.c
638         $(CRULE_OPT) $(TOP_SRCDIR)/crypto/rfc3961/context.c
639 CFLAGS-crypto-context.o = $(RFC3961_INCLUDES)
640
641 crypto-ct.o: $(TOP_SRCDIR)/external/heimdal/roken/ct.c
642         $(CRULE_OPT) $(TOP_SRCDIR)/external/heimdal/roken/ct.c
643 CFLAGS-crypto-ct.o = $(RFC3961_INCLUDES)
644
645 # Files which are specific to particular architectures/targets
646 # but have common build rules. Place here instead of duplicating
647 # in the per-platform Makefiles.
648 osi_groups.o: $(TOP_SRCDIR)/afs/$(MKAFS_OSTYPE)/osi_groups.c
649         $(CRULE_NOOPT) $(TOP_SRCDIR)/afs/$(MKAFS_OSTYPE)/osi_groups.c
650 osi_gcpags.o: $(TOP_SRCDIR)/afs/$(MKAFS_OSTYPE)/osi_gcpags.c
651         $(CRULE_NOOPT) $(TOP_SRCDIR)/afs/$(MKAFS_OSTYPE)/osi_gcpags.c
652 osi_inode.o: $(TOP_SRCDIR)/afs/$(MKAFS_OSTYPE)/osi_inode.c
653         $(CRULE_NOOPT) $(TOP_SRCDIR)/afs/$(MKAFS_OSTYPE)/osi_inode.c
654 osi_file.o: $(TOP_SRCDIR)/afs/$(MKAFS_OSTYPE)/osi_file.c
655         $(CRULE_NOOPT) $(TOP_SRCDIR)/afs/$(MKAFS_OSTYPE)/osi_file.c
656 osi_sleep.o: $(TOP_SRCDIR)/afs/$(MKAFS_OSTYPE)/osi_sleep.c
657         $(CRULE_NOOPT) $(TOP_SRCDIR)/afs/$(MKAFS_OSTYPE)/osi_sleep.c
658 osi_misc.o: $(TOP_SRCDIR)/afs/$(MKAFS_OSTYPE)/osi_misc.c
659         $(CRULE_NOOPT) $(TOP_SRCDIR)/afs/$(MKAFS_OSTYPE)/osi_misc.c
660 CFLAGS-osi_vfsops_nfs.o= -DAFS_WRAPPER=${LIBAFS}_wrapper -DAFS_CONF_DATA=${LIBAFS}_conf_data
661 osi_vfsops_nfs.o: $(TOP_SRCDIR)/afs/$(MKAFS_OSTYPE)/osi_vfsops.c
662         $(CRULE_NOOPT) $(TOP_SRCDIR)/afs/$(MKAFS_OSTYPE)/osi_vfsops.c
663 CFLAGS-osi_vfsops.o= -DAFS_NONFSTRANS -DAFS_WRAPPER=${LIBAFSNONFS}_wrapper -DAFS_CONF_DATA=${LIBAFSNONFS}_conf_data
664 osi_vfsops.o: $(TOP_SRCDIR)/afs/$(MKAFS_OSTYPE)/osi_vfsops.c
665         $(CRULE_NOOPT) $(TOP_SRCDIR)/afs/$(MKAFS_OSTYPE)/osi_vfsops.c
666 osi_vm.o: $(TOP_SRCDIR)/afs/$(MKAFS_OSTYPE)/osi_vm.c
667         $(CRULE_NOOPT) $(TOP_SRCDIR)/afs/$(MKAFS_OSTYPE)/osi_vm.c
668 osi_vnodeops.o: $(TOP_SRCDIR)/afs/$(MKAFS_OSTYPE)/osi_vnodeops.c
669         $(CRULE_NOOPT) $(TOP_SRCDIR)/afs/$(MKAFS_OSTYPE)/osi_vnodeops.c
670 CFLAGS-osi_debug.o = -I${TOP_SRCDIR}/rxkad
671 osi_debug.o: $(TOP_SRCDIR)/afs/$(MKAFS_OSTYPE)/osi_debug.c
672         $(CRULE_OPT) $(TOP_SRCDIR)/afs/$(MKAFS_OSTYPE)/osi_debug.c
673 osi_ioctl.o: $(TOP_SRCDIR)/afs/$(MKAFS_OSTYPE)/osi_ioctl.c
674         $(CRULE_NOOPT) $(TOP_SRCDIR)/afs/$(MKAFS_OSTYPE)/osi_ioctl.c
675 osi_module.o: $(TOP_SRCDIR)/afs/$(MKAFS_OSTYPE)/osi_module.c
676         $(CRULE_NOOPT) $(TOP_SRCDIR)/afs/$(MKAFS_OSTYPE)/osi_module.c
677 osi_pag_module.o: $(TOP_SRCDIR)/afs/$(MKAFS_OSTYPE)/osi_pag_module.c
678         $(CRULE_NOOPT) $(TOP_SRCDIR)/afs/$(MKAFS_OSTYPE)/osi_pag_module.c
679 osi_proc.o: $(TOP_SRCDIR)/afs/$(MKAFS_OSTYPE)/osi_proc.c
680         $(CRULE_NOOPT) $(TOP_SRCDIR)/afs/$(MKAFS_OSTYPE)/osi_proc.c
681 osi_probe.o: $(TOP_SRCDIR)/afs/$(MKAFS_OSTYPE)/osi_probe.c
682         $(CRULE_NOOPT) $(TOP_SRCDIR)/afs/$(MKAFS_OSTYPE)/osi_probe.c
683 osi_syscall.o: $(TOP_SRCDIR)/afs/$(MKAFS_OSTYPE)/osi_syscall.c
684         $(CRULE_NOOPT) $(TOP_SRCDIR)/afs/$(MKAFS_OSTYPE)/osi_syscall.c
685 osi_sysctl.o: $(TOP_SRCDIR)/afs/$(MKAFS_OSTYPE)/osi_sysctl.c
686         $(CRULE_NOOPT) $(TOP_SRCDIR)/afs/$(MKAFS_OSTYPE)/osi_sysctl.c
687 osi_flush.o: $(TOP_SRCDIR)/afs/$(MKAFS_OSTYPE)/osi_flush.s
688         $(CRULE_OPT) $(TOP_SRCDIR)/afs/$(MKAFS_OSTYPE)/osi_flush.s
689 osi_export.o: $(TOP_SRCDIR)/afs/$(MKAFS_OSTYPE)/osi_export.c
690         $(CRULE_NOOPT) $(TOP_SRCDIR)/afs/$(MKAFS_OSTYPE)/osi_export.c
691 osi_nfssrv.o: $(TOP_SRCDIR)/afs/$(MKAFS_OSTYPE)/osi_nfssrv.c
692         $(CRULE_NOOPT) $(TOP_SRCDIR)/afs/$(MKAFS_OSTYPE)/osi_nfssrv.c
693 osi_alloc.o: $(TOP_SRCDIR)/afs/$(MKAFS_OSTYPE)/osi_alloc.c
694         $(CRULE_NOOPT) $(TOP_SRCDIR)/afs/$(MKAFS_OSTYPE)/osi_alloc.c
695 osi_cred.o: $(TOP_SRCDIR)/afs/$(MKAFS_OSTYPE)/osi_cred.c
696         $(CRULE_NOOPT) $(TOP_SRCDIR)/afs/$(MKAFS_OSTYPE)/osi_cred.c
697 osi_idbg.o: $(TOP_SRCDIR)/afs/$(MKAFS_OSTYPE)/osi_idbg.c
698         $(CRULE_NOOPT) $(TOP_SRCDIR)/afs/$(MKAFS_OSTYPE)/osi_idbg.c
699 osi_config.o: $(TOP_SRCDIR)/afs/$(MKAFS_OSTYPE)/osi_config.c
700         $(CRULE_NOOPT) $(TOP_SRCDIR)/afs/$(MKAFS_OSTYPE)/osi_config.c
701 osi_timeout.o: $(TOP_SRCDIR)/afs/$(MKAFS_OSTYPE)/osi_timeout.c
702         $(CRULE_NOOPT) $(TOP_SRCDIR)/afs/$(MKAFS_OSTYPE)/osi_timeout.c
703 osi_pagecopy.o: $(TOP_SRCDIR)/afs/$(MKAFS_OSTYPE)/osi_pagecopy.c
704         $(CRULE_NOOPT) $(TOP_SRCDIR)/afs/$(MKAFS_OSTYPE)/osi_pagecopy.c
705 osi_vcache.o: $(TOP_SRCDIR)/afs/$(MKAFS_OSTYPE)/osi_vcache.c
706         $(CRULE_NOOPT) $(TOP_SRCDIR)/afs/$(MKAFS_OSTYPE)/osi_vcache.c
707 osi_crypto.o: $(TOP_SRCDIR)/afs/$(MKAFS_OSTYPE)/osi_crypto.c
708         $(CRULE_OPT) $(TOP_SRCDIR)/afs/$(MKAFS_OSTYPE)/osi_crypto.c
709
710 clean:
711         -$(RM) -rf STATIC* MODLOAD* $(AFS_OS_CLEAN)
712         -$(RM) -rf  h net netinet rpc ufs machine inet nfs sys afs afsint asm asm-generic config rx linux
713
714 include ${TOP_OBJDIR}/src/config/Makefile.version