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