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