9acc7c5268ed6ff25ebd83aa9ed770ce1f56e263
[openafs.git] / Makefile.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 # Portions Copyright (c) 2003 Apple Computer, Inc.
9
10 srcdir=@srcdir@
11 include @TOP_OBJDIR@/src/config/Makefile.config
12
13 # Enable build+install of obsolete and insecure packages
14 # Set to anything other than YES, or comment out to disable the build
15 WITH_OBSOLETE=@WITH_OBSOLETE@
16 WITH_INSECURE=@WITH_INSECURE@
17
18 ENABLE_KERNEL_MODULE=@ENABLE_KERNEL_MODULE@
19
20 # To compile AFS from scratch in the src tree run "make".
21 #   This recursively calls "make install ..." and does not depend on the
22 #   existence of any non-standard programs.
23 # To compile for the kernel type "make blibafs".  This assumes install, 
24 #   rxgen, compile_et and others already exist and runs it with
25 #   "-argument kinstall".
26
27 COMPILE_PART1  = cd src && cd
28 COMPILE_PART2A = && $(MAKE)
29 COMPILE_PART2B = all
30 COMPILE_PART2  = ${COMPILE_PART2A} ${COMPILE_PART2B}
31 COMPILE_CLEAN  = ${COMPILE_PART2A} clean
32 COMPILE_DEPINSTALL  = ${COMPILE_PART2A} depinstall
33
34 all: force ${TOP_INCDIR} ${TOP_INCDIR}/afs ${TOP_LIBDIR}
35         $(MAKE) build
36
37 all_nolibafs: force ${TOP_INCDIR} ${TOP_INCDIR}/afs ${TOP_LIBDIR}
38         $(MAKE) build TARGET=finale_nolibafs
39
40 only_libafs: force ${TOP_INCDIR} ${TOP_INCDIR}/afs ${TOP_LIBDIR}
41         $(MAKE) build TARGET=libafs
42
43 only_libafs_tree: force ${TOP_INCDIR} ${TOP_INCDIR}/afs ${TOP_LIBDIR}
44         $(MAKE) build TARGET=libafs_tree
45
46 install: all install_dirs
47         $(MAKE) build COMPILE_PART2B=install
48
49 install_nolibafs: all_nolibafs install_dirs
50         $(MAKE) build TARGET=finale_nolibafs COMPILE_PART2B=install
51
52 install_only_libafs: only_libafs install_dirs
53         $(MAKE) build TARGET=libafs COMPILE_PART2B=install
54
55 dest: all dest_dirs
56         $(MAKE) build COMPILE_PART2B=dest
57
58 dest_nolibafs: all_nolibafs dest_dirs
59         $(MAKE) build TARGET=finale_nolibafs COMPILE_PART2B=dest
60
61 dest_only_libafs: only_libafs dest_dirs
62         $(MAKE) build TARGET=libafs COMPILE_PART2B=dest
63
64 packages: dest
65         @case ${SYS_NAME} in \
66         *_darwin_* ) \
67                 ${COMPILE_PART1} packaging/MacOS && sh ./buildpkg.sh ${DEST} ;; \
68         hp_ux110 ) \
69                 ${COMPILE_PART1} packaging/HP-UX && swpackage -s  psf-1.2.10-transarc-paths-11.00 ;; \
70         hp_ux11i ) \
71                 ${COMPILE_PART1} packaging/HP-UX && swpackage -s  psf-1.2.10-transarc-paths-11.11 ;; \
72         ia64_hpux1122 ) \
73                 ${COMPILE_PART1} packaging/HP-UX && swpackage -s  psf-1.2.10-transarc-paths-11.22 ;; \
74         *) \
75                 echo Not building packages for ${SYS_NAME} ;; \
76         esac
77
78 ${TOP_INCDIR} ${TOP_INCDIR}/afs ${TOP_LIBDIR} ${TOP_JLIBDIR}:
79         mkdir -p $@
80
81 install_dirs: force
82         mkdir -p ${DESTDIR}${bindir}
83         mkdir -p ${DESTDIR}${sbindir}
84         mkdir -p ${DESTDIR}${libexecdir}/openafs
85         mkdir -p ${DESTDIR}${libdir}/afs
86         mkdir -p ${DESTDIR}${includedir}/afs
87         mkdir -p ${DESTDIR}${includedir}/rx
88         mkdir -p ${DESTDIR}${afskerneldir}
89         mkdir -p ${DESTDIR}${afssrvbindir}
90         mkdir -p ${DESTDIR}${afssrvsbindir}
91         mkdir -p ${DESTDIR}${afssrvlibexecdir}
92
93 dest_dirs: force
94         mkdir -p ${DEST}/bin
95         mkdir -p ${DEST}/etc
96         mkdir -p ${DEST}/lib/afs
97         mkdir -p ${DEST}/include/afs
98         mkdir -p ${DEST}/include/rx
99         mkdir -p ${DEST}/root.client/usr/vice/etc/C
100         mkdir -p ${DEST}/root.server/etc
101         mkdir -p ${DEST}/root.server/usr/afs/bin
102
103 project: cmd comerr 
104
105 tests: all 
106         ${COMPILE_PART1} tests ${COMPILE_PART2}
107
108 config: 
109         ${COMPILE_PART1} config ${COMPILE_PART2}
110
111 pinstall: config
112         ${COMPILE_PART1} pinstall ${COMPILE_PART2}
113
114 procmgmt: pinstall
115         ${COMPILE_PART1} procmgmt ${COMPILE_PART2}
116
117 util: procmgmt
118         ${COMPILE_PART1} util ${COMPILE_PART2}
119
120 audit: util rx rxkad
121         ${COMPILE_PART1} audit ${COMPILE_PART2} #TODO
122
123 comerr: util
124         ${COMPILE_PART1} comerr ${COMPILE_PART2}
125
126 cmd: comerr
127         @case ${SYS_NAME} in \
128         sgi_6* | sun*_5[789] | hp_ux11* | ia64_hpux* | sparc64_linux* | alpha_linux* ) \
129                 ${COMPILE_PART1} cmd ${COMPILE_PART2}64 ;; \
130         *) \
131                 ${COMPILE_PART1} cmd ${COMPILE_PART2} ;; \
132         esac
133
134 lwp: util lwp_depinstall
135         ${COMPILE_PART1} lwp ${COMPILE_PART2}
136
137 rxgen: pinstall 
138         ${COMPILE_PART1} rxgen ${COMPILE_PART2}
139
140 rx: pinstall lwp rxgen rx_depinstall
141         ${COMPILE_PART1} rx ${COMPILE_PART2}
142
143 rxstat: rx rxstat_depinstall
144         ${COMPILE_PART1} rxstat ${COMPILE_PART2}
145
146 rxtests: rxdebug
147 rxdebug: rx sys
148         ${COMPILE_PART1} rxdebug ${COMPILE_PART2}
149
150 fsint: cmd comerr rxgen rx lwp fsint_depinstall
151         ${COMPILE_PART1} fsint ${COMPILE_PART2}
152
153 export2: project 
154
155 export: 
156         @case ${SYS_NAME} in \
157         rs_aix*) \
158                 ${MAKE} export_build ; \
159         esac
160
161 export_build: fsint
162         ${COMPILE_PART1} export ${COMPILE_PART2}
163
164 afs: export pinstall comerr afs_depinstall
165         ${COMPILE_PART1} afs ${COMPILE_PART2}
166
167 des: config pinstall
168         ${COMPILE_PART1} des ${COMPILE_PART2} 
169
170 sys: cmd comerr afs des rx rxstat fsint
171         ${COMPILE_PART1} sys ${COMPILE_PART2}
172
173 rxkad: cmd comerr sys des rx rxkad_depinstall
174         ${COMPILE_PART1} rxkad ${COMPILE_PART2}
175
176 auth: cmd comerr comerr des lwp rx sys rxkad audit auth_depinstall
177         ${COMPILE_PART1} auth ${COMPILE_PART2}
178
179 ubik: cmd comerr auth ubik_depinstall
180         ${COMPILE_PART1} ubik ${COMPILE_PART2}
181
182 ubiktests: ubik
183
184 ptserver: cmd comerr ubik cmd comerr auth audit ptserver_depinstall
185         ${COMPILE_PART1} ptserver ${COMPILE_PART2}
186
187 kauth: cmd comerr ubik cmd auth comerr ptserver audit libacl kauth_depinstall
188         ${COMPILE_PART1} kauth ${COMPILE_PART2}
189
190 dauth: cmd comerr ubik cmd auth kauth comerr
191         ${COMPILE_PART1} dauth ${COMPILE_PART2}
192
193 libacl: cmd comerr ptserver libacl_depinstall
194         ${COMPILE_PART1} libacl ${COMPILE_PART2}
195
196 dir: cmd comerr libacl dir_depinstall
197         ${COMPILE_PART1} dir ${COMPILE_PART2}
198
199 # Removed from sgi_* case below:
200 # ${COMPILE_PART1} sgiefs ${COMPILE_PART2};;
201 sgiefs:
202         case ${SYS_NAME} in \
203         sgi_*) \
204                 echo "SGI efs not supported" ;; \
205         *) \
206                 echo No efs stuff for ${SYS_NAME};; \
207         esac
208
209 vol: cmd comerr dir afs sgiefs
210         ${COMPILE_PART1} vol ${COMPILE_PART2}
211
212 vlserver: cmd comerr vol audit vlserver_depinstall
213         ${COMPILE_PART1} vlserver ${COMPILE_PART2}
214
215 viced: cmd comerr vlserver audit
216         ${COMPILE_PART1} viced ${COMPILE_PART2}
217
218 tviced: cmd comerr viced vlserver libafsrpc libafsauthent
219         case ${SYS_NAME} in \
220         alpha_dux*|sgi_*|sun*_5*|rs_aix*|*linux*|hp_ux11*|ia64_hpux*|*fbsd*|*nbsd2*) \
221                 ${COMPILE_PART1} tviced ${COMPILE_PART2} ;; \
222         *_darwin_[1-6][0-9]) \
223                 echo Not building MT viced for ${SYS_NAME} ;; \
224         *_darwin_*) \
225                 ${COMPILE_PART1} tviced  ${COMPILE_PART2} ;; \
226         *) \
227                 echo Not building MT viced for ${SYS_NAME} ;; \
228         esac
229
230 volser: cmd comerr tviced usd kauth audit
231         ${COMPILE_PART1} volser ${COMPILE_PART2}
232
233 venus: cmd comerr volser ptserver
234         ${COMPILE_PART1} venus ${COMPILE_PART2}
235         ${COMPILE_PART1} venus/test ${COMPILE_PART2}
236
237 afsd: cmd comerr sys kauth
238         ${COMPILE_PART1} afsd ${COMPILE_PART2}
239
240 null: cmd comerr
241         ${COMPILE_PART1} null ${COMPILE_PART2}
242
243 ${TOP_LIBDIR}/libtermlib.a: 
244         $(RM) -f ${TOP_LIBDIR}/libtermlib.a
245         case ${SYS_NAME} in \
246         rs_aix* | sun4x_* | sunx86_* | sgi_6? | *linux* | *_darwin* | *fbsd* | ia64_hpux*) \
247                 ln -s libnull.a ${TOP_LIBDIR}/libtermlib.a ;; \
248         *) \
249                 ln -s /usr/lib/libtermlib.a ${TOP_LIBDIR}/libtermlib.a ;; \
250         esac
251
252 gtx: cmd comerr null auth kauth ${TOP_LIBDIR}/libtermlib.a
253         ${COMPILE_PART1} gtx ${COMPILE_PART2}
254
255 fsprobe: cmd comerr util fsint volser
256         ${COMPILE_PART1} fsprobe ${COMPILE_PART2}
257
258 scout: cmd comerr gtx fsprobe
259         ${COMPILE_PART1} scout ${COMPILE_PART2}
260
261 uss: des kauth cmd comerr rx vlserver vol volser
262         ${COMPILE_PART1} uss ${COMPILE_PART2}
263
264 bozo: cmd comerr ntp audit
265         ${COMPILE_PART1} bozo ${COMPILE_PART2}
266
267 vfsck:  vol
268         set -x; \
269         case ${SYS_NAME} in \
270         sgi_* | *linux* | rs_aix42 | *_darwin* | hp_ux* | ia64_hpux* | *fbsd* | *_obsd* | *_nbsd* | sun*_4* | rs_aix5* ) \
271                 echo skip vfsck for ${SYS_NAME} ;; \
272          * ) \
273                 ${COMPILE_PART1} vfsck ${COMPILE_PART2} ;; \
274         esac
275
276 login: cmd comerr kauth rxkad
277         set -x; \
278         case ${SYS_NAME} in \
279         sgi_* ) \
280                 ${COMPILE_PART1} sgistuff ${COMPILE_PART2} ;; \
281         rs_aix42 | rs_aix51 ) \
282                 ${COMPILE_PART1} tsm41 ${COMPILE_PART2} ;; \
283         alpha_dux* ) \
284                 ${COMPILE_PART1} sia ${COMPILE_PART2} ;; \
285         sun4x_55 ) \
286                 ${COMPILE_PART1} login ${COMPILE_PART2} ;; \
287         parisc_linux24) \
288                 echo Skipping pam/login for parisc_linux24 ;; \
289         amd64_linux24) \
290                 echo Skipping pam/login for amd64_linux24 ;; \
291         sun4x_* | sunx86_* | hp_ux11* | ia64_hpux* | *linux* | *fbsd* ) \
292                 if test "@HAVE_PAM@" = "yes"; then \
293                         ${COMPILE_PART1} pam ${COMPILE_PART2} ; \
294                 else \
295                         echo Skipping pam for ${SYS_NAME} ; \
296                 fi ;; \
297         *_darwin* | *_obsd* | *_nbsd* | hp_ux* | rs_aix5* ) \
298                 echo Skipping login for ${SYS_NAME} ;; \
299         * ) \
300                 ${COMPILE_PART1} login ${COMPILE_PART2} ;; \
301         esac
302
303
304 #
305 # _depinstall targets - only build and install headers/sources that are needed by libafs/libuafs
306 #
307 # encode dependencies within the _depinstall targets as required
308 #
309 lwp_depinstall: pinstall
310         ${COMPILE_PART1} lwp ${COMPILE_DEPINSTALL}
311
312 rx_depinstall: pinstall
313         ${COMPILE_PART1} rx ${COMPILE_DEPINSTALL}
314
315 rxkad_depinstall: pinstall comerr
316         ${COMPILE_PART1} rxkad ${COMPILE_DEPINSTALL}
317
318 ubik_depinstall: pinstall comerr rxgen
319         ${COMPILE_PART1} ubik ${COMPILE_DEPINSTALL}
320
321 vlserver_depinstall: pinstall rxgen ubik_depinstall auth_depinstall
322         ${COMPILE_PART1} vlserver ${COMPILE_DEPINSTALL}
323
324 auth_depinstall: pinstall comerr
325         ${COMPILE_PART1} auth ${COMPILE_DEPINSTALL}
326
327 fsint_depinstall: pinstall rxgen
328         ${COMPILE_PART1} fsint ${COMPILE_DEPINSTALL}
329
330 rxstat_depinstall: pinstall rxgen
331         ${COMPILE_PART1} rxstat ${COMPILE_DEPINSTALL}
332
333 libacl_depinstall: pinstall
334         ${COMPILE_PART1} libacl ${COMPILE_DEPINSTALL}
335
336 afs_depinstall: pinstall comerr
337         ${COMPILE_PART1} afs ${COMPILE_DEPINSTALL}
338
339 dir_depinstall: pinstall
340         ${COMPILE_PART1} dir ${COMPILE_DEPINSTALL}
341
342 kauth_depinstall: pinstall rxgen comerr
343         ${COMPILE_PART1} kauth ${COMPILE_DEPINSTALL}
344
345 ptserver_depinstall: pinstall rxgen comerr
346         ${COMPILE_PART1} ptserver ${COMPILE_DEPINSTALL}
347
348
349 #
350 # libafs build targets
351 #
352 libafs_setup: config export
353         src/config/config src/libafs/MakefileProto.${MKAFS_OSTYPE} src/libafs/Makefile ${SYS_NAME}
354
355 libafs: libafs_setup lwp_depinstall rx_depinstall vlserver_depinstall rxkad_depinstall fsint_depinstall \
356                 libacl_depinstall afs_depinstall dir_depinstall rxstat_depinstall
357         ${COMPILE_PART1} libafs ${COMPILE_PART2}
358
359 libafs_tree: libafs_setup lwp_depinstall rx_depinstall vlserver_depinstall rxkad_depinstall fsint_depinstall \
360                 libacl_depinstall afs_depinstall dir_depinstall rxstat_depinstall
361         ${TOP_SRCDIR}/config/make_libafs_tree.pl \
362                 -sn $(SYS_NAME) \
363                 -os $(MKAFS_OSTYPE) \
364                 -t @TOP_OBJDIR@/libafs_tree \
365                 -o @TOP_OBJDIR@ \
366                 -p @srcdir@
367
368 #
369 # libuafs build targets
370 #
371
372 UKERNELDIR= \
373   des \
374   afsweb 
375
376 libuafs_setup: config export
377         src/config/config src/libuafs/MakefileProto.${MKAFS_OSTYPE} src/libuafs/Makefile ${SYS_NAME}
378
379 libuafs: libuafs_setup vlserver_depinstall rx_depinstall fsint_depinstall \
380                 auth_depinstall dir_depinstall libacl_depinstall rxkad_depinstall \
381                 ubik_depinstall afs_depinstall kauth_depinstall ptserver_depinstall \
382                 rxstat_depinstall lwp_depinstall des
383         set -x; \
384         case ${SYS_NAME} in \
385         hp_ux102* | *_obsd* | sun*_4* | *_nbsd*| hp_ux11i | ia64_hpux1122) \
386                 echo Skipping libuafs for ${SYS_NAME} ;; \
387         * ) \
388                 ${COMPILE_PART1} libuafs ${COMPILE_PART2} ;; \
389         esac
390
391 afsweb: kauth dauth 
392         ${COMPILE_PART1} afsweb ${COMPILE_PART2}
393
394 update: cmd comerr auth
395         ${COMPILE_PART1} update ${COMPILE_PART2}
396
397 log: cmd comerr auth 
398         ${COMPILE_PART1} log ${COMPILE_PART2}
399
400 bu_utils: cmd comerr usd
401         ${COMPILE_PART1} bu_utils ${COMPILE_PART2}
402
403 usd: cmd comerr
404         ${COMPILE_PART1} usd ${COMPILE_PART2}
405
406 bubasics: cmd comerr comerr rx
407         ${COMPILE_PART1} bubasics ${COMPILE_PART2}
408
409 butm: cmd comerr bubasics usd uss
410         ${COMPILE_PART1} butm ${COMPILE_PART2}
411
412 butc: cmd comerr bubasics butm budb bucoord cmd rxgen rx
413         ${COMPILE_PART1} butc ${COMPILE_PART2}
414
415 tbutc: cmd comerr bubasics butm budb bucoord cmd butc
416         case ${SYS_NAME} in \
417         alpha_dux*|sgi_*|sun4x_*|sunx86_*|rs_aix4*|*linux*|hp_ux11*|ia64_hpux*) \
418                 ${COMPILE_PART1} tbutc ${COMPILE_PART2} ;; \
419         *) \
420                 echo Not building MT butc for ${SYS_NAME} ;; \
421         esac
422
423 budb: cmd comerr bubasics uss
424         ${COMPILE_PART1} budb ${COMPILE_PART2}
425
426 bucoord: cmd comerr bubasics budb volser
427         ${COMPILE_PART1} bucoord ${COMPILE_PART2}
428
429 xstat: cmd comerr fsint viced
430         ${COMPILE_PART1} xstat ${COMPILE_PART2}
431
432 afsmonitor: cmd comerr gtx xstat
433         ${COMPILE_PART1} afsmonitor ${COMPILE_PART2}
434
435 tests: rxtests ubiktests
436
437 # pthread based user space RX library
438 libafsrpc: rx rxkad des
439         case ${SYS_NAME} in \
440         alpha_dux*|sgi_*|sun4x_*|sunx86_*|rs_aix*|*linux*|hp_ux11*|ia64_hpux*|*fbsd*|*nbsd2*) \
441         ${COMPILE_PART1} libafsrpc ${COMPILE_PART2} ;; \
442         *_darwin_[1-6][0-9]) \
443                 echo Not building MT libafsrpc for ${SYS_NAME} ;; \
444         *_darwin_*) \
445                 ${COMPILE_PART1} libafsrpc  ${COMPILE_PART2} ;; \
446         *) \
447                 echo Not building MT libafsrpc for ${SYS_NAME} ;; \
448         esac
449
450 libafsauthent: ubik auth kauth libafsrpc
451         case ${SYS_NAME} in \
452         alpha_dux*|sgi_*|sun4x_*|sunx86_*|rs_aix*|*linux*|hp_ux11*|ia64_hpux*|*fbsd*|*nbsd2*) \
453         ${COMPILE_PART1} libafsauthent ${COMPILE_PART2} ;; \
454         *_darwin_[1-6][0-9]) \
455                 echo Not building MT libafsauthent for ${SYS_NAME} ;; \
456         *_darwin_*) \
457                 ${COMPILE_PART1} libafsauthent  ${COMPILE_PART2} ;; \
458         *) \
459                 echo Not building MT libafsauthent for ${SYS_NAME} ;; \
460         esac
461
462 # pthread based user space RX library
463 shlibafsrpc: rx rxkad des
464         case ${SYS_NAME} in \
465         amd64_linux24) \
466                 echo Skipping shlibafsrpc for amd64_linux24 ;; \
467         alpha_dux*|sgi_*|sun4x_*|sunx86_*|rs_aix*|*linux*|hp_ux11*|ia64_hpux*) \
468         ${COMPILE_PART1} shlibafsrpc ${COMPILE_PART2} ;; \
469         *) \
470                 echo Not building shared libafsrpc for ${SYS_NAME} ;; \
471         esac
472
473 shlibafsauthent: ubik auth kauth shlibafsrpc
474         case ${SYS_NAME} in \
475         amd64_linux24) \
476                 echo Skipping shlibafsauthent for amd64_linux24 ;; \
477         alpha_dux*|sgi_*|sun4x_*|sunx86_*|rs_aix*|*linux*|hp_ux11*|ia64_hpux*) \
478         ${COMPILE_PART1} shlibafsauthent ${COMPILE_PART2} ;; \
479         *) \
480                 echo Not building shared libafsauthent for ${SYS_NAME} ;; \
481         esac
482
483 libadmin_real: 
484         ${COMPILE_PART1} libadmin ${COMPILE_PART2}
485         ${COMPILE_PART1} libadmin/adminutil ${COMPILE_PART2}
486         ${COMPILE_PART1} libadmin/vos ${COMPILE_PART2}
487         ${COMPILE_PART1} libadmin/client ${COMPILE_PART2}
488         ${COMPILE_PART1} libadmin/kas ${COMPILE_PART2}
489         ${COMPILE_PART1} libadmin/pts ${COMPILE_PART2}
490         ${COMPILE_PART1} libadmin/bos ${COMPILE_PART2}
491         ${COMPILE_PART1} libadmin/cfg ${COMPILE_PART2}
492         ${COMPILE_PART1} libadmin/test ${COMPILE_PART2}
493         ${COMPILE_PART1} libadmin/samples ${COMPILE_PART2}
494
495 libadmin: libafsauthent bozo
496         case ${SYS_NAME} in \
497         alpha_dux*|sgi_*|sun4x_*|sunx86_*|rs_aix*|*linux*|hp_ux11*|ia64_hpux*) \
498                         $(MAKE) libadmin_real ;; \
499         *_darwin_[1-6][0-9]) \
500                 echo Not building MT libadmin for ${SYS_NAME} ;; \
501         *_darwin_*) \
502                         $(MAKE) libadmin_real ;; \
503         *) \
504                 echo Not building MT libadmin for ${SYS_NAME} ;; \
505         esac
506
507 libjafs: libadmin
508         case ${SYS_NAME} in \
509         alpha_dux*|sgi_*|sun4x_*|rs_aix*|*linux*|hp_ux110) \
510         ${COMPILE_PART1} JAVA/libjafs  ${COMPILE_PART2} ;; \
511         *) \
512                 echo Not building MT libjafs for ${SYS_NAME} ;; \
513         esac
514
515 libjafsadm: libjafs
516
517 jafs: libjafs
518
519 jafsadm: libjafsadm
520
521 finale: project cmd comerr afsd allrcmds butc tbutc @ENABLE_KERNEL_MODULE@ libuafs audit kauth log package \
522         ptserver scout bu_utils ubik uss bozo vfsck volser \
523         venus update xstat afsmonitor dauth rxdebug libafsrpc \
524         libafsauthent shlibafsrpc shlibafsauthent libadmin
525         ${COMPILE_PART1} finale ${COMPILE_PART2}
526
527 finale_nolibafs: project cmd comerr afsd allrcmds butc tbutc libuafs audit kauth log package \
528         ptserver scout bu_utils ubik uss bozo vfsck volser \
529         venus update xstat afsmonitor dauth rxdebug libafsrpc \
530         libafsauthent shlibafsrpc shlibafsauthent libadmin
531         ${COMPILE_PART1} finale ${COMPILE_PART2}
532
533 # Use washtool to ensure MakefileProto is current and obj/libafs exists.
534
535 force:
536
537 TARGET=finale
538 build: force
539         $(MAKE) $(TARGET) DEST=$(DEST) COMPILE_PART2B=$(COMPILE_PART2B) DESTDIR=$(DESTDIR)
540
541 kupdate: updatekdir libafs_setup libuafs_setup
542
543 blibafs:
544         $(MAKE) libafs
545
546 blibuafs:
547         $(MAKE) libuafs
548
549 bwebafs: sys
550         $(MAKE) libuafs
551
552 clean:
553         $(MAKE) clean2
554
555 clean2:
556         -${COMPILE_PART1} config ${COMPILE_CLEAN}
557         -${COMPILE_PART1} pinstall ${COMPILE_CLEAN}
558         -${COMPILE_PART1} procmgmt ${COMPILE_CLEAN}
559         -${COMPILE_PART1} util ${COMPILE_CLEAN}
560         -${COMPILE_PART1} audit ${COMPILE_CLEAN}
561         -${COMPILE_PART1} comerr ${COMPILE_CLEAN}
562         -${COMPILE_PART1} cmd ${COMPILE_CLEAN}
563         -${COMPILE_PART1} lwp ${COMPILE_CLEAN}
564         -${COMPILE_PART1} rxgen ${COMPILE_CLEAN}
565         -${COMPILE_PART1} rx ${COMPILE_CLEAN}
566         -${COMPILE_PART1} rxstat ${COMPILE_CLEAN}
567         -${COMPILE_PART1} fsint ${COMPILE_CLEAN}
568         -${COMPILE_PART1} export ${COMPILE_CLEAN}
569         -${COMPILE_PART1} afs ${COMPILE_CLEAN}
570         -${COMPILE_PART1} des ${COMPILE_CLEAN}
571         -${COMPILE_PART1} sys ${COMPILE_CLEAN}
572         -${COMPILE_PART1} rxkad ${COMPILE_CLEAN}
573         -${COMPILE_PART1} auth ${COMPILE_CLEAN}
574         -${COMPILE_PART1} ubik ${COMPILE_CLEAN}
575         -${COMPILE_PART1} ptserver ${COMPILE_CLEAN}
576         -${COMPILE_PART1} kauth ${COMPILE_CLEAN}
577         -${COMPILE_PART1} dauth ${COMPILE_CLEAN}
578         -${COMPILE_PART1} libacl ${COMPILE_CLEAN}
579         -${COMPILE_PART1} dir ${COMPILE_CLEAN}
580         -${COMPILE_PART1} vol ${COMPILE_CLEAN}
581         -${COMPILE_PART1} vlserver ${COMPILE_CLEAN}
582         -${COMPILE_PART1} viced ${COMPILE_CLEAN}
583         -${COMPILE_PART1} viced ${COMPILE_CLEAN}
584         -${COMPILE_PART1} tviced ${COMPILE_CLEAN}
585         -${COMPILE_PART1} volser ${COMPILE_CLEAN}
586         -${COMPILE_PART1} venus ${COMPILE_CLEAN}
587         -${COMPILE_PART1} venus/test ${COMPILE_CLEAN}
588         -${COMPILE_PART1} afsd ${COMPILE_CLEAN}
589         -${COMPILE_PART1} null ${COMPILE_CLEAN}
590         -${COMPILE_PART1} gtx ${COMPILE_CLEAN}
591         -${COMPILE_PART1} fsprobe ${COMPILE_CLEAN}
592         -${COMPILE_PART1} scout ${COMPILE_CLEAN}
593         -${COMPILE_PART1} uss ${COMPILE_CLEAN}
594         -${COMPILE_PART1} bozo ${COMPILE_CLEAN}
595         -${COMPILE_PART1} vfsck ${COMPILE_CLEAN}
596         -${COMPILE_PART1} sgistuff ${COMPILE_CLEAN}
597         -${COMPILE_PART1} tsm41 ${COMPILE_CLEAN}
598         -${COMPILE_PART1} sia ${COMPILE_CLEAN}
599         -${COMPILE_PART1} login ${COMPILE_CLEAN}
600         -${COMPILE_PART1} pam ${COMPILE_CLEAN}
601         -${COMPILE_PART1} afsweb ${COMPILE_CLEAN}
602         -${COMPILE_PART1} update ${COMPILE_CLEAN}
603         -${COMPILE_PART1} log ${COMPILE_CLEAN}
604         -${COMPILE_PART1} bu_utils ${COMPILE_CLEAN}
605         -${COMPILE_PART1} usd ${COMPILE_CLEAN}
606         -${COMPILE_PART1} bubasics ${COMPILE_CLEAN}
607         -${COMPILE_PART1} butm ${COMPILE_CLEAN}
608         -${COMPILE_PART1} butc ${COMPILE_CLEAN}
609         -${COMPILE_PART1} tbutc ${COMPILE_CLEAN}
610         -${COMPILE_PART1} budb ${COMPILE_CLEAN}
611         -${COMPILE_PART1} bucoord ${COMPILE_CLEAN}
612         -${COMPILE_PART1} xstat ${COMPILE_CLEAN}
613         -${COMPILE_PART1} afsmonitor ${COMPILE_CLEAN}
614         -${COMPILE_PART1} tests ${COMPILE_CLEAN}
615         -${COMPILE_PART1} rxdebug ${COMPILE_CLEAN}
616         -${COMPILE_PART1} libafsrpc ${COMPILE_CLEAN}
617         -${COMPILE_PART1} libafsauthent ${COMPILE_CLEAN}
618         -${COMPILE_PART1} shlibafsrpc ${COMPILE_CLEAN}
619         -${COMPILE_PART1} shlibafsauthent ${COMPILE_CLEAN}
620         -${COMPILE_PART1} libadmin ${COMPILE_CLEAN}
621         -${COMPILE_PART1} libadmin/adminutil ${COMPILE_CLEAN}
622         -${COMPILE_PART1} libadmin/client ${COMPILE_CLEAN}
623         -${COMPILE_PART1} libadmin/vos ${COMPILE_CLEAN}
624         -${COMPILE_PART1} libadmin/kas ${COMPILE_CLEAN}
625         -${COMPILE_PART1} libadmin/pts ${COMPILE_CLEAN}
626         -${COMPILE_PART1} libadmin/bos ${COMPILE_CLEAN}
627         -${COMPILE_PART1} libadmin/cfg ${COMPILE_CLEAN}
628         -${COMPILE_PART1} libadmin/test ${COMPILE_CLEAN}
629         -${COMPILE_PART1} libadmin/samples ${COMPILE_CLEAN}
630         -${COMPILE_PART1} JAVA/libjafs ${COMPILE_CLEAN}
631         -${COMPILE_PART1} finale ${COMPILE_CLEAN}
632         -${COMPILE_PART1} mpp ${COMPILE_CLEAN}
633         -${COMPILE_PART1} package ${COMPILE_CLEAN}
634         -${COMPILE_PART1} ntp ${COMPILE_CLEAN}
635         -${COMPILE_PART1} ftpd43+ ${COMPILE_CLEAN}
636         -${COMPILE_PART1} inetd ${COMPILE_CLEAN}
637         -${COMPILE_PART1} rsh ${COMPILE_CLEAN}
638         -${COMPILE_PART1} rlogind ${COMPILE_CLEAN}
639         -${COMPILE_PART1} rcp ${COMPILE_CLEAN}
640         -${COMPILE_PART1} libafs ${COMPILE_CLEAN}
641         -${COMPILE_PART1} libuafs ${COMPILE_CLEAN}
642         -(cd src/libafs; /bin/rm -rf afs afsint config rx)
643         -(cd src/libuafs; /bin/rm -rf afs afsint config rx des)
644         -/bin/rm -rf ${TOP_INCDIR} ${TOP_LIBDIR} ${TOP_JLIBDIR}
645         -/bin/rm -rf libafs_tree ${SYS_NAME}
646
647  
648 distclean: clean
649         /bin/rm -f config.log config.cache config.status \
650         src/config/afsconfig.h \
651         Makefile \
652         src/afs/Makefile \
653         src/afsd/Makefile \
654         src/afsd/afs.ppc_darwin.plist \
655         src/afsmonitor/Makefile \
656         src/afsweb/Makefile \
657         src/audit/Makefile \
658         src/auth/test/Makefile \
659         src/auth/Makefile \
660         src/bozo/test/Makefile \
661         src/bozo/Makefile \
662         src/bu_utils/Makefile \
663         src/bubasics/Makefile \
664         src/bucoord/Makefile \
665         src/budb/Makefile \
666         src/butc/Makefile \
667         src/butm/Makefile \
668         src/cmd/test/Makefile \
669         src/cmd/Makefile \
670         src/comerr/test/Makefile \
671         src/comerr/Makefile \
672         src/config/Makefile \
673         src/config/Makefile.version \
674         src/config/Makefile.version-NOCML \
675         src/config/Makefile.config \
676         src/dauth/Makefile \
677         src/des/test/Makefile \
678         src/des/Makefile \
679         src/des_stub/Makefile \
680         src/dir/test/Makefile \
681         src/dir/Makefile \
682         src/export/Makefile \
683         src/finale/Makefile \
684         src/fsint/Makefile \
685         src/fsprobe/Makefile \
686         src/ftpd43+/Makefile \
687         src/gtx/Makefile \
688         src/inetd/Makefile \
689         src/kauth/test/Makefile \
690         src/kauth/Makefile \
691         src/libacl/test/Makefile \
692         src/libacl/Makefile \
693         src/libadmin/adminutil/Makefile \
694         src/libadmin/Makefile \
695         src/libadmin/bos/Makefile \
696         src/libadmin/cfg/test/Makefile \
697         src/libadmin/cfg/Makefile \
698         src/libadmin/client/Makefile \
699         src/libadmin/kas/Makefile \
700         src/libadmin/pts/Makefile \
701         src/libadmin/samples/Makefile \
702         src/libadmin/test/Makefile \
703         src/libadmin/vos/Makefile \
704         src/JAVA/libjafs/Makefile \
705         src/libafs/Makefile \
706         src/libafs/Makefile.common \
707         src/libafs/MakefileProto.${MKAFS_OSTYPE} \
708         src/libafsauthent/Makefile \
709         src/libafsrpc/Makefile \
710         src/libuafs/Makefile \
711         src/libuafs/Makefile.common \
712         src/libuafs/MakefileProto.${MKAFS_OSTYPE} \
713         src/log/test/Makefile \
714         src/log/Makefile \
715         src/login/Makefile \
716         src/lwp/test/Makefile \
717         src/lwp/Makefile \
718         src/mpp/Makefile \
719         src/ntp/Makefile \
720         src/null/Makefile \
721         src/package/Makefile \
722         src/pam/Makefile \
723         src/pinstall/test/Makefile \
724         src/pinstall/Makefile \
725         src/procmgmt/Makefile \
726         src/procmgmt/test/Makefile \
727         src/ptserver/Makefile \
728         src/rcp/Makefile \
729         src/rlogind/Makefile \
730         src/rsh/Makefile \
731         src/rx/Makefile \
732         src/rx/bulk.example/Makefile \
733         src/rx/bulktest/Makefile \
734         src/rx/multi.example/Makefile \
735         src/rx/simple.example/Makefile \
736         src/rx/test/Makefile \
737         src/rxdebug/Makefile \
738         src/rxgen/Makefile \
739         src/rxkad/Makefile \
740         src/rxkad/test/Makefile \
741         src/rxstat/Makefile \
742         src/scout/Makefile \
743         src/sgistuff/Makefile \
744         src/shlibafsauthent/Makefile \
745         src/shlibafsrpc/Makefile \
746         src/sia/Makefile \
747         src/sys/Makefile \
748         src/tbutc/Makefile \
749         src/tests/Makefile \
750         src/tests/run-tests \
751         src/tests/OpenAFS/Dirpath.pm \
752         src/tsm41/Makefile \
753         src/tviced/Makefile \
754         src/ubik/Makefile \
755         src/update/Makefile \
756         src/usd/test/Makefile \
757         src/usd/Makefile \
758         src/uss/Makefile \
759         src/util/Makefile \
760         src/util/test/Makefile \
761         src/venus/test/Makefile \
762         src/venus/Makefile \
763         src/vfsck/Makefile \
764         src/viced/Makefile \
765         src/vlserver/Makefile \
766         src/vol/Makefile \
767         src/vol/test/Makefile \
768         src/volser/Makefile \
769         src/wsadmin.src/Makefile \
770         src/xstat/Makefile 
771
772 pristine: distclean
773         /bin/rm -f src/config/afsconfig.h.in configure configure-libafs aclocal.m4
774
775 maintainer-clean: pristine
776
777 #
778 # Below targets are all deprecated, insecure, or obsolte, 
779 # see README.OBSOLETE and README.INSECURE for more info
780 #
781
782 mpp: project
783         @case ${WITH_OBSOLETE} in \
784         YES)    ${COMPILE_PART1} mpp ${COMPILE_PART2} ;; \
785         *)      echo skipping deprecated target: mpp ;; \
786         esac
787
788 package: project mpp
789         @case ${WITH_OBSOLETE} in \
790         YES)    ${COMPILE_PART1} package ${COMPILE_PART2} ;; \
791         *)      echo skipping deprecated target: package ;; \
792         esac
793
794 package.files: package
795         @case ${WITH_OBSOLETE} in \
796         YES)    ${DESTDIR}/bin/makepkgfiles afs.dev ;; \
797         *)      echo skipping deprecated target: package.files ;; \
798         esac
799
800 ntp: project volser
801         @case ${WITH_OBSOLETE} in \
802         YES)    case ${SYS_NAME} in \
803                 sun4x_58 | sunx86_* | *linux* | *fbsd* | *_darwin* | *nbsd*) echo skipping ntp for ${SYS_NAME} ;; \
804                 * ) ${COMPILE_PART1} ntp ${COMPILE_PART2} ;; \
805                 esac ;; \
806         *)      echo skipping deprecated target: ntp ;; \
807         esac
808
809 ftpd43+: project kauth rxkad
810         @case ${WITH_INSECURE} in \
811         YES)    case ${SYS_NAME} in \
812                 rs_aix* | sun4x_55 | *linux*) \
813                         ${COMPILE_PART1} ftpd43+ ${COMPILE_PART2} ;; \
814                 *) echo skip ftpd43+ for ${SYS_NAME} ;; \
815                 esac ;; \
816         *)      echo skipping deprecated target: ftpd43+ ;; \
817         esac
818
819 inetd: project kauth rxkad
820         @case ${WITH_INSECURE} in \
821         YES)    ${COMPILE_PART1} inetd ${COMPILE_PART2} ;; \
822         *)      echo skipping deprecated target: inetd ;; \
823         esac
824
825 rsh: project inetd
826         @case ${WITH_INSECURE} in \
827         YES)    ${COMPILE_PART1} rsh ${COMPILE_PART2} ;; \
828         *)      echo skipping deprecated target: rsh ;; \
829         esac
830
831 rlogind: project rsh ftpd43+ login
832         @case ${WITH_INSECURE} in \
833         YES)    case ${SYS_NAME} in \
834                 rs_aix*) ${COMPILE_PART1} rlogind ${COMPILE_PART2} ;; \
835                 *) echo skipping rlogind for ${SYS_NAME} ;; \
836                 esac ;; \
837         *)      echo skipping deprecated target: rlogind ;; \
838         esac
839
840 rcp: project rsh inetd
841         @case ${WITH_INSECURE} in \
842         YES)    case ${SYS_NAME} in \
843                 sgi_* ) echo skip rcp for ${SYS_NAME} ;; \
844                 *)      ${COMPILE_PART1} rcp ${COMPILE_PART2} ;; \
845                 esac ;; \
846         *)      echo skipping deprecated target: rcp ;; \
847         esac
848
849 allrcmds: project rcp rlogind
850
851
852
853