18df6d2bfae06ff47b9fada4636268f89460095f
[openafs.git] / src / tests / Makefile.in
1 srcdir          = @srcdir@
2 include @TOP_OBJDIR@/src/config/Makefile.config
3 include @TOP_OBJDIR@/src/config/Makefile.lwp
4
5 INSTALL = @INSTALL@
6 INSTALL_DATA = @INSTALL_DATA@
7 INSTALL_PROGRAM = @INSTALL_PROGRAM@
8 INSTALL_SCRIPT = @INSTALL_SCRIPT@
9
10 SHELL           = /bin/sh
11
12 INCDIRS=-I${TOP_OBJDIR}/src/config -I${TOP_INCDIR}/afs -I${TOP_INCDIR}
13 INCLIBS=-L${SRCDIR}/lib/afs -L${TOP_LIBDIR}
14
15 LIBS=\
16         libdumpscan.a \
17         libxfiles.a \
18         ${TOP_LIBDIR}/libauth.a \
19         ${TOP_LIBDIR}/libaudit.a \
20         ${TOP_LIBDIR}/libvolser.a \
21         ${TOP_LIBDIR}/libvldb.a \
22         ${TOP_LIBDIR}/libubik.a \
23         ${TOP_LIBDIR}/librxkad.a \
24         ${TOP_LIBDIR}/libsys.a \
25         ${TOP_LIBDIR}/librx.a \
26         ${TOP_LIBDIR}/liblwp.a \
27         ${TOP_LIBDIR}/util.a \
28         ${TOP_LIBDIR}/libafscom_err.a \
29         ${XLIBS}
30
31 OBJS_afsdump_scan    = afsdump_scan.o repair.o
32 OBJS_afsdump_xsed    = afsdump_xsed.o repair.o
33 OBJS_libxfiles.a     = xfiles.o xf_errs.o xf_printf.o int64.o \
34                        xf_files.o xf_rxcall.o xf_profile.o
35 OBJS_libdumpscan.a   = primitive.o util.o dumpscan_errs.o parsetag.o \
36                        parsedump.o parsevol.o parsevnode.o dump.o \
37                        directory.o pathname.o backuphdr.o stagehdr.o
38
39 TARGETS = libxfiles.a libdumpscan.a \
40           afsdump_scan afsdump_dirlist afsdump_extract dumptool
41
42 all: run-tests OpenAFS/Dirpath.pm libxfiles.a libdumpscan.a $(TEST_PROGRAMS)\
43         afsdump_scan afsdump_dirlist afsdump_extract dumptool OpenAFS/Dirpath.sh
44         @chmod +x run-tests
45
46 generated: xf_errs.c xf_errs.h dumpscan_errs.c dumpscan_errs.h
47
48 afsdump_scan: libxfiles.a libdumpscan.a $(OBJS_afsdump_scan)
49         $(AFS_LDRULE) $(OBJS_afsdump_scan) $(LIBS)
50
51
52 afsdump_xsed: libxfiles.a libdumpscan.a $(OBJS_afsdump_xsed)
53         $(AFS_LDRULE) $(OBJS_afsdump_xsed) $(LIBS)
54
55 afsdump_dirlist: libxfiles.a libdumpscan.a afsdump_dirlist.o
56         $(AFS_LDRULE) afsdump_dirlist.o $(LIBS)
57
58 afsdump_extract: libxfiles.a libdumpscan.a afsdump_extract.o
59         $(AFS_LDRULE) afsdump_extract.o $(LIBS)
60
61 null-search: libxfiles.a libdumpscan.a null-search.c
62         $(AFS_LDRULE) null-search.c $(LIBS)
63
64 dumptool: dumptool.c
65         $(AFS_LDRULE) dumptool dumptool.c
66
67 libxfiles.a: $(OBJS_libxfiles.a)
68         -rm -f libxfiles.a
69         $(AR) r libxfiles.a $(OBJS_libxfiles.a)
70         $(RANLIB) libxfiles.a
71
72 libdumpscan.a: $(OBJS_libdumpscan.a)
73         -rm -f libdumpscan.a
74         $(AR) r libdumpscan.a $(OBJS_libdumpscan.a)
75         $(RANLIB) libdumpscan.a
76
77 xf_errs.c xf_errs.h: xf_errs.et
78         $(COMPILE_ET) xf_errs.et
79
80 dumpscan_errs.c dumpscan_errs.h: dumpscan_errs.et
81         $(COMPILE_ET) dumpscan_errs.et
82
83 util.o xfiles.o xf_files.o: xf_errs.h
84 backuphdr.o directory.o parsedump.o parsetag.o: dumpscan_errs.h
85 parsevnode.o parsevol.o pathname.o stagehdr.o:  dumpscan_errs.h
86 util.o:                                         dumpscan_errs.h
87
88 # repair addresses the same storage as two different types of structs at the
89 # same time.
90 CFLAGS_repair.o = @CFLAGS_NOSTRICT@
91 repair.o: repair.c dumpscan_errs.h
92
93 ${TOP_LIBDIR}/libxfiles.a: libxfiles.a
94         ${INSTALL_DATA} $? $@
95
96 ${TOP_LIBDIR}/libdumpscan.a: libdumpscan.a
97         ${INSTALL_DATA} $? $@
98
99 SYS_LIBS        = ${TOP_LIBDIR}/libsys.a ${TOP_LIBDIR}/librx.a ${TOP_LIBDIR}/liblwp.a ${TOP_LIBDIR}/util.a
100
101 AUTH_LIBS       = ${TOP_LIBDIR}/libauth.a ${SYS_LIBS}
102
103 INT_LIBS        = ${TOP_LIBDIR}/libafsint.a ${TOP_LIBDIR}/libsys.a ${TOP_LIBDIR}/librxkad.a ${TOP_LIBDIR}/librx.a ${TOP_LIBDIR}/liblwp.a ${TOP_LIBDIR}/libafscom_err.a ${TOP_LIBDIR}/util.a
104
105 TEST_PROGRAMS = write-ro-file hello-world read-vs-mmap read-vs-mmap2     \
106                 mmap-and-read large-dir large-dir2 large-dir3 mountpoint \
107                 test-setgroups test-setpag hardlink1 hardlink2 mkdir2    \
108                 create-files create-symlinks create-dirs dup2-and-unlog  \
109                 readdir-vs-lstat read-write create-remove mkdir3         \
110                 symlink echo-n test-parallel1 test-parallel2 create-stat \
111                 kill-softly kill-softer rm-rf exit-wo-close              \
112                 mmap-vs-read mmap-vs-read2 strange-characters-c pine     \
113                 append-over-page write-ucc utime-dir mmap-shared-write   \
114                 rename5 rename-under-feet write-closed write-closed2     \
115                 truncate fchmod make-page utime-file rename6             \
116                 write3 still-there-p write-large afscp hardlink4         \
117                 intr-read asu truncate-files mmap-cat blocks-new-file    \
118                 fsx write-rand
119
120 TEST_OBJS     = write-ro-file.o read-vs-mmap.o read-vs-mmap2.o             \
121                 mmap-and-read.o large-dir.o large-dir2.o large-dir3.o      \
122                 test-setgroups.o test-setpag.o hardlink1.o hardlink2.o     \
123                 mkdir2.o create-files.o create-symlinks.o create-dirs.o    \
124                 dup2-and-unlog.o readdir-vs-lstat.o read-write.o           \
125                 create-remove.o symlink.o echo-n.o test-parallel1.o        \
126                 test-parallel1.o mkdir3.o rename6.o                        \
127                 create-stat.o kill-softly.o kill-softer.o rm-rf.o          \
128                 exit-wo-close.o mmap-vs-read.o mmap-vs-read2.o             \
129                 strange-characters-c.o pine.o append-over-page.o           \
130                 write-ucc.o utime-dir.o mmap-shared-write.o rename5.o      \
131                 rename-under-feet.o write-closed.o write-closed2.o         \
132                 truncate.o fchmod.o make-page.o utime-file.o               \
133                 write3.o still-there-p.o write-large.o hardlink4.o         \
134                 intr-read.o asu.o truncate-files.o mmap-cat.o              \
135                 blocks-new-file.o fsx.o afscp.o afscp_callback.o           \
136                 write-rand.o
137
138 TEST_SRCS     = write-ro-file.c read-vs-mmap.c read-vs-mmap2.c             \
139                 mmap-and-read.c large-dir.c large-dir2.c large-dir3.c      \
140                 test-setgroups.c test-setpag.c hardlink1.c hardlink2.c     \
141                 mkdir2.c create-files.c create-symlinks.c create-dirs.c    \
142                 dup2-and-unlog.c readdir-vs-lstat.c read-write.c           \
143                 create-remove.c symlink.c echo-n.c test-parallel1.c        \
144                 test-parallel2.c mkdir3.c rename6.c                        \
145                 create-stat.c kill-softly.c kill-softer.c rm-rf.c          \
146                 exit-wo-close.c mmap-vs-read.c mmap-vs-read2.c             \
147                 strange-characters-c.c pine.c append-over-page.c           \
148                 write-ucc.c utime-dir.c mmap-shared-write.c rename5.c      \
149                 rename-under-feet.c write-closed.c write-closed2.c         \
150                 truncate.c fchmod.c make-page.c utime-file.c               \
151                 write3.c still-there-p.c write-large.c hardlink4.c         \
152                 intr-read.c asu.c truncate-files.c mmap-cat.c              \
153                 blocks-new-file.c fsx.c afscp.c afscp_callback.c           \
154                 write-rand.c
155
156 EXTRA_OBJS = err.o errx.o warn.o warnx.o vwarn.o vwarnx.o verr.o verrx.o warnerr.o snprintf.o 
157
158 fsx: fsx.o $(EXTRA_OBJS)
159         $(AFS_LDRULE) fsx.o $(EXTRA_OBJS) $(LIBS)
160
161 write-rand: write-rand.o $(EXTRA_OBJS)
162         $(AFS_LDRULE) write-rand.o $(EXTRA_OBJS) $(LIBS)
163
164 write-ro-file: write-ro-file.o $(EXTRA_OBJS)
165         $(AFS_LDRULE) write-ro-file.o $(EXTRA_OBJS) $(LIBS)
166
167 write-large: write-large.o $(EXTRA_OBJS)
168         $(AFS_LDRULE) write-large.o $(EXTRA_OBJS) $(LIBS)
169
170 read-vs-mmap: read-vs-mmap.o $(EXTRA_OBJS)
171         $(AFS_LDRULE) read-vs-mmap.o $(EXTRA_OBJS) $(LIBS)
172
173 read-vs-mmap2: read-vs-mmap2.o $(EXTRA_OBJS)
174         $(AFS_LDRULE) read-vs-mmap2.o $(EXTRA_OBJS) $(LIBS)
175
176 mmap-vs-read: mmap-vs-read.o $(EXTRA_OBJS)
177         $(AFS_LDRULE) mmap-vs-read.o $(EXTRA_OBJS) $(LIBS)
178
179 mmap-vs-read2: mmap-vs-read2.o $(EXTRA_OBJS)
180         $(AFS_LDRULE) mmap-vs-read2.o $(EXTRA_OBJS) $(LIBS)
181
182 read-write: read-write.o $(EXTRA_OBJS)
183         $(AFS_LDRULE) read-write.o $(EXTRA_OBJS) $(LIBS)
184
185 mmap-and-read: mmap-and-read.o $(EXTRA_OBJS)
186         $(AFS_LDRULE) mmap-and-read.o $(EXTRA_OBJS) $(LIBS)
187
188 large-dir: large-dir.o $(EXTRA_OBJS)
189         $(AFS_LDRULE) large-dir.o $(EXTRA_OBJS) $(LIBS)
190
191 large-dir2: large-dir2.o $(EXTRA_OBJS)
192         $(AFS_LDRULE) large-dir2.o $(EXTRA_OBJS) $(LIBS)
193
194 large-dir3: large-dir3.o $(EXTRA_OBJS)
195         $(AFS_LDRULE) large-dir3.o $(EXTRA_OBJS) $(LIBS)
196
197 fchmod: fchmod.o $(EXTRA_OBJS)
198         $(AFS_LDRULE) fchmod.o $(EXTRA_OBJS) $(LIBS)
199
200 truncate: truncate.o $(EXTRA_OBJS)
201         $(AFS_LDRULE) truncate.o $(EXTRA_OBJS) $(LIBS)
202
203 make-page: make-page.o $(EXTRA_OBJS)
204         $(AFS_LDRULE) make-page.o $(EXTRA_OBJS) $(LIBS)
205
206 still-there-p: still-there-p.o $(EXTRA_OBJS)
207         $(AFS_LDRULE) still-there-p.o $(EXTRA_OBJS) $(LIBS)
208
209 intr-read: intr-read.o $(EXTRA_OBJS)
210         $(AFS_LDRULE) intr-read.o $(EXTRA_OBJS) $(LIBS)
211
212 blocks-new-file: blocks-new-file.o $(EXTRA_OBJS)
213         $(AFS_LDRULE) blocks-new-file.o $(EXTRA_OBJS) $(LIBS)
214
215 asu: asu.o $(EXTRA_OBJS)
216         $(AFS_LDRULE) asu.o $(EXTRA_OBJS) $(LIBS)
217
218 test-setgroups: test-setgroups.o $(EXTRA_OBJS)
219         $(AFS_LDRULE) test-setgroups.o $(EXTRA_OBJS) $(SYS_LIBS) $(LIBS)
220
221 test-setpag: test-setpag.o $(EXTRA_OBJS)
222         $(AFS_LDRULE) test-setpag.o $(EXTRA_OBJS) $(SYS_LIBS) $(LIBS)
223
224 hardlink1: hardlink1.o $(EXTRA_OBJS)
225         $(AFS_LDRULE) hardlink1.o $(EXTRA_OBJS) $(LIBS)
226
227 hardlink2: hardlink2.o $(EXTRA_OBJS)
228         $(AFS_LDRULE) hardlink2.o $(EXTRA_OBJS) $(LIBS)
229
230 hardlink4: hardlink4.o $(EXTRA_OBJS)
231         $(AFS_LDRULE) hardlink4.o $(EXTRA_OBJS) $(LIBS)
232
233 mkdir2: mkdir2.o $(EXTRA_OBJS)
234         $(AFS_LDRULE) mkdir2.o $(EXTRA_OBJS) $(LIBS)
235
236 mkdir3: mkdir3.o $(EXTRA_OBJS)
237         $(AFS_LDRULE) mkdir3.o $(EXTRA_OBJS) $(LIBS)
238
239 create-files: create-files.o $(EXTRA_OBJS)
240         $(AFS_LDRULE) create-files.o $(EXTRA_OBJS) $(LIBS)
241
242 create-symlinks: create-symlinks.o $(EXTRA_OBJS)
243         $(AFS_LDRULE) create-symlinks.o $(EXTRA_OBJS) $(LIBS)
244
245 create-dirs: create-dirs.o $(EXTRA_OBJS)
246         $(AFS_LDRULE) create-dirs.o $(EXTRA_OBJS) $(LIBS)
247
248 create-remove: create-remove.o $(EXTRA_OBJS)
249         $(AFS_LDRULE) create-remove.o $(EXTRA_OBJS) $(LIBS)
250
251 dup2-and-unlog: dup2-and-unlog.o $(EXTRA_OBJS)
252         $(AFS_LDRULE) dup2-and-unlog.o  $(EXTRA_OBJS) $(AUTH_LIBS) $(LIBS)
253
254 readdir-vs-lstat: readdir-vs-lstat.o $(EXTRA_OBJS)
255         $(AFS_LDRULE) readdir-vs-lstat.o $(EXTRA_OBJS) $(LIBS)
256
257 symlink: symlink.o $(EXTRA_OBJS)
258         $(AFS_LDRULE) symlink.o $(EXTRA_OBJS) $(LIBS)
259
260 echo-n: echo-n.o $(EXTRA_OBJS)
261         $(AFS_LDRULE) echo-n.o $(EXTRA_OBJS)
262
263 test-parallel1: test-parallel1.o $(EXTRA_OBJS)
264         $(AFS_LDRULE) test-parallel1.o $(EXTRA_OBJS) $(LIBS)
265
266 test-parallel2: test-parallel2.o $(EXTRA_OBJS)
267         $(AFS_LDRULE) test-parallel2.o $(EXTRA_OBJS) $(LIBS)
268
269 create-stat: create-stat.o fs_lib.o $(EXTRA_OBJS)
270         $(AFS_LDRULE) create-stat.o fs_lib.o $(EXTRA_OBJS) $(SYS_LIBS) $(LIBS)
271
272 kill-softly: kill-softly.o $(EXTRA_OBJS)
273         $(AFS_LDRULE) kill-softly.o $(EXTRA_OBJS) $(LIBS)
274
275 kill-softer: kill-softer.o $(EXTRA_OBJS)
276         $(AFS_LDRULE) kill-softer.o $(EXTRA_OBJS) $(LIBS)
277
278 rm-rf: rm-rf.o fs_lib.o $(EXTRA_OBJS)
279         $(AFS_LDRULE) rm-rf.o fs_lib.o $(EXTRA_OBJS) $(SYS_LIBS) $(LIBS)
280
281 exit-wo-close: exit-wo-close.o $(EXTRA_OBJS)
282         $(AFS_LDRULE) exit-wo-close.o $(EXTRA_OBJS) $(LIBS)
283
284 strange-characters-c: strange-characters-c.o $(EXTRA_OBJS)
285         $(AFS_LDRULE) strange-characters-c.o $(EXTRA_OBJS) $(LIBS)
286
287 pine: pine.o $(EXTRA_OBJS)
288         $(AFS_LDRULE) pine.o $(EXTRA_OBJS) $(LIBS)
289
290 append-over-page: append-over-page.o $(EXTRA_OBJS)
291         $(AFS_LDRULE) append-over-page.o $(EXTRA_OBJS) $(LIBS)
292
293 write-ucc: write-ucc.o $(EXTRA_OBJS)
294         $(AFS_LDRULE) write-ucc.o $(EXTRA_OBJS) $(LIBS)
295
296 utime-dir: utime-dir.o $(EXTRA_OBJS)
297         $(AFS_LDRULE) utime-dir.o $(EXTRA_OBJS) $(LIBS)
298
299 utime-file: utime-file.o $(EXTRA_OBJS)
300         $(AFS_LDRULE) utime-file.o $(EXTRA_OBJS) $(LIBS)
301
302 mmap-shared-write: mmap-shared-write.o $(EXTRA_OBJS)
303         $(AFS_LDRULE) mmap-shared-write.o $(EXTRA_OBJS) $(LIBS)
304
305 rename5: rename5.o $(EXTRA_OBJS)
306         $(AFS_LDRULE) rename5.o $(EXTRA_OBJS) $(LIBS)
307
308 rename6: rename6.o $(EXTRA_OBJS)
309         $(AFS_LDRULE) rename6.o $(EXTRA_OBJS) $(LIBS)
310
311 write3: write3.o $(EXTRA_OBJS)
312         $(AFS_LDRULE) write3.o $(EXTRA_OBJS) $(LIBS)
313
314 rename-under-feet: rename-under-feet.o $(EXTRA_OBJS)
315         $(AFS_LDRULE) rename-under-feet.o $(EXTRA_OBJS) $(LIBS)
316
317 write-closed: write-closed.o $(EXTRA_OBJS)
318         $(AFS_LDRULE) write-closed.o $(EXTRA_OBJS) $(LIBS)
319
320 write-closed2: write-closed2.o $(EXTRA_OBJS)
321         $(AFS_LDRULE) write-closed2.o $(EXTRA_OBJS) $(SYS_LIBS) $(LIBS)
322
323 truncate-files: truncate-files.o $(EXTRA_OBJS)
324         $(AFS_LDRULE) truncate-files.o $(EXTRA_OBJS) $(LIBS)
325
326 mmap-cat: mmap-cat.o $(EXTRA_OBJS)
327         $(AFS_LDRULE) mmap-cat.o $(EXTRA_OBJS) $(LIBS)
328
329 run-tests: run-tests.in
330         (cd ../..; CONFIG_FILES=src/tests/run-tests CONFIG_HEADERS= $(SHELL) @TOP_OBJDIR@/config.status)
331         @chmod +x run-tests
332
333 afscp: afscp.o afscp_callback.o $(EXTRA_OBJS)
334         $(AFS_LDRULE) afscp.o afscp_callback.o $(EXTRA_OBJS) $(INT_LIBS) ${XLIBS}
335
336 hello-world:   hello-world.in
337         sed -e "s!%CC%!$(CC)!" $(srcdir)/hello-world.in > $@
338         chmod +x hello-world
339
340 mountpoint:   mountpoint.in
341         sed -e "s!%bindir%!$(bindir)!" $(srcdir)/mountpoint.in > $@
342         chmod +x mountpoint
343
344 dest:
345
346 install:
347
348 uninstall:
349
350 clean:
351         -rm -f xf_errs.c xf_errs.h dumpscan_errs.c dumpscan_errs.h *.o \
352         $(TARGETS) run-tests $(TEST_PROGRAMS) OpenAFS/Dirpath.pm OpenAFS/Dirpath.sh
353
354 include ../config/Makefile.version
355
356 TAGS:   $(TEST_SRCS)
357         etags $(TEST_SRCS)
358
359 check: run-tests $(TEST_PROGRAMS)
360         ./run-tests -all
361
362 check-fast: run-tests $(TEST_PROGRAMS)
363         ./run-tests -all -fast
364
365 # Note: The autoconf variables are not fully expanded
366 #       until make is run so we resort to creating the
367 #       configuration at make time.
368 OpenAFS/Dirpath.pm: Makefile
369         @echo "Creating OpenAFS/Dirpath.pm"
370         @echo "# This is -*- perl -*-"                          >$@
371         @echo "# auto-generated by src/tests/Makefile"          >>$@
372         @echo "# DO NOT EDIT"                                   >>$@
373         @echo "package OpenAFS::Dirpath;"                       >>$@
374         @echo "use strict;"                                     >>$@
375         @echo "use vars qw( @ISA @EXPORT \$$openafsdirpath);"   >>$@
376         @echo "@ISA = qw(Exporter);"                            >>$@
377         @echo "require Exporter;"                               >>$@
378         @echo "@EXPORT = qw(\$$openafsdirpath);"                >>$@
379         @echo ""                                                >>$@
380         @echo "\$$openafsdirpath = {"                           >>$@
381         @echo "  'afsconfdir'       => '@afsconfdir@',"         >>$@
382         @echo "  'viceetcdir'       => '@viceetcdir@',"         >>$@
383         @echo "  'afssrvbindir'     => '@afssrvbindir@',"       >>$@
384         @echo "  'afssrvsbindir'    => '@afssrvsbindir@',"      >>$@
385         @echo "  'afssrvlibexecdir' => '@afssrvlibexecdir@',"   >>$@
386         @echo "  'afsdbdir'         => '@afsdbdir@',"           >>$@
387         @echo "  'afslogsdir'       => '@afslogsdir@',"         >>$@
388         @echo "  'afslocaldir'      => '@afslocaldir@',"        >>$@
389         @echo "  'afsbackupdir'     => '@afsbackupdir@',"       >>$@
390         @echo "  'afsbosconfigdir'  => '@afsbosconfigdir@',"    >>$@
391         @echo "  'ostype'           => '@MKAFS_OSTYPE@',"       >>$@
392         @if test "@afsconfdir@" = "/usr/afs/etc" ; then \
393                 echo "  # transarc paths" ;\
394                 echo "  'cachedir'     => '/usr/vice/cache'," ;\
395                 echo "  'afsddir'      => '/usr/vice/etc'," ;\
396                 echo "  'initdir'      => '/usr/vice/etc',"  ;\
397                 echo "  'afskerneldir' => '/usr/vice/etc/modload'," ;\
398                 echo "  'afswsbindir'  => '/usr/afsws/bin'," ;\
399         else \
400                 echo "  # modern paths" ;\
401                 echo "  'cachedir'     => '@localstatedir@/openafs/cache'," ;\
402                 echo "  'afsddir'      => '@afssrvsbindir@'," ;\
403                 echo "  'initdir'      => '@sysconfdir@',"  ;\
404                 echo "  'afskerneldir' => '@afskerneldir@'," ;\
405                 echo "  'afswsbindir'  => '@afssrvbindir@'," ;\
406         fi >>$@
407         @echo "};"                                              >>$@
408         @echo ""                                                >>$@
409         @echo "1;"                                              >>$@
410
411 OpenAFS/Dirpath.sh: Makefile
412         @echo "Creating OpenAFS/Dirpath.sh"                                     
413         @echo "# auto-generated by src/tests/Makefile"            >$@
414         @echo "# source or '.' in this file in shell"              >>$@
415         @echo "# DO NOT EDIT"                                                      >>$@
416         @echo "  AFSCONFDIR=@afsconfdir@"         >>$@
417         @echo "  VICEETCDIR=@viceetcdir@"         >>$@
418         @echo "  AFSSRVBINDIR=@afssrvbindir@"       >>$@
419         @echo "  AFSSRVSBINDIR=@afssrvsbindir@"      >>$@
420         @echo "  AFSSRVLIBEXECDIR=@afssrvlibexecdir@"   >>$@
421         @echo "  AFSDBDIR=@afsdbdir@"           >>$@
422         @echo "  AFSLOGSDIR=@afslogsdir@"         >>$@
423         @echo "  AFSLOCALDIR=@afslocaldir@"        >>$@
424         @echo "  AFSBACKUPDIR=@afsbackupdir@"       >>$@
425         @echo "  AFSBOSCONFIGDIR=@afsbosconfigdir@"    >>$@
426         @echo "  OSTYPE=@MKAFS_OSTYPE@"       >>$@
427         @if test "@afsconfdir@" = "/usr/afs/etc" ;  then \
428                 echo "# transarc paths" ;\
429                 echo "  CACHEDIR=/usr/vice/cache" ;\
430                 echo "  AFSDDIR=/usr/vice/etc" ;\
431                 echo "  INITDIR=/usr/vice/etc" ; \
432                 echo "  AFSKERNELDIR=/usr/vice/etc/modload" ;\
433                 echo "  AFSWSBINDIR=/usr/afsws/bin" ;\
434         else \
435                 echo "# modern paths" ;\
436             echo "  CACHEDIR=@localstatedir@/openafs/cache" ;\
437             echo "  AFSDDIR=@afssrvsbindir@" ;\
438             echo "  INITDIR=@sysconfdir@"  ;\
439             echo "  AFSKERNELDIR=@afskerneldir@" ;\
440             echo "  AFSWSBINDIR=@afssrvbindir@" ;\
441         fi >>$@
442         @echo "export AFSCONFDIR VICEETCDIR AFSSRVBINDIR AFSSRVSBINDIR" >>$@
443         @echo "export AFSSRVLIBEXECDIR AFSDBDIR AFSLOGSDIR AFSLOCALDIR" >>$@
444         @echo "export AFSBACKUPDIR AFSBOSCONFIGDIR OSTYPE CACHEDIR AFSDDIR" >>$@
445         @echo "export INITDIR AFSKERNELDIR AFSWSBINDIR" >>$@
446
447 .PHONY:         all install clean realclean distclean mostlyclean install uninstall check