7e372dbb544868fe04286c7c25b0c2f84d29a208
[openafs.git] / src / tests / Makefile.in
1 srcdir          = @srcdir@
2 include @TOP_OBJDIR@/src/config/Makefile.config
3 INSTALL = @INSTALL@
4 INSTALL_DATA = @INSTALL_DATA@
5 INSTALL_PROGRAM = @INSTALL_PROGRAM@
6 INSTALL_SCRIPT = @INSTALL_SCRIPT@
7
8 SHELL           = /bin/sh
9
10 CFLAGS          = ${DBG} ${OPTMZ} -I. -I${srcdir} -I${TOP_OBJDIR}/src/config -I${TOP_INCDIR} ${XCFLAGS} ${ARCHFLAGS}
11 LDFLAGS=${XLDFLAGS} ${ARCHFLAGS}
12
13 INCDIRS=-I${TOP_OBJDIR}/src/config -I${TOP_INCDIR}/afs -I${TOP_INCDIR}
14 INCLIBS=-L${SRCDIR}/lib/afs -L${TOP_LIBDIR}
15
16 LIBS=\
17         libdumpscan.a \
18         libxfiles.a \
19         ${TOP_LIBDIR}/libauth.a \
20         ${TOP_LIBDIR}/libaudit.a \
21         ${TOP_LIBDIR}/libvolser.a \
22         ${TOP_LIBDIR}/libvldb.a \
23         ${TOP_LIBDIR}/libubik.a \
24         ${TOP_LIBDIR}/librxkad.a \
25         ${TOP_LIBDIR}/libsys.a \
26         ${TOP_LIBDIR}/librx.a \
27         ${TOP_LIBDIR}/liblwp.a \
28         ${TOP_LIBDIR}/util.a \
29         ${TOP_LIBDIR}/libcom_err.a \
30         ${XLIBS}
31
32 OBJS_afsdump_scan    = afsdump_scan.o repair.o
33 OBJS_afsdump_xsed    = afsdump_xsed.o repair.o
34 OBJS_libxfiles.a     = xfiles.o xf_errs.o xf_printf.o int64.o \
35                        xf_files.o xf_rxcall.o xf_profile.o
36 OBJS_libdumpscan.a   = primitive.o util.o dumpscan_errs.o parsetag.o \
37                        parsedump.o parsevol.o parsevnode.o dump.o \
38                        directory.o pathname.o backuphdr.o stagehdr.o
39
40 TARGETS = libxfiles.a libdumpscan.a \
41           afsdump_scan afsdump_dirlist afsdump_extract dumptool
42
43 afsdump_scan: libxfiles.a libdumpscan.a $(OBJS_afsdump_scan)
44         $(CC) $(CFLAGS) $(LDFLAGS) -o afsdump_scan $(OBJS_afsdump_scan) $(LIBS)
45
46 afsdump_xsed: libxfiles.a libdumpscan.a $(OBJS_afsdump_xsed)
47         $(CC) $(CFLAGS) $(LDFLAGS) -o afsdump_xsed $(OBJS_afsdump_xsed) $(LIBS)
48
49 afsdump_dirlist: libxfiles.a libdumpscan.a afsdump_dirlist.o
50         $(CC) $(CFLAGS) $(LDFLAGS) -o afsdump_dirlist afsdump_dirlist.o $(LIBS)
51
52 afsdump_extract: libxfiles.a libdumpscan.a afsdump_extract.o
53         $(CC) $(CFLAGS) $(LDFLAGS) -o afsdump_extract afsdump_extract.o $(LIBS)
54
55 null-search: libxfiles.a libdumpscan.a null-search.c
56         $(CC) $(CFLAGS) $(LDFLAGS) -o null-search null-search.c $(LIBS)
57
58 dumptool: dumptool.c
59         $(CC) $(CFLAGS) $(LDFLAGS) -o dumptool dumptool.c
60
61 libxfiles.a: $(OBJS_libxfiles.a)
62         -rm -f libxfiles.a
63         $(AR) r libxfiles.a $(OBJS_libxfiles.a)
64         $(RANLIB) libxfiles.a
65
66 libdumpscan.a: $(OBJS_libdumpscan.a)
67         -rm -f libdumpscan.a
68         $(AR) r libdumpscan.a $(OBJS_libdumpscan.a)
69         $(RANLIB) libdumpscan.a
70
71 xf_errs.c xf_errs.h: xf_errs.et
72         $(COMPILE_ET) xf_errs.et
73
74 dumpscan_errs.c dumpscan_errs.h: dumpscan_errs.et
75         $(COMPILE_ET) dumpscan_errs.et
76
77 util.o xfiles.o xf_files.o: xf_errs.h
78 backuphdr.o directory.o parsedump.o parsetag.o: dumpscan_errs.h
79 parsevnode.o parsevol.o pathname.o repair.o:    dumpscan_errs.h
80 stagehdr.o util.o:                              dumpscan_errs.h
81
82 ${TOP_LIBDIR}/libxfiles.a: libxfiles.a
83         ${INSTALL_DATA} $? $@
84
85 ${TOP_LIBDIR}/libdumpscan.a: libdumpscan.a
86         ${INSTALL_DATA} $? $@
87
88 SYS_LIBS        = ${TOP_LIBDIR}/libsys.a ${TOP_LIBDIR}/librx.a ${TOP_LIBDIR}/liblwp.a ${TOP_LIBDIR}/util.a
89
90 AUTH_LIBS       = ${TOP_LIBDIR}/libauth.a ${SYS_LIBS}
91
92 INT_LIBS        = ${TOP_LIBDIR}/libafsint.a ${TOP_LIBDIR}/libsys.a ${TOP_LIBDIR}/librxkad.a ${TOP_LIBDIR}/librx.a ${TOP_LIBDIR}/liblwp.a ${TOP_LIBDIR}/libcom_err.a ${TOP_LIBDIR}/util.a 
93
94 TEST_PROGRAMS = write-ro-file hello-world read-vs-mmap read-vs-mmap2     \
95                 mmap-and-read large-dir large-dir2 large-dir3 mountpoint \
96                 test-setgroups test-setpag hardlink1 hardlink2 mkdir2    \
97                 create-files create-symlinks create-dirs dup2-and-unlog  \
98                 readdir-vs-lstat read-write create-remove mkdir3         \
99                 symlink echo-n test-parallel1 test-parallel2 create-stat \
100                 kill-softly kill-softer rm-rf exit-wo-close              \
101                 mmap-vs-read mmap-vs-read2 strange-characters-c pine     \
102                 append-over-page write-ucc utime-dir mmap-shared-write   \
103                 rename5 rename-under-feet write-closed write-closed2     \
104                 truncate fchmod make-page utime-file rename6             \
105                 write3 still-there-p write-large afscp hardlink4         \
106                 intr-read asu truncate-files mmap-cat blocks-new-file    \
107                 fsx write-rand
108
109 TEST_OBJS     = write-ro-file.o read-vs-mmap.o read-vs-mmap2.o             \
110                 mmap-and-read.o large-dir.o large-dir2.o large-dir3.o      \
111                 test-setgroups.o test-setpag.o hardlink1.o hardlink2.o     \
112                 mkdir2.o create-files.o create-symlinks.o create-dirs.o    \
113                 dup2-and-unlog.o readdir-vs-lstat.o read-write.o           \
114                 create-remove.o symlink.o echo-n.o test-parallel1.o        \
115                 test-parallel1.o mkdir3.o rename6.o                        \
116                 create-stat.o kill-softly.o kill-softer.o rm-rf.o          \
117                 exit-wo-close.o mmap-vs-read.o mmap-vs-read2.o             \
118                 strange-characters-c.o pine.o append-over-page.o           \
119                 write-ucc.o utime-dir.o mmap-shared-write.o rename5.o      \
120                 rename-under-feet.o write-closed.o write-closed2.o         \
121                 truncate.o fchmod.o make-page.o utime-file.o               \
122                 write3.o still-there-p.o write-large.o hardlink4.o         \
123                 intr-read.o asu.o truncate-files.o mmap-cat.o              \
124                 blocks-new-file.o fsx.o afscp.o afscp_callback.o           \
125                 write-rand.o
126
127 TEST_SRCS     = write-ro-file.c read-vs-mmap.c read-vs-mmap2.c             \
128                 mmap-and-read.c large-dir.c large-dir2.c large-dir3.c      \
129                 test-setgroups.c test-setpag.c hardlink1.c hardlink2.c     \
130                 mkdir2.c create-files.c create-symlinks.c create-dirs.c    \
131                 dup2-and-unlog.c readdir-vs-lstat.c read-write.c           \
132                 create-remove.c symlink.c echo-n.c test-parallel1.c        \
133                 test-parallel2.c mkdir3.c rename6.c                        \
134                 create-stat.c kill-softly.c kill-softer.c rm-rf.c          \
135                 exit-wo-close.c mmap-vs-read.c mmap-vs-read2.c             \
136                 strange-characters-c.c pine.c append-over-page.c           \
137                 write-ucc.c utime-dir.c mmap-shared-write.c rename5.c      \
138                 rename-under-feet.c write-closed.c write-closed2.c         \
139                 truncate.c fchmod.c make-page.c utime-file.c               \
140                 write3.c still-there-p.c write-large.c hardlink4.c         \
141                 intr-read.c asu.c truncate-files.c mmap-cat.c              \
142                 blocks-new-file.c fsx.c afscp.c afscp_callback.c           \
143                 write-rand.c
144
145 EXTRA_OBJS = err.o errx.o warn.o warnx.o vwarn.o vwarnx.o verr.o verrx.o warnerr.o snprintf.o 
146
147 OpenAFS/OS.pm: OpenAFS/OS-$(MKAFS_OSTYPE).pm
148         $(CP) OpenAFS/OS-$(MKAFS_OSTYPE).pm OpenAFS/OS.pm
149
150 fsx: fsx.o $(EXTRA_OBJS)
151         $(CC) $(LDFLAGS) -o $@ fsx.o $(EXTRA_OBJS) $(LIBS)
152
153 write-rand: write-rand.o $(EXTRA_OBJS)
154         $(CC) $(LDFLAGS) -o $@ write-rand.o $(EXTRA_OBJS) $(LIBS)
155
156 write-ro-file: write-ro-file.o $(EXTRA_OBJS)
157         $(CC) $(LDFLAGS) -o $@ write-ro-file.o $(EXTRA_OBJS) $(LIBS)
158
159 write-large: write-large.o $(EXTRA_OBJS)
160         $(CC) $(LDFLAGS) -o $@ write-large.o $(EXTRA_OBJS) $(LIBS)
161
162 read-vs-mmap: read-vs-mmap.o $(EXTRA_OBJS)
163         $(CC) $(LDFLAGS) -o $@ read-vs-mmap.o $(EXTRA_OBJS) $(LIBS)
164
165 read-vs-mmap2: read-vs-mmap2.o $(EXTRA_OBJS)
166         $(CC) $(LDFLAGS) -o $@ read-vs-mmap2.o $(EXTRA_OBJS) $(LIBS)
167
168 mmap-vs-read: mmap-vs-read.o $(EXTRA_OBJS)
169         $(CC) $(LDFLAGS) -o $@ mmap-vs-read.o $(EXTRA_OBJS) $(LIBS)
170
171 mmap-vs-read2: mmap-vs-read2.o $(EXTRA_OBJS)
172         $(CC) $(LDFLAGS) -o $@ mmap-vs-read2.o $(EXTRA_OBJS) $(LIBS)
173
174 read-write: read-write.o $(EXTRA_OBJS)
175         $(CC) $(LDFLAGS) -o $@ read-write.o $(EXTRA_OBJS) $(LIBS)
176
177 mmap-and-read: mmap-and-read.o $(EXTRA_OBJS)
178         $(CC) $(LDFLAGS) -o $@ mmap-and-read.o $(EXTRA_OBJS) $(LIBS)
179
180 large-dir: large-dir.o $(EXTRA_OBJS)
181         $(CC) $(LDFLAGS) -o $@ large-dir.o $(EXTRA_OBJS) $(LIBS)
182
183 large-dir2: large-dir2.o $(EXTRA_OBJS)
184         $(CC) $(LDFLAGS) -o $@ large-dir2.o $(EXTRA_OBJS) $(LIBS)
185
186 large-dir3: large-dir3.o $(EXTRA_OBJS)
187         $(CC) $(LDFLAGS) -o $@ large-dir3.o $(EXTRA_OBJS) $(LIBS)
188
189 fchmod: fchmod.o $(EXTRA_OBJS)
190         $(CC) $(LDFLAGS) -o $@ fchmod.o $(EXTRA_OBJS) $(LIBS)
191
192 truncate: truncate.o $(EXTRA_OBJS)
193         $(CC) $(LDFLAGS) -o $@ truncate.o $(EXTRA_OBJS) $(LIBS)
194
195 make-page: make-page.o $(EXTRA_OBJS)
196         $(CC) $(LDFLAGS) -o $@ make-page.o $(EXTRA_OBJS) $(LIBS)
197
198 still-there-p: still-there-p.o $(EXTRA_OBJS)
199         $(CC) $(LDFLAGS) -o $@ still-there-p.o $(EXTRA_OBJS) $(LIBS)
200
201 intr-read: intr-read.o $(EXTRA_OBJS)
202         $(CC) $(LDFLAGS) -o $@ intr-read.o $(EXTRA_OBJS) $(LIBS)
203
204 blocks-new-file: blocks-new-file.o $(EXTRA_OBJS)
205         $(CC) $(LDFLAGS) -o $@ blocks-new-file.o $(EXTRA_OBJS) $(LIBS)
206
207 asu: asu.o $(EXTRA_OBJS)
208         $(CC) $(LDFLAGS) -o $@ asu.o $(EXTRA_OBJS) $(LIBS)
209
210 test-setgroups: test-setgroups.o $(EXTRA_OBJS)
211         $(CC) $(LDFLAGS) -o $@ test-setgroups.o $(EXTRA_OBJS) $(SYS_LIBS) $(LIBS)
212
213 test-setpag: test-setpag.o $(EXTRA_OBJS)
214         $(CC) $(LDFLAGS) -o $@ test-setpag.o $(EXTRA_OBJS) $(SYS_LIBS) $(LIBS)
215
216 hardlink1: hardlink1.o $(EXTRA_OBJS)
217         $(CC) $(LDFLAGS) -o $@ hardlink1.o $(EXTRA_OBJS) $(LIBS)
218
219 hardlink2: hardlink2.o $(EXTRA_OBJS)
220         $(CC) $(LDFLAGS) -o $@ hardlink2.o $(EXTRA_OBJS) $(LIBS)
221
222 hardlink4: hardlink4.o $(EXTRA_OBJS)
223         $(CC) $(LDFLAGS) -o $@ hardlink4.o $(EXTRA_OBJS) $(LIBS)
224
225 mkdir2: mkdir2.o $(EXTRA_OBJS)
226         $(CC) $(LDFLAGS) -o $@ mkdir2.o $(EXTRA_OBJS) $(LIBS)
227
228 mkdir3: mkdir3.o $(EXTRA_OBJS)
229         $(CC) $(LDFLAGS) -o $@ mkdir3.o $(EXTRA_OBJS) $(LIBS)
230
231 create-files: create-files.o $(EXTRA_OBJS)
232         $(CC) $(LDFLAGS) -o $@ create-files.o $(EXTRA_OBJS) $(LIBS)
233
234 create-symlinks: create-symlinks.o $(EXTRA_OBJS)
235         $(CC) $(LDFLAGS) -o $@ create-symlinks.o $(EXTRA_OBJS) $(LIBS)
236
237 create-dirs: create-dirs.o $(EXTRA_OBJS)
238         $(CC) $(LDFLAGS) -o $@ create-dirs.o $(EXTRA_OBJS) $(LIBS)
239
240 create-remove: create-remove.o $(EXTRA_OBJS)
241         $(CC) $(LDFLAGS) -o $@ create-remove.o $(EXTRA_OBJS) $(LIBS)
242
243 dup2-and-unlog: dup2-and-unlog.o $(EXTRA_OBJS)
244         $(CC) $(LDFLAGS) -o $@ dup2-and-unlog.o  $(EXTRA_OBJS) $(AUTH_LIBS) $(LIBS)
245
246 readdir-vs-lstat: readdir-vs-lstat.o $(EXTRA_OBJS)
247         $(CC) $(LDFLAGS) -o $@ readdir-vs-lstat.o $(EXTRA_OBJS) $(LIBS)
248
249 symlink: symlink.o $(EXTRA_OBJS)
250         $(CC) $(LDFLAGS) -o $@ symlink.o $(EXTRA_OBJS) $(LIBS)
251
252 echo-n: echo-n.o $(EXTRA_OBJS)
253         $(CC) $(LDFLAGS) -o $@ echo-n.o $(EXTRA_OBJS)
254
255 test-parallel1: test-parallel1.o $(EXTRA_OBJS)
256         $(CC) $(LDFLAGS) -o $@ test-parallel1.o $(EXTRA_OBJS) $(LIBS)
257
258 test-parallel2: test-parallel2.o $(EXTRA_OBJS)
259         $(CC) $(LDFLAGS) -o $@ test-parallel2.o $(EXTRA_OBJS) $(LIBS)
260
261 create-stat: create-stat.o fs_lib.o $(EXTRA_OBJS)
262         $(CC) $(LDFLAGS) -o $@ create-stat.o fs_lib.o $(EXTRA_OBJS) $(SYS_LIBS) $(LIBS)
263
264 kill-softly: kill-softly.o $(EXTRA_OBJS)
265         $(CC) $(LDFLAGS) -o $@ kill-softly.o $(EXTRA_OBJS) $(LIBS)
266
267 kill-softer: kill-softer.o $(EXTRA_OBJS)
268         $(CC) $(LDFLAGS) -o $@ kill-softer.o $(EXTRA_OBJS) $(LIBS)
269
270 rm-rf: rm-rf.o fs_lib.o $(EXTRA_OBJS)
271         $(CC) $(LDFLAGS) -o $@ rm-rf.o fs_lib.o $(EXTRA_OBJS) $(SYS_LIBS) $(LIBS)
272
273 exit-wo-close: exit-wo-close.o $(EXTRA_OBJS)
274         $(CC) $(LDFLAGS) -o $@ exit-wo-close.o $(EXTRA_OBJS) $(LIBS)
275
276 strange-characters-c: strange-characters-c.o $(EXTRA_OBJS)
277         $(CC) $(LDFLAGS) -o $@ strange-characters-c.o $(EXTRA_OBJS) $(LIBS)
278
279 pine: pine.o $(EXTRA_OBJS)
280         $(CC) $(LDFLAGS) -o $@ pine.o $(EXTRA_OBJS) $(LIBS)
281
282 append-over-page: append-over-page.o $(EXTRA_OBJS)
283         $(CC) $(LDFLAGS) -o $@ append-over-page.o $(EXTRA_OBJS) $(LIBS)
284
285 write-ucc: write-ucc.o $(EXTRA_OBJS)
286         $(CC) $(LDFLAGS) -o $@ write-ucc.o $(EXTRA_OBJS) $(LIBS)
287
288 utime-dir: utime-dir.o $(EXTRA_OBJS)
289         $(CC) $(LDFLAGS) -o $@ utime-dir.o $(EXTRA_OBJS) $(LIBS)
290
291 utime-file: utime-file.o $(EXTRA_OBJS)
292         $(CC) $(LDFLAGS) -o $@ utime-file.o $(EXTRA_OBJS) $(LIBS)
293
294 mmap-shared-write: mmap-shared-write.o $(EXTRA_OBJS)
295         $(CC) $(LDFLAGS) -o $@ mmap-shared-write.o $(EXTRA_OBJS) $(LIBS)
296
297 rename5: rename5.o $(EXTRA_OBJS)
298         $(CC) $(LDFLAGS) -o $@ rename5.o $(EXTRA_OBJS) $(LIBS)
299
300 rename6: rename6.o $(EXTRA_OBJS)
301         $(CC) $(LDFLAGS) -o $@ rename6.o $(EXTRA_OBJS) $(LIBS)
302
303 write3: write3.o $(EXTRA_OBJS)
304         $(CC) $(LDFLAGS) -o $@ write3.o $(EXTRA_OBJS) $(LIBS)
305
306 rename-under-feet: rename-under-feet.o $(EXTRA_OBJS)
307         $(CC) $(LDFLAGS) -o $@ rename-under-feet.o $(EXTRA_OBJS) $(LIBS)
308
309 write-closed: write-closed.o $(EXTRA_OBJS)
310         $(CC) $(LDFLAGS) -o $@ write-closed.o $(EXTRA_OBJS) $(LIBS)
311
312 write-closed2: write-closed2.o $(EXTRA_OBJS)
313         $(CC) $(LDFLAGS) -o $@ write-closed2.o $(EXTRA_OBJS) $(SYS_LIBS) $(LIBS)
314
315 truncate-files: truncate-files.o $(EXTRA_OBJS)
316         $(CC) $(LDFLAGS) -o $@ truncate-files.o $(EXTRA_OBJS) $(LIBS)
317
318 mmap-cat: mmap-cat.o $(EXTRA_OBJS)
319         $(CC) $(LDFLAGS) -o $@ mmap-cat.o $(EXTRA_OBJS) $(LIBS)
320
321 run-tests: run-tests.in
322         (cd ../..; CONFIG_FILES=src/tests/run-tests CONFIG_HEADERS= $(SHELL) @TOP_OBJDIR@/config.status)
323         @chmod +x run-tests
324
325 #.c.o:
326 #       $(CC) -c $(CPPFLAGS) $(DEFS) -I$(srcdir) -I. $(REALCFLAGS) $<
327
328 afscp: afscp.o afscp_callback.o $(EXTRA_OBJS)
329         $(CC) $(LDFLAGS) -o $@ afscp.o afscp_callback.o $(EXTRA_OBJS) $(INT_LIBS) ${XLIBS}
330
331 hello-world:   hello-world.in
332         sed -e "s!%CC%!$(CC)!" $(srcdir)/hello-world.in > $@
333         chmod +x hello-world
334
335 mountpoint:   mountpoint.in
336         sed -e "s!%bindir%!$(bindir)!" $(srcdir)/mountpoint.in > $@
337         chmod +x mountpoint
338
339 dest:
340
341 install:
342
343 uninstall:
344
345 all: run-tests OpenAFS/OS.pm libxfiles.a libdumpscan.a $(TEST_PROGRAMS)\
346         afsdump_scan afsdump_dirlist afsdump_extract dumptool
347         @chmod +x run-tests
348
349 clean:
350         -rm -f xf_errs.c xf_errs.h dumpscan_errs.c dumpscan_errs.h *.o \
351         $(TARGETS) run-tests $(TEST_PROGRAMS) OS.pm
352
353 include ../config/Makefile.version
354
355 TAGS:   $(TEST_SRCS)
356         etags $(TEST_SRCS)
357
358 check: run-tests $(TEST_PROGRAMS)
359         ./run-tests -all
360
361 check-fast: run-tests $(TEST_PROGRAMS)
362         ./run-tests -all -fast
363
364 .PHONY:         all install clean realclean distclean mostlyclean install uninstall check