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